(57)【要約】【課題】正常なブロードキャスト通信を阻害することなく、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することができるデータ中継装置、データ中継方法およびデータ中継プログラムを提供すること。【解決手段】ＦＣＳ学習処理部１５が、ＭＡＣフレームの内容を基にして生成されたＦＣＳをＦＣＳ学習用ＣＡＭ１６に記憶し、ＭＡＣフレームを受信した際に、記憶されたＦＣＳの情報を基にして、当該ＭＡＣフレームに係る通信経路がループ状態にあるか否かを判定し、ＭＡＣフレームに係る通信経路がループ状態にあると判定された場合に、フィルタリング処理部１７が、当該ＭＡＣフレームの中継を制限する。【選択図】        図１
2005252473.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して送信されるデータの中継をおこなうデータ中継装置であって、
データの内容を基にして生成された生成情報を記憶する記憶手段と、
データを受信した際に、前記記憶手段に記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定手段と、
前記判定手段により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限手段と、
を備えたことを特徴とするデータ中継装置。
【請求項２】
前記判定手段は、前記記憶手段に記憶された生成情報に対応するデータを所定の計測時間内に受信した回数を計測し、計測された該回数と閾値とを比較することにより当該データに係る通信経路がループ状態にあるか否かを判定することを特徴とする請求項１に記載のデータ中継装置。
【請求項３】
前記生成情報は、データの送信エラーをチェックするチェック符号であることを特徴とする請求項１または２に記載のデータ中継装置。
【請求項４】
ネットワークを介して送信されるデータの中継をおこなうデータ中継方法であって、
データの内容を基にして生成された生成情報を記憶する記憶工程と、
データを受信した際に、前記記憶工程により記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定工程と、
前記判定工程により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限工程と、
を含んだことを特徴とするデータ中継方法。
【請求項５】
ネットワークを介して送信されるデータの中継をおこなうデータ中継プログラムであって、
データの内容を基にして生成された生成情報を記憶する記憶手順と、
データを受信した際に、前記記憶手順により記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定手順と、
前記判定手順により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限手順と、
をコンピュータに実行させることを特徴とするデータ中継プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークを介して送信されるデータの中継をおこなうデータ中継装置、データ中継方法およびデータ中継プログラムに関し、特に、正常なブロードキャスト通信を阻害することなく、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することができるデータ中継装置、データ中継方法およびデータ中継プログラムに関するものである。
【背景技術】
【０００２】
近年、多数のレイヤ２スイッチを接続することにより構築された広域イーサネット（登録商標）などの大規模ネットワークが利用されるようになってきている。このレイヤ２スイッチは、アドレスの解決ができない場合に、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）フレームのブロードキャストをおこないながらＭＡＣフレームを中継する。
【０００３】
ところが、ネットワークを新たに構築した場合や、ネットワークの保守をおこなった場合などに、ＭＡＣフレームの伝送経路にループ経路が形成されると、ブロードキャストストームが生じてネットワークがダウンしてしまう。
【０００４】
このため、スパニングツリー（Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ）と呼ばれる制御技術を用いてループ経路の発生を防止することがおこなわれる。このスパニングツリーの規格には、ＩＥＥＥ８０２．１Ｄ  ＳＴＰ（Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ  Ｐｒｏｔｏｃｏｌ）や、ＩＥＥＥ８０２．１ｗ  ＲＳＴＰ（Ｒａｐｉｄ  Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ  Ｐｒｏｔｏｃｏｌ）、また、ＩＥＥＥ８０２．１ｓ  ＭＳＴＰ（Ｍｕｌｔｉｐｌｅ  Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ  Ｐｒｏｔｏｃｏｌ）などがある。
【０００５】
しかし、上記スパニングツリーの制御技術は、元来ローカルエリアネットワークでの利用を前提に開発されたものであり、広域イーサネット（登録商標）においては、運用面での信頼性が低いという問題があった。たとえば、この制御技術では、レイヤ２スイッチ間で制御情報をやり取りしてループ経路の発生を防止するよう制御するが、ネットワークが広域になるとその制御に時間がかかるようになり、運用上問題がでてくる。
【０００６】
これを改善し、ブロードキャストストームの発生に対処する方法がいくつか提案されている。たとえば、特許文献１には、一定時間あたりのブロードキャストフレーム数をカウントし、カウント値が所定値より大きくなった場合に、ブロードキャストフレームの中継動作を制限するトラフック制御ブリッジが開示されている。
【０００７】
また、特許文献２には、特定の宛先アドレスを持つフレームの数をカウントし、単位時間当たりのフレーム数がしきい値を越える状態が持続する場合に、特定の宛先アドレスを持つフレームを破棄するＬＡＮスイッチが開示されている。
【０００８】
また、これ以外にも、ブロードキャストフレームを連続して受信した回数がしきい値以上である場合に、連続受信が途切れるまでの間、受信したフレームを破棄する方法や、特許文献３に示すように、ブロードキャスト通信に優先度を設定しておき、ブロードキャストストームが発生した場合に、優先度の低いブロードキャスト通信のフレームを破棄する方法なども提案されている。
【０００９】
【特許文献１】特開平７−３３６３７３号公報
【特許文献２】特開平１１−３４１０３９号公報
【特許文献３】特開２００３−１２４９６３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述した従来技術では、フレームの伝送経路に発生したループ経路によるブロードキャストフレームだけでなく、正常なブロードキャストによるフレームであっても、破棄してしまうという問題があった。
【００１１】
すなわち、上述したように、単にフレーム数が多くなった場合や、フレームを多数連続して受信した場合にフレームの中継を制限したりするのみでは、正常なブロードキャスト通信まで阻害するという問題があった。
【００１２】
特許文献３に示した従来技術のように、たとえブロードキャスト通信に優先度を設定し、優先度の低いブロードキャスト通信のフレームのみを破棄することとしても、ループ経路の発生を原因としたフレームを選択して破棄するものではなく、効率的でないという問題があった。
【００１３】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、正常なブロードキャスト通信を阻害することなく、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することができるデータ中継装置、データ中継方法およびデータ中継プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するため、本発明は、ネットワークを介して送信されるデータの中継をおこなうデータ中継装置であって、データの内容を基にして生成された生成情報を記憶する記憶手段と、データを受信した際に、前記記憶手段に記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定手段と、前記判定手段により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限手段と、を備えたことを特徴とする。
【００１５】
また、本発明は、前記生成情報は、データの送信エラーをチェックするチェック符号であることを特徴とする。
【００１６】
また、本発明は、前記判定手段は、前記記憶手段に記憶された生成情報に対応するデータを所定の計測時間内に受信した回数を計測し、計測された該回数と閾値とを比較することにより当該データに係る通信経路がループ状態にあるか否かを判定することを特徴とする。
【００１７】
また、本発明は、前記判定手段は、前記計測時間および／または前記閾値の変更を受け付けることを特徴とする。
【００１８】
また、本発明は、前記中継制限手段によりデータの中継が制限された場合に、データの宛先情報とデータを送出するポートの情報とを対応付けて記憶した情報から当該データに含まれる宛先情報に対応するポートの情報を削除する情報削除手段をさらに備えたことを特徴とする。
【００１９】
また、本発明は、ネットワークを介して送信されるデータの中継をおこなうデータ中継方法であって、データの内容を基にして生成された生成情報を記憶する記憶工程と、データを受信した際に、前記記憶工程により記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定工程と、前記判定工程により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限工程と、を含んだことを特徴とする。
【００２０】
また、本発明は、ネットワークを介して送信されるデータの中継をおこなうデータ中継プログラムであって、データの内容を基にして生成された生成情報を記憶する記憶手順と、データを受信した際に、前記記憶手順により記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定手順と、前記判定手順により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限手順と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、データの内容を基にして生成された生成情報を記憶し、データを受信した際に、記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定し、データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限することとしたので、正常なブロードキャスト通信を阻害することなく、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することができるという効果を奏する。
【００２２】
また、本発明によれば、生成情報は、データの送信エラーをチェックするチェック符号であることとしたので、データの送信エラーをチェックするチェック符号を利用することにより、ループ経路を原因として生じたブロードキャストストームのフレームを容易に検出し、そのフレームの中継を効率的に制限することができるという効果を奏する。
【００２３】
また、本発明によれば、記憶された生成情報に対応するデータを所定の計測時間内に受信した回数を計測し、計測された回数と閾値とを比較することにより当該データに係る通信経路がループ状態にあるか否かを判定することとしたので、閾値によりループ状態にあるか否かを判定する基準を調整することができ、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することができるという効果を奏する。
【００２４】
また、本発明によれば、計測時間および／または閾値の変更を受け付けることとしたので、適宜計測時間や閾値を変更することによりループ状態にあるか否かを判定する基準を容易に変更し、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することができるという効果を奏する。
【００２５】
また、本発明によれば、データの中継が制限された場合に、データの宛先情報とデータを送出するポートの情報とを対応付けて記憶した情報から当該データに含まれる宛先情報に対応するポートの情報を削除することとしたので、情報を記憶する記憶領域を効率的に利用しつつ、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２６】
以下に添付図面を参照して、この発明に係るデータ中継装置、データ中継方法およびデータ中継プログラムの好適な実施の形態を詳細に説明する。ここでは、データ中継装置の１つであるレイヤ２スイッチに本発明を適用した場合について説明する。
【実施例】
【００２７】
まず、本実施例に係るレイヤ２スイッチの機能的構成について説明する。図１は、本実施例に係るレイヤ２スイッチ１０の機能的構成を示す機能ブロック図である。このレイヤ２スイッチ１０は、受信したＭＡＣフレームの宛先ＭＡＣアドレスを解析し、ＭＡＣフレームを適切なポートから転送する。また、このレイヤ２スイッチは、宛先ＭＡＣアドレスが解決されない場合には、すべてのポートからＭＡＣフレームをブロードキャストする処理をおこなう。
【００２８】
さらに、このレイヤ２スイッチ１０は、単にＭＡＣフレームを転送するだけでなく、受信したＭＡＣフレームに含まれるＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）を各ＭＡＣフレームを識別する情報としてメモリに記憶しておき、新たにＭＡＣフレームを受信した際に、メモリに記憶しておいたＦＣＳと新たに受信したＭＡＣフレームのＦＣＳとを比較することにより、同一のＭＡＣフレームを再度受信したか否かを調べる処理をおこなう。
【００２９】
これにより、このレイヤ２スイッチは、ネットワークのループ経路を介して送信されたＭＡＣフレームを検出することができるので、正常なブロードキャスト通信を阻害することなく、ループ経路を原因として生じたブロードキャストストームのＭＡＣフレームの中継を効率的に制限することができる。
【００３０】
図１に示すように、このレイヤ２スイッチ１０は、ポート１１ａ〜１１ｈ、物理層機能部１２、ＭＩＩ（Ｍｅｄｉａ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｉｎｔｅｒｆａｃｅ）１３ａ〜１３ｈおよびＭＡＣ層機能部１４を有する。
【００３１】
ポート１１ａ〜１１ｈは、レイヤ２スイッチ１０を他の装置に接続するポートである。物理層機能部１２は、ポート１１ａ〜１１ｈを介してＭＡＣフレームを送受信する機能部である。また、ＭＩＩ１３ａ〜１３ｈは、物理層機能部１２とＭＡＣ層機能部１４との間でデータの授受をおこなうインターフェース部である。
【００３２】
ＭＡＣ層機能部１４は、受信したＭＡＣフレームの宛先ＭＡＣアドレスを解析し、ＭＡＣフレームを適切なポートから転送するよう制御する機能部である。このＭＡＣ層機能部１４は、ＦＣＳ学習処理部１５、ＦＣＳ学習用ＣＡＭ（Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）１６、フィルタリング処理部１７、アドレス学習処理部１８、アドレス学習用ＣＡＭ１９およびフレーム送出処理部２０を有する。
【００３３】
ＦＣＳ学習処理部１５は、受信したＭＡＣフレームに含まれるＦＣＳの値を基にして、当該ＭＡＣフレームの通信経路がループ状態にあるか否かを判定する処理をおこなう。具体的には、受信したＭＡＣフレームに含まれるＦＣＳの値を取得して、ＦＣＳ学習用ＣＡＭ１６に同じＦＣＳの値が記憶されているか否かを調べる。
【００３４】
そして、ＦＣＳ学習処理部１５は、同じＦＣＳの値がＦＣＳ学習用ＣＡＭ１６に記憶されている場合に、そのＦＣＳの値に対応付けて設けられたカウンタの値を１増加させ、そのカウンタの値をあらかじめ設定した閾値と比較する。
【００３５】
カウンタの値が閾値よりも大きい場合には、ＦＣＳ学習処理部１５は、当該ＦＣＳの値をもつＭＡＣフレームの通信経路がループ状態にあると判定する。このカウンタの値は、所定の時間（エージングタイム）が経過すると初期化される。
【００３６】
受信したＭＡＣフレームに含まれるＦＣＳの値と同じＦＣＳの値がＦＣＳ学習用ＣＡＭ１６に記憶されていない場合には、ＦＣＳ学習処理部１５は、当該ＦＳＣの値をＦＣＳ学習用ＣＡＭ１６に記憶する処理をおこなう。
【００３７】
なお、前述したエージングタイムおよび閾値の値は固定値ではなく、ＦＣＳ学習処理部１５が、それらの値の変更要求を適宜受け付け、設定を変更することができる。
【００３８】
図２は、ＭＡＣフレームのフレーム構造の一例を示す図である。図２に示すように、このＭＡＣフレームは、ＰＲＥ（Ｐｒｅａｍｂｌｅ）３０、ＳＦＤ（Ｓｔａｒｔ  Ｆｒａｍｅ  Ｄｅｌｉｍｉｔｅｒ）３１、ＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）３２、ＳＡ（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）３３、ＬＥＮ（Ｌｅｎｇｔｈ）／ＴＹＰＥ３４、ＤＡＴＡ／ＰＡＤ３５およびＦＣＳ３６から構成される。
【００３９】
ＰＲＥ３０は、クロック同期のために用いられる信号である。ＳＦＤ３１は、ＭＡＣフレームの開始を示すフィールドである。ＤＡ３２およびＳＡ３３は、それぞれＭＡＣフレームの宛先ＭＡＣアドレスおよび送信元ＭＡＣアドレスを示すフィールドである。
【００４０】
ＬＥＮ／ＴＹＰＥ３４は、ＤＡＴＡ／ＰＡＤ３５のデータフィールドの長さおよびフレームのタイプを示すフィールドである。ＤＡＴＡ／ＰＡＤ３５は、送信するデータのフィールドであり、データの長さが所定の長さ未満の場合にはＰＡＤと呼ばれるダミーデータが送信するデータに付加される。
【００４１】
ＦＣＳ３６は、ＭＡＣフレームの伝送誤りを検出するために付加されるフィールドである。このＦＣＳ３６には、ＤＡ３２、ＳＡ３３、ＬＥＮ／ＴＹＰＥ３４およびＤＡＴＡ／ＰＡＤ３５に対して所定の計算式を適用することにより得られた値が付加される。このＦＣＳ３６が付加されたＭＡＣフレームを受信した装置は、同じ計算式を用いてＦＣＳを算出して比較し、一致しない場合に伝送誤りが発生したと判定する。
【００４２】
図１の説明に戻ると、ＦＣＳ学習用ＣＡＭ１６は、ＦＣＳ学習処理部１５により検出されたＦＣＳの値を記憶する記憶部である。
【００４３】
フィルタリング処理部１７は、ＦＣＳ学習処理部１５により、ＭＡＣフレームの通信経路がループ状態にあると判定された場合に、当該ＭＡＣフレームを破棄する処理をおこなう。
【００４４】
アドレス学習処理部１８は、受信したＭＡＣフレームの送信元ＭＡＣアドレスと、そのＭＡＣフレームを受信したポート１１ａ〜１１ｈの情報とを基にして、所定の宛先ＭＡＣアドレスを有するＭＡＣフレームをどのポート１１ａ〜１１ｈから送出すべきかを学習する。
【００４５】
具体的には、アドレス学習処理部１８は、受信したＭＡＣフレームの送信元ＭＡＣアドレスと、そのＭＡＣフレームを受信したポート１１ａ〜１１ｈの情報とを対応付けて、アドレス学習用ＣＡＭ１９に記憶する。受信したＭＡＣフレームの宛先ＭＡＣアドレスが、記憶されている送信元ＭＡＣアドレスと同一の場合には、その送信元ＭＡＣアドレスに対応するポートからＭＡＣフレームを送出すればよい。
【００４６】
また、アドレス学習処理部１８は、フィルタリング処理部１７により破棄されたＭＡＣフレームの宛先ＭＡＣアドレスに対応する送信ポート１１ａ〜１１ｈの情報を、アドレス学習用ＣＡＭ１９から削除する処理をおこなう。
【００４７】
アドレス学習用ＣＡＭ１９は、受信したＭＡＣフレームの送信元ＭＡＣアドレスと、そのＭＡＣフレームを受信したポート１１ａ〜１１ｈの情報とを対応付けて記憶する記憶部である。図３は、ポート１１ａ〜１１ｈおよび送信元ＭＡＣアドレスの情報を記憶したアドレス学習テーブル４０の一例を示す図である。
【００４８】
図３に示すように、このアドレス学習テーブル４０は、ポート番号および送信元ＭＡＣアドレスを記憶している。ポート番号は、ＭＡＣフレームを受信したポート１１ａ〜１１ｈを識別する情報である。送信元ＭＡＣアドレスは、各ポート１１ａ〜１１ｈで受信したＭＡＣフレームの送信元ＭＡＣアドレスの情報である。
【００４９】
フィルタリング処理部１７によりあるＭＡＣフレームが破棄された場合には、破棄されたＭＡＣフレームの宛先ＭＡＣアドレスに対応するポート番号および送信元ＭＡＣアドレスの情報が、このアドレス学習テーブル４０から削除される。
【００５０】
図１の説明に戻ると、フレーム送出処理部２０は、アドレス学習用ＣＡＭ１９を参照して、ＭＡＣフレームを送出すべきポート１１ａ〜１１ｈを判定し、ＭＡＣフレームを送出する処理をおこなう。
【００５１】
具体的には、フレーム送出処理部２０は、ＭＡＣフレームを送出する際に、当該ＭＡＣフレームの宛先ＭＡＣアドレスと同一の送信元ＭＡＣアドレスをアドレス学習用ＣＡＭ１９から検索する。そして、フレーム送出処理部２０は、その送信元ＭＡＣアドレスに対応するポート番号の情報をアドレス学習用ＣＡＭ１９から取得し、取得したポート番号のポート１１ａ〜１１ｈからＭＡＣフレームを送出する。
【００５２】
また、フレーム送出処理部２０は、ＭＡＣフレームの宛先ＭＡＣアドレスと同一の送信元ＭＡＣアドレスをアドレス学習用ＣＡＭ１９から検索できなかった場合には、すべてのポート１１ａ〜１１ｈから当該ＭＡＣフレームをブロードキャストする処理をおこなう。
【００５３】
つぎに、本実施例に係るレイヤ２スイッチ１０のＭＡＣフレーム送信処理の処理手順について説明する。図４は、本実施例に係るレイヤ２スイッチ１０のＭＡＣフレーム送信処理の処理手順を示すフローチャートである。
【００５４】
図４に示すように、レイヤ２スイッチ１０のＦＣＳ学習処理部１５は、まず、ＦＣＳを学習する時間（エージングタイム）の計測を開始する（ステップＳＡ１）。そして、ＦＣＳ学習処理部１５は、エージングタイムが満了したか否かを調べ（ステップＳＡ２）、満了した場合には（ステップＳＡ２，Ｙｅｓ）、ＦＣＳ学習用ＣＡＭ１６に記憶されたＦＣＳの情報と、ＦＣＳごとに設定されたカウンタとを初期化する処理をおこなう（ステップＳＡ３）。
【００５５】
続いて、ＦＣＳ学習処理部１５およびフィルタリング処理部１７は、受信したＭＡＣフレームに含まれるＦＣＳの値を基にして、ＭＡＣフレームの通信経路がループ状態にあるか否かを判定し、ループ状態にあると判定された場合に、当該ＭＡＣフレームを破棄するＭＡＣフレームのフィルタリング処理をおこなう（ステップＳＡ４）。この処理については、図５においてさらに詳しく説明する。
【００５６】
その後、アドレス学習処理部１８は、ＭＡＣフレームがフィルタリング処理部１７により破棄されたか否かを調べ（ステップＳＡ５）、破棄された場合には（ステップＳＡ５，Ｙｅｓ）、破棄されたＭＡＣフレームの宛先ＭＡＣアドレスに対応するポート１１ａ〜１１ｈの情報を、アドレス学習用ＣＡＭ１９から削除する処理をおこなう（ステップＳＡ６）。
【００５７】
ＭＡＣフレームがフィルタリング処理部１７により破棄されなかった場合には（ステップＳＡ５，Ｎｏ）、フレーム送出処理部２０は、送出するＭＡＣフレームの宛先ＭＡＣアドレスに対応するポートの情報をアドレス学習用ＣＡＭ１９から検索し（ステップＳＡ７）、ポート１１ａ〜１１ｈの情報がアドレス学習用ＣＡＭ１９に記憶されているか否かを調べる処理をおこなう（ステップＳＡ８）。
【００５８】
宛先ＭＡＣアドレスに対応するポート１１ａ〜１１ｈの情報があった場合には（ステップＳＡ８，Ｙｅｓ）、フレーム送出処理部２０は、検索されたポートからＭＡＣフレームを送信する処理をおこない（ステップＳＡ９）、ステップＳＡ２に移行して、それ以降の処理を継続する。
【００５９】
宛先ＭＡＣアドレスに対応するポート１１ａ〜１１ｈの情報がなかった場合には（ステップＳＡ８，Ｎｏ）、フレーム送出処理部２０は、すべてのポートからＭＡＣフレームを送信（ブロードキャスト）する処理をおこない（ステップＳＡ１０）、ステップＳＡ２に移行して、それ以降の処理を継続する。
【００６０】
つぎに、図４に示したフレームフィルタリング処理の詳細な処理手順について説明する。図５は、図４に示したフレームフィルタリング処理の詳細な処理手順を示すフローチャートである。
【００６１】
図５に示すように、レイヤ２スイッチ１０のＦＣＳ学習処理部１５は、ＭＡＣフレームを受信し（ステップＳＢ１）、受信したＭＡＣフレームのＦＣＳの値を取得する（ステップＳＢ２）。そして、ＦＣＳ学習処理部１５は、取得したＦＣＳの値と一致するＦＣＳの値をＦＣＳ学習用ＣＡＭ１６から検索する（ステップＳＢ３）。
【００６２】
続いて、ＦＣＳ学習処理部１５は、一致するＦＣＳの値がＦＣＳ学習用ＣＡＭ１６から検索されたか否かを調べ（ステップＳＢ４）、一致するＦＣＳの値が検索された場合には（ステップＳＢ４，Ｙｅｓ）、そのＦＣＳの値に対応するカウンタの値を１増加させる処理をおこなう（ステップＳＢ５）。
【００６３】
その後、ＦＣＳ学習処理部１５は、カウンタの値が閾値以上であるか否かを調べ（ステップＳＢ６）、閾値以上である場合には（ステップＳＢ６，Ｙｅｓ）、当該ＦＣＳの値をもつＭＡＣフレームの通信経路がループ状態にあると判定する（ステップＳＢ７）。
【００６４】
そして、フィルタリング処理部１７は、通信経路がループ状態にあると判定されたＭＡＣフレームを破棄する処理をおこなって（ステップＳＢ８）、このフレームフィルタリング処理を終了する。カウンタの値が閾値以上でない場合には（ステップＳＢ６，Ｎｏ）、そのままこのフレームフィルタリング処理を終了する。
【００６５】
また、ステップＳＢ４において、取得したＦＣＳの値と一致するＦＣＳの値がＦＣＳ学習用ＣＡＭ１６から検索されなかった場合には（ステップＳＢ４，Ｎｏ）、ＦＣＳ学習処理部１５は、取得したＦＣＳの値をＦＣＳ学習用ＣＡＭ１６に記憶する（ステップＳＢ９）。さらに、ＦＣＳ学習処理部１５は、記憶したＦＣＳの値に対応付けてカウンタを設定する処理をおこない（ステップＳＢ１０）、このフレームフィルタリング処理を終了する。
【００６６】
以上説明してきたように、本実施例では、ＦＣＳ学習処理部１５が、ＭＡＣフレームの内容を基にして生成されたＦＣＳをＦＣＳ学習用ＣＡＭ１６に記憶し、ＭＡＣフレームを受信した際に、記憶されたＦＣＳの情報を基にして、当該ＭＡＣフレームに係る通信経路がループ状態にあるか否かを判定し、ＭＡＣフレームに係る通信経路がループ状態にあると判定された場合に、フィルタリング処理部１７が、当該ＭＡＣフレームの中継を制限することとしたので、正常なブロードキャスト通信を阻害することなく、ループ経路を原因として生じたブロードキャストストームのＭＡＣフレームの中継を効率的に制限することができる。
【００６７】
また、本実施例では、ＦＣＳ学習処理部１５が、各ＦＣＳに対応するＭＡＣフレームを所定のエージングタイム内に受信した回数を計測し、計測された回数と閾値とを比較することにより当該ＭＡＣフレームに係る通信経路がループ状態にあるか否かを判定することとしたので、閾値によりループ状態にあるか否かを判定する基準を調整することができ、ループ経路を原因として生じたブロードキャストストームのＭＡＣフレームの中継を効率的に制限することができる。
【００６８】
また、本実施例では、ＭＡＣフレームの内容を基にして生成された生成情報として、データの送信エラーをチェックするＦＣＳを採用することとしたので、ＦＣＳを利用することにより、ループ経路を原因として生じたブロードキャストストームのＭＡＣフレームを容易に検出し、そのＭＡＣフレームの中継を効率的に制限することができる。
【００６９】
また、本実施例では、ＦＣＳ学習処理部１５が、エージングタイムや閾値の変更を受け付けることとしたので、適宜エージングタイムや閾値を変更することによりループ状態にあるか否かを判定する基準を変更し、ループ経路を原因として生じたブロードキャストストームのＭＡＣフレームの中継を効率的に制限することができる。
【００７０】
また、本実施例では、フィルタリング処理部１７が、ＭＡＣフレームの中継を制限した場合に、ＭＡＣフレームの宛先情報とＭＡＣフレームを送出するポートの情報とを対応付けて記憶したアドレス学習テーブル４０から、当該ＭＡＣフレームに含まれる宛先ＭＡＣアドレスに対応するポートの情報を削除することとしたので、情報を記憶する記憶領域を効率的に利用しつつ、ループ経路を原因として生じたブロードキャストストームのＭＡＣフレームの中継を効率的に制限することができる。
【００７１】
以上本発明にかかる実施例について図面を参照して詳述してきたが、具体的な構成例はこれらの実施例に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
【００７２】
例えば、データ中継装置の各機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませ、実行することにより各機能を実現してもよい。
【００７３】
図６は、データ中継装置の各機能を実現するコンピュータ１００のハードウェア構成を示すブロック図である。図６に示すように、このコンピュータ１００は、上記プログラムを実行するＣＰＵ１１０と、データを入力する入力装置１２０と、各種データを記憶するＲＯＭ１３０と、演算パラメータ等を記憶するＲＡＭ１４０と、データ中継装置の機能を実現するためのプログラムを記録した記録媒体２００からプログラムを読み取る読取装置１５０と、ディスプレイ等の出力装置１６０と、ネットワーク３００を介して他のコンピュータとの間でデータの授受をおこなうネットワークインターフェース１７０とが、バス１８０で接続された構成となっている。
【００７４】
ＣＰＵ１１０は、読取装置１５０を経由して記録媒体２００に記録されているプログラムを読み込んだ後、プログラムを実行することにより、前述した機能を実現する。なお、記録媒体２００としては、光ディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ハードディスク等が挙げられる。また、このプログラムは、ネットワーク３００を介してコンピュータ１００に導入することとしてもよい。
【００７５】
また、本実施例では、データ中継装置の例としてレイヤ２スイッチを取り上げたが、本発明はこれに限定されるものではなく、データの中継処理をおこなうその他のネットワーク装置にも同様に適用することができる。また、ＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ）機能を有するネットワーク装置にも同様に適用することができる。
【００７６】
また、本実施例では、データの内容を基にして生成された生成情報としてＦＣＳを利用することとしたが、本発明はこれに限定されるものではなく、データの内容を元にして生成された他の情報を用いることとしてもよい。
【００７７】
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記データ中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７８】
また、図示した装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【００７９】
さらに、上記装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００８０】
（付記１）ネットワークを介して送信されるデータの中継をおこなうデータ中継装置であって、
データの内容を基にして生成された生成情報を記憶する記憶手段と、
データを受信した際に、前記記憶手段に記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定手段と、
前記判定手段により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限手段と、
を備えたことを特徴とするデータ中継装置。
【００８１】
（付記２）前記判定手段は、前記記憶手段に記憶された生成情報に対応するデータを所定の計測時間内に受信した回数を計測し、計測された該回数と閾値とを比較することにより当該データに係る通信経路がループ状態にあるか否かを判定することを特徴とする付記１に記載のデータ中継装置。
【００８２】
（付記３）前記生成情報は、データの送信エラーをチェックするチェック符号であることを特徴とする付記１または２に記載のデータ中継装置。
【００８３】
（付記４）前記判定手段は、前記計測時間および／または前記閾値の変更を受け付けることを特徴とする付記３に記載のデータ中継装置。
【００８４】
（付記５）前記中継制限手段によりデータの中継が制限された場合に、データの宛先情報とデータを送出するポートの情報とを対応付けて記憶した情報から当該データに含まれる宛先情報に対応するポートの情報を削除する情報削除手段をさらに備えたことを特徴とする付記１〜４のいずれか１つに記載のデータ中継装置。
【００８５】
（付記６）ネットワークを介して送信されるデータの中継をおこなうデータ中継方法であって、
データの内容を基にして生成された生成情報を記憶する記憶工程と、
データを受信した際に、前記記憶工程により記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定工程と、
前記判定工程により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限工程と、
を含んだことを特徴とするデータ中継方法。
【００８６】
（付記７）ネットワークを介して送信されるデータの中継をおこなうデータ中継プログラムであって、
データの内容を基にして生成された生成情報を記憶する記憶手順と、
データを受信した際に、前記記憶手順により記憶された生成情報を基にして当該データに係る通信経路がループ状態にあるか否かを判定する判定手順と、
前記判定手順により前記データに係る通信経路がループ状態にあると判定された場合に当該データの中継を制限する中継制限手順と、
をコンピュータに実行させることを特徴とするデータ中継プログラム。
【産業上の利用可能性】
【００８７】
以上のように、本発明にかかるデータ中継装置、データ中継方法およびデータ中継プログラムは、正常なブロードキャスト通信を阻害することなく、ループ経路を原因として生じたブロードキャストストームのフレームの中継を効率的に制限することが必要なデータ中継システムに適している。
【図面の簡単な説明】
【００８８】
【図１】本実施例に係るレイヤ２スイッチ１０の機能的構成を示す機能ブロック図である。
【図２】ＭＡＣフレームのフレーム構造の一例を示す図である。
【図３】ポート１１ａ〜１１ｈおよび送信元ＭＡＣアドレスの情報を記憶したアドレス学習テーブル４０の一例を示す図である。
【図４】本実施例に係るレイヤ２スイッチ１０のＭＡＣフレーム送信処理の処理手順を示すフローチャートである。
【図５】図４に示したフレームフィルタリング処理の詳細な処理手順を示すフローチャートである。
【図６】データ中継装置の各機能を実現するコンピュータ１００のハードウェア構成を示すブロック図である。
【符号の説明】
【００８９】
１０    レイヤ２スイッチ
１１ａ〜１１ｈ    ポート
１２    物理層機能部
１３ａ〜１３ｈ    ＭＩＩ
１４    ＭＡＣ層機能部
１５    ＦＣＳ学習処理部
１６    ＦＣＳ学習用ＣＡＭ
１７    フィルタリング処理部
１８    アドレス学習処理部
１９    アドレス学習用ＣＡＭ
２０    フレーム送出処理部
３０    ＰＲＥ
３１    ＳＦＤ
３２    ＤＡ
３３    ＳＡ
３４    ＬＥＮ／ＴＹＰＥ
３５    ＤＡＴＡ／ＰＡＤ
３６    ＦＣＳ
４０    アドレス学習テーブル
【図１】
2005252473.tif 000003
【図２】
2005252473.tif 000004
【図３】
2005252473.tif 000005
【図４】
2005252473.tif 000006
【図５】
2005252473.tif 000007
【図６】
2005252473.tif 000008