(57)【要約】  【課題】データリンク層のネットワークにおいてフレームのループを効率的に抑止する。【解決手段】データリンク層のネットワークでフレームの転送を行うフレーム転送装置であって、自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から前記隣接ポートのステータスを取得する取得部と、前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定する判定部と、前記ループが生じると判定される場合に、前記自装置のポートを遮断する遮断部とを含む。【選択図】図１
2006174375.tif 000002
【特許請求の範囲】
【請求項１】
データリンク層のネットワークでフレームの転送を行うフレーム転送装置であって、
自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から、前記隣接ポートのステータスを取得する取得手段と、
前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定する判定手段と、
前記ループが生じると判定される場合に、前記自装置のポートを遮断する遮断手段と
を含むフレーム転送装置。
【請求項２】
前記判定手段は、前記自装置のポートのステータスと前記隣接ポートのステータスとの双方がフレームの転送を示す、又は前記自装置のポートのステータスと対比すべき前記隣接ポートのステータスを前記隣接装置から取得できない場合に、前記ループが生じると判定する
請求項１記載のフレーム転送装置。
【請求項３】
前記判定手段は、さらに、前記自装置のポートへ前記隣接装置からのフレーム入力がある場合に、前記ループが生じると判定する
請求項２記載のフレーム転送装置。
【請求項４】
前記取得手段は、隣接装置から自装置のポートのステータスを問い合わせるための要求パケットを定期的に受信し、各要求パケットについて、対応するポートのステータスを含む応答パケットを返送し、前記要求パケットが到着しなくなった場合には、前記隣接装置に前記自装置のポートに対応する隣接ポートのステータスを問い合わせるための要求パケットを送信する
請求項１記載のフレーム転送装置。
【請求項５】
データリンク層のフレームが転送されるネットワークにおいて、自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から、前記隣接ポートのステータスを取得し、
前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定し、
前記ループが生じると判定される場合に、前記自装置のポートを遮断する
ことを含むフレームのループ抑止方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レイヤ２(ＯＳＩ参照モデルのデータリンク層)のフレームを転送するフレーム転送装置に関する。
【背景技術】
【０００２】
近年、ＩＥＥＥ(Institute of Electrical and Electronic Engineers)８０２．３(イ
ーサネット（登録商標）)を用いた大規模なレイヤ２のネットワークが構築されている。
ループ(円環)状に形成されたレイヤ２ネットワークにおいて、データ(フレーム)がそのループ上を永遠に循環するのを防止するための制御手法の一つとして、スパニングツリープロトコル(ＳＴＰ)がある。ＳＴＰはＩＥＥＥ８０２．１ｄとして標準化されている。
【０００３】
ＳＴＰでは、与えられた優先順位を元に、スイッチ間でＢＰＤＵ(Bridge Protocol Data Unit)と呼ばれる制御情報がやり取りされ、普段使う経路が一つ設定され、それ以外の
経路は障害時の迂回経路として設定される。
【０００４】
本発明に関連する先行技術としては、例えば、以下の特許文献１に記載された技術がある。
【特許文献１】特開２００２−１０１１２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ＳＴＰによる制御が正常に動作している場合には、データの永遠の循環(ループ)が防止される。しかし、ＳＴＰによる制御に障害が生じた場合には、データのループが発生する可能性がある。
【０００６】
ここに、レイヤ３のＩＰ(Internet Protocol)パケットでは、パケットにＴＴＬ(Time to Live)が設定され、ＴＴＬ値が０になるとそのパケットが廃棄される。これによって、
ループの発生が防止される。
【０００７】
しかしながら、イーサネットで使用されるフレームでは、ＴＴＬのような構成がない。従って、ＳＴＰが正常に機能しない場合にデータのループを抑止する手段がなかった。
【０００８】
本発明の目的は、レイヤ２ネットワークにおいて発生するループを効率的に抑止できる技術を提供することである。
【課題を解決するための手段】
【０００９】
本発明は、上記課題を解決するために以下の構成を採用する。
【００１０】
即ち、本発明は、データリンク層のネットワークでフレームの転送を行うフレーム転送装置であって、
自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から、前記隣接ポートのステータスを取得する取得手段と、
前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定する判定手段と、
前記ループが生じると判定される場合に、前記自装置のポートを遮断する遮断手段とを含む。
【００１１】
本発明によれば、隣接ポートのステータスが取得され、自装置のポートのステータスと対比される。このとき、両ステータスに矛盾があるかが判定され、矛盾がある場合にはループが生じると判定される。この場合、自装置のポートが遮断される。これによって、フレームのループが抑止される。
【００１２】
好ましくは、本発明における判定手段は、前記自装置のポートのステータスと前記隣接ポートのステータスとの双方がフレームの転送を示す、又は前記自装置のポートのステータスと対比すべき前記隣接ポートのステータスを前記隣接装置から取得できない場合に、前記ループが生じると判定する。
【００１３】
このような場合に、フレームのループが発生する可能性が高いので、このような場合にポートを遮断することで、ループが生じるのを抑止することができる。
【００１４】
好ましくは、本発明における判定手段は、さらに、前記自装置のポートへ前記隣接装置からのフレーム入力がある場合に、前記ループが生じると判定する。ループは、自装置と隣接装置との間でフレームが転送可能な状態となっている場合に発生する。ここで、リンク障害でフレームがリンク上を流れない状態となっている場合には、ループは生じない。そこで、実際にフレーム入力がある場合に限ってポートが遮断されるように構成する。これによって、ループの発生を厳格に判定し、不要なポート遮断を抑えることができる。
【００１５】
好ましくは、本発明における取得手段は、隣接装置から自装置のポートのステータスを問い合わせるための要求パケットを定期的に受信し、各要求パケットについて、対応するポートのステータスを含む応答パケットを返送し、前記要求パケットが到着しなくなった場合には、前記隣接装置に前記自装置のポートに対応する隣接ポートのステータスを問い合わせるための要求パケットを送信する。
【００１６】
また、本発明は、データリンク層のフレームが転送されるネットワークにおいて、自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から、前記隣接ポートのステータスを取得し、
前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定し、
前記ループが生じると判定される場合に、前記自装置のポートを遮断する
ことを含むフレームのループ抑止方法である。
【発明の効果】
【００１７】
本発明によれば、レイヤ２ネットワークで生じるフレームのループを効率的に抑止することができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して本発明を説明する。以下に説明する構成は例示であり、本発明はその構成に限定されない。
【００１９】
〈レイヤ２スイッチの構成〉
図１は、本発明によるフレーム転送装置を実現するレイヤ２スイッチの構成例を示すブロック図である。本発明において、フレーム転送装置は、レイヤ２スイッチ，ＨＵＢ，ブリッジ等のレイヤ２によるフレーム転送を実施する装置に適用される。
【００２０】
図１において、レイヤ２スイッチ１０は、ｎ(ｎは自然数)個の送受信ポートＰと、ＭＩＢ(Management Information Base)解析部２０と、ＳＮＭＰ(Simple Network Management Protocol)送受信部３０と、ポート遮断部４０と、状態制御部５０と、ＭＡＣ(Media Acce
ss Control)／ＩＰ学習テーブル６０と、ＭＩＢ情報格納部７０とを備えている。
【００２１】
ＭＩＢ解析部２０，ＳＮＭＰ送受信部３０，ポート遮断部４０，及び状態制御部５０は、レイヤ２スイッチ１０が備えるプロセッサ(例えばＣＰＵ)が記憶装置上に格納されたプログラムを実行することによって実現される機能である。これらの各部は、ハードウェアによって実現することができる。ＭＩＢ情報格納部７０及びＭＡＣ／ＩＰ学習テーブル６０は、レイヤ２スイッチに設けられた記憶装置(例えばメモリ)上に作成される。
【００２２】
ＭＩＢ解析部２０は、解析手段、判定手段として機能する。ＳＮＭＰ送受信部は本発明の取得手段として機能する。ポート遮断部は本発明の遮断手段として機能する。
【００２３】
状態制御部５０は、ＳＴＰに従って、自スイッチと隣接スイッチとを結ぶリンクを収容するポートＰの状態(ステータス)を制御する。ＳＴＰでは、各スイッチは、フレームの流れに対して上流側のスイッチから周期的(例えば２秒毎)にＢＰＤＵと呼ばれる制御情報を受け取り、これに従ってポートＰの状態が設定される。状態制御部５０は、ＳＴＰに従って、各ポートの状態を“root(ルート：受信)”，“forwarding(フォワーディング：転送)”，及び“blocking(ブロッキング：遮断)”のいずれかに設定する。これによって、ネットワーク内でデータ(フレーム)のループが生じることが防止される。また、状態制御部５０は、設定した各ポートＰの状態を、ＭＩＢ情報格納部７０に格納する。
【００２４】
ＭＩＢ解析部２０は、ＭＩＢ情報格納部７０に格納されたＭＩＢ情報に基づき、自スイッチの各ポートの状態(ポートステータス)を解析する。このとき、状態が“ルート”又は“ブロッキング”のポートＰがあれば、そのポートＰに関する隣接スイッチへ対応ポート(「隣接ポート」とも表記する)のポートステータスに関するＭＩＢ情報の提供を求めるためのSNMP Request(ＳＮＭＰリクエスト)パケット(要求パケットに相当)を送信することをＳＮＭＰ送受信部３０に指示する。
【００２５】
ＳＮＭＰリクエストが隣接スイッチに与えられると、隣接スイッチは、ＳＮＭＰリクエストに基づき、隣接ポートのステータスに関するＭＩＢ情報を含むSNMP Response(ＳＮＭＰレスポンス)パケット(応答パケットに相当)を生成し、返送する。ＳＮＭＰレスポンス
に含まれたＭＩＢ情報は、ＭＩＢ情報格納部７０に格納される。
【００２６】
また、ＭＩＢ解析部２０は、所定のタイミングでＭＩＢ情報格納部７０を参照し、自スイッチのポートのステータスと、隣接ポートのステータスとをＭＩＢ情報格納部７０から取得する。取得された自スイッチのポートステータスが“フォワーディング”であり、且つ隣接スイッチのポートステータスが“フォワーディング”又は“応答なし”である場合には、ＭＩＢ解析部２０は、そのポートＰからのトラフィック入力があるか否かを判定する。そして、トラフィック入力がある場合には、ＭＩＢ解析部２０は、ポート遮断部４０に対し、当該ポートの遮断(リンクダウン)を指示する。
【００２７】
ＭＩＢ解析部２０は、自スイッチのポートのステータスが“ルート”又は“ブロッキング”から“フォワーディング”に変化したとき(例えば、ステータスの変更通知を状態制
御部５０から受け取る)に、ＭＩＢ情報格納部７０を参照して自ポート及び隣接ポートの
ステータスを取得して対比するように構成することができる。或いは、ＭＩＢ解析部２０は、ＳＮＭＰレスポンスが到着する(ＭＩＢ情報格納部７０上の隣接ポートのポートステ
ータス情報が更新される)毎に、自ポート及び隣接ポートのステータスを取得して対比す
るように構成することができる。
【００２８】
ＳＮＭＰ送受信部３０は、ＭＩＢ解析部２０から、“ルート”又は“ブロッキング”のステータスを有するポートＰに対応する隣接ポートのステータスに関するＭＩＢ情報の取
得を指示される。ＳＮＭＰ送受信部３０は、指示に従って、ＳＮＭＰリクエストを含むＳＮＭＰパケットを生成し、このＳＮＭＰパケットを隣接スイッチへ送信する。
【００２９】
ＳＮＭＰ送受信部３０は、ＳＮＭＰリクエストを定期的に隣接スイッチへ送信するように構成することができる。これに加えて、自スイッチのポートステータスが“ルート”又は“ブロッキング”(或るステータス)から“フォワーディング”(所定のステータス)に遷移した場合を契機として、ＳＮＭＰリクエストを送信するように構成することもできる。
【００３０】
また、ＳＮＭＰ送受信部３０は、隣接スイッチから送信されてくるＳＮＭＰレスポンスの到着を監視する。ＳＮＭＰ送受信部３０は、ＳＮＭＰレスポンスの到着を監視するための監視タイマを有しており、監視タイマがタイムアウトになる前にＳＮＭＰレスポンスが到着した場合には、これに含まれるＭＩＢ情報(隣接ポートのステータスを含む)をＭＩＢ情報格納部７０に格納する。
【００３１】
一方、ＳＮＭＰレスポンスが到着することなく監視タイマがタイムアウトになった場合(隣接ポートのステータスを取得できない場合)には、“応答なし”を示す情報を隣接ポートのポートステータスを示すＭＩＢ情報としてＭＩＢ情報格納部３０に格納する。ＭＩＢ情報格納部３０中のポートステータスに関するＭＩＢ情報は、ＭＩＢ解析部２０によって参照・解析される。
【００３２】
一方、ＳＮＭＰ送受信部３０は、隣接スイッチからのＳＮＭＰリクエストパケットが到着した場合には、ＳＮＭＰリクエストに従って、対応するポートＰのステータスに関するＭＩＢ情報をＭＩＢ情報格納部７０から取得し、このＭＩＢ情報を含むＳＮＭＰレスポンスパケットを生成し、隣接スイッチに返送する。
【００３３】
上記のような、自スイッチと隣接スイッチとの間で送受信されるＳＮＭＰパケットには、“高優先”を示す情報を設定することができる。これによって、ＳＮＭＰパケットは、ネットワークの輻輳時においても、優先的に送受信され、これに係る処理が行われる。即ち、ループの発生によってスイッチの負荷が上昇した場合でも、ループを抑止するための処理が優先的に実行される。
【００３４】
ＳＮＭＰパケットを送信する場合には、ＳＮＭＰパケットを受信すべき隣接スイッチのＩＰアドレスをＳＮＭＰ送受信部３０が知っている必要がある。ＳＮＭＰ送受信部３０は、隣接スイッチのＩＰアドレスが不明である場合には、次の処理を行う。即ち、ＳＮＭＰ送受信部３０は、自スイッチが接続されているサブネット(サブネットアドレスは予め知
っている)内の或るホストアドレスが通信相手のＩＰアドレスとして設定されたＡＲＰ(Address Resolution Protocol)問い合わせパケット(ＡＲＰ要求)を生成し、送信する。その後、ＳＮＭＰ送受信部３０は、ＡＲＰ要求に対するＡＲＰ応答パケットを受信し、各ＡＲＰ応答に含まれた検索先のＭＡＣアドレスと、隣接スイッチのＭＡＣアドレス(ＭＩＢ情
報の一部としてＭＩＢ情報格納部７０に格納されている)とを対比(照合)し、ＭＡＣアド
レスが同一であれば、そのＡＲＰ応答に含まれた通信相手のＩＰアドレスを、隣接スイッチのＩＰアドレスとして特定する。
【００３５】
ＳＮＭＰ送受信部３０は、隣接スイッチのＭＡＣアドレスと同一のＭＡＣアドレスを含むＡＲＰ応答が得られるまで、ＡＲＰ要求の通信相手のＩＰアドレスを変更してＡＲＰ要求の送信を繰り返し行う。或いは、ＳＮＭＰ送受信部３０は、サブネット内の全てのホストアドレス(但し、自スイッチのＩＰアドレスを除くのが好ましい)が通信相手のＩＰアドレスとして夫々設定された複数のＡＲＰ要求を作成して送信し、各ＡＲＰ要求に対応するＡＲＰ応答に含まれた検索先のＭＡＣアドレスと隣接スイッチのＭＡＣアドレスとを夫々照合して、隣接スイッチのＩＰアドレスを獲得するようにしても良い。
【００３６】
そして、ＳＮＭＰ送受信部３０は、隣接スイッチのＭＡＣアドレスとＩＰアドレスとの対応関係を、ＭＡＣ／ＩＰ学習テーブル６０に登録する。また、ＳＮＭＰ送受信部３０は、隣接スイッチからＳＮＭＰパケットを受信した場合には、その送信元ＩＰアドレスと、送信元ＭＡＣアドレスとをＭＡＣ／ＩＰ学習テーブル６０に登録する。ＳＮＭＰ送受信部３０は、ＭＡＣ／ＩＰ学習テーブル６０に登録されたＭＡＣアドレス及びＩＰアドレスを用いて隣接スイッチへ送信すべきＳＮＭＰパケットを生成することができる。
【００３７】
ＳＮＭＰ送受信部３０は、ＭＡＣ／ＩＰ学習テーブル６０から対応する隣接スイッチのアドレスを取得し、ＳＮＭＰリクエストを生成して隣接スイッチに送信することができる。ポート遮断部４０は、ＭＩＢ解析部２０からの指示に従って、指示されたポートを遮断する(リンクダウンに設定する)。これによってデータのループを防止又は解消することができる。
【００３８】
ＭＡＣ／ＩＰ学習テーブル６０は、隣接スイッチのＭＡＣアドレスとＩＰアドレスとの対応関係を、ポートＰと関連づけて記憶する。テーブル６０に対する書き込み／読み出し処理は、ＳＮＭＰ送受信部３０によって行われる。
【００３９】
ＭＩＢ情報格納部７０は、ＳＮＭＰパケットの送受信によって得られるポートステータスに関するＭＩＢ情報を記憶する。また、状態制御部５０によって設定される自スイッチの各ポートＰの状態(ポートステータス)を記憶している。ＭＩＢ情報格納部７０の格納内容は、ＭＩＢ解析部２０，ＳＮＭＰ送受信部３０によって参照される。
【００４０】
〈動作例１〉
次に、図１に示したレイヤ２スイッチが適用されたネットワークにおける動作例について説明する。図２及び図３は、動作例１の説明図である。図２には、レイヤ２スイッチやスイッチ間を結ぶリンクに障害が生じていない場合(正常時)における各レイヤ２スイッチの動作が示されている。図３は、レイヤ２スイッチの一つに障害が生じた場合における動作が示されている。
【００４１】
図２には、スイッチ(０)，(１)，(２)及び(３)が接続されてなるＩＥＥＥ(Institute of Electrical and Electronic Engineers)８０２．３に基づくレイヤ２ネットワーク（イーサネット（登録商標））が示されている。各スイッチ(０)〜(３)は、図１に示したレイヤ２スイッチ１０が持つ構成を有している。スイッチ(０)は、スイッチ(１)及び(２)と、リンクＬ１，Ｌ２を介して接続されている。また、スイッチ(１)は、リンクＬ３を介してスイッチ(３)と接続されており、スイッチ(３)は、リンクＬ４を介してスイッチ(２)と接続されている。
【００４２】
スイッチ(０)及び(１)は、ポート(１)でリンクＬ１を夫々収容している。また、スイッチ(０)は、リンクＬ２をポート(２)で収容し、スイッチ(２)は、リンクＬ２をポート(１)で収容している。また、スイッチ(１)は、リンクＬ３をポート(２)で収容し、スイッチ(
３)は、リンクＬ３をポート(２)で収容している。スイッチ(２)は、リンクＬ４をポート(２)で収容し、スイッチ(３)はリンクＬ４をポート(２)で収容している。
【００４３】
スイッチ(０)〜(３)(の状態制御部５０)は、ＳＴＰに従って、次のように、自スイッチの各ポート(１)及び(２)の状態(ポートステータス)を設定している。即ち、スイッチ(０)の各ポート(１)及び(２)は、“フォワーディング”に夫々設定されている。スイッチ(１)では、ポート(１)が“ルート”に設定され、ポート(２)が“フォワーディング”に設定されている。スイッチ(２)では、ポート(１)が“ルート”に設定され、ポート(２)が“フォワーディング”に設定されている。そして、スイッチ(３)では、ポート(１)が“ブロッキ
ング”に設定され、ポート(２)が“ルート”に設定されている。
【００４４】
ここで、例として、スイッチ(３)のポート(２)に着目すると、ポート(２)のポートステータスは“ルート”に設定されている。そこで、スイッチ(３)のＭＩＢ解析部２０は、ポート(２)のポートステータス(“ルート”)をＭＩＢ情報格納部７０の参照により検知すると、ＳＮＭＰリクエストの送信指示をＳＮＭＰ送受信部３０に与える。
【００４５】
ＳＮＭＰ送受信部３０は、送信指示に従い、スイッチ(３)のポート(２)により収容されるリンクＬ３に係る隣接スイッチとしてのスイッチ(１)に対し、スイッチ(１)がリンクＬ３を収容するポート(２)のポートステータスに関するＭＩＢ情報を得るためのＳＮＭＰリクエストパケットを生成し、送信する。
【００４６】
スイッチ(１)では、ＳＮＭＰ送受信部３０にてＳＮＭＰリクエストが受信されると、ＳＮＭＰ送受信部３０がＭＩＢ情報格納部７０からポート(２)のポートステータスに係るＭＩＢ情報を取り出し、このＭＩＢ情報を含むＳＮＭＰレスポンスパケットを生成し、スイッチ(３)に送り返す。
【００４７】
スイッチ(３)では、ＳＮＭＰ送受信部３０にてＳＮＭＰレスポンスが受信されると、ＳＮＭＰ送受信部３０がＳＮＭＰレスポンスに含まれたＭＩＢ情報をＭＩＢ情報格納部７０に格納する。これによって、スイッチ(３)のＭＩＢ情報格納部７０には、スイッチ(１)のポート(２)のポートステータスが格納された状態となる。
【００４８】
このとき、ＳＮＭＰ送受信部３０が、ＭＩＢ解析部２０に対し、隣接スイッチのポートステータスがＭＩＢ情報格納部７０に格納されたことを知らせるように構成することができる。
【００４９】
スイッチ(３)のＭＩＢ解析部２０は、ＭＩＢ情報格納部７０から、自スイッチ(スイッ
チ(３))のポート(２)のポートステータスと、隣接スイッチ(スイッチ(１))の対応ポート(２)のポートステータスに係るＭＩＢ情報を読み出し、自スイッチのポートステータスと
、隣接スイッチのポートステータスとを抽出して対比する。このとき、図２に示すように、スイッチ(３)のポート(２)のポートステータスは“ルート”であり、スイッチ(１)のポート(２)のポートステータスは“フォワーディング”である。よって、ＭＩＢ解析部２０は、ループが発生しない(正常である)と判断する。
【００５０】
図２に示すように、上述した動作が、各スイッチ(０)〜(３)において、リンクを収容している少なくとも１つのポートについて行われる。リンクを収容する複数のポートＰがある場合には、上述したような動作が、ポート毎に行われる。
【００５１】
図２で説明した状況下において、図３に示すように、スイッチ(１)で障害が発生した場合を仮定する。ここでは、スイッチ(１)のＣＰＵに障害が生じた場合を想定する。この場合、スイッチ(１)は、ＣＰＵが正常に動作しないので、ＳＴＰに基づいてＢＰＤＵを定期的に送信することができなくなる。
【００５２】
これによって、スイッチ(３)の状態制御部５０は、スイッチ(１)からのＢＰＤＵを受信できなくなる。このような状態が所定時間経過すると、状態制御部５０は、スイッチ(１)に障害が発生したと判定し、予め設定された規定に従って、ポート(２)のポートステータスを変更する。ここでは、ポート(２)のステータスが“ルート”から“フォワーディング”に変更される。
【００５３】
また、スイッチ(１)は、ＣＰＵの障害により、スイッチ(３)からのＳＮＭＰリクエスト
に対するＳＮＭＰレスポンスを返送することができない。一方、スイッチ(３)のＳＮＭＰ送受信部３０は、ＳＮＭＰリクエストを送信すると、ＳＮＭＰレスポンスの到着を監視する監視タイマの計時を開始する。監視タイマがタイムアウトになると、ＳＮＭＰ送受信部３０は、ＭＩＢ情報格納部７０に隣接スイッチのポートステータスを示すＭＩＢ情報として、“応答なし”を格納する。
【００５４】
スイッチ(３)のＭＩＢ解析部２０は、ポート(２)のステータスが“ルート”から“フォワーディング”に変更されたことを、状態制御部５０からの通知、或いは、ＭＩＢ情報格納部７０の監視により検知する。すると、ＭＩＢ解析部２０は、ＭＩＢ情報格納部７０を参照し、自スイッチ(３)のポート(１)及び隣接ポート(２)のポートステータスをチェックする。これによって、ＭＩＢ解析部２０は、自スイッチ(３)のポート(２)が“フォワーディング”であり、隣接ポート(２)のステータスが“応答なし”であることを知る。この場合、ＭＩＢ解析部２０は、ＳＮＭＰレスポンスが到着しない原因がリンクＬ３の障害と隣接スイッチ(１)の障害とのいずれにあるのかを判断する。
【００５５】
即ち、ＭＩＢ解析部２０は、スイッチ(３)のポート(２)へ隣接ポート(２)からのトラフィックが流入しているか否かを判定する。スイッチ(３)では、リンクＬ３を通じてスイッチ(３)のポート(２)へ流入するトラフィック量をカウントし、これをＭＩＢ情報の一部としてＭＩＢ情報格納部７０に格納するように構成されている。このトラフィック量は、ＭＩＢにおいて“iflnOctets”として表現される公知技術である。
【００５６】
ＭＩＢ解析部２０は、“iflnOctets”の値を異なる時間で二回検出し、その差分を取る。このとき、差分があれば、ポート(２)へのトラフィック流入があることがわかる。これに対し、差分がなければ、トラフィックの流入がないことがわかる。これらによって、ＭＩＢ解析部２０は、ＳＮＭＰレスポンスが到着しない理由を認識することができる。
【００５７】
トラフィックの流入がある場合には、実質的に、スイッチ(１)及び(３)の各ポート(２)のステータスが“フォワーディング”になっていることを意味する。この場合、データのループが発生する可能性があるので、ＭＩＢ解析部２０は、ループを検知したものとして、ポート遮断部４０に対し、スイッチ(３)のポート(２)の遮断を指示する。
【００５８】
ポート遮断部４０は、指示に従って、ポート(２)を閉塞状態(リンクダウン)に設定し、スイッチ(１)からのトラフィックの流入を遮断する。これによって、データのループが抑止される。
【００５９】
ところで、スイッチ(３)のポート(２)のステータスが“フォワーディング”に変更された場合には、スイッチ(１)は、正常であれば、スイッチ(３)での変更に応じて、スイッチ(１)のポート(２)のステータスを“ルート”に変更する。
【００６０】
これに対し、スイッチ(１)が障害を有している場合には、状態制御部５０がステータスを変更できない状態となり、スイッチ(１)のポート(２)のステータスが“フォワーディング”のままになってしまう場合が考えられる。この場合、スイッチ(３)のＭＩＢ解析部２０において、自スイッチ(３)のポート(２)のステータスと、隣接スイッチ(１)の対応ポート(２)のステータスとが共に“フォワーディング”であると判定される。すると、ＭＩＢ解析部２０は、上記したようなトラフィック流入の有無の判定を行い、トラフィック流入がある場合には、ポート遮断部４０にポート(２)の遮断を指示する。これによって、ポート(２)が遮断され、データのループが抑止される。
【００６１】
上述した動作では、ポートステータスが“ルート”又は“ブロッキング”であるポートＰについて、ＳＮＭＰ送受信部３０が、隣接スイッチにＳＮＭＰリクエストを定期的に送
信し、ＭＩＢ情報格納部７０上の隣接ポートのステータスに関するＭＩＢ情報を定期的に更新する。そして、ＭＩＢ解析部２０が、自スイッチのポートのステータスが“フォワーディング”に遷移したことを契機として、ポートのステータスをチェックする。このような動作に代えて、ＳＮＭＰ送受信部３０は、ステータスに関するＭＩＢ情報を更新する毎に、ステータス更新をＭＩＢ解析部２０に通知し、ＭＩＢ解析部２０がステータス更新の通知を受け取る毎に、ステータスチェックを行うようにすることもできる。
【００６２】
また、ＭＩＢ解析部２０が、ポートステータスが“フォワーディング”に遷移したことを契機として、ＳＮＭＰ送受信部３０にＳＮＭＰリクエストの送信指示を与え、これに基づくステータス更新通知をＳＮＭＰ送受信部３０から受け取り、ステータスチェックを行うように構成することもできる。この場合、隣接ポートの最新のステータスでステータスチェックを行うことができる。
【００６３】
〈動作例２〉
次に、図２及び図４を用いて、動作例２について説明する。図２に示したように、ＳＮＭＰリクエストは、データの流れに対する下流側のスイッチ(ポートステータスが“ルー
ト”又は“ブロッキング”のスイッチ)から、上流側の隣接スイッチ(ポートステータスが“フォワーディング”のスイッチ)に対して送信されるように構成されている。また、Ｓ
ＴＰによるＢＰＤＵは、データの上流側のスイッチから下流側のスイッチへ送信される。図２に示すように、スイッチ(３)のポート(１)のポートステータスは“ブロッキング”であるので、ＳＮＭＰリクエストがスイッチ(２)に対して送信されるように構成されている。
【００６４】
ここで、図４に示すように、スイッチ(３)に障害が発生し、スイッチ(３)がスイッチ(
２)に対してＳＮＭＰリクエストを送信できなくなる場合が考えられる。この場合、スイ
ッチ(３)は、ＳＮＭＰリクエストを送信して隣接スイッチ(２)から対応ポート(２)のポートステータスを得ることができなくなるので、動作例１で説明したようなループの検知及びポートの遮断を行うことができない。一方、スイッチ(２)は、スイッチ(３)からのＢＰＤＵを受け取ることはないので、スイッチ(３)のポートステータスを考慮して自スイッチ(２)のポートステータスを遷移させることはできない。ここで、もしスイッチ(３)からスイッチ(２)へリンクＬ４を通じてデータが流れ込む状態でスイッチ(３)が故障していると、ループが発生する可能性がある。
【００６５】
そこで、次のような構成及び動作によりループを抑止する。即ち、スイッチ(３)は、上流側の隣接スイッチ(２)に対し、定期的にＳＮＭＰリクエストを送信するように構成される。一方、上流側の隣接スイッチ(２)では、ＳＮＭＰ送受信部３０が、ＳＮＭＰリクエストの到着を監視するタイマを有し、スイッチ(３)からの定期的なＳＮＭＰリクエストの到着を監視するように構成される。このＳＮＭＰリクエストの到着の監視タイマは、スイッチが下流側の隣接スイッチからのＳＮＭＰリクエストを最初に受け取ったことを契機として、計時を開始し、その後は、次のＳＮＭＰリクエストが到着する毎にリセット動作を行い、計時を再開するように構成される。
【００６６】
スイッチ(２)では、スイッチ(３)からのＳＮＭＰリクエストが到着しなくなり、監視タイマがタイムアウトになると、ＳＮＭＰ送受信部３０に指示を与え、ＳＮＭＰ送受信部３０は、ＳＮＭＰリクエストをスイッチ(３)へ送信する。
【００６７】
その後、スイッチ(２)のＳＮＭＰ送受信部３０は、ＳＮＭＰレスポンスが到着した場合、及びＳＮＭＰレスポンスが到着することなくＳＮＭＰレスポンスの到着の監視タイマがタイムアウトになった場合には、動作例１と同様に、隣接ポートのステータスに関するＭＩＢ情報をＭＩＢ情報格納部７０に格納するとともに、そのこと(隣接ポートのポートス
テータス更新)をＭＩＢ解析部２０に伝える。
【００６８】
ＭＩＢ解析部２０は、ＭＩＢ情報格納部７０を参照し、ポートステータスを対比する。ここでは、自スイッチ(２)のポート(２)のステータスが“フォワーディング”であり、隣接スイッチ(３)の対応ポート(１)に対するステータスが“応答なし”である。このため、ＭＩＢ解析部２０は、スイッチ(２)のポート(２)へのトラフィックの流入があるか否かを判断する。この判断は、動作例１で説明したように、ＭＩＢ情報“iflnOctets”の差分を得ることによって行われる。
【００６９】
そして、ＭＩＢ解析部２０は、トラフィックの流入があると判断する場合には、ポート遮断部４０に対し、ポート(２)の遮断(閉塞)を指示する。これによって、ポート遮断部４０がポート(２)を遮断(リンクダウン)することにより、ループが抑止される。
【００７０】
動作例２によれば、“フォワーディング”側(データの流れに対して上流側)のスイッチが、“ルート”又は“ブロッキング”側(下流側)の隣接スイッチのポートステータスを考慮してループを検知し、ループを抑止することができる。
【００７１】
〈動作例３〉
次に、図２に示したネットワークシステムにおける動作例３を説明する。図５及び図６は、動作例３の説明図である。動作例１では、データの流れに対して下流側に位置するスイッチが上流側の隣接スイッチに対してＳＮＭＰリクエストを送信する。また、動作例２では、上流側のスイッチが下流側の隣接スイッチからのＳＮＭＰリクエストが到着しなくなった場合に、下流側の隣接スイッチに対してＳＮＭＰリクエストを送信する。
【００７２】
図５に示すように、動作例３では、各スイッチ(０)〜(３)は、自スイッチがデータの流れに対して上流であるか下流であるかに関係なく、隣接スイッチとの間を結ぶリンクを収容する各ポートＰについて、隣接スイッチに対してＳＮＭＰリクエストを定期的に送信する。
【００７３】
即ち、各スイッチ(０)〜(３)のＭＩＢ解析部２０は、リンクを収容する各ポートＰについて、定期的なＳＮＭＰリクエストの送信をＳＮＭＰ送受信部３０に指示する。
【００７４】
そして、ＭＩＢ解析部２０は、ＳＮＭＰリクエストが隣接スイッチに対して送信される毎に、そのポートＰについて隣接スイッチの対応ポートとのステータス対比を行い、ループを判断する。このとき、自スイッチのポートステータスが“フォワーディング”であり、隣接スイッチのポートステータスが“フォワーディング”又は“応答なし”である場合には、ＭＩＢ解析部２０は、動作例１と同様の手法で隣接スイッチからのトラフィックの流入があるかを判定し、そうであれば、自スイッチのポートＰをポート遮断部４０に遮断させる。
【００７５】
図６には、スイッチ(１)に障害が発生し、スイッチ(３)にスイッチ(１)からのＳＮＭＰレスポンスが到着しなくなった場合において、スイッチ(３)がポートのステータス対比及びループ判定を行う様子を示している。
【００７６】
動作例３のようにすれば、動作例２で説明したような、自スイッチで隣接スイッチからのＳＮＭＰリクエストの到着を監視し、ＳＮＭＰリクエストが到着しなくなったら自スイッチから隣接スイッチへＳＮＭＰリクエストを送信するという複雑な手順を実行する必要がなくなる。
【００７７】
動作例３の実行にあたっては、“ルート”又は“ブロッキング”側のスイッチは、動作
例１と同様の手法により“フォワーディング”側の隣接スイッチのＩＰアドレスを得てＳＮＭＰリクエストを送信する。
【００７８】
一方、“フォワーディング”側のスイッチのＳＮＭＰ送受信部３０は、“ルート”又は“ブロッキング”側の隣接スイッチから送信されてくるＳＮＭＰリクエストパケットの送信元ＩＰアドレス及び送信元ＭＡＣアドレスを取得し、この関係をＭＡＣ／ＩＰ学習テーブル６０に登録する。そして、ＳＮＭＰ送受信部３０は、学習したＩＰアドレス及びＭＡＣアドレスを用いてＳＮＭＰリクエストパケットを生成し、“ルート”又は“ブロッキング”側の隣接スイッチへ送信する。このとき、ＳＮＭＰリクエストは、ＳＮＭＰレスポンスとほぼ同時に送信されるようにしても良い。
【００７９】
〔動作例１及び２のフロー〕
図７は、上述した動作例１及び２に係るレイヤ２スイッチ１０による処理の例を示すフローチャートである。図７に示す処理は、リンクを収容した各ポートＰについて実行される。
【００８０】
図７において、レイヤ２スイッチ１０が処理を開始すると、最初に、処理の対象となるポートＰのステータスが“ルート”又は“ブロッキング”であるか否かがＭＩＢ解析部２０により判断される(ステップＳ１０１)。
【００８１】
このとき、ポートステータスが“ルート”又は“ブロッキング”であれば(Ｓ１０１；
Ｙｅｓ)、処理がステップＳ１０２に進み、ポートステータスが“フォワーディング”で
あれば、処理がステップＳ１０８に進む。
【００８２】
ステップＳ１０２では、隣接スイッチのＭＡＣアドレスがＭＩＢから取得される。すなわち、ＭＩＢ解析部２０がＳＮＭＰ送受信部３０にＭＩＢ情報の収集指示(ＳＮＭＰリク
エストの送信指示)を与える。ＳＮＭＰ送受信部３０は、ＭＩＢ情報格納部７０に格納さ
れている対象ポートＰに応じた隣接スイッチのＭＡＣアドレス(ＭＩＢ情報に含まれてい
る)を取得する。
【００８３】
ステップＳ１０３では、ＳＮＭＰ送受信部３０は、自スイッチが属するサブネット内の或るホストアドレス(自スイッチのＩＰアドレスを除く)が通信相手のＩＰアドレスとして設定されたＡＲＰ要求パケットを生成し、送信する。
【００８４】
その後、ＳＮＭＰ送受信部３０は、ＡＲＰ要求パケットに対するＡＲＰ応答パケットを受信し、ＡＲＰ応答パケットに格納された検索先のＭＡＣアドレスと、ステップＳ１０２で取得した隣接スイッチのＭＡＣアドレスとを照合する。このとき、ＭＡＣアドレスが一致すれば、そのＡＲＰ応答パケットに含まれた通信相手のＩＰアドレスが隣接スイッチのＩＰアドレスに該当する。ＳＮＭＰ送受信部３０は、隣接スイッチのＭＡＣアドレスを有するＡＲＰ応答を受け取るまで、通信相手のＩＰアドレスが(サブネットのホストアドレ
スの範囲内で)変更されたＡＲＰ要求を作成・送信する。ＳＮＭＰ送受信部３０は、ＡＲ
Ｐ応答から隣接スイッチのＩＰアドレスを獲得できた場合には、隣接スイッチのＩＰアドレス及びＭＡＣアドレスをＭＡＣ／ＩＰ学習テーブル６０に登録する。
【００８５】
ステップＳ１０４では、隣接スイッチのポートステータスを定期的に取得する。即ち、ＳＮＭＰ送受信部３０は、ＭＡＣ／ＩＰ学習テーブル６０に登録した隣接スイッチのＭＡＣアドレス及びＩＰアドレスを用いて、隣接スイッチの対応ポートのステータスに関するＭＩＢ情報を得るためのＳＮＭＰリクエストを定期的に生成し、送信する。
【００８６】
ＳＮＭＰリクエストに対するＳＮＭＰレスポンスが隣接スイッチから受信されると、Ｓ
ＮＭＰ送受信部３０は、ＳＮＭＰレスポンスに含まれたＭＩＢ情報(隣接ポートのポート
ステータス)をＭＩＢ情報格納部７０に格納する。
【００８７】
ＭＩＢ解析部２０は、所定のタイミング(例えば、状態制御部５０からステータス変更
を知らされた場合、或いはＭＩＢ情報格納部７０の監視)で、ＭＩＢ情報格納部７０に格
納されている対象ポートＰ(自ポート)のポートステータスを確認し、ポートステータスが“フォワーディング”に遷移しているか否かを判定する(ステップＳ１０５)。このとき、ポートステータスが“フォワーディング”に遷移していなければ(Ｓ１０５；Ｎｏ)、処理がステップＳ１０４に戻る。
【００８８】
これに対し、ポートステータスが“フォワーディング”に遷移していれば(Ｓ１０５；
Ｙｅｓ)、ＭＩＢ解析部２０は、ＭＩＢ情報格納部７０を参照し、隣接スイッチの対応ポ
ート(隣接ポート)のポートステータスを取得して、ポートステータスが“フォワーディング”又は“応答なし”であるかを判定する(ステップＳ１０６)。
【００８９】
隣接ポートのポートステータスが“フォワーディング”又は“応答なし”である場合(
Ｓ１０６；Ｙｅｓ)には、処理がステップＳ１０７に進み、そうでなければ(Ｓ１０６；Ｎｏ)、処理がステップＳ１０８に進む。
【００９０】
ステップＳ１０７では、ＭＩＢ解析部２０は、自ポートの“iflnOctets”の増分があるか否かを判定する。即ち、ＭＩＢ解析部２０は、ＭＩＢ情報格納部７０に格納されている情報“iflnOctets”を、異なる時間で二回検索し、差分がある(トラフィック量のカウン
ト数が増えている)か否かを判定する。このとき、差分があれば、それは自ポートに隣接
ポートからのトラフィックの流入があることを意味する。
【００９１】
ＭＩＢ解析部２０は、増分(差分)があれば(Ｓ１０７；Ｙｅｓ)、ループと判定し、ポート遮断部４０に自ポートを遮断させる。これに対し、増分(差分)が無ければ(Ｓ１０７；
Ｎｏ)、自ポートと隣接ポートとを結ぶリンクに障害(例えば切断)が生じていると判断さ
れる。この場合、ループは生じないので、ポート制御は特に行われない。もっとも、リンク障害を保守者に通知するように構成しても良い。
【００９２】
ステップＳ１０８に処理が進んだ場合には、自ポートのステータスは“フォワーディング”であるので、隣接スイッチからのポーリング(ＳＮＭＰリクエスト)を待つ状態となる。
そして、ＳＮＭＰリクエストが受信された場合(Ｓ１０８；Ｙｅｓ)には、ＳＮＭＰ送受信部３０は、ＭＩＢ情報格納部７０から自ポートに対するポートステータスに関するＭＩＢ情報を取得し、このＭＩＢ情報を含むＳＮＭＰレスポンスを作成し、隣接スイッチへ送信する(ステップＳ１０９)。
【００９３】
ステップＳ１０８では、ＳＮＭＰリクエストの監視タイマにより、ＳＮＭＰリクエストの定期的な到着が監視される。監視タイマがタイムアウトになるまでＳＮＭＰリクエストが到着しなかった場合には、処理がステップＳ１１０へ進む(Ｓ１０８；Ｎｏ)。
【００９４】
ステップＳ１１０では、ＳＮＭＰ送受信部３０は、隣接スイッチに対するＳＮＭＰリクエストを生成して送信する。その後、ＳＮＭＰリクエストに対するＳＮＭＰレスポンスを受信することで、隣接スイッチのポートステータスを取得する。隣接スイッチのポートステータスは、ＭＩＢ情報格納部７０に格納される。このとき、隣接スイッチのポートステータスが更新されたことが、ＳＮＭＰ送受信部３０からＭＩＢ解析部２０に通知される。
【００９５】
ＭＩＢ解析部２０は、ポートステータス更新がＳＮＭＰ送受信部２０から通知されると
、ステップＳ１０６及びＳ１０７と同様の処理を行う(ステップＳ１１１，Ｓ１１２)。これにより、隣接ポートのステータスが“フォワーディング”又は“応答なし”であり(Ｓ
１１１；Ｙｅｓ)、且つトラフィック流入がある(Ｓ１１２；Ｙｅｓ)である場合には、ル
ープと判定され、対象ポートが遮断される。
【００９６】
〔動作例３のフロー〕
図８は、動作例３に係るレイヤ２スイッチ１０による処理の例を示すフローチャートである。図８に示す処理は、リンクを収容した各ポートＰについて実行される。
【００９７】
図８において、ステップＳ２０１〜Ｓ２０７の処理は、図７に示したＳ１０１〜Ｓ１０７の処理と同じであるので、説明を省略する。ステップＳ２０８では、自スイッチの対象ポートの状態が“フォワーディング”であるので、ＳＮＭＰ送受信部３０は、データ(フ
レーム)の流れの下流側からの隣接スイッチからのＳＮＭＰリクエストの到着を待ち、Ｓ
ＮＭＰリクエストが到着すると、これに対応するＭＩＢ情報(ポートステータス)を含むＳＮＭＰレスポンスを生成して返送する。
【００９８】
このとき、ＳＮＭＰ送受信部３０は、ＳＮＭＰリクエストの送信元ＩＰアドレス及び送信元ＭＡＣアドレスを抽出してＭＡＣ／ＩＰ学習テーブル６０に登録し、その後は、これらのＭＡＣアドレス及びＩＰアドレスを用いて、隣接スイッチからポートステータスを取得するためのＳＮＭＰリクエストを下流側の隣接スイッチへ定期的に送信し、ＭＩＢ情報格納部７０上の隣接ポートのステータスを随時更新する(定期的に取得する：ステップＳ
２０９)。
【００９９】
ＭＩＢ解析部２０は、所定のタイミング(定期的に、ステータスが更新される毎に)で、隣接ポートのステータスをＭＩＢ情報格納部７０から取得する。そして、図７に示したステップＳ１１１及びＳ１１２と同様の処理を行う。即ち、隣接ポートのステータスが“フォワーディング”又は“応答なし”であり(Ｓ２１０；Ｙｅｓ)、且つトラフィック流入がある(Ｓ２１１；Ｙｅｓ)である場合には、ループと判定され、対象ポートが遮断される。
【０１００】
〔実施形態の作用効果〕
本発明の実施形態によれば、レイヤ２ネットワークでＳＴＰに基づくポートのステータス制御が実施されている場合において、レイヤ２スイッチの障害によりＳＴＰによるポートステータスの制御が有効に機能せず、スイッチ間を結ぶリンクを夫々収容するポートの状態が共に“フォワーディング”になっており、且つ一方のポートから他方のポートへのデータトラフィックの流入がある場合には、ループと判定され、ポートが遮断される。これによって、データ(フレーム)のループが適正に抑止される。また、ＭＡＣフレームにＴＴＬを導入するといった複雑な構成を導入することが回避される。
【０１０１】
このように、本発明によれば、同じリンクを収容するポート間でのポートステータスに矛盾がある場合(例えば双方がフォワーディングである場合)、又は一方のポートステータスと対比すべき他方のポートステータスを入手できない場合に、フレームのループを判定(ループを検出)し、該当ポートを遮断するように構成することができる。
【０１０２】
さらに、実施形態において説明したように、自装置へ隣接装置からのトラフィック入力があるか否か(Ｓ１０７，Ｓ１１２，Ｓ２０７，Ｓ２１１)をループの判断条件に含めて、ループの検出精度を高めることができる。この場合、ポートの遮断が不要な場合(リンク
切れの場合)にまで、ポートを遮断することを抑止することができる。この意味では、ト
ラフィック入力の有無の判断(Ｓ１０７，Ｓ１１２，Ｓ２０７，Ｓ２１１)は、本発明の付加的な構成要素である。
【０１０３】
〔その他〕
上述した実施形態は、以下の発明を開示する。以下に開示される発明の構成要素は、本発明の目的を逸脱しない範囲で適宜組み合わせることが可能である。また、本発明は、以下に説明する装置の発明と同様の特徴を持つ方法の発明、プログラムの発明として実現することも可能である。
（付記１）データリンク層のネットワークでフレームの転送を行うフレーム転送装置であって、
自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から、前記隣接ポートのステータスを取得する取得手段と、
前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定する判定手段と、
前記ループが生じると判定される場合に、前記自装置のポートを遮断する遮断手段と
を含むフレーム転送装置。(１)
(付記２)
前記取得手段は、前記隣接ポートのステータスを問い合わせる要求パケットを前記隣接装置に送信し、前記要求パケットに対する応答パケットを受信し、
前記判定手段は、前記応答パケットに含まれる前記隣接ポートのステータスを取得して前記判定を行う
付記１記載のフレーム転送装置。
(付記３)
前記判定手段は、前記自装置のポートのステータスと前記隣接ポートのステータスとの双方がフレームの転送を示す、又は前記自装置のポートのステータスと対比すべき前記隣接ポートのステータスを前記隣接装置から取得できない場合に、前記ループが生じると判定する
付記１又は２記載のフレーム転送装置。(２)
(付記４)
前記判定手段は、さらに、前記自装置のポートへ前記隣接装置からのフレーム入力がある場合に、前記ループが生じると判定する
付記３のいずれかに記載のフレーム転送装置。(３)
(付記５)
前記取得手段は、前記自装置のポートの状態がフレームを転送する状態でない場合に、自装置が属するサブネットのアドレスと、前記隣接装置のＭＡＣアドレスとを用いて前記隣接装置のＩＰアドレスを求め、前記隣接装置のＩＰアドレス及びＭＡＣアドレスを用いて前記要求パケットを生成し送信する
付記２〜４のいずれかに記載のフレーム転送装置。
(付記６)
前記取得手段は、前記サブネットに属する或るホストアドレスが通信相手のＩＰアドレスとして設定されたＡＲＰ要求パケットを前記サブネット内に送信し、前記ＡＲＰ要求パケットに対するＡＲＰ応答パケットを受信し、このＡＲＰ応答パケットに含まれた検索先のＭＡＣアドレスと、前記隣接装置のＭＡＣアドレスとを照合して、両者が一致する場合に、このＡＲＰ応答パケットに含まれた通信相手のＩＰアドレスを前記隣接装置のＩＰアドレスとして特定する
付記５記載のフレーム転送装置。
(付記７)
前記判定手段は、前記応答パケットが受信される毎に、前記自装置のポートのステータスと前記隣接ポートのステータスとの対比を行う
付記２〜６のいずれかに記載のフレーム転送装置。
(付記８)
前記判定手段は、前記自装置のポートのステータスが、或るステータスから所定のステータスへ遷移した場合に、前記自装置のポートのステータスと前記隣接ポートのステータ
スとの対比を行う
付記２〜７のいずれかに記載のフレーム転送装置。
(付記９)
前記取得手段は、隣接装置から前記要求パケットを定期的に受信し、各要求パケットについて、対応するポートのステータスを含む応答パケットを返送し、前記要求パケットが到着しなくなった場合には、前記隣接装置に前記要求パケットを送信する
付記２〜８のいずれかに記載のフレーム転送装置。(４)
(付記１０)
前記取得手段は、隣接装置から前記要求パケットを定期的に受信し、各要求パケットについて、対応するポートのステータスを含む応答パケットを返送し、前記応答パケットを送信する際には、前記隣接装置から対応する隣接ポートのステータスを問い合わせるための要求パケットを生成して送信する
付記２〜８のいずれかに記載のフレーム転送装置。
(付記１１)
データリンク層のフレームが転送されるネットワークにおいて、自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から、前記隣接ポートのステータスを取得し、
前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定し、
前記ループが生じると判定される場合に、前記自装置のポートを遮断する
ことを含むフレームのループ抑止方法。(５)
(付記１２)
データリンク層のフレームが転送されるネットワークにおいて、自装置のポートが収容するリンクを収容する隣接ポートを有する隣接装置から、前記隣接ポートのステータスを取得するステップと、
前記自装置のポートのステータスと前記隣接ポートのステータスとの間の矛盾によりフレームのループが生じるか否かを判定するステップと、
前記ループが生じると判定される場合に、前記自装置のポートを遮断させるステップと
をコンピュータに実行させるプログラム。
【図面の簡単な説明】
【０１０４】
【図１】本発明の実施形態におけるフレーム転送装置(レイヤ２スイッチ)の構成例を示す図
【図２】実施形態の動作例１の説明図(正常時)
【図３】実施形態の動作例１の説明図(障害発生時)
【図４】実施形態の動作例２の説明図(障害発生時)
【図５】実施形態の動作例３の説明図(正常時)
【図６】実施形態の動作例３の説明図(障害発生時)
【図７】動作例１及び２に応じたレイヤ２スイッチの処理を示すフローチャート
【図８】動作例３に応じたレイヤ２スイッチの処理を示すフローチャート
【符号の説明】
【０１０５】
Ｐ  ポート
１０  レイヤ２スイッチ(フレーム転送装置)
２０  ＭＩＢ解析部(判定手段)
３０  ＳＮＭＰ送受信部(取得手段)
４０  ポート遮断部(遮断手段)
５０  状態制御部
６０  ＭＡＣ／ＩＰ学習テーブル(隣接装置アドレス管理部)
７０  ＭＩＢ情報格納部
【図１】
2006174375.tif 000003
【図２】
2006174375.tif 000004
【図３】
2006174375.tif 000005
【図４】
2006174375.tif 000006
【図５】
2006174375.tif 000007
【図６】
2006174375.tif 000008
【図７】
2006174375.tif 000009
【図８】
2006174375.tif 000010