(57)【特許請求の範囲】
【請求項１】
複数の通信装置をリング状に接続したリングネットワークを２つ以上備え、前記リングネットワークごとに単一ポートを閉塞ポートとして閉塞させて障害発生時には閉塞ポートを障害発生ポートに切替えるリングプロテクションを実施し、前記リングネットワークのうちの１つを前記リングネットワーク間で共有する伝送路である共有リンクの障害を検出するメジャーリングとし、前記メジャーリング以外の前記リングネットワークを前記共有リンクの障害を監視しないサブリングとする通信システムであって、
前記共有リンクを終端する前記通信装置である共有装置は、
前記共有リンクを共有する２つ以上の前記リングネットワークについてそれぞれ前記リングネットワーク内の障害を検出する第１の検出処理と、前記共有リンクの障害を検出する第２の検出処理とを実施する障害監視部と、
前記第１の検出処理の結果および前記第２の検出処理の結果に基づいて、メジャーリングとサブリングの切替を実施する切替処理部と、
前記切替処理部により切替が行われた場合、切替後のメジャーリングを示す情報を前記リングネットワークに通知するリング処理部と、
を備えることを特徴とする通信システム。
【請求項２】
前記通信装置は、前記リングネットワークで障害の発生の有無を通知する障害監視制御フレームを送信する際に、前記障害監視制御フレームに自ノードが属するリングネットワークを示す情報と当該リングネットワークがメジャーリングであるかサブリングであるかを示す識別情報とを格納して送信し、他の前記通信装置から前記障害監視制御フレームを受信すると、隣接する前記通信装置へ当該障害監視制御フレームを転送し、
前記リング処理部は、前記切替処理部により切替が行われた場合、前記障害監視制御フレームに切替後の前記識別情報を格納して隣接する前記通信装置へ当該障害監視制御フレームを転送または送信することを特徴とする請求項１に記載の通信システム。
【請求項３】
前記共有装置は、
前記共有リンクに障害が発生したことにより、サブリングに設定されている前記リングネットワークから受信した前記障害監視制御フレームを当該リングネットワーク内で転送できない場合に、当該障害監視制御フレームをメジャーリングに設定されている前記リングネットワークへ転送することを特徴とする請求項２に記載の通信システム。
【請求項４】
前記共有リンクを終端する２つの前記共有装置の一方をマスタ共有装置とし、もう一方をスレーブ共有装置とし、
前記共有リンクに障害が発生したことにより、前記マスタ共有装置が前記障害監視制御フレームをメジャーリングに設定されている前記リングネットワークへ転送し、
前記スレーブ共有装置は、前記マスタ共有装置によりメジャーリング側に転送された前記障害監視制御フレームを受信するまでは前記共有リンクからの障害監視制御フレームを転送せず、前記マスタ共有装置から転送された前記共有リンクの障害を通知する前記障害監視制御フレームを受信した場合に、前記スレーブ共有装置のメジャーリングとなるリングネットワークを識別するリング属性情報をマスタ共有装置のメジャーリングのリング属性情報と一致するように変更し、メジャーリングに対して共有リンクからの障害監視制御フレームを転送することを特徴とする請求項２に記載の通信システム。
【請求項５】
前記共有リンクを終端する２つの前記共有装置の一方をマスタ共有装置とし、もう一方をスレーブ共有装置とし、
前記通信システムを構成する全てのリングネットワークの接続順序の情報を保持し、各リングネットワークにおいて周期的に送信される障害監視制御フレームを受信することにより、各リングネットワークの障害状態の有無を監視することを特徴とする請求項２に記載の通信システム。
【請求項６】
前記リングネットワークでは、ＥＲＰにより前記リングプロテクションを実施し、前記障害監視制御フレームをＲ−ＡＰＳフレームとすることを特徴とする請求項２から５のいずれか１つに記載の通信システム。
【請求項７】
前記切替処理部は、メジャーリングとして設定されている前記リングネットワークにおいて前記共有リンク以外で障害が発生した場合に、当該リングネットワークをサブリングに変更し、サブリングとして設定されている前記リングネットワークのうち障害の発生していない前記リングネットワークをメジャーリングに変更することを特徴とする請求項１から６のいずれか１つに記載の通信システム。
【請求項８】
予めリング情報として前記リングネットワークごとに優先度が設定され、
前記切替処理部は、前記通信システムを構成する前記リングネットワークの少なくとも１つにおいて前記共有リンク以外で障害が発生した場合に、全ての前記リングネットワークの中で最も優先度の高いリング情報を持つ前記リングネットワークをメジャーリングに変更し、変更前のメジャーリング以外の全ての前記リングネットワークをサブリングに変更することを特徴とする請求項１から６のいずれか１つに記載の通信システム。
【請求項９】
前記切替処理部は、複数の前記共有リンクに障害が発生し、リングネットワーク内で共有リンクと共有リンク以外との多重障害が発生した場合に、障害が発生している複数の共有リンクのメジャーリングをサブリングに変更することを特徴とする請求項１から６のいずれか１つに記載の通信システム。
【請求項１０】
２つの前記リングネットワークで１つの前記共有リンクを共有することを特徴とする請求項１から９のいずれか１つに記載の通信システム。
【請求項１１】
３つ以上の前記リングネットワークで１つの前記共有リンクを共有することを特徴とする請求項１から９のいずれか１つに記載の通信システム。
【請求項１２】
前記共有リンクを複数有し、前記共有リンクごとに当該共有リンクを共有する前記リングネットワークに関してメジャーリングとサブリングを切替える前記共有装置を備えることを特徴する請求項１から１１のいずれか１つに記載の通信システム。
【請求項１３】
複数の通信装置をリング状に接続したリングネットワークを２つ以上備え、前記リングネットワークごとに単一ポートを閉塞ポートとして閉塞させて障害発生時には閉塞ポートを障害発生ポートに切替えるリングプロテクションを実施し、前記リングネットワークのうちの１つを前記リングネットワーク間で共有する伝送路である共有リンクの障害を検出するメジャーリングとし、前記メジャーリング以外の前記リングネットワークを前記共有リンクの障害を監視しないサブリングとする通信システムにおいて、前記共有リンクを終端する前記通信装置であって、
前記共有リンクを共有する２つ以上の前記リングネットワークについてそれぞれ前記リングネットワーク内の障害を検出する第１の検出処理と、前記共有リンクの障害を検出する第２の検出処理とを実施する障害監視部と、
前記第１の検出処理の結果および前記第２の検出処理の結果に基づいて、メジャーリングとサブリングの切替を実施する切替処理部と、
前記切替処理部により切替が行われた場合、切替後のメジャーリングを示す情報を前記リングネットワークに通知するリング処理部と、
を備えることを特徴とする通信装置。
【請求項１４】
複数の通信装置をリング状に接続したリングネットワークを２つ以上備え、前記リングネットワークごとに単一ポートを閉塞ポートとして閉塞させて障害発生時には閉塞ポートを障害発生ポートに切替えるリングプロテクションを実施し、前記リングネットワークのうちの１つを前記リングネットワーク間で共有する伝送路である共有リンクの障害を検出するメジャーリングとし、前記メジャーリング以外の前記リングネットワークを前記共有リンクの障害を監視しないサブリングとする通信システムにおけるプロテクション方法であって、
前記共有リンクを終端する前記通信装置である共有装置が、前記共有リンクを共有する２つ以上の前記リングネットワークについてそれぞれ前記リングネットワーク内の障害を検出する第１の検出処理と、前記共有リンクの障害を検出する第２の検出処理とを実施する障害監視ステップと、
前記共有装置が、前記第１の検出処理の結果および前記第２の検出処理の結果に基づいて、メジャーリングとサブリングの切替を実施する切替ステップと、
前記切替ステップで切替が行われた場合、切替後のメジャーリングを示す情報を前記リングネットワークに通知するリング処理ステップと、
を含むことを特徴とするプロテクション方法。
【請求項１５】
複数の通信装置をリング状に接続したリングネットワークを２つ以上備え、前記リングネットワークごとに単一ポートを閉塞ポートとして閉塞させて障害発生時には閉塞ポートを障害発生ポートに切替えるリングプロテクションを実施し、前記リングネットワークのうちの１つを前記リングネットワーク間で共有する伝送路である共有リンクの障害を検出するメジャーリングとし、前記メジャーリング以外の前記リングネットワークを前記共有リンクの障害を監視しないサブリングとし、前記共有リンクを終端する前記通信装置のうちの１つを前記メジャーリングとサブリングを決定するマスタノードとし、前記マスタノード以外の前記共有リンクを終端する前記通信装置をスレーブノードとする通信システムにおけるプロテクション方法であって、
前記共有リンクを終端する前記通信装置である共有装置が、前記共有リンクを共有する２つ以上の前記リングネットワークについてそれぞれ前記リングネットワーク内の障害を検出する第１の検出処理と、前記共有リンクの障害を検出する第２の検出処理とを実施する障害監視ステップと、
前記共有装置が、前記第１の検出処理の結果および前記第２の検出処理の結果に基づいて、メジャーリングとサブリングの切替を実施する切替ステップと、
前記切替ステップで切替が行われた場合、切替後のメジャーリングを示す情報を前記リングネットワークに通知するリング処理ステップと、
を含むことを特徴とするプロテクション方法。
【請求項１６】
複数の通信装置をリング状に接続したリングネットワークを３つ以上備え、前記リングネットワークは互いに隣り合う２つのリングネットワーク間で共有する伝送路である共有リンクを備え、前記リングネットワークごとに単一ポートを閉塞ポートとして閉塞させて障害発生時には閉塞ポートを障害発生ポートに切替えるリングプロテクションを実施し、前記共有リンクを共有する前記２つのリングネットワークのうちの１つを共有リンクの障害を検出するメジャーリングとし、前記メジャーリングでない前記リングネットワークを前記共有リンクの障害を監視しないサブリングとし、前記共有リンクを終端する前記通信装置のうちの１つを前記メジャーリングとサブリングを決定するマスタノードとし、前記マスタノード以外の前記共有リンクを終端する前記通信装置をスレーブノードとする通信システムにおけるプロテクション方法であって、
各共有リンクを終端する共有装置が、前記共有リンクを共有する前記リングネットワークについてそれぞれ前記リングネットワーク内の複数の障害を検出する第１の検出処理と、前記共有リンクの障害を検出する第２の検出処理とを実施する障害監視ステップと、
前記共有装置が、全てのリングネットワークの接続状態を保持し、監視し得るリングネットワークの障害状態を監視するステップと、
前記共有装置が、前記第１の検出処理の結果および前記第２の検出処理の結果に基づいて、メジャーリングとサブリングの切替を実施する切替ステップと、
前記切替ステップで切替が行われた場合、切替後のメジャーリングを示す情報を前記リングネットワークに通知し、障害がなく経路の切替が可能なリングネットワークに対してはメジャーリングとサブリングの切替を要求するリング処理ステップと、
を含むことを特徴とするプロテクション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、通信装置およびプロテクション方法に関する。
【背景技術】
【０００２】
ネットワークの高信頼化を実現するために通信経路に冗長性を持たせる構成として、複数の通信装置をリング状に接続するリング型ネットワーク（リングネットワーク）が広く採用されている。リング型ネットワークでは、ループが発生すると、ブロードキャストフレームの無限巡回により、伝送路の帯域が消費され、他の通信が不可能となるため、フレームの無限巡回を防止することが必要となる。そこで、通常、リングネットワーク上の単一ポートを論理的に切断（以下、閉塞という）する方法が用いられている。また、リングネットワーク上に障害が発生した際に、通信経路の分断を防止するため、閉塞ポートを、それまで閉塞ポートとして設定していたポートから障害が発生したポートに切替えることにより、通信可能な経路を確保する方式がいくつか考案されている。【０００３】
例えば、非特許文献１のイーサネット（登録商標）リングのプロテクション規格であるＥＲＰ（Ｅｔｈｅｒｎｅｔ（登録商標）  Ｒｉｎｇ  Ｐｒｏｔｅｃｔｉｏｎ）では、マルチリングネットワークを構成する各リングネットワークにおいて、代表となる１つのノード装置（Ｒｉｎｇ  Ｐｒｏｔｅｃｔｉｏｎ  Ｌｉｎｋオーナ：以下ＲＰＬオーナーという）の１つのポートを閉塞することで、閉塞したポート側のリンクを論理的に切断し、正常時のループの発生を回避している。障害が発生した場合には、障害を検出したノード装置が障害を検出したポートを閉塞し、障害通知用の制御フレームであるＲ−ＡＰＳ（Ｒｉｎｇ−Ａｕｔｏｍａｔｉｃ  Ｐｒｏｔｅｃｔｉｏｎ  Ｓｗｉｔｃｈｉｎｇ）フレームをもう一方のポートから送信する。ＲＰＬオーナーが、その制御フレームを受信すると、閉塞させていた一方のポートの閉塞を解除することで、経路切替を行う。【０００４】
また、非特許文献１のＥＲＰのマルチリングネットワークでは、２つのリングネットワークが接続された場合、一方を閉ループ形状のメジャーリング、他方を開ループ形状のサブリングと設定する。ここで、メジャーリングとは、複数のリングネットワークで共有する伝送路（以下共有リンク）の障害管理を行うリングネットワークのことであり、サブリングとはこの障害管理を行わない方のリングネットワークである。このようにメジャーリングとサブリングとを設定しない場合、共有リンク障害時に両方のリングで共有リンクの障害管理を行うこととなる。すなわち、共有リンク障害時に、両方のリングネットワークでＲＰＬオーナーの予め閉塞させたポートを解除することとなり、両方のリングネットワークをまたがったループが発生することとなる。したがって、マルチリングネットワークでは、共有リンクで接続される複数のリングネットワークに対して１つのメジャーリングと１つ以上のサブリングを設定する。メジャーリング、サブリングでは、共有リンク以外の障害についてそれぞれ独立してプロテクションを実施し、自リングにおける障害の発生時には自リング内の閉塞ポートの解除を行う。一方、共有リンクの障害時には、メジャーリングのみが障害管理を行って経路切替を行うプロテクション動作を実施することにより、ループの発生を回避している。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】ＩＴＵ−Ｔ  Ｇ．８０３２／Ｙ．１３４４  “Ｅｔｈｅｒｎｅｔ  ｒｉｎｇ  ｐｒｏｔｅｃｔｉｏｎ  ｓｗｉｔｃｈｉｎｇ”，０２／２０１２
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記非特許文献１に記載の技術では、メジャーリング内で、共有リンクにおける障害を含む複数の障害、すなわち、共有リンクにおける障害と共有リンク以外のリンクにおける障害が発生した場合、上述のようにサブリング内では障害が発生していないためサブリング内の閉塞ポートの解除は行われない。このため、メジャーリング内で、共有リンクを含む複数の障害が発生した場合、物理的な迂回路が存在するにもかかわらず、メジャーリング、サブリングは独立してプロテクションを実施していることから、サブリング内ではプロテクションが動作せず、ネットワークの分断が発生してしまい、通信不能となるノードが発生するという課題があった。【０００７】
本発明は、上記に鑑みてなされたものであって、共有リンクを含む多重障害が発生した場合に、通信を継続することができる通信システム、通信装置およびプロテクション方法を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、複数の通信装置をリング状に接続したリングネットワークを２つ以上備え、前記リングネットワークごとに単一ポートを閉塞ポートとして閉塞させて障害発生時には閉塞ポートを障害発生ポートに切替えるリングプロテクションを実施し、前記リングネットワークのうちの１つを前記リングネットワーク間で共有する伝送路である共有リンクの障害を検出するメジャーリングとし、前記メジャーリング以外の前記リングネットワークを前記共有リンクの障害を監視しないサブリングとする通信システムであって、前記共有リンクを終端する前記通信装置である共有装置は、前記共有リンクを共有する２つ以上の前記リングネットワークについてそれぞれ前記リングネットワーク内の障害を検出する第１の検出処理と、前記共有リンクの障害を検出する第２の検出処理とを実施する障害監視部と、前記第１の検出処理の結果および前記第２の検出処理の結果に基づいて、メジャーリングとサブリングの切替を実施する切替処理部と、前記切替処理部により切替が行われた場合、切替後のメジャーリングを示す情報を前記リングネットワークに通知するリング処理部と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明にかかる通信システム、通信装置およびプロテクション方法は、共有リンクを含む多重障害が発生した場合に、通信を継続することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態１のマルチリングネットワークの構成例を示す図である。
【図２】図２は、実施の形態１の共有ノードの構成例を示す図である。
【図３】図３は、実施の形態１の共有ノードのＥＲＰ制御部の機能構成例を示す図である。
【図４】図４は、実施の形態１における障害状態を通知するＲ−ＡＰＳフレームのフォーマットの一例を示す図である。
【図５】図５は、実施の形態１のマルチリング管理部の構成例を示す図である。
【図６】図６は、実施の形態１の障害を検出した場合のマルチリング管理部における処理手順の一例を示すフローチャートである。
【図７】図７は、実施の形態１の共有ノード以外のノードが備えるＥＲＰ制御部の構成例を示す図である。
【図８】図８は、実施の形態１の共有ノード以外のノードにおけるＲ−ＡＰＳフレームの受信時の処理手順の一例を示すフローチャートである。
【図９】図９は、リングＩＤ＝２のリング内に障害が発生した様子を示す図である。
【図１０】図１０は、マルチリングネットワーク内で多重障害が発生した様子を示す図である。
【図１１】図１１は、メジャーリング内で障害が発生した様子を示す図である。
【図１２】図１２は、メジャーリングとサブリングを切替後、共有リンクの障害が発生した様子を示す図である。
【図１３】図１３は、障害無しの状態から共有リンクで障害が発生した様子を示す図である。
【図１４】図１４は、共有リンクに障害が発生した後、メジャーリングに障害が発生した様子を示す図である。
【図１５】図１５は、実施の形態２のマルチリングネットワークの構成例を示す図である。
【図１６】図１６は、サブリング内で障害が発生した様子を示す図である。
【図１７】図１７は、サブリングに障害が発生した後に、共有リンクで障害が発生した様子を示す図である。
【図１８】図１８は、メジャーリング内に障害が発生した様子を示す図である。
【図１９】図１９は、メジャーリングとサブリングを切替後、２つの共有リンクの障害が発生した様子を示す図である。
【図２０】図２０は、障害無しの状態から一方の共有リンクで障害が発生した様子を示す図である。
【図２１】図２１は、一方の共有リンクの障害発生後、他方の共有リンクの障害が発生した様子を示す図である。
【図２２】図２２は、２つの共有リンクに障害が発生後、メジャーリングに障害が発生した様子を示す図である。
【図２３】図２３は、実施の形態３のマルチリングネットワークの構成例を示す図である。
【図２４】図２４は、実施の形態３の共有ノードのＥＲＰ制御部の構成例を示す図である。
【図２５】図２５は、実施の形態３のマルチリング管理部の構成例を示す図である。
【図２６】図２６は、障害を検出した場合の実施の形態３のマルチリング管理部における処理手順の一例を示すフローチャートである。
【図２７】図２７は、サブリングで障害が発生した様子を示す図である。
【図２８】図２８は、サブリングに障害が発生後、共有リンクで障害が発生した様子を示す図である。
【図２９】図２９は、メジャーリング内で障害が発生した様子を示す図である。
【図３０】図３０は、図２９に示した障害によりサブリングとメジャーリングの切替の後、共有リンクに障害が発生し、さらにメジャーリングで障害が発生した様子を示す図である。
【図３１】図３１は、障害無しの状態から共有リンクで障害が発生した様子を示す図である。
【図３２】図３２は、共有リンクに障害が発生した後、メジャーリングに障害が発生した様子を示す図である。
【図３３】図３３は、図３２の障害発生の後、さらにメジャーリングで障害が発生した様子を示す図である。
【図３４】図３４は、実施の形態４のマルチリングネットワークの構成例を示す図である。
【図３５】図３５は、実施の形態４のマルチリング管理部の構成例を示す図である。
【図３６】図３６は、障害を検出した場合の実施の形態４のマルチリング管理部における処理（障害発生処理）手順の一例を示すフローチャートである。
【図３７】図３７は、実施の形態４の、共有ノード以外のノードにおけるＲ−ＡＰＳフレームの受信時の処理手順の一例を示すフローチャートである。
【図３８】図３８は、メジャーリングとサブリングで各々の共有リンク以外での障害が同時に発生した様子を示す図である。
【図３９】図３９は、実施の形態５のマルチリングネットワークの構成例を示す図である。
【図４０】図４０は、実施の形態５のマルチリング管理部の構成例を示す図である。
【図４１】図４１は、障害を検出した場合の実施の形態５のマルチリング管理部における処理（障害発生処理）手順の一例を示すフローチャートである。
【図４２】図４２は、共有リンク以外の全てのリングで障害が同時に発生した様子を示す図である。
【図４３】図４３は、実施の形態６のマルチリングネットワークの構成例を示す図である。
【図４４】図４４は、実施の形態６における障害状態を通知するＲ−ＡＰＳフレームのフォーマットの一例を示す図である。
【図４５】図４５は、実施の形態６の共有ノードのマルチリング管理部の構成例を示す図である。
【図４６】図４６は、リング管理テーブルの一例を示す図である。
【図４７】図４７は、障害を検出した場合の実施の形態６のマルチリング管理部における処理（障害発生処理）手順の一例を示すフローチャートである。
【図４８】図４８は、２つの共有リンクに障害が発生した様子を示す図である。
【図４９】図４９は、２つの共有リンクに障害が発生した後、共有リンクに対するメジャーリングに障害が発生した様子を示す図である。
【発明を実施するための形態】
【００１１】
以下に、本発明にかかる通信システム、通信装置およびプロテクション方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、本発明にかかるマルチリングネットワーク（通信システム）の実施の形態１の構成例を示す図である。実施の形態のマルチリングネットワーク（マルチリングネットワークシステム）は、リングＩＤ（ＩＤｅｎｔｉｆｉｅｒ）＝１であるリングネットワーク（以下、適宜リングと略す）と、リングＩＤ＝２であるリングとで構成される。リングＩＤ＝１のリングは、通信装置であるノード（Ｎｏｄｅ）１，２，３，４を有し、リングＩＤ＝２のリングは、ノード１，４，５，６を有する。リングＩＤ＝１のリングとリングＩＤ＝２のリングとは、２つのリングで共有される通信装置（以下、適宜共有ノードという）であるノード１，４を介して接続される。ノード１，４間は、共有リンク１０で接続される。
【００１３】
図１に示すように、あらかじめＩＤ＝１のリングを、共有リンク１０の障害管理を行うメジャーリング（Ｍａｊｏｒ  Ｒｉｎｇ）、リングＩＤ＝２のリングを、共有リンク１０の障害管理を行わないサブリング（Ｓｕｂ  Ｒｉｎｇ）に設定している。
【００１４】
なお、図１では、２つの共有ノードを含む６つの装置を有するマルチリングネットワークを例として示しているが、各リングに接続されるノード数はこれに限られない。また、図１では、２つのリングが接続された構成例を示したが、本実施の形態は、３つ以上のリングネットワークが接続された構造についても適用可能である。また、共有リンクに３つ以上の共有ノードが接続される場合についても適用可能とする。
【００１５】
各ノード１〜６は、複数のポートを有している。隣接するノードのポート間を接続してリングを形成し、マルチリングネットワークが構成される。図１に示すマルチリングネットワークでは、共有ノードであるノード１，４は３つ以上のポートを有し、それ以外のノード２，３，５，６は２つ以上のポートを有している。
【００１６】
ノード２，６は、ＥＲＰのＲＰＬオーナーノードとして動作し、それ以外のノード１，３，４，５はＥＲＰの非ＲＰＬオーナーノードとして動作する。ここでは、ＲＰＬオーナーの設定や閉塞ポートの設定や解除については、従来技術であるＥＲＰ規格に沿った動作を行うこととする。なお、ここでは、リングネットワークにおいてループ回避のために閉塞ポートを設定するリングプロテクション方式としてＥＲＰを用いる例について説明するが、リングプロテクション方式はＥＲＰに限定されない。
【００１７】
リングＩＤ＝１，２の各リングは、リング内でループフレームが発生しない様に、各リング内の特定の１つのリンクを論理的に切断した状態で動作させる。通常は、ＲＰＬオーナーノードの１つのポートを閉塞させることにより隣接するノードとのリンクを論理的に切断させている。ここで、リンクの切断点をＢＰ（Ｂｌｏｃｋｉｎｇ  Ｐｏｉｎｔ）と呼び、閉塞させたポート（閉塞ポート）をＢＰ設定されたポートと呼ぶこととする。図１の構成例では、ノード２のノード３側のポート、および、ノード６のノード５側のポートをＢＰに設定している。通常のＥＲＰでは、ＢＰ設定されたポートでは制御フレームおよびデータフレームは隣接するノードへ転送されず廃棄される。一方、ＢＰ設定されていないポートでは、制御フレームおよびデータフレームを隣接するノードへ転送することが許可される。
【００１８】
図２は、本実施の形態の共有ノード（図１の構成例ではノード１，４）の構成例を示す図である。図２に示すように、共有ノードは、入力処理部１１−１〜１１−ｎ（ｎは３以上の整数）と、多重部１２と、転送先管理部１３と、ＥＲＰ制御部１４と、バッファメモリ１５と、バッファ制御部１６と、出力処理部１７−１〜１７−ｎと、を備える。ノード１は図示しないｎ個のポートを有し、各ポートは入出力ポートとして機能する。ｋ（ｋ＝１，２，…，ｎ）番目ポートは、入力処理部１１−ｋおよび出力処理部１７−ｋに接続する。また、ｎ個のポートのうち、少なくとも１つは共有リンク１０に接続する。また、ノード１は、図示しない記憶部に転送管理テーブル１８を保持している。共有ノード以外のノード（ノード２，３，５，６）は、後述のようにＥＲＰ制御部１４の替わりにＥＲＰ制御部１４ａを備え、ｎを２以上とし、入力処理部１１−１〜１１−ｎ、出力処理部１７−１〜１７−ｎが共有リンクに接続しないこと以外は、図２の共有ノードと同様である。
【００１９】
入力処理部１１−１〜１１−ｎは各ポートから入力されるフレームのエラーチェック等の処理を行う。入力処理部１１−１〜１１−ｎのうちの１つは共有リンクポート（共有リンク１０に接続するポート）から入力されたフレームの処理を行う。多重部１２は入力処理部１１−１〜１１−ｎから入力されるフレーム（各ポートからの入力フレーム）を多重し、多重したフレームを転送先管理部１３へ出力する。
【００２０】
転送管理テーブル１８はフレームの転送先を管理するため情報が格納されるテーブルであり、例えば、宛先等のフローを識別する情報ごとに出力先のポートが格納される。転送先管理部１３は、転送管理テーブル１８を検索し、入力されたフレームの宛先ごとにフレームの転送先（転送先のポート）を決定し、フレームデータとともに決定した転送先情報をバッファ制御部１６へ通知する。
【００２１】
バッファメモリ１５は転送先ごとに入力順にフレームを格納するキューとして機能するメモリである。バッファ制御部１６は、バッファメモリ１５にフレームデータをライト及びリードする制御を行い、バッファメモリ１５のフレームデータ格納状態を転送先ごとに管理する。バッファメモリ１５にフレームデータが格納されている場合に、転送先のポートごとに、出力先の伝送速度に従って、格納されたフレームをバッファメモリ１５から読み出し、転送先のポートに対応する出力処理部１７−１〜１７−ｎへ出力する。なお、出力処理部１７−１〜１７−ｎで、ポートごとに伝送速度の範囲内でバッファから読み出されたフレームを外部に出力できるよう読出し要求を生成して、バッファ制御部１６へ通知してもよい。
【００２２】
出力処理部１７−１〜１７−ｎは、それぞれ異なるポートに接続され、ポートごとに伝送速度の範囲内でバッファから読み出されたフレームを外部に出力するよう読出し要求を生成して、バッファ制御部１６へ通知する。
【００２３】
ＥＲＰ制御部１４は、リング状に接続するＥＲＰ用のポートから入力されたＥＲＰ用の制御フレームであるＣＣＭフレームやＲ−ＡＰＳフレーム等の終端処理や転送処理を実施する。また、ＥＲＰ制御部１４は、受信したフレーム内の情報などから、各リングネットワークのＥＲＰ状態（障害の有無等）を管理する。
【００２４】
図３は、本実施の形態の共有ノードのＥＲＰ制御部１４の機能構成例を示す図である。ＥＲＰ制御部１４は、マルチリング管理部２１と、ＥＲＰ処理部（リング処理部）２２−１，２２−２とを備える。図１の例では、共有するリングネットワークの数が２であるため、ＥＲＰ処理部を２つ備える。ＥＲＰ処理部２２−１，２２−２では、リングごとにＥＲＰにより障害状態などを管理する。例えば、ＥＲＰ処理部２２−１は、リングＩＤ＝１のリングのＥＲＰ処理を実施し、ＥＲＰ処理部２２−２は、リングＩＤ＝２のリングのＥＲＰ処理を実施する。マルチリング管理部２１は、マルチリングネットワークにおける多重障害によるネットワークの分断を回避するために、複数のＥＲＰ処理部２２−１，２２−２を管理する。なお、ここでは、共有するリングネットワークの数が２つの例を示しているが、ＥＲＰ制御部１４は、共有するリングネットワークの数分のＥＲＰ処理部を備える。
【００２５】
図４は、本実施の形態における障害状態を通知するＲ−ＡＰＳフレームのフォーマットの一例を示す図である。図４に示すように、ＩＴＵ−Ｔ  Ｇ．８０３２で規定されたＥＲＰのＲ−ＡＰＳフレームに、従来の送信元のノードＩＤや閉塞ポート情報に加えて、メジャーリングかサブリングかの識別ビットであるメジャーサブ識別情報（図４中のＭ／Ｓ）と送信元のノードが所属するリングを示すリングＩＤ（図４中のＲｉｎｇ  ＩＤ）をＲｅｓｅｒｖｅｄ  ２の領域に追加している。メジャーサブ識別情報は、後続のリングＩＤのリングがメジャーリングであるかサブリングであるかを示す。本実施の形態で追加する情報は、図４でハッチングして示している。図４中の括弧内の数字は、ＩＴＵ−Ｔ  Ｇ．８０３２で規定されている値である。また、Ｒｅｑｕｅｓｔ／Ｓｔａｔｅのフィールドに格納される値と示される情報との関係は次の通りである。
１０１１ｂ：ＳＦ（Ｓｉｇｎａｌ  Ｆａｉｌ）
１１１０ｂ：Ｅｖｅｎｔ
００００ｂ：ＮＲ（Ｎｏ  Ｒｅｑｕｅｓｔ）
０１１１ｂ：ＭＳ（Ｍａｎｕａｌ  Ｓｗｉｔｃｈ）
１１０１ｂ：ＦＳ（Ｆｏｒｃｅ  Ｓｗｉｔｃｈ）
また、ＢＰＲ（Ｂｌｏｃｋｅｄ  Ｐｏｒｔ  Ｒｅｆｅｒｅｎｃｅ）はどちら側がポートが閉塞となるかを示し、ＤＮＦ（Ｄｏ  Ｎｏｔ  Ｆｌｕｓｈ）はＦＤＢ（Ｆｏｒｗａｒｄｉｎｇ  ＤａｔａＢａｓｅ）のフラッシュが可能か禁止かを示し、ＲＢ（ＲＰＬ  Ｂｌｏｃｋｅｄ）は、ＲＰＬオーナーの閉塞ポートが閉塞されているか否かを示す。
【００２６】
ＩＴＵ−Ｔ  Ｇ．８０３２で規定されたＥＲＰでは、障害が発生していない場合は、ＲＰＬオーナーからＲｅｑｕｅｓｔ／ＳｔａｔｅにＮＲが格納され、ＲＢにＲＰＬオーナーの閉塞ポートが閉塞されていることを示す値が格納されたＲ−ＡＰＳフレームが一定周期で送信される。また、リングネットワーク内のノードが障害を検出した場合は、障害を検出したノードが、Ｒｅｑｕｅｓｔ／ＳｔａｔｅをＳＦとしたＲ−ＡＰＳフレームを両側のポートに送信する。リングネットワーク内の各ノードは受信したＲ−ＡＰＳフレームを隣接するノードへ転送する。
【００２７】
図４の例では、リングＩＤを３ｂｉｔとしているが、マルチリングで構成されるリングネットワークの数により、必要なビット数分の領域が確保できればよいこととする。なお、ここでは、Ｒ−ＡＰＳフレームを用いてメジャーリングかサブリングかの情報とリングＩＤ情報を通知するようにしたが、障害監視用の制御フレーム（障害監視制御フレーム）はＲ−ＡＰＳフレームに限定されず、どのようなフォーマットを用いてもよい。また、障害監視制御フレーム以外の別のフレームにより、メジャーリングの切替を共有リンク１０を共有するリングネットワークへ通知してもよい。
【００２８】
次に、本実施の形態における共有ノードのマルチリング管理部２１の機能について説明する。図５は、本実施の形態のマルチリング管理部２１の構成例を示す図である。マルチリング管理部２１は、障害管理部３１、自ノード情報管理部３２と、共有ノード情報管理部３３を備える。自ノード情報管理部３２は、共有ノード（自ノード）が共有するリングネットワークの複数のリングＩＤに対し、メジャーリングのリングＩＤとメジャーリングに接続するポートのポート番号、サブリングのリングＩＤとサブリングに接続するポートのポート番号、共有リンクに接続するポートのポート番号などの自ノードに関する情報である自ノード情報を管理する。なお、ＩＴＵ−Ｔ  Ｇ．８０３２のマルチリングネットワークと同様に、メジャーリングとは、共有リンクの障害を認識するリングであり、サブリングとは、共有リンクの障害を認識しないリングである。
【００２９】
また、マルチリング管理部２１の共有ノード情報管理部３３は、共有リンクの反対側で共有リンクを終端する共有ノード（図１の例では、ノード１からみた場合ノード４、ノード４からみた場合ノード１）のノードＩＤと当該共有ノードに接続するポート番号などのポートを識別する情報や、共有リンクに接続されるが共有リンクを終端しない共有リンク中間ノードのノードＩＤなどの他の共有ノードに関する情報である共有ノード情報を管理する。なお、図１の例では共有中間ノードは存在しないが、ノード１とノード４の間に共有リンク１０の接続する共有リンク中間ノードを備えていてもよい。
【００３０】
マルチリング管理部２１の障害管理部３１は、これらの自ノード情報、共有ノード情報、マルチリングネットワークにおける障害発生時にＲ−ＡＰＳフレームに格納されている情報（障害を検出したリングＩＤやノードＩＤ）、ポート情報（障害を検出したポートの情報）から、障害発生リングの有無、および共有リンクの障害の有無を判別する障害監視部３１１を備える。
【００３１】
また、障害管理部３１は、メジャーリング内に共有リンク以外の障害が発生した場合や、共有リンクに障害が発生後にメジャーリング内に共有リンク以外で障害が発生した場合、サブリングとメジャーリングに対応するリングＩＤを切替える切替処理部３１２を備える。各リンクの障害発生確率が同じであるとすると、前者の場合（メジャーリング内に共有リンク以外の障害が発生した場合）は、メジャーリングとなるリングを変更する（メジャーリングとするリングＩＤを変更する）ことにより、１つのリングで共有リンクを含む多重障害の発生する確率を低くすることができる。なお、マルチリングにおける障害が各リング内で同時に発生した場合、障害を通知するＲ−ＡＰＳフレームを受信するタイミングが共有リンクの両端の共有ノードで異なるため、メジャーリングとサブリングの認識が両端の共有ノードで異なってしまう場合があり得る。これを避けるため、予め優先共有ノードを決めておき、非優先共有ノードは優先共有ノードからのメジャー／サブリングの識別情報に従うことも可能である。また、マルチリング管理部２１の障害管理部３１は、両リングや共有リンクの障害状態や切替処理の結果に基づき、Ｒ−ＡＰＳフレームの転送／送信処理を行う出力制御部３１３を備える。
【００３２】
次に、共有ノードのマルチリング管理部２１において、新たに障害を検出した場合の処理について説明する。図６は、障害を検出した場合のマルチリング管理部２１における処理（障害発生処理）手順の一例を示すフローチャートである。なお、共有リンク中間ノードが存在する場合は、この障害発生処理は、共有リンク中間ノード以外の共有ノード、すなわち共有リンクを終端する共有リンク終端ノードが実施する。
【００３３】
図６に示すように、マルチリング管理部２１は、まず、Ｍａｊｏｒ（以下、適宜メジャーリングをＭａｊｏｒと略す）側に障害が発生したか否かを判断する（ステップＳ１）。具体的には、マルチリング管理部２１は、メジャーリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、メジャーリングに障害が発生したか否かを判断する。
【００３４】
Ｍａｊｏｒ側で障害が発生した場合（ステップＳ１  Ｙｅｓ）、マルチリング管理部２１は、共有リンク以外で障害が発生したか否かを判断する（ステップＳ２）。共有リンクで障害が発生したか否かは、保持している共有ノード情報とＲ−ＡＰＳフレームに基づいて判断することができる。共有リンク以外で障害が発生した場合（ステップＳ２  Ｙｅｓ）、サブリングで障害が発生中であるか否かを判断する（ステップＳ３）。マルチリング管理部２１は、サブリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、サブリングに障害発生状態を管理しており、これにより、サブリングで障害が発生中であるか否かを判断することができる。
【００３５】
サブリングで障害が発生中でない場合（ステップＳ３  Ｎｏ）、マルチリング管理部２１は、ＭａｊｏｒとＳｕｂ（以下、適宜サブリングをＳｕｂと略す）を切替える（ステップＳ４）。すなわち、図１の状態であった場合に、メジャーリングであるリングＩＤ＝１のリングをサブリングに変更し、サブリングであるリングＩＤ＝２のリングをメジャーリングに変更する。
【００３６】
ステップＳ４の後、共有リンクで障害が発生したか否かを判断し（ステップＳ５）、共有リンクで障害が発生した場合（ステップＳ５  Ｙｅｓ）、両リングのＥＲＰポートのＦＤＢをクリアし、サブリングからメジャーリングへのＲ−ＡＰＳフレームの転送機能を有効にする（ステップＳ６）。この転送機能を有効にすることにより、共有リンクに障害が発生したことによりサブリングに転送できないフレームをメジャーリング経由で転送することができる。なお、各リングでは、通常と同様に初期状態では受信したフレームとポート番号をＦＤＢに登録し、ＦＤＢを用いて転送を行っているとする。
【００３７】
次に、マルチリング管理部２１は、各リングでそれぞれＥＲＰステートマシンに従って処理を実施し（ステップＳ７）、処理を終了する。ＥＲＰステートマシンに従った処理は、従来と同様であるため詳細な説明は省略する。
【００３８】
ステップＳ１で、Ｍａｊｏｒ側で障害が発生していない場合（ステップＳ１  Ｎｏ）、ステップＳ７へ進む。ステップＳ２で、共有リンク以外で障害が発生していない場合（ステップＳ２  Ｎｏ）、ステップＳ５へ進む。ステップＳ３で、サブリングで障害が発生中である場合（ステップＳ３  Ｙｅｓ）、ステップＳ５へ進む。ステップＳ５で、共有リンクで障害が発生していない場合（ステップＳ５  Ｎｏ）、ステップＳ７へ進む。
【００３９】
次に、共有ノード以外のノードが備えるＥＲＰ制御部１４ａについて説明する。図７は、本実施の形態の共有ノード以外のノードが備えるＥＲＰ制御部１４ａの構成例を示す図である。ＥＲＰ制御部１４ａは、図７に示すように、自ノード情報管理部２３、フレーム識別部２４およびＥＲＰ処理部２５を備える。図８は、共有ノード以外のノードにおけるＲ−ＡＰＳフレームの受信時の処理手順の一例を示すフローチャートである。
【００４０】
自ノード情報管理部２３は、自ノードの属するリングＩＤ等の自ノードに関する情報を管理する。フレーム識別部２４は、図８に示すように、Ｒ−ＡＰＳフレームを受信したか否かを判断し（ステップＳ１１）、Ｒ−ＡＰＳフレームを受信していない場合（ステップＳ１１  Ｎｏ）、ステップＳ１４へ進む。Ｒ−ＡＰＳフレームを受信する（ステップＳ１１  Ｙｅｓ）と、自ノード情報管理部２３が管理する情報に基づいて、受信したＲ−ＡＰＳフレーム内のリングＩＤ（図４中のＲｉｎｇ  ＩＤ）が自ノードが属するリングＩＤと一致するか否かを判断する（ステップＳ１２）。自ノードが属するリングＩＤと一致する場合（ステップＳ１２  Ｙｅｓ）、フレーム識別部２４は、自ノードが属するリングＩＤと一致するＲ−ＡＰＳフレームをＥＲＰ処理部２５へ出力し、ＥＲＰ処理部２５は、入力されたＲ−ＡＰＳフレームに基づいて通常のＥＲＰ処理を実施する（ステップＳ１３）。このとき、Ｒ−ＡＰＳフレームのメジャーサブ識別情報に基づいて、自ノードが所属するリングネットワークがメジャーリングであるかサブリングであるかが変更されている場合、この変更を反映する。
【００４１】
例えば、自ノードが、当初はサブリングとして設定されていたリングネットワークのＲＰＬオーナーであった場合、この状態では、共有リンクに障害が発生しても、自ノードの閉塞ポートの解除は行わない。その後に、自ノードが属するリングネットワークがメジャーリングであることを示すＲ−ＡＰＳフレームを受信すると、以降は、共有リンクの障害を検出するＲ−ＡＰＳフレームを受信すると自ノードの閉塞ポートの閉塞を解除する。
【００４２】
受信したＲ−ＡＰＳフレームのリングＩＤが自ノードが属するリングＩＤと一致しない場合（ステップＳ１２  Ｎｏ）、フレーム識別部２４は、ＥＲＰ処理部２５へ出力せずに、転送先のもう一方（受信したポートでない側）のＥＲＰポート（ＥＲＰリングを構成するリンクに接続するポート）が閉塞ポートの場合はフレームを終端（廃棄）し、閉塞ポートでない場合はもう一方のポートに転送する（ステップＳ１４）。
【００４３】
次に、本実施の形態における各ノードの動作について説明する。初めに、マルチリングネットワーク内に障害が発生していない場合の動作について説明する。マルチリングネットワーク内では、予めリングＩＤ＝１またはリングＩＤ＝２の何れかのリングがメジャーリングに設定され、他方がサブリングに設定されていることとする。ここでは、図１のようにリングＩＤ＝１のリングがメジャーリングと設定され、ＩＤ＝２のリングがサブリングと設定されているとする。
【００４４】
図１に示すように、各リングのＲＰＬオーナーであるノード２とノード６の一方のポートが閉塞され、障害検出なしであるＲ−ＡＰＳ（ＮＲ，ＲＢ）フレーム（Ｒｅｑｕｅｓｔ／ＳｔａｔｅがＮＲであり、ＲＢにＲＰＬオーナーの閉塞ポートが閉塞されていることを示す値が格納されたＲ−ＡＰＳフレーム）が各ＲＰＬオーナーから送信される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、該当のリングＩＤ（Ｒ−ＡＰＳフレームに格納されたリングＩＤ）のＥＲＰ処理を実施した後、共有リンクに接続されるポートにフレームを転送する。また、共有リンクから受信したＲ−ＡＰＳフレームに対しても、同様に該当のリングＩＤのＥＲＰ処理を実施後、転送先のリングが接続されるポートに転送する。
【００４５】
次に、マルチリングネットワーク内のサブリング上で障害が発生した場合の動作について説明する。図９は、リングＩＤ＝２のリング内に障害が発生した様子を示す図である。図９に示す例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態でサブリングであるリングＩＤ＝２のリングのノード４とノード５間で障害が発生していることを示している。この場合、メジャーリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード２の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームがＲＰＬオーナーから送信される。一方、サブリング側はノード４とノード５間で障害が発生しているため、障害検出ポートが閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレーム（Ｒｅｑｕｅｓｔ／ＳｔａｔｅがＳＦのＲ−ＡＰＳフレーム）がノード４，５から送信され、ＲＰＬオーナーであるノード６の閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、フレーム内のリングＩＤに対応したリングのＥＲＰ処理を実施後、共有リンク１０が接続されるポートにフレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、同様にフレーム内のリングＩＤのＥＲＰ処理を実施後、当該リングＩＤのリングに接続するポートに転送する。
【００４６】
以上のように、障害がない場合と、サブリングに障害が発生した場合とについては、リングＩＤを判別する以外は、各リングにて通常の単一リングのＥＲＰと同様に動作することとなる。
【００４７】
図１０は、マルチリングネットワーク内で多重障害が発生した様子を示す図である。図１０の例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態で共有リンク１０とノード４とノード５の間とで障害が発生している。図１０の例のように、共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞する。また、共有リンク１０についてはメジャーリング側で障害を検出し、メジャーリングのＲＰＬオーナーであるノード２の一方のポートの閉塞が解除される。また、共有ノードがサブリング側のＲ−ＡＰＳフレームを受信した場合は、共有リンク１０に障害が発生しているため、メジャーリング側に転送することになる。このような多重障害時にも各ノード間の通信は可能である。
【００４８】
図１１は、メジャーリング内で障害が発生した様子を示す図である。図１１の例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態でメジャーリング内のノード２とノード１の間に障害が発生したとする。図１１に示すように、サブリングであるリングＩＤ＝２のリングでは障害が発生していないため、サブリングのＲＰＬオーナーであるノード６の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリングでは、ノード２とノード１の間で障害が発生しているため、障害検出ポートが閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，２から送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリング側で障害が発生したと認識し、図６のフローに従い、メジャーとサブを切替える。そして、受信したＲ−ＡＰＳフレームに対して当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施し（例えば、リングＩＤ＝１のリングであればＥＲＰ処理部２２−１がＥＲＰ処理を実施し）、新たな（切替後の）メジャーリングかサブリングかを識別する情報（メジャーサブ識別情報）を付与し、共有リンク１０が接続されるポートにＲ−ＡＰＳフレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、当該フレーム内のメジャーサブ識別情報が切替前の情報であった場合は、切替後の値に更新し、当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施した後、当該リングＩＤのリングに接続するポートに転送する。
【００４９】
図１２は、メジャーリングとサブリングを切替後、共有リンク１０の障害が発生した様子を示す図である。図１２の例では、図１１で示したようにメジャーリングに障害が発生してメジャーリングとサブリングを切替後、さらに共有リンク１０で障害が発生した様子を示している。図１２に示すように、共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞し、共有リンク１０の障害はメジャーリングで検出するため、切替後のメジャーリングのＲＰＬオーナーであるノード６の一方のポートの閉塞が解除される。また、共有ノードでサブリングであるリングＩＤ＝１のＲ−ＡＰＳフレームを受信した場合、出力制御部３１３は、共有リンク１０で障害が発生しているため、メジャーリングであるリングＩＤ＝２側に転送する。このような多重障害時にも各ノード間の通信は可能である。
【００５０】
図１３は、障害無しの状態から共有リンク１０で障害が発生した様子を示す図である。図１３の例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態で共有リンク１０に障害が発生した例を示している。図１３に示すように、サブリングであるリングＩＤ＝２のリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード６の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリング側では、共有ノードであるノード１−４間で障害が発生しているため、障害検出ポートが閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，４から送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、共有リンク１０の障害検出により、図６のフローに従い、サブリングであるリングＩＤ＝２のリング側からＲ−ＡＰＳフレームを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝１のリング側に当該フレームを転送する。
【００５１】
共有リンク１０に障害が発生後、サブリングに障害が発生し、マルチリングネットワーク内で多重障害が発生した場合は図１０と同じ状態になり、このような多重障害時にも各ノード間の通信は可能である。
【００５２】
図１４は、共有リンク１０に障害が発生した後、メジャーリングに障害が発生した様子を示す図である。図１４の例では、図１３に示したように共有リンク１０に障害が発生した後、メジャーリング内のノード２とノード１の間に障害が発生した例を示している。共有リンク１０はメジャーリングで障害処理を行うことになっているが、新たにメジャーリングの共有リンク１０以外の場所であるノード２とノード１の間で障害が発生すると、ノード１，２間の障害を検出したポートが閉塞し、ノード１，２からＲ−ＡＰＳ（ＳＦ）フレームがメジャーリングに送信される。この時、共有ノードであるノード１，４は、リングＩＤ＝１のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリングの多重障害と判断し、図６のフローに従い、メジャーリングとサブリングを切替える。これにより、リングＩＤ＝２のリングがメジャーリングとなり、共有ノードであるノード１，４から、共有リンクにおける障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝２のリング側のポートに対し出力され、リングＩＤ＝２のリング側のＲＰＬオーナーであるノード６の閉塞が解除される。また、ノード１，４では、共有リンク１０で障害が発生しているため、リングＩＤ＝１のリング側のポートから受信したＲ−ＡＰＳフレームは、リングＩＤ＝２のリング側に転送される。以上のような多重障害時にも各ノード間の通信が可能である。
【００５３】
以上のように、本実施の形態では、共有リンクを終端する共有ノードが、メジャーリングの共有リンク以外の障害を検出し、かつサブリングに障害が発生中でない場合に、メジャーリングとサブリングを切替えるよう指示するようにした。このため、メジャーリング内で共有リンクを含む多重障害が発生した場合に、迂回路を設定することができ、通信を継続することができる。また、この切替をＲ−ＡＰＳフレーム内のＲｅｓｅｒｖｅｄ  ２のフィールドを用いて指示することにより、少ない回路や処理量で上記の効果を得ることができる。
【００５４】
実施の形態２．
図１５は、本発明にかかるマルチリングネットワークの実施の形態２の構成例を示す図である。図１５に示すように、本実施の形態のマルチリングネットワークは、リングＩＤ＝１のリング、リングＩＤ＝２のリングおよびリングＩＤ＝３のリングを備える。図１５に示すマルチリングネットワークでは、共有リンク１０−１と共有リンク１０−２の２か所の共有リンクが存在する。ここでは、あらかじめ、共有リンク１０−１については、リングＩＤ＝２のリングをメジャーリングとし、リングＩＤ＝１のリングをサブリングとして設定し、共有リンク１０−２については、リングＩＤ＝２のリングをメジャーリングとし、リングＩＤ＝３のリングをサブリングとして設定している。
【００５５】
リングＩＤ＝１のリングは、ノード１，２，３，４を有し、リングＩＤ＝２のリングは、ノード１，４，５，６を有し、リングＩＤ＝３のリングは、ノード５，６，７，８を有する。これら３つのリングは、リングＩＤ＝１，２で互いに共有する共有ノードであるノード１，４と、リングＩＤ＝２，３で互いに共有する共有ノードであるノード５，６とを介して、互いのリングが接続される。なお、図１５では、４つの共有ノードを含む８つのノードを有するマルチリングネットワークについて示すが、各リングに接続されるノード数はこれに限られない。また、図１５では、３つのリングネットワークが接続された構造について示したが、本実施の形態は４つ以上のリングネットワークが接続された構造についても適用可能である。更に、共有リンクに３つ以上の共有ノードが接続される場合についても適用可能である。
【００５６】
各ノード１〜８は、複数のポートを有している。隣接するノードのポート間を接続してリングを形成し、マルチリングネットワークが構成される。図１５に示すマルチリングネットワークでは、共有ノードであるノード１，４，５，６は３つ以上のポートを有し、それ以外のノード２，３，７，８は２つ以上のポートを有している。
【００５７】
ノード２，６，８はＥＲＰのＲＰＬオーナーのノード、それ以外のノード１,３，４，５，７は、ＥＲＰの非ＲＰＬオーナーのノードとして動作する。ここでは、ＲＰＬオーナーの設定や閉塞ポートの設定や解除については、従来技術であるＥＲＰ規格に沿った動作を行うこととする。
【００５８】
リングＩＤ＝１，２，３の各リングは、実施の形態１のリングＩＤ＝１，２のリングと同様に、内部でループフレームが発生しない様に、各リングネットワーク内の特定の１つのリンクを論理的に切断した状態で動作させる。図１５に示すリングネットワークでは、ノード２のノード３側のポート、ノード６のノード１側のポート、および、ノード８のノード７側のポートをＢＰに設定している。
【００５９】
本実施の形態のノード１，４，５，６は、図２，３で示したように実施の形態１の共有ノード（共有リンク終端ノード）と同様の構成を有する。本実施の形態の共有ノード以外のノード（ノード２，３，７，８）の構成も、実施の形態１の共有ノード以外のノードと同様である。また、共有リンク終端ノードであるノード１，４，５，６のマルチリング管理部２１の機能についても、実施の形態１と同じであり、図５のようになる。共有ノードのマルチリング管理部２１において、新たに障害を検出した場合の処理フロー、共有ノード以外のノードの処理フローも実施の形態１と同様である。本実施の形態で用いるＲ−ＡＰＳフレームのフォーマットも実施の形態１と同様である。以下、実施の形態１と異なる点について説明する。
【００６０】
初めに、マルチリングネットワーク内に障害が発生していない場合の動作について説明する。図１５に示すように、各リングのＲＰＬオーナーであるノード２、ノード６、ノード８の一方のポートが閉塞され、障害検出なしであるＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが各ＲＰＬオーナーから送信される。ノード１，４，５，６の共有ノードは、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、Ｒ−ＡＰＳフレームに格納されたリングＩＤのＥＲＰ処理を実施した後、共有リンク（共有リンク１０−１または１０−２）が接続されるポートに当該フレームを転送する。また、共有リンク１０−１，１０−２から受信したＲ−ＡＰＳフレームに対しても、同様に該当のＲ−ＡＰＳフレームに格納されたリングＩＤのＥＲＰ処理を実施した後、転送先のリングが接続されるポートに転送する。
【００６１】
次に、マルチリングネットワーク内の各サブリング上で障害が発生した場合の動作について説明する。図１６は、サブリング内で障害が発生した様子を示す図である。図１６の例では、共有リンク１０−１に対するサブリングであるリングＩＤ＝１のノード３とノード４の間と、共有リンク１０−２に対するサブリングであるリングＩＤ＝３のノード６とノード８の間と、に障害が発生した例を示している。図１６に示すように、メジャーリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード６の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームがＲＰＬオーナーから送信される。一方、共有リンク１０−１に対するサブリング側では、ノード３とノード４間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード３，４から送信され、ＲＰＬオーナーであるノード２の閉塞ポートは閉塞解除される。同様に、共有リンク１０−２に対するサブリング側では、ノード６とノード８間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード６，８から送信され、ＲＰＬオーナーであるノード８の閉塞ポートは閉塞解除される。
【００６２】
ノード１，４，５，６の共有ノードは、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは障害検出に対して、Ｒ−ＡＰＳフレームに格納されたリングＩＤのリングのＥＲＰ処理を実施した後、共有リンク１０−１，１０−２が接続されるポートにフレームを転送または生成して送信する。また、共有リンク１０−１，１０−２から受信したＲ−ＡＰＳフレームに対しても、同様にＲ−ＡＰＳフレームに格納されたリングＩＤのリングのＥＲＰ処理を実施した後、該当リングＩＤのリングが接続されるポートに転送する。
【００６３】
以上のように、障害がない場合と、サブリングに障害が発生した場合とについては、リングＩＤを判別する以外は、各リングにて通常の単一リングのＥＲＰと同様に動作することとなる。
【００６４】
図１７は、サブリングに障害が発生した後に、共有リンクで障害が発生した様子を示す図である。図１７の例では、図１６で示した障害が発生した後に、さらに共有リンク１０−１に障害が発生している。図１７に示すように、共有リンク１０−１に障害が発生すると、共有リンク１０−１の共有ノードであるノード１，４の共有リンク１０−１側のポートが閉塞し、共有リンク１０−１はメジャーリングで障害を検出することになるため、メジャーリングであるリングＩＤ＝２のＲＰＬオーナーであるノード６の一方のポートの閉塞が解除される。また、共有ノードが、サブリング側であるリングＩＤ＝１のＲ−ＡＰＳフレームを受信した場合は、共有リンク１０−１に障害が発生しているため、メジャーリング側のリングＩＤ＝２側のポートに転送することになる。このような多重障害時にも各ノード間の通信は可能である。
【００６５】
図１８は、メジャーリング内に障害が発生した様子を示す図である。図１８では、障害発生前に図１５の設定がなされている場合に、リングＩＤ＝２のリング内のノード４とノード５の間に障害が発生した例を示している。図１８に示すように、サブリングであるリングＩＤ＝１，３の各リング内では障害が発生していないため、これらのリングのＲＰＬオーナーであるノード２，８の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝２のリングでは、ノード４とノード５間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード４，５から送信され、ＲＰＬオーナーであるノード６のデフォルトの閉塞ポートは閉塞解除される。ノード１，４，５，６の共有ノードは、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは障害検出により、各共有リンク１０−１，１０−２のメジャーリング側で障害が発生したと認識し、図６のフローに従い、各々メジャーとサブを切替える。そして、受信したＲ−ＡＰＳフレームに格納されているリングＩＤのＥＲＰ処理を実施し、切替後のメジャーサブ識別情報を付与し、共有リンクが接続されるポートにＲ−ＡＰＳフレームを転送する。また、共有リンク１０−１，１０−２から受信したＲ−ＡＰＳフレームに対しても、当該フレーム内のメジャーサブ識別情報が切替前の情報であった場合は、切替後の値に更新し、当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施した後、当該リングＩＤのリングに接続するポートに転送する。
【００６６】
図１９は、メジャーリングとサブリングを切替後、共有リンク１０−１，１０−２に障害が発生した様子を示す図である。図１９では、図１８に示した障害が発生してメジャーリングとサブリングを切替後に、共有リンク１０−１，１０−２の障害が発生した例を示している。図１９に示すように、共有リンク１０−１，１０−２に障害が発生すると、共有ノードであるノード１，４，５，６の共有リンク１０−１，１０−２側のポートがそれぞれ閉塞し、切替後のメジャーリングのＲＰＬオーナーであるノード２，８の一方のポートの閉塞が解除される。また、サブリングであるリングＩＤ＝２のＲ−ＡＰＳフレームを共有ノードで受信した場合は、共有リンクで障害が発生しているため、メジャーリングであるリングＩＤ＝１，３側に転送することになる。このような多重障害時にも各ノード間の通信は可能である。なお、図１９では、共有リンク１０−１，１０−２の両方に障害が発生する例を示しているが、共有リンク１０−１，１０−２の一方に障害が発生した場合にも、同様に、障害が発生した共有リンク１０−１のメジャーリングにおいて上記の動作が実施される。
【００６７】
図２０は、障害無しの状態から共有リンク１０−１で障害が発生した様子を示す図である。図２０に示すように、サブリングであるリングＩＤ＝１のリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード２の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝２のリング側では共有リンク１０−１のノード１とノード４間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，４から送信され、ＲＰＬオーナーであるノード６のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、共有リンク１０−１の障害検出により、図６のフローに従い、サブリングであるリングＩＤ＝１のリング側からＲ−ＡＰＳフレームを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝２のリング側に当該フレームを転送する。また、共有リンク１０−２に接続されるノード５，６の共有ノードは、共有リンク１０−２以外のメジャーリングの障害発生により、図６のフローに従い、メジャーとサブを切替える。そして、受信したＲ−ＡＰＳフレームに対して当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施し、切替後のメジャーサブ識別情報を付与し、共有リンク１０−２が接続されるポートにＲ−ＡＰＳフレームを転送する。
【００６８】
図２１は、共有リンク１０−１の障害発生後、共有リンク１０−２の障害が発生した様子を示す図である。図２１は、図２０で示したように共有リンク１０−１の障害が発生した後に、さらに共有リンク１０−２に障害が発生した例を示している。図２１に示すように、共有リンク１０−１に障害発生後、共有リンク１０−２に障害が発生した場合、共有リンク１０−２のメジャーリングであるリングＩＤ＝３のリングでは共有リンク１０−２のノード５，６間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード５，６から送信され、ＲＰＬオーナーであるノード８のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード５，６は、共有リンク１０−２の障害検出により、図６のフローに従い、サブリングであるリングＩＤ＝２のリング側からＲ−ＡＰＳフレームを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝３のリング側にＲ−ＡＰＳフレームを転送する。
【００６９】
図２２は、２つの共有リンク１０−１，１０−２に障害が発生後、共有リンク１０−２に対するメジャーリングに障害が発生した様子を示す図である。図２２は、図２１で示したように共有リンク１０−１，１０−２に障害が発生した後、さらに、共有リンク１０−２に対するメジャーリングのノード５，７間で障害が発生した例を示している。共有リンクはメジャーリングで障害処理を行うことになっているが、新たに共有リンク１０−２のメジャーリングの共有リンク１０−２以外の場所であるノード５，７間で障害が発生すると、ノード５，７の障害を検出したポートが閉塞し、ノード５，７からＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝３のリングに送信される。この時、共有ノードであるノード５，６は、リングＩＤ＝３のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは障害検出により、メジャーリングの多重障害と判断し、図６のフローに従い、共有リンク１０−２に対するメジャーリングとサブリングを切替える。これにより、共有リンク１０−２に対しては、リングＩＤ＝２のリングがメジャーリングとなり、共有ノードであるノード５，６から、共有リンク１０−２における障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝２のリング側のポートに対し出力され、リングＩＤ＝２のリング側のノード１，４が受信する。
【００７０】
ノード１，４は、共有リンク１０−１のメジャーリングであるリングＩＤ＝２のリングの共有リンク１０−１以外の障害を検出し、図６のフローに従い、共有リンク１０−１に対するメジャーリングとサブリングを切替える。これにより、共有リンク１０−１に対しては、リングＩＤ＝１のリングがメジャーリングとなり、共有ノードであるノード１，４から、共有リンク１０−１における障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝１のリング側のポートに対し出力され、リングＩＤ＝１のリングのＲＰＬオーナーであるノード２が受信し、閉塞ポートを閉塞解除する。共有ノードであるノード５，６では、リングＩＤ＝３のリング側のポートから受信したＲ−ＡＰＳフレームは、共有リンク１０−２で障害が発生しているため、リングＩＤ＝２のリング側に転送される。また、ノード１，４でリングＩＤ＝２のリング側のポートから受信したＲ−ＡＰＳフレームは、共有リンク１０−１で障害が発生しているため、リングＩＤ＝１のリング側に転送される。このような多重障害時にも各ノード間の通信が可能である。
【００７１】
以上のように、本実施の形態では、３つのリングが２つの共有リンクにより接続される構成を例にして、実施の形態１と同様に、共有リンクを終端する共有ノードが、メジャーリングの共有リンク以外の障害を検出し、かつサブリングに障害が発生中でない場合と、メジャーリングとサブリングを切替える動作を示した。このように、３つのリングが２つの共有リンクにより接続される場合にも、実施の形態１と同様にメジャーリング内で共有リンクを含む多重障害が発生した場合に、迂回路を設定することができ、通信を継続することができる。
【００７２】
実施の形態３．
図２３は、本発明にかかるマルチリングネットワークの実施の形態３の構成例を示す図である。図２３に示すように、本実施の形態のマルチリングネットワークは、リングＩＤ＝１のリング、リングＩＤ＝２のリングおよびリングＩＤ＝３のリングを備える。図２３の例では、共有リンク１０が、リングＩＤ＝１，２，３の３つのリングで共有される。図２３の例では、予めリングＩＤ＝１のリングがメジャーリングと設定され、リングＩＤ＝２，３のリングがサブリングとして設定されている。
【００７３】
リングＩＤ＝１のリングは、ノード１，２，３，４を有し、リングＩＤ＝２のリングは、ノード１，４，５，６を有し、リングＩＤ＝３のリングは、ノード１，４，７，８を有し、３つのリングを互いに共有する共有ノードであるノード１，４を介して互いのリングが接続される。この３つのリングに属するノード１，４間を接続するリンクを共有リンク１０とする。なお、図２３では、２つの共有ノードを含む８つの装置を有するマルチリングネットワークについて示すが、リングに接続されるノード数はこれに限られない。また、図２３では、３つのリングネットワークが接続された構造について示したが、本発明は４つ以上のリングネットワークが接続された構造についても適用可能である。更に、共有リンク１０に３つ以上の共有ノードが接続される場合についても適用可能とする。
【００７４】
各ノード１〜８は、複数のポートを有している。隣接するノードのポート間を接続してリングを形成し、マルチリングネットワークが構成される。図２３に示すマルチリングネットワークでは、共有ノードであるノード１，４は４つ以上のポートを有し、それ以外のノード２，３，５，６，７，８は２つ以上のポートを有している。
【００７５】
ノード２，６，８はＥＲＰのＲＰＬオーナーのノード、それ以外のノード１，３，４，５，７はＥＲＰの非ＲＰＬオーナーのノードとして動作する。ここでは、ＲＰＬオーナーの設定や閉塞ポートの設定や解除については、従来技術であるＥＲＰ規格に沿った動作を行うこととする。
【００７６】
リングＩＤ＝１，２，３の各リングは、実施の形態１のリングＩＤ＝１，２のリングと同様に、内部でループフレームが発生しない様に、各リングネットワーク内の特定の１つのリンクを論理的に切断した状態で動作させる。図２３に示すリングネットワークでは、ノード２のノード３側のポート、ノード６のノード５側のポート、および、ノード８のノード７側のポートをＢＰに設定している。
【００７７】
本実施の形態のノード１，４は、図２で示したよう実施の形態１の共有ノード（共有リンク終端ノード）のＥＲＰ制御部１４の替わりにＥＲＰ制御部１４ｂを備える以外は、実施の形態１の共有ノード（共有リンク終端ノード）の構成と同様である。実施の形態１と同様の機能を有する構成要素は、実施の形態１と同一の符号を付して重複する説明を省略する。以下、実施の形態１と異なる点について説明する。
【００７８】
図２４は、本実施の形態の共有ノードにおけるＥＲＰ制御部１４ｂの構成例を示す図である。図２４に示すように、本実施の形態のＥＲＰ制御部１４ｂは、マルチリング管理部２１ａと、ＥＲＰ処理部２２−１〜２２−３とを備える。このように、ＥＲＰ制御部１４ｂは、共有するリングネットワークの数分のＥＲＰ処理部を持ち、各ＥＲＰ処理部ではリングごとに障害状態などを管理する。マルチリング管理部２１ａは、マルチリングネットワークにおける多重障害によるネットワークの分断を回避するために複数のＥＲＰ処理部を管理する。
【００７９】
図２５は、本実施の形態のマルチリング管理部２１ａの構成例を示す図である。マルチリング管理部２１ａは、障害管理部３１の替わりに３つのＥＲＰ処理部２２−１〜２２−３を制御する障害管理部３１ａを備える以外は、実施の形態１のマルチリング管理部２１と同様である。障害管理部３１ａは、障害監視部３１１ａ、切替処理部３１２ａおよび出力制御部３１３ａを備える。障害監視部３１１ａは、自ノード情報、共有ノード情報、マルチリングネットワークにおける障害発生時にＲ−ＡＰＳフレームに格納されている情報、ポート情報（Ｒ−ＡＰＳフレームを受信したポートの情報）から、共有ノードが共有するリングＩＤ＝１，２，３のリングのうちの障害発生リングの有無および共有リンク１０の障害の有無を判別する。
【００８０】
切替処理部３１２ａは、メジャーリング内に共有リンク以外の障害が発生した場合や、共有リンクに障害が発生後にメジャーリング内に共有リンク以外で障害が発生した場合、サブリングとメジャーリングに対応するリングＩＤを切替える。ただし、本実施の形態では、サブリングが複数存在するため、どのサブリングをメジャーリングに変更するかを決定することになる。複数のサブリングのうち、障害の発生していないリングを選択し、選択したリングが複数の場合には、例えば予め定めた順序（例えば、リングＩＤの若い順）に従って１つのリングを選択してメジャーリングとする。
【００８１】
また、マルチリング管理部２１ａの障害管理部３１ａは、３つのリングや共有リンクの障害状態や切替処理の結果に基づき、Ｒ−ＡＰＳフレームの転送／送信処理を行う出力制御部３１３ａを備える。
【００８２】
共有リンク終端ノードであるノード１，４のマルチリング管理部２１ａの機能についても、実施の形態１と同じであり、図５のようになる。共有ノード以外のノードの処理フローも実施の形態１と同様である。本実施の形態で用いるＲ−ＡＰＳフレームのフォーマットも実施の形態１と同様である。
【００８３】
次に、共有ノードのマルチリング管理部２１ａにおいて、新たに障害を検出した場合の処理について説明する。図２６は、障害を検出した場合のマルチリング管理部２１ａにおける処理（障害発生処理）手順の一例を示すフローチャートである。ステップＳ３１，Ｓ３２は、実施の形態１のマルチリング管理部２１におけるステップＳ１，Ｓ２と同様である。ステップＳ３２の後、マルチリング管理部２１ａは、全てのサブリングで障害が発生中であるか否かを判断する（ステップＳ３３）。障害の発生していないサブリングが１つ以上ある場合（ステップＳ３３  Ｎｏ）、マルチリング管理部２１ａは、障害の発生していないサブリングのうちの１つをメジャーリングに変更しメジャーリングをサブリングと変更するよう、メジャーリングとサブリングを切替える（ステップＳ３４）。
【００８４】
ステップＳ３３で、全てのサブリングで障害が発生中である場合（ステップＳ３３  Ｙｅｓ）、ステップＳ３５へ進む。ステップＳ３５〜Ｓ３７は、実施の形態１のマルチリング管理部２１におけるステップＳ５〜Ｓ７と同様である。ただし、ステップＳ３６では、全リングについてＦＤＢをクリアする。
【００８５】
次に、本実施の形態における各ノードの動作について説明する。初めに、マルチリングネットワーク内に障害が発生していない場合の動作について説明する。予めリングＩＤ＝１，２，３のリングの何れかをメジャーリング、残りのリングをサブリングに設定する。ここでは、図２３のようにリングＩＤ＝１のリングをメジャーリングに設定し、リングＩＤ＝２，３のリングをサブリングに設定しているとする。図２３に示すように、各リングのＲＰＬオーナーであるノード２とノード６、ノード８の一方のポートが閉塞され、障害検出なしであるＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが各ＲＰＬオーナーから送信される。ノード１，４の共有ノードは、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、Ｒ−ＡＰＳフレームに格納されたリングＩＤのリングのＥＲＰ処理を実施した後、共有リンク１０が接続されるポートに当該フレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、同様に該当のリングＩＤのＥＲＰ処理を実施後、転送先のリングが接続されるポートに転送する。
【００８６】
図２７は、サブリングで障害が発生した様子を示す図である。図２７は、サブリングであるリングＩＤ＝３のリングのノード１とノード８の間と、サブリングであるリングＩＤ＝２のリングのノード４とノード５の間と、に障害が発生した例を示している。図２７の例では、メジャーリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード２の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームがＲＰＬオーナーから送信される。一方、サブリング側はノード４，５間、ノード１，８間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード４，５，１，８から送信され、ＲＰＬオーナーであるノード６，８の閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、フレーム内のリングＩＤのリングのＥＲＰ処理を実施した後、共有リンク１０が接続されるポートに当該フレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、同様にフレーム内のリングＩＤのＥＲＰ処理を実施後、当該リングＩＤのリングに接続するポートに転送する。
【００８７】
以上のように、障害がない場合と、サブリングに障害が発生した場合とについては、リングＩＤを判別する以外は、各リングにて通常の単一リングのＥＲＰと同様に動作することとなる。
【００８８】
図２８は、サブリングに障害が発生後、共有リンクで障害が発生した様子を示す図である。図２８では、図２７に示したようにサブリングに障害が発生した後に、さらに共有リンク１０に障害が発生した例を示している。図２８に示すように、共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞し、メジャーリングのＲＰＬオーナーであるノード２の一方のポートの閉塞が解除される。また、共有ノードが、サブリング側のＲ−ＡＰＳフレームを受信した場合は、共有リンク１０に障害が発生しているため、メジャーリング側に転送することになる。このような多重障害時にも各ノード間の通信は可能である。
【００８９】
図２９は、メジャーリング内で障害が発生した様子を示す図である。図２９は、メジャーリングであるリングＩＤ＝１のノード３とノード４の間に障害が発生した例を示している。図２９に示すように、サブリングであるリングＩＤ＝２，３のリングでは障害が発生していないため、リングのＲＰＬオーナーであるノード６，８の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリングでは、ノード３，４間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード３，４から送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリング側で障害が発生したと認識し、図２６のフローに従い、リングＩＤ＝１とリングＩＤ＝２のリングの間でメジャーとサブを切替える。そして、受信したＲ−ＡＰＳフレームに対して当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施し、切替後のメジャーサブ識別情報を付与し、共有リンク１０が接続されるポートにＲ−ＡＰＳフレームを転送する。自ノードで障害を検出した場合は、障害に対応するリングに、切替後のメジャーサブ識別情報を付与した障害発生を通知するＲ−ＡＰＳフレームを送信する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、当該フレーム内のメジャーサブ識別情報が切替前の情報であった場合は、切替後の値に更新し、当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施した後、当該リングＩＤのリングに接続するポートに転送する。
【００９０】
図３０は、図２９に示した障害によりサブリングとメジャーリングの切替の後、共有リンク１０に障害が発生し、さらにメジャーリングで障害が発生した様子を示す図である。図３０は、図２９で説明したようにメジャーリングの障害発生により切替を行い、さらに、共有リンク１０に障害が発生し、さらにその後、メジャーリングのノード４，５間で障害が発生した例を示している。共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞する。この障害はメジャーリングであるリングＩＤ＝２のリングが検出して、リングＩＤ＝２のリングのＲＰＬオーナーであるノード６の閉塞が解除される。さらにその後、図３０に示すように、メジャーリングのノード４，５に障害が発生すると、リングＩＤ＝２とリングＩＤ＝３のリングの間でメジャーとサブを切替える。これにより、切替後のメジャーリングのＲＰＬオーナーであるノード８の一方のポートの閉塞が解除される。また、共有ノードがサブリングであるリングＩＤ＝１，２のリングからＲ−ＡＰＳフレームを受信した場合は、共有リンク１０で障害が発生しているため、メジャーリングであるリングＩＤ＝３のリング側に転送することになる。このような多重障害時にも各ノード間の通信は可能である。
【００９１】
図３１は、障害無しの状態から共有リンク１０で障害が発生した様子を示す図である。図３１の例では、図２３に示した障害無しの状態から、共有リンク１０に障害が発生した例を示している。図３１に示すように、サブリングであるリングＩＤ＝２，３のリングでは障害が発生していないため、リングのＲＰＬオーナーであるノード６，８の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリングでは、共有ノードであるノード１，４間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，４から送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、共有リンク１０の障害検出により、図２６のフローに従い、サブリングであるリングＩＤ＝２のリングからＲ−ＡＰＳを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝１のリングにＲ−ＡＰＳフレームを転送する。
【００９２】
共有リンク１０に障害が発生後、サブリングに障害が発生し、マルチリングネットワーク内で多重障害が発生した場合は図２８と同じ状態になり、このような多重障害時にも各ノード間の通信は可能である。
【００９３】
図３２は、共有リンク１０に障害が発生した後、メジャーリングに障害が発生した様子を示す図である。図３２は、図３１に示したように共有リンク１０に障害が発生後、メジャーリングであるリングＩＤ＝１のリングのノード１，２間に障害が発生した例を示している。共有リンクはメジャーリングで障害処理を行うことになっているが、新たにメジャーリングの共有リンク以外の場所であるノード１，２間で障害が発生すると、ノード１，２の障害を検出したポートが閉塞し、ノード１，２からＲ−ＡＰＳ（ＳＦ）フレームがメジャーリングに送信される。この時、共有ノードであるノード１，４は、リングＩＤ＝１のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリングの多重障害と判断し、図２６のフローに従い、リングＩＤ＝１とリングＩＤ＝２のリングの間でメジャーリングとサブリングを切替える。これにより、リングＩＤ＝２のリングがメジャーリングとなり、共有ノードであるノード１，４から、共有リンクにおける障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝２のリング側のポートに対し出力され、リングＩＤ＝２のリング側のＲＰＬオーナーであるノード６の閉塞が解除される。また、ノード１，４では、リングＩＤ＝１のリング側のポートから受信したＲ−ＡＰＳフレームは、共有リンクで障害が発生しているため、リングＩＤ＝２のリング側に転送される。
【００９４】
図３３は、図３２の障害発生の後、さらにメジャーリングで障害が発生した様子を示す図である。図３３は、共有リンク１０に障害が発生後、メジャーリングであるリングＩＤ＝１のリングのノード１，２間に障害が発生し、さらにその時点でのメジャーリングであるリングＩＤ＝２のリングのノード４，５間に障害が発生した例を示している。共有リンクはメジャーリングで障害処理を行うことになっているが、新たにメジャーリングの共有リンク以外の場所であるノード４，５間で障害が発生すると、ノード４，５の障害を検出したポートが閉塞し、ノード４，５からＲ−ＡＰＳ（ＳＦ）フレームがメジャーリングであるリングＩＤ＝２のリングに送信される。この時、共有ノードであるノード１，４は、リングＩＤ＝２のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリングの多重障害と判断し、図２６のフローに従い、リングＩＤ＝２とリングＩＤ＝３のリングの間でメジャーリングとサブリングを切替える。これにより、リングＩＤ＝３のリングがメジャーリングとなり、共有ノードであるノード１，４から、共有リンク１０における障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝３側のポートに対し出力され、リングＩＤ＝３のリングのＲＰＬオーナーであるノード８の閉塞が解除される。また、ノード１，４は、共有リンク１０で障害が発生しているため、リングＩＤ＝１，２のリング側のポートから受信したＲ−ＡＰＳフレームは、リングＩＤ＝３側に転送される。以上のような多重障害時にも各ノード間の通信が可能である。
【００９５】
以上のように、本実施の形態では、１つの共有リンクを３つのリングが共有する構成を例にして、実施の形態１と同様に、共有リンクを終端する共有ノードが、メジャーリングの共有リンク以外の障害を検出し、かつサブリングに障害が発生中でない場合と、メジャーリングとサブリングを切替える動作を示した。このように、１つの共有リンクを３つのリングが共有する場合にも、実施の形態１と同様にメジャーリング内で共有リンクを含む多重障害が発生した場合に、迂回路を設定することができ、通信を継続することができる。
【００９６】
実施の形態４．
図３４は、本発明にかかるマルチリングネットワークの実施の形態４の構成例を示す図である。実施の形態４のマルチリングネットワークは、リングＩＤ＝１であるリングネットワークと、リングＩＤ＝２であるリングとで構成される。リングＩＤ＝１のリングは、通信装置であるノード１，２，３，４を有し、リングＩＤ＝２のリングは、ノード１，４，５，６を有する。リングＩＤ＝１のリングとリングＩＤ＝２のリングとは、２つのリングで共有される通信装置（以下、適宜共有ノードという）であるノード１，４を介して接続される。ノード１，４間は、共有リンク１０で接続される。
【００９７】
図３４に示すように、あらかじめリングＩＤ＝１のリングを、共有リンク１０の障害管理を行うメジャーリング、リングＩＤ＝２のリングを、共有リンク１０の障害管理を行わないサブリングに設定している。ここで、メジャーリングとサブリングの決定方法については特に制約はないが、例えば、リングＩＤなどの情報を比較することにより決定することができる。
【００９８】
また、図３４に示すように、予め、ノード１を、共有リンクの障害管理を行うメジャーリングを決定する共有リンクマスタノード（マスタ共有装置）、ノード４を、共有リンクの障害管理を行うメジャーリングをマスタノードで決定されたメジャーリングに従うスレーブノード（スレーブ共有装置）に設定している。ここで、共有リンクマスタノードとスレーブノードの決定方法については特に制約はないが、例えば、ノードＩＤなどの情報を比較することにより決定することができる。
【００９９】
なお、図３４では、２つの共有ノードを含む６つの装置を有するマルチリングネットワークを例として示しているが、各リングに接続されるノード数はこれに限られない。また、図１では、２つのリングが接続された構成例を示したが、本実施の形態は、３つ以上のリングネットワークが接続された構造についても適用可能である。また、共有リンクに３つ以上の共有ノードが接続される場合についても適用可能とする。
【０１００】
各ノード１〜６は、各々が複数のポートを有している。隣接するノードのポート間を接続してリングを形成し、マルチリングネットワークが構成される。図３４に示すマルチリングネットワークでは、共有ノードであるノード１，４は３つ以上のポートを有し、それ以外のノード２，３，５，６は２つ以上のポートを有している。
【０１０１】
ノード２，６は、ＥＲＰのＲＰＬオーナーノードとして動作し、それ以外のノード１，３，４，５はＥＲＰの非ＲＰＬオーナーノードとして動作する。ここでは、ＲＰＬオーナーの設定や閉塞ポートの設定や解除については、従来技術であるＥＲＰ規格に沿った動作を行うこととする。なお、ここでは、リングネットワークにおいてループ回避のために閉塞ポートを設定するリングプロテクション方式としてＥＲＰを用いる例について説明するが、リングプロテクション方式はＥＲＰに限定されない。
【０１０２】
リングＩＤ＝１，２の各リングは、リング内でループフレームが発生しない様に、各リング内の特定の１つのリンクを論理的に切断した状態で動作させる。通常は、ＲＰＬオーナーノードの１つのポートを閉塞させることにより隣接するノードとのリンクを論理的に切断させている。図３４の構成例では、ノード２のノード３側のポート、および、ノード６のノード５側のポートをＢＰに設定している。通常のＥＲＰでは、ＢＰ設定されたポートでは制御フレームおよびデータフレームは隣接するノードへ転送されず廃棄される。一方、ＢＰ設定されていないポートでは、制御フレームおよびデータフレームを隣接するノードへ転送することが許可される。
【０１０３】
本実施の形態の共有ノード１，４は、マルチリング管理部２１をマルチリング管理部２１ｂに替える以外は、実施の形態１の共有ノードと同様の構成を有する。本実施の形態の共有ノード以外のノード（ノード２，３，５，６）の構成も、実施の形態１の共有ノード以外のノードと同様である。
【０１０４】
次に、本実施の形態における共有ノードのマルチリング管理部２１ｂの機能について説明する。図３５は、本実施の形態のマルチリング管理部２１ｂの構成例を示す図である。マルチリング管理部２１ｂは、障害管理部３１、自ノード情報管理部３２、共有ノード情報管理部３３およびリング属性情報管理部３４を備える。自ノード情報管理部３２は、共有ノード（自ノード）が共有するリングネットワークの複数のリングＩＤに対し、メジャーリングのリングＩＤとメジャーリングに接続するポートのポート番号、サブリングのリングＩＤとサブリングに接続するポートのポート番号、共有リンクに接続するポートのポート番号などの自ノードに関する情報である自ノード情報を管理する。なお、ＩＴＵ−Ｔ  Ｇ．８０３２のマルチリングネットワークと同様に、メジャーリングとは、共有リンクの障害を認識するリングであり、サブリングとは、共有リンクの障害を認識しないリングである。
【０１０５】
また、マルチリング管理部２１ｂの共有ノード情報管理部３３は、共有リンクの反対側で共有リンクを終端する共有ノード（図３４の例では、ノード１からみた場合ノード４、ノード４からみた場合ノード１）のノードＩＤと当該共有ノードに接続するポート番号などのポートを識別する情報や、共有リンクに接続されるが共有リンクを終端しない共有リンク中間ノードのノードＩＤなどの他の共有ノードに関する情報である共有ノード情報を管理する。なお、図３４の例では共有中間ノードは存在しないが、ノード１とノード４の間に共有リンク１０の接続する共有リンク中間ノードを備えていてもよい。
【０１０６】
また、マルチリング管理部２１ｂのリング属性情報管理部３４は、自ノードと共有リンクの反対側で共有リンクを終端する共有ノード（図３４の例では、ノード１からみた場合ノード４、ノード４からみた場合ノード１）との間で、一方を共有リンクマスタノード（以下、マスタノード）、もう一方を共有リンクスレーブノード（以下、スレーブノード）と設定する。そして、リング属性情報管理部３４は、自ノードがマスタノードかスレーブノードかを識別するリング属性情報を管理する。このリング属性情報は、スレーブノードの共有リンクの障害を管理するメジャーリングのリングＩＤ情報をマスタノードのメジャーリングのリングＩＤ情報に一致するように制御するために共有ノードに必要な情報である。
【０１０７】
マルチリング管理部２１ｂの障害管理部３１は、これらの自ノード情報、共有ノード情報、リング属性情報、マルチリングネットワークにおける障害発生時にＲ−ＡＰＳフレームに格納されている情報（障害を検出したリングＩＤやノードＩＤ）、ポート情報（障害を検出したポートの情報）から、障害発生リングの有無、および共有リンクの障害の有無を判別する障害監視部３１１を備える。
【０１０８】
また、障害管理部３１は、メジャーリング内に共有リンク以外の障害が発生した場合や、共有リンクに障害が発生後にメジャーリング内に共有リンク以外で障害が発生した場合や、共有リンクを終端するマスタノードとスレーブノードでメジャーリングの情報が一致しない場合や、同じ共有リンクを持つ全てのリングで共有リンク以外の障害が発生した場合などに、サブリングとメジャーリングに対応するリングＩＤを切替える切替処理部３１２を備える。各リンクの障害発生確率が同じであるとすると、前者の場合（メジャーリング内に共有リンク以外の障害が発生した場合）は、メジャーリングとなるリングを変更する（メジャーリングとするリングＩＤを変更する）ことにより、１つのリングで共有リンクを含む多重障害の発生する確率を低くすることができる。なお、マルチリングにおける障害が各リング内で同時に発生した場合、障害を通知するＲ−ＡＰＳフレームを受信するタイミングが共有リンクの両端の共有ノードで異なるため、メジャーリングとサブリングの認識が両端の共有ノードで異なってしまう場合がある。これを避けるため、共有リンクにおける障害発生時には、スレーブノードが自ノードの共有リンクのメジャー／サブリングの識別情報をマスタノードにおける共有リンクのメジャー／サブリングの識別情報に合わせることで、共有リンクの両端の共有ノードにおけるメジャーリングとサブリングの認識を一致させる。また、マルチリング管理部２１ｂの障害管理部３１は、両リングや共有リンクの障害状態や切替処理の結果に基づき、Ｒ−ＡＰＳフレームの転送／送信処理を行う出力制御部３１３を備える。
【０１０９】
次に、共有ノードのマルチリング管理部２１ｂにおいて、新たに障害を検出した場合の処理について説明する。図３６は、障害を検出した場合のマルチリング管理部２１ｂにおける処理（障害発生処理）手順の一例を示すフローチャートである。なお、共有リンク中間ノードが存在する場合は、この障害発生処理は、共有リンク中間ノード以外の共有ノード、すなわち共有リンクを終端する共有リンク終端ノードが実施する。
【０１１０】
図３６に示すように、マルチリング管理部２１ｂは、まず、Ｍａｊｏｒ側に障害が発生したか否かを判断する（ステップＳ４１）。具体的には、マルチリング管理部２１ｂは、メジャーリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、メジャーリングに障害が発生したか否かを判断する。
【０１１１】
Ｍａｊｏｒ側で障害が発生した場合（ステップＳ４１  Ｙｅｓ）、マルチリング管理部２１ｂは、共有リンク以外で障害が発生したか否かを判断する（ステップＳ４２）。共有リンクで障害が発生したか否かは、保持している共有ノード情報とＲ−ＡＰＳフレームに基づいて判断することができる。共有リンク以外で障害が発生した場合（ステップＳ４２  Ｙｅｓ）、サブリングで障害が発生中であるか否かを判断する（ステップＳ４３）。マルチリング管理部２１ｂは、サブリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、サブリングに障害発生状態を管理しており、これにより、サブリングで障害が発生中であるか否かを判断することができる。
【０１１２】
サブリングで障害が発生中でない場合（ステップＳ４３  Ｎｏ）、マルチリング管理部２１ｂは、ＭａｊｏｒとＳｕｂを切替える（ステップＳ４４）。すなわち、図３４の状態であった場合に、メジャーリングであるリングＩＤ＝１のリングをサブリングに変更し、サブリングであるリングＩＤ＝２のリングをメジャーリングに変更する。
【０１１３】
サブリングでも障害が発生中である場合（ステップＳ４３  Ｙｅｓ）、共有リンクに属する両方のリングにおいて、共有リンク以外で障害が発生しているため、予め決められている優先度の高いリングＩＤを持つリングをメジャーリングとし（ステップＳ５１）、ステップＳ４９へ進む。例えば、リングＩＤの優先度が（リングＩＤ＝１）＞（リングＩＤ＝２）とすると、リングＩＤ＝１がメジャーリング、リングＩＤ＝２がサブリングとする。
【０１１４】
また、マルチリング管理部２１ｂは、ステップＳ４４の後、共有リンクで障害が発生したか否かを判断する（ステップＳ４５）。共有リンクで障害が発生した場合（ステップＳ４５  Ｙｅｓ）、自らのノードが共有リンクマスタノードか否（スレーブノード）かを判断する（ステップＳ４６）。共有リンクスレーブノードである場合（ステップＳ４６  Ｎｏ）は、マスタノードから共有リンクの障害によるＲ−ＡＰＳフレームを受信したか否かを判断する（ステップＳ４７）。マスタノードから共有リンクの障害によるＲ−ＡＰＳフレームを受信した場合（ステップＳ４７  Ｙｅｓ）、メジャーリングを共有リンクマスタノードと同じリングＩＤとする（ステップＳ４８）。メジャーリングの識別は、マスタノードから共有リンクの障害により受信したＲ−ＡＰＳフレームに格納している情報により判断することとする。マスタノードから共有リンクの障害によるＲ−ＡＰＳフレームを受信していない場合（ステップＳ４７  Ｎｏ）、ステップＳ４７へ戻る。
【０１１５】
上記により、共有リンクの障害を管理するメジャーリングが共有リンクマスタノードとスレーブノードで一致した後、マルチリング管理部２１ｂは、両リングのＥＲＰポートのＦＤＢをクリアし、サブリングからメジャーリングへのＲ−ＡＰＳフレームの転送機能を有効にする（ステップＳ４９）。また、両リングでこの転送機能を有効にすることにより、共有リンクに障害が発生したことによりサブリング側で共有リンクの障害により転送できないフレームをメジャーリング経由で転送することができる。なお、各リングでは、通常と同様に初期状態では受信したフレームとポート番号をＦＤＢに登録し、ＦＤＢを用いて転送を行っているとする。
【０１１６】
次に、マルチリング管理部２１ｂは、各リングでそれぞれＥＲＰステートマシンに従って処理を実施し（ステップＳ５０）、処理を終了する。ＥＲＰステートマシンに従った処理は、従来と同様であるため詳細な説明は省略する。
【０１１７】
なお、Ｍａｊｏｒ側で障害が発生していない場合（ステップＳ４１  Ｎｏ）は、ステップＳ５０へ進み、各リングでそれぞれのＥＲＰステートマシンに従い処理する。また、メジャーリングの共有リンク以外で障害が発生していない場合（ステップＳ４２  Ｎｏ）、ステップＳ４５へ進む。ステップＳ４５で、共有リンクで障害が発生していない場合（ステップＳ４５  Ｎｏ）、ステップＳ５０へ進む。ステップＳ４６で、共有リンクマスタノードである場合（ステップＳ４６  Ｙｅｓ）は、ステップＳ４９へ進む。
【０１１８】
次に、共有ノード以外のノードについて説明する。本実施の形態の共有ノード以外のノードは、実施の形態１と同様にＥＲＰ制御部１４ａを備える。本実施の形態のＥＲＰ制御部１４ａは、以下に示す動作を実施する。ＥＲＰ制御部１４ａは、図７に示すように、自ノード情報管理部２３、フレーム識別部２４およびＥＲＰ処理部２５を備える。図３７は、本実施の形態の、共有ノード以外のノードにおけるＲ−ＡＰＳフレームの受信時の処理手順の一例を示すフローチャートである。
【０１１９】
自ノード情報管理部２３は、自ノードの属するリングＩＤ等の自ノードに関する情報を管理する。フレーム識別部２４は、図３７に示すように、Ｒ−ＡＰＳフレームを受信すると、自ノード情報管理部２３が管理する情報に基づいて、受信したＲ−ＡＰＳフレーム内のリングＩＤ（図４中のＲｉｎｇ  ＩＤ）が、自ノードが属するリングＩＤと一致するか否かを判断する（ステップＳ６１）。自ノードが属するリングＩＤと一致する場合（ステップＳ６１  Ｙｅｓ）、フレーム識別部２４は、自ノードが属するリングＩＤと一致するＲ−ＡＰＳフレームをＥＲＰ処理部２５へ出力し、ＥＲＰ処理部２５は、入力されたＲ−ＡＰＳフレームに基づいて通常のＥＲＰ処理を実施する（ステップＳ６２）。このとき、Ｒ−ＡＰＳフレームのメジャーサブ識別情報に基づいて、自ノードが所属するリングネットワークがメジャーリングであるかサブリングであるかが変更されている場合、この変更を反映する。
【０１２０】
例えば、自ノードが、当初はサブリングとして設定されていたリングネットワークのＲＰＬオーナーであった場合、この状態では、共有リンクに障害が発生しても、自ノードの閉塞ポートの解除は行わない。その後に、自ノードが属するリングネットワークがメジャーリングであることを示すＲ−ＡＰＳフレームを受信すると、以降は、共有リンクの障害を検出するＲ−ＡＰＳフレームを受信すると自ノードの閉塞ポートの閉塞を解除する。
【０１２１】
受信したＲ−ＡＰＳフレームのリングＩＤが自ノードが属するリングＩＤと一致しない場合（ステップＳ６１  Ｎｏ）、フレーム識別部２４は、ＥＲＰ処理部２５へ出力せずに、転送先のもう一方（受信したポートでない側）のＥＲＰポート（ＥＲＰリングを構成するリンクに接続するポート）が閉塞ポートの場合はフレームを終端（廃棄）し、閉塞ポートでない場合はもう一方のポートに転送する（ステップＳ６３）。また、この際ＦＤＢフラッシュ指示がある場合は、ＦＤＢのフラッシュを実施する。
【０１２２】
次に、本実施の形態における各ノードの動作について説明する。初めに、マルチリングネットワーク内に障害が発生していない場合の動作について説明する。マルチリングネットワーク内では、予めリングＩＤ＝１またはリングＩＤ＝２の何れかのリングがメジャーリングに設定され、他方がサブリングに設定されていることとする。ここでは、図３４のようにリングＩＤ＝１のリングがメジャーリングと設定され、ＩＤ＝２のリングがサブリングと設定されているとする。
【０１２３】
図３４に示すように、各リングのＲＰＬオーナーであるノード２とノード６の一方のポートが閉塞され、障害検出なしであるＲ−ＡＰＳ（ＮＲ，ＲＢ）フレーム（Ｒｅｑｕｅｓｔ／ＳｔａｔｅがＮＲであり、ＲＢにＲＰＬオーナーの閉塞ポート閉塞されていることを示す値が格納されたＲ−ＡＰＳフレーム）が各ＲＰＬオーナーから送信される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、該当のリングＩＤ（Ｒ−ＡＰＳフレームに格納されたリングＩＤ）のＥＲＰ処理を実施した後、共有リンクに接続されるポートにフレームを転送する。また、共有リンクから受信したＲ−ＡＰＳフレームに対しても、同様に該当のリングＩＤのＥＲＰ処理を実施後、転送先のリングが接続されるポートに転送する。
【０１２４】
次に、マルチリングネットワーク内のサブリング上で障害が発生した場合の動作について説明する。図９に示した、リングＩＤ＝２のリング内に障害が発生した場合について説明する。図９に示す例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態でサブリングであるリングＩＤ＝２のリングのノード４とノード５間で障害が発生していることを示している。この場合、メジャーリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード２の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームがＲＰＬオーナーから送信される。一方、サブリング側はノード４とノード５間で障害が発生しているため、障害検出ポートが閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレーム（Ｒｅｑｕｅｓｔ／ＳｔａｔｅがＳＦのＲ−ＡＰＳフレーム）がノード４，５から送信され、ＲＰＬオーナーであるノード６の閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、フレーム内のリングＩＤに対応したリングのＥＲＰ処理を実施後、共有リンク１０が接続されるポートにフレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、同様にフレーム内のリングＩＤのＥＲＰ処理を実施後、当該リングＩＤのリングに接続するポートに転送する。
【０１２５】
以上のように、障害がない場合と、サブリングに障害が発生した場合とについては、リングＩＤを判別する以外は、各リングにて通常の単一リングのＥＲＰと同様に動作することとなる。
【０１２６】
次に、図１０に示した、マルチリングネットワーク内で多重障害が発生した場合について説明する。図１０の例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態で共有リンク１０とノード４とノード５の間とで障害が発生している。図１０の例のように、共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞する。また、共有ノードであるノード１が共有リンクマスタノード、ノード４が共有リンクスレーブノードである場合、共有リンクマスタノードであるノード１から共有リンクの障害を通知するＲ−ＡＰＳフレームが送信される。このため、メジャーリング側であるリングＩＤ＝１で障害を検出し、メジャーリングのＲＰＬオーナーであるノード２の一方のポートの閉塞が解除される。共有リンクスレーブノードであるノード４では、ノード１からの共有リンクの障害を通知するＲ−ＡＰＳフレームを受信するまでは、共有リンクの障害を通知するＲ−ＡＰＳフレームを転送しない。また、共有ノードがサブリング側のＲ−ＡＰＳフレームを受信した場合は、共有リンク１０に障害が発生しているため、メジャーリング側に転送することになる。このような多重障害時にも各ノード間の通信は可能である。
【０１２７】
次に、図１１に示した、メジャーリング内で障害が発生した場合について説明する。図１１の例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態でメジャーリング内のノード２とノード１の間に障害が発生したとする。図１１に示すように、サブリングであるリングＩＤ＝２のリングでは障害が発生していないため、サブリングのＲＰＬオーナーであるノード６の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリングでは、ノード２とノード１の間で障害が発生しているため、障害検出ポートが閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，２から送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリング側で障害が発生したと認識し、図３６のフローに従い、メジャーとサブを切替える。そして、受信したＲ−ＡＰＳフレームに対して当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施し（例えば、リングＩＤ＝１のリングであればＥＲＰ処理部２２−１がＥＲＰ処理を実施し）、新たな（切替後の）メジャーリングかサブリングかを識別する情報（メジャーサブ識別情報）を付与し、共有リンク１０が接続されるポートにＲ−ＡＰＳフレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、当該フレーム内のメジャーサブ識別情報が切替前の情報であった場合は、切替後の値に更新し、当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施した後、当該リングＩＤのリングに接続するポートに転送する。
【０１２８】
次に、図１２に示した、メジャーリングとサブリングを切替後、共有リンク１０の障害が発生した場合について説明する。図１２の例では、図１１で示したようにメジャーリングに障害が発生してメジャーリングとサブリングを切替後、さらに共有リンク１０で障害が発生した様子を示している。図１２に示すように、共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞し、共有リンク１０の障害はメジャーリングで検出するため、共有リンクの障害を通知するＲ−ＡＰＳフレームが共有リンクマスタノードであるノード１から新たなメジャーリング側に送信され、切替後のメジャーリングのＲＰＬオーナーであるノード６の一方のポートの閉塞が解除される。共有リンクスレーブノードであるノード４では、ノード１からの共有リンクの障害を通知するＲ−ＡＰＳフレームを受信するまでは、共有リンクの障害を通知するＲ−ＡＰＳフレームを転送しない。また、共有ノードでサブリングであるリングＩＤ＝１のＲ−ＡＰＳフレームを受信した場合、出力制御部３１３は、共有リンク１０で障害が発生しているため、メジャーリングであるリングＩＤ＝２側に転送する。このような多重障害時にも各ノード間の通信は可能である。
【０１２９】
次に、図１３に示した、障害無しの状態から共有リンク１０で障害が発生した場合について説明する。図１３の例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態で共有リンク１０に障害が発生した例を示している。図１３に示すように、サブリングであるリングＩＤ＝２のリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード６の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリング側では、共有ノードであるノード１−４間で障害が発生しているため、障害検出ポートが閉塞され、共有リンクの障害を通知するＲ−ＡＰＳフレームが共有リンクマスタノードであるノード１から新たなメジャーリング側に送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有リンクスレーブノードであるノード４では、ノード１からの共有リンクの障害を通知するＲ−ＡＰＳフレームを受信するまでは、共有リンクの障害を通知するＲ−ＡＰＳフレームを転送しない。共有ノードであるノード１，４は、共有リンク１０の障害検出により、図３６のフローに従い、サブリングであるリングＩＤ＝２のリング側からＲ−ＡＰＳフレームを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝１のリング側に当該フレームを転送する。
【０１３０】
共有リンク１０に障害が発生後、サブリングに障害が発生し、マルチリングネットワーク内で多重障害が発生した場合は図１０と同じ状態になり、このような多重障害時にも各ノード間の通信は可能である。
【０１３１】
次に、図１４に示した、共有リンク１０に障害が発生した後、メジャーリングに障害が発生した場合について説明する。図１４の例では、図１３に示したように共有リンク１０に障害が発生した後、メジャーリング内のノード２とノード１の間に障害が発生した例を示している。共有リンク１０はメジャーリングで障害処理を行うことになっているが、新たにメジャーリングの共有リンク１０以外の場所であるノード２とノード１の間で障害が発生すると、ノード１，２間の障害を検出したポートが閉塞し、ノード１，２からＲ−ＡＰＳ（ＳＦ）フレームがメジャーリングに送信される。この時、共有ノードであるノード１，４は、リングＩＤ＝１のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリングの多重障害と判断し、図３６のフローに従い、メジャーリングとサブリングを切替える。これにより、リングＩＤ＝２のリングがメジャーリングとなり、共有リンクマスタノードであるノード１から、共有リンクにおける障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝２のリング側のポートに対し出力され、リングＩＤ＝２のリング側のＲＰＬオーナーであるノード６の閉塞が解除される。共有リンクスレーブノードであるノード４では、ノード１からの共有リンクの障害を通知するＲ−ＡＰＳフレームを受信するまでは、共有リンクの障害を通知するＲ−ＡＰＳフレームを転送しない。また、ノード１，４では、共有リンク１０で障害が発生しているため、リングＩＤ＝１のリング側のポートから受信したＲ−ＡＰＳフレームは、リングＩＤ＝２のリング側に転送される。以上のような多重障害時にも各ノード間の通信が可能である。
【０１３２】
図３８は、メジャーリングとサブリングで各々の共有リンク以外での障害が同時に発生した様子を示す図である。図３８の例では、障害発生前にリングＩＤ＝１のリングがメジャーリングに設定されており、この状態でメジャーリング内のノード２とノード１の間とサブリング内のノード４とノード５の間に障害が発生したとする。図３８に示すように、両リングで障害が発生するため、障害検出ポートが閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，２，４，５から送信され、ＲＰＬオーナーであるノード２とノード６のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、自ノードの障害検出により、ノード１はメジャーリング側のリングＩＤ＝１で障害が発生したと認識し、図３６のフローに従い、メジャーとサブを切替える。一方、ノード４はサブリング側のリングＩＤ＝２で障害が発生したと認識し、図３６のフローに従い、メジャーとサブを切替えない。この時点では、共有ノードであるノード１と４とではメジャーリングとサブリングのリングＩＤが異なることになる。
【０１３３】
その後、ノード１は、リングＩＤ＝２に接続されるポートから入力されたＲ−ＡＰＳフレーム、ノード４はリングＩＤ＝１に接続されるポートから入力されたＲ−ＡＰＳフレームにより、両リングで障害が発生したと認識し、図３６のフローに従い、リングＩＤ＝１を予め優先度が高いリングとした場合、リングＩＤ＝１をメジャー、リングＩＤ＝２をサブとし、共有ノードでは各リングに対して当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施し（例えば、リングＩＤ＝１のリングであればＥＲＰ処理部２２−１がＥＲＰ処理を実施し）、新たな（切替後の）メジャーリングかサブリングかを識別する情報（メジャーサブ識別情報）を付与し、共有リンク１０が接続されるポートにＲ−ＡＰＳフレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、当該フレーム内のメジャーサブ識別情報が切替前の情報であった場合は、切替後の値に更新し、当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施した後、当該リングＩＤのリングに接続するポートに転送する。
【０１３４】
以上のように、本実施の形態では、２つのリングネットワークにおいて、共有リンクで障害が発生した場合に、共有リンクマスタノードのメジャーリングのリングＩＤを共有リンクスレーブノードでもメジャーリングとして設定するようにした。また、共有リンク以外のメジャーリングとサブリングで多重障害が同時に発生した場合に、予め優先度を設定し、優先度の高いリングＩＤをメジャーリングとすることとした。このため、共有リンクを終端する共有リンクマスタノードと共有リンクスレーブノードで、共有リンクの障害を管理するメジャーリングのリングＩＤが一致し、共有リンクの障害時に、正常に迂回路を設定することができ、多重障害が発生した場合でも通信を継続することができる。また、この切替をＲ−ＡＰＳフレーム内のＲｅｓｅｒｖｅｄ  ２のフィールドを用いて指示することにより、少ない回路や処理量で上記の効果を得ることができる。
【０１３５】
実施の形態５．
図３９は、本発明にかかるマルチリングネットワークの実施の形態５の構成例を示す図である。図３９に示すように、本実施の形態のマルチリングネットワークは、リングＩＤ＝１のリング、リングＩＤ＝２のリングおよびリングＩＤ＝３のリングを備える。図３９の例では、共有リンク１０が、リングＩＤ＝１，２，３の３つのリングで共有される。図３９の例では、予めリングＩＤ＝１のリングがメジャーリングと設定され、リングＩＤ＝２，３のリングがサブリングとして設定されている。
【０１３６】
リングＩＤ＝１のリングは、ノード１，２，３，４を有し、リングＩＤ＝２のリングは、ノード１，４，５，６を有し、リングＩＤ＝３のリングは、ノード１，４，７，８を有し、３つのリングを互いに共有する共有ノードであるノード１，４を介して互いのリングが接続される。この３つのリングに属するノード１，４間を接続するリンクを共有リンク１０とする。
【０１３７】
また、図３９に示すように、予め、ノード１を、共有リンクの障害管理を行うメジャーリングを決定する共有リンクマスタノード、ノード４を、共有リンクの障害管理を行うメジャーリングをマスタノードで決定されたメジャーリングに従うスレーブノードに設定している。ここで、共有リンクマスタノードとスレーブノードはどのように決定してもよいが、例えば、ノードＩＤなどの情報を比較することにより決定することができる。
【０１３８】
なお、図３９では、２つの共有ノードを含む８つの装置を有するマルチリングネットワークについて示すが、リングに接続されるノード数はこれに限られない。また、図３９では、３つのリングネットワークが接続された構造について示したが、本発明は４つ以上のリングネットワークが接続された構造についても適用可能である。更に、共有リンク１０に３つ以上の共有ノードが接続される場合についても適用可能とする。
【０１３９】
各ノード１〜８は、それぞれ複数のポートを有している。隣接するノードのポート間を接続してリングを形成し、マルチリングネットワークが構成される。図３９に示すマルチリングネットワークでは、共有ノードであるノード１，４は４つ以上のポートを有し、それ以外のノード２，３，５，６，７，８は２つ以上のポートを有している。
【０１４０】
ノード２，６，８はＥＲＰのＲＰＬオーナーのノード、それ以外のノード１，３，４，５，７はＥＲＰの非ＲＰＬオーナーのノードとして動作する。ここでは、ＲＰＬオーナーの設定や閉塞ポートの設定や解除については、従来技術であるＥＲＰ規格に沿った動作を行うこととする。
【０１４１】
リングＩＤ＝１，２，３の各リングは、実施の形態１のリングＩＤ＝１，２のリングと同様に、内部でループフレームが発生しない様に、各リングネットワーク内の特定の１つのリンクを論理的に切断した状態で動作させる。図３９に示すリングネットワークでは、ノード２のノード３側のポート、ノード６のノード５側のポート、および、ノード８のノード７側のポートをＢＰに設定している。
【０１４２】
本実施の形態のノード１，４は、図２で示したよう実施の形態１の共有ノード（共有リンク終端ノード）のＥＲＰ制御部１４の替わりにＥＲＰ制御部１４ｃを備える以外は、実施の形態１の共有ノード（共有リンク終端ノード）の構成と同様である。実施の形態１と同様の機能を有する構成要素は、実施の形態１と同一の符号を付して重複する説明を省略する。以下、実施の形態１と異なる点について説明する。
【０１４３】
本実施の形態の共有ノードにおけるＥＲＰ制御部１４ｃは、マルチリング管理部２１ｃと、実施の形態３と同様のＥＲＰ処理部２２−１〜２２−３とを備える。このように、ＥＲＰ制御部１４ｃは、共有するリングネットワークの数分のＥＲＰ処理部を持ち、各ＥＲＰ処理部ではリングごとに障害状態などを管理する。マルチリング管理部２１ｃは、マルチリングネットワークにおける多重障害によるネットワークの分断を回避するために複数のＥＲＰ処理部を管理する。
【０１４４】
共有リンク終端ノードであるノード１，４のマルチリング管理部２１ｃの構成については、図４０のようになる。共有ノード以外のノードの処理フローは実施の形態１と同様である。本実施の形態で用いるＲ−ＡＰＳフレームのフォーマットも実施の形態１と同様である。
【０１４５】
図４０は、本実施の形態のマルチリング管理部２１ｃの構成例を示す図である。マルチリング管理部２１ｃは、障害管理部３１の替わりに３つのＥＲＰ処理部２２−１〜２２−３を制御する障害管理部３１ａを備え、実施の形態４と同様のリング属性情報管理部３４を追加する以外は、実施の形態４のマルチリング管理部２１と同様である。障害管理部３１ａは、障害監視部３１１ａ、切替処理部３１２ａおよび出力制御部３１３ａを備える。障害監視部３１１ａは、自ノード情報、共有ノード情報、リング属性情報、マルチリングネットワークにおける障害発生時にＲ−ＡＰＳフレームに格納されている情報、ポート情報（Ｒ−ＡＰＳフレームを受信したポートの情報）から、共有ノードが共有するリングＩＤ＝１，２，３のリングのうちの障害発生リングの有無および共有リンク１０の障害の有無を判別する。
【０１４６】
切替処理部３１２ａは、メジャーリング内に共有リンク以外の障害が発生した場合や、共有リンクに障害が発生後にメジャーリング内に共有リンク以外で障害が発生した場合や、共有リンクを終端するマスタノードとスレーブノードでメジャーリングの情報が一致しない場合や、同じ共有リンクを持つ全てのリングで共有リンク以外の障害が発生した場合などに、サブリングとメジャーリングに対応するリングＩＤを切替える。ただし、本実施の形態では、サブリングが複数存在するため、どのサブリングをメジャーリングに変更するかを決定することになる。複数のサブリングのうち、障害の発生していないリングを選択し、選択したリングが複数の場合には、例えば予め定めた順序（例えば、リングＩＤの若い順）に従って１つのリングを選択してメジャーリングとする。なお、マルチリングにおける障害が各リング内で同時に発生した場合、障害を通知するＲ−ＡＰＳフレームを受信するタイミングが共有リンクの両端の共有ノードで異なるため、メジャーリングとサブリングの認識が両端の共有ノードで異なってしまう場合がある。これを避けるため、共有リンクにおける障害発生時には、スレーブノードが自ノードの共有リンクのメジャー／サブリングの識別情報をマスタノードにおける共有リンクのメジャー／サブリングの識別情報に合わせることで、共有リンクの両端の共有ノードにおけるメジャーリングとサブリングの認識を一致させる。
【０１４７】
また、出力制御部３１３ａは、３つのリングや共有リンクの障害状態や切替処理の結果に基づき、Ｒ−ＡＰＳフレームの転送／送信処理を行う。
【０１４８】
次に、共有ノードのマルチリング管理部２１ｃにおいて、新たに障害を検出した場合の処理について説明する。図４１は、障害を検出した場合のマルチリング管理部２１ｃにおける処理（障害発生処理）手順の一例を示すフローチャートである。なお、共有リンク中間ノードが存在する場合は、この障害発生処理は、共有リンク中間ノード以外の共有ノード、すなわち共有リンクを終端する共有リンク終端ノードが実施する。
【０１４９】
図４１に示すように、マルチリング管理部２１ｃは、まず、Ｍａｊｏｒ側に障害が発生したか否かを判断する（ステップＳ７１）。具体的には、マルチリング管理部２１ｃは、メジャーリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、メジャーリングに障害が発生したか否かを判断する。
【０１５０】
Ｍａｊｏｒ側で障害が発生した場合（ステップＳ７１  Ｙｅｓ）、マルチリング管理部２１ｃは、共有リンク以外で障害が発生したか否かを判断する（ステップＳ７２）。共有リンクで障害が発生したか否かは、保持している共有ノード情報とＲ−ＡＰＳフレームに基づいて判断することができる。共有リンク以外で障害が発生した場合（ステップＳ７２  Ｙｅｓ）、サブリングで障害が発生中であるか否かを判断する（ステップＳ７３）。マルチリング管理部２１ｃは、複数のサブリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、複数のサブリングの障害発生状態を管理しており、これにより、サブリングで障害が発生中であるか否かを判断することができる。
【０１５１】
全てのサブリングで障害が発生中でない（障害が発生していないサブリングがある）場合（ステップＳ７３  Ｎｏ）、マルチリング管理部２１ｃは、障害が発生していないサブリングに対し、ＭａｊｏｒとＳｕｂを切替える（ステップＳ７４）。すなわち、図２９の状態であった場合に、メジャーリングであるリングＩＤ＝１のリングをサブリングに変更し、サブリングであるリングＩＤ＝２のリングをメジャーリングに変更する。
【０１５２】
全てのサブリングで障害が発生中である場合（ステップＳ７３  Ｙｅｓ）、共有リンクに属する全てのリングにおいて、共有リンク以外で障害が発生しているため、予め決められている優先度の高いリングＩＤを持つリングをメジャーリングとし（ステップＳ８１）、ステップＳ７９へ進む。例えば、リングＩＤの優先度が（リングＩＤ＝１）＞（リングＩＤ＝２）＞（リングＩＤ＝３）とすると、リングＩＤ＝１がメジャーリング、リングＩＤ＝２、３がサブリングとする。
【０１５３】
ステップＳ７４の後、共有リンクで障害が発生したか否かを判断し（ステップＳ７５）、共有リンクで障害が発生した場合（ステップＳ７５  Ｙｅｓ）、自らのノードが共有リンクマスタノードかスレーブノードかを判断する（ステップＳ７６）。共有リンクマスタノードでない（スレーブノードである）場合（ステップＳ７６  Ｎｏ）は、マスタノードから共有リンクの障害によるＲ−ＡＰＳフレームを受信したが否かを判断する（ステップＳ７７）。マスタノードから共有リンクの障害によるＲ−ＡＰＳフレームを受信した場合（ステップＳ７７  Ｙｅｓ）、メジャーリングを共有リンクマスタノードと同じリングＩＤとする（ステップＳ７８）。メジャーリングの識別は、マスタノードから共有リンクの障害により受信したＲ−ＡＰＳフレームに格納している情報により判断することとする。ステップＳ７７で、マスタノードから共有リンクの障害によるＲ−ＡＰＳフレームを受信していないと判断した場合（ステップＳ７７  Ｎｏ）、ステップＳ７７へ戻る。
【０１５４】
上記により、共有リンクの障害を管理するメジャーリングが共有リンクマスタノードとスレーブノードで一致した後、メジャーリングのＥＲＰポートのＦＤＢをクリアし、サブリングからメジャーリングへのＲ−ＡＰＳフレームの転送機能を有効にする（ステップＳ７９）。また、両リングでこの転送機能を有効にすることにより、共有リンクに障害が発生したことによりサブリング側で共有リンクの障害により転送できないフレームをメジャーリング経由で転送することができる。なお、各リングでは、通常と同様に初期状態では受信したフレームとポート番号をＦＤＢに登録し、ＦＤＢを用いて転送を行っているとする。
【０１５５】
次に、マルチリング管理部２１ｃは、各リングでそれぞれＥＲＰステートマシンに従って処理を実施し、処理を終了する（ステップＳ８０）。ＥＲＰステートマシンに従った処理は、従来と同様であるため詳細な説明は省略する。
【０１５６】
Ｍａｊｏｒ側で障害が発生していない場合（ステップＳ７１  Ｎｏ）は、ステップＳ８０へ進み、各リングでそれぞれのＥＲＰステートマシンに従い処理する。また、ステップＳ７２で、メジャーリングの共有リンク以外で障害が発生していない場合（ステップＳ７２  Ｎｏ）、ステップＳ７５へ進む。ステップＳ７５で、共有リンクで障害が発生していない場合（ステップＳ７５  Ｎｏ）、ステップＳ８０へ進む。ステップＳ７６で、共有リンクマスタノードであると判断した場合（ステップＳ７６  Ｙｅｓ）、ステップＳ７９へ進む。
【０１５７】
次に、本実施の形態における各ノードの動作について説明する。初めに、マルチリングネットワーク内に障害が発生していない場合の動作について説明する。予めリングＩＤ＝１，２，３のリングの何れかをメジャーリング、残りのリングをサブリングに設定する。ここでは、図３９のようにリングＩＤ＝１のリングをメジャーリングに設定し、リングＩＤ＝２，３のリングをサブリングに設定しているとする。図３９に示すように、各リングのＲＰＬオーナーであるノード２とノード６、ノード８の一方のポートが閉塞され、障害検出なしであるＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが各ＲＰＬオーナーから送信される。ノード１，４の共有ノードは、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、Ｒ−ＡＰＳフレームに格納されたリングＩＤのリングのＥＲＰ処理を実施した後、共有リンク１０が接続されるポートに当該フレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、同様に該当のリングＩＤのＥＲＰ処理を実施後、転送先のリングが接続されるポートに転送する。
【０１５８】
次に、図２７に示した、サブリングであるリングＩＤ＝３のリングのノード１とノード８の間と、サブリングであるリングＩＤ＝２のリングのノード４とノード５の間と、に障害が発生した例について説明する。図２７の例では、メジャーリング側は障害が発生していないため、リングのＲＰＬオーナーであるノード２の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームがＲＰＬオーナーから送信される。一方、サブリング側はノード４，５間、ノード１，８間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード４，５，１，８から送信され、ＲＰＬオーナーであるノード６，８の閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、フレーム内のリングＩＤのリングのＥＲＰ処理を実施した後、共有リンク１０が接続されるポートに当該フレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、同様にフレーム内のリングＩＤのＥＲＰ処理を実施後、当該リングＩＤのリングに接続するポートに転送する。
【０１５９】
以上のように、障害がない場合と、サブリングに障害が発生した場合とについては、リングＩＤを判別する以外は、各リングにて通常の単一リングのＥＲＰと同様に動作することとなる。
【０１６０】
次に、図２８に示した、サブリングに障害が発生後、共有リンクで障害が発生した例について説明する。図２８では、図２７に示したようにサブリングに障害が発生した後に、さらに共有リンク１０に障害が発生した例を示している。図２８に示すように、共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞し、メジャーリングのＲＰＬオーナーであるノード２の一方のポートの閉塞が解除される。また、共有ノードが、サブリング側のＲ−ＡＰＳフレームを受信した場合は、共有リンク１０に障害が発生しているため、メジャーリング側に転送することになる。このような多重障害時にも各ノード間の通信は可能である。
【０１６１】
次に、図２９に示した、メジャーリング内で障害が発生した例について説明する。図２９は、メジャーリングであるリングＩＤ＝１のノード３とノード４の間に障害が発生した例を示している。図２９に示すように、サブリングであるリングＩＤ＝２，３のリングでは障害が発生していないため、リングのＲＰＬオーナーであるノード６，８の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリングでは、ノード３，４間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード３，４から送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４は、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリング側で障害が発生したと認識し、図４１のフローに従い、リングＩＤ＝１とリングＩＤ＝２のリングの間でメジャーとサブを切替える。そして、受信したＲ−ＡＰＳフレームに対して当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施し、切替後のメジャーサブ識別情報を付与し、共有リンク１０が接続されるポートにＲ−ＡＰＳフレームを転送する。自ノードで障害を検出した場合は、障害に対応するリングに、切替後のメジャーサブ識別情報を付与した障害発生を通知するＲ−ＡＰＳフレームを送信する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、当該フレーム内のメジャーサブ識別情報が切替前の情報であった場合は、切替後の値に更新し、当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施した後、当該リングＩＤのリングに接続するポートに転送する。
【０１６２】
次に、図３０に示した、図２９に示した障害によりサブリングとメジャーリングの切替の後、共有リンク１０に障害が発生し、さらにメジャーリングで障害が発生した例について説明する。図３０は、図２９で説明したようにメジャーリングの障害発生により切替を行い、さらに、共有リンク１０に障害が発生し、さらにその後、メジャーリングのノード４，５間で障害が発生した例を示している。共有リンク１０に障害が発生すると、共有ノードであるノード１，４の共有リンク１０側のポートが閉塞する。共有リンクの障害を通知するＲ−ＡＰＳフレームが共有リンクマスタノードであるノード１から新たなメジャーリング側であるリングＩＤ＝２に送信され、ＲＰＬオーナーであるノード６のデフォルトの閉塞ポートは閉塞解除される。共有リンクスレーブノードであるノード４では、ノード１からの共有リンクの障害を通知するＲ−ＡＰＳフレームを受信するまでは、共有リンクの障害を通知するＲ−ＡＰＳフレームを転送しない。共有ノードであるノード１，４は、共有リンク１０の障害検出により、図４１のフローに従い、サブリングであるリングＩＤ＝１のリング側からＲ−ＡＰＳフレームを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝２のリング側に当該フレームを転送する。
【０１６３】
さらにその後、図３０に示すように、メジャーリングのノード４，５に障害が発生すると、リングＩＤ＝２とリングＩＤ＝３のリングの間でメジャーとサブを切替える。これにより、切替後のメジャーリングのＲＰＬオーナーであるノード８の一方のポートの閉塞が解除される。また、共有ノードがサブリングであるリングＩＤ＝１，２のリングからＲ−ＡＰＳフレームを受信した場合は、共有リンク１０で障害が発生しているため、メジャーリングであるリングＩＤ＝３のリング側に転送することになる。このような多重障害時にも各ノード間の通信は可能である。
【０１６４】
次に、図３１に示した、障害無しの状態から共有リンク１０で障害が発生した例について説明する。図３１の例では、図３９に示した障害無しの状態から、共有リンク１０に障害が発生した例を示している。図３１に示すように、サブリングであるリングＩＤ＝２，３のリングでは障害が発生していないため、リングのＲＰＬオーナーであるノード６，８の一方のポートが閉塞され、障害検出なしを意味するＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが送信される。一方、メジャーリングであるリングＩＤ＝１のリングでは、共有ノードであるノード１，４間で障害が発生しているため、障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームが共有リンクマスタノードであるノード１から送信され、ＲＰＬオーナーであるノード２のデフォルトの閉塞ポートは閉塞解除される。共有リンクスレーブノードであるノード４では、ノード１からの共有リンクの障害を通知するＲ−ＡＰＳフレームを受信するまでは、共有リンクの障害を通知するＲ−ＡＰＳフレームを転送しない。共有ノードであるノード１，４は、共有リンク１０の障害検出により、図４１のフローに従い、サブリングであるリングＩＤ＝２のリングからＲ−ＡＰＳを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝１のリングにＲ−ＡＰＳフレームを転送する。
【０１６５】
共有リンク１０に障害が発生後、サブリングに障害が発生し、マルチリングネットワーク内で多重障害が発生した場合は図２８と同じ状態になり、このような多重障害時にも各ノード間の通信は可能である。
【０１６６】
次に、図３２に示した、共有リンク１０に障害が発生した後、メジャーリングに障害が発生した例について説明する。図３２は、図３１に示したように共有リンク１０に障害が発生後、メジャーリングであるリングＩＤ＝１のリングのノード１，２間に障害が発生した例を示している。共有リンクはメジャーリングで障害処理を行うことになっているが、新たにメジャーリングの共有リンク以外の場所であるノード１，２間で障害が発生すると、ノード１，２の障害を検出したポートが閉塞し、ノード１，２からＲ−ＡＰＳ（ＳＦ）フレームがメジャーリングに送信される。この時、共有ノードであるノード１，４は、リングＩＤ＝１のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリングの多重障害と判断し、図４１のフローに従い、リングＩＤ＝１とリングＩＤ＝２のリングの間でメジャーリングとサブリングを切替える。これにより、リングＩＤ＝２のリングがメジャーリングとなり、共有ノードであるノード１，４から、共有リンクにおける障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝２のリング側のポートに対し出力され、リングＩＤ＝２のリング側のＲＰＬオーナーであるノード６の閉塞が解除される。また、ノード１，４では、リングＩＤ＝１のリング側のポートから受信したＲ−ＡＰＳフレームは、共有リンクで障害が発生しているため、リングＩＤ＝２のリング側に転送される。
【０１６７】
次に、図３３に示した、図３２の障害発生の後、さらにメジャーリングで障害が発生した例について説明する。図３３は、共有リンク１０に障害が発生後、メジャーリングであるリングＩＤ＝１のリングのノード１，２間に障害が発生し、さらにその時点でのメジャーリングであるリングＩＤ＝２のリングのノード４，５間に障害が発生した例を示している。共有リンクはメジャーリングで障害処理を行うことになっているが、新たにメジャーリングの共有リンク以外の場所であるノード４，５間で障害が発生すると、ノード４，５の障害を検出したポートが閉塞し、ノード４，５からＲ−ＡＰＳ（ＳＦ）フレームがメジャーリングであるリングＩＤ＝２のリングに送信される。この時、共有ノードであるノード１，４は、リングＩＤ＝２のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは自ノードの障害検出により、メジャーリングの多重障害と判断し、図４１のフローに従い、リングＩＤ＝２とリングＩＤ＝３のリングの間でメジャーリングとサブリングを切替える。これにより、リングＩＤ＝３のリングがメジャーリングとなり、共有ノードであるノード１，４から、共有リンク１０における障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝３側のポートに対し出力され、リングＩＤ＝３のリングのＲＰＬオーナーであるノード８の閉塞が解除される。また、ノード１，４は、共有リンク１０で障害が発生しているため、リングＩＤ＝１，２のリング側のポートから受信したＲ−ＡＰＳフレームは、リングＩＤ＝３側に転送される。以上のような多重障害時にも各ノード間の通信が可能である。
【０１６８】
図４２は、共有リンク以外の全てのリングで障害が同時に発生した様子を示す図である。リングＩＤ＝１のノード１，２間、リングＩＤ＝２のノード４，５間、リングＩＤ＝３のノード７，８間で障害が同時に発生すると、図４２に示すように、障害検出ポートが閉塞される。Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，２、４，５、７，８から送信され、ＲＰＬオーナーであるノード２とノード６のデフォルトの閉塞ポートは閉塞解除される。共有マスタノードであるノード１は、自ノードの障害検出により、メジャーリング側のリングＩＤ＝１で障害が発生したと認識し、図４１のフローに従い、メジャーリングをリングＩＤ＝２に切り替える。ノード共有スレーブノードであるノード４は、自ノードの障害検出により、メジャーリング側のリングＩＤ＝２で障害が発生したと認識し、図４１のフローに従い、メジャーリングをリングＩＤ＝１のままとする。この時点では、共有ノードであるノード１と４とではメジャーリングのリングＩＤが異なることになる。
【０１６９】
その後、ノード１、ノード４共に、全てのリングで共有リンク以外の障害が発生したと認識し、図４１のフローに従い、リングＩＤ＝１を予め優先度が高いリングとした場合、ノード１はメジャーリングをリングＩＤ＝１に切り替え、ノード４はメジャーリングをリングＩＤ＝１のままとすることで、共有マスタノードと共有スレーブノードのメジャーリングが一致する。共有ノードでは各リングに対して当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施し（例えば、リングＩＤ＝１のリングであればＥＲＰ処理部２２−１がＥＲＰ処理を実施し）、新たな（切替後の）メジャーリングかサブリングかを識別する情報（メジャーサブ識別情報）を付与し、共有リンク１０が接続されるポートにＲ−ＡＰＳフレームを転送する。また、共有リンク１０から受信したＲ−ＡＰＳフレームに対しても、当該フレーム内のメジャーサブ識別情報が切替前の情報であった場合は、切替後の値に更新し、当該フレームのリングＩＤに対応するリングのＥＲＰ処理を実施した後、当該リングＩＤのリングに接続するポートに転送する。
【０１７０】
以上のように、本実施の形態では、１つの共有リンクを３つのリングが共有する構成を例にして、実施の形態４と同様に、共有リンクで障害が発生した場合に、共有リンクマスタノードのメジャーリングのリングＩＤを共有リンクスレーブノードでもメジャーリングとして設定するようにした。また、全てのリングで共有リンク以外で多重障害が同時に発生した場合に、予め優先度を設定し、優先度の高いリングＩＤをメジャーリングとすることとした。このため、共有リンクを終端する共有リンクマスタノードと共有リンクスレーブノードで、共有リンクの障害を管理するメジャーリングのリングＩＤが一致し、共有リンクの障害時に、正常に迂回路を設定することができ、多重障害が発生した場合でも通信を継続することができる。また、この切替をＲ−ＡＰＳフレーム内のＲｅｓｅｒｖｅｄ  ２のフィールドを用いて指示することにより、少ない回路や処理量で上記の効果を得ることができる。
【０１７１】
実施の形態６．
図４３は、本発明にかかるマルチリングネットワークの実施の形態６の構成例を示す図である。図４３に示すように、本実施の形態のマルチリングネットワークは、リングＩＤ＝１のリング、リングＩＤ＝２のリングおよびリングＩＤ＝３のリングを備える。図４３に示すマルチリングネットワークでは、共有リンク１０−１と共有リンク１０−２の２か所の共有リンクが存在する。ここでは、あらかじめ、共有リンク１０−１については、リングＩＤ＝１のリングをメジャーリングとし、リングＩＤ＝２のリングをサブリングとして設定し、共有リンク１０−２については、リングＩＤ＝２のリングをメジャーリングとし、リングＩＤ＝３のリングをサブリングとして設定している。
【０１７２】
リングＩＤ＝１のリングは、ノード１，２，３，４を有し、リングＩＤ＝２のリングは、ノード１，４，５，６を有し、リングＩＤ＝３のリングは、ノード５，６，７，８を有する。これら３つのリングは、リングＩＤ＝１，２で互いに共有する共有ノードであるノード１，４と、リングＩＤ＝２，３で互いに共有する共有ノードであるノード５，６とを介して、互いのリングが接続される。なお、図４３では、４つの共有ノードを含む８つのノードを有するマルチリングネットワークについて示すが、各リングに接続されるノード数はこれに限られない。また、図４３では、３つのリングネットワークが接続された構造について示したが、本実施の形態は４つ以上のリングネットワークが接続された構造についても適用可能である。更に、共有リンクに３つ以上の共有ノードが接続される場合についても適用可能である。
【０１７３】
各ノード１〜８は、複数のポートを有している。隣接するノードのポート間を接続してリングを形成し、マルチリングネットワークが構成される。図４３に示すマルチリングネットワークでは、共有ノードであるノード１，４，５，６は３つ以上のポートを有し、それ以外のノード２，３，７，８は２つ以上のポートを有している。
【０１７４】
ノード２，６，８はＥＲＰのＲＰＬオーナーのノード、それ以外のノード１,３，４，５，７は、ＥＲＰの非ＲＰＬオーナーのノードとして動作する。ここでは、ＲＰＬオーナーの設定や閉塞ポートの設定や解除については、従来技術であるＥＲＰ規格に沿った動作を行うこととする。
【０１７５】
リングＩＤ＝１，２，３の各リングは、実施の形態１のリングＩＤ＝１，２のリングと同様に、内部でループフレームが発生しない様に、各リングネットワーク内の特定の１つのリンクを論理的に切断した状態で動作させる。図４３に示すリングネットワークでは、ノード２のノード３側のポート、ノード６のノード１側のポート、および、ノード８のノード７側のポートをＢＰに設定している。
【０１７６】
本実施の形態のノード１，４，５，６は、図２，３で示したように実施の形態１の共有ノード（共有リンク終端ノード）と同様の構成を有する。本実施の形態の共有ノード以外のノード（ノード２，３，７，８）の構成も、実施の形態１の共有ノード以外のノードと同様である。
【０１７７】
図４４は、本実施の形態における障害状態を通知するＲ−ＡＰＳフレームのフォーマットの一例を示す図である。図４４に示すように、ＩＴＵ−Ｔ  Ｇ．８０３２で規定されたＥＲＰのＲ−ＡＰＳフレームに、従来の送信元のノードＩＤや閉塞ポート情報に加えて、実施の形態１で示したメジャーリングかサブリングかの識別ビットであるメジャーサブ識別情報（図４４中のＭ／Ｓ）と送信元のノードが所属するリングを示すリングＩＤ（図４４中のＲｉｎｇ  ＩＤ）に加え、複数のリングにおいて共有リンクで多重障害が発生した場合でも経路切替により通信を継続可能なリングに対してメジャーサブを切り替えるためのメジャーサブ切替要求情報（図４４中のＲｅｑ）をＲｅｓｅｒｖｅｄ  ２の領域に追加している。本実施の形態で追加する情報は、図４４でハッチングして示している。
【０１７８】
次に、本実施の形態の共有リンク終端ノードであるノード１，４，５，６のマルチリング管理部２１ｄの機能について説明する。図４５は、本実施の形態の共有ノードのマルチリング管理部２１ｄの構成例を示す図である。マルチリング管理部２１ｃは、障害管理部３１、自ノード情報管理部３２と、共有ノード情報管理部３３、リング属性情報管理部３４、全リング情報管理部３５を備える。自ノード情報管理部３２は、共有ノード（自ノード）が共有するリングネットワークの複数のリングＩＤに対し、メジャーリングのリングＩＤとメジャーリングに接続するポートのポート番号、サブリングのリングＩＤとサブリングに接続するポートのポート番号、共有リンクに接続するポートのポート番号などの自ノードに関する情報である自ノード情報を管理する。なお、ＩＴＵ−Ｔ  Ｇ．８０３２のマルチリングネットワークと同様に、メジャーリングとは、共有リンクの障害を認識するリングであり、サブリングとは、共有リンクの障害を認識しないリングである。
【０１７９】
また、マルチリング管理部２１ｄの共有ノード情報管理部３３は、共有リンクの反対側で共有リンクを終端する共有ノード（図４３の例では、ノード１からみた場合ノード４、ノード４からみた場合ノード１、ノード５から見た場合ノード６、ノード６から見た場合ノード５）のノードＩＤと当該共有ノードに接続するポート番号などのポートを識別する情報や、共有リンクに接続されるが共有リンクを終端しない共有リンク中間ノードのノードＩＤなどの他の共有ノードに関する情報である共有ノード情報を管理する。なお、図４３の例では共有中間ノードは存在しないが、ノード１とノード４、ノード５とノード６の間に共有リンク１０−１、１０−２の接続する共有リンク中間ノードを備えていてもよい。
【０１８０】
また、マルチリング管理部２１ｄのリング属性情報管理部３４は、自ノードと共有リンクの反対側で共有リンクを終端する共有ノードにおいて、一方を共有リンクマスタノード（以下、マスタノード）、もう一方を共有リンクスレーブノード（以下、スレーブノード）と設定することにより、スレーブノードの共有リンクの障害を管理するメジャーリングのリングＩＤ情報をマスタノードのメジャーリングのリングＩＤ情報に一致するように制御するために共有ノードに必要な情報である、自ノードがマスタノードかスレーブノードかを識別するリング属性情報を管理する。
【０１８１】
また、マルチリング管理部２１ｄの全リング情報管理部３５は、複数の共有リンクの障害を含む多重障害が発生した場合でも、可能な限り通信を継続するために、マルチリングで構成されるネットワークの全てのリングの接続順序および経路切替可能なリングの障害有無情報を管理する。図４６は、リング管理テーブルの一例を示す図である。全リング情報管理部３５は、マルチリングで構成されるネットワークの全てのリングについて、例えば図４６のようにリングＩＤの順序と、各リングの障害有無（経路切替可否）と常時管理するテーブルなどを持つこととする。リングＩＤの接続順序については、何らかの手段により設定されることとする。各リングの障害の有無は、各リングから周期的に受信するＲ−ＡＰＳフレームを監視し、Ｒ−ＡＰＳ（ＮＲ，ＲＢ）を複数のポートから周期的に受信したリングについては障害なし、Ｒ−ＡＰＳ（ＳＦ）を周期的に受信したリングについては障害あり、Ｒ−ＡＰＳを受信しないリングについては不明と判断する。
【０１８２】
マルチリング管理部２１ｄの障害管理部３１は、これらの自ノード情報、共有ノード情報、リング属性情報、全リング情報、マルチリングネットワークにおける障害状態をネットワーク内に転送するＲ−ＡＰＳフレームに格納されている情報（障害の有無や障害を検出したリングＩＤやノードＩＤ）、ポート情報（障害を検出したポートの情報）から、障害発生リングの有無、および共有リンクの障害の有無を判別する障害監視部３１１を備える。
【０１８３】
また、障害管理部３１は、メジャーリング内に共有リンク以外の障害が発生した場合や、共有リンクに障害が発生後にメジャーリング内に共有リンク以外で障害が発生した場合や、共有リンクを終端するマスタノードとスレーブノードでメジャーリングの情報が一致しない場合などに、サブリングとメジャーリングに対応するリングＩＤを切替える切替処理部３１２を備える。各リンクの障害発生確率が同じであるとすると、前者の場合（メジャーリング内に共有リンク以外の障害が発生した場合）は、メジャーリングとなるリングを変更する（メジャーリングとするリングＩＤを変更する）ことにより、１つのリングで共有リンクを含む多重障害の発生する確率を低くすることができる。なお、マルチリングにおける障害が各リング内で同時に発生した場合、障害を通知するＲ−ＡＰＳフレームを受信するタイミングが共有リンクの両端の共有ノードで異なるため、メジャーリングとサブリングの認識が両端の共有ノードで異なってしまう場合がある。これを避けるため、共有リンクにおける障害発生時には、スレーブノードが自ノードの共有リンクのメジャー／サブリングの識別情報をマスタノードにおける共有リンクのメジャー／サブリングの識別情報に合わせることで、共有リンクの両端の共有ノードにおけるメジャーリングとサブリングの認識を一致させる。
【０１８４】
また、マルチリング管理部２１ｄの障害管理部３１では、受信するＲ−ＡＰＳフレームを常時監視し、全リング情報管理部に通知する。
【０１８５】
また、マルチリング管理部２１ｄの障害管理部３１は、全リングや共有リンクの障害状態や切替処理の結果に基づき、Ｒ−ＡＰＳフレームの転送／送信処理を行う出力制御部３１３を備える。
【０１８６】
次に、共有ノードのマルチリング管理部２１ｄにおいて、新たに障害を検出した場合の処理について説明する。図４７は、障害を検出した場合のマルチリング管理部２１ｄにおける処理（障害発生処理）手順の一例を示すフローチャートである。なお、共有リンク中間ノードが存在する場合は、この障害発生処理は、共有リンク中間ノード以外の共有ノード、すなわち共有リンクを終端する共有リンク終端ノードが実施する。
【０１８７】
図４７に示すように、マルチリング管理部２１ｄは、まず、Ｍａｊｏｒ側に障害が発生したか否かを判断する（ステップＳ９１）。具体的には、マルチリング管理部２１ｄは、メジャーリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、メジャーリングに障害が発生したか否かを判断する。
【０１８８】
Ｍａｊｏｒ側で障害が発生した場合（ステップＳ９１  Ｙｅｓ）、マルチリング管理部２１ｄは、共有リンク以外で障害が発生したか否かを判断する（ステップＳ９２）。共有リンクで障害が発生したか否かは、保持している共有ノード情報とＲ−ＡＰＳフレームに基づいて判断することができる。共有リンク以外で障害が発生した場合（ステップＳ９２  Ｙｅｓ）、サブリングで障害が発生中であるか否かを判断する（ステップＳ９３）。マルチリング管理部２１ｄは、サブリングに属するノードから受信したＲ−ＡＰＳフレームに基づいて、サブリングに障害発生状態を管理しており、これにより、サブリングで障害が発生中であるか否かを判断することができる。
【０１８９】
サブリングで障害が発生中でない場合（ステップＳ９３  Ｎｏ）、マルチリング管理部２１ｄは、ＭａｊｏｒとＳｕｂを切替える（ステップＳ９４）。すなわち、図４３の状態であった場合に、メジャーリングであるリングＩＤ＝１のリングをサブリングに変更し、サブリングであるリングＩＤ＝２のリングをメジャーリングに変更する。
【０１９０】
サブリングでも障害が発生中である場合（ステップＳ９３  Ｙｅｓ）、共有リンクで障害が発生していないか否か判断する（ステップＳ１０１）。共有リンクで障害が発生していない場合（ステップＳ１０１  Ｎｏ）は、共有リンクに属する両方のリングにおいて、共有リンク以外で障害が発生しているため、予め決められている優先度の高いリングＩＤを持つリングをメジャーリングとする（ステップＳ１０６）。例えば、リングＩＤの優先度が（リングＩＤ＝１）＞（リングＩＤ＝２）とすると、リングＩＤ＝１がメジャーリング、リングＩＤ＝２がサブリングとする。共有リンクで障害が発生していた場合（ステップＳ１０１  Ｙｅｓ）は、経路切り替え可能なリングがあるか否かを判断する（ステップＳ１０２）。具体的には、リング管理テーブルに基づいて障害が発生しておらず迂回路となるリングがあるか否かを判断する。経路切り替え可能なリングがある場合（ステップＳ１０２  Ｙｅｓ）は、ＭａｊｏｒとＳｕｂを切替える（ステップＳ１０３）。そして、自身が共有リンクマスタノードであるか否かを判断し（ステップＳ１０４）、共有リンクマスタノードである場合（ステップＳ１０４  Ｙｅｓ）、障害が発生したリングのＥＲＰポートのＦＤＢをクリアし、経路切り替え要求を有効にしたＲ−ＡＰＳフレームを経路切り替え可能なリングの共有リンクマスタノードが接続されるポートに対して転送し（ステップＳ１０５）、ステップＳ１００へ進む。
【０１９１】
サブリングでも障害が発生中でない場合（ステップＳ９３  Ｎｏ）、図３６のステップＳ４４〜Ｓ５０と同様のステップＳ９４〜ステップＳ１００を実施する。経路切り替え可能なリングがない場合（ステップＳ１０２  Ｎｏ）は、ステップＳ９６へ進む。
【０１９２】
上記により、複数の共有リンクの多重障害で、かつ、リング内の多重障害が発生した場合でも、遠隔のリングで経路を切り替えることにより、複数の共有リンクのＭａｊｏｒとＳｕｂを切替ることで、通信を継続することができる。
【０１９３】
上記により、共有リンクの障害を管理するメジャーリングが共有リンクマスタノードとスレーブノードで一致した後、両リングのＥＲＰポートのＦＤＢをクリアし、サブリングからメジャーリングへのＲ−ＡＰＳフレームの転送機能を有効にする。また、両リングでこの転送機能を有効にすることにより、共有リンクに障害が発生したことによりサブリング側で共有リンクの障害により転送できないフレームをメジャーリング経由で転送することができる。なお、各リングでは、通常と同様に初期状態では受信したフレームとポート番号をＦＤＢに登録し、ＦＤＢを用いて転送を行っているとする。
【０１９４】
次に、本実施の形態の動作例について説明する。初めに、マルチリングネットワーク内に障害が発生していない場合の動作について説明する。図４３に示すように、各リングのＲＰＬオーナーであるノード２、ノード６、ノード８の一方のポートが閉塞され、障害検出なしであるＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームが各ＲＰＬオーナーから送信される。ノード１，４，５，６の共有ノードは、各リングに接続されるポートから入力されたＲ−ＡＰＳフレームに対して、Ｒ−ＡＰＳフレームに格納されたリングＩＤのＥＲＰ処理を実施した後、共有リンク（共有リンク１０−１または１０−２）が接続されるポートに当該フレームを転送する。また、共有リンク１０−１，１０−２から受信したＲ−ＡＰＳフレームに対しても、同様に該当のＲ−ＡＰＳフレームに格納されたリングＩＤのＥＲＰ処理を実施した後、転送先のリングが接続されるポートに転送する。
【０１９５】
次に、マルチリングネットワーク内で障害が発生した場合の動作について説明する。図４８は、共有リンク１０−１と共有リンク１０−２の障害が発生した様子を示す図である。図４８に示すように、共有リンク１０−１と共有リンク１０−２に障害が発生した場合、共有リンク１０−１のメジャーリングであるリングＩＤ＝１と共有リンク１０−２のメジャーリングであるリングＩＤ＝２とでは共有リンク１０−１のノード１，４間、共有リンク１０−２のノード５，６間で障害が発生しているため、各リングにて障害検出ポートで閉塞され、Ｒ−ＡＰＳ（ＳＦ）フレームがノード１，４、５，６から送信され、ＲＰＬオーナーであるノード８のデフォルトの閉塞ポートは閉塞解除される。共有ノードであるノード１，４、５，６は、共有リンク１０−１，１０−２の障害検出により、図４７のフローに従い、各リングでのサブリングであるリングＩＤ＝２、３のリング側からＲ−ＡＰＳフレームを受信すると、ＥＲＰ処理を実施し、メジャーリングであるリングＩＤ＝１，２のリング側にＲ−ＡＰＳフレームを転送する。
【０１９６】
図４９は、２つの共有リンク１０−１，１０−２に障害が発生後、共有リンク１０−１に対するメジャーリングに障害が発生した様子を示す図である。図４９は、図４８で示したように共有リンク１０−１，１０−２の障害発生後、さらに、共有リンク１０−１に対するメジャーリングのノード３，４間で障害が発生した例を示している。共有リンクはメジャーリングで障害処理を行うことになっているが、新たに共有リンク１０−１のメジャーリングの共有リンク１０−１以外の場所であるノード３，４間で障害が発生すると、ノード３，４の障害を検出したポートが閉塞し、ノード３，４からＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝１のリングに送信される。この時、共有ノードであるノード１，４は、リングＩＤ＝１のリングに接続されるポートから入力されたＲ−ＡＰＳフレームまたは障害検出により、メジャーリングの多重障害と判断し、図４７のフローに従い、経路切り替え可能なリングがあるか否か判断する。図４８において、共有ノードであるノード１，４では、リングＩＤ＝３のＲ−ＡＰＳ（ＮＲ，ＲＢ）を共有リンク１０−１が接続されるポート以外の２つのポートから受信しており、各共有ノードの図４６に示す全リングのリング管理テーブルでは、リングＩＤ＝３は障害がなく、経路切り替えが可能なリングであると判断し、共有リンク１０−１に対するメジャーリングとサブリングを切替え、共有リンクマスタノードであるノード１からノード６側に、メジャーリングの障害を検出用で経路切り替え要求が有効であることを示す情報を格納したＲ−ＡＰＳ（ＳＦ）が転送され、共有リンク１０−２の共有ノード６が受信する。
【０１９７】
ノード６は、共有リンク１０−２のメジャーリングであるリングＩＤ＝２のリングの共有リンク１０−２以外の障害を検出し、図４７のフローに従い、共有リンク１０−２に対するメジャーリングとサブリングを切替える。これにより、共有リンク１０−２に対しては、リングＩＤ＝３のリングがメジャーリングとなり、共有ノードであるノード５，６から、共有リンク１０−２における障害検出用のＲ−ＡＰＳ（ＳＦ）フレームがリングＩＤ＝３のリング側のポートに対し出力され、リングＩＤ＝３のリングのＲＰＬオーナーであるノード８が受信し、図４９に示すように閉塞ポートを閉塞解除する。共有ノードであるノード１，４では、リングＩＤ＝１のリング側のポートから受信したＲ−ＡＰＳフレームは、共有リンク１０−１で障害が発生しているため、リングＩＤ＝２のリング側に転送される。また、ノード５，６でリングＩＤ＝２のリング側のポートから受信したＲ−ＡＰＳフレームは、共有リンク１０−２で障害が発生しているため、リングＩＤ＝３のリング側に転送される。このような多重障害時にも各ノード間の通信が可能である。
【０１９８】
以上のように、本実施の形態では、３つのリングが２つの共有リンクにより接続される構成を例にして、２つの共有リンクで障害が発生し、かつメジャーリングの共有リンク以外の障害を検出した場合に、各共有ノードでメジャーリングとサブリングを切替える動作を示した。このように、３つのリングが２つの共有リンクにより接続される場合にも、メジャーリング内で共有リンクを含む多重障害が発生した場合に、迂回路を設定することができ、通信を継続することができる。
【産業上の利用可能性】
【０１９９】
以上のように、本発明にかかる通信システム、通信装置およびプロテクション方法は、マルチリングネットワークに有用である。
【符号の説明】
【０２００】
１〜８  ノード、１０，１０−１，１０−２  共有リンク、１１−１〜１１−ｎ  入力処理部、１２  多重部、１３  転送先管理部、１４，１４ａ，１４ｂ  ＥＲＰ制御部、１５  バッファメモリ、１６  バッファ制御部、１７−１〜１７−ｎ  出力処理部、２１，２１ａ，２１ｂ，２１ｃ  マルチリング管理部、２２−１〜２２−３，２５  ＥＲＰ処理部、２３，３２  自ノード情報管理部、２４  フレーム識別部、３１，３１ａ  障害管理部、３３  共有ノード情報管理部、３４  リング属性情報管理部、３５  全リング情報管理部、３１１，３１１ａ  障害監視部、３１２，３１２ａ  切替処理部、３１３，３１３ａ  出力制御部。
【図１】
0005955461.tif 000002
【図２】
0005955461.tif 000003
【図３】
0005955461.tif 000004
【図４】
0005955461.tif 000005
【図５】
0005955461.tif 000006
【図６】
0005955461.tif 000007
【図７】
0005955461.tif 000008
【図８】
0005955461.tif 000009
【図９】
0005955461.tif 000010
【図１０】
0005955461.tif 000011
【図１１】
0005955461.tif 000012
【図１２】
0005955461.tif 000013
【図１３】
0005955461.tif 000014
【図１４】
0005955461.tif 000015
【図１５】
0005955461.tif 000016
【図１６】
0005955461.tif 000017
【図１７】
0005955461.tif 000018
【図１８】
0005955461.tif 000019
【図１９】
0005955461.tif 000020
【図２０】
0005955461.tif 000021
【図２１】
0005955461.tif 000022
【図２２】
0005955461.tif 000023
【図２３】
0005955461.tif 000024
【図２４】
0005955461.tif 000025
【図２５】
0005955461.tif 000026
【図２６】
0005955461.tif 000027
【図２７】
0005955461.tif 000028
【図２８】
0005955461.tif 000029
【図２９】
0005955461.tif 000030
【図３０】
0005955461.tif 000031
【図３１】
0005955461.tif 000032
【図３２】
0005955461.tif 000033
【図３３】
0005955461.tif 000034
【図３４】
0005955461.tif 000035
【図３５】
0005955461.tif 000036
【図３６】
0005955461.tif 000037
【図３７】
0005955461.tif 000038
【図３８】
0005955461.tif 000039
【図３９】
0005955461.tif 000040
【図４０】
0005955461.tif 000041
【図４１】
0005955461.tif 000042
【図４２】
0005955461.tif 000043
【図４３】
0005955461.tif 000044
【図４４】
0005955461.tif 000045
【図４５】
0005955461.tif 000046
【図４６】
0005955461.tif 000047
【図４７】
0005955461.tif 000048
【図４８】
0005955461.tif 000049
【図４９】
0005955461.tif 000050