(57)【特許請求の範囲】
【請求項１】
メッシュ通信ネットワークのノード装置を設定する方法であって、
前記ノード装置はリンクによって相互接続され、
ローカル転送テーブルが前記ノード装置によって実装される
方法において、
各ノード装置が、以前に前記ノード装置のポートに接続されていたリンクのリンク障害、または、前記ノード装置のポートに接続されたリンクのリンク回復を検出すると、
‐前記リンク障害によって影響を受けるか、または前記リンク回復によって復旧する、１つ以上のデータ経路をローカル転送テーブルから決定することと、
‐決定されたデータ経路それぞれについて、そのデータ経路のエンドポイントの１つに向けて、前記リンク障害または前記リンク回復を表し前記決定されたデータ経路の識別子を含む少なくとも１つのメッセージを送信することと、
を実行し、かつ、
前記リンク障害または前記リンク回復を表す前記メッセージ（複数可）を受信した時には、各エンドポイントは、前記受信したメッセージ（複数可）において特定される各データ経路がアクティベートされ得るか否かの指標を記録し、かつ、
前記受信したメッセージ（複数可）がリンク障害を表す時には、各エンドポイントは、
‐前記受信したメッセージ（複数可）において特定される各データ経路について代替データ経路を選択することと、
‐前記リンク障害の影響を受ける対応するデータ経路の代わりに前記代替データ経路をアクティベートすることを目的として、各選択された代替データ経路について、前記選択された代替データ経路の他方のエンドポイントに向けて経路切替メッセージを送信することと
を実行し、
前記ノード装置によって実装されるローカル転送テーブルが、リンク状態ルーティングプロトコルに従って初期に構築され、
各ノード装置は、以前に前記ノード装置のポートに接続されていたリンクのリンク障害、または、前記ノード装置のポートに接続されたリンクのリンク回復を検出すると、
‐リンク障害の場合には、前記決定されたデータ経路がアクティベートされ得ないことを、前記ローカル転送テーブルにおいて示すことと、
‐リンク回復の場合には、前記決定されたデータ経路がアクティベートされ得ることを、前記ローカル転送テーブルにおいて示すことと、
をさらに実行する、方法。
【請求項２】
各ローカル転送テーブルは、
‐データ経路識別子と、
‐前記データ経路のエンドポイント１つの識別子と、
‐前記ローカル転送テーブルを実装する前記ノード装置の出力ポートのうち、前記データ経路の前記特定されたエンドポイントが到達可能である出力ポートの識別子と、
‐前記特定されたデータ経路がアクティベートされ得るか否かを示すフラグと
の間の対応関係からなる、請求項１に記載の方法。
【請求項３】
各ノード装置は、前記リンク障害または前記リンク回復を検出すると、
‐前記ノード装置のどのポートを介して、障害となった前記リンクが接続されていたか、または、回復した前記リンクが接続されているかを決定することと、
‐前記リンク障害または前記リンク回復を表す前記メッセージが伝搬しなければならないデータ経路の識別子を、前記リンク障害または前記リンク回復を表す前記メッセージにおいて示すことと、
‐障害となった前記リンクが接続されていたポートまたは回復した前記リンクが接続されている前記決定されたポートを除き、前記ノード装置のすべてのポートを介して前記リンク障害または前記リンク回復を表す前記メッセージを送信することと、
を実行し、かつ、
前記リンク障害または前記リンク回復を表す前記メッセージを受信した時には、各ノード装置は、
‐前記リンク障害または前記リンク回復を表す前記メッセージが伝搬しなければならないデータ経路が、ローカル転送テーブルに存在しているか否かをチェックすることと、
‐前記データ経路がローカル転送テーブルに存在する時には、前記メッセージが受信されたポートを除き、前記ノード装置のすべてのポートを介して前記リンク障害または前記リンク回復を表す前記メッセージを送信することと、
‐前記データ経路がローカル転送テーブルに存在しない時には、前記リンク障害または前記リンク回復を表す前記メッセージを破棄することと、
を実行する、請求項１または２に記載の方法。
【請求項４】
前記経路切替メッセージを受信した時には、前記メッシュ通信ネットワークの各装置は、当該装置がエンドポイントである、アクティベートされるデータ経路をそれぞれ特定する情報を保持する、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
前記リンク状態ルーティングプロトコルに従って各ローカル転送テーブルが構築されると、各ノード装置は、
‐少なくとも１つの隣接ノード装置に、前記ノード装置によって実装される各ローカル転送テーブルの内容であって、前記隣接ノード装置が前記ノード装置に接続されている前記ノード装置のポートに関連する内容を提供することと、
‐各隣接ノード装置から、前記隣接ノード装置によって実装される各ローカル転送テーブルの内容であって、前記ノード装置が前記隣接ノード装置に接続されている前記隣接ノード装置のポートに関連する内容を取得することと、
‐各隣接ノードから取得した前記内容から、少なくとも１つの逆経路テーブルを構築することと、
を実行する、請求項１〜４のいずれか一項に記載の方法。
【請求項６】
前記リンク障害または前記リンク回復を表す前記メッセージを生成する時には、各ノード装置は、前記メッセージが前記逆経路テーブルを用いて送信されなければならない宛先である前記エンドポイントを決定する、請求項５に記載の方法。
【請求項７】
前記メッシュ通信ネットワークは入力ノード装置を備え、かつ、
各ローカル転送テーブルにおいて定義されるすべてのデータ経路は、前記入力ノード装置をエンドポイントとして持ち、かつ、
前記リンク障害または前記リンク回復を表す前記メッセージを生成する時には、各ノード装置は前記入力ノード装置に前記リンク障害または前記リンク回復を表す前記メッセージを送信する、請求項１〜４のいずれか一項に記載の方法。
【請求項８】
前記メッシュ通信ネットワークは、列車内に配置された装置が通信できるようにし、かつ、
少なくともいくつかのノード装置が前記列車内に配置され、かつ、
列車構成変更がある時に、前記ノード装置によって前記リンク状態プロトコルが適用される、請求項１〜７のいずれか一項に記載の方法。
【請求項９】
前記メッシュ通信ネットワークはイーサネットタイプであり、かつ、
前記リンク状態ルーティングプロトコルは最短経路ブリッジングＳＰＢプロトコルである、請求項１〜８のいずれか一項に記載の方法。
【請求項１０】
プログラム可能な装置によって実行される時に請求項１〜９のいずれか一項に記載の方法を実施するために前記プログラム可能な装置にロード可能なプログラムコード命令を含むコンピュータプログラム。
【請求項１１】
プログラム可能な装置によって実行される時に請求項１〜９のいずれか一項に記載の方法を実施するために前記プログラム可能な装置にロード可能なプログラムコード命令を含むコンピュータプログラムを記憶する情報記憶手段。
【請求項１２】
メッシュ通信ネットワークのノード装置およびデータ経路エンドポイントを備えるシステムであって、
前記ノード装置はリンクによって相互接続され、
前記ノード装置はローカル転送テーブルを備える、
システムにおいて、
各ノード装置が、以前に前記ノード装置のポートに接続されていたリンクのリンク障害、または、前記ノード装置のポートに接続されたリンクのリンク回復を検出すると、
‐前記リンク障害によって影響を受けるか、または前記リンク回復によって復旧する、１つ以上のデータ経路をローカル転送テーブルから決定する手段と、
‐決定されたデータ経路それぞれについて、そのデータ経路のエンドポイントの１つに向けて、前記リンク障害または前記リンク回復を表し前記決定されたデータ経路の識別子を含む少なくとも１つのメッセージを送信する手段と、
を実装し、かつ、
前記リンク障害または前記リンク回復を表す前記メッセージ（複数可）を受信した時には、各エンドポイントは、前記受信したメッセージ（複数可）において特定される各データ経路がアクティベートされ得るか否かの指標を記録する手段を実装し、
前記受信したメッセージ（複数可）がリンク障害を表す時には、各エンドポイントは、
‐前記受信したメッセージ（複数可）において特定される各データ経路について代替データ経路を選択する手段と、
‐前記リンク障害の影響を受ける対応するデータ経路の代わりに前記代替データ経路をアクティベートすることを目的として、各選択された代替データ経路について、前記選択された代替データ経路の他方のエンドポイントに向けて経路切替メッセージを送信する手段と
を実装し、
前記ノード装置によって実装されるローカル転送テーブルが、リンク状態ルーティングプロトコルに従って初期に構築され、
各ノード装置は、以前に前記ノード装置のポートに接続されていたリンクのリンク障害、または、前記ノード装置のポートに接続されたリンクのリンク回復を検出すると、
‐リンク障害の場合には、前記決定されたデータ経路がアクティベートされ得ないことを、前記ローカル転送テーブルにおいて示す手段と、
‐リンク回復の場合には、前記決定されたデータ経路がアクティベートされ得ることを、前記ローカル転送テーブルにおいて示す手段と、
をさらに実装する、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概してメッシュ通信ネットワークのノード装置を設定する(configure)ことに関する。このノード装置は、リンク障害またはリンク回復を検出する時にはリンクによって相互接続されている。
【０００２】
メッシュ通信ネットワークにおいて通信をセットアップできるようにするために、ノード装置はリンク状態ルーティングプロトコルを実装する。リンク状態ルーティングプロトコルは、各ノード装置が転送テーブルを構築するよう導く。転送テーブルは、宛先(addressee)に関する情報を含むメッセージまたはデータパケットを受信した時に、そのメッセージまたはデータパケットがそのノード装置のどの出力ポートに転送されなければならないかをノード装置が決定できるようにする情報を含む。転送テーブルは、しばしば「フィルタリングテーブル」とも呼ばれる。
【０００３】
リンク状態ルーティングプロトコルは、メッシュ通信ネットワークにおいてネットワークトポロジー情報を自動的に伝搬させ同期させるために、通信ネットワークにおいて広く用いられる。たとえば、標準規格ＩＥＥＥ８０２．１ａｑに詳述されるリンク状態ルーティングプロトコルＳＰＢ（短経路ブリッジング(Short Path Bridging)）を引用することができる。ＳＰＢは、トポロジーおよび論理的ネットワークメンバーシップの双方をアドバタイズするためにリンク状態タイプのルーティングプロトコルを用いるネイティブイーサネット（登録商標）インフラストラクチャー上に論理的イーサネットネットワークを実装できるようにする。ＳＰＢと同じ目的を達成するために、その他のリンク状態ルーティングプロトコルも存在する。しかしながら、そのようなリンク状態ルーティングプロトコルは非常に包括的(generic)であるため、同期した転送テーブルに収束するまでに大量のメッセージ交換および著しい遅延を伴う。
【０００４】
従来技術の、上述の問題を解消することが望ましい。
【０００５】
とくに、メッシュ通信ネットワークにおいてトポロジー変更が発生するたびに最初から(from scratch)転送テーブルを再計算することを回避し、したがってトポロジー変更情報の伝搬を簡素化する解決策を提供することが望ましい。
【０００６】
さらに、実施が容易でコスト効率的な解決策を提供することが望ましい。
【０００７】
この目的のために、本発明は、メッシュ通信ネットワークのノード装置を設定する方法であって、前記ノード装置はリンクによって相互接続され、前記ノード装置によって実装される転送テーブルが、リンク状態ルーティングプロトコルに従って初期に構築される、方法に関する。本方法は、各ノード装置が、以前に前記ノード装置のポートに接続されていたリンクのリンク障害、または、前記ノード装置のポートに接続されたリンクのリンク回復を検出すると、前記リンク障害によって影響を受けるか、または前記リンク回復によって復旧する、１つ以上のデータ経路をローカル転送テーブルから決定することと、決定されたデータ経路それぞれについて、そのデータ経路のエンドポイントの１つに向けて、前記リンク障害または前記リンク回復を表し前記決定された経路の識別子を含む少なくとも１つのメッセージを送信することと、を実行するものである。また、本方法は、前記リンク障害または前記リンク回復を表す前記メッセージ（複数可）を受信した時には、各エンドポイントは、前記受信したメッセージ（複数可）において特定される各データ経路がアクティベートされ得るか否かの指標を記録するものである。また、本方法は、前記受信したメッセージ（複数可）がリンク障害を表す時には、各エンドポイントは、前記受信したメッセージ（複数可）において特定される各データ経路について代替データ経路を選択することと、前記リンク障害の影響を受ける対応するデータ経路の代わりに前記代替データ経路をアクティベートすることを目的として、各選択された代替データ経路について、前記選択された代替データ経路の他方のエンドポイントに向けて経路切替メッセージを送信することとを実行するものである。
【０００８】
このように、関連するデータ経路のエンドポイントにリンク障害またはリンク回復を表すメッセージを伝搬することによって、転送テーブルの再計算が回避され、トポロジー変更情報の伝搬が簡素化される。
【０００９】
特定の特徴によれば、各転送テーブルは、データ経路識別子と、前記データ経路のエンドポイント１つの識別子と、前記転送テーブルを実装する前記ノード装置の出力ポートのうち、前記データ経路の前記特定されたエンドポイントが到達可能である出力ポートの識別子と、前記特定された経路がアクティベートされ得るか否かを示すフラグと、の間の対応関係からなる。
【００１０】
このように、リンク状態ルーティングプロトコル（ＳＰＢ等）から容易に転送テーブルが取得可能であり、前記フラグの追加により増大される。
【００１１】
特定の特徴によれば、各ノード装置は、以前に前記ノード装置のポートに接続されていたリンクのリンク障害、または、前記ノード装置のポートに接続されているリンクのリンク回復を検出すると、さらに、リンク障害の場合には、前記決定された経路がアクティベートされ得ないことを、前記ローカル転送テーブルにおいて示すことと、リンク回復の場合には、前記決定された経路がアクティベートされ得ることを、前記ローカル転送テーブルにおいて示すことと、を実行する。
【００１２】
このように、関連するデータ経路を介して伝搬することが期待されるデータを受信した時に、前記ノード装置は適切なフィルタリングを実行することができる。
【００１３】
特定の特徴によれば、各ノード装置は、前記リンク障害または前記リンク回復を検出すると、前記ノード装置のどのポートを介して、障害となった前記リンクが接続されていたか、または、回復した前記リンクが接続されているかを決定することと、前記リンク障害または前記リンク回復を表す前記メッセージが伝搬しなければならないデータ経路の識別子を、前記リンク障害または前記リンク回復を表す前記メッセージにおいて示すことと、障害となった前記リンクが接続されていたポートまたは回復した前記リンクが接続されている前記決定されたポートを除き、前記ノード装置のすべてのポートを介して前記リンク障害または前記リンク回復を表す前記メッセージを送信することと、を実行する。本方法は、前記リンク障害または前記リンク回復を表す前記メッセージを受信した時には、各ノード装置は、前記リンク障害または前記リンク回復を表す前記メッセージが伝搬しなければならないデータ経路が、ローカル転送テーブルに存在しているか否かをチェックすることと、前記データ経路がローカル転送テーブルに存在する時には、前記メッセージが受信されたポートを除き、前記ノード装置のすべてのポートを介して前記リンク障害または前記リンク回復を表す前記メッセージを送信することと、前記データ経路がローカル転送テーブルに存在しない時には、前記リンク障害または前記リンク回復を表す前記メッセージを破棄することと、を実行するものである。
【００１４】
このように、転送テーブルは、リンク障害またはリンク回復を表すメッセージを伝搬しなければならない宛先であるエンドポイントをアドレシングする情報を含まないが、リンク障害またはリンク回復を表すメッセージの伝搬の実装は容易である。
【００１５】
特定の特徴によれば、前記経路切替メッセージを受信した時には、前記メッシュ通信ネットワークの各装置は、当該装置がエンドポイントであるどのデータ経路がアクティベートされるかを示す情報を保持する。
【００１６】
特定の特徴によれば、前記リンク状態ルーティングプロトコルに従って各転送テーブルが構築されると、各ノード装置は、少なくとも１つの隣接ノード装置に、前記ノード装置によって実装される各転送テーブルの内容であって、前記隣接ノード装置が前記ノード装置に接続されている前記ノード装置のポートに関連する内容を提供することと、各隣接ノード装置から、前記隣接ノード装置によって実装される各転送テーブルの内容であって、前記ノード装置が前記隣接ノード装置に接続されている前記隣接ノード装置のポートに関連する内容を取得することと、各隣接ノードから取得した前記内容から、少なくとも１つの逆経路テーブルを構築することと、を実行する。
【００１７】
このように、リンク障害またはリンク回復を表すメッセージが伝搬しなければならない宛先のエンドポイントをアドレシングするための情報は容易に取得可能である。
【００１８】
特定の特徴によれば、前記リンク障害または前記リンク回復を表す前記メッセージを生成する時には、各ノード装置は、前記メッセージが前記逆経路テーブルを用いて送信されなければならない宛先である前記エンドポイントを決定する。
【００１９】
このように、リンク障害またはリンク回復を表すメッセージの伝搬は簡素化される。
【００２０】
特定の特徴によれば、前記メッシュ通信ネットワークは入力ノード装置を備え、各転送テーブルにおいて定義されるすべてのデータ経路は、前記入力ノード装置をエンドポイントとして持ち、前記リンク障害または前記リンク回復を表す前記メッセージを生成する時には、各ノード装置は前記入力ノード装置に前記リンク障害または前記リンク回復を表す前記メッセージを送信する。
【００２１】
このように、アップリンクおよびダウンリンク通信が入力ノード装置を介してメッシュ通信ネットワークの装置についてセットアップされるコンテキストにおいて、リンク回復のリンク障害に関連するトポロジー変更は、簡素化された態様で管理される。
【００２２】
特定の特徴によれば、前記メッシュ通信ネットワークは、列車内に配置された装置が通信できるようにし、少なくともいくつかのノード装置が前記列車内に配置され、かつ、列車構成変更がある時に、前記ノード装置によって前記リンク状態プロトコルが適用される。
【００２３】
このように、大規模なトポロジー変更が発生した時にはリンク状態プロトコルが適用され、転送テーブルが最初から再計算されることを暗示する。
【００２４】
特定の特徴によれば、前記メッシュ通信ネットワークはイーサネットタイプであり、前記リンク状態ルーティングプロトコルは最短経路ブリッジングＳＰＢプロトコルである。
【００２５】
また、本発明は、メッシュ通信ネットワークのノード装置およびデータ経路エンドポイントを備えるシステムであって、前記ノード装置はリンクによって相互接続され、前記ノード装置は、リンク状態ルーティングプロトコルに従って初期に構築される転送テーブルを備える、システムにも関する。前記システムは、各ノード装置が、以前に前記ノード装置のポートに接続されていたリンクのリンク障害、または、前記ノード装置のポートに接続されたリンクのリンク回復を検出すると、前記リンク障害によって影響を受けるか、または前記リンク回復によって復旧する、１つ以上のデータ経路をローカル転送テーブルから決定する手段と、決定されたデータ経路それぞれについて、そのデータ経路のエンドポイントの１つに向けて、前記リンク障害または前記リンク回復を表し前記決定された経路の識別子を含む少なくとも１つのメッセージを送信する手段と、を実装するものである。本システムは、さらに、前記リンク障害または前記リンク回復を表す前記メッセージ（複数可）を受信した時には、各エンドポイントは、前記受信したメッセージ（複数可）において特定される各データ経路がアクティベートされ得るか否かの指標を記録する手段を実装するものであり、かつ、前記受信したメッセージ（複数可）がリンク障害を表す時には、各エンドポイントは、前記受信したメッセージ（複数可）において特定される各データ経路について代替データ経路を選択する手段と、前記リンク障害の影響を受ける対応するデータ経路の代わりに前記代替データ経路をアクティベートすることを目的として、各選択された代替データ経路について、前記選択された代替データ経路の他方のエンドポイントに向けて経路切替メッセージを送信する手段と、を実装するものである。
【００２６】
また、本発明は、通信ネットワークからダウンロード可能であり、および／または、コンピュータによって読み取り可能な媒体に記憶され、プロセッサによって実行可能であるコンピュータプログラムにも関する。このコンピュータプログラムは、そのプログラムがプロセッサによって実行される時に、上述の方法をいずれかの実施形態において実施するための命令を含む。また、本発明は、そのようなコンピュータプログラムを記憶する情報記憶手段にも関する。
【００２７】
システムおよびコンピュータプログラムに関係する特徴および利点は、対応する上述の方法に関連して述べたものと同じであるので、ここでは繰り返さない。
【００２８】
本発明の特徴は、以下に示す実施形態の例の記載を読めばより明らかになるであろう。以下の記載は添付の図面を参照して作成されている。
【図面の簡単な説明】
【００２９】
【図１Ａ】本発明が実施可能なメッシュ通信ネットワークを概略的に表す図である。
【図１Ｂ】メッシュ通信ネットワークのノード装置によって実装される転送テーブルを概略的に表す図である。
【図２】ノード装置のアーキテクチャを概略的に表す図である。
【図３】メッシュ通信ネットワークのトポロジーの変更を発見した時に、ノード装置によって実行されるアルゴリズムを概略的に表す図である。
【図４Ａ】リンク障害メッセージまたはリンク回復メッセージを生成する時にノード装置によって実行される第１のアルゴリズムを概略的に表す図である。
【図４Ｂ】リンク障害メッセージまたはリンク回復メッセージを生成する時にノード装置によって実行される第２のアルゴリズムを概略的に表す図である。
【図４Ｃ】リンク障害メッセージまたはリンク回復メッセージを受信した時にノード装置によって実行されるアルゴリズムを概略的に表す図である。
【図４Ｄ】少なくとも１つのローカル逆経路テーブルを作成するためにノード装置によって実行されるアルゴリズムを概略的に表す図である。
【図４Ｅ】任意選択でノード装置によって実装される逆経路テーブルを概略的に表す図である。
【図５】リンク障害メッセージを受信した時にメッシュ通信ネットワークの入力ノード装置によって実行されるアルゴリズムを概略的に表す図である。
【図６】リンク回復メッセージを受信した時に入力ノード装置によって実行されるアルゴリズムを概略的に表す図である。
【図７】経路切替メッセージを受信した時に、メッシュ通信ネットワークのノード装置または端末装置によって実行されるアルゴリズムを概略的に表す図である。
【００３０】
図１Ａは、本発明が実施可能なメッシュ通信ネットワークを概略的に表す。メッシュ通信ネットワークはイーサネットタイプであることが好ましい。
【００３１】
図１Ａに示すメッシュ通信ネットワークは、メッシュ通信ネットワークが完全に動作している時には、それぞれのリンクによって相互接続された複数のノード装置１１１、１１２、１１３、１１４、１１５、１１６からなるリング部を備える。各ノード装置１１１、１１２、１１３、１１４、１１５、１１６を、リング部の隣のノード装置に接続する各リンクは、有線であってもよく、無線であってもよい。リンクによって相互接続された２つのノード装置を、本明細書では「隣接ノード装置(neighbour node device)」と呼ぶ。
【００３２】
図１Ａに示すメッシュ通信ネットワークは、さらに、少なくとも１つの入力ノード装置１０１を備える。入力ノード装置１０１は、メッシュ通信ネットワークを、別の通信ネットワーク（たとえばコアネットワークまたは他のタイプのバックボーンネットワーク等）に相互接続できるようにする。メッシュ通信ネットワークがスタンドアローンネットワークである時には、入力ノード装置１０１は省略されてもよい。
【００３３】
好適な実施形態では、入力ノード装置１０１は、メッシュ通信ネットワークにおいて定義される各データ経路のエンドポイントの１つであるノード装置である。たとえば、入力ノード装置１０１は、メッシュ通信ネットワークをコアネットワークに相互接続し、メッシュ通信ネットワークのノード装置１１１、１１２、１１３、１１４、１１５、１１６と、または端末装置１２１、１２２、１２３と、アップリンク通信およびダウンリンク通信ができるようにする。アップリンク通信とは、メッシュ通信ネットワークの装置の１つがオリジネーター(originator)であるコアネットワークに向けられたデータ伝送をいう。ダウンリンク通信とは、メッシュ通信ネットワークの装置の少なくとも１つがレシピエント(recipient)であるコアネットワークからのデータ伝送をいう。
【００３４】
図１Ａに示すメッシュ通信ネットワークは、さらに、少なくとも１つの端末装置１２１、１２２、１２３を備える。各端末装置は、メッシュ通信ネットワークが完全に動作している時には、リング部のノード装置の少なくとも２つに、それぞれのリンクを介して接続される。好ましくは、各端末装置は、メッシュ通信ネットワークが完全に動作している時には、リング部のノード装置の２つに、それぞれのリンクを介して接続される。各端末装置１２１、１２２、１２３をリング部のそれぞれのノード装置に接続する各リンクは、有線であってもよく、無線であってもよい。
【００３５】
すべてのリンクが動作可能である時には、メッシュ通信ネットワークは完全に動作していると考えられる。
【００３６】
メッシュ通信ネットワークにおいて通信をセットアップできるようにするために、ノード装置はリンク状態ルーティングプロトコルを実装する。リンク状態ルーティングプロトコルは、各ノード装置が転送テーブルを構築するよう導く。リンク状態ルーティングプロトコルの原理によれば、各ノード装置がメッシュ通信ネットワークに対する接続性のマップをグラフ形式で構築し、どのノード装置が別のどのノード装置に接続されているかを示す。その後、各ノード装置は、各ノード装置からメッシュ通信ネットワーク内の潜在的な宛先ノード装置(destination node device)それぞれまでの、最良データ経路を独立に計算する。その後、ノード装置は、１つ以上の上述の転送テーブルに、最良のデータ経路の集合を記憶する。言い換えると、リンク状態ルーティングプロトコルは、ノード装置が、最初から転送テーブルを構築するよう導く。
【００３７】
好適な実施形態では、メッシュ通信ネットワークのノード装置は、リンク状態ルーティングプロトコルＳＰＢを実装する。したがって、ＳＰＢの実装は、メッシュ通信ネットワークがコアネットワークまたは他のタイプのバックボーンネットワークに入力ノード装置１０１を介して接続されている時にはとくに有利である。
【００３８】
リンク状態ルーティングプロトコルは、大規模なトポロジー変更(major topology change)を考慮するためにメッシュ通信ネットワーク全体を再構成できるようにする。しかしながら、リンク（アクティブであり転送テーブルの構築時に考慮されるもの）が障害となった時または復旧した時に、トポロジー変更の簡素化されたアドバタイジング(advertising)が適用されてもよい。
【００３９】
実際に、リンク状態ルーティングプロトコルが終了する時には、転送テーブル（複数可）が、あるネットワークトポロジーを表す。ネットワークの再構成が要求される時には、リンク状態ルーティングプロトコルが再起動され、転送テーブルを最初から再構築し、リンクが障害となった時または復旧した時には簡素化されたアドバタイジングが実行される。
【００４０】
例示的な一例では、図１Ａに示すメッシュ通信ネットワークは、列車への／列車からの通信を可能にする通信ネットワークに対応する。入力ノード１０１は、列車コンシスト(consist)に埋め込まれた通信装置が、別のコンシストまたはコアネットワークにアクセスできるようにする。ノード装置１１１、１１６は、コンシストの第１の車両に埋め込まれており、同じくこの第１の車両に埋め込まれた端末装置１２１に通信の弾力性(communications resiliency)を提供することを目的とする。ノード装置１１２、１１５は、コンシストの第２の車両に埋め込まれており、同じくこの第２の車両に埋め込まれた端末装置１２２に通信の弾力性を提供することを目的とする。ノード装置１１３、１１４は、コンシストの第３の車両に埋め込まれており、同じくこの第３の車両に埋め込まれた端末装置１２３に通信の弾力性(communications resilience)を提供することを目的とする。上記ノード装置間のリンクが障害となった時または復旧した時には、後に詳述するように、簡素化されたアドバタイジングアプローチが実施される。しかしながら、新たなコンシストまたは列車構成が適用される時には（新たなコンシストの追加、コンシスト内の車両の追加、コンシスト内の車両の除去、またはコンシストの除去）、新たな列車構成に従って転送テーブルを構築するために、リンク状態ルーティングプロトコルが実施される。言い換えると、メッシュ通信ネットワークは、列車内に配置された装置が通信できるようにし、列車内には少なくともいくつかのノード装置が配置されており、列車構成変更があった時にはノード装置によってリンク状態プロトコルが適用される。
【００４１】
図１Ｂは、各ノード装置１１１、１１２、１１３、１１４、１１５、１１６によって実装される転送テーブルを概略的に表す。転送テーブルは、メッシュ通信ネットワークにわたる各データ経路を表す情報を含む。転送テーブルの各行が１つのデータ経路を表す。
【００４２】
図１Ｂに示す転送テーブルは第１列１５１を含み、第１列１５１は、行ごとに、データ経路の第１エンドポイントＥＰ１のアドレスを記憶する。さらに、転送テーブルは第２列１５２を含み、第２列１５２は、行ごとに、第１エンドポイントＥＰ１がそのデータ経路にわたってノード装置のどのポートを介して到達可能(reachable)であるかを特定する。さらに、転送テーブルは第３列１５３を含み、第３列１５３は、行ごとに、関連するデータ経路の識別子を記憶する。
【００４３】
さらに、転送テーブルは、そのデータ経路がアクティベートされ得るか否かを示すフラグを記憶する第４列１５４を含む。上述のリンク状態ルーティングプロトコルのネットワークディスカバリフェーズを実行した後に、各ノード装置は、転送テーブルにおいて特定される各データ経路についてこのフラグを真(TRUE)にセットし、これによって、そのデータ経路がアクティベートされ得ることを示す。後述するように、このフラグは、リンク障害またはリンク回復が検出された時に、ノード装置によって修正される。
【００４４】
転送テーブルの第１列１５１、第２列１５２および第３列１５３には、リンク状態ルーティングプロトコルのネットワークディスカバリフェーズから結果として得られる値が記入される。その後、転送テーブルは第４列１５４の追加によって増大する。
【００４５】
図１Ａに示すメッシュ通信ネットワークのコンテキストにおいて、あるデータ経路の各エンドポイントは、入力ノード１０１であるか、ノード装置であるか、または端末装置である。好ましくは、各データ経路のエンドポイントのうち１つが入力ノード装置１０１である。これは、たとえば、入力ノード１０１が、図１Ａに示すメッシュ通信ネットワークの部分を、コアネットワークまたはバックボーンネットワークまたは他のタイプのバックボーンネットワーク（それを介してすべてのデータ通信がセットアップされると考えられるもの）に相互接続するよう構成されている場合に該当する。各データ経路のエンドポイントの一方が入力ノード装置１０１である時には、図１Ｂに示す転送テーブルには、各データ経路の他方のエンドポイントのみが示される（すなわち第１列１５１において）。
【００４６】
そのような転送テーブルを実装するノード装置のコンテキストにおいて、当該転送テーブルは「ローカル」であると言われる。ノード装置によってメッセージが受信された時には、そのノード装置は、受信したメッセージから、データ経路識別子と、関連するデータ経路エンドポイントの識別子とを取得する。さらに、ノード装置は、そのメッセージが受信された当該ノード装置の入力ポートの指標を取得する。その後、ノード装置は、取得されたデータ経路識別子が第３列１５３に含まれ、かつ取得されたエンドポイント識別子が第１列１５１に含まれる行を発見するために、転送テーブルをパースする。ノード装置がそのような行を発見し、かつその行の第２列１５２に示されるポートが入力ポートと異なっている時には、ノード装置は、そのメッセージを転送するための出力ポートとして、その行の第２列１５２に示されるポートを用いる。ノード装置がそのような行を発見し、かつその行の第２列１５２に示されるポートが入力ポートと同一である時には、ノード装置は、そのメッセージを転送するための出力ポートとして、他のポートをすべて用いる。ノード装置がそのような行を発見しない時には、ノード装置は受信したメッセージを破棄する。
【００４７】
図２は、メッシュ通信ネットワークのリング部のノード装置の、および／または、入力ノード装置の、および／または、メッシュ通信ネットワークにわたるデータ経路のエンドポイントの、アーキテクチャを概略的に表す。大まかに言えば、このアーキテクチャはノードデバイスを参照する。
【００４８】
図示のアーキテクチャによれば、ノード装置は、通信バス２１０によって相互接続される以下の構成要素を備える：
‐プロセッサ、マイクロプロセッサ、マイクロコントローラまたはＣＰＵ（中央処理装置）２００。
‐ＲＡＭ（ランダムアクセスメモリ）２０１。
‐ＲＯＭ（読み出し専用メモリ）２０２。
‐ＨＤＤ（ハードディスクドライブ）２０３または記憶手段に記憶された情報を読み出すよう構成された他の任意の装置。
‐隣接ノード装置と、それぞれのリンクを介して通信を可能にする通信インタフェースのセット２０４。
【００４９】
ＣＰＵ２００は、ＲＯＭ２０２から、ＳＤ（セキュアデジタル）カードのような外部メモリから、またはＨＤＤ２０３から、ＲＡＭ２０１へとロードされた命令を実行することができる。ノード装置の電源が投入された後、ＣＰＵ２００は、ＲＡＭ２０１から命令を読み出し、これらの命令を実行することができる。これらの命令は、後述のアルゴリズムの少なくとも１つの、一部のまたはすべてのステップをＣＰＵ２００に実行させる、１つのコンピュータプログラムを形成する。
【００５０】
後述の各アルゴリズムの任意のステップおよびすべてのステップは、プログラム可能な計算機（ＰＣ（パーソナルコンピュータ）、ＤＳＰ（デジタル信号プロセッサ）またはマイクロコントローラ等）による命令の組またはプログラムの実行によるソフトウェアにおいて実装されてもよい。または、そうでなければ、機械または専用の構成要素（ＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定アプリケーション向け集積回路）等）によるハードウェアにおいて実装されてもよい。
【００５１】
図３は、メッシュ通信ネットワークの各ノード装置によって、メッシュ通信ネットワークにおけるリンク障害またはリンク回復を検出した時に実行されるアルゴリズムを概略的に表す。このアルゴリズムは、ノード装置１１２によって実行されると考えよう。
【００５２】
ノード装置１１２が図３のアルゴリズムを実行開始する時には、各ローカル転送テーブルはリンク状態ルーティングプロトコルの結果に従って記入されている。
【００５３】
ステップＳ３０１において、ノード装置１１２は、自身のポートの１つに取り付けられたリンクが一時的に使用不能になるか、または、自身のポートの１つに取り付けられたリンクが一時的な使用不能から回復することを検出する。
【００５４】
ステップＳ３０２において、ノード装置１１２は、トポロジー変更の簡素化されたアドバタイジングを開始する。ノード装置１１２は、トポロジー変更がリンク回復に関係するか、またはリンク障害に関係するかをチェックする。トポロジー変更がリンク障害に関係する時には、ステップＳ３０３が実行される。そうでなければ、ステップＳ３０５が実行される。
【００５５】
ステップＳ３０３において、ノード装置１１２は、任意選択で、ローカル転送テーブル（複数可）において、リンク障害によって影響を受けるデータ経路をマークする。言い換えると、ノード装置１１２は、リンク障害によって影響を受けるデータ経路のそれぞれについて、現在そのデータ経路がアクティベートされ得ないことを示す。図１Ｂに示す転送テーブルを考えると、ノード装置１１２は、リンク障害によって影響を受けるデータ経路のそれぞれについて、第４列１５４のフラグを偽(FALSE)にセットする。
【００５６】
ノード装置１１２は、関連するリンクが直前に接続されていたポートを特定することができる。ローカルノード装置１１２は、ポートの特定から、ローカル転送テーブル（複数可）をパースすることにより、リンク障害によって影響を受けるデータ経路を決定することができる。図１Ｂに示す転送テーブルを参照して、当該データ経路は、特定されたポートが第２列１５２に存在する行それぞれの第３列１５３において特定される。
【００５７】
続くステップＳ３０４において、ノード装置１１２はリンク障害メッセージを生成する。リンク障害メッセージは、リンク障害によって影響を受けるものとしてノード装置１１２によって特定される各データ経路の識別子と、そのリンク障害メッセージが宛てられた各データ経路エンドポイントの識別子とを含む。図１Ｂに示す転送テーブルを参照して、ノード装置１１２は、ステップＳ３０３においてノード装置１１２が第４列１５４のフラグを偽にセットしたデータ経路のそれぞれを、リンク障害メッセージに含める。一変形例では、ノード装置１１２は、単一の検出されたリンク障害について複数のリンク障害メッセージを生成し、さらに送信してもよい。この場合には、リンク障害によって影響を受ける各データ経路は、複数のリンク障害メッセージのうちで少なくとも１回特定される。
【００５８】
その後、ノード装置１１２は、生成されたリンク障害メッセージ（複数可）を、リンク障害メッセージ（複数可）において特定される各データ経路のエンドポイントの１つに送信する。リンク障害メッセージ（複数可）が送信される宛先のエンドポイント（複数可）のそれぞれは、ノード装置１１２が、当該エンドポイントと、関連するデータ経路のリンク障害が関連する当該リンクとの間に配置されることが好ましいようなものである。
【００５９】
図１Ｂに示す転送テーブルを参照すると、ノード装置１１２は、ローカル転送テーブル（複数可）からそのエンドポイントを特定できない場合がある。生成されたリンク障害メッセージ（複数可）が送信される宛先のノード装置をメッシュ通信ネットワークの各ノード装置が知っている（たとえば入力ノード装置１０１に送信されるべきすべてのリンク障害メッセージ）か、または、ノード装置１１２は、図４ＢおよびＡＤに関連して後述するように、隣接ノード装置から情報を収集する必要があるか、である。
【００６０】
ステップＳ３０４が実行されると、このアルゴリズムは終了する。
【００６１】
ステップＳ３０５において、ノード装置１１２は、任意選択で、ローカル転送テーブル（複数可）において、リンク回復に関連するデータ経路をマーク解除(unmark)する。言い換えると、ノード装置１１２は、リンク回復に関連するデータ経路のそれぞれについて、当該データ経路が復旧したことを示す。図１Ｂに示す転送テーブルを考えると、ノード装置１１２は、復旧したデータ経路それぞれについて、第４列１５４のフラグを真にセットする。ステップＳ３０３がリンク障害検出に際して実行されると期待される時には、ステップＳ３０５はリンク回復検出に際して実行されると期待される。
【００６２】
ノード装置１１２は、関連するリンクが再接続されたポートを特定することができる。
ノード装置１１２は、ポートの特定から、ローカル転送テーブル（複数可）をパースすることにより、リンク回復によって影響を受けるデータ経路を決定することができる。図１Ｂに示す転送テーブルを参照して、当該データ経路は、特定されたポートが第２列１５２に存在する行それぞれの第３列１５３において特定される。
【００６３】
続くステップＳ３０６において、ノード装置１１２はリンク回復メッセージを生成する。リンク回復メッセージは、リンク回復によって復旧するものとして、ノード装置１１２によって特定される各データ経路の識別子を含む。図１Ｂに示す転送テーブルを参照して、ノード装置１１２は、ステップＳ３０５においてノード装置１１２が第４列１５４のフラグを真にセットしたデータ経路のそれぞれを、リンク回復メッセージに含める。一変形例では、ノード装置１１２は、単一の検出されたリンク回復について複数のリンク回復メッセージを生成し、さらに送信してもよい。この場合には、リンク回復によって復旧する各データ経路は、複数のリンク回復メッセージにおいて少なくとも１回特定される。
【００６４】
上述のように、好適な実施形態では、入力ノード１０１は、ローカル転送テーブルにリストされたすべてのデータ経路のエンドポイントの１つである。その場合には、すべてのリンク回復メッセージは入力ノード１０１に向けて伝搬される。
【００６５】
その後、ノード装置１１２は、生成されたリンク回復メッセージ（複数可）を、リンク回復メッセージ（複数可）において特定される各データ経路のエンドポイントの１つに送信する。リンク回復メッセージ（複数可）が送信される宛先のエンドポイント（複数可）のそれぞれは、ノード装置１１２が、当該エンドポイントと、関連するデータ経路のリンク回復が関連する当該リンクとの間に配置されることが好ましいようなものである。ノード装置１１２は、ローカル転送テーブル（複数可）から当該エンドポイントを特定できない。生成されたリンク回復メッセージ（複数可）が送信される宛先のノード装置をメッシュ通信ネットワークの各ノード装置が知っている（たとえば入力ノード装置１０１に送信されるべきすべてのリンク回復メッセージ）か、または、ノード装置１１２は、図４ＢおよびＤに関連して後述するように、隣接ノード装置から情報を収集する必要があるか、である。
【００６６】
ステップＳ３０６が実行されると、このアルゴリズムは終了する。
【００６７】
好適な実施形態では、リンク障害およびリンク回復メッセージは、ＯＡＭ（運用、アドミニストレーションおよび管理(Operations, Administration and Management)）メッセージの形式である。
【００６８】
図４Ａは、リンク障害メッセージまたはリンク回復メッセージを生成する時にメッシュ通信ネットワークの各ノード装置によって実行される第１のアルゴリズムを概略的に表す。このアルゴリズムはノード装置１１１によって実行されると考えよう。
【００６９】
ステップＳ４０１において、ノード装置１１１は、ノード装置１１１のポートの１つにおいて、リンク障害またはリンク回復を検出する。
【００７０】
続くステップＳ４０２において、ノード装置１１１は、ローカル転送テーブル（複数可）から、そのリンク障害またはリンク回復によって影響を受けるデータ経路（すなわち、リンク障害の場合にはもはや使用可能でないデータ経路、リンク回復の場合には再び使用可能であるデータ経路）をそれぞれ特定するデータ経路識別子を少なくとも１つ取得する。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は転送テーブルをパースし、リンク障害またはリンク回復が検出されたポートの識別子が第２列１５２に含まれる各行を特定する。ステップＳ４０２において取得されるデータ経路識別子は、特定された行の第３列１５３に記憶された識別子である。リンク障害が検出された時には、ノード装置１１１はそのリンク障害が関連する各データ経路をローカルで非アクティベート化(inactivate)する。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は特定された各行の第４列１５４のフラグを偽にセットする。リンク回復が検出された時には、ノード装置１１１はそのリンク回復が関連する各データ経路をローカルで再アクティベートする。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は特定された各行の第４列１５４のフラグを真にセットする。
【００７１】
続くステップＳ４０３において、ノード装置１１１は、ステップＳ４０１でリンク障害が検出されていた時にはリンク障害メッセージを生成し、ステップＳ４０１でリンク回復が検出されていた時にはリンク回復メッセージを生成する。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は、そのリンク障害またはリンク回復によって影響を受けるデータ経路が関連する各行の第１列１５１に記憶された識別子を検索する。ステップＳ４０２において特定された各データ経路について、ノード装置１１１は、さらに、ローカル転送テーブル（複数可）から、当該データ経路の関連するエンドポイントの識別子を取得する。したがって、リンク障害メッセージおよびリンク回復メッセージは、影響を受けるデータ経路それぞれの識別子を、当該データ経路識別子に関連付けて含む。図４Ａのアルゴリズムは、リンク障害または回復メッセージが入力ノード装置１０１に向けて伝搬されなければならない場合に特に適合している。
【００７２】
続くステップＳ４０４において、ノード装置１１１は、ノード装置１１１のポートのうちリンク障害またはリンク回復が検出されたもの（すなわち、回復したリンクまたは障害となったリンクが再接続された（リンク回復）または接続されていた（リンク障害）ポート）を除くすべてのポートに、生成されたリンク障害またはリンク回復メッセージを送信する。隣接ノード装置がそのようなリンク障害またはリンク回復メッセージを受信した時には、その隣接ノードは、受信したリンク障害またはリンク回復メッセージを、図４Ｃに関して後に詳述するように処理する。
【００７３】
図４Ｂは、リンク障害メッセージまたはリンク回復メッセージを生成する時にメッシュ通信ネットワークの各ノード装置によって実行される第２のアルゴリズムを概略的に表す。このアルゴリズムはノード装置１１１によって実行されると考えよう。図４Ｂのアルゴリズムは、図４Ａのアルゴリズムに対する代替物である。
【００７４】
ステップＳ４１１において、ノード装置１１１は、ノード装置１１１のポートの１つにおいて、リンク障害またはリンク回復を検出する。
【００７５】
続くステップＳ４１２において、ノード装置１１１は、ローカル転送テーブル（複数可）から、そのリンク障害またはリンク回復によって影響を受けるデータ経路（すなわち、リンク障害の場合にはもはや使用可能でないデータ経路、リンク回復の場合には再び使用可能であるデータ経路）をそれぞれ特定するデータ経路識別子を少なくとも１つ取得する。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は転送テーブルをパースし、リンク障害またはリンク回復が検出されたポートの識別子が第２列１５２に含まれる各行を特定する。ステップＳ４０２において取得されるデータ経路識別子は、特定された行の第３列１５３に記憶された識別子である。リンク障害が検出された時には、ノード装置１１１はそのリンク障害が関連する各データ経路をローカルで非アクティベート化する。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は特定された各行の第４列１５４のフラグを偽にセットする。リンク回復が検出された時には、ノード装置１１１はそのリンク回復が関連する各データ経路をローカルで再アクティベートする。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は特定された各行の第４列１５４のフラグを真にセットする。
【００７６】
続くステップＳ４１３において、ノード装置１１１は、その特定されたデータ経路を、そのポート（ノード装置１１１の、リンク障害またはリンク回復が検出されたポート）に関連付けられたローカル逆経路テーブルにおいてサーチする。ローカル逆経路テーブル（複数可）の作成は、図４Ｄに関して後に詳述する。データ経路識別子の恩恵により、ノード装置１１１は、そのリンク障害またはリンク回復が送信されなければならないデータ経路エンドポイントの識別子を、そのポート（ノード装置１１１の、リンク障害またはリンク回復が検出されたポート）に関連付けられたローカル逆経路テーブルから取得する。
【００７７】
続くステップＳ４１４において、ノード装置１１１は、ステップＳ４０１でリンク障害が検出されていた時にはリンク障害メッセージを生成し、ステップＳ４０１でリンク回復が検出されていた時にはリンク回復メッセージを生成する。図４Ｂのアルゴリズムは、リンク障害または回復メッセージが、入力ノード装置１０１でない可能性のあるノード装置に向けて伝搬されなければならない場合に特に適合している。生成されたリンク障害またはリンク回復メッセージは、ステップＳ４１３において取得されたエンドポイント識別子を含む。リンク障害またはリンク回復メッセージを受信した時には、宛先のノード装置は、そのリンク障害またはリンク回復メッセージに含まれている宛先識別子の恩恵により、そのメッセージが当該ノード装置に対して意図されたものであるということを知る。
【００７８】
続くステップＳ４０４において、ノード装置１１１は、ノード装置１１１のポートのうちリンク障害またはリンク回復が検出されたもの（すなわち、回復したリンクまたは障害となったリンクが再接続された（リンク回復）または接続されていた（リンク障害）ポート）を除くすべてのポートに、生成されたリンク障害またはリンク回復メッセージを送信する。隣接ノード装置がそのようなリンク障害またはリンク回復メッセージを受信した時には、当該隣接ノードは、受信したリンク障害またはリンク回復メッセージを、図４Ｃに関して後に詳述するように処理する。
【００７９】
図４Ｃは、リンク障害メッセージまたはリンク回復メッセージを受信した時にメッシュ通信ネットワークの各ノード装置によって実行されるアルゴリズムを概略的に表す。このアルゴリズムはノード装置１１１によって実行されると考えよう。
【００８０】
ステップＳ４２１において、ノード装置１１１は、リンク障害メッセージまたはリンク回復メッセージを受信する。
【００８１】
続くステップＳ４２２において、ノード装置１１１は、受信したリンク障害メッセージまたは受信したリンク回復メッセージから、そのリンク障害メッセージまたはリンク回復メッセージが伝搬しなければならないデータ経路を特定し、また、そのデータ経路識別子に関連付けられたエンドポイント識別子を特定する。
【００８２】
続くステップＳ４２３において、ノード装置１１１は、データ経路の識別子とエンドポイントの識別子と（いずれもステップＳ４２２において特定されたもの）によって形成される対を、ノード装置１１１が知っているか否かをチェックする。すなわち、受信したリンク障害またはリンク回復メッセージから取得したデータ経路識別子が、ノード装置１１１を横切るデータ経路に関連するか否かをチェックする。図１Ｂに示す転送テーブルを考慮して、ノード装置１１１は、取得したデータ経路識別子が転送テーブルの第３列１５３に存在するか否か、エンドポイント識別子が転送テーブルの第１列１５１に存在するか否かをチェックする。
【００８３】
ノード装置１１１がデータ経路識別子を知っている時には、ステップＳ４２４が実行される。そうでなければ、ステップＳ４２５が実行される。
【００８４】
ステップＳ４２４において、リンク障害メッセージまたはリンク回復メッセージが受信されたポートが転送テーブルの第２列１５２に示されるものと同一である時には、ノード装置１１１は、ノード装置１１１のポートのうち、ノード装置１１１がそのリンク障害メッセージまたはリンク回復メッセージを受信したポートを除くすべてのポートを介して、そのリンク障害メッセージまたはリンク回復メッセージを転送する。リンク障害メッセージまたはリンク回復メッセージが受信されたポートが転送テーブルの第２列１５２に示されるものと同一でない時には、ノード装置１１１は、転送テーブルの第２列１５２に示されるポートを介して、そのリンク障害メッセージまたはリンク回復メッセージを転送する。
【００８５】
ステップＳ４２５において（これは、ノード装置１１１が、そのリンク障害メッセージまたはリンク回復メッセージが伝搬しなければならないデータ経路上にないということを意味する）、ノード装置１１１はリンク障害メッセージまたはリンク回復メッセージを破棄する。
【００８６】
図４Ｄは、ローカル逆経路テーブルを作成するためにメッシュ通信ネットワークの各ノード装置によって実行される、任意選択のアルゴリズムを概略的に表す。このアルゴリズムはノード装置１１１によって実行されると考えよう。図４Ｄのアルゴリズムは、メッシュ通信ネットワークの各ノード装置が、リンク障害またはリンク回復を検出した時に図４Ｂのアルゴリズムを実施する時に有用である。
【００８７】
ステップＳ４３１において、ノード装置１１１は、上述のリンク状態ルーティングプロトコルの結果としての更新を検出する。言い換えると、各ローカル転送テーブルは、大規模なトポロジー変更(major topology change)に続いて最初から再計算され終わっている。
【００８８】
続くステップＳ４３２において、ノード装置１１１は、各隣接ノード装置から逆経路テーブル情報を取得する。ノード装置１１１は、当該ノード装置１１１の各ポートのうち、隣接ノード装置とのリンクが存在するものを決定する。その後、ノード装置１１１は、当該各隣接ノード装置に、逆経路情報要求を送信する。逆経路情報要求に応答して、ノード装置１１１は、エンドポイント識別子に関連付けられたデータ経路識別子のリストを受信する。ノード装置１１１は、各隣接ノードが受信した情報から、ノード装置１１１のポートのうち当該隣接ノード装置が接続されているものに関連付けられた逆経路テーブルを作成する。したがって、作成された逆経路テーブルは、データ経路識別子とエンドポイント識別子との対応関係を含む。逆経路テーブルの例は、図４Ｅに関して後に詳述する。
【００８９】
続くステップＳ４３３において、ノード装置１１１は、当該ノード装置１１１の各隣接ノード装置に転送テーブル情報を提供する。原理はステップＳ４３２と同一である（ただしノード装置が引き受ける役割が逆転している点を除く）。したがって、ステップＳ４３３において、ノード装置１１１は、当該ノード装置１１１の各隣接ノード装置から各逆経路情報要求を受信する。ノード装置１１１は、逆経路情報要求ごとに、その逆経路情報要求が受信されたポートを決定する。すなわち、対応する隣接ノード装置が接続されているポートを決定する。その後、ノード装置１１１は、ローカル転送テーブル（複数可）において特定されるどのデータ経路がそのポートを通過するかを決定するために、ローカル転送テーブル（複数可）をパースする。図１Ｂに示す転送テーブルを参照して、ノード装置１１１は、第２列１５２が当該ポートを示す各行を特定する。特定された各行の第３列１５３に記憶されたデータ経路識別子および第１列１５１に記憶されたデータ経路エンドポイント識別子は、その後収集され、逆経路情報要求に応じて提供される。
【００９０】
ステップＳ４３２およびＳ４３３は、逆転してもよく、並列に実行されてもよいということに留意すべきである。
【００９１】
図４Ｅは、メッシュ通信ネットワークの各ノード装置によって任意選択で実施されてもよい通りの、逆経路テーブルの例を概略的に表す。
【００９２】
図４Ｅに示す逆経路テーブルは第１列４４１を含み、第１列４４１は、行ごとに、データ経路の第２エンドポイントＥＰ２のアドレスを記憶し、ここで、第１エンドポイントＥＰ１は考慮中のノード装置のローカル転送テーブルの１つに記憶されている。さらに、逆経路テーブルは、第２列４４２を含み、第２列４４２は、行ごとに、関連するデータ経路の識別子を記憶する。
【００９３】
各逆経路テーブルは、考慮中のノード装置のポートの１つに関連付けられる。一変形例では、単一の逆経路テーブルが作成され、この単一の逆経路テーブルはさらに第３列を含み、第３列には、逆経路テーブルの各行について、関連するポートの識別子が記憶される。
【００９４】
図５は、リンク障害メッセージを受信した時に入力ノード装置１０１によって実行されるアルゴリズムを概略的に表す。好適な実施形態では、図５のアルゴリズムは入力ノード装置１０１によって実行される。より一般的なコンテキストでは、図５のアルゴリズムは、リンク障害メッセージの宛先であるエンドポイントによって実行される。
【００９５】
ステップＳ５０１において、入力ノード装置１０１はリンク障害メッセージを受信する。受信されたリンク障害メッセージは、リンク障害によって影響を受ける少なくとも１つのデータ経路（ただし入力ノード装置１０１がエンドポイントであるもの）の識別子を含む。上述のように、入力ノード装置１０１は各リンク障害について２以上のリンク障害メッセージを受信してもよい。
【００９６】
続くステップＳ５０２において、入力ノード装置１０１は、ローカル転送テーブル（複数可）において、リンク障害によって影響を受けるデータ経路をマークする。言い換えると、入力ノード装置１０１は、リンク障害によって影響を受けるデータ経路のそれぞれについて、当該データ経路が現在アクティベートされ得ないことを示す。図１Ｂに示す転送テーブルを考えると、入力ノード装置１０１は、リンク障害によって影響を受けるデータ経路のそれぞれについて、第４列１５４のフラグを偽にセットする。
【００９７】
続くステップＳ５０３において、入力ノード装置１０１は、リンク障害によって影響を受けるデータ経路のそれぞれについて、当該データ経路が関連するノード装置または端末装置にデータおよび／またはメッセージを送信するためにそれまでアクティベートされていたか否かをチェックする。実際に、２つのエンドポイント間には複数のデータ経路が存在し得るが、データおよび／またはメッセージを伝送するために有効に(effectively)アクティベートされ得るものは、それらのうちたった１つであるか、またはほとんどない(only one or few)。入力ノード装置１０１（または、より一般的にはリンク障害メッセージを受信したエンドポイント）は、アクティベートされたデータ経路のそれぞれを特定する情報を保持する。リンク障害メッセージが、それまで有効にアクティベートされていたデータ経路に関連する時には、入力ノード装置１０１は、そのデータ経路を置き換えるために代替データ経路を選択する。その後、入力ノード装置１０１は、以前にアクティブだったデータ経路（リンク障害を被ったもの）から、選択された代替データ経路に切り替える。代替データ経路の選択は、恣意的に(arbitrarily)実行されてもよく、事前に定義される基準（ロードバランシング基準等）に従って実行されてもよい。代替データ経路の選択は、アクティベートされ得るデータ経路のうちから実行される。すなわち、図１Ｂに示す転送テーブルを参照して、入力ノード装置１０１は、代替データ経路を、第４列１５４のフラグが真にセットされているデータ経路のうちから選択する。
【００９８】
続くステップＳ５０４において、入力ノード装置１０１は経路切替メッセージを生成する。経路切替メッセージは、リンク障害を被ったデータ経路の他方のエンドポイントの識別子と、選択された代替データ経路の識別子とを含む。その後、入力ノード装置１０１は、生成された経路切替メッセージを、選択された代替データ経路を介して送信する。代替データ経路はローカル転送テーブル（複数可）に存在しているので、経路切替メッセージが送信されなければならない入力ノード装置１０１の出力ポートは、ローカル転送テーブル（複数可）から検索可能である。
【００９９】
図６は、リンク回復メッセージを受信した時に入力ノード装置１０１によって実行されるアルゴリズムを概略的に表す。好適な実施形態では、図６のアルゴリズムは入力ノード装置１０１によって実行される。より一般的なコンテキストでは、図６のアルゴリズムは、リンク回復メッセージの宛先であるエンドポイントによって実行される。
【０１００】
ステップＳ６０１において、入力ノード装置１０１はリンク回復メッセージを受信する。受信されたリンク回復メッセージは、リンク回復によって復旧する各データ経路（ただし入力ノード装置１０１がエンドポイントであるもの）の識別子を含む。上述のように、入力ノード装置１０１は各リンク回復について２以上のリンク回復メッセージを受信してもよい。
【０１０１】
続くステップＳ６０２において、入力ノード装置１０１は、ローカル転送テーブル（複数可）において、リンク回復によって復旧したデータ経路をマーク解除する。言い換えると、入力ノード装置１０１は、リンク回復によって復旧したデータ経路のそれぞれについて、当該データ経路が復旧したことを示す。図１Ｂに示す転送テーブルを考えると、入力ノード装置１０１は、リンク回復によって復旧するデータ経路のそれぞれについて、第４列１５４のフラグを真にセットする。
【０１０２】
続くステップＳ６０３において、入力ノード装置１０１は、復旧したデータ経路が、リンク障害に続いて選択された代替データ経路を置き換えなければならないか、または、別の現在アクティベートされているデータ経路を置き換えなければならないかをチェックする。これは、事前に定義される基準（ロードバランシング基準等）に従って行われてもよい。復旧したデータ経路が代替データ経路を置き換えなければならない時には、入力ノード装置１０１は、リンク障害に続いて選択された代替データ経路を置き換えるために、リンク回復メッセージにおいて特定されるデータ経路を選択する。その後、入力ノード装置１０１は、以前のアクティブなデータ経路から、復旧したデータ経路に切り替える。入力ノード装置１０１（より一般的には、リンク障害メッセージを受信したエンドポイント）は、アクティベートされたデータ経路をそれぞれ特定する情報を保持する。
【０１０３】
続くステップＳ６０４において、入力ノード装置１０１は経路切替メッセージを生成する。経路切替メッセージは、アクティベートされるべきデータ経路の他方のエンドポイントの識別子と、アクティベートされるべきデータ経路の識別子とを含む。その後、入力ノード装置１０１は、生成された経路切替メッセージを、復旧したデータ経路を介して送信する。上述のように、経路切替メッセージが送信されなければならない入力ノード装置１０１の出力ポートは、ローカル転送テーブルから検索可能である。
【０１０４】
経路切替メッセージは、さらに、デアクティベート(deactivate)されるべきデータ経路の識別子を含んでもよい（関連するエンドポイントは、アクティベートされるべきデータ経路に対するものと同一である）。これは、入力ノード装置１０１からそのデータ経路の他方のエンドポイントまでにおいて、２以上のデータ経路が並列的に使用可能である時に、事実上有用である。
【０１０５】
図７は、経路切替メッセージを受信した時に、メッシュ通信ネットワークの各ノード装置および各端末装置によって実行されるアルゴリズムを概略的に表す。このアルゴリズムはノード装置１１１によって実行されると考えよう。
【０１０６】
ステップＳ７０１において、ノード装置１１１は経路切替メッセージを受信する。経路切替メッセージは、アクティベートされるべきデータ経路のエンドポイント１つの識別子と、アクティベートされるべきデータ経路の識別子とを含む。さらに、経路切替メッセージは、デアクティベートされるべきデータ経路の識別子を含んでもよい。
【０１０７】
続くステップＳ７０２において、ノード装置１１１は、当該ノード装置１１１がその経路切替メッセージに関連するエンドポイントであるか否かを（すなわち、当該ノード装置１１１がその経路切替メッセージにおいて特定されるデータ経路エンドポイントであるか否かを）チェックする。ノード装置１１１が経路切替メッセージに関連するエンドポイントである時には、ステップＳ７０３が実行され、そうでなければ、ステップＳ７０４が実行される。
【０１０８】
ステップＳ７０３において、ノード装置１１１は、受信した経路切替メッセージにおいてアクティベートされるべきものとして特定されるデータ経路をアクティベートする。デアクティベートされるべきデータ経路は、受信した経路切替メッセージにおいて示されているか、または、ノード装置１１１は、どのデータ経路をデアクティベートする必要があるかを現在の状況から演繹することができる。受信した経路切替メッセージにおいて、デアクティベートされるべきデータ経路が示されている時には、ノード装置１１１はそのデータ経路をデアクティベートする。受信した経路切替メッセージにおいて、デアクティベートされるべきデータ経路が示されていない時には、あるエンドポイントから別のエンドポイントまでただ１つのデータ経路のみがアクティベートされていると想定される。したがって、そのデータ経路は、その関連するエンドポイントに関してそれまでアクティベートされていたものであるので、ノード装置１１１は、どのデータ経路がデアクティベートされなければならないかを決定することができる。
【０１０９】
ノード装置１１１、または経路切替メッセージを受信する端末装置は、アクティベートされるデータ経路をそれぞれ特定する情報を保持する。
【０１１０】
ステップＳ７０４において、ノード装置１１１は、受信した経路切替メッセージを、その受信した経路切替メッセージにおいて特定されるアクティベートされるべきデータ経路を介して、転送する。
【図１Ａ】
0006048995.tif 000002
【図１Ｂ】
0006048995.tif 000003
【図２】
0006048995.tif 000004
【図３】
0006048995.tif 000005
【図４Ａ】
0006048995.tif 000006
【図４Ｂ】
0006048995.tif 000007
【図４Ｃ】
0006048995.tif 000008
【図４Ｄ】
0006048995.tif 000009
【図４Ｅ】
0006048995.tif 000010
【図５】
0006048995.tif 000011
【図６】
0006048995.tif 000012
【図７】
0006048995.tif 000013