(57)【特許請求の範囲】
【請求項１】
中継装置であって、
当該中継装置の優先度を記憶した優先度記憶手段と、
前記優先度とホップ数とを含む優先度データを、リングを形成する回線に接続された二つのポートのそれぞれから、相互に前記リングの逆回り方向に送出する優先度データ送出手段と、
他の中継装置より送出された前記優先度データが一方の前記ポートより受信された場合に、当該優先度データの優先度が前記優先度記憶手段に記憶された優先度より高いときは当該優先度データのホップ数を更新して、当該優先度データを他方の前記ポートより送出させる優先度データ転送手段と、
送信元が一致する前記優先度データが前記二つのポートより受信された場合に、受信された二つの前記優先度データに含まれるホップ数の比較結果に応じて前記ポートの一方を論理的に遮断する遮断手段と、
受信されたユニキャストのフレームの宛先に対応するポートが論理的に遮断されているポートである場合に、当該フレームを該宛先に対応するポートより送出させる中継手段とを有する中継装置。
【請求項２】
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が１である場合は、ホップ数の大きい前記優先度データを受信したポートを遮断する請求項１記載の中継装置。
【請求項３】
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数が同じである場合は、前記優先度データを先に受信したポートを遮断する請求項１又は２記載の中継装置。
【請求項４】
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が２である場合は、他の前記中継装置において遮断されたポートに接続されるポートを遮断する請求項３記載の中継装置。
【請求項５】
前記優先度データ転送手段は、前記優先度データの宛先アドレスとして、隣接する中継装置のアドレスを使用する請求項１乃至４いずれか一項記載の中継装置。
【請求項６】
当該中継装置の優先度を当該中継装置に接続されている回線の数に応じて定める優先度設定手段をさらに備える請求項１乃至５いずれか一項記載の中継装置。
【請求項７】
前記優先度データ送出手段は、前記二つのポートの少なくともいずれか一方が通信不能の場合は、最高の優先度を含む前記優先度データを送出する請求項１乃至６いずれか一項記載の中継装置。
【請求項８】
リング状に接続された複数の中継装置を含むネットワークシステムであって、
前記中継装置は、
当該中継装置の優先度を記憶した優先度記憶手段と、
前記優先度とホップ数とを含む優先度データを、リングを形成する回線に接続された二つのポートのそれぞれから、相互に前記リングの逆回り方向に送出する優先度データ送出手段と、
他の中継装置より送出された前記優先度データが一方の前記ポートより受信された場合に、当該優先度データの優先度が前記優先度記憶手段に記憶された優先度より高いときは当該優先度データのホップ数を更新して、当該優先度データを他方の前記ポートより送出させる優先度データ転送手段と、
送信元が一致する前記優先度データが前記二つのポートより受信された場合に、受信された二つの前記優先度データに含まれるホップ数の比較結果に応じて前記ポートの一方を論理的に遮断する遮断手段とを有するネットワークシステム。
【請求項９】
中継装置を、
当該中継装置の優先度を記憶した優先度記憶手段と、
前記優先度とホップ数とを含む優先度データを、リングを形成する回線に接続された二つのポートのそれぞれから、相互に前記リングの逆回り方向に送出する優先度データ送出手段と、
他の中継装置より送出された前記優先度データが一方の前記ポートより受信された場合に、当該優先度データの優先度が前記優先度記憶手段に記憶された優先度より高いときは当該優先度データのホップ数を更新して、当該優先度データを他方の前記ポートより送出させる優先度データ転送手段と、
送信元が一致する前記優先度データが前記二つのポートより受信された場合に、受信された二つの前記優先度データに含まれるホップ数の比較結果に応じて前記ポートの一方を論理的に遮断する遮断手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継装置、ネットワークシステム、及びプログラムに関し、特にレイヤ２のフレームを中継する中継装置、ネットワークシステム、及びプログラムに関する。
【背景技術】
【０００２】
ネットワークにおいてループが形成される場合、適切な対処がされないとフレームのストームが発生するという問題がある。
【０００３】
そこで、例えば、特許文献１では、リングを形成するスイッチ間の回線（リンク）のうち、特定のノードから最も遠く離れた箇所（回線）を論路的に遮断することが開示されている。
【０００４】
また、ＳＴＰ（Spanning Tree Protocol）のように、ループの形成を自動的に検出し、スイッチのトポロジー情報等に基づいて、論理的に遮断する箇所を決定する技術も有る。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２８２４０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、論理的に遮断される箇所が、固定的に選択された特定のノードを基準として選択される場合、ネットワークトラフィックに鑑みて必ずしも適切な箇所が遮断されるとは限らない。したがって、遮断箇所によっては、フレームのホップ数が増加し、フレームの転送経路が非常に非効率になる可能性がある。
【０００７】
また、ＳＴＰでは、トポロジー情報等を利用した非常に複雑な演算が必要とされる。
【０００８】
本発明は、上記の点に鑑みてなされたものであって、ネットワーク構成が枝分かれの無い単純なループ構成の場合に、そのネットワークのループを適切に解消することのできる中継装置、ネットワークシステム、及びプログラムの提供を目的とする。
【課題を解決するための手段】
【０００９】
そこで上記課題を解決するため、中継装置であって、当該中継装置の優先度を記憶した優先度記憶手段と、前記優先度とホップ数とを含む優先度データを、リングを形成する回線に接続された二つのポートよりそれぞれ前記リングの逆回り方向に送出する優先度データ送出手段と、他の中継装置より送出された前記優先度データが一方の前記ポートより受信された場合に、当該優先度データの優先度が前記優先度記憶手段に記憶された優先度より高いときは当該優先度データのホップ数を更新して、当該優先度データを他方の前記ポートより送出させる優先度データ転送手段と、送信元が一致する前記優先度データが前記二つのポートより受信された場合に、受信された二つの前記優先度データに含まれるホップ数の比較結果に応じて前記ポートの一方を論理的に遮断する遮断手段とを有する。
【発明の効果】
【００１０】
開示された技術によれば、ネットワーク構成が枝分かれの無い単純なループ構成の場合に、そのネットワークのループを適切に解消することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態におけるスイッチのハードウェア構成例を示す図である。
【図２】本発明の実施の形態におけるスイッチの機能構成例を示す図である。
【図３】スイッチの起動時の処理手順を説明するためのフローチャートである。
【図４】リングポートに関してリンクアップが発生した場合の処理手順を説明するためのフローチャートである。
【図５】リングポートを介した制御用フレームの受信に応じて実行される処理手順を説明するための図である。
【図６】送信元が一致する二つの制御用フレームのホップ数の比較に応じた遮断処理を説明するためのフローチャートである。
【図７】送信タイマがタイムアウトした場合の処理手順を説明するためのフローチャートである。
【図８】受信タイマがタイムアウトした場合又はリングポートについてリンクダウンが発生した場合の処理手順を説明するためのフローチャートである。
【図９】スイッチの台数が奇数の場合のリングネットワークの動作例を説明するための図である。
【図１０】スイッチの台数が奇数の場合のリングネットワークの動作例を説明するための図である。
【図１１】スイッチの台数が偶数の場合のリングネットワークの動作例を説明するための図である。
【図１２】スイッチの台数が偶数の場合のリングネットワークの動作例を説明するための図である。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態におけるスイッチのハードウェア構成例を示す図である。同図に示されるスイッチ１０は、中継装置の一例としてのレイヤ２のスイッチである。また、本実施の形態において、スイッチ１０は、リング状（環状）のネットワーク（リングネットワーク）に属する一つのスイッチ１０である。同図において、スイッチ１０は、スイッチチップ１１、ＣＰＵ１３、ＲＡＭ１４、ＲＯＭ１５、及び複数のポートＰ等を有する。
【００１３】
ポートＰは、ネットワーク（回線）と接続するためのインタフェースである。フレームは、ポートを介して受信され、ポートより出力される。
【００１４】
スイッチチップ１１は、受信されたフレームの中継機能を備えたＡＳＩＣ（Application Specific Integrated Circuit）等の専用のチップである。スイッチチップ１１は、メモリ１２を有する。メモリ１２には、フレームの中継に必要なデータが記録されている。
【００１５】
ＲＯＭ１５は、スイッチ１０の動作を制御するためのプログラムが記録された記憶媒体である。ＲＡＭ１４は、ＲＯＭ１５に記録されたプログラムをロードするための記憶媒体である。ＣＰＵ１３は、ＲＡＭ１４にロードされたプログラムに基づいてスイッチ１０の動作を制御する。
【００１６】
図２は、本発明の実施の形態におけるスイッチの機能構成例を示す図である。本実施の形態において各スイッチ１０は、初期化部１２１、優先度設定部１２２、優先度記憶部１２３、制御用フレーム送出部１２４、制御用フレーム転送部１２５、遮断部１２６、中継部１２７、及び中継ＤＢ１２８等を有する。
【００１７】
初期化部１２１は、スイッチ１０の起動時において、初期化処理を実行する。
【００１８】
優先度設定部１２２は、スイッチ１０に対する優先度の設定処理を行う。優先度とは、リングネットワークに属する複数のスイッチ１０間の優劣を示すパラメータである。優先度は、ユーザの意思に基づいて設定されてもよいし、外部の管理装置において判定された値が設定されてもよいし、優先度設定部１２２が自動的に判定してもよい。ユーザの意思に基づいて設定される場合、又は外部の管理装置によって設定される場合、スイッチ１０に接続されている各回線の帯域やスイッチ１０の通信量に基づいて優先度が設定されるようにするとよい。回線の帯域が大きい程、又は通信量が多い程、高い優先度が与えられる。また、優先度設定部１２２は、例えば、スイッチ１０に接続されている回線数（回線が接続されているポートＰの数）に基づいて優先度を自動的に判定する。当該回線数が多い程、高い優先度が与えられる。すなわち、優先度とは、各スイッチ１０の通信量の推測値を示すパラメータであるといえる。したがって、リングネットワークに属する複数のスイッチ１０間の優劣とは、当該複数のスイッチ１０間の通信量の大小関係を意味する。
【００１９】
優先度設定部１２２によって設定された優先度は、優先度記憶部１２３に記録される。優先度記憶部１２３は、例えば、ＲＡＭ１４を用いて優先度を記憶する。
【００２０】
制御用フレーム送出部１２４は、リングネットワークを形成する回線（リンク）を介して接続される（リングネットワークにおいて隣接する）他のスイッチ１０に対して、自機（当該スイッチ１０）の優先度を通知するための制御用のフレームを送出する。当該制御用フレームは、優先度データの一例である。リングネットワークに属する各スイッチ１０に接続される回線のうち、当該リングネットワークを形成する回線は二つである。したがって、制御用フレーム送出部１２４は、当該回線に接続される二つのポートＰ（以下、「リングポートＰ」という。）より、自機の優先度を含む制御用フレームを、リングネットワークにおいて相互に逆回りとなるように送出する。すなわち、制御用フレームは、リングネットワークにおいて両隣のスイッチ１０に送出される。制御用フレームには、優先度の他に、ホップ数及び送信元スイッチをネットワーク内で一意に識別するための識別子等が含まれる。送信元ＭＡＣアドレスは、制御用フレームの送信元（送出元）のスイッチ１０の識別子の一例である。制御用フレームの宛先アドレスとしては、隣接するスイッチ１０のＭＡＣアドレス、または、ＢＰＤＵ（Ｂｒｉｄｇｅ  Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）のアドレスのように隣接スイッチにのみに到達して、隣接スイッチから先には中継されないマルチキャストアドレスを使用する。
【００２１】
制御用フレーム転送部１２５は、受信された他のスイッチ１０からの制御用フレームの転送を行う。転送先は、制御用フレームの受信ポートとは別のリングポートＰであり、転送に当たっては、上記と同様に、宛先アドレスとして、該リングポートＰ側に隣接するスイッチのみに到達するアドレスを使用する。また、制御用フレーム転送部１２５は、転送される制御用フレームのホップ数を更新する。すなわち、ホップ数に１が加算される。但し、制御用フレーム転送部１２５は、自機の優先度より低い優先度を含む制御用フレームは破棄する。破棄とは、転送されないことをいう。したがって、リングネットワークにおいて、最終的に１周できる制御用フレームは、優先度の最も高いスイッチ１０より送出された制御用フレームである。
【００２２】
遮断部１２６は、同一の他のスイッチ１０より送出された制御用フレームが二つリングポートＰより（すなわち、双方向より）受信された場合に、受信された二つの制御用フレームに含まれているホップ数を比較する。遮断部１２６は、当該比較結果に応じて、二つのリングポートＰのいずれか一方をフレームの中継に関して論理的に遮断する。但し、遮断されたリングポートＰにおいて、学習済みユニキャストフレームの通過は許可される。学習済みユニキャストフレームとは、スイッチ１０が学習済みで送信先ポートが一つに決まっている宛先ＭＡＣアドレスを含むフレームである。換言すれば、遮断されたリングポートＰにおいて通過が許可されないのは、受信ポート以外の全ポートＰに送出されるフレームである。斯かるフレームとしては、未学習のユニキャストフレーム、マルチキャストフレーム、又はブロードキャストフレーム等が挙げられる。
【００２３】
中継部１２７は、スイッチ１０の基本的な機能であるノードの学習及びフレームの中継等を行う。具体的には、中継部１２７は、フレームの受信に応じ、受信フレームの送信元ＭＡＣアドレスと受信ポートとの対応関係を中継ＤＢ１２８に記録する。これによって、当該送信元ＭＡＣアドレスに係るノードが学習される。中継部１２７は、また、受信フレームの宛先ＭＡＣアドレスとポートとの対応関係が中継ＤＢ１２８に登録されている場合には、当該ポートより受信フレームを送出させる。中継部１２７は、更に、受信フレームの宛先ＭＡＣアドレスとポートとの対応関係が中継ＤＢ１２８に登録されていない場合（受信フレームの宛先が未学習の場合）には、フラッディングを行う。フラッディングとは、受信ポート以外の全てのポートより受信フレームを送出することをいう。
【００２４】
なお、中継部１２７は、スイッチチップ１１によって実現される。中継ＤＢ１２８は、メモリ１２内に形成される。また、初期化部１２１、優先度設定部１２２、優先度記憶部１２３、制御用フレーム送出部１２４、制御用フレーム転送部１２５、及び遮断部１２６等は、中継部１２７との比較において高速な処理は要求されないため、ＣＰＵ１３によって実行される処理によって実現される。但し、初期化部１２１、優先度設定部１２２、優先度記憶部１２３、制御用フレーム送出部１２４、制御用フレーム転送部１２５、及び遮断部１２６等についても、スイッチチップ１１によって実現されてもよい。
【００２５】
以下、スイッチ１０の処理手順について説明する。まず、フローチャートを用いて、一台のスイッチ１０において実行される処理手順を説明する。その後、当該処理手順がリングネットワークに属する各スイッチ１０によって実行されることにより、リングネットワーク全体としてどのような動作が行われるかを具体的に説明する。
【００２６】
図３は、スイッチの起動時の処理手順を説明するためのフローチャートである。
【００２７】
スイッチ１０の起動に応じ、初期化部１２１は、二つのリングポートＰを論理的な遮断状態（ブロッキング状態）とする（Ｓ１０１）。
【００２８】
続いて、図４は、リングポートに関してリンクアップが発生した場合の処理手順を説明するためのフローチャートである。なお、リンクアップとは、回線に接続され、通信可能となった状態をいう。また、同図では、一方のリングポートＰに関してリンクアップが発生したこととする。
【００２９】
リンクアップに応じ、制御用フレーム送出部１２４は、制御用フレームを生成し、当該制御用フレームをリンクアップに係るリングポートＰより送出する（Ｓ１１１）。当該制御用フレームには、自機（当該スイッチ１０）の優先度記憶部１２３に記録されている優先度、及びホップ数（＝０）が含まれる。また、送信元識別子として、自機のＭＡＣアドレスが含まれる。
【００３０】
続いて、制御用フレーム送出部１２４は、各種タイマをスタートさせる（Ｓ１１２）。二つのリングポートＰごとに、送信タイマ及び受信タイマが有る。図４又は以降のフローチャートにおいて対象とされているリングポートＰの送信タイマをＴａ１、受信タイマをＴａ２として表記する。他方のリングポートＰの送信タイマをＴｂ１、受信タイマのＴｂ２として表記する。ステップＳ１１２では、リンクアップに係るリングポートＰの送信タイマと、二つのリングポートＰの受信タイマとがスタートされる。
【００３１】
なお、その後、他方のリングポートＰに関してリンクアップが発生した場合についても、図４と同様の処理が実行される。但し、タイマについては、当該リングポートに対する送信タイマのみがスタートされる。他のタイマは既にスタート済みだからである。
【００３２】
続いて、図５は、リングポートを介した制御用フレームの受信に応じて実行される処理手順を説明するための図である。同図では、一方のリングポートＰにおいて、他のスイッチ１０より送出された制御用フレームが受信された場合を想定する。同図の説明において、制御用フレームを受信したリングポートＰを「ポートＡ」といい、他方のリングポートＰを「ポートＢ」という。
【００３３】
制御用フレームの受信に応じ、遮断部１２６は、ポートＡの受信タイマ（Ｔａ２）をリスタート（初期化）させる（Ｓ２０１）。続いて、遮断部１２６は、自機の優先度記憶部１２３を参照して、自機の優先度は特別レベルであるか否かを判定する（Ｓ２０２）。例えば、優先度記憶部１２３に、特別レベルを示す情報（以下、「特別レベルフラグ」という。）が記録されている場合、自機の優先度は特別レベルであると判定される。後述されるように、特別レベルの優先度は、リングポートＰに関してリンクダウンが発生した場合に与えられる。特別レベルの優先度は、通常与えられるいかなる優先度よりも高い。すなわち、特別レベルの優先度は、絶対的に最高の優先度である。
【００３４】
自機の優先度が特別レベルである場合（Ｓ２０２でＹｅｓ）、遮断部１２６は、ポートＢにおいて制御用フレームは既に受信されているか否かを判定する（Ｓ２０３）。ポートＢにおいて制御用フレームが受信されている場合（Ｓ２０３でＹｅｓ）、遮断部１２６は、自機の優先度を元の（本来）の優先度に戻す（Ｓ２０４）。具体的には、遮断部１２６は、優先度記憶部１２３より特別レベルフラグを削除する。すなわち、ポートＢにおいても制御用フレームが受信されているということは、二つのリングポートＰのいずれかにおいて発生したリンクダウン（通信不能な状態）は解消されていると考えられるから。なお、ポートＢにおいて制御用フレームが受信されていない場合は（Ｓ２０３でＮｏ）、優先度は特別レベルのままとされる。また、自機の優先度が特別レベルでない場合は（Ｓ２０２でＮｏ）、ステップＳ２０３及びＳ２０４は実行されない。
【００３５】
ステップＳ２０５に進み、遮断部１２６は、受信された制御用フレーム（以下、「受信フレーム」という。）の優先度は特別レベルであるか否かを判定する。すなわち、受信フレームは、特別レベルの優先度を有するスイッチ１０より送出されたものであるか否かが判定される。受信フレームの優先度が特別レベルである場合（Ｓ２０５でＹｅｓ）、遮断部１２６は、二つのリングポートＰをフォワーディング状態とする（Ｓ２０６）。フォワーディング状態とは、フレームの中継に関して特別な制限の無い状態である。ここで、特別レベルの優先度を有する受信フレームが受信された場合に、双方のリングポートＰをフォワーディング状態とするのは、自機が有するリングポートＰによってリングネットワークを論理的に遮断する必要はないからである。すなわち、特別レベルの優先度を有する受信フレームが受信されたということは、リングネットワークに属する他のいずれかのスイッチ１０のリングポートＰにおいてリンクダウンが発生していることを意味する。したがって、現時点において、当該リングネットワークにおいてループは形成されておらず、論理的な遮断は不要だからである。
【００３６】
続いて、制御用フレーム転送部１２５は、受信フレームのホップ数に１を加算し、当該受信フレームをポートＢより送出させる。また、制御用フレーム転送部１２５は、ポートＢに対する送信タイマ（Ｔｂ１）を停止させる（Ｓ２０７）。
【００３７】
受信フレームの優先度が特別レベルでない場合（Ｓ２０５でＮｏ）、遮断部１２６は、自機の優先度と受信フレームの優先度とは同じであるか否かを判定する（Ｓ２１１）。本実施の形態では、リングネットワークに属する各スイッチ１０間において、優先度の重複は無いこととする。したがって、ステップＳ２１１の判定は、受信フレームが自機より送出された制御用フレームであるか否かの判定に相当する。
【００３８】
比較された優先度が同じである場合（Ｓ２１１でＹｅｓ）、遮断部１２６は、受信フレームのホップ数が０であるか否かを判定する（Ｓ２１２）。上記したように、優先度が最も高い制御用フレームのみが途中で破棄されず１周することが可能である。したがって、ステップＳ２１２が実行される場合、受信フレームは自機より送出されたものである。換言すれば、自機の優先度が最も高い場合である。但し、二つのリングポートＰが直結されている可能性もある。ステップＳ２１２は、当該可能性を考慮した処理である。
【００３９】
受信フレームのホップ数が０でない場合（すなわち、二つのリングポートＰが直結されていない場合）（Ｓ２１２でＮｏ）、遮断部１２６は、二つのリングポートＰをフォワーディング状態とする（Ｓ２１３）。続いて、転送フレームは、受信フレームを破棄する（Ｓ２１４）。当該受信フレームの無限ループを回避するためである。
【００４０】
受信フレームのホップ数が０である場合（すなわち、二つのリングポートＰが直結されている場合）（Ｓ２１２でＹｅｓ）、遮断部１２６による処理（Ｓ２１３）は実行されずに、制御用フレーム転送部１２５によって受信フレームが破棄される（Ｓ２１４）。
【００４１】
一方、自機の優先度と受信フレームとの優先度が異なる場合（Ｓ２１１でＮｏ）、遮断部１２６は、自機の優先度の方が受信フレームの優先度より高いか否かを判定する（Ｓ２２１）。自機の優先度の方が受信フレームの優先度より高い場合（Ｓ２２１でＹｅｓ）、制御用フレーム転送部１２５は、受信フレームを破棄する（Ｓ２２２）。
【００４２】
自機の優先度より受信フレームの優先度の方が高い場合（Ｓ２２１でＮｏ）、制御用フレーム転送部１２５は、受信フレームのホップ数に１を加算する（Ｓ２３１）。続いて、遮断部１２６は、ポートＢを介して既に制御用フレームを受信済みであるか否かを判定する（Ｓ２３２）。ポートＢを介して制御用フレームが受信されている場合（Ｓ２３２でＹｅｓ）、今回の受信フレームと、ポートＢを介して受信されているいずれかの制御用フレームとの送信元が同じであるか否かを判定する（Ｓ２３３）。当該判定は、各制御用フレームの優先度の比較に基づいて行えばよい。今回の受信フレームと送信元が一致する制御用フレームがポートＢを介して受信されている場合（Ｓ２３３でＹｅｓ）、遮断部１２６等は、送信元が一致する二つの制御用フレームのホップ数の比較に応じた遮断処理を実行する（Ｓ２３４）。当該処理の詳細については後述する。
【００４３】
一方、今回の受信フレームと送信元が一致する制御用フレームがポートＢを介して受信されていない場合（Ｓ２３２でＮｏ又はＳ２３３でＮｏ）、制御用フレーム転送部１２５は、受信フレームをポートＢより送信し、ポートＢに対する送信タイマ（Ｔｂ１）を停止させる（Ｓ２３５）。
【００４４】
なお、リングポートＰ別に、制御用フレームの受信の有無、及び受信された制御用フレームの中で優先度が最も高い制御用フレームの内容をＲＡＭ１４内に記録しておくようにするとよい。斯かる情報に基づいて、ステップ２０３、Ｓ２３２、及びＳ２３３等の判定を行えばよい。
【００４５】
続いて、ステップＳ２３４の詳細について説明する。図６は、送信元が一致する二つの制御用フレームのホップ数の比較に応じた遮断処理を説明するためのフローチャートである。同図において、ポートＡ及びポートＢの意味は、図５と同様である。
【００４６】
ステップＳ３０１において、遮断部１２６は、二つの制御用フレームのホップ数が同じであるか否かを判定する。ここで、二つの制御用フレームとは、ポートＡを介して今回受信された制御用フレームと、ポートＢにおいて既に受信されている制御用フレームとである。二つの制御用フレームのホップ数が同じである場合（Ｓ３０１でＹｅｓ）、遮断部１２６は、ポートＡをフォワーディング状態にし、受信フレームのブロッキングフラグをＯＮとする（Ｓ３０２）。後述より明らかなように、ブロッキングフラグがＯＮである受信フレームを受信したリングポートＰは、ブロッキング状態とされる。したがって、ブロッキングフラグをＯＮにするということは、ポートＢ側に隣接する（接続される）他のスイッチ１０のリングポートＰをブロッキング状態とする命令を生成することを意味する。なお、制御用フレームの生成時におけるブロッキングフラグの初期値はＯＦＦである。続いて、制御用フレーム転送部１２５は、受信フレームをポートＢより送出させる。また、制御用フレーム転送部１２５は、ポートＢに対する送信タイマ（Ｔｂ１）を停止させる（Ｓ３０３）。
【００４７】
なお、後述の具体例より明らかなように、二つの制御用フレームのホップ数が同じとなるのは、リングネットワークに属するスイッチ１０の台数が偶数の場合であって、優先度が最高のスイッチ１０より最も遠いスイッチ１０においてである。したがって、ステップＳ３０１〜Ｓ３０３より、スイッチ１０の台数が偶数の場合において、優先度が最高のスイッチ１０より最も遠いスイッチ１０では、先に制御用フレームを受信したリングポートＰはブロッキング状態のままとされる（論理的に遮断される）ことが分かる。また、当該スイッチ１０のポートＢ側（先に当該制御用フレームを受信したリングポートＰ側）に隣接するスイッチ１０のリングポートＰもブロッキング状態のままとされることが分かる。
【００４８】
一方、二つの制御用フレームのホップ数が異なる場合（Ｓ３０１でＮｏ）、遮断部１２６は、当該ホップ数の差は１であるか否かを判定する（Ｓ３１１）。当該ホップ数の差が１である場合（Ｓ３１１でＹｅｓ）、遮断部１２６は、ホップ数の小さい制御用フレームを受信したリングポートＰをフォワーディング状態とする（Ｓ３１２）。換言すれば、ホップ数の大きい制御用フレームを受信したリングポートＰは、ブロッキング状態のままとされる。続いて、制御用フレーム転送部１２５は、受信フレームをポートＢより送出させる。また、制御用フレーム転送部１２５は、ポートＢに対する送信タイマ（Ｔｂ１）を停止させる（Ｓ３１３）。
【００４９】
なお、後述の具体例より明らかなように、二つの制御用フレームのホップ数の差が１となるのは、リングネットワークに属するスイッチ１０の台数が奇数の場合であって、優先度が最高のスイッチ１０より最も遠いスイッチ１０においてである。したがって、ステップＳ３１１〜Ｓ３１３より、スイッチ１０の台数が奇数の場合において、優先度が最高のスイッチ１０より最も遠いスイッチ１０では、優先度が最高のスイッチ１０より遠い方のリングポートＰがブロッキング状態とされることが分かる。
【００５０】
二つの制御用フレームのホップ数の差が１でない場合（Ｓ３１１でＮｏ）、遮断部１２６は、当該ホップ数の差は２であるか否かを判定する（Ｓ３２１）。当該ホップ数の差が２である場合（Ｓ３２１でＹｅｓ）、遮断部１２６は、受信フレームのブロッキングフラグがＯＮであるか否かを判定する（Ｓ３２２）。受信フレームのブロッキングフラグがＯＮである場合（Ｓ３２２でＹｅｓ）、遮断部１２６は、ポートＢをフォワーディング状態とし、受信フレームのブロッキングフラグをＯＦＦとする（Ｓ３２３）。したがって、ポートＡ（受信フレームを受信したリングポートＰ）はブロッキング状態のままとされる。続いて、制御用フレーム転送部１２５は、受信フレームをポートＢより送出させる。また、制御用フレーム転送部１２５は、ポートＢに対する送信タイマ（Ｔｂ１）を停止させる（Ｓ３２４）。
【００５１】
なお、後述の具体例より明らかなように、二つの制御用フレームのホップ数の差が２となるのは、リングネットワークに属するスイッチ１０の台数が偶数の場合であって、優先度が最高のスイッチ１０より最も遠いスイッチ１０に隣接するスイッチ１０においてである。したがって、ステップＳ３２１〜Ｓ３２４より、当該隣接するスイッチ１０の一方では、優先度が最高のスイッチ１０よりもっとも遠いスイッチ１０に接続されるリングポートＰがブロッキング状態とされることが分かる。当該隣接するスイッチ１０は二つ存在するところ、ステップＳ３２３及びＳ３２４の対象とされるのは、ブロッキングフラグがＯＮである制御用フレームを受信した方である。
【００５２】
また、二つの制御用フレームのホップ数の差が２でない場合、すなわち３以上の場合（Ｓ３２１でＮｏ）、又は受信フレームのブロッキングフラグがＯＮでない場合（Ｓ３２２でＮｏ）、遮断部１２６は、二つのリングポートＰをフォワーディング状態とする（Ｓ３２５）。続いて、制御用フレーム転送部１２５は、受信フレームをポートＢより送出させる。また、制御用フレーム転送部１２５は、ポートＢに対する送信タイマ（Ｔｂ１）を停止させる（Ｓ３２６）。
【００５３】
続いて、図７は、送信タイマがタイムアウトした場合の処理手順を説明するためのフローチャートである。同図において、ポートＡは、送信タイマのタイムアウトが発生した方のリングポートＰである。
【００５４】
ステップＳ１１１において制御用フレームが送出された後、当該リングポートＰから制御用フレームの転送が行われずに所定時間が経過すると、当該リングポートＰ（ポートＡ）に対する送信タイマのタイムアウトが検出される。送信タイマのタイムアウトの検出に応じ、制御用フレーム送出部１２４は、制御用フレームを改めて生成し、当該制御用フレームをポートＡより送出する（Ｓ４０１）。続いて、制御用フレーム送出部１２４は、ポートＡに対する送信タイマ（Ｔａ１）をリスタートする（Ｓ４０２）。
【００５５】
続いて、図８は、受信タイマがタイムアウトした場合又はリングポートについてリンクダウンが発生した場合の処理手順を説明するためのフローチャートである。同図において、ポートＡは、受信タイマのタイムアウト又はリンクダウンが発生したリングポートＰである。ポートＢは、他方のリングポートＰである。なお、リングポートＰのリンクアップ後、又はリングポートＰより制御用フレームが送信された後、当該リングポートＰより制御用フレームが受信されないまま所定時間が経過すると、当該リングポートＰに対する受信タイマのタイムアウトが検出される。
【００５６】
受信タイマのタイムアウトの検出又はリンクダウンの検出に応じ、遮断部１２６は、ポートＡをブロッキング状態にし、ポートＢをフォワーディング状態とする（Ｓ５０１）。続いて、優先度設定部１２２は、自機の優先度を特別レベルに設定する（Ｓ５０２）。具体的には、優先度記憶部１２３に特別レベルフラグが記録される。続いて、制御用フレームは、制御用フレームを改めて生成し、当該制御用フレームをポートＢより送出させる（Ｓ５０３）。当該制御用フレームの優先度は特別レベルとされる。
【００５７】
当該制御用フレームが転送されることにより、各スイッチ１０の二つのリングポートＰは、それぞれフォワーディング状態とされる（図５のステップＳ２０６参照）。その結果、受信タイマのタイムアウトが検出又はリンクダウンが検出されたリングポートＰ、すなわち、通信不能となり、実質的に遮断されてしまっているリングポートＰ以外に、論理的な遮断箇所が形成されるのが回避される。
【００５８】
続いて、制御用フレーム送出部１２４は、ポートＰの送信タイマ（Ｔｂ１）をリスタートする（Ｓ５０３）。
【００５９】
次に、上記フローチャートにおいて説明した処理を各スイッチ１０が実行することにより、リングネットワーク全体としてどのような動作が行われるかについて具体的に説明する。
【００６０】
図９及び図１０は、スイッチの台数が奇数の場合のリングネットワークの動作例を説明するための図である。
【００６１】
同図に示されるように、リングネットワーク２０は、スイッチ１０ａ〜１０ｅの５台のスイッチ１０を含む。各スイッチ１０間の線分は、回線を示す。また、各スイッチ１０内に記された数値は、当該スイッチ１０に設定された優先度を示す。すなわち、各スイッチ１０の優先度は、スイッチ１０ａ、１０ｂ、１０ｃ、１０ｄ、１０ｅの順で、１、２、４、５、３である。なお、本実施の形態では、数値が小さいほど優先度は高い。したがって、同図の例では、スイッチ１０ａの優先度が最も高い。
【００６２】
図９（１）は、各スイッチ１０において、図３の処理が実行された結果を示す。各スイッチ１０の両側には、「Ｂ」が記されている。「Ｂ」は、該当する側のリングポートＰがブロッキング状態であることを示す。なお、フォワーディング状態は「Ｆ」によって表記される。
【００６３】
（２）は、各スイッチ１０において、図４の処理が実行された結果を示す。（２）において、各スイッチ１０は、二つのリングポートＰより、自機の優先度を有し、ホップ数０の制御用フレームを送出している。図中の各矢印Ｆａ１〜Ｆｅ１、及びＦａ２〜Ｆｅ２は、それぞれ制御用フレームを示す。矢印の向きは、制御用フレームの転送方向を示す。また、矢印に付された（ｎ、ｍ）の符号において、ｎは制御用フレームの優先度、ｍはホップ数を示す。各制御用フレームの参照番号の命名規則は、Ｆ＜送信元スイッチ＞＜方向＞である。＜送信元スイッチ＞は、送信元のスイッチ１０の参照番号の末尾のアルファベット（ａ〜ｅ）に一致する。＜方向＞は、反時計回りが「１」であり、時計回りが「２」である。したがって、例えば、スイッチ１０ａから反時計回りの方向に送出された制御用フレームの参照番号は、「Ｆａ１」である。
【００６４】
なお、各スイッチ１０からの制御用フレームの送出は、一斉に（同時に）行われなくてもよい。制御用フレームの送出が可能となったスイッチ１０から順に随時送出されればよい。
【００６５】
（３）は、（２）に示される各制御用フレームを受信した各スイッチ１０において図５の処理が実行された結果を示す。（２）においてスイッチ１０ａでは、フレームＦｂ２と、フレームＦｅ１とが受信されている。当該二つの制御用フレームの優先度は、スイッチ１０ａの優先度より低い。したがって、当該二つの制御用フレームはスイッチ１０ａによって破棄されている（図５のＳ２２１でＹｅｓ、Ｓ２２２）。その結果、当該二つの制御用フレームは、図中から削除されている。他にも削除されている制御用フレームが有るが、同様の理由による。
【００６６】
一方、フレームＦａ１、フレームＦｂ１、フレームＦｃ１、フレームＦａ２、及びフレームＦｅ２は、ホップ数に１が加算され、転送されている。これらの制御用フレームは、当該制御用フレームを受信したスイッチ１０より高い優先度を有するからである（図５のステップＳ２２１でＮｏ、Ｓ２３１、Ｓ２３２でＹｅｓ、Ｓ２３３でＮｏ、Ｓ２３５）。
【００６７】
（４）は、（３）に示される各制御用フレームを受信した各スイッチ１０において図５の処理が実行された結果を示す。優先度が４であるフレームＦｃ１は、優先度が３であるスイッチ１０ｅによって処理されることにより破棄されている。他の制御用フレームは、自らの優先度よりも低い優先度を有するスイッチ１０によって処理されたため、ホップ数に１が加算されて転送されている。
【００６８】
図１０（５）は、（４）に示される各制御用フレームを受信した各スイッチ１０において図５又は図６の処理が実行された結果を示す。優先度が３であるフレームＦｅ２は、優先度が２であるスイッチ１０ｂによって処理されることにより破棄されている。優先度が２であるフレームＦｂ１は、優先度が３であるスイッチ１０ｅによって処理されたため、ホップ数に１が加算された転送されている。
【００６９】
また、スイッチ１０ｃ及び１０ｄは、（４）において、同一のスイッチ１０ａより送出された制御用フレーム（フレームＦａ）を双方向より受信したことになる。すなわち、スイッチ１０ｃは、（３）においてフレームＦａ１をホップ数１で受信し、（４）においてフレームＦａ２をホップ数２で受信している。スイッチ１０ｄは、（３）においてフレームＦａ２をホップ数１で受信し、（４）においてフレームＦａ１をホップ数２で受信している。ここで、スイッチ１０ｃ及び１０ｄの双方とも、二つのフレームＦａのホップ数の差は１である。したがって、スイッチ１０ｃは、ホップ数の小さいフレームＦａ１を受信したリングポートＰをフォワーディング状態（Ｆ）としている（図６のステップＳ３１１〜Ｓ３１３）。同様に、スイッチ１０ｄは、ホップ数の小さいフレームＦａ２を受信したリングポートＰをフォワーディング状態（Ｆ）としている。更に、スイッチ１０ｃは、フレームＦａ２を、スイッチ１０ｄは、フレームＦａ１を、ホップ数に１を加算して転送している（図５のＳ２３１、図６のＳ３２４）。
【００７０】
（６）は、（５）に示される各制御用フレームを受信した各スイッチ１０において図５又は図６の処理が実行された結果を示す。優先度が２であるフレームＦｂ１は、優先度が１であるスイッチ１０ａによって処理されることにより破棄されている。
【００７１】
また、スイッチ１０ｂ及び１０ｅは、（５）において、同一のスイッチ１０ａより送出された制御用フレーム（フレームＦａ）を双方向より受信したことになる。すなわち、スイッチ１０ｂは、（２）においてフレームＦａ１をホップ数０で受信し、（５）においてフレームＦａ２をホップ数３で受信している。スイッチ１０ｅは、（２）においてフレームＦａ２をホップ数０で受信し、（５）においてフレームＦａ１をホップ数３で受信している。ここで、スイッチ１０ｂ及び１０ｅの双方とも、二つのフレームＦａのホップ数の差は３である。したがって、スイッチ１０ｂ及び１０ｅのそれぞれの二つのリングポートＰは、フォワーディング状態（Ｆ）とされている（図６のＳ３２１でＮｏ、Ｓ３２５）。更に、スイッチ１０ｂは、フレームＦａ２を、スイッチ１０ｅは、フレームＦａ１をホップ数に１を加算して転送している（図５のＳ２３１、図６のＳ３２６）。
【００７２】
（７）は、（６）に示される制御用フレームＦａ１及びＦａ２を受信したスイッチ１０ａにおいて図５の処理が実行された結果を示す。制御用フレームＦａ１及びＦ２の送信元はスイッチ１０ａである。したがって、スイッチ１０ａは、二つのリングポートＰをフォワーディング状態（Ｆ）としている（図５のＳ２１１でＹｅｓ、Ｓ２１２でＮｏ、Ｓ２１３）。また、制御用フレームＦａ１及びＦａ２は破棄されている（図５のＳ２１４）。
【００７３】
以上で、リングネットワーク２０における制御用フレームの処理は終了する。図１０（７）より明らかなように、優先度が１であるスイッチ１０ａより最も遠い箇所（スイッチ１０ｃとスイッチ１０ｄとの間）に係る回線の両端のリングポートＰがブロッキング状態（Ｂ）とされている。すなわち、当該回線が論理的に遮断されている。
【００７４】
次に、図１１及び図１２は、スイッチの台数が偶数の場合のリングネットワークの動作例を説明するための図である。
【００７５】
同図に示されるように、リングネットワーク３０は、スイッチ１０ａ〜１０ｆの５台のスイッチ１０を含む。なお、同図の表記法は、図９又は図１０と同じである。したがって、各スイッチ１０の優先度は、スイッチ１０ａ、１０ｂ、１０ｃ、１０ｄ、１０ｅ、１０ｆの順で、１、３、５、６、４、２である。
【００７６】
図１１（１）は、各スイッチ１０において、図３の処理が実行された結果を示す。各スイッチ１０の二つのリングポートＰは、ブロッキング状態（Ｂ）とされている。
【００７７】
（２）は、各スイッチ１０において、図４の処理が実行された結果を示す。各スイッチ１０は、二つのリングポートＰより、自機の優先度を有し、ホップ数０の制御用フレームを送出している。
【００７８】
（３）は、（２）に示される各制御用フレームを受信した各スイッチ１０において図５の処理が実行された結果を示す。自らの優先度より高い優先度を有するスイッチ１０によって処理された制御用フレームは破棄されている（図５のＳ２２１でＹｅｓ、Ｓ２２２）。自らの優先度より低い優先度を有するスイッチ１０によって処理された制御用フレームは、ホップ数に１が加算され、転送されている（図５のステップＳ２２１でＮｏ、Ｓ２３１、Ｓ２３２でＹｅｓ、Ｓ２３３でＮｏ、Ｓ２３５）。
【００７９】
（４）は、（３）に示される各制御用フレームを受信した各スイッチ１０において図５の処理が実行された結果を示す。優先度が５であるフレームＦｃ１は、優先度が４であるスイッチ１０ｅによって処理されることにより破棄されている。他の制御用フレームは、自らの優先度よりも低い優先度を有するスイッチ１０によって処理されたため、ホップ数に１が加算されて転送されている。
【００８０】
図１２（５）は、（４）に示される各制御用フレームを受信した各スイッチ１０において図５又は図６の処理が実行された結果を示す。優先度が４であるフレームＦｅ２は、優先度が３であるスイッチ１０ｂによって処理されることにより破棄されている。フレームＦｂ１及びＦｆ２は、自らの優先度よりも低い優先度を有するスイッチ１０によって処理されたため、ホップ数に１が加算されて転送されている。
【００８１】
また、スイッチ１０ｄは、（４）において、同一のスイッチ１０ａより送出されたフレームＦａ１及びＦａ２を受信している。ここでは、フレームＦａ１が先着であるとする。したがって、スイッチ１０ｄは、フレームＦａ１をホップ数に１を加算して転送している（図５のＳ２３２、Ｓ２３５）。また、フレームＦａ１及びＦａ２の双方のホップ数は、同じである。したがって、スイッチ１０ｄは、フレームＦａ２を受信したリングポートＰをフォワーディング状態とし、フレームＦａ２のブロッキングフラグをＯＮとしている（図６のステップＳ３０１でＹｅｓ、Ｓ３０２）。（５）において、フレームＦａ２に対する括弧内において優先度１及びホップ数３の他に「Ｂ」が記されているが、当該「Ｂ」はブロッキングフラグがＯＮであることを示す。更にスイッチ１０ｄは、フレームＦａ２をホップ数に１を加算して転送している（図５のＳ２３２、図６のＳ３０３）。
【００８２】
（６）は、（５）に示される各制御用フレームを受信した各スイッチ１０において図５又は図６の処理が実行された結果を示す。優先度が３であるフレームＦｂ１は、優先度が２であるスイッチ１０ｆによって処理されることにより破棄されている。フレームＦｆ２は、自らの優先度よりも低い優先度を有するスイッチ１０ｂによって処理されたため、ホップ数に１が加算されて転送されている。
【００８３】
また、スイッチ１０ｃ及び１０ｅは、（５）において、同一のスイッチ１０ａより送出されたフレームＦａを双方向より受信したことになる。すなわち、スイッチ１０ｃは、（３）においてフレームＦａ１をホップ数２で受信し、（５）においてフレームＦａ２をホップ数３で受信している。スイッチ１０ｅは、（３）においてフレームＦａ２をホップ数１で受信し、（５）においてフレームＦａ１をホップ数３で受信している。ここで、スイッチ１０ｃ及び１０の双方とも、二つのフレームＦａのホップ数の差は２である。但し、スイッチ１０ｃは、（５）においてブロッキングフラグがＯＮであるフレームＦａ２を受信している。したがって、スイッチ１０ｃは、フレームＦａ２を受信したリングポートＰとは別のリングポートＰをフォワーディング状態（Ｆ）とし、フレームＦａ２のブロッキングフラグをＯＦＦとしている（図６のＳ３２１でＹｅｓ、Ｓ３２２でＹｅｓ、Ｓ３２３）。また、スイッチ１０ｃは、フレームＦａ２をホップ数に１を加算して転送している（図５の２３１、図６のＳ３２４）。一方、スイッチ１０ｄは、双方のリングポートＰをフォワーディング状態（Ｆ）としている（Ｓ３２１でＹｅｓ、Ｓ３２２でＮｏ、Ｓ３２５）。また、スイッチ１０ｄは、フレームＦａ１をホップ数に１を加算して転送している。
【００８４】
（７）は、（６）に示される各制御用フレームを受信した各スイッチ１０において図５又は図６の処理が実行された結果を示す。優先度が２であるフレームＦｆ２は、優先度が１であるスイッチ１０ａによって処理されることにより破棄されている。
【００８５】
また、スイッチ１０ｂ及び１０ｆは、（６）において、同一のスイッチ１０ａより送出されたフレームＦａを双方向より受信したことになる。すなわち、スイッチ１０ｂは、（２）においてフレームＦａ１をホップ数０で受信し、（６）においてフレームＦａ２をホップ数４で受信している。スイッチ１０ｆは、（２）においてフレームＦａ２をホップ数０で受信し、（６）においてフレームＦａ１をホップ数４で受信している。ここで、スイッチ１０ｂ及び１０ｆの双方とも、二つのフレームＦａのホップ数の差は４である。したがって、スイッチ１０ｂ及び１０ｆのそれぞれの二つのリングポートＰは、フォワーディング状態（Ｆ）とされている（図６のＳ３２１でＮｏ、Ｓ３２５）。更に、スイッチ１０ｂは、フレームＦａ２を、スイッチ１０ｆは、フレームＦａ１をホップ数に１を加算して転送している（図５のＳ２３１、図６のＳ３２６）。
【００８６】
（８）は、（７）に示される制御用フレームＦａ１及びＦａ２を受信したスイッチ１０ａにおいて図５の処理が実行された結果を示す。制御用フレームＦａ１及びＦ２の送信元はスイッチ１０ａである。したがって、スイッチ１０ａの二つのリングポートＰは、フォワーディング状態（Ｆ）とされている（図５のＳ２１１でＹｅｓ、Ｓ２１２でＮｏ、Ｓ２１３）。また、制御用フレームＦａ１及びＦａ２は破棄されている（図５のＳ２１４）。
【００８７】
以上で、リングネットワーク３０における制御用フレームの処理は終了する。図１２（８）より明らかなように、優先度が１であるスイッチ１０ａより最も遠い箇所（スイッチ１０ｃとスイッチ１０ｄとの間）に係る回線の両端のリングポートＰがブロッキング状態（Ｂ）とされている。すなわち、当該回線が論理的に遮断されている。なお、スイッチ１０ｄとスイッチ１０ｅとの間に対するスイッチ１０ａからのホップ数は、スイッチ１０ｃとスイッチ１０ｄとの間に対するスイッチ１０ａからのホップ数と同じである。但し、本実施の形態では、スイッチ１０ａから双方向に送出された二つのフレームＦａの到達が完了するのが遅かった方が遮断対象とされている。ホップ数は同じであっても、二つのフレームＦａの到達の完了が遅い方が、論理的に遠い回線であると考えるからである。但し、二つのフレームＦａの到達の完了が早い方を遮断対象としてもよい。その場合、スイッチ１０ｄとスイッチ１０ｅとの間が遮断対象とされる。
【００８８】
なお、ポートＰのブロッキング状態は、例えば、メモリ１２内にブロッキング状態としたポートＰの識別情報を記録することにより実現されればよい。中継部１２７は、中継ＤＢ１２８に登録されていないノードを宛先とするフレーム（未学習のフレーム）、マルチキャストフレーム、又はブロードキャストフレームが受信された場合、メモリ１２を参照してブロッキング状態のポートＰを確認する。続いて、中継部１２７は、ブロッキング状態のポートＰ以外の各ポートＰ（当該フレームの受信ポートは除く）から受信されたフレームを送出させる。
【００８９】
一方、中継部１２７は、中継ＤＢ１２８に登録されているノードを宛先とするユニキャストフレーム（学習済みのフレーム）を受信した場合、当該宛先に対応するポートＰがブロッキング状態であっても、当該ポートＰより当該ユニキャストフレームを送出させる。ユニキャストフレームであれば、ストームの発生する可能性は無いからである。また、学習済みのユニキャストフレームの通過を可能とすることにより、遮断された回線も活用することが可能となる。その結果、当該回線が眼前に遮断される場合に比べて、リングネットワーク中におけるフレームの平均ホップ数の低下やリングネットワークに含まれる各回線の負荷の分散等を図ることができる。
【００９０】
また、本実施の形態では、リングポートＰの初期状態は、ブロッキング状態である例を示したが、フォワーディング状態を初期状態としてもよい。この場合、図５又は図６において、リングポートＰをフォワーディング状態にする処理は実行しなくてよい。反対に、リングポートＰの状態を変更しない場合に、リングポートＰをブロッキング状態にする処理を追加すればよい。
【００９１】
上述したように、本実施の形態のスイッチ１０は、リングネットワークにおいて優先度が最も高いスイッチ１０から最も遠い箇所を自動的に判定し、当該箇所を論理的に遮断させることができる。したがって、例えば、優先度を通信量に基づいて設定しておくことにより、通信量の最も多いスイッチ１０から最も遠い箇所を遮断対象とすることができる。その結果、ネットワークトラフィックに鑑みて適切な箇所を遮断箇所とすることができる。
【００９２】
また、ＳＴＰに比べて簡単（低負荷）な演算によって適切な遮断箇所を判定することができる。
【００９３】
更に、遮断箇所において、学習済みユニキャストフレームは通過可能とすることにより、リングネットワーク中におけるフレームの平均ホップ数の低下やリングネットワークに含まれる各回線の負荷の分散等を図ることができる。
【００９４】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００９５】
以上の説明に関し、更に以下の項を開示する。
（付記１）
中継装置であって、
当該中継装置の優先度を記憶した優先度記憶手段と、
前記優先度とホップ数とを含む優先度データを、リングを形成する回線に接続された二つのポートよりそれぞれ前記リングの逆回り方向に送出する優先度データ送出手段と、
他の中継装置より送出された前記優先度データが一方の前記ポートより受信された場合に、当該優先度データの優先度が前記優先度記憶手段に記憶された優先度より高いときは当該優先度データのホップ数を更新して、当該優先度データを他方の前記ポートより送出させる優先度データ転送手段と、
送信元が一致する前記優先度データが前記二つのポートより受信された場合に、受信された二つの前記優先度データに含まれるホップ数の比較結果に応じて前記ポートの一方を論理的に遮断する遮断手段とを有する中継装置。
（付記２）
受信されたユニキャストのフレームの宛先に対応するポートが論理的に遮断されているポートである場合に、当該フレームを該宛先に対応するポートより送出させる中継手段を有する付記１記載の中継装置。
（付記３）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が１である場合は、ホップ数の大きい前記優先度データを受信したポートを遮断する付記１又は２記載の中継装置。
（付記４）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数が同じである場合は、前記優先度データを先に受信したポートを遮断する付記１乃至３いずれか一項記載の中継装置。
（付記５）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が２である場合は、他の前記中継装置において遮断されたポートに接続されるポートを遮断する付記４記載の中継装置。
（付記６）
前記優先度データ転送手段は、前記優先度データの宛先アドレスとして、隣接する中継装置のアドレスを使用する付記１乃至５いずれか一項記載の中継装置。
（付記７）
当該中継装置の優先度を当該中継装置に接続されている回線の数に応じて定める優先度設定手段をさらに備える付記１乃至６いずれか一項記載の中継装置。
（付記８）
前記優先度データ送出手段は、前記二つのポートの少なくともいずれか一方が通信不能の場合は、最高の優先度を含む前記優先度データを送出する付記１乃至７いずれか一項記載の中継装置。
（付記９）
リング状に接続された複数の中継装置を含むネットワークシステムであって、
前記中継装置は、
当該中継装置の優先度を記憶した優先度記憶手段と、
前記優先度とホップ数とを含む優先度データを、リングを形成する回線に接続された二つのポートよりそれぞれ前記リングの逆回り方向に送出する優先度データ送出手段と、
他の中継装置より送出された前記優先度データが一方の前記ポートより受信された場合に、当該優先度データの優先度が前記優先度記憶手段に記憶された優先度より高いときは当該優先度データのホップ数を更新して、当該優先度データを他方の前記ポートより送出させる優先度データ転送手段と、
送信元が一致する前記優先度データが前記二つのポートより受信された場合に、受信された二つの前記優先度データに含まれるホップ数の比較結果に応じて前記ポートの一方を論理的に遮断する遮断手段とを有するネットワークシステム。
（付記１０）
前記中継装置は、
受信されたユニキャストのフレームの宛先に対応するポートが論理的に遮断されているポートである場合に、当該フレームを該宛先に対応するポートより送出させる中継手段を有する付記９記載のネットワークシステム。
（付記１１）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が１である場合は、ホップ数の大きい前記優先度データを受信したポートを遮断する付記９又は１０記載のネットワークシステム。
（付記１２）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数が同じである場合は、前記優先度データを先に受信したポートを遮断する付記９乃至１１いずれか一項記載のネットワークシステム。
（付記１３）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が２である場合は、他の前記中継装置において遮断されたポートに接続されるポートを遮断する付記１２記載のネットワークシステム。
（付記１４）
前記優先度データ転送手段は、前記優先度データの宛先アドレスとして、隣接する中継装置のアドレスを使用する付記９乃至１３いずれか一項記載のネットワークシステム。
（付記１５）
前記中継装置は、
当該中継装置の優先度を当該中継装置に接続されている回線の数に応じて定める優先度設定手段をさらに備える付記９乃至１４いずれか一項記載のネットワークシステム。
（付記１６）
前記優先度データ送出手段は、前記二つのポートの少なくともいずれか一方が通信不能の場合は、最高の優先度を含む前記優先度データを送出する付記９乃至１５いずれか一項記載のネットワークシステム。
（付記１７）
中継装置を、
当該中継装置の優先度を記憶した優先度記憶手段と、
前記優先度とホップ数とを含む優先度データを、リングを形成する回線に接続された二つのポートよりそれぞれ前記リングの逆回り方向に送出する優先度データ送出手段と、
他の中継装置より送出された前記優先度データが一方の前記ポートより受信された場合に、当該優先度データの優先度が前記優先度記憶手段に記憶された優先度より高いときは当該優先度データのホップ数を更新して、当該優先度データを他方の前記ポートより送出させる優先度データ転送手段と、
送信元が一致する前記優先度データが前記二つのポートより受信された場合に、受信された二つの前記優先度データに含まれるホップ数の比較結果に応じて前記ポートの一方を論理的に遮断する遮断手段として機能させるためのプログラム。
（付記１８）
前記中継装置を、
受信されたユニキャストのフレームの宛先に対応するポートが論理的に遮断されているポートである場合に、当該フレームを該宛先に対応するポートより送出させる中継手段として機能させる付記１７記載のプログラム。
（付記１９）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が１である場合は、ホップ数の大きい前記優先度データを受信したポートを遮断する付記１７又は１８記載のプログラム。
（付記２０）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数が同じである場合は、前記優先度データを先に受信したポートを遮断する付記１７乃至１９いずれか一項記載のプログラム。
（付記２１）
前記遮断手段は、受信された二つの前記優先度データに含まれるホップ数の差が２である場合は、他の前記中継装置において遮断されたポートに接続されるポートを遮断する付記２０記載のプログラム。
（付記２２）
前記優先度データ転送手段は、前記優先度データの宛先アドレスとして、隣接する中継装置のアドレスを使用する付記１７乃至２１いずれか一項記載のプログラム。
（付記２３）
前記中継装置を
当該中継装置の優先度を当該中継装置に接続されている回線の数に応じて定める優先度設定手段として機能させる付記１７乃至２２いずれか一項記載のプログラム。
（付記２４）
前記優先度データ送出手段は、前記二つのポートの少なくともいずれか一方が通信不能の場合は、最高の優先度を含む前記優先度データを送出する付記１７乃至２３いずれか一項記載のプログラム。
【符号の説明】
【００９６】
１０          スイッチ
１１          スイッチチップ
１２          メモリ
１３          ＣＰＵ
１４          ＲＡＭ
１５          ＲＯＭ
１２１        初期化部
１２２        優先度設定部
１２３        優先度記憶部
１２４        制御用フレーム送出部
１２５        制御用フレーム転送部
１２６        遮断部
１２７        中継部
１２８        中継ＤＢ
Ｐ            ポート
【図１】
0005493952.tif 000002
【図２】
0005493952.tif 000003
【図３】
0005493952.tif 000004
【図４】
0005493952.tif 000005
【図５】
0005493952.tif 000006
【図６】
0005493952.tif 000007
【図７】
0005493952.tif 000008
【図８】
0005493952.tif 000009
【図９】
0005493952.tif 000010
【図１０】
0005493952.tif 000011
【図１１】
0005493952.tif 000012
【図１２】
0005493952.tif 000013