明細書
ネットワークシステム、 ノード及びノード制御プログラム、 ネットワーク制御方 法 技術分野
本発明は、 ネットワークにおけるノードのダウンゃリンクの切断等の障害発生 時に通信を停止することなくサービス運用を続行できるようにしたネットワーク システムに関し、 特に、 ノードの冗長化により障害発生時に通信を続行可能にし たネットワークシステムに関する。 背景技術
まず、ポ一ト状態の管理を行うプロトコルの 1つである、 S p ann i n g T r e e P r o t o c o l (S TP) で計算されたフレームの転送路に関する情 報を用いて、 フレームが転送されるネットワーク (以下、 STP網という) にお いて、 フレームが転送される手順について、 一例を挙げて説明する。
例えば、 図 45のようなネットワークトポロジのネットワークにおいて、 ST Pによって図 45の太線の経路 (スパニングツリー) が計算されているとする。 このネットワークにおいて、 ノード 5配下の端末からノード 3配下の端末にフ レームを転送する場合は、 ノード 1を経由してフレームが転送される。
同様に、 ノード 2配下の端末にフレームを転送する場合も、 ノード 1を経由して 転送が行われる。
上述した S TP網において、 ノード 1に障害が発生した場合、 ノード 5は、 ノー ド 3、 ノード 2配下の端末に対するフレーム転送が一切行えなくなるという問題 がある。
このような不具合を解消する一手法として、 ノードを 2重化して、 一方のノー ドに障害が発生しても、 障害の発生していない他方のノ一ドを用いて、 フレーム の転送を続行するという方法がある。
S TP網に属さないノードを 2重化する従来のノード冗長化プロトコルとして、 V S R P (Virtual Switch Redundancy Protocol) (Foundry Switch and Router Installation and Basic Configuration Guide, Chapter 12 "Configuring Metro Features (http://www. foundrynet. com/services/documentat ion/
sribcg/Metro.html#61625) :文献 2)や、 ESRP (Extreme Standby Router
Protocol) (Extreme are 7.2.0 Software User Guide, Chapter 15, page 347- 376(http://www. extremenetworks. com/services/documentat ion/swuserguides. a sp) :文献 3) 等が知られている。
STP網に属さないノードを冗長化する従来のノード冗長化プロトコルが適用 されたネットワークシステムにおいて、 ノードのダウン又はリンクの切断といつ た障害が生じた場合の一般的な動作について、図 39を参照して以下に説明する。 図 39に示す従来のノード冗長化プロトコルが適用'されたネットヮ一クシステ ムでは、 マスタノ一ド 2 10とバックアップノード 220とが冗長化された一対 のノードとして存在する。 マスタノード 210とバックアップノード 220は、 それぞれ直接接続 (結線) されたノード (以下、 Awa r eノードという) 23
0、 240を経由して、 接続された状態となっている。
このようなネットワークシステムにおいて、 マスタノード 210は、 ノード冗 長化プロトコルのマスタモードと呼ばれる動作状態にあって、 通常フレームの送 受信を行うと共に、 定期的に Ke e p a 1 i v eフレーム (He l l oメッセ一 ジ) をノード冗長化プロトコルのメンバポート P 1、 P 2から送信する。
この従来技術におけるノード冗長化プロトコルのメンバポ一トとは、 ノード冗 長化プロトコルが有効であるポー卜、 即ち、 そのポー卜状態がノード冗長化プロ トコルにより管理されるポートを意味する。 ポート状態としては、 フォヮ一ディ ング状態とブロッキング状態の 2つの状態が定義されており、 フォワーディング 状態とは、 宛先情報を参照して受信フレームを転送する状態であり、 ブロッキン グ状態とは、 受信フレームを転送せずに廃棄する状態である。
ただし、 受信フレームのうち、 ノード冗長化プロトコルの制御フレームである He 1 1 oメッセ一ジ及び F 1 u s hメッセージ、 又は、 その他のプロトコルで 用いられる制御フレームについては、 入力ポートのポート状態に関わらず、 ノ一
ド内の制御フレームを処理するモジュールに送られる。
従って、 上述の状態で、 マスタノード 210におけるノード冗長化プロトコル のメンバポート P l、 P 2のポート状態は、 フォワーディング状態に設定されて いる。
Awa r eノ一ド 230、 240は、 それぞれマス夕ノード 210側のポート
? 1で受信した:^[6 1 1 oメッセージをバックアップノード 220側のポート P 2から送信する。
また、 ノ ックアップノード 220は、 ノード冗長化プロトコルのバックアップ モードと呼ばれる動作状態にあって、 メンバポート P 1、 P 2で受信されるフレ —ムのうち、 He l l oメッセ一ジまたは F 1 u s hメッセージを監視し、 それ 以外のフレームについては廃棄する。
従って、 この状態で、 バックアップノード 220におけるノード冗長化プロト コルのメンバポート P l、 P 2のポ一ト状態は、 ブロッキング状態に設定されて いる。
上述の状態において、 Awa r eノード 230、 240のそれぞれの配下にあ る端末は、 マス夕モードにあるマスタノード 210を経由して、 通信を行う。 ここで、 図 40に示すように、 マスタノード 210がダウンして、 マス夕ノー ド 2 10から上記 He 1 1 oメッセージが送信されない事態となった場合につい て説明する。 バックアップノード 220は、 所定回数連続して He 1 l oメッセ ージを受信できない場合、 メンバポ一ト P l、 P 2から He l l oメッセージを 定期的に送信する処理を開始すると共に、 引き続きマス夕ノード 210から送信 される He 1 1 0メッセージが受信されないか監視する。
バックアップノード 220は、 He l 1 oメッセージの送信を開始した後、 所 定の時間が経過しても、 マスタノード 210から送信される He 1 1 oメッセ一 ジを受信できなかった場合、 マスタノ一ド 2 1 0がダウンしたと判断し、 マス夕 モードに切り替わる。
マスタモードに切り替わったバックアップノード 220は、 ブロッキング状態 となっていたメンバポート P 1、 P 2をフォワーディング状態にすると共に、 メ ンパポート P l、 P 2から自らがマスタモードに切り替わつたことを示す F 1 u
s hメッセージを送信する。 その後、 バックアップノード 220は、 引き続きメ ンバポート P l、 P 2から定期的に He 1 1 oメッセージを送信する。
Aw a r eノード 230、 240は、上記 F 1 u s hメッセージを受信すると、 フレームに示された宛先とそのフレームの出力ポートとの対応を記憶している F DB (フォワーディングデータベース)の内容を書き換える。 具体的には、 F l u s hメッセージを受信する前に He 1 1 oメッセージを受信していたポートが記 載されている FDBのェントリの出力ポート名を、 F 1 u s hメッセージを受信 したポートに書き換える。 例えば、 図 40のネットワークにおける Awa r eノ —ド 230では、 以下のような FDBの書き換えが行われる。 ノード 220から の F 1 u s hメッセージを受信する前に He 1 1 oメッセージを受信していたポ ートは P 1であるので、 FDB中、 出力ポート名として P 1が記載されているェ ントリについて、 出力ポート名を F 1 u s hメッセ一'ジの受信ポート P 2に書き 換える。
上述したように、 Aw a r eノード 230、 240のそれぞれの配下にある端 末は、 マスタモードに切り替わったバックアップノード 220を経由して通信を 続行することができる。
また、 上述したマスタノードのダウンとは異なる障害として、 リンクの切断が 考えられる。 この場合の動作について図 41を用いて説明する。 図 41に示すよ うに、 マスタノード 210と Awa r eノ一ド 230間でリンクの切断が発生し たような場合、 マスタノード 210はリンク切断を検知し、 自らのノードのブラ ィオリティを下げるように動作する。 そして、 この下げられたプライオリティ情 報を格納した He 1 1 oメッセージを送信する。 一方、 この He 1 1 oメッセ一 ジを受信したバックアップノード 220は、 マスタノード 210のプライオリテ ィが自ノード (バックアップノード 220) より低くなつたことを知ることによ つて、 自ノードのプライオリティを格納した He 1 1 oメッセージをメンバポー ト P l、 P 2から定期的に送信する処理を開始すると共に、 引き続きマスタノ一 ド 2 10から送信される He 1 1 oメッセージを監視する。
バックアップノード 220から送信される He 1 1 oメッセージを受信したマ スタノ一ド 210は、バックアップノード 220のプライオリティが自ノード(マ
ス夕ノード 2 10) のプライオリティより高くなつたこと,を知ることによって、 バックアップモードに切り替わり、 メンバポート P l、 P 2のポート状態をフォ ヮーデイング状態からブロッキング状態に変更すると共に、 He 1 1 oメッセ一 ジを定期的に送信する処理を停止する。 その後、 マスタノ一ド 210は、 バック アップノード 220から定期的に送信される He 1 1 oメッセージを監視する。 マスタノード 210が He 1 1 oメッセージの送信を停止し、 バックアツプノ ード 220がマスタノード 210から送信される He 1 1 oメッセージを所定の 時間受信できなくなった場合、 バックアップノード 220はマスタモードに切り 替わる。
マスタモードに切り替わったバックアップノード 220は、メンバポート P 1、 P 2をフォワーディング状態にすると共に、 メンバポ一ト P l、 P 2から F l u s hメッセージを送信する。 その後、 バックアップノード 220は、 引き続き定 期的に He 1 1 oメッセージをメンバポート P 1、 P 2から送信する。
このとき、 F 1 u s hメッセージ及び He 1 l oメッセ一ジは、 バックアップ ノード 220のプライオリティ情報が格納されて、 送信される。
F 1 u s hメッセ一ジを受信した Aw a r eノード 230、 240の動作は上 述と同様である。 即ち、 FDBのエントリのうち、 出力ポート名がバックアップ ノード 220の切り替え前に He 1 1 oメッセ一ジを受信していたポートである エントリの出力ポート名を、 F 1 u s hメッセージを受信したポートに書き換え る。
以上により、 Aw a r eノ一ド 230、 240のそれぞれの配下にある端末は、 マスタモードに切り替わったバックアップノード 220を経由して通信を続行す ることができる。
上述したように、 従来のノード冗長化プロトコルを用いてノードを冗長化する ことにより、 ノードのダウンやリンクの切断等の障害が発生しても通信を停止す ることなくサービス運用を続行できる。
しかしながら、 例えば STPのように、 ポートのポート状態を管理する他のプ ロトコル (以下、 他のプロトコルと記述する) が適用されたネットワーク内のノ ードに対して、 従来のノード冗長化プロトコルを適用した場合、 フレームを転送
できなくなるという問題がある。
例えば、 図 4 2に S T P網のエッジ部分に従来のノード冗長化プロトコルを適 用したネットワークを示す。 図 4 2では、 マスタノ一ド 2 1 0とバックアツプノ ード 2 2 0の双方において、 ノード冗長化プロトコルのメンバポートが P 1〜P 4となっている。 一方、 S T P網側に着目した場合、 マスタノード 2 1 0及びバ ックアップノード 2 2 0の S T Pのメンバポートは、 P 3、 P 4であるように設 定されている。 S T Pのメンバポートとは、 S T Pが有効であるポート、 即ち、 そのポート状態が S T Pにより管理されるポートを意味する。 このような設定の 場合、 ポート P 3、 P 4のポート状態の管理に関して、 S T Pとノード冗長化プ ロトコルとの間で競合が発生し、 後述するように、 フレームを転送することがで きなくなるという問題がある。
また、 上記のような競合を回避するために、 図 4 2において、 マスタノ一ド 2 1 0、 バックアップノード 2 2 0それぞれのポート P 1、 P 2をノード冗長化プ ロトコルのメンバポートと設定し、 それぞれのメンバポート P 3、 ? 4を3丁? のメンバポートと設定した場合には、 S T Pのメンバポート P 3、 P 4に接続さ れるノード 2 5 0及び 2 6 0には、 マス夕モードとバックアップモードの切り替 え時に、 上述した F 1 u s hメッセージが送信されないこととなるので、 ノード 2 5 0及び 2 6 0の F D Bは書き換えられない。 よって、 この場合、 ノード 2 5 0及び 2 6 0の F D Bがェ一ジァゥトするまでの間、 ノード 2 5 0及び 2 6 0は 通信 (フレームの転送) ができない状態となる。
以下に、 マス夕ノード 2 1 0及びバックアップノード 2 2 0のポート P 3、 P 4をノード冗長化プロトコル及び S T Pの両プロトコルのメンバポートに設定す る場合において、 ポート状態の管理が競合することによって、 通信が行えなくな る問題について説明する。
図 4 3に示すような構成のネットワークにおいては、 ノード 2 6 0は、 バック アップノード 2 2 0のメンバポート P 4及び P 3を経由して他のノードと通信を 行う。 図 4 4に、 バックアップノード 2 2 0における S T Pのメンバポートのポ —ト状態を管理するポート状態管理テーブル 2 7 0の設定内容と、 ノード冗長化 プロトコルのメンバポートのポート状態を管理するポート状態管理テーブル 2 8
0の設定内容の例を示す。
バックアップノード 220のポート P 1、 P 2については、 S TPによるポ一 ト状態の管理は無効となっており、 ノード冗長化プロトコルによる管理では、 ポ —卜状態はブロッキング状態となっている。
また、 ポ一ト P 3、 P 4については、 S TPによる管理では、 ポート状態は共に フォワーディング状態であるが、 ノード冗長化プロトコルによる管理では、 ポー ト状態が共にブロッキング状態となっており、 S T Pとノ一ド冗長化プロトコル において、 互いに異なるポ一ト状態が設定されている。
バックアップノード 220のポート P 3と P 4の S TPにおけるポート状態は フォワーディング状態なので、 ノード 260はこれらのポートを経由して他のノ
—ドと通信することが可能となる。
これに対して、 ポート P 3と P 4のノード冗長化プロトコルにおけるポート状 態はブロッキング状態であるため、 ノード 260から他のノードへの通信及び他 のノードからのノード 260への通信は、 それぞれバックアップノード 220の メンバポート P 4及び P 3で遮断されることになる。
即ち、 S TPにおけるポー卜状態がフォヮ一ディング状態であったとしても、 ノード冗長化プロトコルにおけるポート状態がブロッキング状態であるために、
S TPの B PDU (B r i d g e P r o t o c o l D a t a Un i t) フ レーム又はノード冗長化プロトコルの He 1 1 oメッセ一ジ及び F 1 u s hメッ セージのような制御フレーム以外の通常のデ一タフレームは破棄されてしまう。 従って、 ノード 260は、 STPとノード冗長化プロトコルにおけるポート状態 の管理が競合することが原因で他のノードとの通信ができない状態となる。 本発明の第 1の目的は、 上述のようなノード冗長化プロトコルによるネットヮ ークと他のプロトコルによるネットワークとを共存させることを可能としたネッ トワークシステム、 ノード及びノード制御プログラム、 ネットワーク制御方法を 提供することにある。
本発明の第 2の目的は、 ノード冗長化プロトコルによるネットワークと他のプ ロトコルによるネットワークとを共存させた場合に、 マスタモードとバックアツ プモードの切り替え時に、 他のプロトコルによるネットワーク側のノードの FD
Bがエージァゥトするまで通信できないという問題を解決した、 ネットワークシ ステム、 ノード及びノード制御プログラム、 ネットワーク制御方法を提供するこ とにある。
本発明の第 3の目的は、 S T P網間を相互に接続したネットワークシステムで あって、 信頼性向上を可能としたシステムを実現することができるネットワーク システム、 ノード及びノード制御プログラム、 ネットワーク制御方法を提供する ことにある。
本発明の第 4の目的は、 S T P網のルートノードのノード冗長化が実現 れ、 特に障害回復に時間を要するルートノ一ドの障害の発生を効果的に抑制すること を可能としたネットヮ一クシステム、 ノード及びノ一ド制御プログラム、 ネット ワーク制御方法を提供することにある。 発明の開示
上記目的を達成するため本発明のネットワークシステムでは、 ノード冗長化プ 口トコルによるネットワークと他のプロトコルによるネットワーク網とを共存さ せるネットワークシステムにおいて、 他のプロトコルによるネットワーク網を構 成するマス夕ノードとバックァップノ一ドに属し、 ノ一ド冗長化プロトコルの管 理下にあるメンバポートであり、 かつ他のプロトコルによるネットワーク網側の 管理下にあるポートの状態を、 ノ一ド冗長化プロトコルによる管理を行わず、 他 のプロトコルのみによる管理を行うように構成し、 また、 マスタノード又はバッ クアップノードがマスタモードへの切り替え時に、 ノード冗長化プロ卜コルの管 理下にあるメンバポートに接続される全てのノードに対してフォヮ一ディングデ —夕ベースを書き換えるための制御フレームを送信するようにした。
本発明によれば、 他のプロトコルの管理下にあるポートの状態を、 ノード冗長 化プロトコルの管理下から外すことで、 ノード冗長化プロトコルと他のプロトコ ルによるポート管理状態が競合することを回避すると共に、 マス夕ノードとバッ クアップノードのノード冗長化プロトコルにおける動作状態が切り替わる時に、 ノード冗長化プロトコルの管理下にあるメンバポートに接続される全てのノード に対して F 1 u s hメッセージを送信することで、 他のプロトコルの管理下にあ
るメンバポ一トに接続されるノードの F D Bのフラッシュを実行することを可能 とした。 図面の簡単な説明
図 1は、 本発明を適用した第 1の実施例によるネットワークシステムの構成を 示す図である。
図 2は、 第 1の実施例によるマス夕ノードとバックアップノードの構成を示す ブロック図である。
図 3は、 第 1の実施例によるスタノードとバックアップノードに直接接続され る S T P網外のノードの構成を示すブロック図である。
図 4は、 第 1の実施例によるマス夕ノードとバックアップノードに直接接続さ れる S T P網内のノードの構成を示す。 ―
図 5は、 図 1のネットワークシステムにおける、 マス夕ノードのノード冗長化 プロトコルメンバポート管理テーブルと S T Pメンバポ一ト管理テーブルの設定 内容を示す図である。
図 6は、 図 1のネットワークシステムにおける、 バックアップノードのノード 冗長化プロトコルメンバポ一ト管理テーブルと S T Pメンバポート管理テーブル の設定内容を示す図である。
図 7は、 図 1のネットワークシステムにおける、 マスタノードのポート状態管 理テ一ブルの内容例を示す図である。
図 8は、 図 1のネットワークシステムにおける、 バックアップノードのポート 状態管理テーブルの内容例を示す図である。
図 9は、 図 1のネットワークシステムにおける、 S T P網に属さない Aw a r eノードのノード冗長化プロトコルメンバポート管理テーブルの設定内容例を示 す図である。
図 1 0は、 図 1のネットワークシステムにおける、 S T P網に属さない Aw a r eノードのノード冗長化プロトコルメンバポート管理テーブルの設定内容例を 示す図である。
図 1 1は、 図 1のネットワークシステムにおける、 S T P網に属する Aw a r
eノードの S TPメンバポート管理テーブルの設定内容例を示す図である。
図 12は、 図 1のネットワークシステムにおける、 STP網に属する Awa r eノ一ドの STPメンバポ一卜管理テーブルの設定内容例を示す図である。
図 13は、 図 1のネットワークシステムにおける、 バックアップノードがマス 夕モードに切り替わった直後の状態を示す図である。
図 14は、 図 1のネットワークシステムにおける、 F l u s hメッセージ送信 による FDBの書き換え後の状態を示す図である。
図 1 5は、 図 1のネットワークシステムにおいて、 マスタノードがフレームを 受信した場合の動作を説明するフローチャートである。
図 16は、 図 1のネットワークシステムにおいて、 マス夕ノードがフレームを 受信した場合の動作を説明するフローチャートである。
図 17は、 図 1のネットワークシステムにおいて、 スタノ一ドがフレームを 受信した場合の動作を説明するフローチャートである。
図 18は、 図 1のネットワークシステムにおいて、 S TP網に属さない Aw a r eノードがフレームを受信した場合の動作を説明するフローチヤ一トである。 図 19は、 第 1の実施例におけるネットワークシステムの動作について説明す るシーケンスチャートである。
図 20は、本発明の第 2の実施例によるネットワークシステムの構成であって、 複数の VL ANが設定されたネットワークシステムにノード冗長化プロトコルを 適用した場合の構成を示す図である。
図 2 1は、 第 2の実施例における、 マスタノ一ドとバックアップノードの各 V L A Nにおける動作状態を示す図である。
図 22は、 第 2の実施例におけるマスタノードとバックアップノードのノード 冗長化プロトコルメンバポート管理テーブルの各 V L ANの設定内容を示す図で ある。
図 23は、 第 2の実施例におけるマスタノードとバックアップノードのノード 冗長化プロ卜コルメンバポ一ト管理テーブルの各 V L ANの設定内容を示す図で ある。
図 24は、 第 2の実施例におけるマス夕ノードとバックアップノードのポート
状態管理テ一ブルに設定されている、 各 VLANにおける、 ノード冗長化プロト コルのメンバポートのポート状態を示す図である。
図 25は、 STP網に属する Awa r eノードのノード冗長化プロトコルメン バポート管理テーブルに設定されている、 各 VL ANにおける、 ノード冗長化プ ロトコルのメンバポートのポート状態を示す図である。
図 26は、 STP網に属さない Awa r eノードのノード冗長化プロトコルメ ンバポート管理テ一ブルに設定されている、 各 VL ANにおける、 ノード冗長化 プロトコルのメンバポートのポート状態を示す図である。
図 27は、 S TP網に属さない Aw a r eノードのノード冗長化プロトコルメ ンバポート管理テ一ブルに設定されている、 各 V LANにおける、 ノード冗長化 プロトコルのメンバポートのポート状態を示す図である。
図 28は、 本発明の第 3の実施例によるマスタノ一'ドとバックアップノードの 構成を示すブロック図である。
図 29は、 第 3の実施例によるマスタノ一ドとバックアツプノ一ドの他の構成 を示すブロック図である。
図 30は、 第 3の実施例における、 バックアップノードがマスタモードに切り 替わった直後の状態を示す図である。
図 31は、 第 3の実施例における、 To p o l o gy Ch ang eフラグを 立てた BP DUフレーム送信による FDBの書き換え後の状態を示す図である。 図 32は、 第 4の実施例による、 2つの STP網間の相互接続部分に、 マスタ ノードとバックアツプノ一ドを設けた構成を示す図である。
図 33は、 第 5の実施例による、 マスタノードとバックアップノードが S TP 網のル一トノードとして機能するネットワークシステムを示す図である。
図 34は、 第 5の実施例において、 マスタノードのダウンにより、 バックアツ プノードがマスタモードに切り替わった直後の状態を示す図である。
図 35は、 第 5の実施例において、 STP網のエッジ以外の部分に位置するル 一トノ一ドを冗長化したネッ卜ワークシステムを示す図である。
図 36は、第 6の実施例による、ネットワークシステムの構成を示す図である。 図 37は、 図 36のネットワークシステムにおいて、 2つのリンクの切断によ
り、 マスタノードとバックアップノードの全てがマスタノードとなった状態を示 す図である。
図 3 8は、 第 6の実施例において、 マス夕ノードとバックアップノードの全て がマスタモードとなった場合の問題を回避するための、 ルートパスコストの値の 設定例を示す図である。
図 3 9は、 従来のノード冗長化プロトコルが適用されたネットワークシステム の例を示す図である。
図 4 0は、 図 3 9のネットワークシステムにおいて、 マスタノードのダウンに より、 バックアツプノ一ドがマスタモードに切り替わる際の動作を説明する図で ある。
図 4 1は、図 3 9のネットヮ一クシステムにおいて、 リンク切断の発生により、 バックアップノードがマス夕モードに切り替わる際の ¾作を説明する図である。 図 4 2は、 従来のノ一ド冗長化プ fclトコルと S T Pを共存させたネットワーク システムにおける、 メンバポートの競合を説明する図である。
図 4 3は、 従来のノード冗長化プロトコルと S T Pを共存させたネットワーク システムにおけるメンバポートの競合による不具合を説明する図である。
図 4 4は、 図 4 3のネッ卜ワークシステムのバックアップノードにおける S T Pのポー卜状態管理テーブルの設定内容と、 ノード冗長化プロ卜コルのポ一ト状 態管理テーブルの設定内容の例を示す図である。
図 4 5は、 従来の S T P網によるネットワークの例を示す図である。
図 4 6は、 文献 1に提案される S T P網を説明する、 スバニングツリー構成の 第 1の例を示す図である。
図 4 7は、 文献 1に提案される S T P網を説明する、 スパニングッリ一構成の 第 2の例を示す図である。
図 4 8は、 文献 1に提案される S T P網を説明する、 スパニングツリー構成の 第 3の例を示す図である。
図 4 9は、 文献 1に提案される S T P網を説明する、 スバニングツリー構成の 第 4の例を示す図である。
図 5 0は、 文献 1に提案される S T P網を説明する、 スパニングツリー構成の
第 5の例を示す図である。
図 5 1は、 文献 1に提案される S T P網を説明する、 スバニングツリー構成の 第 6の例を示す図である。 発明を実施するための最良の形態
以下、 本発明の好適な実施例について図面を参照して詳細に説明する。
(第 1の実施例)
第 1の実施例において、 S T P網を構成するノードを冗長化する方法について 詳細に説明する。 '
図 1は、 本発明を適用したネットヮ一クシステムの構成を示す図である。 マスタノード 1 0及びバックアップノード 2 0のポ一ト P 3、 P 4には S T P 網に属するノ一ド 5 0、 6 0が接続され、 マスタノ一ド 1 0及びバックアツプノ
—ド 2 0のポート P l、 P 2には S T P網に属さないノード 3 0、 4 0がそれぞ れ接続されている。
また、 S T P網に属するノ一ド 5 0、 6 0には、 ノード 7 0、 8 0がそれぞれ 接続されており、 ノード 7 0、 8 0は、 マス夕ノード 1 0、 バックアップノード 2 0、 ノード 5 0、 ノード 6 0と共に S T P網を構成している。
マス夕ノード 1 0及びバックアップノード 2 0には、 本発明のノード冗長化プ 口トコルが適用されており、 マスタノード 1 0及びバックアップノード 2 0のう ち、 一方のノードは本発明のノード冗長化プロトコルにおけるマスタモードの動 作状態にあり、 他方はバックアップモードの動作状態にあって、 それぞれのノー ドが冗長化された一対のノードの 1つとして動作する。
また、 本発明のノ一ド冗長化プロトコルにより冗長化されたマスタノード 1 0 及びバックアップノード 2 0に直接接続された S T P網に属するノード 5 0、 6 0及び S T P網に属さないノード 3 0、 4 0は全て、 マスタノード 1 0及びバッ クアップノード 2 0のAw a r eノードとして動作する。
以降に、 マス夕ノード 1 0及びバックアップノード 2 0の構成と動作について 説明する。
図 2に示すように、 マスタノード 1 0は、 フレーム解析部 1 1 0と、 スィッチ
120と、 ポ一ト状態管理テーブル 130と、 FDB (フォワーディングデータ ベース) 140と、 フレーム多重部 150とを備え、 本発明において特徴的な、 S TPモジュール 160とノード冗長化プロトコルモジュール 170及び STP メンバポ一ト管理テーブル 180とノード冗長化プロトコルメンバポート管理テ —ブル 190とを備えて構成される。
なお、 バックアップノード 20の構成は、 マス夕ノード 10と同様である。
図 5に、 図 1のネットワーク構成例におけるマスタノード 10のノード冗長化 プロトコルメンバポート管理テーブル 190の設定例及び S TPメンバポート管 理テーブル 180の設定例を示す。
図 5に示すマス夕ノード 10のノード冗長化プロトコルメンバポート管理テ一 ブル 190には、 Aw a r eノード (ノード 30、 40、 50、 60) が直接接 続されているポート P 1〜P4がマスタノード 10のノード冗長化プロトコルの メンバポ一トとして登録されている。
これらのメンバポートの管理テーブルは、 ネットワーク構築時に手動で設定し てもよく、 また、 サーバから設定するようにしてもよい。 ' また、 図 5に示すマスタノ一ド 10の S TPメンバポ一ト管理テーブル 180 には、 STP網を構成するノ一ド 50、 60が直接接続されているポート P 3、 P4がマスタノード 10の STPのメンバポートとして登録されている。
図 6に、 図 1のネットヮ一ク構成例におけるバックアップノード 20のノード 冗長化プロトコルメンバポート管理テーブル 190の設定例及び S TPメンバポ 一ト管理テーブル 180の設定例を示す。
図 6に示すパックアップノード 20のノード冗長化プロトコルメンバポ一ト管 理テーブル 190には、 Aw a r eノード (ノード 30、 40、 50、 60) が 接続されているポート P 1〜 P 4がバックアツプノ一ド 20のノ一ド冗長化プロ トコルのメンバポートとして登録されている。
また、 図 6に示すバックアップノード 20の S TPメンバポ一ト管理テーブル 180には、 S TP網を構成するノード 50、 60が接続されているポート P 3、 P 4がバックアップノード 20の S TPのメンバポ一トとして登録されている。 以下、 マスタノード 10の動作について説明する。 ここでは、 マス夕ノード 1
0の動作のみについて説明するが、 バックアツプノ一ド 2 0の動作についても同 様である。
マスタノード 1 0の動作状態がマスタモードにある場合、 ノード冗長化プロ卜 コル解析部 1 7 2は、 自ノードのノード冗長化プロトコルに関する情報(例えば、 プライオリティ) を格納した H e 1 1 oメッセージをノード冗長化プロトコルの メンバポート (P 1〜P 4 ) から定期的に送信するように、 H e 1 1 o Z F 1 u s hメッセージ送信部 1 7 3に指示している。
ノード冗長化プロトコルに関する情報としては、 マスタノード 1 0及びバック アップノード 2 0の動作状態が互いに異なるような情報を使用する。
例えば、 マスタノード 1 0の動作状態がバックアップモードからマスタモード に更新される場合は、 バックアップノード 2 0の動作状態はマスタモードからバ ックアップモードに更新されるように、 マス夕ノード' 1 0及びバックアツプノ一 ド 2 0のノード冗長化プロトコルに関する情報は計算される必要がある。
ここで、 ノード冗長化プロ卜コルに関する情報としてプライオリティを用いた 場合に、 プライオリティの計算方法の一例を説明する。 ' プライオリティには、 基準となる値 (以下、 基準値) がデフォルト又は設定イ - ンタフェースから予め手動等により設定されており、 ノード冗長化プロトコル解 析部 1 7 2に保持される。
ノードのプライオリティの計算方法としては、 基準値、 ノード冗長化プロトコ ルのメンバポート数、 リンクアップしているメンバポート数を用いて計算する方 法が主に用いられる。
例えば、 プライオリティの基準値を 1 0 0、 ノード冗長化プロトコルのメンバ ポ一トが P 1〜P 4の 4個で、 そのうちリンクアップしているメンバポー卜が P 1〜P 3の 3個であった場合は、 プライオリティは基準値 X (ノード冗長化プロ トコルのメンバポートの数) Z (ノード冗長化プロトコルのメンバポートのうち リンクアップしているポートの数) = 1 0 0 X 3 Z 4 = 7 5のように計算するこ とができる。
上述したプライオリティの計算方法以外にも、 ノード冗長化プロトコルのメン バポート以外のポートに関する情報など他の情報を考慮した計算方法を用いても
良い。
He l l oZF 1 u s hメッセージ送信部 1 Ί 3は、 自ノードのノード冗長化 プロトコルに関する情報に基づいて He 1 l oメッセージを作成し、 作成した H e l l oメッセージをノード冗長化プロトコルのメンバポートから送信するよう に、 フレーム多重部 1 50に指示する。
マス夕ノード 1 0の動作状態がパックアップモードにある場合、 後述するよう に、 マスタモードにあるノードから定期的に送信される He 1 1 oメッセージを 監視する。
以降に、 マスタノード 1 0がフレームを受信した場合の動作について、 図 1 5 から図 1 7に示すフロ一チャートを参照して説明する。
マスタノ一ド 1 0のフレーム受信時における動作は、 ノード冗長化プロトコル の制御フレームである He 1 1 oメッセージ又は F l'u s hメッセージの受信時 を除いて、 ノードの動作状態 (マス夕モード又はバックアップモード) に依存し ない。
ポ一ト P 3、 P 4で受信されたフレームは全て、 フレーム解析部 1 1 0に送ら れる (ステップ 1 50 1) 。
フレーム解析部 1 1 0は、 受信したフレームの種類を識別して (ステップ 1 5 02)、受信フレームが S TPの制御フレームである B PDUフレームであれば、 STPモジュール 160内の BPDU受信部 1 6 1に受信フレームを送る (ステ ップ 1 50 3 ) 。
以降の、 STPモジュール 1 60の詳細な動作については、 後述する。
受信フレームがノード冗長化プロトコルの制御フレームである He 1 1 oメッ セージ又は F 1 u s hメッセージであれば、 フレ一ム解析部 1 10は、 ノード冗 長化プロトコルモジュール 1 70内の He 1 1 o/F 1 u s hメッセ一ジ受信部 1 7 1に受信フレームを送る (ステップ 1 504) 。
以降のノード冗長化プロトコルモジュール 1 7 0の詳細な動作については、 後 述する。
受信フレームが S TPの制御フレーム及びノード冗長化プロトコルの制御フレ ーム以外の通常のデータフレームであれば、 フレーム解析部 1 1 0は受信フレー
ムをスィツチ 120に送る (ステップ 1 505) 。
スィッチ 120は受信フレームの入力ポートをキーとしてポート状態管理テ一 ブル 130を参照して、入力ポートのポート状態を取得する(ステップ 1506)。 図 7に、 図 1のネットワーク構成例におけるマスタノード 10のポート状態管 理テーブル 130を、 図 8に、 図 1のネットワーク構成例におけるバックアップ ノード 20のポート状態管理テーブル 130の例を示す。
ポート状態管理テーブル 130は、 マスタノ一ド 10又はバックアップノード 20に属する各ポートのポート状態 (フォワーディング状態又はブロッキング状 態のいずれかの状態) を管理するためのテーブルであり、 3丁?解析部172及 びノード冗長化プロトコル解析部 192によって参照されるとともに、 内容が書 き換えられる。
入力ポー卜のポ一ト状態がブロッキング状態である場合(ステップ 1507)、 スィッチ 120は受信フレームを転送する処理を中断して、 受信フレームを廃棄 する (ステップ 1508) 。
入力ポートのポート状態がフォワーディング状態である場合 (ステップ 150
7) 、 スィッチ 120は受信フレームに格納された宛先情報をキーとして FDB 140を検索して、受信フレームの出力ポート情報を取得し(ステップ 1509)、 取得した出力ポート情報に格納されたポートから受信フレームを送信するように、 フレーム多重部 150に指示する (ステップ 1510) 。
このようなフレームの転送方法はュニキャスト転送と呼ばれる。
受信フレームに格納された宛先情報に関する出力ポート情報が検索されなかつ た場合、 スィッチ 120は、 ポート状態管理テーブル 130を参照して、 入力ポ ートを除くフォヮ一ディング状態にある全てのポートから受信フレームを送信す るように、 フレーム多重部 150に指示する。
このようなフレームの転送方法はブロードキャスト転送と呼ばれる。
以降、 受信フレームが B PDUフレームであった場合の S TPモジュール 16 0の動作について詳細に説明する。
S TPモジュール 160は、 S TP網に属するノード (ノード 50、 60) が 接続されたポ一ト (P 3、 P 4) を、 STPのメンバポートとして、 そのポート
状態を管理するための機能を有しており、 BPDU受信部 16 1と、 STP解析 部 162と、 BPDU送信部 163とを備えて構成される。
3丁?解析部162は、 BPDU受信部 161で受信した BPDUフレームに 格納されたフレームの転送経路に関する情報 (例えば、 ルートノードの MACァ ドレス、 ルートパスコスト) 及び S TP解析部 162自身が保持しているフレー ムの転送経路に関する情報を解析することにより、 自身のフレームの転送経路に 関する情報を更新するともに (ステップ 151 1) 、 更新されたフレームの転送 経路に関する情報に基づいて、 S TPのメンバポートのポート状態 (フォヮ一デ イング状態又はブロッキング状態) を決定し、 ポート状態管理テーブル 130を 変更する (ステップ 1 512) 。
また、 3丁?解析部162は、 更新されたフレームの転送経路に関する情報を 自ノードに接続された他のノードに伝えるために、 S T Pのメンバポ一トからフ レーム転送の経路に関する情報を格納した B P DUフレームを送信するように、 BPDU送信部 163に指示する (ステップ 1513) 。
8 011送信部163は、 更新されたフレームの転送経路に関する情報に基づ いて B PDUフレームを作成し (ステップ 1 514) 、 STPのメンバポートか ら作成した BPDUフレームを送信するように、 フレーム多重部 150に指示す る (ステップ 1 5 15) 。
また、 3丁?解析部162は、 STPのメンバポートから BPDUフレームを 定期的に送信するように、 BPDU送信部 163に指示する。
8?011送信部163は、 フレームの転送経路に関する情報に基づいて BP D Uフレームを作成し、 S TPのメンバポー卜から作成した BPDUフレームを送 信するように、 フレーム多重部 150に指示する。
以降、 受信フレームが He 1 1 oメッセージ又は F 1 u s hメッセージであつ た場合のノード冗長化プロトコルモジュールの動作について詳細に説明する。 ノード冗長化プロトコルモジュール 170は、 Aw a r eノード(ノード 30、 40、 50、 60) と接続されたポ一ト (P l、 P 2、 P 3、 P4) を、 ノード 冗長化プロトコルのメンバポ一トとして、 そのポート状態を管理するための機能 を有しており、 He 1 1 o/F 1 u s hメッセージ受信部 17 1と、 ノード冗長
化プロトコル解析部 1 72と、 He 1 1 o/F 1 u s hメッセージ送信部 1 73 とを備えて構成される。
ノード冗長化プロトコルモジュール 1 70の動作はマスタノード 10の動作状 態に依存するため、 以降では、 マスタモード 10の動作状態がマスタモードであ る場合とバックアップモードである場合に分けて説明する。
まず、 マスタノード 10の動作状態がマスタモードである場合について図 16 のフ口一チヤ一トを参照して説明する。
He l l o/ 1 u s hメッセージ受信部 1 Ί 1で H e 1 1 oメッセージ又は F 1 u s hメッセージを受信すると (ステップ 1601) 、 ノード冗長化プロト コル解析部 172は、 受信した He 1 1 oメッセージ又は F 1 u s hメッセージ に格納されたノード冗長化プロトコルに関する情報及びノード冗長化プロトコル 解析部 172自身が保持しているノード冗長化プロトコルに関する情報を解析す ることにより、 自ノ一.ドの動作状態を決定する (ステップ 1602) 。
自ノードの動作状態がマスタモードのままで更新されなかつた場合は (ステッ プ 1603) 、 受信した He 1 1 oメッセージ又は F 1 u s hメッセージを廃棄 し (ステップ 1604) 、 受信した He 1 1 oメッセ一ジ又は F 1 u s hメッセ —ジに関する処理を終了し、引き続き定期的に He 1 1 oメッセージを送信する。 一方、 自ノードの動作状態がバックアップモードに決定された場合は (ステツ プ 1603) 、 ノード冗長化プロトコル解析部 172は、 動作状態をバックアツ プモードに切り替え、 S TPとノ一ド冗長化プロトコルとの競合を防ぐために、
S T Pのメンバポ一トに含まれないノ一ド冗長化プロトコルのメンバポート ( P 1、 P 2) のみのポート状態をフォワーディング状態からブロッキング状態に変 更して、 ポート状態管理テーブル 130の内容を変更すると共に (ステップ 16 05) 、 前述の He 1 1 oメッセージを定期的に送信する処理を停止する (ステ ップ 1606) 。
その後、 後述するように、 マス夕モードにある別のノードから定期的に送信さ れる He 1 1 oメッセージを監視する。
次に、 マスタノード 10の動作状態がバックアップモードである場合について 図 17のフローチャートを参照して説明する。
マス夕ノード 10の動作状態がバックアップモードである場合、 He 1 1 oZ F 1 u s hメッセージ受信部 17 1で He 1 1 oメッセージ又は F 1 u s hメッ セージを受信すると (ステップ 1701) 、 ノード冗長化プロトコル解析部 17 2は、 受信した He 1 1 oメッセージ又は F 1 u s hメッセ一ジに格納されたノ ード冗長化プロトコルに関する情報及びノード冗長化プロトコル解析部 172自 身が保持しているノード冗長化プロトコルに関する情報を解析することにより、 マス夕ノード 10の動作状態を決定する (ステップ 1702) 。
マス夕ノード 10の動作状態がバックアツプモードのままで更新されなかつた 場合は (ステップ 1703) 、 受信した He 1 1 oメッセ一ジ又は F 1 u s hメ ッセージを廃棄し (ステップ 1704) 、 引き続き定期的に送信される He 1 1 oメッセージを監視する。
マス夕ノード 10の動作状態がマス夕モードに決定きれた場合 (ステップ 17 03で YES) 、 ノード冗長化プロトコル解析部 172は、 ノード冗長化プロト コルのメンバポ一ト P 1〜P4から He 1 1 oメッセ一ジを定期的に送信する処 理を開始する (ステップ 1705) と共に、 引き続きマスタモードにあるノード
(バックアップノード 20) から送信される He 1 1 oメッセージを監視する。 一方、 マス夕モードにあるノード ひ ックアップノード 20) は、 マスタノ一 ド 10から定期的に送信される He 1 1 oメッセージを受信することにより、 自 ノードの動作状態をマスタモードからバックアツプモードに更新し、 定期的に H e l l oメッセージを送信する処理を停止するため、 マスタノード 10は He 1
1 0メッセ一ジを受信できなくなる。
マス夕ノード 10は He 1 1 oメッセージの送信開始以降に、 所定時間マス夕 モードにあるノードから送信される He 1 1 oメッセージを受信できなかった場 合 (ステップ 1706) 、 自ノードの動作状態をマスタモードに切り替える (ス テツプ 1707) 。
そして、 マスタノード 10は、 STPとノード冗長化プロトコルとの競合を防 ぐために、 S T Pのメンバポ一トに含まれないノ一ド冗長化プロトコルのメンバ ポ一ト (P l、 P 2) のみのポート状態をブロッキング状態からフォヮ一ディン グ状態に変更して、 ポート状態管理テーブル 130の内容を変更する (ステップ
1708) と共に、 ノード冗長化プロトコルの全てのメンバポート (P l〜4) から F 1 u s hメッセ一ジを送信する (ステップ 1709) 。
その後、 マスタノード 10は、 引き続きノード冗長化プロトコルのメンバポ一 ト P 1〜P 4から He 1 1 oメッセージを送信する。
なお、 マス夕ノード 10が、 He 1 1 oメッセージの送信開始以降に He 1 1 oメッセージを受信した場合は、 マスタノード 10は He 1 1 oメッセ一ジを定 期的に送信する処理を停止し (ステップ 1710) 、 受信した He 1 1 oメッセ —ジについて、 上述のノード冗長化プロトコルに関する情報の解析を行って、 自 ノードの動作状態を決定する処理を行う。 以降のマスタノード 10の動作は上述 の通りである。
以下に、 マスタモ一ドにあるバックアップノード 20がダウンして、 バックァ ップモ一ドにあるマスタノード 10が、 He 1 1 oメッセージを受信できなくな つた場合の動作について説明する。
マスタノード 10が所定回数連続して He 1 1 oメッセージを受信できなかつ た場合、 マスタモードにあるノード (パックアップノード 20) がダウンしたと 判断し、 ノード冗長化プロトコルのメンバポート (P 1〜P4) から He 1 1 o メッセージを送信する処理を開始する。
マスタノード 10は、 He 1 1 oメッセージの送信開始以降、 所定時間バック アップノード 20から送信される He 1 1 oメッセ一ジを受信できなかった場合、 自ノードの動作状態をマス夕モードに切り替える。
以降の動作については、 上述のマス夕ノード 10がバックアップモードからマ ス夕モードに切り替わる場合の動作と同一であるため、 説明を省略する。
以上、 マスタノード 10の動作のみを詳細に説明したが、 マスタノード 10の 動作状態がマスタモードである場合は、 バックアップノード 20の動作状態がバ ックアップモードであり、 マス夕ノード 10の動作状態がバックアツプモードで ある場合は、 バックアップノード 20の動作状態がマス夕モードであること以外 は、 バックアップノード 20の動作は、 マスタノ一ド 10の動作と同一であるの で、 説明を省略する。
上述したように、 ノード冗長化プロトコル解析部 172が、 STPのメンバポ
ートに含まれないノード冗長化プロトコルのメンバポートのみのポート状態を管 理し、 またバックアップモードからマスタモードに切り替わる際には、 ノード冗 長化プロトコルの全てのメンバポートから F 1 u s hメッセ一ジを送信すること により、 S T P網内のノードをノード冗長化プロトコルにより冗長化し、 冗長化 された一方のノードがダウンしても、 他方のノードを経由して通信を続行するこ とが可能なネットワークシステムを提供することが可能である。
以降に、 マスタノード 1 0とバックアップノード 2 0のメンバポート P 1、 P 2に接続される S T P網に属さないノード 3 0、 4 0の構成と動作について説明 する。
図 3に示すように、 ノード 3 0、 4 0は、 フレーム解析部 3 1 0と、 スィッチ
3 2 0と、 F D B 3 4 0と、 フレーム多重部 3 5 0とを備え、 さらに、 ノード冗 長化プロトコルモジュール 3 7 0と、 ノード冗長化プロトコルメンバポ一卜管理 テーブル 3 9 0とを備えて構成される。 ノード冗長化プロトコルモジュール 3 7 0については、 マスタノード 1 0のノード冗長化プロトコルモジュール 1 7 0と 同様に、 H e l l o / F 1 u s hメッセージ受信部 3 7 1と、 ノード冗長化プロ トコル解析部 3 7 2と、 H e 1 1 o / F 1 u s hメッセージ送信部 3 7 3とを備 えて構成される。
図 9に、 図 1のネットヮ一ク構成例におけるノード 3 0のノード冗長化プロト コルメンバポート管理テーブル 3 9 0の設定例を示す。
図 9に示すノード 3 0のノード冗長化プロトコルメンバポート管理テーブル 3
9 0には、 マス夕ノード 1 0又はバックアップノード 2 0が直接接続されている ポ一ト P 1、 P 2がノード 3 0のノ一ド冗長化プロトコルのメンバポートとして 登録されている。
図 1 0に、 図 1のネットワーク構成例におけるノ一ド 4 0のノード冗長化プロ トコルメンバポート管理テーブル 3 9 0の設定例を示す。
図 1 0に示すノード 4 0のノード冗長化プロトコルメンバポート管理テーブル 3 9 0には、 マス夕ノード 1 0又はバックアップノード 2 0が接続されているポ ート P 1、 P 2がノード 4 0のノード冗長化プロトコルのメンバポートとして登 録されている。
以下に、 ノード 30がフレームを受信した場合の動作について図 18のフロー チャートを参照して説明する。
ここでは、 ノード 30の動作について説明するが、 ノード 40の動作は、 ノー ド 30の動作と同一であるため、 説明を省略する。
ポート P l、 P 2で受信されたフレームは全て、 フレーム解析部 310に送ら れる (ステップ 1801) 。
受信フレームがノード冗長化プロトコルの制御フレームである He 1 1 oメッ セージ又は F 1 u s hメッセージであれば (ステップ 1802) 、 フレーム解析 部 310は、 ノード冗長化プロトコルモジュール 370内の H e 1 1 o/F 1 u s hメッセ一ジ受信部 371に受信フレームを送る (ステップ 1803) 。
He 1 1 o/F 1 u s hメッセージ受信部 371で受信したフレームが H e 1 1 oメッセージである場合 (ステップ 1804) 、 ノード冗長化プロトコル解析 部 372は、 He 1 1 oメッセージの入力ポートを記憶すると共に (ステップ 1 805)、 ノード冗長化プロ卜コルメンバポート管理テーブル 390を参照して、 入力ポートを除くノード冗長化プロトコルの全てのメンバポートから、 受信した
He l l oメッセージを送信するように He 1 1 o/F 1 u s hメッセ一ジ送信 部 373に指示する (ステップ 1806) 。
なお、 ノード冗長化プロトコルメンバポート管理テーブル 390にポートが登 録されていない場合は、 入力ポート以外の全てのポートから He 1 1 oメッセ一 ジを送信する。
受信した He 1 1 oメッセージは、 出力ポ一ト情報と共に、 He l l o/F 1 u s hメッセージ送信部 373からフレーム多重部 350に送られて、 ノード冗 長化プロトコル解析部 372より指示されたポートから送信される (ステップ 1 807) 。
He l l o/F 1 u s hメッセ一ジ受信部 371で受信したフレームが F 1 u s hメッセージである場合 (ステップ 1804) 、 ノード冗長化プロトコル解析 部 372は、 FDB 340のエントリのうち、 出力ポート情報がこれまで受信し ていた He 1 1 oメッセージを受信していたポー卜であるエントリの出力ポート を、 受信した F 1 u s hメッセージの入力ポートに書き換えると共に (ステップ
1808) 、 ノード冗長化プロトコルメンバポート管理テーブル 390を参照し て、 入力ポートを除くノード冗長化プロトコルの全てのメンバポートから、 受信 した F 1 u s hメッセージを送信するように He 1 1 o/F 1 u s hメッセージ 送信部 173に指示する (ステップ 1809) 。
また、 ノード冗長化プロトコルメンバポート管理テ一ブル 390にポートが登 録されていない場合は、 入力ポート以外の全てのポートから F l u s hメッセ一 ジを送信する。
受信した F 1 u s hメッセージは、 出力ポート情報と共に、 He 1 1 oZF 1 u s hメッセージ送信部 373からフレーム多重部 350に送られて、 ノード冗 長化プロトコル解析部 372より指示された出力ポートから送信される (ステツ プ 1807 ) 。
次に、 ステップ 1802で、 受信フレームがノード允長化プロトコルの制御フ レーム以外の通常のデータフレームであると判定された場合について説明する。 フレーム解析部 310は受信フレームをスィッチ 320に送り (ステップ 18 10) 、 スィッチ 320は受信フレームに格納された宛先情報をキ一として FD B 340を検索して (ステップ 181 1) 、 受信フレームの出力ポート情報が取 得されると (ステップ 1812) 、 取得した出力ポート情報に格納されたポート から受信フレームを送信するように、 フレーム多重部 350に指示することによ り、 受信フレームをュニキャスト転送する (ステップ 18 13) 。
受信フレームに格納された宛先に関する出力ポート情報が検索されなかった場 合、 スィッチ 320は、 入力ポート以外の全てのポートから受信フレームを送信 するように、 フレーム多重部 150に指示することにより、 受信フレームをプロ ードキャスト転送する (ステップ 1814) 。
以上のように、 ノード 30、 40は、 通常時は、 マス夕モードのノードから定 期的に送信される He 1 1 oメッセージをバックアップモードのノードに転送し、 冗長化されたノードの動作状態が互いに切り替わった場合には、 新たにマス夕モ ードに切り替わったノードから送信される F 1 u s hメッセ一ジを受信して、 F DB 340の内容を更新することにより、 リンクの切断又はノードのダウン等の ネットワーク障害が発生して、 マスタモードのノードが変更されても、 通信を続
行することができる。
以降では、 マスタノード 10とバックアップノード 20のメンバポート P 3、 P 4に接続される S TP網に属するノード 50、 60の構成と動作について説明 する。
図 4に示すように、 S TP網に属するノード 50、 60は、 図 3に示したノー ド 30、 40の構成に加えて、 S TPモジュール 360と S TPメンバポート管 理テーブル 380と、 ポート状態管理テーブル 330とを備えて構成される。 ノード 50、 60の S TPモジュール 360については、 マスタノード 10及 びバックアップノード 20の STPモジュール 160と同様に、 BPDU受信部 361と、 S TP解析部 362と、 BPDU送信部 363とを備えて構成される。 図 1 1に、 図 1のネットワーク構成例におけるノ一ド 50のノード冗長化プロ トコルメンバポート管理テ一ブル 390の設定例及び S TPメンバポート管理テ 一ブル 380の設定例を示す。
図 1 1に示すノード 50のノード冗長化プロトコルメンバポート管理テ一ブル 390には、 マスタノード 10又はバックアップノード 20が直接接続されてい るポート P 1、 P 2がノ一ド 50のノ一ド冗長化プロトコルのメンバポートとし て登録されている。
また、図 1 1に示すノード 50の S TPメンバポート管理テーブル 380には、 STP網を構成するノード 1 0、 20、 60、 70が直接接続されているポート P 1〜4がノード 50の S TPのメンバポートとして登録されている。
図 1 2に、 図 1のネットワーク構成例におけるノード 60のノード冗長化プロ トコルメンバポート管理テーブル 390の設定例及び S TPメンバポート管理テ 一ブル 380の設定例を示す。
図 12に示すノード 60のノード冗長化プロトコルメンバポ一ト管理テーブル 390には、 マス夕ノード 10又はバックアップノード 20が接続されているポ —ト P 1、 P 2がノード 60のノード冗長化プロトコルのメンバポートとして登 録されている。
また、図 12に示すノード 60の S TPメンバポート管理テ一ブル 380には、 S TP網を構成するノード 10、 20、 50、 80が直接接続されているポート
P 1〜4がノード 6 0の S T Pのメンバポートとして登録されている。
以下に、 ノード 5 0がフレームを受信した場合の動作について説明する。
ここでは、 ノード 5 0の動作について説明するが、 ノード 6 0の動作は、 ノ一 ド 5 0の動作と同一であるため、 説明を省略する。
ポート P l、 P 2で受信されたフレームは全て、 フレーム解析部 3 1 0に送ら れる。
フレーム解析部 3 1 0は、 受信したフレームの種類を識別して、 受信フレーム が S T Pの制御フレームである B P D Uフレームであれば、 S T Pモジュール 3
6 0内の B P D U受信部 3 6 1に受信フレームを送る。
以降の S T Pモジュール 3 6 0の動作は、 マスタノード 1 0が B P D Uフレ一 ムを受信した場合の S T Pモジュール 1 6 0の動作と同一であるため、 説明を省 略する。 - 受信フレームがノード冗長化プロトコルの制御フレームである H e 1 1 oメッ セージ又は F 1 u s hメッセ一ジであれば、 フレーム解析部 3 1 0は、 ノード冗 長化プロトコルモジュール 3 7 0内の H e 1 1 o ZF 1 u s hメッセージ受信部
3 7 1に受信フレームを送る。
以降のノ一ド冗長化プロトコルモジュール 3 7 0の動作は、 ノード 3 0が H e
1 1 oメッセージ又は F 1 u s hメッセ一ジを受信した場合のノード冗長化プロ トコルモジュール 3 7 0の動作と同一であるため、 説明を省略する。
受信フレームがノード冗長化プロトコルの制御フレーム以外の通常のデ一タフ レームである場合、 フレーム解析部 3 1 0は受信フレームをスィッチ 3 2 0に送 る。
以降のデ一夕フレームを転送する動作は、 前述したマスタノード 1 0がデータ フレームを転送する動作と同一であるため、 説明を省略する。
以上のように、 ノード 5 0は、 ノード 3 0と同様に、 通常時は、 マス夕モード のノードから定期的に送信される H e 1 1 oメッセージをバックアップモードの ノードに転送し、冗長化されたノードの動作状態が互いに切り替わつた場合には、 新たにマスタモードに切り替わったノードから送信される F 1 u s hメッセージ を受信して、 F D B 3 4 0の内容を更新することにより、 リンクの切断又はノー
ドのダウン等のネットワーク障害が発生して、 マス夕モードのノードが変更され ても、 通信を続行することができる。
次いで、 第 1の実施例におけるネットワークシステムの動作について図 19に 示すシ一ケンスチャートを参照して説明する。
図 1のネットワーク構成において、 マスタノード 10の動作状態がマスタモー ドにあり、 ノ ックアップノード 20の動作状態がバックアップモードにあるとす る。 ,
通常時において、 マスタノード 10は、 冗長化プロトコルメンバポート管理テ 一ブル 190に登録された全てのメンバポート (P 1〜P4) から定期的に He 1 1 oメッセージを送信する (1901) 。
ノード 30、 40、 50、 60は、 それぞれポート P 1でマスタノ一ド 10か ら送信される He 1 l oメッセージを受信し (1 90—2) 、 ノ ックアツプノ一ド 20が接続されたポート P 2から受信した He 1 l oメッセージを送信する (1 903) 。
バックアップノード 20は、 マスタノード 10から定期的に送信される He 1 l oメッセージを受信し ( 1 904) 、 He 1 1 oメッセージに格納されたノ一 ド冗長化プロトコルに関する情報を監視する。
ここで、 マス夕ノード 10とノード 30間のリンクが切断され、 マスタノ一ド 10のプライオリティがバックアップノード 20のプライオリティよりも低下し た場合について説明する。
バックアップノード 20は、 ポート P 2で受信した He 1 l oメッセージに格 納されたマスタノード 10のプライオリティが、 バックアップノード 20のプラ ィオリティよりも低下したことを検出すると (1 905) 、 動作状態がマスタモ —ドに決定され (1906) 、 ノード冗長化プロトコルのメンバポート (P l〜 P 4) から He 1 1 oメッセージを定期的に送信する ( 1907) 。
ノード 30、 40、 50、 60は、 マスタノ一ド 10から送信される He 1 1 oメッセージをバックアツプノ一ド 20に送信すると共に、 バックァップノ一ド 20から送信される He 1 1 oメッセ一ジを受信し ( 1908) 、 マス夕ノード 10に送信する (1909) 。
マスタノード 10は、 バックアップノード 20から送信される He 1 l oメッ セージを受信すると (1 910) 、 He 1 1 oメッセージに格納されたバックァ ップノ一ド 20のプライオリティが自ノードよりも高くなつたことを検出して
(191 1) 、 自ノードの動作状態をマスタモードからバックアップモードに切 り替える (1912) 。
即ち、 マス夕ノード 10のポート状態管理テ一ブル 1 30について、 STPメ ンバポート管理テーブル 180に含まれないノード冗長化プロトコルメンバポー ト (P l, P 2) のポートの状態をフォワーディング状態からブロッキング状態 に変更する (191 3) 。
そして、 マスタノ一ド 10は、 定期的に He 1 1 oメッセージを送信する処理 を停止し (1914) 、 以降バックアツプノ一ド 20から定期的に送信される H e 1 1 0メッセージを監視する。 .
一方、 バックアップノード 20は、 He 1 1 oメッセージの送信開始以降、 所 定時間マスタノ一ド 10から送信される He 1 1 oメッセ一ジを受信できなかつ た場合 (1915) 、 自ノ一ドの動作状態をマス夕モードに切り替える (191
6) 。
即ち、 バックアップノード 20のポート状態管理テーブル 130について、 S TPメンバポート管理テ一ブル 180に含まれないノード冗長化プロトコルメン バポート (P l, P 2) のポートの状態をブロッキング状態からフォヮ一ディン グ状態に変更する (19 17) 。
そして、 バックアップノード 20は、 F 1 u s hメッセ一ジをノ一ド冗長化プ ロトコルのメンバポート (P 1〜P4) から送信し (1918) 、 以降引き続き He 1 1 oメッセ一ジを定期的に送信する。
ノ一ド 30、 40、 50、 60は、 それぞれバックアップノード 20から送信 される F 1 u s hメッセ一ジをポート P 2で受信し、 FDBのエントリのうち、 出力ポート情報が He 1 1 oメッセージを受信していたポート P 1であるェント リの出力ポートを、 F 1 u s hメッセージの受信ポート P 2に書き換える (19 19) 。 また、 バックアップノード 20から送信される He 1 l oメッセージ及 び F 1 u s hメッセ一ジをマス夕ノード 10に送信する (1920) 。
図 13に、 バックアツプノード 20の動作状態がバックアツプモ一ドからマス タモードに切り替わり、 ノ ックアップノード 20から F 1 u s hメッセージが送 信されて、 Awa r eノードの F D Bが変更された直後のネットワークの状態を 示す。
また図 14に、 マスタノ一ド 10とバックアップノード 20の動作状態が入れ 替わり、 バックアップノード 20から定期的に He 1 1 oメッセージが送信され ている状態のネットワークを示す。
上述のように、 本発明の第 1の実施例では、 ノード冗長化プロトコルのメンバ ポートかつ S TPのメンバポ一トであるポートのポート状態を、 ノード冗長化プ ロトコルモジュール 170が管理しないで、 S TPモジュール 160のみが管理 するようにノードを構成し、 かつマスタノード 10とバックアップノード 20の 動作状態が切り替わる場合には、 ノ一ド冗長化プロトコルの全てのメンバポート から F 1 u s hメッセージを送信する構成することにより、 メンバポートに関す るノード冗長化プロトコルと S TPによる競合の発生を回避することにより、 ノ —ド冗長化プロトコルを STP網のノードに適用させることを可能としている。
(第 2の実施例)
次いで、本発明の第 2の実施例によるネットワークシステムについて説明する。 第 2の実施例では、 複数の V LAN (V i r t u a l LAN)が設定されたネ ットワークシステムに本発明のノード冗長化プロトコルを適用する方法について 説明する。
図 20は、 3個の VLAN401、 402、 403が設定されたネットワーク システムに本発明のノード冗長化プロトコルを適用した塲合の例であり、 ネット ワークシステムの状態を V LAN毎に示している。
VLAN401では、 ノード 50が S T P網のルートノードであり、 マスタノ ード 10、 バックアップノード 20の動作状態は、 それぞれマス夕モード、 バッ クアップモードとなっている。
VLAN402では、 マスタノード 10が S TP網のルートノードであり、 マ スタノ一ド 10、 ノ ックアップノード 20の動作状態は、 それぞれパックアツプ
モード、 マスタモードとなっている。
VLAN403では、 ノ一ド 70が S TP網のル一トノードであり、 マスタノ ード 10、 バックアップノード 20の動作状態は、 それぞれマス夕モード、 バッ クアップノードとなっている。
以上のように、 S TP網のルートノードが V LAN毎に異なっていても構わな いし、 マスタノ一ド 10及びバックアップノード 20のノード冗長化プロトコル の動作状態が V LAN毎に異なっていても構わない。
図 21に、 マスタノード 10及びバックアップノード 20の VLAN401、 402、 403におけるノード冗長化プロトコルの動作状態を示す。
マス夕ノード 10及びバックアップノード 20のノード冗長化プロトコル解析 部 172は、 図 21に示す内容を保持する。
すなわち、第 1の実施例においては、 ノード冗長化プロトコル解析部 172は、 自ノードのノード冗長化プロトコルの動作状態を 1つだけ保持するだけであった が、 第 2の実施例においては、 自ノ一ドのノ一ド冗長化プロトコルの動作状態を V LAN毎に保持する。
図 22に示すマス夕ノード 10及びバックアップノード 20のノ一ド冗長化プ ロトコルメンバポート管理テーブル 190、 図 25に示すノード 30、 40のノ ード冗長化プロトコルメンバポート管理テーブル、 図 26に示すノード 50、 6 0に示すノ一ド冗長化プロトコルメンバポ一ト管理テーブルのように、 本実施例 においては、ノード冗長化プロトコルのメンバポートは V LAN毎に管理される。 同様に、 図 23に示すマスタノード 10及びバックアップノード 20の STP メンバポート管理テーブル 180、 図 27に示すノード 50、 60の STPメン バポート管理テ一ブルのように、 本実施例においては、 S TPのメンバポートは VL AN毎に管理される。
図 24に示すマス夕ノード 10及びバックアップノード 20のポ一ト状態管理 テーブル 1 30のように、 本実施例においては、 各ポートのポート状態は VLA N毎に管理される。
マスタノード 10、 バックアップノード 20及びノード 30、 40、 ノード 5 0、 60の構成については、 上述の各情報が VLAN毎に管理される点、 FDB
140が宛先及ぴ VL ANの情報と出力ポート情報の対応を記憶する点を除いて は、 第 1の実施例で説明した構成と同様である。
マスタノード 1 0、 ノ ックアップノード 20は、 VL AN401、 402、 4 03毎に、 第 1の実施例で説明した方式により、 メンバポートのポート状態を管 理する。
マスタノード 10及びバックアツプノ一ド 20の各 VL ANにおける動作は、 第 1の実施例で説明したマスタノード 10及びパックアップノード 20の動作と VLAN情報を参照する点が異なる。
第 2の実施例においては、 マスタノ一ド 10及びバックアップノード 20が H e 1 1 oメッセ一ジ又は F 1 u s hメッセ一ジに VLANを識別するための I D
(VR I D) を格納して送信する。
また、 マス夕ノード 10及びバックアップノード 20が He 1 l oメッセ一ジ 又は F 1 u s hメッセージを受信した場合は、 He l l oメッセ一ジ又は F 1 u s hメッセージに格納された VR I Dを参照し、 VR I Dに対応する VLANに ついて、 ノード冗長化プロトコルの動作状態 (マスタモード又はバックアップモ ード) 、 ノード冗長化プロトコルのメンバポートのポート状態 (フォヮ一ディン グ状態又はブロッキング状態) を決定する。
例えば、 バックアップノード 20が V L AN 401に対応する V R I D 1が格 納された He 1 1 0メッセージを受信した場合、 バックアップノード 20は、 V LAN40 1におけるノード冗長化プロトコルの動作状態及びノード冗長化プロ トコルのメンバポートのポート状態に対して上述の処理を行うが、 VLAN40 2、 403におけるノード冗長化プロトコルの動作状態及びメンバポートのポー ト状態には影響しない。
また、 B PDUフレームについては、 フレームに格納された VLAN情報 (例 えば、 VLANタグに格納された VLAN I D) を参照することにより、 VL
AN毎に S TP網の転送経路を計算し、 V LAN毎に S TPのメンバポートのポ ート状態を管理する。
また、 B PDUフレーム、 He l l oメッセージ及び F 1 u s hメッセージ以 外のデータフレームについては、 スィッチ 120が、 フレームに格納された宛先
情報及び VLAN情報をキ一として FDB 140を検索して出力ポート情報を取 得することにより、 受信フレームを転送する。
Aw a r eノード (ノード 30、 40、 50、 60) の H e 1 1 oメッセージ 又は F 1 u s hメッセージ受信時の動作も、 マスタノード 10及びバックアップ ノード 20と同様に、 He l l oメッセージ又は F 1 u s hメッセージに格納さ れた VR I Dを参照し、 VR I Dに対応する VL ANについて、 ノード冗長化プ ロトコルの処理を行う以外は、 第 1の実施例で説明した動作と同一である。
例えば、 Awa r eノードが F 1 u s hメッセージを受信した場合、 F 1 u s hメッセージに格納された VR I Dを参照し、 FDB 340のエントリのうち、 VLAN情報が VR I Dに対応する VLANであり、 かつ、 出力ポート情報が F 1 u s hメッセージの受信以前に、 同じ VR I Dが格納された He 1 l oメッセ —ジを受信していたポートであるエントリの出力ポート情報を、 F 1 u s hメッ セージの受信ポートに書き換える。
また、 B PDUフレーム、デ一夕フレーム受信時の Awa r eノードの動作は、 上述のマスタノ一ド 10及びバックアップノード 20と同様である。
上述したように、 S TPメンバポート管理テーブル 180、 ノード冗長化プロ トコルメンバポート管理テーブル 190、 ポート状態管理テーブル 130、 ノ一 ド冗長化プロトコルの動作状態を VLAN毎に管理すると共に、 マスタノード 1 0及びバックアップノード 20が、 H e 1 1 oメッセージ又は F 1 u s hメッセ ージに VLANを識別するための I D (VR I D) を格納して送信することによ つて、 複数の VLANが設定されたネットワークシステムに本発明のノード冗長 化プロトコルを適用することが可能である。
(第 3の実施例)
次いで、本発明の第 3の実施例によるネットワークシステムについて説明する。 第 3の実施例におけるノード冗長化プロトコルは、 図 1のノード 50、 60を 通常の S TP網に設けられるノードと同様に、 S TPモジュール 360のみを備 える構成とした場合においても、 既存の S TP対応のノードに改良を加えること なく、 S TP網におけるノードの冗長化を可能とする方法について説明する。
図 1のノード 50、 60に既存の STP対応のノ一ドを使用し、 図 1のネット ワークシステムに第 1の実施例のノード冗長化プロトコルを適用した場合、 既存 の STP対応ノードは、 ノード冗長化プロトコルの制御フレーム (He 1 1 oメ ッセージ及び F 1 u s hメッセ一ジ) を認識することができないため、 ノード冗 長化プロトコルの Aw a r eノードとして機能することができないという問題が 発生する。
具体的には、ノード冗長化プロトコルを適用されたノード対の一方のノード(マ スタノ一ド 10、 ノ ックアップノード 20の一方) から送信された He 1 1 oメ ッセージを他方のノードに転送することができないという問題がある。
また、 マスタノ一ド 10、 バックアップノード 20の動作状態が入れ替わった 場合に、 バックアップモードからマスタモードに切り替わったノードから送信さ れる F 1 u s hメッセージを認識することができず、 FDBを書き換えることが できないため、 FDBのエントリがエージングされるまで通信が中断されてしま う問題もある。
第 3の実施例においては、 He l l oメッセージに格納される宛先情報として 特殊アドレスを使用し、 また、 STP網に属する Awa r eノード 50、 60に 対して送信する F 1 u s h 'メッセージとして BP DUフレームを利用することに より、 既存の S T P対応のノ一ドがノード冗長化プロトコルの制御フレームを認 識できなくとも、 Awa r eノードとして機能することを可能とする。
マス夕ノード 10及びバックアップノード 20の構成は、 第 1の実施例で示し た構成と基本的に同じであるが、 第 3の実施例では、 図 28に示すように、 ノー ド冗長化プロトコルモジュール 170のノ一ド冗長化プロトコル解析部 172が、 ノード 30、 40に対する F 1 u s hメッセ一ジとして使用する、 STPの To p o 1 o g y C h a n g eフラグを立てた B PDUフレームの送信を、 STP モジュール 160の STP解析部 162に指示することができる機能を追加して いる。
まず、 既存の STP対応のノード 50、 60が、 He 1 l oメッセージ及び F 1 u s hメッセージを転送可能にするための方法について、 以下に説明する。 第 3の実施例においては、 マスタノード 10、 ノ ックアップノード 20は、 宛
先情報として、 既存の S T P対応ノードが常に未知と判断するような特殊アドレ スを格納して、 He l l oメッセ一ジ及び F 1 u s hメッセージを送信する。 マスタノード 10、 バックアップノード 20のフレーム解析部 1 10及び ST P網に属さない Awa r eノード 30、 40のフレーム解析部 310には、 この 特殊ァドレスを宛先情報として有するフレームをノード冗長化プロトコルの制御 フレーム (He 1 1 oメッセージ及び F 1 u s hメッセ一ジ) として認識させる ようにしておく。
このようにすれば、 マス夕ノード 10、 ノ ックアップノード 20の一方からノ ード 30、 40に対して送信された He 1 1 oメッセージ及び F 1 u s hメッセ —ジは、 第 1の実施例と同様にして、 他方のノードに転送される。
一方、 ノ一ド 50、 60が He 1 1 oメッセージ及び F 1 u s hメッセージを 受信した場合、 フレーム解析部 310は、 ノード冗長^プロトコルの制御フレー ムと認識せずに、 通常のデータフレームと認識して、 He l l oメッセージ及び F 1 u s hメッセ一ジをスィッチ 320に転送する。
ノ一ド 50、 60のスィツチ 320は、 He 1 1 oメッセージ及び F l u s h メッセージの宛先情報をキーとして FDB 340を検索するが、 He 1 1 oメッ セージ及び F 1 u s hメッセージの宛先情報には特殊アドレスが使用されている ため、 常に検索に失敗する。
そのため、 スィッチ 320は S TPのメンバポートのうち、 He 1 1 oメッセ ージ又は F 1 u s hメッセージの受信ポート以外で、 かつ、 フォワーディング状 態にある全てのポートから、 受信した He 1 1 oメッセージ又は F 1 u s hメッ セージをブ口一ドキャスト転送する。
ノード 50、 60の S TPのメンバポートのいずれかは、 マスタノード 10、 バックアップノード 20に接続されているため、 マス夕ノード 10又はバックァ ップノード 20の一方から送信された H e 1 1 oメッセージ又は F 1 u s hメッ セージを他方のノードに転送することができる。
このとき、 'He l l 0メッセージ又は F 1 u s hメッセ一ジを送信したノード 対 (マスタノード 10及びバックアップノード 20) を識別するための I Dを、 He 1 1 oメッセージ及び F 1 u s hメッセージに格納することにより、 他のノ
ード対から送信されて、 STP網内をブロードキャスト転送された He 1 1 oメ ッセージ又は F 1 u s hメッセージを受信して、 マスタノ一ド 10、 バックアツ プノ一ド 20が誤動作することを防止することができる。
また、 Awa r eノード 50、 60が既存の S T P対応ノードである場合に、 He l l oメッセ一ジを転送できない問題を解決する方法として、 マスタノード
10及びバックアップノード 20のノード冗長化プロトコルのメンバポ一卜のう ち、 S TPのメンバポートにも含まれるポートには、 He l l oメッセージを送 信しないという方法もある。
この場合、 He 1 1 oメッセ一ジ及び F 1 u s hメッセージは、 S TP網に属 さない Aw a r eノード 30、 40のみを経由して転送され、 He 1 1 oメッセ
—ジが STP網でプロ一ドキャスト転送されることがないため、 他のノード対の 送信する He 1 1 oメッセージによる誤動作を防止 きると共に、 不要なトラフ イツクにより通信帯域が圧迫されないという利点がある。
次に、 既存の S TP対応のノード 50、 60が F 1 u s hメッセージを受信し た場合に、 FDB 340の消去を可能にするための方法について、 説明する。 図 30に示すように、マスタモードにあるマスタノード 10に障害が発生して、 バックアツプノ一ド 20がパックアップモ一ドからマスタモードに切り替わる時、 ノード 30、 40に対しては、 第 1の実施例と同様に、 バックアップノード 20 から F 1 u s hメッセージが送信されることにより、 ノード 30、 40の FDB 340が書き換えられる。
S TP網内のノード 50、 60に対しては、 ノ ックアップノード 20のノード 冗長化プロトコル解析部 172が、 バックアップノード 20の STPメンバポ一 ト管理テ一ブル 180及びノード冗長化プロトコルメンバポート管理テーブル 1 90の両方に設定されるポートに対して、 To p o l o gy Ch an g eフラ グを立てた BP DUフレ一ムを送信することを STP解析部 162に指示する。 これにより、 BPDU送信部 163からは、 S TPのメンバポートに対して、 To p o l o gy Ch ang eフラグの立った B P DUフレームが送信される。 また、 To p o l o gy Ch a n g eフラグを立てた BPDUフレームを送 信する方法として、 図 29のマスタノ一ド 10、 バックアップノード 20の構成
に示すように、 8?011送信部163とフレーム多重部 150の間に To p o 1 ogy Ch ang eフラグ付与部 199を設ける方法がある。
上述の方法では、 ノード冗長化プロトコル解析部 192が、 BPDU送信部 1 52から定期的に送信される B PDUフレームの T o p o l o gy Ch an g eフラグを立てるように、 T o p o 1 o g y C h a n g eフラグ付与部 199 に指示することにより、 STPメンバポートに含まれるノ一ド冗長化プロトコル のメンバポートに対して F 1 u s hメッセージを送信することを可能とする。 ノード 50、 60が、 To p o l o gy C h a n g eフラグの立った B P D Uフレームを受信すると、 STPの仕様に定められているように、 BPDUフレ —ムの受信ポート以外の全ての S TPのメンバポートから、 To p o l o gy
Ch ang eフラグを立てた BPDUフレームを送信すると共に、 FDB 340 のエントリのうち、 出力ポート情報が B PDUフレー Λの送信ポートであるェン トリを全て消去する。
ノード 50、 60が To p o l o gy C h a n g eフラグを立てた B P D U フレームを送信するポートには、 マスタノード 10が接続されているポート (P
1) が必ず含まれるため、 ノード 50、 60が B PDUフレームを受信する以前 に He 1 1 oメッセージを受信していたポートを記憶しておく必要はない。
以上のように、 STP網内の Awa r eノードに対する F 1 u s hメッセージ として、 Top o l o gy Ch a n g eフラグを立てた B PDUフレームを使 用することにより、既存の STP対応のノードで構成された STP網に対しても、 第 3の実施例のノード冗長化プロトコルを適用することが可能である。
上述のように、 第 3の実施例によれば、 He 1 1 oメッセージの宛先情報とし て、 既存の STP対応ノードが常に未知と判断する特殊アドレスを使用して、 H e 1 1 oメッセージが STP網内でブロードキャスト転送されるように構成し、 また、 既存の S TP対応ノードに対する F 1 u s hメッセ一ジをとして、 To p o l o gy Ch an eフラグを立てた B PDUを使用することにより、 既存 の S TP対応のノードに改良を加えることなく、 S TP網内のノードを冗長化す ることが可能である。
(第 4の実施例)
次いで、本発明の第 4の実施例によるネットヮ一クシステムについて説明する。 第 4の実施例においては、 2つの S TP網間の相互接続部分に、 本発明のノー ド冗長化プロトコルを適用することにより、 S T P網間の相互接続部分の信頼性 を向上させる方法について説明する。
図 32に、 マスタノード 10、 ノ ックアップノード 20とノード 50、 60及 び 70、 80から構成される STP網 1と、 マス夕ノード 10 a、 バックアップ ノ一ド 20 aとノード 90、 100から構成される STP網 2が、 マスタノード 10、 10 a、 ノ ックアップノード 20、 20 aを接続する 4本のリンクにより、 相互に接続された構成のネットワークシステムを示す。
以下に、 図 32に示すネットワークシステムに、 第 4の実施例におけるノード 冗長化プロトコルを適用する方法について説明する。 _
まず、 STP網 1のマスタノード 10、 ノ ックアップノード 20を冗長化され たノード対と見なし、 STP網 1のノ一ド 50、 60、 STP網 2のマスタノ一 ド 10 a、 バックアップノード 20 aをマス夕ノード 10、 バックアップノード
20のAwa r eノードと見なして、 第 1の実施例におけるノード冗長化プロト コルを適用する。
次に、 STP網 2のマス夕ノード 10 a、 バックアツプノ一ド 20 aを冗長化 されたノード対と見なし、 STP網 2のノード 90、 100、 STP網 1のマス 夕ノード 10、 ノ ックアップノード 20はマスタノード 10 a、 バックアツプノ
—ド 20 aの Aw a r eノードと見なして、 第 1の実施例におけるノード冗長化 プロトコルを適用する。
このとき、 マスタノード 10、 10 a、 ノ ックアップノード 20、 20 aは、 マスタノード 10、 バックアップノード 20から送信される He 1 1 oメッセ一 ジ及び F 1 u s hメッセージとマス夕ノード 10 a、 ノ ックアツプノ一ド 20 a から送信される He 1 1 oメッセ一ジ及び F 1 u s hメッセージを識別するため の I Dを、 He 1 1 oメッセ一ジ及び F 1 u s hメッセ一ジに格納する。
He 1 1 oメッセージ及び F 1 u s hメッセージを識別するための I Dの例と して、 第 2の実施例で説明した VR I Dを用いることができる。
このように、 He 1 1 oメッセ一ジ及び F 1 u s hメッセ一ジにノード冗長化 プロトコルが適用されたノード対を識別するための I Dを格納することによって、 マスタノ—ド 10、 10 a、 ノ ックアップノード 20、 20 aは、 He l l oメ ッセージ又は F 1 u s hメッセージを受信した場合に、 ノード冗長化プロトコル が適用されたノード対の 1つとして処理すべきか、 Awa r eノードとして処理 すべきかを判断することができる。
マスタノード 10、 10 a、 ノ ックアツプノ一ド 20、 20 a、 ノード 50、 60、 90、 100の動作は、 第 1及び第 2の実施例と同様であるので、 説明を 省略する。
上述のように、 本発明のノード冗長化プロトコルを適用することにより、 2つ の S TP網の相互接続部分の信頼性を向上することが可能である。
(第 5の実施例)
次いで、本発明の第 5の実施例によるネットワークシステムについて説明する。 第 5の実施例では、 STP網のルートノードに本発明のノード冗長化プロトコ ルを適用することにより、 障害回復に時間を要するルートノード障害を解決する ための方法について説明する。
図 33に、 第 5の実施例におけるノ一ド冗長化プロトコルを適用したネットヮ ークシステムを示す。
図 33において、 マスタノード 10、 バックアップノード 20はノード冗長化 プロトコルが適用されたノード対であり、 障害の発生していない通常時は、 マス 夕ノード 10がマスタモ一ドにあり、 ノ ックアツプノ一ド 20がバックアップモ ードにあるとする。
また、 ノード 30、 40、 50は、 マス夕ノード 10、 バックアップノード 2 0の Awa r eノードである。
マス夕ノード 10、バックアップノード 20と STP網に属さないノード 30、 40間の動作は第 1の実施例と同一であるため説明を省略し、 以下には、 STP 網におけるマスタノード 10、 ノ ックアツプノ一ド 20とノード 50間の動作に ついて説明する。
図 33の STP網に着目した場合、 マス夕ノード 10、 バックアップノード 2 0は共に S TP網のルートノードとして動作する。 .
マスタノード 10、 ノ ックアップノード 20の両方のノードを S T P網のル一 トノードとして機能させるために、 マスタノード 10及びバックアップノード 2 0の S TPのブリッジ I Dとして、 値が同一で、 かつ S TP網内の他のノードよ りも優先度の高いプリッジ I Dを設定する。
この場合、 マスタノード 10、 バックアップノード 20は、 同一のブリッジ I Dが格納された B PDUフレームを、 ノード 50に対して送信する。
同一のブリッジ I Dを有する B PDUフレームを 2つのポート P 1、 P 2で受 信した場合、 かつ、 そのブリッジ I Dの優先度が STP網内で最も高い場合、 S TP網内の Awa r eノード 50は、 優先度の高いル一トパスコスト (Ro o t P a t h Co s t) を有する BPDUフレームを受 ί言したポートをル一トポ一 ト (ポート状態はフォワーディング状態) として選択し、 優先度の低いルートパ スコストを有する BP DUフレームを受信したポートを代替ポート (ポート状態 はブロッキング状態) として選択する。
STP網内のノード 50、 70、 80配下の端末が、 STP網に属さないノー ド 30、 40配下の端末と通信可能であるためには、 マスタモードにあるノード が接続されたポートをノード 50がルートポートとして選択する必要がある。 このため、 マス夕モードにあるノードのル一トパスコストの値を、 バックアツ プモードにあるノ一ドのルートパスコストよりも小さく設定する。
例えば、 マスタモ一ドにあるルートパスコストの値を 「0」 に設定し、 バック アップモードにあるルートパスコストの値を 1に設定すれば良い。
図 33においては、 マス夕モードにあるマスタノード 10がルートパスコスト の値を 「0」 に設定した BPDUフレームをノード 50に送信し、 バックアップ モ一ドにあるバックアップノード 20がルートパスコストの値を 1に設定した B
PDUフレームをノード 50に送信する。
ノード 50は、 ポート P 1をルートポートとして選択し、 ポ一ト P 2を代替ポ —トとして選択すると共に、ポ一ト P 1のポ一ト状態をフォヮーディング状態に、 ポート P 2のポート状態をブロッキング状態に設定する。
上述のようにして、 S TP網のルートノードに対して、 本発明のノード冗長化 プロトコルを適用することができる。
以降では、 図 33のマスタノード 10がダウンして、 He 1 l oメッセージが 所定回数未着になつたことによって、 バックアップノード 20がバックアツプモ ードからマスタモ一ドに切り替わった場合について説明する。
ノード 50が、 ポート P 1のリンクダウンにより、 マスタノード 10のダウン (または、 マスタノード 10とノード 50間リンクの切断) を検出すると、 ノー ド 50はルートポートをポート P 1から代替ポートであるポート P 2に切り替え る。
また、 第 1の実施例で述べたように、 バックアップノード 20がバックアップ モードからマスタモードに切り替わつた場合、 ノ ックアツプノ一ド 20はノード 冗長化プロトコルのメンバポート P 1〜P 3から F 1 u s hメッセ一ジを送信す る。
F 1 u s hメッセ一ジを受信したノード 30、 40、 50は、 FDB 340の エントリのうち、 出力ポート情報が F 1 u s hメッセージ受信以前に He 1 l o メッセージを受信していたポート (P 1 ) であるエントリの出力ポート名を、 F 1 u s hメッセ一ジの受信ポート (P 2) に書き換える。
また、 マス夕モードに切り替わったバックアップノード 20は、 ノード 50に 対して、 ルートパスコストの値を 「0」 に設定した BPDUフレームを送信する ため、 ノード 50はパックアップノード 20が直接接続されたポート P 2をルー トポートに選択する。 従って、 マス夕ノード 10がダウンして、 バックアツプノ ード 20がマスタモードに切り替わった場合でも、 S TP網内のノード 50、 7 0、 80配下の端末は、 ノ ックアップノード 20を経由して、 ノード 30、 40 配下の端末と通信を続行することができる。
さらに、 マスタノード 10が障害から ¾旧して、 第 1の実施例で説明した手順 により、 マスタノード 10がマスタモ一ドに切り替わり、 ノ ックアップノード 2 0がバックアツプモードに切り替わつた場合、 マスタモードにあるマスタノード 10が、 バックアップモードにあるバックアツプノ一ド 20よりもルートパスコ ストの値の小さい BP DUフレームをノード 50に送信する。
従って、 ノード 5 0はマスタノード 1 0が直接接続されたポート P 1をルート ポートとして選択し、 バックアップノード 2 0が直接接続されたポート P 2を代 替ポートとして選択するため、 S T P網内のノード 5 0、 7 0、 8 0配下の端末 は、 マスタノード 1 0を経由して、 ノード 3 0、 4 0配下の端末と通信を続行す ることができる。
上述したように、 ノード冗長化プロトコルが適用されたノード対に S T P網で 最も優先度の高いブリッジ I Dを設定し、 マス夕モードにあるノードが、 バック アップモ一ドにあるノードよりも優先度の高いルートパスコストを有する B P D Uを送信することにより、 S T P網のルートノードを冗長化することを可能とし、 特に障害回復に時間を要するルートノードの障害の発生を効果的に抑制すること を可能とした。
また、 図 3 5のネットワークシステムに示すように—、 マスタノード 1 0及びバ ックアップノード 2 0に図 3 4の S T P網に属さないノード 3 0、 4 0が接続さ れないようなネットワークシステムに対しても、 第 5の実施例のノード冗長化プ 口トコルを適応することにより、 S T P網のル一トノードを冗長化することが可 能である。
図 3 5におけるマスタノード 1 0、 バックアップノード 2 0の動作は、 ノード 冗長化プロトコルのメンバポートとして、 ポート P 3、 P 4のみが設定されてい ること以外は、上述の図 3 4のネットワークシステムにおけるマス夕ノード 1 0、 バックアップノード 2 0に動作と同様である。
また、 図 3 5におけるノード 5 0、 6 0の動作は、 図 3 4のネットワークシス テムにおけるノード 5 0の動作と同様である。
以上のように、 S T P網のエッジ部分に位置しないルートノードに対しても、 第 5の実施例のノード冗長化プロトコルを適応して、 ル一トノードを冗長化する ことが可能である。
なお、 第 5の実施例では、 S T P網のルートノードをマスタノード 1 0とバッ クアップノード 2 0によって冗長化する場合について説明したが、 図 3 3のネッ トワーク網が、 通常の S T P網ではなく、 本願出願人による特願 2 0 0 3— 0 4 1 8 3 8号 (特開 2 0 0 4— 1 4 0 7 7 7号:文献 1 ) において提案した、 複数
のノードを接続したネットワーク (STP網) に対しても、 本発明を適用可能で ある。 文献 1記載のネットヮ一ク (STP網) とは、 各エッジノードをルートノ ードとする複数のスパエングツリーによつて複数の転送経路を設定し、 フレーム を転送する場合に、 フレームの転送先が接続されるエッジノードをルートノード とするスパニングッリ一によって設定された経路を用いてフレーム転送を行うよ うな S TP網である。
ここで、 特願 2003— 041838号 (特開 2004— 140777号:文 献 1) に提案される S TP網について簡単に説明する。
図 46のような 6つのノードで構成されるネットヮ一クを例として、 文献 1記 載のネットヮ一ク (STP網) について以下に説明する。 この例では、 全てのノ —ド(1 1〜16)がエッジノードとなっている。
図 46は、ノード 1 1をルートノードとするスパニングツリーの構成図である。 このスパニングッリ一をツリー 61とする。 ツリー 61は、 ノード 1 1のプライ オリティ値を、 ノード 12〜ノード 16の各ノードよりも小さい値に設定して作 成される。 ツリー 61により設定される経路は、 ノ^ "ド 12〜16の何れかのノ —ドからノード 1 1に向かうフレームのュニキャスト送信、 および、 ノード 1 1 よりノード 12〜ノ一ド 16の各ノードに対して、 ブロードキャストフレームを 送信する場合に利用される。
図 47は、ノード 12をルートノードとするスバニングツリーの構成図である、 このスバニングツリーをツリー 62とする。 ッリ一 62は、 ノード 12のプライ オリティ値を、 ノード 1 1およびノード 13〜ノード 16の各ノードよりも小さ い値に設定して作成される。 ツリー 62により設定される経路は、 ノード 1 1ま たはノード 13〜ノード 16の何れかのノードからノード 12に向かうフレーム のュニキャスト送信、 および、 ノード 12よりノード 1 1およびノード 1 3〜ノ ード 16の各ノードに対して、 ブロードキャストフレームを送信する場合に利用 される。
図 48は、ノード 13をルートノードとするスバニングツリーの構成図である。 このスパニングツリーをッリ一 63とする。 ツリー 63は、 ノード 13のプライ オリティ値を、 ノード 1 1〜ノード 12およびノード 14〜ノード 1 6の各ノー
ドよりも小さい値に設定して作成される。 ツリー 6 3により設定される経路は、 ノード 1 1〜ノード 1 2またはノード 1 4〜ノード 1 6の何れかのノードからノ ード 1 3に向かうフレームのュニキャスト送信および、 ノード 1 3よりノード 1 1〜ノード 1 2およびノード 1 4〜ノード 1 6の各ノードに対して、 ブロードキ ヤストフレームを送信する場合に利用される。
図 4 9は、ノ一ド 1 4をルートノードとするスパニングッリーの構成図である。 このスパニングツリーをツリー 6 4とする。 ツリー 6 4は、 ノード 1 4のプライ オリティ値を、 ノード 1 1〜ノード 1 3およびノ一ド 1 5〜ノード 1 6の各ノー ドよりも小さい値に設定して作成される。 ツリー 6 4により設定される経路は、 ノ一ド 1 1〜ノード 1 3またはノ一ド 1 5〜ノード 1 6の何れかのノードからノ
—ド 1 4に向かうフレームのュニキャスト送信および、 ノード 1 4よりノード 1 1〜ノード 1 3およびノード 1 5〜ノード 1 6の各ノードに対して、 ブロードキ ヤス卜フレームを送信する場合に利用される。
図 5 0は、ノード 1 5をルートノードとするスパニングツリーの構成図である。 このスパニングツリーをツリー 6 5とする。 ツリー 6 5は、 ノード 1 5のプライ オリティ値を、 ノード 1 1〜ノード 1 4およびノード 1 6の各ノードよりも小さ い値に設定して作成される。 ツリー 6 5により設定される経路は、 ノード 1 1〜 ノード 1 4またはノード 1 6の何れかのノードからノード 1 5に向かうフレーム のュニキヤスト送信および、 ノード 1 5よりノード 1 1〜ノード 1 4およびノー ド 1 6の各ノードに対して、 ブロードキャストフレームを送信する場合に利用さ れる。
図 5 1は、ノード 1 6をルートノードとするスパニングツリーの構成図である。 このスパニングツリーをッリ一 6 6とする。 ツリー 6 6は、 ノード 1 6のプライ オリティ値を、 ノード 1 1〜ノード 1 5よりも小さい値に設定して作成される。 ツリー 6 6により設定される経路は、 ノード 1 1〜ノード 1 5の何れかのノード からノード 1 6に向かうフレームのュニキャスト送信および、 ノード 1 6よりノ ード 1 1〜ノード 1 5の各ノ一ドに対して、 ブロードキャストフレームを送信す る場合に利用される。
次に、 図 4 6〜図 5 1を参照して、 前記の各図におけるノード 1 1〜ノード 1
6の各ノードが、 ノード 1 1〜ノード 1 6の各ノ一ドまたは各ノード配下の端末 にフレ一ムを送信する場合の手順について述べる。 なお、 各リンクのコストは等 しく、 すでに各図におけるツリー 6 1〜ツリー 6 6の各ッリ一は構成が完了し、 トポロジが安定しているとする。
ノード 1 2〜ノード 1 6の各ノードから、 ノード 1 1またはその配下の端末に フレームをュニキャスト送信する場合は、 図 4 6記載のッリ一 6 1で設定された 経路を使用する。 例えば、 ノード 1 5からノード 1 1へフレームを送信する場合 は、 ノード 1 5は、 データフレームにツリー 6 1を識別するタグ (例えば、 ノ一 ド 1 1のノード I D) を付加して、 ッリ一 6 1における上流側ポ一ト (ツリー 6 1における S T Pのルートポート) からデ一タフレームを送信する。 ツリー 6 1 で設定された経路上の各ノードは、データフレームのタグを参照することにより、 データフレームの転送に使用するツリー (デ一夕フレームの宛先がノード 1 1の 場合はツリー 6 1 ) を識別し、 ツリー 6 1における上流側ポートからデータフレ ームを送信する。 以上のようにして、 デ一夕フレームはッリ一 6 1のルートノ一 ドであるノ一ド 1 1に転送される。
ノード 1 1およびノード 1 3〜ノード 1 6の各ノードから、 ノード 1 2または その配下の端末にフレームをュニキヤスト送信する場合は、 図 4 7記載のツリー 6 2で設定された経路を使用する。 例えば、 ノード 1 4からノード 1 2へフレー ムを送信する場合は、 ノ一ド 1 4は、 デ一夕フレームにッリ一 6 2を識別する夕 グ (例えば、 ノード 1 2のノード I D) を付加して、 ツリー 6 2における上流側 ポート (ツリー 6 2における S T Pのルートポート) からデータフレームを送信 する。 ツリー 6 2で設定された経路上の各ノードは、 データフレームのタグを参 照することにより、 データフレームの転送に使用するツリー (データフレームの 宛先がノード 1 2の場合はツリー 6 2 ) を識別し、 ツリー 6 2における上流側ポ ートからデ一夕フレームを送信する。 以上のようにして、 デ一夕フレームはッリ 一 6 2のルートノードであるノード 1 2に転送される。
ノード 1 1〜ノード 1 2およびノード 1 4〜ノード 1 6の各ノードから、 ノ一 ド 1 3またはその配下の端末にフレームをュニキヤスト送信する場合は、 図 4 8 記載のツリー 6 3で設定された経路を使用する。 例えば、 ノード 1 1からノード
1 3へフレームを送信する場合は、 ノード 1 1は、 データフレームにツリー 6 3 を識別するタグ (例えば、 ノード 1 3のノード I D) を付加して、 ッリ一 6 3に おける上流側ポー卜 (ツリー 6 3における S T Pのルートポート) からデ一タフ レームを送信する。 ツリー 6 3で設定された経路上の各ノードは、 データフレ一 ムのタグを参照することにより、 データフレームの転送に使用するツリー (デー 夕フレームの宛先がノード 1 3の場合はツリー 6 3 ) を識別し、 ツリー 6 3にお ける上流側ポートからデータフレームを送信する。 以上のようにして、 デ一タフ レ一ムはツリー 6 3のル一トノードであるノード 1 3に転送される。
ノード 1 1〜ノード 1 3およびノード 1 5〜ノード 1 6の各ノードから、 ノ一 ド 1 4またはその配下の端末にフレームをュニキャスト送信する場合は、 図 4 9 記載のツリー 6 4で設定された経路を使用する。 例えば、 ノード 1 2からノード 1 4へフレームを送信する場合は、 ノード 1 2は、 デ一夕フレームにッリ一 6 4 を識別するタグ (例えば、 ノード 1 4のノード I D) を付加して、 ツリー 6 4に おける上流側ポート (ツリー 6 4における S T Pのル一トポート) からデータフ レームを送信する。 ッリ一 6 4で設定された経路上の各ノードは、 デ一タフレ一 ムのタグを参照することにより、 デ一夕フレームの転送に使用するツリー (デー タフレームの宛先がノード 1 4の場合はツリー 6 4 ) を識別し、 ツリー 6 4にお ける上流側ポートからデータフレ一ムを送信する。 以上のようにして、 デ一タフ レームはツリー 6 4のルートノードであるノ一ド 1 4に転送される。
ノード 1 1〜ノード 1 4およびノード 1 6の各ノードから、 ノード 1 5または その配下の端末にフレームをュニキヤスト送信する場合は、 図 5 0記載のツリー 6 5で設定された経路を使用する。 例えば、 ノード 1 6からノード 1 5へフレ一 ムを送信する場合は、 ノ一ド 1 6は、 データフレームにツリー 6 5を識別する夕 グ (例えば、 ノード 1 5のノード I D ) を付加して、 ツリー 6 5における上流側 ポート (ツリー 6 1における S T Pのルートポート) からデ一タフレームを送信 する。 ツリー 6 5で設定された経路上の各ノードは、 データフレームのタグを参 照することにより、 データフレームの転送に使用するツリー (データフレームの 宛先がノード 1 5の場合はツリー 6 5 ) を識別し、 ツリー 6 5における上流側ポ ートからデータフレームを送信する。 以上のようにして、 データフレームはッリ
一 6 5のルートノードであるノード 1 5に転送される。
ノ一ド 1 1〜ノード 1 5の各ノードから、 ノード 1 6またはその配下の端末に フレ一ムをュ二キャスト送信する場合は、 図 5 1記載のツリー 6 6で設定された 経路を使用する。 例えば、 ノード 1 4からノード 1 6へフレームを送信する場合 は、 ノード 1 4は、 デ一タフレームにツリー 6 6を識別するタグ (例えば、 ノー ド 1 6のノード I D ) を付加して、 ッリ一 6 6における上流側ポート (ツリー 6 6における S T Pのルートポート) からデ一タフレームを送信する。 ツリー 6 6 で設定された経路上の各ノードは、データフレームのタグを参照することにより、 データフレームの転送に使用するツリー (データフレームの宛先がノード 1 6の 場合はツリー 6 6 ) を識別し、 ツリー 6 6における上流側ポートからデータフレ
—ムを送信する。 以上のようにして、 データフレームはツリー 6 6のル一トノ一 ドであるノ一ド 1 6に転送される。 - 以上説明した文献 1記載の S T P網のエッジノード (スバニングッリ一のル一 トノード) に対して、 第 5の実施例のノード冗長化プロトコルを適用して、 エツ ジノードを冗長化することが可能である。
また、 文献 1記載の S T P網の複数のエッジノードに対して、 第 5の実施例の ノード冗長化プロトコルを適用する場合は、 第 2の実施例で説明したように、 ノ —ド冗長化プロトコルを適用されたノード対を識別する I Dを H e 1 1 oメッセ —ジ及び F 1 u s hメッセージに格納し、 他のノード対が送信した H e 1 1 oメ ッセージ及び F 1 u s hメッセージによってノード冗長化プロトコルモジュール の誤動作を防止することにより、 複数のエッジノードを冗長化することが可能で ある。
以上説明した文献 1記載のネットワーク (S T P網) に対して、 第 5の実施例 のノード冗長化プロトコルを適用し、 S T P網のエッジノード (スパニングッリ 一のルートノード) を冗長化することにより、 エッジノードのマスタノードに障 害が発生したとしても、 バックアップノードがマスタモ一ドに切り替わることに より、 フレーム転送を続行することが可能となる。
なお、 文献 1記載の S T P網に本発明を適用することによりルートノードを冗 長化した場合は、 ノード冗長化プロトコルのメンバポートのうち、 S T Pのメン
バポートに属さないポートに対してのみ F 1 u s hメッセージを送信すれば良い。 その理由は、 文献 1記載のデータ転送方式による S TP網においては、 データ フレームを中継するノードが FDBではなく、 デ一夕フレームのタグに格納され たフォワーディング情報 (デ一夕フレームの転送に使用するスバニングツリーを 識別するための情報) に基づいてデータフレームを中継しているためである。 その結果、 第 5の実施例のノード冗長化プロトコルが適用された文献 1記載の S TP網においては、 Awa r eノード 50が FDBを書き換える時間だけ、 高 速に障害から回復することが可能である。
(第 6の実施例)
次いで、本発明の第 6の実施例によるネットワークシステムについて説明する。 第 6の実施例においては、 第 5の実施例において示した文献 1提案のデータ転 送方式による S T P網間を相互に接続する部分に、 本発明のノード冗長化プロト コルを適用した場合について説明する。
図 36に、 マスタノード 10、 バックアップノード 20とノード 50、 60及 び 70、 80から構成される STP網 1と、 マスタノード 10 a、 バックアップ ノード 20 aとノ一ド 90、 100から構成される S TP網 2とが、 マスタノ一 ド 10、 10 a、 バックアップノード 20、 20 aを接続する 4本のリンクによ り、 相互に接続された構成のネットワークシステムを示す。
S T P網 1及び S T P網 2は、 文献 1提案のデータ転送方式による S T P網で める。
ノード 50、 60、 70、 80、 90、 100は、 S TPモジュール 360を 搭載するが、 ノード冗長化プロトコルモジュール 370を搭載しない既存の ST P対応のノードとする。
以下に、 図 36に示すネットワークシステムに、 第 6の実施例におけるノード 冗長化プロトコルを適用する場合について説明する。
まず、 S TP網 1のマスタノード 10、 パックアップノード 20を冗長化され た一対のノードと見なし、 S TP網 1のノ一ド 50、 60、 S TP網 2のマス夕 ノード 10 a、 ノ ックアップノード 20 aをマスタノ一ド 10、 バックアツプノ
ード 20の Awa r eノードと見なして、 第 5の実施例において説明したノード 冗長化プロ卜コルを適用する。
次に、 STP網 2のマスタノード 10 a、 バックアップノード 20 aを冗長化 された一対のノードと見なし、 STP網 2のノード 90、 100、 STP網 1の マスタノード 10、 バックアップノード 20をマスタノード 10 a、 バックアツ プノ一ド 20 aの Aw a r eノードと見なして、 第 5の実施例において説明した ノード冗長化プロトコルを適用する。
このとき、 第 6の実施例におけるノード冗長化プロトコルにおいては、 第 4の 実施例と同様に、 マスタノード 10、 10 a、 ゾ ックアップノード 20、 20 a は、 マス夕ノード 10、 バックアップノード 20から送信される He 1 l oメッ セージ及び F 1 u s hメッセ一ジとマスタノ一ド 10 a、 パックアップノード 2 0 aから送信される He 1 1 oメッセージ及び F 1 u s hメッセージを区別する ための I Dを、 He 1 1 oメッセージ及び F 1 u s hメッセージに格納する。 ノード 50、 60、 70、 80、 90、 100は既存の S T P対応のノードで あり、 He 1 1 oメッセージを認識できないため、 各ノードの属する S TP網に おいて He 1 1 oメッセージをブロードキャスト転送してしまうという問題があ る。
この問題を解消するために、 第 6の実施例におけるノード冗長化プロトコルに おいては、 第 3の実施例で説明したように、 マスタノード 10、 10 a、 ϊ%、つり アツプノ一ド 20、 20 aは、 ノード冗長化プロトコルのメンバポートのうち、
S TPメンバポートに含まれるポート (P 3、 P 4) には、 He 1 1 oメッセ一 ジを送信しないものとする。
また、 第 5の実施例で説明したように、 文献 1記載の STP網では FDBを参 照してフレームを転送しないため、 Aw a r eノード 50、 60、 90、 100 に対して F 1 u s hメッセージの送信が不要である。 従って、 第 6の実施例にお いては、 マスタノード 10、 10 a、 ゾ ックアツプノ一ド 20、 20 aは、 ノ一 ド冗長化プロトコルのメンバポートのうち、 STPのメンバポートに含まれるポ ート (P 3、 P 4) には、 F 1 u s hメッセージを送信しないものとする。
S TP網 1及び S TP網 2が文献 1記載の S TP網ではなく、 通常のフレーム
転送を行う ST P網である場合には、 第 3の実施例で説明したように、 ノード冗 長化プロトコルのメンバポートのうち、 S TPのメンバポートに含まれるポート (P 3、 P 4) に、 F 1 u s hメッセージとして、 To p o l o gy C an g eフラグを立てた B PDUを使用すれば良い。
以上のようにして、 文献 1提案のデータ提案方式による S TP網間を相互接続 する部分にノード冗長化プロトコルを適用することができる。
しかしながら、 以下に述べるような問題が生じる可能性がある。
図 36に示すネットワークシステムにおいて、 マスタノード 10とバックアツ プノード 20 a間のリンク及びバックアップノード 20とマス夕ノード 10 a間 のリンクが同時に切断された場合、 冗長化された 2つのノード対 (マスタノード
10とバックアップノード 20、 マス夕ノード 10 aとバックアツプノ一ド 20 a) 間で、 He l l oメッセ一ジ及び F 1 u s hメッセージの送受信が不可能に なるため、 パックアップモードにあるノード (バックアップノード 20、 20 a) は He 1 1 oメッセージ未着によりマスタモードに切り替わる。
したがって、 図 37に示すように、 マス夕ノード 10、 マスタノード 10 a、 バックアップノード 20、 バックアップノード 20 aの動作状態が全てマス夕モ —ドになるという状態が発生する。
また、 マス夕ノード 10とマス夕モ一ド 10 a間のリンク及びバックアツプノ —ド 20とバックアップノード 20 a間のリンクが同時に切断された場合も、 マ ス夕ノード 10、 マスタノード 10 a、 ノ ックアップノード 20、 バックアップ ノード 20 aの動作状態が全てマスタモ一ドになるという状態が発生する。
上述の状態において、 S T P網 1と S T P網 2間でフレームが伝送されなくな る可能性があるという問題がある。
以降に、 図 37を参照して、 S TP網 1と S TP網 2の間でフレームを伝送で きなくなる理由を説明する。
マスタノード 10とバックアップノード 20は共にマスタモードであるため、 ノ一ド 50、 60は、 ポート P 1及び P 2で、 S TPメンバポートで受信する B PDUのうちで優先度の最も高いプリッジ I Dを有し、 かつ同一のルートパスコ ストを有する BPDUを受信する。
同様に、 マスタノ一ド 10 aとバックアツプノ一ド 20 aは共にマス夕モード であるため、 ノ一ド 90はポート P 1及び P 2で、 ノ一ド 100はポ一ト P 2及 び P 3で、 S TPメンバポ一卜で受信する B PDUのうちで優先度の最も高いブ リッジ I Dを有し、 かつ同一のルートパスコストを有する BP DUを受信する。 ノード 50、 60、 90、 100は、 ブリッジ I D及びルートパスコストが同 一の B P D Uを異なるポートで受信した場合、 ブリッジ I D及びルートパスコス 卜の優先度だけでは、 ルートポート及び代替ポートを決定することができないた め、 ブリッジ I D及びルートパスコスト以外のパラメータ (例えば、 BPDUが 送信されたポートのポート番号や B PDUを受信したポートのポ一ト番号など) の優先度を用いて、 ルートポー卜及び代替ポートを決定する。
以降は、 BPDUを受信したポートのうち、 ポート番号が最小のポートをル一 トポートとし、 その次に小さいポートを代替ポ一卜どして選択する場合について 説明する。
ノード 50、 60は、 ポート P 1及び P 2で、 優先度の最も高いブリッジ I D を有し、 かつ同一のルートパスコストを有する B PDUを受信するため、 ポート 番号が最小のポート P 1をル一トポートとして、 ポ一ト P 2を代替ポートとして 選択する。
同様に、 ノ一ド 90は、 ポート P 1をルートポ一トとして、 ポート P 2を代替 ポートとして選択し、 ノード 100は、 ポート 2をル一トポートとして、 ポート P 3を代替ポートとして選択する。
以上で説明したように、 ノード 30、 40、 50、 60が、 マスタノ一ド 10 及びマスタノード 10 aの接続されたポートをルートポートとして選択した場合、 マス夕ノード 10とマスタノ一ド 10 a間のリンクが切断されているため、 ST P網 1と S T P網 2の間でフレームを伝送することができなくなってしまうとい う問題が生じる。
以下に、 図 36のマスタノ一ド 10、 10 a、 ノ ックアップノード 20、 20 aにおけるノード冗長化プロトコルの動作状態が全てマス夕モードになつた場合 においても、 フレームを伝送できるようにする方法を説明する。
第 6の実施例におけるノード冗長化プロトコルにおいては、 図 38に示すよう
に、 マスタノード 10、 10 a、 ノ ックアップノード 20、 20 aに対して、 優 先度を設定すると共に、 ノード冗長化プロトコルの動作状態によって、 ルートパ スコストを変更するように構成する。
図 38の例では、 マス夕ノード 10の優先度を 「H i gh」 、 バックアツプノ ード 20の優先度を 「L ow」 、 マスタノード 10 aとバックアップノード 20 aの優先度をそれぞれ 「E t c」 と設定している。
H i gh, L ow, E t cの優先度は、 H i g hの優先度が最も高く、 Low の優先度が 2番目に高く、 E t cの優先度が最も低いとする。
さらに、 マスタノード 10のマスタモ一ド時のルートパスコストの値を「0」、 バックアップモード時のルートパスコストの値を 「3」 とし、 バックアツプノ一 ド 20のマス夕モード時のルートパスコストの値を 「1」 、 バックアップモード 時のル一トパスコストの値を 「3」 としている。 - また、 S TP網 2側のマスタノ一ド 10 aとバックアップノード 20 aのバッ クアップモード時のルートパスコストの値を 「3」 とし、 マスタモード時のル一 トパスコストの値については、 優先度が 「H i gh」 のノードと接続しているポ
—トがリンクアップしている時に 「1」 、 リンクダウンしている時に 「2」 が設 定されるように構成している。
なお、 図 38に示す設定内容は一例であって、 一方の S TP網内のノード対の 優先度を 「H i gh」 又は 「Low」 とし、 他方の STP網内のノード対の優先 度を 「E t (:」 とし、 優先度 「H i gh」 のノードのル一トパスコストの値を、 優先度 「L ow」 のノードのルートパスコストの値より小さく設定し、 かつ、 優 先度 「E t c」 のノードについては、 優先度が 「H i gh」 のノードと接続して いるポ一トがリンクアップしているノードのル一トパスコストの値を、 ポー卜が リンクダウンしているノードのル一トパスコストの値より小さくするという規則 が保たれればよく、 設定内容は自由に変更することができる。
上記のように、 図 38の設定内容に基づいて、 それぞれ優先度とルートパスコ ストの値を設定したことにより、 例えば、 STP網 1側のマス夕ノード 10とパ ックアップノード 20、 S T P網 2側のマスタノ一ド 10 aとバックアツプノ一 ド 20 aの動作状態が全てマスタモードとなった場合、 STP網 1のマスタノ
ド 10とバックアップノード 20については、 ルートパスコストの値が小さい、 マスタノード 10に接続されたポート P 1がルートポートとして選択され、 ST P網 2のマスタノード 10 aとバックアップノード 20 aについては、優先度「H i g h」 のマスタノ一ド 10と接続しているポートがリンクアップしているマス 夕ノード 10 aのルートパスコストの値がバックアップノード 20 aのそれより も小さくなるので、 マスタノード 10 aに接続されたポート (ノード 90の場合 はポート P l、 ノード 100の場合はポート P 2) がルートポートとして選択さ れることになる。
従って、 ノード 50、 60、 90、 1 00は、 マス夕ノード 10、 1 0 a、 バ ックアップノード 20、 バックアップノード 20 aのうち、 これらのノードを相 互接続するリンクがアクティブなノード (上述の場合では、 マスタノード 10と マスタノード 10 a) に接続されているポートをルートポートとして選択するた め、 マスタノード 10、 10 a、 バックアップノード 20、 バックアツプノ一ド 20 aが全てマスタモードになった場合でも、 データフレ一ムの転送が可能であ る。
上記のように第 6の実施例によれば、 特願 2003— 041838号 (特開 2 004— 140777号:文献 1) 提案のデータ転送方式による S T P網間を相 互接続したネットワークシステムにおいて、 相互接続部分のマスタノードとバッ クアップノードの全てがマス夕モ一ドとなってもデ一夕フレ ムの伝送ができな くなる可能性があるという問題が解消されることにより、 信頼性の高いノード冗 長化を可能としたネットワークシステムを実現することができるようになる。 また、 S TP網のルートノードのノード冗長化が実現され、 特に障害回復に時 間を要するルートノードの障害の発生を効果的に抑制することができるようにな る。
なお、 上記各実施例のノード冗長化ネットワークシステムにおける、 マスタノ
—ド 10、 ゾ ックアツプノ一ド 20及びノード 50、 60、 30、 40の各機能 ついては、 ハードウェアによることは勿論として、 それらの各機能を有するノ一 ド冗長化制御プログラムを、 各ノードを構成するコンピュータ処理装置上で実行 することで実現することが可能である。
このノード冗長化制御プログラムは、 磁気ディスク、 半導体メモリその他の記 録媒体に格納され、 その記録媒体からコンピュータ処理装置に口一ドされ、 コン ピュー夕処理装置の動作を制御することにより、 上述した各機能を実現する。 以上好ましい実施例をあげて本発明を説明したが、 本発明は必ずしも上記実施 例に限定されるものではなく、 その技術的思想の範囲内において様々に変形して 実施することができる。
本発明のノード冗長化ネットワークシステムによれば、 以下に述べるような優 れた効果が達成される。
第 1に、ポートの管理状態が競合することなく、 ノード冗長化プロトコルを他の プロトコルを適用したネットワーク内のノードに適用させることを可能となる。 第 2に、 ノード冗長化プロトコルを他のプロトコルを適用したネットワーク内 のノードに適用させた場合に、 マスタモードとバックアップモードの切り替え時 に、 他のプロトコルによるネットワーク側のノードの F D Bがエージァゥトする まで通信できないという問題が解消される。
第 3に、 S T P網間を相互に接続したネットワークシステムであって、 信頼性 の高いノード冗長化を可能としたシステムを実現することができる。
第 4に、 S T P網のルートノードのノード冗長化が実現され、 特に障害回復に 時間を要するルートノ一ドの障害の発生を効果的に抑制することが可能となる。