(57)【要約】【課題】  パケットのスイッチが継続したままＣＰＵの処理が停止したときに、停止状態を検出し、ループの発生を解消する。【解決手段】  ハードウェアでパケットスイッチを行う装置でスパニングツリープロトコルを動作させる場合において、パケットスイッチを行う回路にＢＰＤＵの送信を監視する回路を組み込み、スパニングツリープロトコルで既定された時間以内にＢＰＤＵの送信が行われない場合には、パケットスイッチを停止することによってネットワークトポロジにループが発生することを抑止し、ネットワークを安定化させる。【選択図】  図１
2005109846.tif 000002
【特許請求の範囲】
【請求項１】
スパニングツリープロトコルを制御するスパニングツリープロトコル制御部と、
ＢＰＤＵ（Bridge Protocol Data Unit）の送信間隔を監視する、少なくとも１つのＢＰＤＵ送信監視部と、
受信パケットを転送するパケットスイッチ制御部と、
パケットの送受信や廃棄を行う、２以上のポートとを有するパケットスイッチ装置であって、
前記スパニングツリープロトコル制御部は、
ＩＥＥＥ８０２．１によって規定されたスパニングツリープロトコルに基づいてＢＰＤＵの送受信を行い、
通信相手である他のパケットスイッチ装置からＢＰＤＵを受信した場合には該受信したＢＰＤＵの格納するパラメータを解析し、
前記解析結果に基づいて前記ポートの状態の決定や、自装置又は前記他のパケットスイッチ装置のどちらがどのような時間間隔でＢＰＤＵを送信するかを調停し、
ネットワークトポロジ上にループが存在しないように前記ポートを制御することを特徴とするパケットスイッチ装置。
【請求項２】
前記ＢＰＤＵ送信監視部は、前記スパニングツリープロトコル制御部が前記ポート毎に送信する前記ＢＰＤＵを監視し、
前記スパニングツリープロトコルによって規定された時間内に前記ＢＰＤＵの送信が無い場合は前記スパニングツリープロトコル制御部に異常が発生したと判断して、前記パケットスイッチ制御部に対してパケットのスイッチ停止を指示することを特徴とする請求項１記載のパケットスイッチ装置。
【請求項３】
前記スパニングツリープロトコル制御部は、前記ＢＰＤＵの送信間隔の規定値を前記ＢＰＤＵ送信監視部に設定することを特徴とする請求項１又は２記載のパケットスイッチ装置。
【請求項４】
前記スパニングツリープロトコル制御部は、前記パケットスイッチ装置間の調停の結果、自装置からＢＰＤＵを送信しないポートが存在する場合には該ポートではＢＰＤＵを監視しないように設定することを特徴とする請求項１から３のいずれか１項に記載のパケットスイッチ装置。
【請求項５】
前記パケットスイッチ制御部は、前記ポートから受信するユーザパケットをパケットのＭＡＣアドレスの学習状態に従って転送先ポートを見つけ、転送を行うことを特徴とする請求項１記載のパケットスイッチ装置。
【請求項６】
前記パケットスイッチ制御部は、前記ＢＰＤＵ送信監視部からパケット転送停止を指示された場合には、ＭＡＣアドレスの学習状態は保持したままパケットの転送を停止することを特徴とする請求項１又は５記載のパケットスイッチ装置。
【請求項７】
前記ポートは、前記スパニングツリープロトコル制御部からの指示に従って、ユーザパケットの送受信の許可もしくは廃棄を行うことを特徴とする請求項１から５のいずれか１項に記載のパケットスイッチ装置。
【請求項８】
請求項１から７のいずれか１項に記載のパケットスイッチ装置と、スパニングツリープロトコルを実装した他のパケットスイッチ装置が接続されるスパニングツリートポロジの安定化方式であって、
スパニングツリープロトコル制御部が、ポートを介して接続された前記他のパケットスイッチ装置との間でＢＰＤＵの交換を行った結果として、自装置側のポートが転送可能状態となり、前記他のパケットスイッチ装置のポートを廃棄状態にすることによって、ネットワークトポロジ上に存在するループを解消することを特徴とするスパニングツリートポロジの安定化方式。
【請求項９】
請求項１から７のいずれか１項に記載のパケットスイッチ装置と、スパニングツリープロトコルを実装した他のパケットスイッチ装置が接続されるスパニングツリートポロジの安定化方式であって、
スパニングツリープロトコル制御部がＢＰＤＵの送信処理を出来なくなった場合、ＢＰＤＵ送信監視部が、ＢＰＤＵの送信が停止してから前記他のパケットスイッチ装置が廃棄ポートを転送可能に遷移させる時間が経過したことを検出し、パケットスイッチ制御部を停止させることによってネットワークトポロジ上のループを解消することを特徴とするスパニングツリートポロジの安定化方式。
【請求項１０】
前記ＢＰＤＵ送信監視部は、ＭＡＣアドレスの学習状態を保持したまま前記パケットスイッチ制御部を停止させることを特徴とする請求項９記載のスパニングツリートポロジの安定化方式。
【請求項１１】
前記スパニングツリープロトコル制御部で発生した高負荷状態が解消してＢＰＤＵの送信が再開された場合には、前記ＢＰＤＵ送信監視部がＢＰＤＵの送信を検出したタイミングで前記パケットスイッチ制御部の停止状態を解除することを特徴とする請求項９又は１０記載のスパニングツリートポロジの安定化方式。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットスイッチ装置及びスパニングツリートポロジの安定化方式に関する。
【背景技術】
【０００２】
スパニングツリープロトコル自身には、パケットのスイッチは継続したままＣＰＵの処理のみが停止した場合の考慮が含まれていない。そのため、従来のスパニングツリープロトコルを実装した装置にもそのような考慮は行われていなかった。そのため、従来技術には、パケットのスイッチが継続したままＢＰＤＵの送信が停止すると、その装置に接続された他の装置がループの存在を正しく検出できなくなり、ループが発生してしまうという問題点があった。これは、パケットのスイッチが継続したままＣＰＵの処理が停止したときに、そのような状態を検出し、ループを解消するための仕組みが不足していたためである。
【０００３】
従来技術例として、他の装置に依存することなく受信フレームの解析によりフレームの無限ループの発生を判断して回避する「フレーム中継装置」がある（例えば、特許文献１参照）。また、従来のＶＰＮにおける問題を解決し、レイヤ３透過な仮想プライベートネットワークを、拡張性に優れた形態で提供する「パケットルーティング方法及び装置」がある（例えば、特許文献２参照）。
【特許文献１】特開２００１−１９７１１４号公報
【特許文献２】特開２００２−２４７０８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１及び２記載の発明は、パケットのスイッチが継続したままＣＰＵの処理が停止したときに、そのような状態を検出し、ループを解消するための構成を有しておらず、上記問題点を解決することはできない。
【０００５】
本発明は、上記事情に鑑みてなされたものであり、ハードウェアでパケットスイッチを行う装置でスパニングツリープロトコルを動作させる場合において、パケットスイッチを行う回路にＢＰＤＵの送信を監視する回路を組み込み、スパニングツリープロトコルで既定された時間以内にＢＰＤＵの送信が行われない場合には、パケットスイッチを停止することによってネットワークトポロジにループが発生することを抑止し、ネットワークを安定化させるパケットスイッチ装置及びスパニングツリートポロジの安定化方式を提供することを目的とする。
【課題を解決するための手段】
【０００６】
かかる目的を達成するために、本発明は、スパニングツリープロトコルを制御するスパニングツリープロトコル制御部と、ＢＰＤＵ（Bridge Protocol Data Unit ）の送信間隔を監視する、少なくとも１つのＢＰＤＵ送信監視部と、受信パケットを転送するパケットスイッチ制御部と、パケットの送受信や廃棄を行う、２以上のポートとを有するパケットスイッチ装置であって、スパニングツリープロトコル制御部は、ＩＥＥＥ８０２．１によって規定されたスパニングツリープロトコルに基づいてＢＰＤＵの送受信を行い、通信相手である他のパケットスイッチ装置からＢＰＤＵを受信した場合には受信したＢＰＤＵの格納するパラメータを解析し、解析結果に基づいてポートの状態の決定や、自装置又は他のパケットスイッチ装置のどちらがどのような時間間隔でＢＰＤＵを送信するかを調停し、ネットワークトポロジ上にループが存在しないようにポートを制御することを特徴とする。
【０００７】
また、本発明は、ＢＰＤＵ送信監視部は、スパニングツリープロトコル制御部がポート毎に送信するＢＰＤＵを監視し、スパニングツリープロトコルによって規定された時間内にＢＰＤＵの送信が無い場合はスパニングツリープロトコル制御部に異常が発生したと判断して、パケットスイッチ制御部に対してパケットのスイッチ停止を指示することを特徴とする。
【０００８】
また、本発明は、スパニングツリープロトコル制御部は、ＢＰＤＵの送信間隔の規定値をＢＰＤＵ送信監視部に設定することを特徴とする。
【０００９】
また、本発明は、スパニングツリープロトコル制御部は、パケットスイッチ装置間の調停の結果、自装置からＢＰＤＵを送信しないポートが存在する場合にはポートではＢＰＤＵを監視しないように設定することを特徴とする。
【００１０】
また、本発明は、パケットスイッチ制御部は、ポートから受信するユーザパケットをパケットのＭＡＣアドレスの学習状態に従って転送先ポートを見つけ、転送を行うことを特徴とする。
【００１１】
また、本発明は、パケットスイッチ制御部は、ＢＰＤＵ送信監視部からパケット転送停止を指示された場合には、ＭＡＣアドレスの学習状態は保持したままパケットの転送を停止することを特徴とする。
【００１２】
また、本発明は、ポートは、スパニングツリープロトコル制御部からの指示に従って、ユーザパケットの送受信の許可もしくは廃棄を行うことを特徴とする。
【００１３】
また、本発明は、請求項１から７のいずれか１項に記載のパケットスイッチ装置と、スパニングツリープロトコルを実装した他のパケットスイッチ装置が接続されるスパニングツリートポロジの安定化方式であって、スパニングツリープロトコル制御部が、ポートを介して接続された他のパケットスイッチ装置との間でＢＰＤＵの交換を行った結果として、自装置側のポートが転送可能状態となり、他のパケットスイッチ装置のポートを廃棄状態にすることによって、ネットワークトポロジ上に存在するループを解消することを特徴とする。
【００１４】
また、本発明は、請求項１から７のいずれか１項に記載のパケットスイッチ装置と、スパニングツリープロトコルを実装した他のパケットスイッチ装置が接続されるスパニングツリートポロジの安定化方式であって、スパニングツリープロトコル制御部がＢＰＤＵの送信処理を出来なくなった場合、ＢＰＤＵ送信監視部が、ＢＰＤＵの送信が停止してから他のパケットスイッチ装置が廃棄ポートを転送可能に遷移させる時間が経過したことを検出し、パケットスイッチ制御部を停止させることによってネットワークトポロジ上のループを解消することを特徴とする。
【００１５】
また、本発明は、ＢＰＤＵ送信監視部は、ＭＡＣアドレスの学習状態を保持したままパケットスイッチ制御部を停止させることを特徴とする。
【００１６】
また、本発明は、スパニングツリープロトコル制御部で発生した高負荷状態が解消してＢＰＤＵの送信が再開された場合には、ＢＰＤＵ送信監視部がＢＰＤＵの送信を検出したタイミングでパケットスイッチ制御部の停止状態を解除することを特徴とする。
【発明の効果】
【００１７】
本発明の第１の効果は、スパニングツリープロトコルの動作するスイッチが一時的な高負荷状態に陥ってスパニングツリープロトコルの処理が行えないときに、ネットワークトポロジにループが出来てブロードキャストストームによるネットワークの麻痺が発生するのを回避出来ることである。
その理由は、ＢＰＤＵの送信間隔を監視することによって、他のパケットスイッチ装置がポートを転送可能状態に遷移させてループが発生する可能性を検出し、パケットの転送を停止してループが発生するのを防ぐためである。
【００１８】
本発明の第２の効果は、スパニングツリープロトコルの動作するスイッチが一時的な高負荷状態に陥ってスパニングツリープロトコルの処理が行えないときに、高負荷状態が解除されたらすぐにパケットスイッチを再開出来ることにある。
その理由は、高負荷状態にある間はパケットの転送を停止するが、ＭＡＣアドレスの学習情報は保持したままであるため、ＭＡＣアドレスの学習をやり直すことなくすぐにパケットスイッチが再開可能であるためである。
【発明を実施するための最良の形態】
【００１９】
以下、本発明を実施するための最良の形態について添付図面を参照して詳細に説明する。
【実施例１】
【００２０】
図１に本発明の実施例１の構成を示す。
本実施例は、スパニングツリープロトコルを制御するスパニングツリープロトコル制御部１と、ＢＰＤＵ（Bridge Protocol Data Unit ）の送信間隔を監視するＢＰＤＵ送信監視部２と、受信パケットを転送するパケットスイッチ制御部３と、パケットの送受信や廃棄を行うポート４およびポート５からなる。
【００２１】
上記各部はそれぞれ以下のように動作する。
スパニングツリープロトコル制御部１は、ＩＥＥＥ８０２．１によって規定されたスパニングツリープロトコルに基づいてＢＰＤＵの送受信を行い、通信相手のパケットスイッチ装置からＢＰＤＵを受信した場合には受信したＢＰＤＵの格納するパラメータを解析し、その結果に基づいてポート４、５の状態の決定や、どちらの装置がどのような時間間隔でＢＰＤＵを送信するかを調停し、ネットワークトポロジ上にループが存在しないようにポート４、５を制御する。図１では、パケットスイッチ装置間の調停の結果、自装置側の全てのポートでＢＰＤＵを送信する場合を示している。
【００２２】
ＢＰＤＵ送信監視部２は、ポート毎にスパニングツリープロトコル制御部１の送信するＢＰＤＵを監視し、スパニングツリープロトコルによって規定された時間内にＢＰＤＵの送信が無い場合はスパニングツリープロトコル制御部１に異常が発生したと判断して、パケットスイッチ制御部３に対してパケットのスイッチ停止を指示する。ＢＰＤＵ送信間隔の規定値はスパニングツリープロトコル制御部１からＢＰＤＵ送信監視部２に設定される。なお、パケットスイッチ装置間の調停の結果、自装置からＢＰＤＵを送信しないポートが存在する場合にはそのポートではＢＰＤＵを監視しないような設定を行う。
【００２３】
パケットスイッチ制御部３は、ポート４、５から受信するユーザパケットをパケットのＭＡＣアドレスの学習状態に従って転送先ポートを見つけ、転送を行う。もしＢＰＤＵ送信監視部２からパケット転送停止を指示された場合には、ＭＡＣアドレスの学習状態は保持したままパケットの転送を停止する。
【００２４】
ポート４、５は、スパニングツリープロトコル制御部１からの指示に従って、ユーザパケットの送受信の許可もしくは廃棄を行う。本実施例ではポートはポート４、５の２つであるが、ポートが３つ以上の場合も原理は同様である。
【００２５】
次に、実施例の動作の説明について説明する。図２は本実施例に基づいたパケットスイッチ装置Ａと、スパニングツリープロトコルを実装した他のパケットスイッチ装置１００が接続されている様子を示したものである。
【００２６】
スパニングツリープロトコル制御部１が、ポート４、５を介して接続された他のパケットスイッチ装置１００との間でＢＰＤＵの交換を行った結果として、自装置側のポート４、５が転送可能状態となり、他のパケットスイッチ装置１００のポートの１つが廃棄状態となっている。図２の場合、他のパケットスイッチ装置１００のポートを廃棄状態にすることによって、ネットワークトポロジ上に存在するループを解消している。
【００２７】
図３はスパニングツリープロトコル制御部１が高負荷状態になるなどの要因によってＢＰＤＵの送信処理が出来なくなった場合を示している。スパニングツリープロトコルで既定された時間よりも長くこのような状態が継続すると、ＢＰＤＵを受信しなくなった他のパケットスイッチ装置１００は、自分以外にはスパニングツリープロトコルの動作するパケットスイッチ装置がいないと判断し、それまで廃棄状態であったポートを転送可能状態にしてしまう。このような状態が発生すると、ネットワークトポロジ上にループが存在することになるため、ループの中をブロードキャストパケットが無限に転送され、ネットワークが麻痺してしまう。
【００２８】
上述のような場合、図４に示すように、ＢＰＤＵ送信監視部２は、ＢＰＤＵの送信が停止してから他のパケットスイッチ装置１００が廃棄ポートを転送可能に遷移させる時間が経過した事を検出し、パケットスイッチ制御部３を停止させることによってネットワークトポロジ上のループを解消する。この後、スパニングツリープロトコル制御部１で発生した高負荷状態が解消してＢＰＤＵの送信が再開された場合には、ＢＰＤＵ送信監視部２がＢＰＤＵの送信を検出したタイミングでパケットスイッチ制御部３の停止状態を解除する。
【実施例２】
【００２９】
次に、図５に本発明の実施例２の構成を示す。
本実施例は、スパニングツリープロトコルを制御するスパニングツリープロトコル制御部１１と、受信パケットを転送するパケットスイッチ制御部１２と、ポート毎にＢＰＤＵ（Bridge Protocol Data Unit ）の送信間隔を監視してポートの状態を制御するＢＰＤＵ送信監視部１３および１４と、パケットの送受信や廃棄を行うポート１５および１６からなる。
【００３０】
上記各部はそれぞれ以下のように動作する。
スパニングツリープロトコル制御部１１は、ＩＥＥＥ８０２．１によって規定されたスパニングツリープロトコルに基づいてＢＰＤＵの送受信を行い、通信相手のパケットスイッチ装置からＢＰＤＵを受信した場合には、受信したＢＰＤＵの格納するパラメータを解析し、その結果に基づいてポート１５、１６の状態の決定や、どちらのパケットスイッチ装置がどのような時間間隔でＢＰＤＵを送信するかを調停し、ネットワーク上にループが存在しないようにポート１５、１６を制御する。図５では、パケットスイッチ装置間の調停の結果、自装置側がＢＰＤＵを送信する場合を示している。
【００３１】
ＢＰＤＵ送信監視部１３、１４は、ポート毎にスパニングツリープロトコル制御部１１の送信するＢＰＤＵを監視し、スパニングツリープロトコルによって規定された時間内にＢＰＤＵの送信が無い場合はスパニングツリープロトコル制御部１１に異常が発生したと判断して、ポート１５、１６に対してそれぞれのポート状態を廃棄状態に設定する。ＢＰＤＵ送信間隔の規定値はスパニングツリープロトコル制御部１１からＢＰＤＵ送信監視部１３、１４に設定される。なお、パケットスイッチ装置間の調停の結果、自装置からＢＰＤＵを送信しないポートが存在する場合にはそのポートではＢＰＤＵを監視しないような設定を行う。
【００３２】
パケットスイッチ制御部１２は、ポート１５、１６から受信するユーザパケットをパケットのＭＡＣアドレスの学習状態に従って転送先ポートを見つけ、転送を行う。ポート１５、１６は、スパニングツリープロトコル制御部１１からの指示に従って、ユーザパケットの送受信の許可もしくは廃棄を行う。本実施例ではポート１５、１６は２つであるが、ポート１５、１６が３つ以上の場合も原理は同様である。
【００３３】
図６は本実施例に基づいたパケットスイッチ装置Ｂと、スパニングツリープロトコルを実装した他のパケットスイッチ装置１００が接続されている様子を示したものである。
スパニングツリープロトコル制御部１１が、ポート１５、１６を介して接続された他のパケットスイッチ装置１００との間でＢＰＤＵの交換を行った結果として、自装置側のポート１５、１６が転送可能状態となり、他のパケットスイッチ装置１００の一つのポートが廃棄状態となっている。この状態では、接続された他のパケットスイッチ装置１００のポートを廃棄状態とすることによって、ネットワークトポロジ上に存在するループを解消している。
【００３４】
図７はスパニングツリープロトコル制御部１１が高負荷状態になるなどの要因によってＢＰＤＵの送信処理が出来なくなった場合を示している。スパニングツリープロトコルで既定された時間よりも長くこのような状態が継続すると、ＢＰＤＵを受信しなくなった他のパケットスイッチ装置１００は、自分以外にはスパニングツリープロトコルの動作するパケットスイッチ装置がいないと判断し、それまで廃棄状態であったポートを転送可能状態にしてしまう。このような状態が発生すると、ネットワークトポロジ上にループが存在することになるため、ループの中をブロードキャストパケットが無限に転送され、ネットワークが麻痺してしまう。
【００３５】
上述の場合、図８に示すように、ＢＰＤＵ送信監視部１３、１４が、ＢＰＤＵの送信が停止してから他のパケットスイッチ装置１００が廃棄ポートを転送可能に遷移させる時間が経過した事を検出し、ポート１５、１６を廃棄状態にすることによってネットワークトポロジ上のループを解消する。この後、スパニングツリープロトコル制御部１１で発生した高負荷状態が解消してＢＰＤＵの送信が再開された場合には、ＢＰＤＵ送信監視部１３、１４がＢＰＤＵの送信を検出したタイミングでポート１５、１６の廃棄状態を解除する。
【００３６】
以上、本発明の実施例によれば、スパニングツリープロトコルが動作している装置でＣＰＵが停止してスパニングツリープロトコルの処理が正しく行えなくなったときにネットワークトポロジのループを防止することができる。
また、ＣＰＵの障害発生時に、パケットスイッチは停止するがＭＡＣアドレスの学習状態を保持したままにしておき、ＣＰＵが障害から回復したときに高速にパケットスイッチを復旧することができる。
【００３７】
以上、本発明の実施例について説明したが、上記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
【図面の簡単な説明】
【００３８】
【図１】本発明の実施例１の構成を示す図である。
【図２】本発明の実施例１の動作を示す図である。
【図３】本発明の実施例１の動作を示す図である。
【図４】本発明の実施例１の動作を示す図である。
【図５】本発明の実施例２の構成を示す図である。
【図６】本発明の実施例２の動作を示す図である。
【図７】本発明の実施例２の動作を示す図である。
【図８】本発明の実施例２の動作を示す図である。
【符号の説明】
【００３９】
Ａ、Ｂ    パケットスイッチ装置
１、１１    スパニングツリープロトコル制御部
２、１３、１４    ＢＰＤＵ送信監視部
３、１２    パケットスイッチ制御部
４、５、１５、１６    ポート
１００    他のパケットスイッチ装置
【図１】
2005109846.tif 000003
【図２】
2005109846.tif 000004
【図３】
2005109846.tif 000005
【図４】
2005109846.tif 000006
【図５】
2005109846.tif 000007
【図６】
2005109846.tif 000008
【図７】
2005109846.tif 000009
【図８】
2005109846.tif 000010