(57)【要約】通信障害で異常事態が生じても、異常事態から短時間で復帰可能な信頼性の高いネットワークノードを提供する。宛先ＭＡＣアドレスとポートラベルとの関係を登録するＦＤＢ４７０と、入力ポートとポートラベルとの関係を登録する入力ポートテーブル４８０と、ポートラベルと出力ポートとの関係を登録するポートラベルテーブル４９０とを配備したネットワークノードが、フレームの受信時に、フレームの送信元ＭＡＣアドレスと入力ポートテーブル４８０の入力ポートに対して登録されているポートラベルとの関係をＦＤＢ４７０に登録し、フレームの送信時に、ＦＤＢ４７０の宛先ＭＡＣアドレスに対して登録されているポートラベルに対応するポートラベルテーブル４９０に登録されている出力ポートにフレームを送信し、ＦＤＢ部４５０のフラッシュ又は更新処理時に、入力ポートテーブル４８０及びポートラベルテーブル４９０の内容を変更する。
2007086539.tif 000002
【特許請求の範囲】
【請求項１】
転送先情報によってフレームをネットワーク上に転送するネットワークノードにおいて、
フレームの宛先情報と関係付けて仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルを備えることを特徴とするネットワークノード。
【請求項２】
転送先情報によってフレームをネットワーク上に転送するネットワークノードにおいて、
フレームの宛先情報と、仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報とを関係付ける仮想的転送先情報テーブルと、
前記仮想的転送先情報と前記転送先情報とを関係付ける転送先情報テーブルとを備えることを特徴とするネットワークノード。
【請求項３】
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの前記仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更することを特徴とする請求項１又は請求項２に記載のネットワークノード。
【請求項４】
前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルを備えることを特徴とする請求項１から請求項３の何れか１項に記載のネットワークノード。
【請求項５】
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送することを特徴とする請求項４に記載のネットワークノード。
【請求項６】
受信したフレームの送信元情報を、前記受信情報テーブルに基づいて、受信した前記フレームの受信情報に関係付けられている前記仮想的転送先情報と関係付けて前記仮想的転送先情報テーブルに登録することを特徴とする請求項４又は請求項５に記載のネットワークノード。
【請求項７】
受信した前記フレームを、受信した前記フレームの送信元情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送することを特徴とする請求項６に記載のネットワークノード。
【請求項８】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている前記仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている前記転送先情報に基づいて、受信した前記フレームを転送することを特徴とする請求項２から請求項７の何れか１項に記載のネットワークノード。
【請求項９】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている転送先情報が転送無効である場合、
又は、
受信した前記フレームの宛先情報に関する前記仮想的転送先情報テーブルのエントリが無効である場合、
又は、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、取得した前記仮想的転送先情報に関する前記転送先情報テーブルのエントリが無効である場合に、
受信した前記フレームをブロードキャスト転送することを特徴とする請求項２から請求項８の何れか１項に記載のネットワークノード。
【請求項１０】
前記転送先情報テーブルに登録されている転送先情報を、前記転送先情報と異なる転送先情報に置換することによって、フレームの宛先情報と転送先情報との関係を更新することを特徴とする請求項２から請求項９の何れか１項に記載のネットワークノード。
【請求項１１】
前記転送先情報テーブルに登録されている転送先情報を消去、又は、無効な情報に置換することによって、フレームの宛先情報と前記転送先情報との関係を破棄することを特徴とする請求項２から請求項１０の何れか１項に記載のネットワークノード。
【請求項１２】
前記転送先情報テーブルのエントリにエントリの有効性を示すフィールドを持たせたことを特徴とする請求項２から請求項１１の何れか１項に記載のネットワークノード。
【請求項１３】
前記仮想的転送先情報テーブルにおいてフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記仮想的転送先情報に関する前記転送先情報テーブルのエントリの有効性を示す前記フィールドにエントリの無効を示す情報を登録することによって、
前記宛先情報と前記転送先情報との関係を破棄し、前記宛先情報を有するフレームを前記転送先情報以外の転送先情報に基づいて転送することを特徴とする請求項１２に記載のネットワークノード。
【請求項１４】
前記フレームの宛先情報と前記転送先情報との関係を破棄した後、前記転送先情報テーブルにおいて前記転送先情報に関係付けられていた、前記仮想的転送先情報テーブルと前記受信情報テーブルの何れか一方、又は、両方の仮想的転送先情報に関するエントリを削除することを特徴とする請求項１０から請求項１３の何れか１項に記載のネットワークノード。
【請求項１５】
前記ネットワークの状態に基づいて、前記転送先情報テーブルにおいて無効な転送先情報に関係付けられている仮想的転送先情報を取得し、
前記受信情報テーブルに登録されている前記仮想的転送先情報を、前記仮想的転送先情報と異なり、前記転送先情報テーブルにおいて有効な転送先情報と関連付けられた仮想的転送先情報に置換することを特徴とする請求項４から請求項１４の何れか１項に記載のネットワークノード。
【請求項１６】
前記受信情報テーブルにおける置換後の前記仮想的転送先情報と前記受信情報との関係を、仮想的転送先情報と転送先情報との関係として前記転送先情報テーブルに登録することを特徴とする請求項１５に記載のネットワークノード。
【請求項１７】
前記受信情報テーブルにおいて１個の受信情報に対して複数種類の仮想的転送先情報を関係付けることを特徴とする請求項４から請求項１６の何れか１項に記載のネットワークノード。
【請求項１８】
受信したフレームの送信元情報と、
前記受信情報テーブルにおいて前記フレームの受信情報に関係付けられている複数種類の仮想的転送先情報のうち、ネットワークノード自身の状態に基づいて選択された１個の仮想的転送先情報との関係を、フレームの宛先情報と仮想的転送先情報との関係として前記仮想的転送先情報テーブルに登録することを特徴とする請求項１７に記載のネットワークノード。
【請求項１９】
前記転送先情報が、出力先情報識別子、ネットワークノード識別子、ＶＬＡＮ識別子、又は、通信経路識別子の何れか１つの識別子であることを特徴とする請求項１から請求項１８の何れか１項に記載のネットワークノード。
【請求項２０】
前記フレームの受信情報が、
出力先情報識別子、及び、ネットワークノード識別子、及び、ＶＬＡＮ識別子、及び、通信経路識別子の何れか１つ、又は、前記識別子を任意に組み合わせて構成される情報であることを特徴とする請求項４から請求項１９の何れか１項に記載のネットワークノード。
【請求項２１】
前記仮想的転送先情報が、
前記出力先情報テーブルが格納される記憶デバイスにおいて、
前記仮出力先情報に関係付けられている出力先情報が格納される記憶領域を指示するアドレスであることを特徴とする請求項１から請求項２０の何れか１項に記載のネットワークノード。
【請求項２２】
転送先情報によってフレームをネットワーク上に転送するネットワークノード上で実行されるフレーム転送プログラムであって、
フレームの宛先情報と関係付けて仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの前記仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する機能を前記ネットワークノードに持たせることを特徴とするフレーム転送プログラム。
【請求項２３】
転送先情報によってフレームをネットワーク上に転送するネットワークノード上で実行されるフレーム転送プログラムであって、
フレームの宛先情報と、仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報とを関係付ける仮想的転送先情報テーブルと、
前記仮想的転送先情報と前記転送先情報とを関係付ける転送先情報テーブルとを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する機能を前記ネットワークノードに持たせることを特徴とするフレーム転送プログラム。
【請求項２４】
前記テーブルと、前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルとに基づいて、
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に従って転送する機能を前記ネットワークノードに持たせることを特徴とする請求項２２又は請求項２３に記載のフレーム転送プログラム。
【請求項２５】
受信したフレームの送信元情報を、前記受信情報テーブルに基づいて、受信した前記フレームの受信情報に関係付けられている前記仮想的転送先情報と関係付けて前記仮想的転送先情報テーブルに登録する機能と、
受信した前記フレームを、受信した前記フレームの送信元情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２４に記載のフレーム転送プログラム。
【請求項２６】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている前記仮想的転送先情報を取得する機能と、
前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている前記転送先情報に基づいて、受信した前記フレームを転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２５の何れか１項に記載のフレーム転送プログラム。
【請求項２７】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている転送先情報が転送無効である場合、
又は、
受信した前記フレームの宛先情報に関する前記仮想的転送先情報テーブルのエントリが無効である場合、
又は、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、取得した前記仮想的転送先情報に関する前記転送先情報テーブルのエントリが無効である場合に、
受信した前記フレームをブロードキャスト転送する機能を前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２６の何れか１項に記載のフレーム転送プログラム。
【請求項２８】
前記転送先情報テーブルに登録されている転送先情報を、前記転送先情報と異なる転送先情報に置換することによって、フレームの宛先情報と転送先情報との関係を更新する機能と、
置換後の転送先情報に基づいて、受信したフレームを転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２２から請求項２７の何れか１項に記載のフレーム転送プログラム。
【請求項２９】
前記転送先情報テーブルに登録されている転送先情報を消去、又は、無効な情報に置換することによって、フレームの宛先情報と前記転送先情報との関係を破棄し、受信したフレームをブロードキャストする機能を前記ネットワークノードに持たせることを特徴とする請求項２２から請求項２８の何れか１項に記載のフレーム転送プログラム。
【請求項３０】
前記仮想的転送先情報テーブルにおいてフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記仮想的転送先情報に関する前記転送先情報テーブルのエントリの有効性を示すフィールドにエントリの無効を示す情報を登録することによって、
前記宛先情報と前記転送先情報との関係を破棄し、前記宛先情報を有するフレームを前記転送先情報以外の転送先情報に基づいて転送する機能を前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２９の何れか１項に記載のフレーム転送プログラム。
【請求項３１】
前記ネットワークの状態に基づいて、前記転送先情報テーブルにおいて無効な転送先情報に関係付けられている仮想的転送先情報を取得する機能と、
前記受信情報テーブルに登録されている前記仮想的転送先情報を、前記仮想的転送先情報と異なり、前記転送先情報テーブルにおいて有効な転送先情報と関連付けられた仮想的転送先情報に置換する機能と、
置換後の仮想的転送先情報に関連付けられた有効な前記転送先情報に基づいて、受信したフレームを転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２４から請求項３０の何れか１項に記載のフレーム転送プログラム。
【請求項３２】
転送先情報によってネットワークノードがフレームをネットワーク上に転送するフレーム転送方法であって、
フレームの宛先情報と関係付けて仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの前記仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する転送ステップを有することを特徴とするフレーム転送方法。
【請求項３３】
転送先情報によってネットワークノードがフレームをネットワーク上に転送するフレーム転送方法であって、
フレームの宛先情報と、仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報とを関係付ける仮想的転送先情報テーブルと、
前記仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルとを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する転送ステップを有することを特徴とするフレーム転送方法。
【請求項３４】
前記転送ステップは、
前記テーブルと、前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルとに基づいて、
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に従って転送することを特徴とする請求項３２又は請求項３３に記載のフレーム転送方法。
【請求項３５】
受信したフレームの送信元情報を、前記受信情報テーブルに基づいて、受信した前記フレームの受信情報に関係付けられている前記仮想的転送先情報と関係付けて前記仮想的転送先情報テーブルに登録するステップを備え、
前記転送ステップは、
受信した前記フレームを、受信した前記フレームの送信元情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送することを特徴とする請求項３４に記載のフレーム転送方法。
【請求項３６】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている前記仮想的転送先情報を取得するステップを備え、
前記転送ステップは、
前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている前記転送先情報に基づいて、受信した前記フレームを転送することを特徴とする請求項３３から請求項３５の何れか１項に記載のフレーム転送方法。
【請求項３７】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている転送先情報が転送無効である場合、
又は、
受信した前記フレームの宛先情報に関する前記仮想的転送先情報テーブルのエントリが無効である場合、
又は、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、取得した前記仮想的転送先情報に関する前記転送先情報テーブルのエントリが無効である場合に、
前記転送ステップは、
受信した前記フレームをブロードキャスト転送することを特徴とする請求項３３から請求項３６の何れか１項に記載のフレーム転送方法。
【請求項３８】
前記転送先情報テーブルに登録されている転送先情報を、前記転送先情報と異なる転送先情報に置換することによって、フレームの宛先情報と転送先情報との関係を更新するステップを備え、
前記転送ステップは、
置換後の転送先情報に基づいて、受信したフレームを転送するステップを有することを特徴とする請求項３２から請求項３７の何れか１項に記載のフレーム転送方法。
【請求項３９】
前記転送ステップは、
前記転送先情報テーブルに登録されている転送先情報を消去、又は、無効な情報に置換することによって、フレームの宛先情報と前記転送先情報との関係を破棄し、受信したフレームをブロードキャストすることを特徴とする請求項３２から請求項３８の何れか１項に記載のフレーム転送方法。
【請求項４０】
前記転送ステップは、
前記仮想的転送先情報テーブルにおいてフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記仮想的転送先情報に関する前記転送先情報テーブルのエントリの有効性を示すフィールドにエントリの無効を示す情報を登録することによって、
前記宛先情報と前記転送先情報との関係を破棄し、前記宛先情報を有するフレームを前記転送先情報以外の転送先情報に基づいて転送することを特徴とする請求項３３から請求項３９の何れか１項に記載のフレーム転送方法。
【請求項４１】
前記ネットワークの状態に基づいて、前記転送先情報テーブルにおいて無効な転送先情報に関係付けられている仮想的転送先情報を取得するステップと、
前記受信情報テーブルに登録されている前記仮想的転送先情報を、前記仮想的転送先情報と異なり、前記転送先情報テーブルにおいて有効な転送先情報と関連付けられた仮想的転送先情報に置換するステップとを備え、
前記転送ステップは、
置換後の仮想的転送先情報に関連付けられた有効な前記転送先情報に基づいて、受信したフレームを転送することを特徴とする請求項３４から請求項４０の何れか１項に記載のフレーム転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上のフレームの転送に関し、特に、信頼性の高いネットワークノード、フレーム転送プログラム及びフレーム転送方法に関する。
【背景技術】
【０００２】
近年、広域Ｅｔｈｅｒｎｅｔ（登録商標）サービスに示されるように、Ｅｔｈｅｒｎｅｔ（登録商標）が基幹系通信システムに採用されるようになっている。
その理由としては、従来のＳＯＮＥＴなどの装置に対して、Ｅｔｈｅｒｎｅｔ（登録商標）に準拠して動作するノード（以下、Ｅｔｈｅｒｎｅｔ（登録商標）ノードと記述する）が低価格であることに加えて、扱いが容易であることが挙げられる。
一方、信頼性に着目すると、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）向けに開発されたＥｔｈｅｒｎｅｔ（登録商標）は、基幹系通信システムに要求される性能を十分に満たしていなかった。
しかしながら、Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ  Ｐｒｏｔｏｃｏｌ（ＳＴＰ）やＲａｐｉｄ  Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ  Ｐｒｏｔｏｃｏｌ（ＲＳＴＰ）のように、通信経路を冗長化可能なプロトコルがＩＥＥＥ（ｔｈｅ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）において標準化されるとともに、Ｅｔｈｅｒｎｅｔ（登録商標）ノードを２重化するプロトコルが装置ベンダによって独自に開発されるなどして、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワークの信頼性が向上したため、今日では基幹系通信システムに適用されるまでに到っている。
以降では、本発明の必要性を明確にするため、１９９８年にＩＥＥＥから発行された標準化文書であるＩＥＥＥ  ８０２．１Ｄ（非特許文献１）で開示されているＳＴＰを適用したＥｔｈｅｒｎｅｔ（登録商標）ネットワークにおける、正常時のＥｔｈｅｒｎｅｔ（登録商標）フレームの転送動作と、リンクの切断、又は、Ｅｔｈｅｒｎｅｔ（登録商標）ノードの故障等の異常が発生した場合の障害回復動作を説明する。
（通信システムの構成）
図１に示す通信システムは、ＳＴＰに準拠して動作する３台のＥｔｈｅｒｎｅｔ（登録商標）ノード（以下、ＳＴＰノードと記述する）１００〜１２０、及び、３台の従来のＥｔｈｅｒｎｅｔ（登録商標）ノード３００〜３２０により構成されるＥｔｈｅｒｎｅｔ（登録商標）ネットワークである。
Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００〜３２０は、ＳＴＰノード１００〜１２０配下の端末として、ＳＴＰノード１００〜１２０にそれぞれ収容されている。
なお、ＳＴＰノード１００〜１２０の配下には、複数のＥｔｈｅｒｎｅｔ（登録商標）ノードが収容されていても良いが、ここでは説明を簡単にするため、ＳＴＰノード１００〜１２０はそれぞれ１台のＥｔｈｅｒｎｅｔ（登録商標）ノードを収容しているものとする。
また、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００〜３２０のさらに配下に、他のＥｔｈｅｒｎｅｔ（登録商標）ノードが接続されているような構成であっても、ループを構成しない限りは構わない。
ＳＴＰノード１００〜１２０のポートＰ１及びＰ２は、ＳＴＰの制御対象のポートに設定されており、それらのポートのポート状態は、ＳＴＰノード１００〜１２０間のＳＴＰの動作により、図１に示すように、フォワーディング状態（図１の○印）とブロッキング状態（図１の×印）の何れかに設定された結果、図１の太線で示すスパニングツリーが構成されているものとする。
なお、ＳＴＰノード１００〜１２０が、ＳＴＰにより、ＳＴＰの制御対象のポートのポート状態を決定するプロセス、すなわち、スパニングツリーを構成するプロセスは、本発明と深く関係しないので、詳細な説明は省略する。
スパニングツリーに含まれるリンクの両端のポートはデータフレームの送受信が許可される状態（フォワーディング状態）にあり、また、スパニングツリーに含まれないリンクの一方のポートはフォワーディング状態にあるが、他方のポートはデータフレームの送受信が禁止される状態（ブロッキング状態）、すなわち、リンクが論理的に切断されている状態にある。
フレームは、フォワーディング状態にあるポートで送受信されるため、ＳＴＰが適用されたＥｔｈｅｒｎｅｔ（登録商標）ネットワークにおいては、スパニングツリーに沿って転送されることになる。
（ノードの構成）
図３は、上記ＳＴＰノード１００の構成を示す図である。
なお、ＳＴＰノード１１０及び１２０の構成も、ＳＴＰノード１００の構成と同様である。
図３を参照すると、ＳＴＰノード１００は、入力ポート４００−１〜３と、フレーム解析部４１０−１〜２と、スイッチ部４２０と、フレーム多重部４３０−１〜２と、出力ポート４４０−１〜３と、ＦＤＢ（Ｆｏｒｗａｒｄｉｎｇ  ＤａｔａＢａｓｅ）部４５０と、ＦＤＢ制御部４６０と、ＦＤＢ４７０と、ＳＴＰ部５００と、ポート状態テーブル５１０とから構成される。
ＳＴＰノード１００の入力ポート４００−１〜３は、隣接するＥｔｈｅｒｎｅｔ（登録商標）ノード３００又はＳＴＰノード１１０又はＳＴＰノード１２０から送信されるフレームを受信するポートであって、図１のＳＴＰノード１００のＰ１〜Ｐ３の受信部に相当する。
なお、以降でＳＴＰノード１００の入力ポートＰ１と記述した場合は、ＳＴＰノード１００の入力ポート４００−１を表すものとする。
ＳＴＰノード１００のフレーム解析部４１０−１〜２は、ＳＴＰノード１００のＳＴＰ部５００が使用する特殊フレームであるＢＰＤＵ（Ｂｒｉｄｇｅ  Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）をＳＴＰノード１００のＳＴＰ部５００に送り、また、ＢＰＤＵ以外のフレームをＳＴＰノード１００のスイッチ部４２０に送る。
ＳＴＰノード１００のスイッチ部４２０は、受信フレームの出力ポートの決定を行うとともに、その決定に従って、ＳＴＰノード１００のフレーム多重部４３０−１〜２と出力ポート４４０−３のうち、適切な機能ブロックにフレームを送る。
ＳＴＰノード１００のフレーム多重部４３０−１〜２は、ＳＴＰノード１００のスイッチ部４２０から送られるフレームと、ＳＴＰノード１００のＳＴＰ部５００から送られるＢＰＤＵとを多重した上で、ＳＴＰノード１００の出力ポート４４０−１〜２に送る。
ＳＴＰノード１００の出力ポート４４０−１〜３は、隣接するＳＴＰノード１１０又は１２０、又は、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００にフレームを送信するポートであって、図１のＳＴＰノード１００のＰ１〜Ｐ３の送信部に相当する。
なお、以降でＳＴＰノード１００の出力ポートＰ１と記述した場合は、ＳＴＰノード１００の出力ポート４４０−１を表すものとする。
ＳＴＰノード１００のＦＤＢ部４５０は、フレームの宛先ＭＡＣアドレスと出力ポートとの関係を登録するＦＤＢ４７０と、ＦＤＢ４７０の内容を検索及び更新するＦＤＢ制御部４６０により構成される。
図４は、ＳＴＰノード１００のＦＤＢ４７０の例である。
例えば、図４に示すＳＴＰノード１００のＦＤＢ４７０の第１のエントリには、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００のＭＡＣアドレスに対応して、ＳＴＰノード１００のポートＰ３が登録されている。
これは、ＦＤＢ制御部４６０がＦＤＢ４７０の内容を検索することによって、ＳＴＰノード１００が、宛先ＭＡＣアドレスがＥｔｈｅｒｎｅｔ（登録商標）ノード３００のＭＡＣアドレスであるフレームを、ＳＴＰノード１００のポートＰ３から送信することを意味する。
ＳＴＰノード１００のＳＴＰ部５００は、入力ポート４００−１〜２及びフレーム解析部４１０−１〜２と、フレーム多重部４３０−１〜２及び出力ポート４４０−１〜２を介してＳＴＰノード１１０及び１２０とＢＰＤＵを送受信し合い、互いのパスコストを比較することにより、ＳＴＰノード１００のＳＴＰの制御対象であるポートＰ１及びＰ２のポート状態を決定するとともに、ＳＴＰノード１００のポート状態テーブル５１０にポート状態を登録する。
ＳＴＰノード１００のポート状態テーブル５１０には、ＳＴＰノード１００のＳＴＰの制御対象であるポート（ポートＰ１及びＰ２）のポート状態（ブロッキング状態、又は、フォワーディング状態の何れか）が登録される。
（フレームのブロードキャスト転送とＭＡＣアドレス学習）
最初に、図１の通信システムの運用開始直後における、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００からＥｔｈｅｒｎｅｔ（登録商標）ノード３１０にフレームを送信する動作を説明する。
ＳＴＰノード１００は、自ノード配下のＥｔｈｅｒｎｅｔ（登録商標）ノード３００から送信されたフレームをＳＴＰノード１００の入力ポート４００−３で受信すると、ＳＴＰノード１００のスイッチ部４２０に送る。
ＳＴＰノード１００のスイッチ部４２０は、フレームの送信元ＭＡＣアドレスとフレームの受信ポートとの関係を、宛先ＭＡＣアドレスと出力ポートとの関係として、ＳＴＰノード１００のＦＤＢ４７０に登録するように、ＳＴＰノード１００のＦＤＢ制御部４６０に依頼する。
ＳＴＰノード１００のＦＤＢ制御部４６０は、フレームの送信元ＭＡＣアドレス（Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００のＭＡＣアドレス）とフレームの受信ポート（ＳＴＰノード１００のポートＰ３）との関係を、宛先ＭＡＣアドレスと出力ポートとの関係として、ＳＴＰノード１００のＦＤＢ４７０に登録する（図４参照）。
以上のＦＤＢ４７０に宛先ＭＡＣアドレスと出力ポートとの関係を登録する動作は、一般にＭＡＣアドレス学習と呼ばれる。
ＭＡＣアドレス学習の依頼と同時に、ＳＴＰノード１００のスイッチ部４２０は、ＳＴＰノード１００のＦＤＢ４７０においてフレームの宛先ＭＡＣアドレス（Ｅｔｈｅｒｎｅｔ（登録商標）ノード３１０のＭＡＣアドレス）に対応して登録されている出力ポートを検索するように、ＳＴＰノード１００のＦＤＢ制御４６０に依頼する。
ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００のＦＤＢ４７０を検索することにより、フレームの宛先ＭＡＣアドレスをキーとして、フレームの宛先ＭＡＣアドレスに対応して登録されている出力ポートを取得する。
通信システムの運用開始直後は、ＳＴＰノード１００のＦＤＢ４７０には何も登録されていないため、ＳＴＰノード１００のＦＤＢ制御部４６０による出力ポートの検索は失敗する。
従って、ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００のスイッチ部４２０に検索が失敗した旨を通知する。
ＳＴＰノード１００のスイッチ部４２０は、検索に失敗した通知を受けた場合、ＳＴＰの制御対象であるポートのうちフォワーディング状態である全てのポート、及び、ＳＴＰの制御対象でない全てのポート（ただし、フレームの受信ポートを除く）からフレームを送信する。
すなわち、フレームは、ＳＴＰノード１００のフレーム多重部４４０−１〜２に送られた後、ＳＴＰノード１００の出力ポート４４０−１〜２からＳＴＰノード１１０及び１２０に送信される。
なお、出力ポート４４０−３はフレームの受信ポートＰ３の送信部であるため、出力ポート４４０−３からはフレームは送信されない。
上記のフレームの転送方法は、ブロードキャスト転送と呼ばれる。
以降では、ＳＴＰノード１００の出力ポート４４０−１から送信されたフレームが、ＳＴＰノード１１０の入力ポート４００−２で受信された後のＳＴＰノード１１０の動作を説明する。
なお、ＳＴＰノード１００の出力ポート４４０−２から送信されたフレームが、ＳＴＰノード１２０の入力ポート４００−１で受信された後のＳＴＰノード１２０の動作も、以降で説明するＳＴＰノード１１０の動作と同様である。
ＳＴＰノード１１０は、ＳＴＰノード１１０の入力ポート４００−２で、ＳＴＰノード１００から送信されたフレームを受信すると、ＳＴＰノード１１０のフレーム解析部４１０−２にフレームを送る。
ＳＴＰノード１１０のフレーム解析部４１０−２は、フレームがＢＰＤＵであれば、ＳＴＰノード１１０のＳＴＰ部５００に送り、また、フレームがＢＰＤＵでなければ、ＳＴＰノード１１０のスイッチ部４２０に送る。
ＳＴＰノード１１０のスイッチ部４２０は、フレームの受信ポートがＳＴＰの制御対象である場合、受信ポートのポート状態がブロッキング状態であれば、フレームを廃棄し、また、フォワーディング状態であれば、前述のＳＴＰノード１００がＥｔｈｅｒｎｅｔ（登録商標）ノード３００からのフレームを受信した場合の動作と同様に、ＭＡＣアドレス学習、及び、フレームのブロードキャスト転送を行う。
すなわち、ＳＴＰノード１１０のＦＤＢ４７０には、フレームの送信元ＭＡＣアドレス（Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００のＭＡＣアドレス）と受信ポート（ＳＴＰノード１１０のポートＰ２）との関係が、宛先ＭＡＣアドレスと出力ポートとの関係として登録される（図４参照）。
また、フレームは、ＳＴＰノード１１０の出力ポート４４０−１からＳＴＰノード１２０に送信され、また、ＳＴＰノード１１０の出力ポート４４０−３からＥｔｈｅｒｎｅｔ（登録商標）ノード３１０に送信される。
以上のようにして、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００から送信されたＥｔｈｅｒｎｅｔ（登録商標）ノード３１０宛てのフレームは、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３１０に転送される。
なお、図１を参照すると、ＳＴＰノード１１０の出力ポート４４０−１から送信されたフレームは、ＳＴＰノード１２０のブロッキング状態にある入力ポートＰ２で受信されるため、ＳＴＰノード１２０により廃棄され、それ以上転送されない。
（フレームのユニキャスト転送）
次に、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００からＥｔｈｅｒｎｅｔ（登録商標）ノード３１０へのフレームの転送に続いて、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３１０からＥｔｈｅｒｎｅｔ（登録商標）ノード３００にフレームを返信する場合の動作を説明する。
ＳＴＰノード１１０は、ＳＴＰノード１１０の入力ポート４００−３で、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３１０からＥｔｈｅｒｎｅｔ（登録商標）ノード３００宛てのフレームを受信すると、ＳＴＰノード１１０のスイッチ部４２０にフレームを送る。
ＳＴＰノード１１０のスイッチ部４２０は、ＳＴＰノード１１０のＦＤＢ制御部４６０に対して、受信フレームに関するＭＡＣアドレス学習、及び、出力ポートの検索を依頼する。
すなわち、ＳＴＰノード１１０のＦＤＢ４７０には、フレームの送信元ＭＡＣアドレス（Ｅｔｈｅｒｎｅｔ（登録商標）ノード３１０のＭＡＣアドレス）と受信ポート（ＳＴＰノード１１０のポートＰ３）との関係が、宛先ＭＡＣアドレスと出力ポートとの関係として登録される（図４参照）。
また、前述のＥｔｈｅｒｎｅｔ（登録商標）ノード３００からＥｔｈｅｒｎｅｔ（登録商標）ノード３１０にフレームを転送する過程で行われたＭＡＣアドレス学習により、ＳＴＰノード１１０のＦＤＢ４７０には、受信フレームの宛先ＭＡＣアドレスであるＥｔｈｅｒｎｅｔ（登録商標）ノード３００のＭＡＣアドレスに対応して、出力ポートとしてポートＰ２が登録されているため、ＳＴＰノード１１０のＦＤＢ制御部４６０は、ＳＴＰノード１１０のスイッチ部４２０に、受信フレームの出力ポートがポートＰ２である旨を通知する。
フレームは、ＳＴＰノード１１０のスイッチ部４２０によりＳＴＰノード１１０のフレーム多重部４３０−２に送られた後、ＳＴＰノード１１０の出力ポート４４０−２からＳＴＰノード１００に送信される。
以上のフレームの転送方法はユニキャスト転送と呼ばれる。
次いで、ＳＴＰノード１００は、ＳＴＰノード１００の入力ポート４００−１で、ＳＴＰノード１１０から送信されたフレームを受信すると、ＳＴＰノード１００のフレーム解析部４１０−１にフレームを送る。
ＳＴＰノード１００のフレーム解析部４１０−１は、受信フレームがＢＰＤＵであれば、ＳＴＰノード１００のＳＴＰ部５００に送り、また、ＢＰＤＵでなければ、ＳＴＰノード１００のスイッチ部４２０に送る。
ＳＴＰノード１００のスイッチ部４２０の動作は、フレームの受信ポートがＳＴＰの制御対象である場合、受信ポートのポート状態がブロッキング状態であれば、フレームを廃棄し、また、フォワーディング状態であれば、前述のＳＴＰノード１１０がＥｔｈｅｒｎｅｔ（登録商標）ノード３１０からのフレームを受信した場合と同様に、ＭＡＣアドレス学習、及び、フレームのユニキャスト転送を行う。
すなわち、ＳＴＰノード１００のＦＤＢ４７０には、フレームの送信元ＭＡＣアドレス（Ｅｔｈｅｒｎｅｔ（登録商標）ノード３１０のＭＡＣアドレス）と受信ポート（ＳＴＰノード１００のポートＰ１）との関係が、宛先ＭＡＣアドレスと出力ポートとの関係として登録される（図４参照）。
また、前述のＥｔｈｅｒｎｅｔ（登録商標）ノード３００からＥｔｈｅｒｎｅｔ（登録商標）ノード３１０にフレームを転送する過程で行われたＭＡＣアドレス学習により、ＳＴＰノード１００のＦＤＢ４７０には、受信フレームの宛先ＭＡＣアドレスであるＥｔｈｅｒｎｅｔ（登録商標）ノード３００のＭＡＣアドレスに対応して、出力ポートとしてポートＰ３が登録されているため、ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００のスイッチ部４２０にフレームの出力ポートがポートＰ３である旨を通知する。
フレームは、ＳＴＰノード１００のスイッチ部４２０により、ＳＴＰノード１００の出力ポート４４０−３からＥｔｈｅｒｎｅｔ（登録商標）ノード３００に送信される。
以上のようにして、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３１０から送信されたＥｔｈｅｒｎｅｔ（登録商標）ノード３００宛てのフレームは、Ｅｔｈｅｒｎｅｔ（登録商標）ノード３００に転送される。
（リンク切断時におけるＳＴＰの障害回復の動作）
次に、図１のＥｔｈｅｒｎｅｔ（登録商標）ネットワークにおいて、リンク２２０が切断された場合の障害回復動作を説明する。
図１のリンク２２０が切断されると、ＳＴＰにより、障害箇所を迂回する新たなスパニングツリーが再構成される。
ここでは、ＳＴＰノード１００〜１２０に属するポートのうち、ＳＴＰの制御対象のポートであるポートＰ１及びＰ２のポート状態が、ＳＴＰにより、図２に示すように変更された結果、図２の太線のリンクで示すスパニングツリーが再構成されたものとする。
新たなスパニングツリーが再構成されると、ＳＴＰノード１００〜１２０のＳＴＰ部５００は、ＳＴＰノード１００〜１２０のＦＤＢ４７０の内容を全て消去するように、ＳＴＰノード１００〜１２０のＦＤＢ制御部４６０に依頼する。
これは、新しいスパニングツリーが再構成されたとしても、ＦＤＢの内容を全て消去しなければ、もしくは、新しいスパニングツリーに合わせてＦＤＢの内容を更新しなければ、障害が発生したリンクにフレームが送信されてしまう可能性があるからである。
上記のＦＤＢの内容を全て消去する動作はＦＤＢのフラッシュと呼ばれる。
ＳＴＰノード１００〜１２０のＦＤＢ制御部４６０が、ＳＴＰノード１００〜１２０のＦＤＢ４７０をフラッシュした後は、前述の通信システムの運用開始直後のフレーム転送と全く同様にして、フレームの転送が行われるため、通信を継続することが可能である。
以上のようにして、ＳＴＰが適用された従来のＥｔｈｅｒｎｅｔ（登録商標）ネットワークでは、障害箇所を迂回するスパニングツリーを再構成するとともに、ＳＴＰノードのＦＤＢをフラッシュする、又は、更新することによって、通信を継続することが可能である。
【非特許文献１】“ＳＴＰ（Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ  Ｐｒｏｔｏｃｏｌ）”、ＩＥＥＥ  Ｓｔａｎｄａｒｄｓ  ８０２．１Ｄ、ＩＥＥＥ、１９９８年
【０００３】
しかしながら、上述した従来のネットワークノードにおいては、ＦＤＢのエントリ数が増大するに従って、ＦＤＢのフラッシュ、又は、書き換えに必要な時間が増大するため、障害からの復帰が遅れるという問題がある。
図５に、ＦＤＢのエントリ数と、ＦＤＢのフラッシュに要する時間（フラッシュ時間）の関係を、市販のＥｔｈｅｒｎｅｔ（登録商標）ノードを用いて実測したときのグラフを示す。
図５によれば、基幹系通信システムで必要と思われる１万個以上のエントリを全て消去するためには、１秒以上の時間を要することが分かる。
ここで、ＦＤＢは、ＣＡＭ（Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）により実装されることが多い。
このＣＡＭは、非常に高速の検索性能を有するものの、登録内容を削除、又は、変更するためにはエントリ単位で処理する必要がある。
従って、ＦＤＢのフラッシュのように、多数のエントリの内容を一度に消去するような処理には、多大な時間を要してしまうのである。
図５のグラフにおいて、ＦＤＢのフラッシュ時間がＦＤＢのエントリ数に比例して増大していることから、測定に使用したＥｔｈｅｒｎｅｔ（登録商標）ノードのＦＤＢは、ＣＡＭにより構成されており、ＦＤＢのエントリを１個ずつ順番に消去しているために、フラッシュに多くの時間を要していると推測される。
以上のように、ＳＴＰが適用されたＥｔｈｅｒｎｅｔ（登録商標）ネットワークにおいて障害が発生した場合、新たなスパニングツリーが短時間で再構成されたとしても、ＦＤＢのフラッシュに多くの時間を要するために、ＳＯＮＥＴが提供するような５０ｍｓ以内という非常に短い障害回復時間を実現することは不可能である。
本発明の目的は、上述したような従来の技術が有する問題を鑑みてなされたものであって、通信障害で異常事態が生じても、異常事態から短時間で復帰可能な信頼性の高いネットワークノード、フレーム転送プログラム及びフレーム転送方法を提供することにある。
【発明の開示】
【０００４】
上記の目的を達成するために本発明は、転送先情報によってフレームをネットワーク上に転送するネットワークノードにおいて、フレームの宛先情報と関係付けて仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルを備えることを特徴とする。
（作用）
本発明は、上記構成によって、仮想的転送先情報についてのフラッシュ又は更新を、フレームの宛先情報と転送先情報との関係を示す従来の情報についてのフラッシュ又は更新より短時間でできることから、フレームの宛先情報と転送先情報との関係を示す新たな情報をより短時間で生成できる。
本発明のネットワークノードによれば、障害から短時間で復帰可能な信頼性の高い通信システムを構築することが可能となる。
その理由は、転送先情報によってフレームをネットワーク上に転送するネットワークノードが、フレームの宛先情報と関係付けて仮想的に定義され、フレームの宛先情報の総数以下の種類に分類されたフレームの仮想的転送先情報と、転送先情報とを関係付ける転送先情報テーブルを備えるため、仮想的転送先情報についてのフラッシュ又は更新を、フレームの宛先情報と転送先情報との関係を示す従来の情報についてのフラッシュ又は更新より短時間でできることから、フレームの宛先情報と転送先情報との関係を示す新たな情報をより短時間で生成できるからである。
【図面の簡単な説明】
【０００５】
図１は、３台のＳＴＰノード、及び、３台のＥｔｈｅｒｎｅｔ（登録商標）ノードにより構成されたＥｔｈｅｒｎｅｔ（登録商標）ネットワークを示す図である。
図２は、図１のリンク２２０が切断された場合のＥｔｈｅｒｎｅｔ（登録商標）ネットワークである。
図３は、従来のＳＴＰノード１００の構成を示す図である。
図４は、従来のＳＴＰノード１００のＦＤＢ４７０を示す図である。
図５は、ＦＤＢのエントリ数とＦＤＢのフラッシュ時間の関係を示すグラフである。
図６は、本発明の第１の実施の形態におけるＳＴＰノード１００の構成を示す図である。
図７は、第１の実施の形態におけるＳＴＰノード１００の入力ポートテーブル４８０を示す図である。
図８は、第１の実施の形態におけるＳＴＰノード１００のＦＤＢ４７０を示す図である。
図９は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１０は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１１は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１２は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１３は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１４は、第１の実施の形態におけるＳＴＰノード１００のハードウェア構成を示すブロック図である。
図１５は、第１の実施の形態におけるＳＴＰノード１００の入力ポートテーブル４８０を示す図である。
図１６は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１７は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１８は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図１９は、第１の実施の形態におけるＳＴＰノード１００の入力ポートテーブル４８０を示す図である。
図２０は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図２１は、第１の実施の形態におけるＳＴＰノード１００のポートラベルテーブル４９０を示す図である。
図２２は、第１の実施の形態におけるＳＴＰノード１００の入力ポートテーブル４８０を示す図である。
図２３は、第１の実施の形態におけるＳＴＰノード１００のＦＤＢ４７０を示す図である。
図２４は、本発明の第１の実施の形態におけるＳＴＰノード１００の動作を示すフローチャートである。
図２５は、本発明の第１の実施の形態におけるＳＴＰノード１００の動作を示すフローチャートである。
図２６は、本発明の第１の実施の形態におけるＳＴＰノード１００の動作を示すフローチャートである。
図２７は、本発明の第１の実施の形態におけるＳＴＰノード１００の動作を示すフローチャートである。
図２８は、本発明の第１の実施の形態におけるＳＴＰノード１００の動作を示すフローチャートである。
図２９は、本発明の第２の実施の形態における通信システムの構成を示す図である。
図３０は、図２９に示す通信ネットワークにおいて、ノード６００がダウンした場合の状態を示す図である。
図３１は、第２の実施の形態におけるノード６２０の構成を示す図である。
図３２は、第２の実施の形態におけるノード６２０の入力ポートテーブル４８０を示す図である。
図３３は、第２の実施の形態におけるノード６２０のポートラベルテーブル４９０を示す図である。
図３４は、本発明の第２の実施の形態におけるノード６２０の動作を示すフローチャートである。
図３５は、第３の実施の形態におけるＲＰＲノードのＦＤＢを示す図である。
図３６は、第３の実施の形態におけるＲＰＲノードのＲＰＲノードアドレステーブルを示す図である。
図３７は、第３の実施の形態におけるＲＰＲノードのアドレスラベルテーブルを示す図である。
１００、１１０、１２０：ＳＴＰノード、２００、２１０、２２０：リンク、３００、３１０、３２０：Ｅｔｈｅｒｎｅｔ（登録商標）ノード、４００−１〜３：入力ポート、４１０−１〜２：フレーム解析部、４２０：スイッチ部、４３０−１〜２：フレーム多重部、４４０−１〜３：出力ポート、４５０：ＦＤＢ部、４６０：ＦＤＢ制御部、４７０、７１０：ＦＤＢ、４８０、７２０：入力ポートテーブル、４９０、７３０：ポートラベルテーブル、５００：ＳＴＰ部、５１０：ポート状態テーブル、５２０：ノード２重化プロトコル部、６００、６１０、６２０、６３０：ノード、６４０，６５０：Ｅｔｈｅｒｎｅｔ（登録商標）ノード、８００：ネットワーク、８０１：ＣＰＵ、８０２：主記憶部、８０３：通信制御部、８０４：表示部、８０５：インタフェース部、８０６：補助記憶部、８０７：システムバス
【発明を実施するための最良の形態】
【０００６】
次に、本発明を実施するための最良の形態について説明する。
（第１の実施の形態）
以下に、本発明の第１の実施の形態について、図面を参照して詳細に説明する。
（第１の実施の形態の構成）
（通信システムの構成）
以降では、従来技術の説明で使用した図１及び図２に示す通信システムのＳＴＰノード（ＳＴＰに準拠して動作するＥｔｈｅｒｎｅｔ（登録商標）ノード）１００〜１２０に本発明を適用した場合において、ＦＤＢフラッシュ時間を短縮化する方法を説明する。
（ノードの構成）
図６は、本発明が適用されたＳＴＰノード１００の構成を示す図である。
以下では、本発明が適用されたＳＴＰノード１００の構成を説明するが、本発明が適用されたＳＴＰノード１１０及び１２０の構成も本発明が適用されたＳＴＰノード１００と同様である。
なお、以降では、単にＳＴＰノードと記述した場合は、本発明が適用されたＳＴＰノードを表すものとする。
図６に示すＳＴＰノード１００の構成は、ＳＴＰノード１００のＦＤＢ部４５０に、入力ポートテーブル４８０と、ポートラベルテーブル４９０とが新たに追加して配備されている点において、図３に示す従来のＳＴＰノード１００の構成と異なる。
ＳＴＰノード１００の入力ポートテーブル４８０は、ＳＴＰノード１００の入力ポートとポートラベルとの関係を登録するテーブルであって、ＳＴＰノード１００のＦＤＢ制御部４６０により管理される。
ＳＴＰノード１００の入力ポートテーブル４８０において、入力ポートとポートラベルとの関係は、ＳＴＰノード１００の各ポートが独立であれば、１対１の関係であって、異なる入力ポートに対しては、異なるポートラベルが関係付けられる。
ただし、異なる入力ポートに対して同一のポートラベルを関係付けることによって、複数の入力ポートを１つの入力ポートに仮想化すれば、リンクアグリゲーション（Ｌｉｎｋ  Ａｇｇｒｅｇａｔｉｏｎ（ＬＡＧ））が適用されたノードに対しても、本発明を適用することが可能である。
以降では、ＳＴＰノード１００の各ポートは独立であるとして説明する。
図７は、ＳＴＰノード１００の入力ポートテーブル４８０の例である。
図７に示すＳＴＰノード１００の入力ポートテーブル４８０の第１番目のエントリにおいては、ＳＴＰノード１００のポートＰ１の受信部（入力ポート４００−１又は入力ポートＰ１）に対して、ポートラベルαが関係付けられている。
ＳＴＰノード１００のＦＤＢ４７０は、宛先ＭＡＣアドレスとポートラベルとの関係を登録するデータベースであって、ＳＴＰノード１００のＦＤＢ制御部４６０により管理される。
従来のＳＴＰノード１００のＦＤＢ４７０においては、宛先ＭＡＣアドレスに対して、ＳＴＰノード１００の出力ポートが関係付けられていたが、本発明のＳＴＰノード１００のＦＤＢ４７０においては、ポートラベルが関係付けられる。
ＳＴＰノード１００のＦＤＢ４７０に登録されるポートラベルは、ＳＴＰノード１００の入力ポートテーブル４８０に登録されているポートラベルの何れかである。
図８は、ＳＴＰノード１００のＦＤＢ４７０の例である。
図８に示すＳＴＰノード１００のＦＤＢ４７０の第１番目のエントリにおいては、Ｅｔｈｅｒｎｅｔノード３００のＭＡＣアドレスに対して、ポートラベルγが登録されている。
ＳＴＰノード１００のポートラベルテーブル４９０は、ポートラベルとＳＴＰポート１００の出力ポートとの関係を登録するテーブルであって、ＳＴＰノード１００のＦＤＢ制御部４６０により管理される。
ＳＴＰノードの運用開始当初は、ＳＴＰノード１００のポートラベルテーブル４９０には、ＳＴＰノード１００の入力ポートテーブル４８０に登録されているポートラベルが、ＳＴＰノード１００の入力ポートラベルにおいてポートラベルに関係付けられている入力ポートの対となる出力ポートと関係付けられる。
入力ポートの対となる出力ポートとは、例えば、入力ポートＰ１（入力ポート４００−１、又は、ポートＰ１の受信部）に対しては、出力ポートＰ１（出力ポート４４０−１、又は、出力ポートＰ１の送信部）であり、また、入力ポートＰ２に対しては、出力ポートＰ２である。
図９はＳＴＰノード１００のポートラベルテーブル４９０の例である。
図９に示すＳＴＰノード１００のポートラベルテーブル４９０の第１番目のエントリにおいては、ポートラベルαに対して、ＳＴＰノード１００のポートＰ１の送信部（出力ポート４４０−１又は出力ポートＰ１）が関係付けられている。
図２１に示すように、ＳＴＰノード１００のポートラベルテーブル４９０においては、異なるポートラベルに対して、同一の出力ポートを関係付けることができる。
また、図１１又は図１６に示すように、出力ポートとして無効な値（以下、ＮＵＬＬ値と記述する）を設定することが可能であるとする。
もしくは、図１０又は図１３に示すように、出力ポートにＮＵＬＬ値を設定する代わりに、ＳＴＰノード１００のポートラベルテーブル４９０の各エントリに、エントリの有効性を示すフィールドを設けることにより、そのフィールドが無効を示す場合には、出力ポートに有効な値が登録されていたとしても、ＮＵＬＬ値と見なせるようにしても良い。
ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００の入力ポートテーブル４８０、及び、ＦＤＢ４７０、及び、ポートラベルテーブル４９０の参照及び更新を行うことにより、ＭＡＣアドレス学習、及び、出力ポートの検索、及び、ＦＤＢの更新（フラッシュ及び書き換え）を行う。
ここで、ＳＴＰノード１００のハードウェア構成の説明をする。
図１４は、本実施の形態による通信システムのＳＴＰノード１００のハードウェア構成を示すブロック図である。
図１４を参照すると、本実施の形態によるＳＴＰノード１００は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）８０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメインメモリであり、データの作業領域やデータの一時退避領域に用いられる主記憶部８０２、ネットワーク８００を介してデータの送受信を行う通信制御部８０３、液晶ディスプレイ等の表示部８０４、周辺機器と接続してデータの送受信を行うインタフェース部８０５、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置である補助記憶部８０６、上記各構成要素を相互に接続するシステムバス８０７等を備えている。
本実施の形態によるＳＴＰノード１００は、その動作を、ＳＴＰノード１００内部にそのような機能を実現するプログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品からなる回路部品を実装してハードウェア的に実現することは勿論として、上記した各構成要素の各機能を提供するプログラムを、コンピュータ処理装置上のＣＰＵ８０１で実行することにより、ソフトウェア的に実現することができる。
すなわち、ＣＰＵ８０１は、補助記憶部８０７に格納されているプログラムを、主記憶部８０２にロードして実行し、ＳＴＰノード１００の動作を制御することにより、上述した各機能をソフトウェア的に実現する。
（第１の実施の形態の動作）
（フレーム転送の動作とＭＡＣアドレス学習）
以降では、図２４で示すフローチャートを用いて、ＳＴＰノード１００のフレーム転送の動作を説明する。
ＳＴＰノード１００の入力ポートテーブル４８０に登録されている内容は図７に示される通りとし、ＳＴＰノード１００のポートラベルテーブル４９０に登録されている内容は図９に示される通りとする。
ＳＴＰノード１００が隣接ノードからフレームを受信（Ｓ２４０１）した後、ＳＴＰノード１００のスイッチ部４２０がＳＴＰノード１００のＦＤＢ制御部４６０に受信フレームに関するＭＡＣアドレス学習、及び、出力ポートの検索を依頼する（Ｓ２４０２）までの動作は、従来技術と同様であるので省略する。
ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００の入力ポートテーブル４８０において、フレームの受信ポートに対して登録されているポートラベルを取得した上で（Ｓ２４０３）、フレームの送信元ＭＡＣアドレスと取得したポートラベルとの関係を、宛先ＭＡＣアドレスとポートラベルとの関係として、ＳＴＰノード１００のＦＤＢ４７０に登録する（Ｓ２４０４）。
上記の処理が本発明におけるＭＡＣアドレス学習である。
また、ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００のＦＤＢ４７０において、フレームの宛先ＭＡＣアドレスに対して登録されているポートラベルを検索する（Ｓ２４０５、Ｓ２４０６）。
ポートラベルの取得に成功した場合、ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００のポートラベルテーブル４９０において、そのポートラベルに対して登録されている出力ポートを検索する（Ｓ２４０７）。
一方、ポートラベルの取得に失敗した場合は、ＳＴＰノード１００のＦＤＢ制御部４６０は、出力ポートの取得に失敗した旨を、ＳＴＰノード１００のスイッチ部４２０に通知する（Ｓ２４０８）。
次いで、ＳＴＰノード１００のポートラベルテーブル４９０において、Ｓ２４０６で取得したポートラベルに関するエントリが有効、かつ、そのポートラベルに関係付けられている出力ポートがＮＵＬＬ値でない場合（Ｓ２４０９）、ＳＴＰノード１００のＦＤＢ制御部４６０は、取得した出力ポートをＳＴＰノード１００のスイッチ部に通知する（Ｓ２４１０）。
一方、上記以外の場合（すなわち、エントリが無効である場合、又は、出力ポートがＮＵＬＬ値である場合）、ＳＴＰノード１００のＦＤＢ制御部４６０は、出力ポートの取得に失敗した旨をＳＴＰノード１００のスイッチ部４２０に通知する（Ｓ２４０８）。
以降のＳＴＰノード１００のスイッチ部４２０のフレーム転送の動作は従来技術と同様であるので説明を省略する。
（障害復帰時におけるＦＤＢのフラッシュの動作）
以降では、図２５で示すフローチャートを用いて、リンク２２０の切断により図２に示すスパニングツリーが再構成された後、ＳＴＰノード１００がＦＤＢをフラッシュする動作を説明する。
新たなスパニングツリーが再構成された後、ＳＴＰノード１００のＳＴＰ部５００は、ＳＴＰノード１００のポートラベルテーブル４９０をフラッシュするように、ＳＴＰノード１００のＦＤＢ制御部４６０に依頼する（Ｓ２５０１）。
この依頼によって、ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００のポートラベルテーブル４９０において、全てのポートラベルについて、それらに関係付けられている出力ポートをＮＵＬＬ値に変更する（図１１）、又は、全てのエントリを削除する（図１２）、又は、全てのエントリについて、それらの有効性を示すフィールドに無効を示す値を設定（出力ポートの無効化）する（図１３）（Ｓ２５０２）。
なお、上記の処理が終了した後で、従来と同様に、ＳＴＰノード１００のＦＤＢ制御部４６０が、ＳＴＰノード１００のＦＤＢ４７０の全てのエントリを消去しても良い。
上記の処理以降は、ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００のスイッチ部４２０による出力ポートの検索の依頼に対して、常に出力ポートの検索の失敗を通知するため（Ｓ２５０３）、ＳＴＰノード１００のスイッチ部４２０は、全ての受信フレームをブロードキャスト転送するようになる（Ｓ２５０４）。
この状態は、従来技術においてＦＤＢがフラッシュされた状態、すなわち、障害から復帰して通信を続行可能な状態である。
ＳＴＰノード１００のポートラベルテーブル４９０のエントリのうち、上記の処理が必要なエントリ数は高々ＳＴＰノード１００に実装されるポート数であり、多く見積もったとしても１装置当たり数１００個程度のポートしか実装されないと考えられるため、エントリ数が非常に多いＦＤＢ自体をフラッシュするよりも、ポートラベルテーブルを処理する方が遙かに短時間で処理を完了させることが可能である。
従って、本発明が適用されたＳＴＰノードにより構成されるＥｔｈｅｒｎｅｔ（登録商標）ネットワークにおいては、従来に比べて障害から短時間で復帰することが可能である。
ところで、上記の処理のみでは、ＳＴＰノード１００のスイッチ部４２０が全てのフレームをブロードキャスト転送し続けることにより、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワークの通信帯域が圧迫されてしまうため、ＳＴＰノード１００のＦＤＢ制御部４６０は以降に説明する処理を行う。
図２６で示すフローチャートを参照すると、ＳＴＰノード１００のＦＤＢ制御部４６０は、ＳＴＰノード１００の入力ポートテーブル４８０において、各入力ポートに対して関係付けられているポートラベルを、当初登録されていたポートラベルと異なる新しいポートラベルに置換する（Ｓ２６０１）。
このとき、新規に登録するポートラベルは、当初登録されていたポートラベルの何れとも重複してはならない。
例えば、図１５に示すＳＴＰノード１００の入力ポートテーブル４８０においては、ポートラベルαがポートラベルδに置換され、また、ポートラベルβがポートラベルηに置換され、また、ポートラベルγがポートラベルζに置換されている。
次に、ＳＴＰノード１００のＦＤＢ制御部４６０は、フラッシュされたＳＴＰノード１００のポートラベルテーブル４９０に、ＳＴＰノード１００の入力ポートテーブル４８０に新たに登録されたポートラベルに関するエントリを追加する（Ｓ２６０２）。
これらのポートラベルに対して登録される出力ポートは、ＳＴＰノード１００の入力ポートテーブル４８０において、これらのポートラベルに対応する入力ポートの対となる出力ポートである。
例えば、入力ポートＰ１（入力ポート４００−１、又は、ポートＰ１の受信部）に対しては、出力ポートＰ１（出力ポート４４０−１、又は、出力ポートＰ１の送信部）が登録される。
図１６〜図１８に示すポートラベルテーブル４９０には、上記フラッシュされたＳＴＰノード１００のポートラベルテーブル４９０に、ポートラベルδに対して出力ポートＰ１が関係付けられたエントリと、ポートラベルηに対して出力ポートＰ２が関係付けられたエントリと、ポートラベルζに対して出力ポートＰ３が関係付けられたエントリとが追加されている。
以上により、新たに登録されたポートラベルが、フレームのブロードキャスト転送時のＭＡＣアドレス学習により、ＳＴＰノード１００のＦＤＢ４７０に登録されるようになれば（Ｓ２６０３）、受信フレームはユニキャスト転送されるようになるため（Ｓ２６０４）、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワークの通信帯域が圧迫される状態はいずれ解消されることになる。
また、上記の処理を必要とするエントリの数も高々ＳＴＰノード１００のポート数にすぎないため、障害回復時間にはほとんど影響を与えない。
上記の処理に要する時間をより高速に行うためには、例えば、図１９に示すように、ＳＴＰノード１００の入力ポートテーブル４８０において、１個の入力ポートに対して、障害発生前に使用するポートラベル（図１９では状態１というフィールドに登録される）と障害発生後に使用するポートラベル（図１９では状態２というフィールドに登録される）の２個を予め関係付けておき、また、図２０に示すように、ＳＴＰノード１００のポートラベルテーブル４９０において、前述のポートラベルと出力ポートの関係を予め登録しておけば良い。
障害発生前においては、図１９に示す入力ポートテーブルの状態１というフィールドに登録されたポートラベルをＭＡＣアドレス学習に使用する。
また、障害発生後においては、図２７で示すフローチャートを参照すると、ＳＴＰノード１００のポートラベルテーブル４９０において、障害発生前に使用していたポートラベル（図２０においては、ポートラベルα及びβ及びγ）に対応する出力ポートとして、ＮＵＬＬ値を登録するとともに（Ｓ２７０１）、図１９に示す入力ポートテーブルの状態２というフィールドに登録されたポートラベルをＭＡＣアドレス学習に使用するように変更する（Ｓ２７０２）。
以上のようにすれば、ポートラベルテーブルの一部のエントリを無効化し、かつ、ＭＡＣアドレス学習（Ｓ２７０３）に使用するポートラベルを変更するだけで前述の処理（ユニキャスト転送、Ｓ２７０４）を完了させることが可能である。
（ＦＤＢの書き換え）
ＳＴＰの障害回復動作においては、ＦＤＢをフラッシュせずとも、一部のエントリを書き替えるのみで、通信を継続可能である場合がある。
図２８で示すフローチャートを参照すると、例えば、図１に示すＥｔｈｅｒｎｅｔ（登録商標）ネットワークがリンク２２０が切断された結果図２に示すＥｔｈｅｒｎｅｔ（登録商標）ネットワークに遷移することによって新たなスパニングツリーが再構成された後、ＳＴＰノード１００のＳＴＰ部５００は、ＳＴＰノード１００のポートラベルテーブル４９０を更新するように、ＳＴＰノード１００のＦＤＢ制御部４６０に依頼する（Ｓ２８０１）。
次いで、ＳＴＰノード１００のＦＤＢ制御部４６０が、ＳＴＰノード１００のポートラベルテーブル４９０のうち、出力ポートがポートＰ２である全てのエントリについて（エントリの取得、Ｓ２８０２）、出力ポートをポートＰ１に変更するだけで（Ｓ２８０３）、上記説明したのと同様にして、障害からの回復が可能となり、受信フレームはユニキャスト転送されるようになる（Ｓ２８０４）。
このような場合、従来技術では、図３に示されるＦＤＢ４７０の全てのエントリについて、その出力ポートがポートＰ２であるか否かをエントリ毎に調査した上で、出力ポートがポートＰ２であれば、そのエントリを削除するというような多大な時間を要する処理を行わなければならない。
しかしながら、本発明においては、図２１に示すように、ポートラベルテーブル４９０のうち、ポートラベルβに対して登録されている出力ポートを、ポートＰ２からポートＰ１に書き換えるのみで、上記の処理が完了するため、非常に短時間で障害から回復することが可能である。
なお、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワークに複数のＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ）が設定され、ＶＬＡＮ毎にスパニングツリーが存在するような通信システムの場合、上記の出力ポートを書き換える手法では、全てのＶＬＡＮに影響を与えることになるため、あるＶＬＡＮでは通信を続行できたとしても、他のＶＬＡＮでは通信を続行できなくなる可能性がある。
そのような場合には、図２２に示すように、ＳＴＰノード１００の入力ポートテーブル４８０においては、入力ポートとＶＬＡＮ識別子に対して、ポートラベルを関係付け、また、図２３に示すように、ＳＴＰノード１００のＦＤＢ４７０においては、宛先ＭＡＣアドレスとＶＬＡＮ識別子に対して、ポートラベルを関係付けるようにすれば、上記説明したのと同様にして、ＶＬＡＮ単位の処理が可能となるため、上述の問題を解消することができる。
（第１の実施の形態の効果）
以上説明した本実施の形態によれば、以下に示す効果を達成する。
第１に、障害から短時間で復帰可能な信頼性の高い通信システムを構築することが可能となる。
その理由は、ＳＴＰノード１００のＦＤＢ制御部４６０により管理されＭＡＣアドレス学習、及び、出力ポートの検索、及び、ＦＤＢの更新（フラッシュ及び書き換え）を行うための、ＳＴＰノードの入力ポートとポートラベルとの関係を登録する入力ポートテーブル４８０と、宛先ＭＡＣアドレスとポートラベルとの関係を登録するＦＤＢ４７０と、ポートラベルとＳＴＰポート１００の出力ポートとの関係を登録するポートラベルテーブル４９０とを備え、新たなスパニングツリーが再構成された後、ポートラベルテーブル４９０をフラッシュすることによって、ＳＴＰノード１００のスイッチ部４２０が全ての受信フレームをブロードキャスト転送するからである。
すなわち、従来、基幹系通信システムで必要と思われる１万個以上のエントリを全て消去するためには１秒以上の時間を要する等、ＦＤＢのエントリ数が増大するに従って、ＦＤＢのフラッシュ、又は、書き換えに必要な時間が増大し、障害からの復帰が遅れていたが、本実施の形態によれば、ポートラベルテーブル４９０のエントリのうち、フラッシュが必要なエントリ数は高々ＳＴＰノード１００に実装されるポート数であり、多く見積もったとしても１装置当たり数１００個程度のポートしか実装されないと考えられるため、ＦＤＢ自体をフラッシュするよりも遙かに短時間でフラッシュを完了させることができるからである。
第２に、上記フラッシュによるブロードキャスト転送状態によってネットワークの通信帯域が圧迫される状態をより短時間で解消することができる。
その理由は、１個の入力ポートに対して、障害発生前に使用するポートラベルと障害発生後に使用するポートラベルの２個を予め関係付けた入力ポートテーブル４８０と、前述のポートラベルと出力ポートの関係を予め登録したポートラベルテーブル４９０とを備え、障害発生前においては、障害発生前に使用するポートラベルをＭＡＣアドレス学習に使用し、また、障害発生後においては、ＳＴＰノード１００のポートラベルテーブル４９０において、障害発生前に使用していたポートラベルに対応する出力ポートを無効化し、障害発生後に使用するポートラベルをＭＡＣアドレス学習に使用するように変更するため、ポートラベルテーブルの一部のエントリを無効化し、かつ、ＭＡＣアドレス学習に使用するポートラベルを変更するだけで、ブロードキャスト転送状態を解消することができるからである。
第３に、ＳＴＰの障害回復動作において、ＦＤＢをフラッシュせずとも、非常に短時間で障害から回復することが可能である。
その理由は、リンク２２０が切断された場合、ＳＴＰノード１００のＦＤＢ４７０のうち、リンク２２０に接続する出力ポートの全てのエントリについて、リンク２２０に接続しない出力ポートに変更するだけで、障害回復可能であるからである。
第４に、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワークに複数のＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ）が設定され、ＶＬＡＮ毎にスパニングツリーが存在するような通信システムの場合においても、上記効果を達成することができる。
その理由は、入力ポートとＶＬＡＮ識別子に対してポートラベルを関係付けた入力ポートテーブル４８０と、宛先ＭＡＣアドレスとＶＬＡＮ識別子に対してポートラベルを関係付けたＦＤＢ４７０とを備えるからである。
（第２の実施の形態）
以降では、本発明の第２の実施の形態について、図面を参照して詳細に説明する。
（第２の実施の形態の構成）
（通信システムの構成）
図２９は、本発明による第２の実施の形態おける通信システムの構成例を示す図である。
図２９に示す通信システムにおいて、ノード６００及びノード６１０は、ノード２重化プロトコルの技術を用いて２重化されたノードである。
通信システムの運用開始当初において、ノード６００は、運用状態にあって、ノード６２０とノード６３０間のトラフィックを中継し、また、ノード６１０は、待機状態にあって、ノード６２０又はノード６３０から自ノードに送られるトラフィックを遮断している（すなわち、受信したフレームを廃棄している）。
このとき、ノード６００に属するポートのうち、ノード６００配下のノード６２０又はノード６３０と接続されるポート（ポートＰ１及びＰ２）は、ノード２重化プロトコルによりフレームの送受信が許可される状態（フォワーディング状態）に設定され、また、ノード６１０に属するポートのうち、ノード６１０配下のノード６２０又はノード６３０と接続されるポート（ポートＰ１及びＰ２）は、ノード２重化プロトコルによりフレームの送受信が禁止される状態（ブロッキング状態）に設定されている。
また、ノード６００及びノード６１０は、ノード２重化プロトコルにより、互いのノードが正常に動作しているか否かを確認している。
例えば、図２９に示す通信システムに示すように、ノード６００とノード６１０とが、直接接続されるリンクを通して、一定の時間間隔でキープアライブフレームを送信し合い、キープアライブフレームが所定の回数だけ連続して未到着となった場合に、相手ノードが動作を停止していると見なすようにしてもよい。
Ｅｔｈｅｒｎｅｔ（登録商標）ノード６４０及び６５０は、ノード６２０及び６３０配下の端末として、ノード６２０又は６３０にそれぞれ収容されている。
なお、ノード６２０及び６３０の配下には、複数のＥｔｈｅｒｎｅｔ（登録商標）ノードが収容されていてもよいが、ここでは説明を簡単にするため、ノード６２０及び６３０の配下には、それぞれ１台のＥｔｈｅｒｎｅｔ（登録商標）ノードが収容されているものとする。
また、Ｅｔｈｅｒｎｅｔ（登録商標）ノード６２０及び６３０のさらに配下に、他のＥｔｈｅｒｎｅｔ（登録商標）ノードが接続されているような構成であっても、ループを構成しない限りは構わない。
図３０は、図２９に示す通信システムにおいて、ノード６００が故障によりダウンした状態を示す図である。
ノード６００のダウンにより、図２９に示す通信システムから図３０に示す通信システムに遷移した場合、ノード６１０は、ノード６００からのキープアライブフレームの未到着が所定の回数以上に達したことにより、ノード６００のダウンを検出した後、自ノードの状態を待機状態から運用状態に変更し、また、ノード６１０のポートＰ１及びＰ２をブロッキング状態からフォワーディング状態に変更することにより、ノード６００に代わってノード６２０とノード６３０間のトラフィックの中継を開始するとともに、ノード６２０とノード６３０に対して、自ノードが運用状態に遷移した旨を通知するフレーム（以下、Ｆｌｕｓｈフレームと記述する）を送信する。
Ｆｌｕｓｈフレームの受信をトリガとして、ノード６２０及び６３０が自ノードのＦＤＢをフラッシュすれば、ノード６２０とノード６３０間の通信を続行可能となる。
以上のように、図２９に示す通信システムは、ネットワークの上流に配置されたノード６００及び６１０が２重化されることにより、信頼性の高い通信システムを実現している。
しかしながら、従来技術でも述べたように、ノード６２０及び６３０が自ノードのＦＤＢをフラッシュするのに多くの時間を要するために、通信の回復が大幅に遅れるという問題がある。
そこで、本実施の形態においては、第１の実施の形態においてＳＴＰノード１００に配備したＦＤＢ部４５０と同様の機能を有するＦＤＢ部を、ノード６２０及びノード６３０に配備することにより、ノード６２０及びノード６３０のＦＤＢをフラッシュするのに要する時間を短縮化する方法を説明する。
（ノードの構成）
ノード６００及びノード６１０の構成はここでは明示しないが、通信システムの構成で述べた機能を実現する機能ブロックがノード６００及びノード６１０に配備されているものとして以降の説明を行う。
図３１は、本実施の形態におけるノード６２０を示す図である。
以降では、ノード６２０の構成を説明するが、ノード６３０の構成もノード６２０の構成と同様である。
ノード６２０の構成は、第１の実施の形態で説明したＳＴＰノード１００の構成において、ＳＴＰノード１００のＳＴＰ部５００をノード２重化プロトコル部５２０に置換するとともに、フレーム多重部４３０−１〜２、及び、ポート状態テーブル５１０を削除した構成と同一である。
ノード６２０のフレーム解析部４１０−１〜２の機能は、ＢＰＤＵではなく、ノード６００又はノード６１０が送信するＦｌｕｓｈフレームをノード６２０のノード２重化プロトコル部５２０に送る点が、ノード１００のフレーム解析部４１０−１〜２と異なる。
ノード６２０のＦＤＢ制御部４６０の機能は、ＳＴＰ部５００ではなく、ノード６２０のノード２重化プロトコル部５２０の依頼により、ノード６２０のＦＤＢ４７０、入力ポートテーブル４８０、ポートラベルテーブル４９０をフラッシュする点又は書き換える点が、第１の実施の形態におけるＳＴＰノード１００のＦＤＢ制御部４６０と異なる。
ノード６２０のノード２重化プロトコル部５２０は、ノード６２０のフレーム解析部４１０−１〜２から送られるＦｌｕｓｈフレームを受信すると、ノード６２０のＦＤＢ制御部４６０に対して、ノード６２０のＦＤＢ４７０、入力ポートテーブル４８０、ポートラベルテーブル４９０のフラッシュ又は変更を依頼する。
図３２及び図３３に、ノード６２０の入力ポートテーブル４８０及びポートラベルテーブル４９０の例をそれぞれ示す。
以降では、ノード６２０の入力ポートテーブル４８０及びポートラベルテーブル４９０は、図１９に示す内容に設定されているものとする。
（第２の実施の形態の動作）
（フレーム転送の動作）
図２９に示す通信システムに属する各ノードのフレーム転送の動作（フレームのブロードキャスト転送、及び、フレームのユニキャスト転送、及び、ＭＡＣアドレス学習）は、第１の実施の形態で述べたノード１００の動作と同様であるので、説明を省略する。
（障害復帰時におけるＦＤＢ更新の動作）
図２９に示す通信システムが、ノード６００のダウンにより図３０に示す状態に遷移した場合に、ノード６２０のＦＤＢ制御部４６０が、ノード６２０のノード２重化プロトコル部５２０の依頼により、ノード６２０のポートラベルテーブル４９０等をフラッシュする動作は、第１の実施の形態で述べたノード１００のＦＤＢ制御部４６０の動作と同様である。
しかしながら、第２の実施の形態においては、ノード６２０のポートラベルテーブル４９０等をフラッシュするよりも、ノード６２０のポートラベルテーブル４９０の内容を書き換える方が通信帯域の利用効率が良い。
すなわち、図３４で示すフローチャートを参照すると、ノード６２０のノード２重化プロトコル部５２０は、ノード６２０のポートラベルテーブル４９０のエントリのうち、その出力ポートが、運用状態にあったノード（ノード６００）の接続されているポート（ノード６２０のポートＰ１）であるエントリについて、その出力ポートをＦｌｕｓｈフレームの受信ポート（ノード６２０のポートＰ２）に書き換えるように、ノード６２０のＦＤＢ制御部４６０に依頼する（Ｓ３４０１）。
このとき、ノード６２０のＦＤＢ制御部４６０は、ノード６２０の入力ポートラベル４８０において、運用状態にあったノード６００が接続されていた入力ポートＰ１に対して関係付けられているポートラベルαを取得した上で（Ｓ３４０２）、ノード６２０のポートラベルテーブル４９０において、上記取得したポートラベルαに対して関係付けられている出力ポートＰ１を、Ｆｌｕｓｈフレームを受信したポートの出力ポートＰ２に置換する（Ｓ３４０３）。
すなわち、ノード６２０は、ノード６２０のポートラベルテーブル４９０において、ポートラベルαに対して登録されている出力ポートＰ１を、Ｆｌｕｓｈフレームを受信したポートの出力ポートＰ２に置換する。
以上より、本実施の形態によれば、ノード６２０からノード６００にユニキャスト転送されていたフレームは、運用状態に遷移したノード６１０にユニキャスト転送されるようになるため（Ｓ３４０４）、ノード６２０とノード６３０間の通信はノード６１０を経由することにより続行することができる。
（第２の実施の形態の効果）
以上説明した本実施の形態によれば、ＦＤＢについてフラッシュをした後の場合と異なり、全てのフレームがブロードキャスト転送されるようなことがないため、通信システムの通信帯域を圧迫しないという効果が得られる。
その理由は、ネットワークの障害時に、ポートラベルテーブル４９０において、ネットワークの障害前は運用状態にあったノードの接続されているポートのポートラベルαに対して登録されている出力ポートＰ１を、Ｆｌｕｓｈフレームを受信したポートの出力ポートＰ２に置換するからである。
（第３の実施の形態）
以降では、本発明の第３の実施の形態について、図面を参照して詳細に説明する。
本発明の第１及び第２の実施の形態においては、フレームの宛先ＭＡＣアドレスに対して、ポートラベルを介して、出力ポートが関係付けられていた。
しかしながら、ネットワークプロトコルによっては、フレームの宛先ＭＡＣアドレスに対して、出力ポート以外の情報が関係付けられる場合がある。
例えば、２００４年にＩＥＥＥから発行された標準化文書であるＩＥＥＥ  Ｓｔａｎｄａｒｄｓ  ８０２．１７で開示されているＲｅｓｉｌｉｅｎｔ  Ｐａｃｋｅｔ  Ｒｉｎｇ（ＲＰＲ）の適用されたネットワーク（以下、ＲＰＲネットワークと記述する）においては、ＲＰＲネットワークを構成するノード（以下、ＲＰＲノードと記述する）は、ＲＰＲフレームのペイロードに格納されたＥｔｈｅｒｎｅｔ（登録商標）フレームの送信元ＭＡＣアドレスとＲＰＲフレームの送信元ＲＰＲノードＭＡＣアドレスとの関係を、宛先ＭＡＣアドレスと宛先ＲＰＲノードＭＡＣアドレスとの関係として、ＦＤＢに登録する。
すなわち、ＲＰＲノードのＦＤＢにおいては、ＲＰＲネットワークに属するＲＰＲノードの配下に収容されているノードが管理される。
このように、ＲＰＲネットワークにおいては、フレームの宛先ＭＡＣアドレスに対して、宛先ＲＰＲノードＭＡＣアドレスが関係付けられる。
本発明の第３の実施の形態においては、フレームの宛先ＭＡＣアドレスに対して出力ポート以外の情報が関係付けられる通信システムにおいて、ノードがＦＤＢを短時間でフラッシュ又は変更する方法についてＲＰＲノードを例として説明する。
（第３の実施の形態の構成）
（ＲＰＲノードの構成）
本発明の適用されたＲＰＲノードには、第１の実施の形態におけるＳＴＰノード１００及び第２の実施の形態におけるノード６２０に配備されるＦＤＢ部４５０と同様の構成を有するＦＤＢ部４５０が配備される。
しかしながら、本実施の形態におけるＲＰＲノードのＦＤＢ部４５０には、ＳＴＰノード１００又はノード６２０において宛先ＭＡＣアドレスとポートラベルとの関係を登録するＦＤＢ４７０の代わりに、宛先ＭＡＣアドレスとアドレスラベルとの関係を登録するＦＤＢ７１０が配備される。
また、本実施の形態におけるＲＰＲノードのＦＤＢ部４５０には、ＳＴＰノード１００又はノード６２０において入力ポートとポートラベルとの関係を登録する入力ポートテーブル４８０の代わりに、ＲＰＲネットワークを構成するＲＰＲノードのアドレス（以下、ＲＰＲノードアドレスと記述する）とアドレスラベルとの関係を登録するＲＰＲノードアドレステーブル７２０が配備される。
また、ＲＰＲノードのＦＤＢ部４５０には、ＳＴＰノード１００又はノード６２０においてポートラベルと出力ポートとの関係を登録するポートラベルテーブル４９０の代わりに、アドレスラベルと宛先ＲＰＲノードアドレスとの関係を登録するアドレスラベルテーブル７３０が配備される。
図３５〜図３７は、４台のＲＰＲノードにより構成されるＲＰＲネットワークに属するＲＰＲノードのＦＤＢ７１０（図３５）、ＲＰＲノードアドレステーブル７２０（図３６）、アドレスラベルテーブル７３０（図３７）の例である。
（第３の実施の形態の動作）
ＲＰＲノードのＦＤＢ部４５０が、受信ＲＰＲフレームのペイロードに格納されたフレームの送信元ＭＡＣアドレスと受信ＲＰＲフレームの送信元ＲＰＲノードのアドレスとの関係を宛先ＭＡＣアドレスとポートアドレスとの関係としてＦＤＢ７１０に登録する動作（アドレス学習）と、ＲＰＲノードのスイッチ部に宛先ＲＰＲノードアドレスを通知する動作と、ＲＰＲノードのＦＤＢ７１０をフラッシュ又は更新する動作は、出力ポートがＲＰＲノードアドレスに変更され、また、ポートラベルがアドレスラベルに変更された点を除いては、ＳＴＰノード１００及びノード６２０のＦＤＢ部４５０の動作と同様である。
（第３の実施の形態の効果）
以上説明した本実施の形態によれば、ＲＰＲのように宛先ＭＡＣアドレスと出力ポート以外の情報がＦＤＢ７１０に登録されるネットワークプロトコルが適用された通信システムであったとしても、第１及び第２の実施の形態と同様に、短時間でＦＤＢ７１０をフラッシュ又は更新することが可能であるため、障害から短時間で復帰することが可能である。
その理由は、ＲＰＲノードのＦＤＢ部４５０に、宛先ＭＡＣアドレスとポートラベルとの関係を登録するＦＤＢ４７０の代わりに、宛先ＭＡＣアドレスとアドレスラベルとの関係を登録するＦＤＢ７１０が配備され、入力ポートとポートラベルとの関係を登録する入力ポートテーブル４８０の代わりに、ＲＰＲノードアドレスとアドレスラベルとの関係を登録するＲＰＲノードアドレステーブル７２０が配備され、ポートラベルと出力ポートとの関係を登録するポートラベルテーブル４９０の代わりに、アドレスラベルと宛先ＲＰＲノードアドレスとの関係を登録するアドレスラベルテーブル７３０が配備され、ＦＤＢ部が、受信ＲＰＲフレームのペイロードに格納されたフレームの送信元ＭＡＣアドレスと受信ＲＰＲフレームの送信元ＲＰＲノードのアドレスとの関係を、宛先ＭＡＣアドレスとポートアドレスとの関係としてＦＤＢ７１０に登録し、ＲＰＲノードのスイッチ部に宛先ＲＰＲノードアドレスを通知し、さらに、出力ポートをＲＰＲノードアドレスに変更しポートラベルをアドレスラベルに変更してＲＰＲノードのＦＤＢ７１０をフラッシュ又は更新するからである。
以上好ましい複数の実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図１】
2007086539.tif 000003
【図２】
2007086539.tif 000004
【図３】
2007086539.tif 000005
【図４】
2007086539.tif 000006
【図５】
2007086539.tif 000007
【図６】
2007086539.tif 000008
【図７】
2007086539.tif 000009
【図８】
2007086539.tif 000010
【図９】
2007086539.tif 000011
【図１０】
2007086539.tif 000012
【図１１】
2007086539.tif 000013
【図１２】
2007086539.tif 000014
【図１４】
2007086539.tif 000015
【図１３】
2007086539.tif 000016
【図１５】
2007086539.tif 000017
【図１６】
2007086539.tif 000018
【図１７】
2007086539.tif 000019
【図１８】
2007086539.tif 000020
【図１９】
2007086539.tif 000021
【図２０】
2007086539.tif 000022
【図２１】
2007086539.tif 000023
【図２２】
2007086539.tif 000024
【図２４】
2007086539.tif 000025
【図２５】
2007086539.tif 000026
【図２６】
2007086539.tif 000027
【図２７】
2007086539.tif 000028
【図２８】
2007086539.tif 000029
【図２３】
2007086539.tif 000030
【図２９】
2007086539.tif 000031
【図３０】
2007086539.tif 000032
【図３１】
2007086539.tif 000033
【図３２】
2007086539.tif 000034
【図３３】
2007086539.tif 000035
【図３５】
2007086539.tif 000036
【図３４】
2007086539.tif 000037
【図３６】
2007086539.tif 000038
【図３７】
2007086539.tif 000039
【手続補正書】
【提出日】平成19年11月26日(2007.11.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（削除）
【請求項２】
（削除）
【請求項３】
転送先情報によってフレームをネットワーク上に転送するネットワークノードにおいて、
フレームの宛先情報と関係付けて仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルと、
前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルを備えることを特徴とするネットワークノード。
【請求項４】
転送先情報によってフレームをネットワーク上に転送するネットワークノードにおいて、
フレームの宛先情報と、仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報とを関係付ける仮想的転送先情報テーブルと、
前記仮想的転送先情報と前記転送先情報とを関係付ける転送先情報テーブルと、
前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルを備えることを特徴とするネットワークノード。
【請求項５】
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送することを特徴とする請求項３又は請求項４に記載のネットワークノード。
【請求項６】
受信したフレームの送信元情報を、前記受信情報テーブルに基づいて、受信した前記フレームの受信情報に関係付けられている前記仮想的転送先情報と関係付けて前記仮想的転送先情報テーブルに登録することを特徴とする請求項４又は請求項５に記載のネットワークノード。
【請求項７】
受信した前記フレームを、受信した前記フレームの送信元情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送することを特徴とする請求項６に記載のネットワークノード。
【請求項８】
転送先情報によってフレームをネットワーク上に転送するネットワークノードにおいて、
フレームの宛先情報と、仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報のそれぞれに対して、前記仮想的転送先情報毎に異なる前記転送先情報を関係付ける仮想的転送先情報テーブルと、
前記仮想的転送先情報と前記転送先情報を関係付ける転送先情報テーブルを備え、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている前記仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている転送先情報が有効である場合、受信した前記フレームを前記転送先情報に基づいてユニキャスト転送し、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている転送先情報が無効である場合、
又は、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、取得した前記仮想的転送先情報に関する前記転送先情報テーブルのエントリが無効である場合、
又は、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、取得した前記仮想的転送先情報に関する前記転送先情報テーブルのエントリが存在しない場合、
受信した前記フレームをブロードキャスト転送することを特徴とするネットワークノード。
【請求項９】
（削除）
【請求項１０】
前記転送先情報テーブルに登録されている転送先情報を、前記転送先情報と異なる転送先情報に置換することによって、フレームの宛先情報と転送先情報との関係を更新することを特徴とする請求項３から請求項８の何れか１項に記載のネットワークノード。
【請求項１１】
前記転送先情報テーブルに登録されている転送先情報を消去、又は、無効な情報に置換することによって、フレームの宛先情報と前記転送先情報との関係を破棄することを特徴とする請求項３から請求項８、請求項１０の何れか１項に記載のネットワークノード。
【請求項１２】
前記転送先情報テーブルのエントリにエントリの有効性を示すフィールドを持たせたことを特徴とする請求項３から請求項８、請求項１０、請求項１１の何れか１項に記載のネットワークノード。
【請求項１３】
前記仮想的転送先情報テーブルにおいてフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記仮想的転送先情報に関する前記転送先情報テーブルのエントリの有効性を示す前記フィールドにエントリの無効を示す情報を登録することによって、
前記宛先情報と前記転送先情報との関係を破棄し、前記宛先情報を有するフレームを前記転送先情報以外の転送先情報に基づいて転送することを特徴とする請求項１２に記載のネットワークノード。
【請求項１４】
前記フレームの宛先情報と前記転送先情報との関係を破棄した後、前記転送先情報テーブルにおいて前記転送先情報に関係付けられていた、前記仮想的転送先情報テーブルと前記受信情報テーブルの何れか一方、又は、両方の仮想的転送先情報に関するエントリを削除することを特徴とする請求項１０から請求項１３の何れか１項に記載のネットワークノード。
【請求項１５】
前記ネットワークの状態に基づいて、前記転送先情報テーブルにおいて無効な転送先情報に関係付けられている仮想的転送先情報を取得し、
前記受信情報テーブルに登録されている前記仮想的転送先情報を、前記仮想的転送先情報と異なり、前記転送先情報テーブルにおいて有効な転送先情報と関連付けられた仮想的転送先情報に置換することを特徴とする請求項３から請求項８、請求項１０から請求項１４の何れか１項に記載のネットワークノード。
【請求項１６】
前記受信情報テーブルにおける置換後の前記仮想的転送先情報と前記受信情報との関係を、仮想的転送先情報と転送先情報との関係として前記転送先情報テーブルに登録することを特徴とする請求項１５に記載のネットワークノード。
【請求項１７】
前記受信情報テーブルにおいて１個の受信情報に対して複数種類の仮想的転送先情報を関係付けることを特徴とする請求項３から請求項８、請求項１０から請求項１６の何れか１項に記載のネットワークノード。
【請求項１８】
受信したフレームの送信元情報と、
前記受信情報テーブルにおいて前記フレームの受信情報に関係付けられている複数種類の仮想的転送先情報のうち、ネットワークノード自身の状態に基づいて選択された１個の仮想的転送先情報との関係を、フレームの宛先情報と仮想的転送先情報との関係として前記仮想的転送先情報テーブルに登録することを特徴とする請求項１７に記載のネットワークノード。
【請求項１９】
前記転送先情報が、出力先情報識別子、ネットワークノード識別子、ＶＬＡＮ識別子、又は、通信経路識別子の何れか１つの識別子であることを特徴とする請求項３から請求項８、請求項１０から請求項１８の何れか１項に記載のネットワークノード。
【請求項２０】
前記フレームの受信情報が、
出力先情報識別子、及び、ネットワークノード識別子、及び、ＶＬＡＮ識別子、及び、通信経路識別子の何れか１つ、又は、前記識別子を任意に組み合わせて構成される情報であることを特徴とする請求項３から請求項８、請求項１０から請求項１９の何れか１項に記載のネットワークノード。
【請求項２１】
前記仮想的転送先情報が、
前記出力先情報テーブルが格納される記憶デバイスにおいて、
前記仮出力先情報に関係付けられている出力先情報が格納される記憶領域を指示するアドレスであることを特徴とする請求項３から請求項８、請求項１０から請求項２０の何れか１項に記載のネットワークノード。
【請求項２２】
（削除）
【請求項２３】
転送先情報によってフレームをネットワーク上に転送するネットワークノード上で実行されるフレーム転送プログラムであって、
フレームの宛先情報と関係付けて仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの前記仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する機能を前記ネットワークノードに持たせ、
前記テーブルと、前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルとに基づいて、
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に従って転送する機能を前記ネットワークノードに持たせることを特徴とするフレーム転送プログラム。
【請求項２４】
転送先情報によってフレームをネットワーク上に転送するネットワークノード上で実行されるフレーム転送プログラムであって、
フレームの宛先情報と、仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報とを関係付ける仮想的転送先情報テーブルと、
前記仮想的転送先情報と前記転送先情報とを関係付ける転送先情報テーブルとを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する機能を前記ネットワークノードに持たせ、
前記テーブルと、前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルとに基づいて、
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に従って転送する機能を前記ネットワークノードに持たせることを特徴とするフレーム転送プログラム。
【請求項２５】
受信したフレームの送信元情報を、前記受信情報テーブルに基づいて、受信した前記フレームの受信情報に関係付けられている前記仮想的転送先情報と関係付けて前記仮想的転送先情報テーブルに登録する機能と、
受信した前記フレームを、受信した前記フレームの送信元情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２３又は請求項２４に記載のフレーム転送プログラム。
【請求項２６】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている前記仮想的転送先情報を取得する機能と、
前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている前記転送先情報に基づいて、受信した前記フレームを転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２５の何れか１項に記載のフレーム転送プログラム。
【請求項２７】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている転送先情報が転送無効である場合、
又は、
受信した前記フレームの宛先情報に関する前記仮想的転送先情報テーブルのエントリが無効である場合、
又は、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、取得した前記仮想的転送先情報に関する前記転送先情報テーブルのエントリが無効である場合に、
受信した前記フレームをブロードキャスト転送する機能を前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２６の何れか１項に記載のフレーム転送プログラム。
【請求項２８】
前記転送先情報テーブルに登録されている転送先情報を、前記転送先情報と異なる転送先情報に置換することによって、フレームの宛先情報と転送先情報との関係を更新する機能と、
置換後の転送先情報に基づいて、受信したフレームを転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２７の何れか１項に記載のフレーム転送プログラム。
【請求項２９】
前記転送先情報テーブルに登録されている転送先情報を消去、又は、無効な情報に置換することによって、フレームの宛先情報と前記転送先情報との関係を破棄し、受信したフレームをブロードキャストする機能を前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２８の何れか１項に記載のフレーム転送プログラム。
【請求項３０】
前記仮想的転送先情報テーブルにおいてフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記仮想的転送先情報に関する前記転送先情報テーブルのエントリの有効性を示すフィールドにエントリの無効を示す情報を登録することによって、
前記宛先情報と前記転送先情報との関係を破棄し、前記宛先情報を有するフレームを前記転送先情報以外の転送先情報に基づいて転送する機能を前記ネットワークノードに持たせることを特徴とする請求項２３から請求項２９の何れか１項に記載のフレーム転送プログラム。
【請求項３１】
前記ネットワークの状態に基づいて、前記転送先情報テーブルにおいて無効な転送先情報に関係付けられている仮想的転送先情報を取得する機能と、
前記受信情報テーブルに登録されている前記仮想的転送先情報を、前記仮想的転送先情報と異なり、前記転送先情報テーブルにおいて有効な転送先情報と関連付けられた仮想的転送先情報に置換する機能と、
置換後の仮想的転送先情報に関連付けられた有効な前記転送先情報に基づいて、受信したフレームを転送する機能とを前記ネットワークノードに持たせることを特徴とする請求項２４から請求項３０の何れか１項に記載のフレーム転送プログラム。
【請求項３２】
（削除）
【請求項３３】
転送先情報によってネットワークノードがフレームをネットワーク上に転送するフレーム転送方法であって、
フレームの宛先情報と関係付けて仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの前記仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する転送ステップを有し、
前記転送ステップは、
前記テーブルと、前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルとに基づいて、
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に従って転送することを特徴とするフレーム転送方法。
【請求項３４】
転送先情報によってネットワークノードがフレームをネットワーク上に転送するフレーム転送方法であって、
フレームの宛先情報と、仮想的に定義され、前記フレームの宛先情報の総数以下の種類に分類された前記フレームの仮想的転送先情報とを関係付ける仮想的転送先情報テーブルと、
前記仮想的転送先情報と、前記転送先情報とを関係付ける転送先情報テーブルとを用い、
前記ネットワークの状態に基づいて前記転送先情報テーブルにおける前記フレームの仮想的転送先情報と前記転送先情報との関係を更新又は破棄することによって、前記フレームの宛先情報と前記転送先情報との関係を変更し、受信したフレームを転送する転送ステップを有し、
前記転送ステップは、
前記テーブルと、前記フレームの受信情報と前記仮想的転送先情報との関係を登録する受信情報テーブルとに基づいて、
受信したフレームを、受信した前記フレームの受信情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に従って転送することを特徴とするフレーム転送方法。
【請求項３５】
受信したフレームの送信元情報を、前記受信情報テーブルに基づいて、受信した前記フレームの受信情報に関係付けられている前記仮想的転送先情報と関係付けて前記仮想的転送先情報テーブルに登録するステップを備え、
前記転送ステップは、
受信した前記フレームを、受信した前記フレームの送信元情報に関連付けられた前記仮想的転送先情報に対応する転送先情報に基づいて転送することを特徴とする請求項３３又は請求項３４に記載のフレーム転送方法。
【請求項３６】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている前記仮想的転送先情報を取得するステップを備え、
前記転送ステップは、
前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている前記転送先情報に基づいて、受信した前記フレームを転送することを特徴とする請求項３３から請求項３５の何れか１項に記載のフレーム転送方法。
【請求項３７】
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記転送先情報テーブルにおいて前記仮想的転送先情報に関係付けられている転送先情報が転送無効である場合、
又は、
受信した前記フレームの宛先情報に関する前記仮想的転送先情報テーブルのエントリが無効である場合、
又は、
前記仮想的転送先情報テーブルに基づいて、受信したフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、取得した前記仮想的転送先情報に関する前記転送先情報テーブルのエントリが無効である場合に、
前記転送ステップは、
受信した前記フレームをブロードキャスト転送することを特徴とする請求項３３から請求項３６の何れか１項に記載のフレーム転送方法。
【請求項３８】
前記転送先情報テーブルに登録されている転送先情報を、前記転送先情報と異なる転送先情報に置換することによって、フレームの宛先情報と転送先情報との関係を更新するステップを備え、
前記転送ステップは、
置換後の転送先情報に基づいて、受信したフレームを転送するステップを有することを特徴とする請求項３３から請求項３７の何れか１項に記載のフレーム転送方法。
【請求項３９】
前記転送ステップは、
前記転送先情報テーブルに登録されている転送先情報を消去、又は、無効な情報に置換することによって、フレームの宛先情報と前記転送先情報との関係を破棄し、受信したフレームをブロードキャストすることを特徴とする請求項３３から請求項３８の何れか１項に記載のフレーム転送方法。
【請求項４０】
前記転送ステップは、
前記仮想的転送先情報テーブルにおいてフレームの宛先情報に関係付けられている仮想的転送先情報を取得し、前記仮想的転送先情報に関する前記転送先情報テーブルのエントリの有効性を示すフィールドにエントリの無効を示す情報を登録することによって、
前記宛先情報と前記転送先情報との関係を破棄し、前記宛先情報を有するフレームを前記転送先情報以外の転送先情報に基づいて転送することを特徴とする請求項３３から請求項３９の何れか１項に記載のフレーム転送方法。
【請求項４１】
前記ネットワークの状態に基づいて、前記転送先情報テーブルにおいて無効な転送先情報に関係付けられている仮想的転送先情報を取得するステップと、
前記受信情報テーブルに登録されている前記仮想的転送先情報を、前記仮想的転送先情報と異なり、前記転送先情報テーブルにおいて有効な転送先情報と関連付けられた仮想的転送先情報に置換するステップとを備え、
前記転送ステップは、
置換後の仮想的転送先情報に関連付けられた有効な前記転送先情報に基づいて、受信したフレームを転送することを特徴とする請求項３４から請求項４０の何れか１項に記載のフレーム転送方法。
【国際調査報告】
2007086539.tif 000040
2007086539.tif 000041
2007086539.tif 000042
2007086539.tif 000043
2007086539.tif 000044
2007086539.tif 000045
2007086539.tif 000046
2007086539.tif 000047
2007086539.tif 000048