(57)【特許請求の範囲】
【請求項１】
ブリッジによって接続されたバスを有する通信ネットワークであって、各ブリッジは１対の２つのポータルを有し、第一のポータルは第一のバスに接続され、第二のポータルは第二のバスに接続され、各バスは固有のバス識別子によって識別され、各ポータルは固有のポータル識別子によって識別される通信ネットワークにおいて、ルーティング・テーブルを決定する方法であって、
（ａ）  前記所定のポータルが、該所定のポータルによって格納されたルーティング・テーブル・データを該所定のポータルの対のポータルへ送信し、該対のポータルからルーティング・テーブル・データを受信する工程と、
（ｂ）  前記受信したルーティング・テーブル・データを該所定のポータル自身のルーティング・テーブルと連結させる工程と、
（ｃ）  前記所定のポータルのローカルバス上の該所定のポータル自身のルーティング・テーブル・データをブロードキャストする工程と、
（ｄ）  該ローカルバス上の他のポータルによってブロードキャストされたルーティング・テーブル・データを受信し、前記受信したルーティング・テーブル・データを該所定のポータル自身のルーティング・テーブルと連結させる工程と、
（ｅ）  ネットワークにおけるすべてのバスに関するルーティング・データが受信されるまで、前記所定のポータルによる上記工程を繰り返す工程と、を有することを特徴とする方法。
【請求項２】
請求項１記載の方法であって、
工程（ａ）の１回目において、前記所定のポータルによって送信されたルーティング・テーブル・データは、該所定のポータルの識別子と、該所定のポータルのローカルバスの識別子とを有し、
工程（ａ）の１回目において、前記所定のポータルがその対ポータルから受信したルーティング・テーブル・データは、前記対ポータルの識別子と、該対ポータルのローカルバスの識別子とを有する、ことを特徴とする方法。
【請求項３】
請求項２記載の方法であって、
前記所定のポータルによって送信されたルーティング・テーブル・データは、該所定のポータルの識別子を有し、
前記所定のポータルによって受信されたルーティング・テーブル・データは、該所定のポータルの対ポータルの識別子を有する、ことを特徴とする方法。
【請求項４】
請求項２又は３記載の方法であって、
ポータルのルーティング・テーブルは、
リモートバスの識別子と、
各リモートバスについて、最初に該リモートバス識別子を送信したリモートバスについてローカルのポータルの識別子と、
該リモートバスの前記所定のポータルについてローカルのバスに対する深さと、
該ローカルバス上の該リモートバス識別子を有するルーティング・テーブル・データをブロードキャストしたローカル・ポータルの識別子と、を有することを特徴とする方法。
【請求項５】
請求項１乃至４のいずれか一記載の方法であって、
所定のポータルによって送信若しくはブロードキャストされたルーティング・テーブル・データは、ルーティング・テーブル全体を含むことを特徴とする方法。
【請求項６】
請求項５記載の方法であって、
前記所定のポータルは、その対ポータル及びローカル・ポータルから受信したルーティング・テーブルが該所定のポータル自身のルーティング・テーブルと重複するデータのみを含むとき、工程（ａ）乃至（ｅ）を繰り返すことをやめる、ことを特徴とする方法。
【請求項７】
請求項１乃至４のいずれか一記載の方法であって、
所定のポータルによって送信若しくはブロードキャストされたルーティング・テーブル・データは、前工程において、前記所定のポータルによって送信若しくはブロードキャストされていないルーティング・テーブルの一部のみを有する、ことを特徴とする方法。
【請求項８】
請求項７記載の方法であって、
前記所定のポータルは、前の繰り返しの際にルーティング・テーブルを受信しなかったとき、工程（ａ）乃至（ｅ）を繰り返すことをやめる、ことを特徴とする方法。
【請求項９】
請求項１乃至８のいずれか一記載の方法であって、
前記連結工程は、前記所定のポータルについてローカルのバスから任意のリモートバスへの唯一のパスを選択することと、該所定のポータルのルーティング・テーブルから選択されなかったパスを削除することとを含むことを特徴とする方法。
【請求項１０】
請求項４及び９記載の方法であって、
所定のリモートバスへの前記選択されたパスは、前記所定のリモートバス用のルーティング・テーブルに格納されたポータル識別子の関数であることを特徴とする方法。
【請求項１１】
請求項４及び９、又は、請求項４及び１０記載の方法であって、
所定のリモートバスへの前記選択されたパスは、前記パス上のポータルの帯域幅の関数であることを特徴とする方法。
【請求項１２】
請求項９乃至１１記載の方法であって、
前記選択は、前記リモートバスへの最短パスの中で為され、より長いパスは前記ルーティング・テーブルから削除されることを特徴とする方法。
【請求項１３】
請求項１乃至１２のいずれか一記載の方法であって、
リモートバス識別子のリストと、各リモートバスについて、前記所定のポータルに該所定のポータルについてローカルのバスからその対ポータルへメッセージを転送させるべきか否かと、を含むメッセージをルーティングするために、ルーティング・テーブルが簡素化されることを特徴とする方法。
【請求項１４】
第一の通信バスへ接続され得ると共に、第二の通信バスへ接続するために対ポータル装置へ接続され得るポータル装置であって、
前記第一の通信バスへの接続用のバス・インターフェース（１０１）と、
前記対ポータル装置への接続用の切替ファブリック・インターフェース（１０２）と、
ルーティング・テーブル・データを格納するメモリ（１０４）と、
前記メモリに格納されたルーティング・テーブル・データを前記対ポータルへ送信し、前記メモリに格納されたルーティング・テーブル・データを前記第一の通信バス上にブロードキャストし、前記バス・インターフェース及び切替ファブリック・インターフェースをルーティング・テーブル・データを受信若しくは送信するように制御し、リモート通信バス用のルーティング・テーブル・データに関連した連続的な受信及び送信サイクルにおいて、受信したルーティング・テーブル・データを前記メモリに格納されたデータと連結させる手段（１０３）と、を有することを特徴とするポータル装置。
【発明の詳細な説明】
【０００１】
本発明は、ブリッジによって接続されたバスを有する通信ネットワークにおいて、ルーティング・テーブルを決定する方法及び装置に関する。これは、特に、ＩＥＥＥ１３９４マルチバス・ネットワーク及び家庭用通信ネットワークに適合する。
【０００２】
ＩＥＥＥ１３９４規格は、高性能シリアルバスを規定する。このようなバスを複数個、１つのネットワーク内で接続するブリッジを規定する努力は現在進行中である。対応するワーキング・グループによって最も最近発行されたドキュメントは、１９９９年２月７日付けの「ＩＥＥＥ  Ｐ１３９４．１  Ｄｒａｆｔ  Ｓｔａｎｄａｒｄ  ｆｏｒ  Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｓｅｒｉａｌ  Ｂｒｉｄｇｅｓ」である。
【０００３】
上記ドラフトによれば、ブリッジは、２つのバスしか接続しない。それにもかかわらず、複数のパスが２つのバスの間に存在してもよい。第一バス上の装置が、ネットワーク上のどこかの第二バス上の装置へメッセージを送信したいと思う場合、第一のバスに接続されたブリッジは、第一のバス上を巡回するメッセージを転送するか否かを決定しなければならない。ブリッジは、複数の基準に基づき、メッセージを転送することに決定してもよく、転送しないことに決定してもよい。
【０００４】
本発明は、ブリッジがバスからバスへメッセージを転送するか否かを決定することができるようにするために、各ブリッジのレベルにおいてルーティング・テーブルを確立させる方法を提案する。
【０００５】
本発明の目的は、ブリッジによって接続されたバスを有する通信ネットワークであって、各ブリッジは１対の２つのポータルを有し、第一のポータルは第一のバスに接続され、第二のポータルは第二のバスに接続され、各バスは固有のバス識別子によって識別され、各ポータルは固有のポータル識別子によって識別される通信ネットワークにおいて、ルーティング・テーブルを決定する方法であって、
（ａ）  前記所定のポータルが、該所定のポータルによって格納されたルーティング・テーブル・データを該所定のポータルの対のポータルへ送信し、該対のポータルからルーティング・テーブル・データを受信する工程と、
（ｂ）  前記受信したルーティング・テーブル・データを該所定のポータル自身のルーティング・テーブルと連結させる工程と、
（ｃ）  前記所定のポータルのローカルバス上の該所定のポータル自身のルーティング・テーブル・データをブロードキャストする工程と、
（ｄ）  該ローカルバス上の他のポータルによってブロードキャストされたルーティング・テーブル・データを受信し、前記受信したルーティング・テーブル・データを該所定のポータル自身のルーティング・テーブルと連結させる工程と、
（ｅ）  ネットワークにおけるすべてのバスに関するルーティング・データが受信されるまで、前記所定のポータルによる上記工程を繰り返す工程と、を有することを特徴とする方法である。
【０００６】
本発明に係る方法の利点の１つは、ルーティング・テーブルが対称的であること、すなわち、装置Ａから装置Ｂへ行くのと、装置Ｂから装置Ａに行くのに同じパスが用いられること、である。
【０００７】
本発明の好ましい実施形態によれば、工程（ａ）の１回目において、前記所定のポータルによって送信されたルーティング・テーブル・データは、該所定のポータルの識別子と、該所定のポータルのローカルバスの識別子とを有し、工程（ａ）の１回目において、前記所定のポータルがその対ポータルから受信したルーティング・テーブル・データは、前記対ポータルの識別子と、該対ポータルのローカルバスの識別子とを有する。
【０００８】
本発明の好ましい実施形態によれば、前記所定のポータルによって送信されたルーティング・テーブル・データは、該所定のポータルの識別子を有し、前記所定のポータルによって受信されたルーティング・テーブル・データは、該所定のポータルの対ポータルの識別子を有する。
【０００９】
本発明の好ましい実施形態によれば、ポータルのルーティング・テーブルは、リモートバスの識別子と、各リモートバスについて、最初に該リモートバス識別子を送信したリモートバスについてローカルのポータルの識別子と、該リモートバスの前記所定のポータルについてローカルのバスに対する深さと、該ローカルバス上の該リモートバス識別子を有するルーティング・テーブル・データをブロードキャストしたローカル・ポータルの識別子と、を有する。
【００１０】
本発明の変形例の実施形態によれば、所定のポータルによって送信若しくはブロードキャストされたルーティング・テーブル・データは、ルーティング・テーブル全体を含む。
【００１１】
上記変形例実施形態によれば、前記所定のポータルは、その対ポータル及びローカル・ポータルから受信したルーティング・テーブルが該所定のポータル自身のルーティング・テーブルと重複するデータのみを含むとき、工程（ａ）乃至（ｅ）を繰り返すことをやめる。
【００１２】
本発明の好ましい実施形態によれば、所定のポータルによって送信若しくはブロードキャストされたルーティング・テーブル・データは、前工程において、前記所定のポータルによって送信若しくはブロードキャストされていないルーティング・テーブルの一部のみを有する。
【００１３】
好ましい実施形態によれば、前記所定のポータルは、前の繰り返しの際にルーティング・テーブルを受信しなかったとき、工程（ａ）乃至（ｅ）を繰り返すことをやめる。
【００１４】
好ましい実施形態によれば、前記連結工程は、前記所定のポータルについてローカルのバスから任意のリモートバスへの唯一のパスを選択することと、該所定のポータルのルーティング・テーブルから選択されなかったパスを削除することとを含む。
【００１５】
好ましい実施形態によれば、所定のリモートバスへの前記選択されたパスは、前記所定のリモートバス用のルーティング・テーブルに格納されたポータル識別子の関数である。
【００１６】
変形例実施形態によれば、所定のリモートバスへの前記選択されたパスは、前記パス上のポータルの帯域幅の関数である。
【００１７】
好ましい実施形態によれば、前記選択は、前記リモートバスへの最短パスの中で為され、より長いパスは前記ルーティング・テーブルから削除される。
【００１８】
好ましい実施形態によれば、リモートバス識別子のリストと、各リモートバスについて、前記所定のポータルに該所定のポータルについてローカルのバスからその対ポータルへメッセージを転送させるべきか否かと、を含むメッセージをルーティングするために、ルーティング・テーブルが簡素化される。
【００１９】
本発明の別の目的は、第一の通信バスへ接続され得ると共に、第二の通信バスへ接続するために対ポータル装置へ接続され得るポータル装置であって、
前記第一の通信バスへの接続用のバス・インターフェースと、
前記対ポータル装置への接続用の切替ファブリック・インターフェースと、
ルーティング・テーブル・データを格納するメモリと、
前記メモリに格納されたルーティング・テーブル・データを前記対ポータルへ送信し、前記メモリに格納されたルーティング・テーブル・データを前記第一の通信バス上にブロードキャストし、前記バス・インターフェース及び切替ファブリック・インターフェースをルーティング・テーブル・データを受信若しくは送信するように制御し、リモート通信バス用のルーティング・テーブル・データに関連した連続的な受信及び送信サイクルにおいて、受信したルーティング・テーブル・データを前記メモリに格納されたデータと連結させる手段と、を有するポータル装置である。
【００２０】
本発明の他の特徴及び利点は、好ましい非限定的な実施形態の説明を通じて明らかにされる。この実施形態は、同封された図面の助けを借りて説明される。
【００２１】
本実施形態は、ブリッジによって接続されたＩＥＥＥ１３９４シリアルバスを有するネットワークに関する。本発明がこのような特定の環境に限定されず、当業者によって他の環境へも適合され得ることは明らかである。
【００２２】
本実施形態は、非同期メッセージ送信に適合するが、他の種類の送信へも拡張され得る。
【００２３】
ＩＥＥＥ１３９４バスの仕様に関するより詳細な情報は、ＩＥＥＥドキュメント：「Ｐ１３９４  Ｓｔａｎｄａｒｄ  ｆｏｒ  ａ  Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｓｅｒｉａｌ  Ｂｕｓ」を参照のこと。
【００２４】
図１は、２つのＩＥＥＥ１３９４バス間のブリッジとなる２つのポータルのうちの１つについての図である。他のポータルは同様の要素を含む。
【００２５】
ポータルは、物理インターフェース回路とリンク回路とを含む１３９４インターフェース１０１を有する。ポータルは、更に、切替ファブリック・インターフェース１０２も有する。
【００２６】
切替ファブリックは、ブリッジの２つのポータルによって、互いに通信するために用いられる通信媒体である。本実施形態によれば、切替ファブリックは、無線周波数ワイヤレス・リンクである。この媒体を通じた双方向通信を実現するために、インターフェース１０２は、変調器／復調器１０５、適切なオシレータを有する周波数アップ／ダウン・コンバータ１０６、及び、アンテナ１０７を有する。当然、他の種類の切替ファブリック（同軸ケーブル、光ファイバ、赤外線通信、など）が用いられてもよい。所定のネットワークは、それぞれが異なる種類の切替ファブリックを実現するブリッジを含んでもよい。
【００２７】
ポータルは、更に、ルーティング・テーブル用に予約されたエリアと、非同期送信若しくは同時性送信のいずれかのために入ってくるデータ及び出ていくデータを格納するための４つのエリアと、を有するメモリ１０４を有する。
【００２８】
ポータルは、更に、ポータルの異なる要素を管理するマイクロプロセッサ１０３若しくは同等の装置を有する。このマイクロプロセッサは、更に、メモリ１０４に格納されたルーティング・テーブルを決定するためのプログラムを実行させる。
【００２９】
図２は、バス間通信を例示するのに用いられるシンプルなネットワークの図である。このネットワークは、ポータルＰ２０２及びＰ２０３を有するブリッジ（Ｐ２０２Ｐ２０３）によって接続された２つのバスＢ２００及びＢ２０１を有する。ポータルＰ２０２及びＰ２０３は、同じブリッジに属するため、それらは対ポータルと呼ばれる。ノードＮ２０１は、バスＢ２００に接続され、ノードＮ２０２は、バスＢ２０１に接続される。
【００３０】
バスＢ２００は、ノードＮ２０１に対して「ローカル」と呼ばれ、ノードＮ２０２に対する「リモート」バスである。
【００３１】
各バスは、バス識別子（ｂｕｓ＿ＩＤ）を通じて、ネットワーク内において固有に識別される。バスに接続された各ノードは、ノード識別子（ＧＵＩＤ）によって、そのバス上で固有に識別される。図２の２つのポータルは、「２」及び「３」という個別のＧＵＩＤを有する。便宜上、各ポータルを「ＰＸＹＹ」と呼ぶ。ここで、「Ｘ」は図を識別し、「ＹＹ」はポータルのＧＵＩＤ値である。異なる図の同じポータルは、常に同じ参照符号を保つ。特に、ルックアップ・テーブル決定工程の異なるステージにおける同じネットワークを示す図４乃至６に対して、これは当てはまる。
【００３２】
ネットワーク内のノードの固有アドレスは、バス識別子をノード識別子と組み合わせることによって得られる。一のノードから他のノードへメッセージが送信されると、この送信は、そのメッセージのヘッダにおいて、宛先ノードの固有の宛先アドレスを指定する。
【００３３】
第二のバスと比較した第一のバスの深さは、メッセージが第一のバスから第二のバスへ行くのに通過しなければならないブリッジの最小数として定義される。したがって、バスＢ２０１に対するバスＢ２００の深さは１である。
【００３４】
各バス上において、このバスに接続されたポータルのうちの１つがアルファ・ポータルに選ばれる。このアルファ・ポータルは、あるバスに関連したそのバス上における管理義務を有する。アルファ・ポータルの中で、プライム・ポータルが選ばれる。このプライム・ポータルは、あるネットワークに関連した管理義務を実行する。本実施形態のために、プライム・ポータルは、ノードがネットワークに接続されているか、又は、ネットワークから外されているか、をチェックする。このような場合、ネットワークは再初期化される。プライム・ポータルは、ネットワーク再初期化について伝達するために、ブロードキャスト・メッセージを全ノード及び特にポータルへ送信する。このメッセージを受信すると、各ポータルは、以下に述べるように、その新しいルーティング・テーブルを決定する。
【００３５】
プライム・ポータル決定方法は本発明の範囲を超えるが、それは、例えば、異なるアルファ・ポータルの６４ビットＥＵＩ（Ｅｘｔｅｎｄｅｄ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ；拡張固有識別子）を比較することによって決定することができる。例えば、最大の逆の序列のＥＵＩを有するアルファ・ポータルがプライム・ポータルとして選ばれる。
【００３６】
ポータルに対し、ルーティング情報は、宛先バス識別子を含むメッセージがバス上のポータルで受信された際にその対ポータルへ該メッセージを転送するべきか否かをポータルが判断できるようにする情報を含む。
【００３７】
このルーティング・テーブルの決定は、反復して行われる。ルーティング・テーブル確立処理の第一工程中に、ポータルは、該ポータルのバスと比較して深さ１のバスへのルーティング情報を決定する。第二工程中に、ポータルは、深さ２のバスへのルーティング情報を決定する。以下同様。
【００３８】
この処理は、以下のように要約することができる。
【００３９】
（ａ）  工程１
第一工程中、各ポータルは、そのノード識別子及びローカルバス識別子を、その対ポータルへ送信する。各対ポータルは、そのローカルバス上のこれら２つの識別子を、そのローカルバス上の他のすべてのポータルとこの情報を共有するために、ブロードキャストする。各ポータルは、そのバス上で、ローカルバス上のすべてのポータルの対ポータルから、ノード及びバス識別子のペアを受信する。各ポータルは、受信された情報を、自身の対ポータルからの識別子ペアと共に、格納する。上記ブロードキャストが一旦完了すると、各ポータルは、そのローカルバスと比較して深さ１のすべてのバスの識別子を、該ローカルバスに接続されたこれらバス及びブリッジの一部に接続されたポータルのＧＵＩＤと共に知る。各ポータルは、ローカルバスに接続されたポータルのＧＵＩＤ識別子も知る。なぜなら、ローカルバスのポータルによって送信されたブロードキャスト・メッセージは、メッセージ発信元アドレス、すなわちポータルＧＵＩＤ値を含むからである。
【００４０】
各ポータルは、次いで、所定のリモートバスが格納された情報内に複数回現れるか否かを判断する。複数回現れる場合、これは、このリモートバスへの冗長パスが存在することを意味する。この冗長性は、リモートバスへと導くブリッジの中から１つを選択することによって、取り除かれる。メッセージがローカルバスからリモートバスへ転送されるべき場合、上記選択されたブリッジのみが用いられる。すなわち、選択されたブリッジのポータルのみがそのメッセージを対ポータルへ転送する。このように、選択されたブリッジに対して冗長となる他のすべてのブリッジは、この特定のパスに対して「非稼動状態」とされる。
【００４１】
本実施形態によれば、選択されたブリッジは、最も高いＧＵＩＤ識別子を有するポータルを所有するブリッジである。ローカルバスの他のすべてのポータルは、これらポータルが一旦それら若しくはそれらの対ポータルが選択されたブリッジの一部でないと判断すると、そのパス用のリモートバスへのメッセージ送信ができないように自身を非稼動状態にする。
【００４２】
図３は、３つの冗長ブリッジ（Ｐ３０３Ｐ３０２）、（Ｐ３０１Ｐ３０５）、及び（Ｐ３０４Ｐ３０６）を通じて接続された２つのバスＢ３００及びＢ３０１を有するネットワークの図である。上記定義された基準によれば、バスＢ３００からバスＢ３０１へ及びその逆にメッセージを転送するのに選択されたブリッジは、ブリッジ（Ｐ３０４Ｐ３０６）である。なぜなら、「６」は最大のＧＵＩＤだからである。
【００４３】
本実施形態の変形例によれば、選択されたブリッジは、最大のデータ送信用帯域幅を有するブリッジである。ポータルがこの基準に基づいて判断することができるようにするために、ブリッジの帯域幅に関する情報が例えばプログラムされたリストなどの他の手段を通じてポータルに既に知られている場合を除いて、上記情報はバス及びポータル識別子と共にブロードキャストされなければならない。好ましい実施形態においては、冗長なブリッジに属し、最大帯域幅を収容できないローカルバスのすべてのポータルは、自身をリモートバスへのメッセージ送信ができないようにする。冗長なブリッジは同じ帯域幅を有するべきであるから、好ましい実施形態と共に説明された基準が固有のブリッジを選択するために用いられる。
【００４４】
多くの冗長なブリッジの中から唯一のブリッジを選択するのに他の選択基準が用いられてもよいことは明らかである。
【００４５】
工程１の終わりにおいて、各ポータルは、そのローカルバス上を巡回し、その対ポータルへ接続された深さ１のバスへアドレスされたメッセージを転送するべきか否かを知っている。このレベルにおいて、ローカルバスに対して深さ１のバスへの冗長ブリッジは非稼動状態とされている。
【００４６】
各ポータルによって保持される情報は以下の形式を有する。
【００４７】
【表１】
0004375518.tif 000002
このテーブルは、ルーティング・テーブルであり、本処理の後続の工程のそれぞれにおいて、追加情報が加えられる。この表の簡易版は後に説明される。
【００４８】
前述のように、このテーブルに格納されたローカル・ポータルＧＵＩＤは、ローカル・ポータルによって送信されたメッセージから得られる。
【００４９】
（ｂ）  工程２
工程１の終わりに続いて、非稼動状態とされていないブリッジの各ポータルは、そのルーティング・テーブルの内容をその対ポータルへ送信する。この対ポータルは、そのローカルバス上の該テーブルの内容をブロードキャストする。すべてのポータルがこの送信されたテーブルをそれらのローカルバス上で受信・格納し、これらテーブルの内容にそれら自身のルーティング・テーブルを加える。それらは、それらの個別の対ポータルから受信されたテーブルをも加える。工程１と同様に、所定のバスに接続された各ポータルは、このステージにおいて、同じ情報を有する。
【００５０】
各ローカル・ポータルは、前の工程中に送信された情報、すなわちそのローカル・ポータル自身のテーブルにいまだに存在していない情報に対して冗長でないその対となるテーブルのテーブルの一部のみをそのローカルバス上で送信することが好ましい。ローカル・ポータルは、単に、その対ポータルから受信したテーブルと自身のテーブルとを比較し、新しい情報が格納され、送信されるべきか否かを判断する。
【００５１】
テーブルが一旦連結されると、各ポータルは、工程１において等価のパスの中から単一のパスを選択するのに用いたのと同様の基準を適用して、ローカルバスに対して深さ２のバスへの冗長パスをチェックする。本実施形態によれば、選択されるパスは、最も高いＧＵＩＤ識別子を有するポータルを含むパスである。本実施形態については、パスの先端及び終端におけるブリッジのポータルのＧＵＩＤ識別子のみが考慮される。
【００５２】
当然、すべてのポータルが冗長なパスの中から同じ単一のパスをあいまいに選択する限り、別の基準が選択されてもよい。
【００５３】
単一のブリッジを有するパスによって既に接続された（すなわち、より短いパスで既に接続された）バス間に２つのブリッジを有するパスは、捨てられる。
【００５４】
工程２の終わりにおいて、各ポータルは、そのローカルバス上を巡回し、該ローカルバスに対して深さ２のバスへアドレスされたメッセージを転送すべきか否かを知っている。
【００５５】
（ｃ）  工程ｎ
工程ｎは、工程２の処理を「２」を「ｎ」によって置き換えることで繰り返すことから成る。工程２において、２つのバス間のより短いパスが、同じ２つのバス間のより長いパスより好まれる。
【００５６】
好ましい実施形態によれば、本処理は、ポータルが、その対ポータル及びそのバスに対してローカルなポータルから、自身のルーティング・テーブルの内容と完全に重複する情報を受信したとき、そのポータルによって停止させられる。
【００５７】
ここで、本反復処理の例示的ネットワークへの適用について説明する。以下の説明は、上記一般的規則に対して追加的な詳細及び規則を含む。この例示的ネットワークは、図４によって示され、全部で５つのバスＢ４００〜Ｂ４０４と、ＧＵＩＤ値０〜１３を有するポータルを有する７つのブリッジとを有する。
【００５８】
このネットワークの構成は以下の通りである。
【００５９】
【表２】
0004375518.tif 000003
ペア（ＰＸＹＹ，ＰＸＹＹ）で示されるブロックの第一のポータルは、テーブルの１行目に示されているバスに接続され、ブロックの第二のポータルは、テーブルの１列目に示されているバスに接続される。
【００６０】
図４乃至６において、縦矢印とその近くのバス識別子及びＧＵＩＤ値とは、ポータルからその対ポータルへ送信された情報が対ポータルのローカルバス上へブロードキャストされるべきであることを示している。
【００６１】
ルーティング・テーブル構築処理をバスＢ４００及びＢ４０１について詳述する。このネットワークにおける最大深さは３であるから、このネットワークの任意のポータルによって実行される最大繰り返し数も同じく３である。
【００６２】
（ａ）  工程１（バスＢ４００）
ポータルＰ４０９は、その対ポータルＰ４０８から
・対ポータルＧＵＩＤ：８
・対ポータル・バス番号：Ｂ４０１
という情報を受信する。
【００６３】
ポータルＰ４１１は、その対ポータルＰ４１０から、
・対ポータルＧＵＩＤ：１０
・対ポータル・バス番号：Ｂ４０１
という情報を受信する。
【００６４】
ポータルＰ４１３は、その対ポータルＰ４１２から、
・対ポータルＧＵＩＤ：１２
・対ポータル・バス番号：Ｂ４０４
という情報を受信する。
【００６５】
上記ポータルのそれぞれは、上記情報をバスＢ４００上へブロードキャストすると共に、他のポータルのブロードキャストを聞く。次いで、上記ポータルのそれぞれは、以下のテーブルを構築する。
【００６６】
【表３】
0004375518.tif 000004
次いで、各ポータルは、冗長なパスをチェックする。バスＢ４０１はテーブルに２度登場するため、各ポータルは、バスＢ４０１への２つの現存する冗長パスの中から用いられるべきパスを選択しなければならない。ポータルＰ４０８、Ｐ４０９、Ｐ４１０、及びＰ４１１のＧＵＩＤ値の中で最大のＧＵＩＤ値は１１であるから、テーブルの２列目によって与えられるパスが選択される。残りのパスは表３から削除され、工程１終了時点でルーティング・テーブルが得られる。メッセージをルーティングするために、この表３を以下のように簡素することができる。なぜなら、この目的のためには、宛先のバスと転送するポータルだけがわかればよいからである。
【００６７】
【表４】
0004375518.tif 000005
このルーティング・テーブルは以下のように解釈される。
・バスＢ４００からバスＢ４０１へのパケットは、ポータル１１によって転送される。
・バスＢ４００からバスＢ４０４へのパケットは、ポータル１３によって転送される。
【００６８】
当然、ルーティング・テーブルは、表４に示された形式以外の他の形式で提示若しくは記録されてもよい。
【００６９】
反復処理を追跡するために、表３の情報はメモリに保持される。
【００７０】
（ｂ）  工程１（バスＢ４０１）
ポータルＰ４０８は、その対ポータルから以下の情報を受信する。
・対ポータルＧＵＩＤ：９
・対ポータル・バス番号：Ｂ４００
ポータルＰ４１０は、その対ポータルから、
・対ポータルＧＵＩＤ：１１
・対ポータル・バス番号：Ｂ４００
という情報を受信する。
【００７１】
ポータルＰ４０３は、その対ポータルから、
・対ポータルＧＵＩＤ：２
・対ポータル・バス番号：Ｂ４０２
という情報を受信する。
【００７２】
上記ポータルのそれぞれは、上記情報をバスＢ４０１上へブロードキャストすると共に、他のポータルのブロードキャストを聞く。次いで、上記ポータルのそれぞれは、以下のテーブルを構築する。
【００７３】
【表５】
0004375518.tif 000006
前述の規則によれば、バスＢ４０１上の各ポータルは、以下の簡素化されたルーティング・テーブルを決定する。
【００７４】
【表６】
0004375518.tif 000007
このテーブルは以下のように解釈される。
・バスＢ４０１からバスＢ４００へのパケットは、ポータルＰ４１０によって転送される。
・バスＢ４０１からバスＢ４０２へのパケットは、ポータルＰ４０３によって転送される。
【００７５】
バスＢ４００及びＢ４０１間のバスは、前述と同じ基準を用いて選択され、結果として、同じパスが選択されることに注意。これは、所定のパスを用いた、バスＡからバスＢへのメッセージは、バスＢからバスＡへのメッセージと同じパスを用いること、及び、本処理工程においてポータルが非稼動状態とされた場合、その対ポータルも非稼動状態とされることを意味する。
【００７６】
図５は、ブリッジが工程１において非稼動状態とされた図４のネットワーク全体を示す。非稼動状態とされたブリッジはグレーで示す。工程１において非稼動状態とされたブリッジのポータルはルーティング情報を転送しないが、それらはそれらの個別のローカルバス上を巡回するルーティング情報を受信し続けてもよい。
【００７７】
（ｃ）  工程２（バスＢ４００）
工程１において非稼動状態とされたポータルＰ４０８と、ポータルＰ４１０及びＰ４１２のそれぞれとは、そのルーティング・テーブルをバスＢ４００上のその対ポータルへ転送する。図５は、各ポータルにどんな情報が送信されるのかを示している。図５に示すように、冗長でない情報だけが送信される。これが、ポータルＰ４００用の情報が示されていない理由であり、バスＢ４０３に対応する関連情報は、工程１において既に送信されている。
【００７８】
本実施形態によれば、バス上で送信されるデータ量を削減するために、各ポータルは、前の工程において既にその対ポータルから受信している情報を該対ポータルに送信しない（なぜなら、この情報は前の工程で既にブロードキャストされているからである）。情報は、前の工程において送信された情報と重複しない場合のみ、転送される。換言すれば、工程ｎにおいて、ポータルがそのローカルバス上の別のポータルから深さｎのバスに関する情報を一切受信しない場合、後続の工程においてその対ポータルに情報を転送しない。
【００７９】
本発明の有益的な変形例によれば、ポータルがその対ポータルへ送信する新しいデータを持っていない場合、本処理の本工程及び潜在的将来の工程において、対ポータルはこれ以上の情報を受信することはないことを該対ポータルへ通知する。該対ポータルのレベルにおいて、タイムアウト機構が実行されてもよい。
【００８０】
本発明の変形例によれば、各ポータルは、その簡素化されていないルーティング・テーブル全体をその対ポータルへ転送する。この場合、帯域幅が浪費されるが、各ポータルのレベルにおけるテーブル処理は簡素化されるかもしれない。
【００８１】
バスＢ４００上において、すべてのポータルが、工程１において受信した情報に加えて、以下の情報を有する。
【００８２】
【表７】
0004375518.tif 000008
バスＢ４００及びＢ４０２間には２つの冗長なパスがあり、１つはバスＢ４０１を通るパスであり、他方はバスＢ４０２を通るパスである。関連する４つのポータルの中で最大のＧＵＩＤは１３であるため、上記表の第二のパスが選択され、第一のパスが削除される。次いで、バスＢ４００上のポータルのそれぞれは、以下の情報へのアクセスを有する。
【００８３】
【表８】
0004375518.tif 000009
ここで、簡素化された表は、表８から容易に決定され得る。
【００８４】
【表９】
0004375518.tif 000010
（ｄ）  工程２（バスＢ４０１）
対ポータルＰ４１１及びＰ４０２によって送信されたルーティング・テーブルを受信した後、バスＢ４０１上のポータルＰ４０８、Ｐ４１０、及びＰ４０３は、深さ２のバス用の以下の情報を、工程１において受信した深さ１のバス用の情報へ加える。
【００８５】
【表１０】
0004375518.tif 000011
冗長なパス、この場合バスＢ４０４へのパス、が再び存在する。前と同じ規則を適用すると、表９に最初に登場したパス（リモート・ポータルのＧＵＩＤが１２に等しい）が選択され、下の行に登場したパスが削除される。工程１においてバスＢ４０１のポータルによって決定された情報へルーティング・テーブルを加えることによって、
【００８６】
【表１１】
0004375518.tif 000012
が得られる。
【００８７】
バスＢ４０１に対して、簡素化された表は、
【００８８】
【表１２】
0004375518.tif 000013
である。
【００８９】
このようにしてバスＢ４００及びＢ４０１上のポータルに対する工程２が終了する。
【００９０】
（ｅ）  工程３（バスＢ４００）
このステージにおいては、図６に示すように、深さ３のバス（すなわち、ポータル（Ｐ４１１，Ｐ４１０）、）Ｐ４１３，Ｐ４１２）、及び、（Ｐ４０１，Ｐ４００））に関する送信すべき情報であって冗長でないものを有するポータルは３つしかない。他の稼動状態の（すなわち、非稼動状態とされていない）ポータルは、工程２において、それらのローカルバス上の他のポータルから深さ２のバスの情報を受信していないため、工程３において何も情報を転送しない。
【００９１】
工程３の冒頭において、バスＢ４００の各ポータルによって受信された追加的情報は、以下の通りである。
【００９２】
【表１３】
0004375518.tif 000014
前述の選択規則を適用すると、バスＢ４０３への第二のパス（ＧＵＩＤ値１３）が選択され、第一のパスが削除される。
【００９３】
すると、バスＢ４００上の各ポータルは以下のテーブルを保持する。
【００９４】
【表１４】
0004375518.tif 000015
すると、簡素化されたルーティング・テーブルは、
【００９５】
【表１５】
0004375518.tif 000016
となる。
【００９６】
これがバスＢ４００用の最終的なテーブルである。このネットワークに、バスＢ４００に対して深さ４のバスは無い。
【００９７】
（ｆ）  工程３（バスＢ４０１）
このネットワークは、バスＢ４０１に対して深さ３のバスを一切含まない。バスＢ４０１のポータルは、それらの対ポータルから冗長な情報を一切受信しないため、工程２において確立されたテーブルがそれらの最終的なテーブルとなる。
【００９８】
この工程において、すべてのバスが、本ネットワークのすべての他のバスへのルートを確立している。
【００９９】
メッセージがバス上を巡回しているとき、そのバスについてローカルの各ポータルは、そのメッセージ・ヘッダに含まれている宛先バス識別子を判断し、ルーティング・テーブルをチェックして、そのメッセージを転送すべきか否か、又は、そのメッセージが別のポータルによって転送されたものか否か、を確認する。このように、ポータルが知る必要があるすべての情報は、リモートバス識別子のリストと、これらバスのそれぞれについて該ポータルが該リモートバスへのパスの一部となっているか否かを示すフラグと、である。
【図面の簡単な説明】
【図１】  ブリッジの２つのポータルのうちの１つの概略図を示す。
【図２】  １つのブリッジによって接続された２つのバスを有するネットワークの図を示す。
【図３】  ３つのブリッジによって接続された２つのバスを有するネットワークの図を示す。
【図４】  本発明の好ましい実施形態に係るルーティング・テーブル確立方法の第一工程中の例示的ネットワークの図を示す。
【図５】  本ルーティング・テーブル確立方法の第二順時における図４のネットワークの図を示す。
【図６】  本ルーティング・テーブル確立方法の第三順時における図４及び５のネットワークの図を示す。
【図１】
0004375518.tif 000017
【図２】
0004375518.tif 000018
【図３】
0004375518.tif 000019
【図４】
0004375518.tif 000020
【図５】
0004375518.tif 000021
【図６】
0004375518.tif 000022