(57)【要約】【課題】障害が発生した場合などにおいて高速な冗長切り替えが可能な冗長経路を実現する通信装置を得ること。【解決手段】本発明にかかる通信装置は、Ｌ２スイッチ（１０）に対して冗長経路を提供するリングノード（４１，４２）であって、他のリングノードとともに同一Ｌ２スイッチ（１０）へ接続する場合、自身とＬ２スイッチ（１０）との間の第１の経路および他の通信装置とＬ２スイッチ（１０）との間の第２の経路に対してリンクアグリゲーションを適用することにより、Ｌ２スイッチ（１０）に対してＲＰＲリングネットワーク（１）との間の冗長経路を提供する。【選択図】        図１
2008301433.tif 000002
【特許請求の範囲】
【請求項１】
リングネットワークを構成し、当該リングネットワークに接続する中継装置に対して冗長経路を提供する通信装置であって、
他の通信装置とともに同一中継装置へ接続する場合、自身と当該中継装置との間の第１の経路および当該他の通信装置と当該中継装置との間の第２の経路に対してリンクアグリゲーションを適用することにより、当該中継装置に対して当該リングネットワークとの間の冗長経路を提供することを特徴とする通信装置。
【請求項２】
前記中継装置から送信されたデータを、前記第１の経路、前記他の通信装置および前記リングネットワーク経由で受信した場合、当該受信データを当該中継装置へ転送しないことを特徴とする請求項１に記載の通信装置。
【請求項３】
待機装置として動作している状態で前記中継装置からデータを受信した場合、当該受信データを前記リングネットワークへ転送することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記他の通信装置が現用装置として動作しかつ自身が待機装置として動作している状態で、当該他の通信装置で障害が発生したことを検出した場合、当該他の通信装置に代わって現用装置としての動作を開始することを特徴とする請求項１、２または３に記載の通信装置。
【請求項５】
前記他の通信装置が現用装置として動作しかつ自身が待機装置として動作している状態で、前記他の通信装置から前記中継装置と通信できない状態にある旨の通知を受けた場合、当該他の通信装置に代わって現用装置としての動作を開始することを特徴とする請求項１〜４のいずれか一つに記載の通信装置。
【請求項６】
前記他の通信装置が待機装置として動作しかつ自身が現用装置として動作している状態で、自身が前記中継装置と通信できない状態となったことを検出した場合、その旨を当該他の通信装置へ通知し、当該他の通信装置に現用装置としての動作を開始させることを特徴とする請求項１または２に記載の通信装置。
【請求項７】
前記他の通信装置および自身が共に現用装置として動作している状態では、前記リングネットワーク経由でデータを受信した場合、当該受信データを前記中継装置へ転送するかどうかをリンクアグリゲーションで使用するポート選択方法に基づいて判断することを特徴とする請求項１または２に記載の通信装置。
【請求項８】
請求項１〜７のいずれか一つに記載の通信装置の機能を有することを特徴とするリングノード装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リングネットワークに接続する中継装置などに対して冗長経路を提供するリングノード装置に関する。
【背景技術】
【０００２】
従来、リング等で構成されたネットワークの経路冗長化を行う場合、レイヤ３レベルの冗長化であればデフォルト・ゲートウェイ冗長方式と呼ばれる方法が用いられてきた。また、このデフォルト・ゲートウェイ冗長方式として、下記非特許文献１に記載のＶＲＲＰ（Virtual  Router  Redundancy  Protocol）や下記非特許文献２に記載のＨＳＲＰ（Cisco  Hot  Standby  Router  Protocol）が使用されることが一般的である。これは、二台以上のノード（ルータやスイッチ）が一つのＩＰアドレスとＭＡＣアドレスを共用し、一台の仮想ノードとして動作する。この複数台のノードのうち、現用となるノードが動作中は、他方のノードは中継動作を行わない。また、現用のノードが故障などで動作できない場合に、仮想ノードのうちの一台が、共用しているＩＰアドレスとＭＡＣアドレスを使用して、データの中継動作を引き継ぐ。このとき、データを送出する端末には前記共用のＩＰアドレスをデフォルト・ゲートウェイとして登録しておく。端末は常にデータをデフォルト・ゲートウェイ宛に送信するため、アドレスを共用するノードのうち一つが動作可能であれば、冗長経路を提供することが可能であった。
【０００３】
また、レイヤ２レベルの冗長化であれば、Spanning  Tree  Protocol（以下ＳＴＰと呼ぶ）とＳＴＰから派生したプロトコルを利用した冗長化方法が用いられている。この方法では、ＳＴＰが、ネットワーク内でデータがループしてしまうことを避けるように、ループが発生する接続となっている接続を検出し、ループが発生しないように、データを中継しない回線（ブロッキングポート）を設定する動作を利用している。具体的には、複数台のノードから一台のノードに回線を接続し、冗長経路を提供することで、ループが発生する接続とし、ＳＴＰによって中継しない回線を設定する。この冗長接続に障害が起きた場合は、ＳＴＰが再度経路を設定し、正常時ではブロッキングとなっていた冗長経路のうちの一つを、ブロッキング解除することで、障害時にも中継路を提供することができる（例えば、下記非特許文献３）。
【０００４】
また、上記の障害切り替え時間を短縮し、かつ上記のレイヤ２とレイヤ３の冗長化方式を共通のプロトコルで実現する技術が開示されている（下記特許文献１参照）。
【０００５】
【特許文献１】特開２００５−１３００４９号公報
【非特許文献１】"Virtual  Router  Redundancy  Protocol",  RFC2338
【非特許文献２】"Cisco  Hot  Standby  Router  Protocol",  RFC2281
【非特許文献３】IEEE標準,  802.1D-2004  "IEEE  Standard  for  Local  and  Metropolitan  Area  Networks  :Media  Access  Control(MAC)  Bridges"
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１で開示された冗長化方式は、専用のトークンフレームを作成し、冗長経路を提供する各ノードの生存状態を格納しながらリングネットワークを巡回させる必要がある。
【０００７】
また、特許文献１でも示されているように、デフォルト・ゲートウェイ冗長化方式やＳＴＰを利用した冗長化方式では、障害切り替えに数秒から数十秒を要してしまう、という問題点があった。
【０００８】
本発明は、上記に鑑みてなされたものであって、リングネットワークにおいて冗長経路路を提供し、さらに、高速な冗長切り替えと、簡易な実装を実現する通信装置を得ることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明は、リングネットワークを構成し、当該リングネットワークに接続する中継装置に対して冗長経路を提供する通信装置であって、他の通信装置とともに同一中継装置へ接続する場合、自身と当該中継装置との間の第１の経路および当該他の通信装置と当該中継装置との間の第２の経路に対してリンクアグリゲーションを適用することにより、当該中継装置に対して当該リングネットワークとの間の冗長経路を提供することを特徴とする。
【発明の効果】
【００１０】
この発明によれば、リンクアグリゲーションを利用して、複数の通信装置（リングノード装置）を既存のＬ２スイッチと接続することとしたので、冗長構成であってもループを回避することができる。また、冗長経路を提供しているので、リンクアグリゲーションを行っているリングノードのいずれか一つに障害が発生しても、Ｌ２スイッチに他のリングノード（待機回線）を使用させることができ、復旧までの所要時間を短縮化できる、という効果を奏する。
【発明を実施するための最良の形態】
【００１１】
以下に、本発明にかかる通信装置（リングノード装置）の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、本発明にかかる通信装置（リングノード装置）を構成要素として含んだ通信システムの実施の形態１の構成例を示す図である。図１において、ＲＰＲリングネットワーク１は、ＩＥＥＥ８０２．１７にて規定されたResilient  Packet  Ring（RPR）プロトコルを実現するリングネットワークである。Ｌ２スイッチ１０は、一般に市販されている、レイヤ２でデータの中継を行うノードである。上位ネットワーク２０は、ＲＰＲリングネットワーク１が、他のネットワークとのデータ中継を行うために接続するためのネットワークである。端末３１〜３３は、一般に市販されている端末である。リングノード４１および４２は、本発明に係るＲＰＲリングノードである。リングノード５１および５２は、一般に市販されているＲＰＲリングノードである。
【００１３】
Ｌ２スイッチ１０は、リングノード４１および４２とリンクアグリゲーションで接続することによって、ＲＰＲリングネットワーク１とデータのやり取りを行う。ＩＥＥＥ８０２．３で規定されるリンクアグリゲーションは、一対一の対向装置で複数の回線を論理的に一つの回線のように扱うことで、対向装置間の回線速度の向上や冗長回線の確保を行う技術である。
【００１４】
本発明に係るリングノード４１および４２は、図１に示したように、Ｌ２スイッチ１０からは、一台の装置と接続しているかのように、リンクアグリゲーションを実施する機能を有する。
【００１５】
次にリングノード４１を現用、リングノード４２を待機として、Ｌ２スイッチ１０に冗長経路を提供する場合のデータ中継動作について説明する。ここでは、リングノード４１、４２、５１および５２がレイヤ２でデータの中継を行う場合について示す。
【００１６】
待機のリングノード４２は、Ｌ２スイッチ１０と接続されている回線のポートを、ブロッキングとしている。
【００１７】
最初に、図２を用いて、端末３１から端末３３へデータを転送する場合の動作を説明する。端末３１から出力されたデータは、Ｌ２スイッチ１０に受信される。端末３１からデータを受信したＬ２スイッチ１０は、Ｌ２スイッチ１０が持つポート選択手段によって、リンクアグリゲーションされている回線のうち、どの回線を使用するか選択し、選択した回線に対して前記受信データを出力する。図２では、リングノード４１と接続されている回線が選択された場合の例を示している。
【００１８】
リングノード４１は、受信したデータをＲＰＲリングネットワーク１に中継する。リングノード４１から出力されたデータは、ＲＰＲリングネットワーク１に接続されている、全てのノードに転送（フラッディング）される。この受信したデータ（ＲＰＲリングネットワーク１内でフラッディングされたデータ）を、リングノード５１および５２は、ＲＰＲリングネットワーク１以外の自分の全てポートに出力（フラッディング）する。この結果、端末３１から送信されたデータは、その宛先である端末３３に到達する。
【００１９】
ここで、リングノード４２は、通常であれば、ＲＰＲリングノード１から入力したデータを、ＲＰＲリングノード１以外の自分のポートに出力する。そのため、入力データはＬ２スイッチ１０と接続している回線に出力されるところであるが、上述したようにブロッキング設定されているため、データを中継しない。
【００２０】
以上が端末３１から端末３３へのデータ転送動作であるが、つづいて、図３を用いて、端末３３が端末３１宛に送信した応答データを各ノードが転送する場合の動作を説明する。端末３３はリングノード５１にデータを出力する。リングノード５１は、端末３１から３３にデータが転送された際に、端末３１宛のデータはＲＰＲリングネットワーク１に中継するように学習している。そのため、端末３３から受信したデータの宛先アドレスよりその宛先が端末３１であれば、受信データをＲＰＲリングネットワーク１へ中継（フラッディング）する。
【００２１】
中継されたデータはＲＰＲリングネットワーク１上にフラッディングされる。リングノード４１は、端末３３から端末３１に宛てたデータを、ＲＰＲリングネットワークから受信すると、端末３１宛のデータはＬ２スイッチ１０に中継するように学習済みであるため、この受信データをＬ２スイッチ１０に転送する。Ｌ２スイッチ１０は、リングノード４１からの受信データをその宛先である端末３１に転送する。
【００２２】
また、ＲＰＲリングネットワーク１から端末３１宛のデータを受信したリングノード４２も、リングノード４１と同様に、端末３１宛のデータがＲＰＲリングネットワーク１に中継するように学習しておりかつＬ２スイッチと接続するためにポートブロックしているので、受信したデータはどこにも中継しない。
【００２３】
つづいて、図４を用いて、端末３２と端末３３間のデータ転送の際、Ｌ２スイッチ１０が、リングノード４２と接続されている回線を選択した場合の動作を説明する。
【００２４】
Ｌ２スイッチ１０は、リンクアグリゲーション実施の際の回線選択アルゴリズムによっては、リングノード４２と接続されている回線を選択することもありうる。
【００２５】
Ｌ２スイッチ１０によって出力された、端末３２から端末３３に宛てたデータを受信したリングノード４２は、ＲＰＲリングネットワーク１にデータを中継する。このデータもＲＰＲリングネットワーク１上にフラッディングされる。端末３２から送信されたデータを受信したリングノード５１および５２は、受信データをＲＰＲリングネットワーク１以外のポートにフラッディングする。リングノード４１は、受信した中継フレームを精査し、この受信データ（中継フレーム）をＲＰＲリングネットワーク１に中継したリングノードが、リングノード４２であると認識した場合、そのデータはＬ２スイッチ１０には中継しない。この時、リングノード４１は、端末３２がＬ２スイッチ１０の先に存在することを学習する。
【００２６】
以上が端末３２から端末３３へのデータ転送動作であるが、つづいて、図５を用いて、端末３３が端末３２宛に送信した応答データを各リングノードが転送する場合の動作を説明する。各リングノードは上記手順により端末３２から送信されたデータを端末３３へ転送した際にデータを出力するポートを学習しているものとする。端末３３から端末３２宛の応答データを受信したリングノード５１は、受信データをＲＰＲリングネットワーク１へ中継（フラッディング）する。ＲＰＲリングネットワーク１にフラッディングされたデータは、リングノード４２が受信する。リングノード４２は、端末３２宛のデータを、Ｌ２スイッチ１０と接続している回線に出力するように学習しているが、この回線への出力ポートはブロッキングとなっているため、データを出力しない。なお、端末３２宛のデータはリングノード４１へ中継される。そして、リングノード４１は、上述したように端末３２への経路（端末３２がＬ２スイッチ１０の先に存在することを）を学習しているため、リングノード４２から受信した端末３２宛のデータをＬ２スイッチ１０と接続している回線へ出力する。そして、Ｌ２スイッチ１０が端末３２にリングノード４１からの受信データを転送する。
【００２７】
ここで、リングノード４１は、端末３２宛のデータの出力先を学習しなくても、未学習の宛先のデータは、受信ポート以外のポートに出力するという、Ｌ２スイッチの一般的な機能を有するため、Ｌ２スイッチ１０にデータを転送することが可能である。しかしながら、学習しない場合、リングノード４１がＲＰＲリングネットワーク１と接続するポートと、Ｌ２スイッチ１０と接続するポート以外のポートを持っていれば、常にそのポートにも、端末３２宛てのデータを中継してしまうため、無駄なフラッディングによって、それらの回線の帯域を圧迫することとなる。したがって、端末３２への経路を学習しておくことによりトラヒックの増加を抑える制御が可能となる。
【００２８】
つづいて、図６を用いて、冗長を提供しているリングノードがＲＰＲリングネットワーク１から未学習の宛先のデータを受信した場合の動作を説明する。ここでは、図６に示したリングノード４１および４２が共に端末３４についての経路（端末３４がどこに存在しているのか）を未学習の状態で、端末３３から端末３４宛にデータを送信した場合の動作を説明する。なお、図６に示したように、端末３４はＬ２スイッチ１０を介してＲＰＲリングネットワーク１へ接続されている。
【００２９】
端末３３から端末３４宛に送信されたデータは、リングノード５１によってＲＰＲネットワーク１にフラッディングされる。そして、ＲＰＲネットワーク１にフラッディングされた端末３４宛のデータは、リングノード４２からリングノード４１へ中継され、さらに、リングノード４１からＬ２スイッチ１０へ中継する。このときも、リングノード４２は、Ｌ２スイッチ１０と接続するポートがブロッキングであるため、端末３４宛のデータをＬ２スイッチ１０へは中継しない。
【００３０】
つづいて、図７を用いて、冗長を提供しているリングノードに障害が発生した場合の動作を説明する。ここでは、現用であるリングノード４１に障害が発生した場合の動作を説明する。
【００３１】
図７に示した各リングノードは、ＲＰＲの制御フレームを送受信することにより他のリングノードの状態を監視している。そして、リングノード４１に障害が発生したことを検出した場合、各リングノードは、以下の手順を実行する。
【００３２】
リングノード４２は、冗長を提供するペアであるリングノード４１に障害が発生したため、Ｌ２スイッチ１０と接続しているポートのブロッキングを解除する。そして学習していた中継情報である、Filtering  Database（以下、ＦＤＢと呼ぶ）をクリアする。以降の中継は、再学習した内容にしたがって行う。
【００３３】
一方、Ｌ２スイッチ１０は、リングノード４１から、Link  Aggregation  Control  Protocol（以下、ＬＡＣＰと呼ぶ）フレームを一定期間受信できないこと、またはリングノード４１の障害による回線断を検出することにより、リングノード４１と接続しているポートが使用できないことを認識できる。そのため、リングノード４１と接続しているポートが使用できないことを認識した場合、Ｌ２スイッチ１０は、以降の中継処理でこれまでリングノード４１と接続しているポートに出力していたデータを、リングノード４２と接続しているポートに切り替えて出力するようにする。
【００３４】
Ｌ２スイッチ１０に関して、リングノード４１および４２と接続されているポートは、論理的に同一ポートであるので、Ｌ２スイッチ１０は、それまで学習していた中継情報をクリアし、学習しなおす必要が無い。リンクアグリゲーションの手順に従って、それまでリングノード４１に出力していたデータを、リングノード４２に出力することとなる。
【００３５】
つづいて、図８を用いて、リングノード４１が現用として動作している状態で、リングノード４１とＬ２スイッチ１０を接続している回線に障害が発生した場合の動作を説明する。
【００３６】
Ｌ２スイッチ１０と接続している回線の障害を検出した場合、リングノード４１は、ＲＰＲ制御フレームを用いて、自身が中継動作を行えないことをリングノード４２へ通知する。例えばTopology  and  protection（以下、ＴＰと呼ぶ）フレームを用いて、protection  statusフィールドでForced  switchを通知することができる。なお、本障害に該当する新しい値を定義しておき、それを利用して通知するようにしてもよい。リングノード４１から中継動作を行えないことを通知されたリングノード４２は、上述した、リングノード４１で障害が発生した場合の動作と同様の動作を行い、中継を肩代わりする。
【００３７】
冗長を構成するペアの情報は、ＩＥＥＥ８０２．１７で示されているTopology  database（トポロジデータベース）に追加することで、障害の検出と中継の切り替えを連携させることができる。トポロジデータベースは、ＴＰフレーム（Topology  and  Protection  frame）などのＲＰＲ制御フレームを受信することによって更新される。各リングノードは、ＲＰＲ制御フレームによって他のリングノードの障害を認識すると、トポロジデータベースを更新すると共に、そのノードが冗長を構成するペアとなっていることが認識できる。そこでペアの障害に対応する動作を行えばよい。
【００３８】
なお、上記説明ではリングノード５１および５２を一般のリングノードとして説明を行ったが、ノード４１および４２と同様の機能を有するノードとしてもよい。
【００３９】
このように、本実施の形態の通信システムでは、リンクアグリゲーションを利用して、複数のリングノード装置を既存のＬ２スイッチと接続することとし、Ｌ２スイッチと接続しているリングノード装置は、リングネットワーク上でデータを受信した場合、当該受信データをＬ２スイッチへ転送する必要があるかどうかを確認し、転送する必要がある場合にのみ転送することとした。これにより、冗長構成であってもループを回避することができる。また、冗長経路を提供しているので、リンクアグリゲーションを行っているリングノードのいずれか一つに障害が発生しても、Ｌ２スイッチに他のリングノード（待機回線）を使用させることができ、復旧までに要する時間を短縮化できる。さらに、ＲＰＲの高速な障害検出機能を利用しているため、ミリ秒オーダで冗長（待機側）切り替えを実施することができる。そして、既存のＲＰＲの動作と連携させているので、簡易に実装することが可能である。
【００４０】
実施の形態２．
上述した実施の形態１では、待機リングノードを設定し、待機リングノードと既存のＬ２スイッチとを接続しているポートをブロッキングする場合の動作について説明したが、次に、冗長を構成するリングノードをどちらも現用とする場合の実施の形態を示す。
【００４１】
図９は、このような場合の、データ中継の様子を示す図である。図９では、Ｌ２スイッチ１０が、端末３１から端末３３宛に送信されたデータを中継するために、リングノード４１と接続しているポートを選択したときの様子を示している。
【００４２】
Ｌ２スイッチ１０から中継された端末３３宛のデータを、リングノード４１はＲＰＲリングネットワーク１にフラッディングする。フラッディングされた端末３３宛のデータを受信したリングノード５１および５２は、ＲＰＲリングネットワーク１に接続されているポート以外の、自分のポートに受信データを中継する。この結果、リングノード５１から端末３３にデータが転送されることとなる。このときリングノード５１および５２は、端末３１宛のデータはＲＰＲネットワーク１に中継すべきことを学習する。
【００４３】
リングノード４１によって、ＲＰＲリングネットワーク１にフラッディングされたデータ（端末３３宛に端末３１から送信されたデータ）を受信したリングノード４２は、受信データを精査することで、受信データが冗長構成のペアであるリングノード４１から中継されたものであると判断する。そして、冗長構成のペアが中継したものであるので、冗長を構成するポートであるＬ２スイッチ１０と接続しているポートにデータを中継しない。また、端末３１宛のデータはＬ２スイッチ１０に中継すべきことを学習する。
【００４４】
図１０は、端末３１宛のデータの中継先を各リングノードが既に学習済みの状態で、端末３３から３１にデータが送信される様子を示している。端末３１宛のデータを受信した場合、リングノード５１は、このデータの中継先を学習済みであるから、ＲＰＲリングネットワーク１にフラッディングする。リングノード５２は、端末３１宛のデータはＲＰＲリングネットワーク１に中継すべきことを学習済みであるので、受信データをどこにも中継しない。
【００４５】
リングノード４１および４２は、ＲＰＲリングネットワーク１をフラッディングされたデータを受信した場合、端末３１宛のデータをＬ２スイッチ１０に中継すべきことを学習済みであるから、どちらか一方が、リンクアグリゲーションで用いるポート選択方法を用いて、受信データである端末３１宛のデータをＬ２スイッチ１０に中継する。なお、図１０に示した例ではリングノード４２が中継している。たとえば、どちらの装置も同じ選択方法を用いて、中継する／しないの判断を逆にしておけば、二重に中継してしまうことはない。リンクアグリゲーションでは、このような非対称に回線を使用する通信が認められている。
【００４６】
つづいて、図１１を用いて、冗長を提供しているリングノードが、ＲＰＲリングネットワーク１から、未学習の宛先のデータを受信した場合の動作を説明する。なお、図１１は、リングノード４１および４２が共に端末３４を未学習の状態（端末３４宛のデータの中継先を認識していない状態）で、端末３３から端末３４宛てにデータを送信する場合の動作を示している。
【００４７】
リングノード５１によってＲＰＲネットワーク１にフラッディングされた端末３４宛のデータは、リングノード４１と４２のどちらか一方が、リンクアグリゲーションで用いるポート選択方法を用いて、Ｌ２スイッチ１０に中継する。図１１に示した例ではリングノード４２が中継している。
【００４８】
つづいて、リングノード４１で障害が発生した場合の動作を説明する。各リングノードは、ＲＰＲの制御フレームを送受信することにより他のリングノードの状態を監視している。そして、リングノード４１に障害が発生したことを検出した場合、リングノード４２は、冗長を提供するペアであるリングノード４１に障害が発生したため、学習していた中継情報であるＦＤＢをクリアする。以降の中継は、再学習した内容にしたがって行う。なお、Ｌ２スイッチ１０の動作は、上述した実施の形態１で示した動作と同様である。
【００４９】
さらに、リングノード４１とＬ２スイッチ１０を接続している回線の障害が発生した時の動作について説明する。まず、リングノード４１は、実施の形態１の場合と同様の手順で、回線障害を通知する。リングノード４１から回線障害を通知されたリングノード４２は、上述したリングノード４１で障害が発生した場合と同様に、学習していたＦＤＢをクリアする。以降の中継は、再学習した内容にしたがって行う。
【００５０】
このように、本実施の形態では、冗長を構成するリングノードが現用と待機の関係ではなく、常に現用として動作しているときは、他のリングノードから中継されてきたデータの内容を精査し、受信データが冗長構成のペアのリングノードからＲＰＲリングネットワークへ中継されたものであれば、冗長を構成するポートへこのデータを中継しないこととした。これにより、リンクアグリゲーションによる負荷分散機能を生かしつつ現用帯域を増加することができる。
【００５１】
実施の形態３．
以上の実施形態では、冗長を構成するリングノードが冗長を提供するＬ２スイッチ以外の装置とは接続していないものであるが、次に冗長を提供するＬ２スイッチに加えて、冗長を提供しない装置を接続した場合や、複数の装置に冗長を提供する場合の実施の形態を示す。
【００５２】
図１２は、実施の形態３のデータ中継動作例を示す図である。図１２に示した構成では、リングノード４１とリングノード４２がＬ２スイッチ１０に冗長経路を提供し、さらにリングノード４２がＬ２スイッチ１１とも接続されている。また、Ｌ２スイッチ１１には端末３５が接続されている。そして、リングノード４２のＬ２スイッチ１０への冗長ポートは、待機回線であり、ブロッキングとなっている。
【００５３】
Ｌ２スイッチ１０が端末３２から出力されたデータをリングノード４２に転送した場合、リングノード４２は受信データを、ＲＰＲリングネットワーク１とＬ２スイッチ１１にフラッディングする。リングノード４１は、リングノード４２がＲＰＲリングネットワーク１にフラッディングしたデータを受信した場合、冗長を提供するポートから送信されたデータであるため、この受信データはどこにも中継しない。ただし、冗長ペアのポートがブロッキングであるため、Ｌ２スイッチ１０と接続するポートに出力するべきデータとして学習する。
【００５４】
一方、Ｌ２スイッチ１０が端末３１から出力されたデータをリングノード４１に転送した場合、リングノード４１は受信データを、ＲＰＲリングネットワーク１にフラッディングする。リングノード４２は、リングノード４１がＲＰＲリングネットワーク１にフラッディングしたデータを受信した場合、冗長を提供するポートから送信されたデータであるため、Ｌ２スイッチ１０には中継しないが、Ｌ２スイッチ１１には中継する。
【００５５】
また、図１３を使用して、端末３５から出力されたデータの中継動作を説明する。端末３５から出力されたデータは、Ｌ２スイッチ１１を介してリングノード４２に中継される。リングノード４２は、Ｌ２スイッチ１０と接続されているポートはブロッキングであるため、このポートへはデータを中継しないが、ＲＰＲリングネットワーク１にはデータを中継する。この中継されたデータをリングノード４１が受信すると、リングノード４２が出力したデータではあるが、リングノード４２が冗長を構成しているポートから受信したデータではないため、そしてリングノード４２で冗長を構成しているポートがブロッキングであるため、このデータをＬ２スイッチ１０へ中継する。
【００５６】
この動作を可能にするため、リングノード４１および４２は、ＲＰＲリングネットワーク１に中継するデータに、受信ポート番号を格納する。格納する場所は、ＲＰＲヘッダに領域、ＲＰＲヘッダと中継するデータの間、中継するデータとＦＣＳフィールドの間、などが利用できる。また、これ以外に利用可能な場所があればそこへ格納するようにしてもよい。ただし、この場合は一般に市販されているリングノードとはフレームフォーマットに不整合が起こるため、ＲＰＲリングネットワーク１を構成するリングノードは、全て本発明の機能を有するリングノードとなる。
【００５７】
冗長を構成するリングノードに障害が発生した場合の動作は、実施の形態１に示したものと同様である。そのため、動作説明は省略する。
【００５８】
図１４は、冗長を構成するリングノードと、冗長を提供されるＬ２スイッチとを接続する回線で障害が発生した時の動作を示す図である。Ｌ２スイッチ１０と接続している回線の障害を検出した場合、リングノード４１は、実施の形態１で示したものと同様のＲＰＲ制御フレームを用いて、自身が中継動作を行えないことをリングノード４２へ通知する。ただし、上記受信ポート番号と同様に、回線障害を起こしたポート番号を格納する必要がある。格納する場所は、上記中継データに受信ポート番号を格納する場合と同様に、ＲＰＲヘッダに領域を追加、ＲＰＲヘッダと中継するデータの間、中継するデータとＦＣＳフィールドの間、などが利用できる。また、これ以外の場所でもあってもよい。
【００５９】
障害が通知されたリングノード４２は、Ｌ２スイッチ１０と接続しているポートのブロッキングを解除する。そして学習していたＦＤＢをクリアする。ＦＤＢをクリアした後は、端末３５から端末３１宛てに送信されたデータをリングノード４２がＲＰＲネットワーク１とＬ２スイッチ１０にフラッディングする。
【００６０】
このように、本実施の形態では、ポート番号をデータや障害情報に追加し、他のリングノードへ得通知することとした。これにより、リングノードが複数のポートを持ち、そのうちのいくつかを他のリングノードと冗長を構成することとしても、上述した実施の形態１と同様の動作を実現できる。
【００６１】
実施の形態４．
つづいて、実施の形態４について説明する。本実施の形態では、冗長を提供するリングノードが、複数のポートを持ち、そのうちのいくつかで他のリングポートと冗長を構成する時、冗長ポートに待機を設けず、いずれも現用とする場合の動作について説明する。
【００６２】
図１５は、実施の形態４のデータ中継動作例を示す図である。図１５に示した構成では、リングノード４１とリングノード４２がＬ２スイッチ１０に冗長経路を提供し、さらにリングノード４２がＬ２スイッチ１１とも接続されている。また、Ｌ２スイッチ１１には端末３５が接続されている。そして、リングノード４１および４２のＬ２スイッチ１０への冗長ポートは、どちらも現用回線となっている。さらに、端末３１宛のデータの中継先が、既に学習済みであるとする。なお、この学習動作は、実施の形態２で示したものと同様である。
【００６３】
端末３５から、端末３１に宛てたデータを受信したリングノード４２は、学習している内容から、冗長化しているＬ２スイッチ１０が出力先であると認識する。そこで受信データが冗長ペアであるリングノード４１にも届くように、ＲＰＲリングネットワーク１にフラッディングする。その上で、リンクアグリゲーションで用いるポート選択方法を用いて、Ｌ２スイッチ１０に中継するか否かを判断する。このとき、実施の形態２と同様にリングノード４１および４２のいずれか一方が中継を行う。なお、図１５の例ではリングノード４２が中継している。
【００６４】
つづいて、図１６を用いて、端末３５から中継先が未学習の端末３４に宛てたデータの中継動作を説明する。Ｌ２スイッチ１１からデータを受信したリングノード４２は、中継先が未学習であるため、受信ポート以外の全てのポートにフラッディングする。図１６では、フラッディングするポートに冗長化をしているポート（Ｌ２スイッチ１０への出力ポート）が含まれている。そのため前述と同様に、冗長化ポートには、リンクアグリゲーションで用いるポート選択方法を用いて、Ｌ２スイッチ１０に中継するか否かを判断する。すなわち、リングノード４１および４２がリンクアグリゲーションで用いるポート選択方法を用いてＬ２スイッチ１０に中継するか否かをそれぞれ判断する。そして、いずれか一方が中継を行う。なお、図１６の例では、リングノード４１が中継している。
【００６５】
このように、本実施の形態によれば、冗長構成を提供するリングノードが、複数のポートをサポートしている場合であっても、ＲＰＲリングネットワークへのフラッディングを利用して、冗長ペアにデータを届けることができ、双方がデータ中継できる状態で、冗長ポートに対して中継の有無を判断するため、確実にデータの中継が行える。またリングアグリゲーションに則った回線選択手段を用いることで、二重にデータを中継することがなくなり、トラヒックが増加するのを抑えることができる。
【産業上の利用可能性】
【００６６】
以上のように、本発明にかかる通信装置は、ＲＰＲリングネットワークに有用であり、特に、ＲＰＲリングネットワークに接続する外部のノードに対して冗長経路を提供するリングノード装置に適している。
【図面の簡単な説明】
【００６７】
【図１】本発明にかかる通信装置を構成要素として含んだ通信システムの実施の形態１の構成例を示す図である。
【図２】実施の形態１のデータ中継動作の一例を示す図である。
【図３】実施の形態１のデータ中継動作の一例を示す図である。
【図４】実施の形態１のデータ中継動作の一例を示す図である。
【図５】実施の形態１のデータ中継動作の一例を示す図である。
【図６】実施の形態１のデータ中継動作の一例を示す図である。
【図７】実施の形態１のネットワークで障害発生が発生した場合の動作例を示す図である。
【図８】実施の形態１のネットワークで障害発生が発生した場合の動作例を示す図である。
【図９】実施の形態２のデータ中継動作の一例を示す図である。
【図１０】実施の形態２のデータ中継動作の一例を示す図である。
【図１１】実施の形態２のデータ中継動作の一例を示す図である。
【図１２】実施の形態３のデータ中継動作の一例を示す図である。
【図１３】実施の形態３のデータ中継動作の一例を示す図である。
【図１４】実施の形態３のネットワークで障害発生が発生した場合の動作例を示す図である。
【図１５】実施の形態４のデータ中継動作の一例を示す図である。
【図１６】実施の形態４のデータ中継動作の一例を示す図である。
【符号の説明】
【００６８】
１  ＲＰＲリングネットワーク
２  上位ネットワーク
１０、１１  Ｌ２スイッチ
２０  ネットワークノード
３１、３２、３３、３４、３５  端末
４１、４１、５１、５２  リングノード
【図１】
2008301433.tif 000003
【図２】
2008301433.tif 000004
【図３】
2008301433.tif 000005
【図４】
2008301433.tif 000006
【図５】
2008301433.tif 000007
【図６】
2008301433.tif 000008
【図７】
2008301433.tif 000009
【図８】
2008301433.tif 000010
【図９】
2008301433.tif 000011
【図１０】
2008301433.tif 000012
【図１１】
2008301433.tif 000013
【図１２】
2008301433.tif 000014
【図１３】
2008301433.tif 000015
【図１４】
2008301433.tif 000016
【図１５】
2008301433.tif 000017
【図１６】
2008301433.tif 000018