(57)【要約】【課題】経路制御部の再起動中に光スイッチ部に障害が発生したとき、そのままプロテクション処理を適用すると、不整合が生じて障害を復旧させることができない。【解決手段】データを転送する経路を設定する経路制御部と経路制御部に接続されるデータ転送部とを含むネットワークシステムであって、データ転送部は、経路制御部の指示に従ってデータを転送し、経路情報を格納し、データの転送経路に障害を検出すると経路情報を変更し、経路制御部が再起動中に障害を検出したとき、障害検出前後の経路情報を格納し、障害検出前又は後の経路情報のいずれか一方を経路制御部に送信し、内部状態に基づいて送信されるいずれか一方の経路情報を決定し、経路制御部は、データ転送部の経路情報を格納し、再起動後にデータ転送部から経路情報を受信し、隣接するデータ転送部を制御する経路制御部に格納された経路情報を取得して再起動前の経路情報に回復させる。【選択図】図１
2008042807.tif 000002
【特許請求の範囲】
【請求項１】
１組の、経路制御部と、前記経路制御部に接続されるデータ転送部と、を含むネットワークシステムであって、
前記経路制御部は、シグナリングプロトコルを用いてデータを転送する経路を設定し、
前記データ転送部は、
転送されたデータの入力を受け付ける入力インターフェースと、入力されたデータを出力する出力インターフェースと、を備え、
前記経路制御部の指示に従って、前記入力されたデータを隣接するデータ転送部に転送し、
前記入力インターフェースと前記出力インターフェースとの対応関係を含む経路情報を格納し、
前記データを転送する経路に障害を検出したとき、前記経路情報を変更し、
前記経路制御部が再起動している間に、前記障害を検出したとき、前記障害検出前の経路情報、及び前記障害検出後の経路情報を格納し、
前記障害検出前の経路情報、又は前記障害検出後の経路情報のいずれか一方を、前記経路制御部に送信し、
前記経路制御部との通信状況に応じて設定される内部状態に基づいて、前記送信されるいずれか一方の経路情報を決定し、
前記経路制御部は、
前記データ転送部の経路情報を格納し、
有効な経路が設定された状態で再起動したとき、再起動後に、前記データ転送部から前記経路情報を受信し、
前記隣接するデータ転送部を制御する経路制御部に格納された経路情報を取得して再起動前の経路情報に回復させることを特徴とするネットワークシステム。
【請求項２】
前記内部状態は、前記データ転送部が前記経路制御部との通信に失敗したときに、変更されることを特徴とする請求項１に記載のネットワークシステム。
【請求項３】
前記内部状態には、
前記障害検出後の経路情報が前記データ転送部によって前記経路制御部に送信される通常状態と、
前記障害検出前の経路情報が前記データ転送部によって前記経路制御部に送信される保留状態と、が含まれることを特徴とする請求項１に記載のネットワークシステム。
【請求項４】
前記内部状態は、前記データ転送部が前記経路制御部との通信に失敗したときに、前記通常状態から前記保留状態に変更されることを特徴とする請求項３に記載のネットワークシステム。
【請求項５】
前記経路制御部は、前記経路情報を前記再起動前の経路情報に回復させたとき、前記内部状態を通常状態に変更する指示を前記データ転送部に送信することを特徴とする請求項３に記載のネットワークシステム。
【請求項６】
シグナリングプロトコルを用いてデータを転送する経路を設定する複数の経路制御部と、
前記経路制御部の指示に従って、データを転送する複数のデータ転送部と、を含むネットワークシステムであって、
前記経路制御部は、１又は複数の前記データ転送部を制御し、
前記制御対象のデータ転送部は、
転送されたデータの入力を受け付ける入力インターフェースと、入力されたデータを出力する出力インターフェースと、を備え、
前記入力インターフェースと前記出力インターフェースとの対応関係を含む経路情報を格納し、
前記データを転送する経路に障害を検出したとき、前記経路情報を変更し、
前記経路制御部が再起動している間に、前記障害を検出したとき、前記障害検出前の経路情報、及び前記障害検出後の経路情報を格納し、
前記障害検出前の経路情報、又は前記障害検出後の経路情報のいずれか一方を、前記経路制御部に送信し、
前記経路制御部との通信状況に応じて設定される内部状態に基づいて、前記送信されるいずれか一方の経路情報を決定し、
前記経路制御部は、
前記制御対象のデータ転送部の経路情報を含む経路情報を格納し、
有効な経路が設定された状態で再起動したとき、再起動後に、前記制御対象のデータ転送部から前記経路情報を受信し、
前記経路制御部と隣接する経路制御部に格納された経路情報を取得して再起動前の経路情報に回復させることを特徴とするネットワークシステム。
【請求項７】
前記内部状態は、前記制御対象のデータ転送部が前記経路制御部との通信に失敗したときに、変更されることを特徴とする請求項６に記載のネットワークシステム。
【請求項８】
前記内部状態には、
前記障害検出後の経路情報が前記制御対象のデータ転送部によって前記経路制御部に送信される通常状態と、
前記障害検出前の経路情報が前記制御対象のデータ転送部によって前記経路制御部に送信される保留状態と、が含まれることを特徴とする請求項６に記載のネットワークシステム。
【請求項９】
前記内部状態は、前記制御対象のデータ転送部が前記経路制御部との通信に失敗したときに、前記通常状態から前記保留状態に変更されることを特徴とする請求項８に記載のネットワークシステム。
【請求項１０】
前記経路制御部は、前記経路情報を前記再起動前の経路情報に回復させたとき、前記内部状態を通常状態に変更する指示を前記制御対象のデータ転送部に送信することを特徴とする請求項８に記載のネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステムに関し、特に、通信制御装置の障害復旧に関する。
【背景技術】
【０００２】
ＧＭＰＬＳネットワークでは、Ｄ−ｐｌａｎｅに障害が発生すると、光スイッチ部で障害復旧のために経路を切り替え、経路が切り替わったことをＧＭＰＬＳ制御装置に通知する。このとき、ＧＭＰＬＳ制御装置は、改めてＧＭＰＬＳシグナリングプロトコルを動作させることによって、各制御装置に経路切替を通知して障害を復旧させるプロテクション方式が提案されている（特許文献１参照）。
【０００３】
また、ＧＭＰＬＳ制御装置は、障害が発生して再起動したとき、隣接ノードから既存のパス情報を受信して、パスの状態を復旧し、パスを切断することなく処理を再開するグレースフル・リスタート方式が提案されている（非特許文献１参照）。
【特許文献１】特開２００３−３１８９８３号公報
【非特許文献１】L.Berger、「GMPLS RSVP-TE」RFC3473、IETF、2003年1月
【発明の開示】
【発明が解決しようとする課題】
【０００４】
一方、グレースフル・リスタートによって、ＧＭＰＬＳ制御装置が再起動している間に光スイッチ部で障害が発生し、プロテクション処理が実行されると、実際の光スイッチ部の構成と隣接ノードから送られる既存のパス情報とが相違する。したがって、ＧＭＰＬＳ制御装置は、パス情報の再構築に失敗し、処理を再開することができなくなってしまう課題があった。
【課題を解決するための手段】
【０００５】
本発明の代表的な一形態によると、１組の、経路制御部と、前記経路制御部に接続されるデータ転送部と、を含むネットワークシステムであって、前記経路制御部は、シグナリングプロトコルを用いてデータを転送する経路を設定し、前記データ転送部は、転送されたデータの入力を受け付ける入力インターフェースと、入力されたデータを出力する出力インターフェースと、を備え、前記経路制御部の指示に従って、前記入力されたデータを隣接するデータ転送部に転送し、前記入力インターフェースと前記出力インターフェースとの対応関係を含む経路情報を格納し、前記データを転送する経路に障害を検出したとき、前記経路情報を変更し、前記経路制御部が再起動している間に、前記障害を検出したとき、前記障害検出前の経路情報、及び前記障害検出後の経路情報を格納し、前記障害検出前の経路情報、又は前記障害検出後の経路情報のいずれか一方を、前記経路制御部に送信し、前記経路制御部との通信状況に応じて設定される内部状態に基づいて、前記送信されるいずれか一方の経路情報を決定し、前記経路制御部は、前記データ転送部の経路情報を格納し、有効な経路が設定された状態で再起動したとき、再起動後に、前記データ転送部から前記経路情報を受信し、前記隣接するデータ転送部を制御する経路制御部に格納された経路情報を取得して再起動前の経路情報に回復させる。
【発明の効果】
【０００６】
本発明の一形態によれば、ＧＭＰＬＳ制御装置が再起動している間に光スイッチ部のＩＦに障害が発生したとき、パスの状態の不整合を解消させてから、プロテクション処理を適用することによって、障害を回復させることができる。
【発明を実施するための最良の形態】
【０００７】
以下、本発明の実施形態について図面を用いて説明する。
【０００８】
（第１の実施の形態）
図１は、第１の実施の形態のネットワークシステムの構成図である。第１の実施の形態のネットワークシステムは、光スイッチ部２０、ＧＭＰＬＳ制御部３０、Ｃ−Ｐｌａｎｅ網４０、及びＤ−Ｐｌａｎｅ網５０を含む。なお、光スイッチ部２０は、光スイッチ部２０Ａ、２０Ｂ及び２０Ｃの総称である。同じく、ＧＭＰＬＳ制御部３０は、ＧＭＰＬＳ制御部３０Ａ、３０Ｂ及び３０Ｃの総称である。
【０００９】
また、Ｄ−Ｐｌａｎｅ網５０には、ＬＳＰ（Ｌａｂｅｌ  Ｓｗｉｔｃｈｅｄ  Ｐａｔｈ）６０が設定されている。ＬＳＰとは、ＭＰＬＳのラベル情報に基づいて設定された経路である。
【００１０】
光スイッチ部２０は、光信号を波長ごとに光のまま経路を変更する。ＧＭＰＬＳ制御部３０は、Ｃ−Ｐｌａｎｅ網４０を介してＧＭＰＬＳプロトコルに基づいて通信し、ＬＳＰ６０の設定、削除及び状態変更を実行する。また、設定内容を光スイッチ部２０に送信し、実際のスイッチ状態の変更を指示する。スイッチ状態は、光スイッチ部２０内部の経路情報に対応し、入力インターフェース（ＩＦ）と出力ＩＦとの接続関係である。
【００１１】
光スイッチ部２０及びＧＭＰＬＳ制御部３０は、１対１に対応する３組の装置が記載されているが、必要に応じて任意の数の装置を配置する。また、光スイッチ部２０とＧＭＰＬＳ制御部３０とは、必ずしも１対１である必要はなく、１つのＧＭＰＬＳ制御部３０が複数の光スイッチ部２０を制御する構成であってもよい。さらに、光スイッチ部２０とＧＭＰＬＳ制御部３０とは、別々の筐体に実装することも、同一の筐体に実装することも可能である。
【００１２】
Ｃ−Ｐｌａｎｅ網４０は、ＩＰプロトコルを用いたパケット網である。Ｄ−Ｐｌａｎｅ網５０は、光スイッチ部２０が備えるインターフェース間を結んだ回線（データ回線）の集合である。
【００１３】
Ｄ−Ｐｌａｎｅ網５０において、各光スイッチ部２０が直接通信可能なデータ回線で接続されているとき、連結された光スイッチ部２０は、互いに隣接すると定義する。また、ＧＭＰＬＳ制御部３０は、制御対象の光スイッチ部２０が隣接していれば、直接通信可能な回線で接続されていなくとも、Ｃ−Ｐｌａｎｅ網４０を経由するなどして、論理的な隣接関係を有するようにネットワークを構成する。
【００１４】
なお、第１の実施の形態では、ネットワークスイッチとして光波長スイッチを用いているが、ＧＭＰＬＳで規定されているパケット、ＴＤＭなどの他のネットワークスイッチを用いたスイッチ部であっても、そのまま適用可能である。
【００１５】
ＬＳＰ６０は、Ｄ−Ｐｌａｎｅ網５０において、一つ以上のデータ回線を接続し、特定のインターフェースから別のインターフェースまでの経路を定義した論理的な経路（パス）である。図１には、光スイッチ部２０ＣのＩＦ−１から光スイッチ部２０ＡのＩＦ−２までの経路とする、ＬＳＰ６０Ａ及びＬＳＰ６０Ｂの２つのＬＳＰが定義されている。ＬＳＰ６０Ａは、光スイッチ部２０ＣのＩＦ−２、光スイッチ部２０ＡのＩＦ−１を経由する。同じく、ＬＳＰ６０Ｂは、光スイッチ部２０ＣのＩＦ−３から光スイッチ部２０ＢのＩＦ−１及びＩＦ−２、光スイッチ部２０ＡのＩＦ−４を経由する。
【００１６】
図２は、第１の実施の形態の光スイッチ部２０の構成を示す図である。光スイッチ部２０は、ＣＰＵ２０１、メモリ２０２、二次記憶装置２０３、通信インターフェース２０４、スイッチ２０５、及び光インターフェース２０６を含む。
【００１７】
ＣＰＵ２０１は、メモリ２０２に記憶されたプログラムを実行する。メモリ２０２は、ＣＰＵ２０１によって実行されるプログラム及び処理に必要なデータを格納する。二次記憶装置２０３は、光スイッチ部２０を制御するソフトウェア及び設定ファイルなどを格納する。
【００１８】
通信インターフェース２０４は、外部と接続するためのインターフェースであり、ＧＭＰＬＳ制御部３０と接続される。第１の実施の形態では、通信インターフェース２０４が１つ搭載されていれば実施可能であるが、複数の通信インターフェース２０４の搭載を妨げるものではない。
【００１９】
スイッチ２０５は、光信号を集約する。光インターフェース２０６は、光ファイバを接続するインターフェースである。また、光インターフェース２０６は、図１の光スイッチ部２０Ａ、２０Ｂ及び２０ＣのＩＦ−１〜ＩＦ−４に対応する。
【００２０】
図３は、第１の実施の形態のＧＭＰＬＳ制御部３０の構成を示す図である。ＧＭＰＬＳ制御部３０は、ＣＰＵ３０１、メモリ３０２、二次記憶装置３０３、及び通信インターフェース３０４を含む。
【００２１】
ＣＰＵ３０１は、メモリ３０２に記憶されたプログラムを実行する。メモリ３０２は、ＣＰＵ３０１によって実行されるプログラム及び処理に必要なデータを格納する。二次記憶装置３０３は、ソフトウェア及び設定ファイルなどを格納する。
【００２２】
通信インターフェース３０４は、外部と接続するためのインターフェースであり、光スイッチ２０と接続される。なお、通信インターフェース３０４は、１つ搭載されていれば実施可能であるが、複数の通信インターフェース３０４の搭載を妨げるものではない。
【００２３】
ここで、第１の実施の形態のネットワークにおけるＤ−Ｐｌａｎｅ回線障害を復旧する処理手順の概要を説明する。第１の実施の形態では、光スイッチ部２０ＣのＩＦ−１から入力されたデータを光スイッチ２０ＡのＩＦ−２から出力するデータ通信を想定する。
【００２４】
図１には、光スイッチ部２０ＣのＩＦ−１から入力され、光スイッチ部２０ＡのＩＦ−２から出力されるＬＳＰ６０Ａ及びＬＳＰ６０Ｂが示されている。第１の実施の形態では、ＬＳＰ６０Ａを主経路、ＬＳＰ６０Ｂを副経路とし、通常は、ＬＳＰ６０Ａを経由して通信する。そして、ＬＳＰ６０Ａに障害が発生した場合には、各光スイッチ部２０においてスイッチ設定を切替えることによって、副経路であるＬＳＰ６０Ｂを経由したデータ通信に切替える。
【００２５】
データ回線の障害は、光スイッチ部２０によって検出される。また、経路の切替処理も光スイッチ部２０によって実行される。一方、ＬＳＰの状態変更は、ＧＭＰＬＳプロトコルに基づいて実行され、ＧＭＰＬＳ制御部３０によって処理される。障害復旧処理方法には、経路切替とＬＳＰの状態変更を実行する順序によって、光スイッチ部主導で先に経路を切替えるプロテクション方式と、ＧＭＰＬＳ制御部主導で先にＬＳＰの状態を変更するレストレーション方式の２種類がある。
【００２６】
プロテクション方式は、光スイッチ部２０の内部処理で経路を切替える。一方、レストレーション方式は、光スイッチ部２０がデータ回線障害をＧＭＰＬＳ制御部３０に通知し、その後、ＧＭＰＬＳ制御部３０からの指示に従って光スイッチ部２０が経路を切替える。したがって、プロテクション方式は、レストレーション方式と比較してより高速に障害を復旧させることができる。しかし、ＬＳＰの状態は、ＧＭＰＬＳ制御部３０によって管理されるため、プロテクション方式では一時的に実際のスイッチ状態とＬＳＰの状態とが異なってしまう場合がある。
【００２７】
なお、ＧＭＰＬＳ制御部３０が正常に動作している場合には、ＬＳＰの状態と実際のスイッチ状態との不一致は漸次解消される。しかし、ＧＭＰＬＳ制御部３０に障害が発生した場合又はＧＭＰＬＳ制御部３０のソフトウェアを更新する場合など、何らかの理由でＧＭＰＬＳ制御部３０が正常に動作していない場合には、ＬＳＰの状態と実際のスイッチ状態の不一致が解消されない場合が生じる。
【００２８】
そこで、第１の実施の形態では、光スイッチ部２０において、経路切替前と経路切替後のスイッチ状態を保持し、ＧＭＰＬＳ制御部３０に経路切替通知が成功したか否かによって、その後のＧＭＰＬＳ制御部３０からのスイッチ状態問合せに対する応答を変更し、プロテクション方式での、データ回線障害とＧＭＰＬＳ制御部障害との二重障害時の復旧を可能とする。
【００２９】
第１の実施の形態では、ＧＭＰＬＳ制御部間のパス設定プロトコルとしてＲＳＶＰ−ＴＥを採用し、ＧＭＰＬＳ制御部が再起動するときのパス状態を復旧させる手順としてＲＦＣ３４７３に規定されているグレースフル・リスタート処理を利用する。なお、他のパス設定プロトコルを採用した場合であっても同じく本発明を適用することができる。
【００３０】
図４は、第１の実施の形態のデータ回線障害及びＧＭＰＬＳ制御部障害の二重障害が発生したときの復旧処理の手順を示すシーケンス図である。図４では、ＧＭＰＬＳ制御部３０Ａの再起動中に光スイッチ部２０ＡがＩＦ−１での障害を検出し、経路をＬＳＰ６０ＡからＬＳＰ６０Ｂに切替えた場合のＧＭＰＬＳ制御部３０Ａの復旧手順を示している。
【００３１】
ＧＭＰＬＳ制御部３０Ａ、３０Ｂ、及び３０Ｃは、相互にＨｅｌｌｏメッセージを交換して正常動作していることを周期的に確認する（４０１〜４０４）。
【００３２】
ＧＭＰＬＳ制御部３０Ｂ及び３０Ｃは、ＧＭＰＬＳ制御部３０Ａが再起動を開始すると（４０５）、一定期間以上ＧＭＰＬＳ制御部３０ＡからのＨｅｌｌｏメッセージを受信することができなくなる（タイムアウト発生）。そこで、ＧＭＰＬＳ制御部３０Ｂ及び３０Ｃは、ＧＭＰＬＳ制御部３０Ａ又はＧＭＰＬＳ制御部３０Ａとの間のＣ−Ｐｌａｎｅ網４０に障害が発生したものと判定する。そして、ＧＭＰＬＳ制御部３０Ｂ及び３０Ｃは、ＧＭＰＬＳ制御部３０Ａを経由するパス情報の更新を停止し、パス情報の保護を開始する。
【００３３】
その後、光スイッチ部２０Ａは、ＩＦ−１における光データ回線の障害を検出すると（４０６）、使用中のＬＳＰ６０Ａから副経路のＬＳＰ６０Ｂに切替える。具体的には、光スイッチ部２０Ａは、Ｄ−Ｐｌａｎｅ網５０を介して光スイッチ部２０Ｂ及び光スイッチ部２０Ｃにスイッチ切替指示を送信する（４０７、４０８）。光スイッチ部２０Ｂ及び光スイッチ部２０Ｃは、スイッチ切替指示を受信すると、経路をＬＳＰ６０ＡからＬＳＰ６０Ｂに切替えて、データ通信の障害を復旧させる。
【００３４】
光スイッチ部２０Ａは、スイッチ状態が変更されたことをＧＭＰＬＳ制御部３０Ａに通知するが（４０９）、再起動中であるために応答されない。そこで、光スイッチ部２０Ａは、ＧＭＰＬＳ制御部３０Ａに何らかの障害が発生していると判断し、光スイッチ部２０Ａの内部状態を「保留」状態とする。
【００３５】
その後、ＧＭＰＬＳ制御部３０Ａは、再起動が完了すると（４１０）、光スイッチ部２０Ａに対してスイッチ状態を問い合わせる（４１１）。このとき、光スイッチ部２０Ａは、内部状態が「保留」状態であるため、ＬＳＰ６０Ｂに切替えた後のスイッチ状態ではなく、切替前のＬＳＰ６０Ａのスイッチ状態を送信する（４１２）。
【００３６】
なお、ＧＭＰＬＳ制御部３０の障害発生を判定するタイムアウト時間は、機器構成によって異なるが、第１の実施の形態では約１５ミリ秒程度を想定している。同じく、データ障害検出から光スイッチ部がスイッチ切替指示を出すまでの時間は、約５０ミリ秒を想定している。また、ＧＭＰＬＳ制御部３０が再起動を始めてから再起動が完了するまでの時間は、数秒から数十秒程度を想定している。
【００３７】
ＧＭＰＬＳ制御部３０Ａは、光スイッチ部２０Ａによって送信されたスイッチ状態の応答結果に基づいて、パス状態の復旧を開始する。そして、ＧＭＰＬＳ制御部３０Ａは、状態復旧中であることを示すパラメータ値を設定したＨｅｌｌｏメッセージを、隣接するＧＭＰＬＳ制御部３０Ｂ及び３０Ｃに送信する（４１３、４１５）。
【００３８】
Ｈｅｌｌｏメッセージを受信したＧＭＰＬＳ制御部３０Ｂ及び３０Ｃは、Ｈｅｌｌｏメッセージ交換を再開し（４１４、４１６）、状態復旧に必要な情報を含んだＰＡＴＨメッセージをＧＭＰＬＳ制御部３０Ａに送信する。第１の実施の形態では、隣接するＧＭＰＬＳ制御部３０Ｂ及び３０Ｃには、共にＧＭＰＬＳ制御部３０Ａを経由するＬＳＰが設定されているため、ＧＭＰＬＳ制御部３０Ｂ及び３０Ｃの双方からＰＡＴＨメッセージがＧＭＰＬＳ制御部３０Ａに送信される（４１７、４１８）。
【００３９】
ＧＭＰＬＳ制御部３０Ａは、ＰＡＴＨメッセージを受信すると、受信したメッセージの内容に基づいて、パス状態を復旧させる。そして、隣接するＧＭＰＬＳ制御部３０Ｂ及び３０ＣにＲＥＳＶメッセージを送信することによって、パスの復旧が完了したことを通知する（４１９、４２０）。ＧＭＰＬＳ制御部３０Ｂ及び３０Ｃは、状態復旧中のＧＭＰＬＳ制御部３０ＡからのＲＥＳＶメッセージを受信することによって、パス状態の復旧が完了したと判断し、パス状態の保護を停止し、通常処理に移行する。
【００４０】
ＧＭＰＬＳ制御部３０Ａは、全てのパス状態の復旧を終えると、光スイッチ部２０Ａに対し、保留状態の解除を指示する（４２１）。光スイッチ部２０Ａは、指示に従って内部状態を通常状態に変更し、ＧＭＰＬＳ制御部３０Ａに確認応答を送信する（４２２）。
【００４１】
以上の処理によって、ＧＭＰＬＳ制御部３０Ａに格納されたスイッチ状態は、ＧＭＰＬＳ制御部３０Ｂ及び３０Ｃのスイッチ状態、さらに、実際のパス状態と矛盾することなく復旧が完了する。その後、引き続き、通常のプロテクション処理手順が実行される。
【００４２】
ここで、その後実行されるプロテクション処理手順を簡単に説明すると、まず、障害が発生した光スイッチ部から、隣接する光スイッチ部に主回線から副回線への経路切替指示を送信する。図４では、４０７及び４０８のメッセージが該当する。このとき、光スイッチ部２０は、ＧＭＰＬＳ制御部３０に経路が変更されたことのみを通知する。その後、ＧＭＰＬＳ制御部３０は、制御対象の光スイッチ部２０と通信し、内部に格納したパス状態を更新し、整合性を確保する。
【００４３】
なお、図４に示した手順において、ＧＭＰＬＳ制御部３０間で送受信されるメッセージは、ＲＦＣ３４７３に記載されているグレースフル・リスタート処理と同一である。そして、交換されるメッセージについて、本発明の実施のために変更した点はないため、詳細な説明を省略する。
【００４４】
続いて、第１の実施の形態の経路復旧処理手順に利用される光スイッチ部２０及びＧＭＰＬＳ制御部３０に格納される情報について説明する
図５は、第１の実施の形態のスイッチ状態管理テーブル２２０の構成を示す図である。スイッチ状態管理テーブル２２０は、光スイッチ部２０のメモリ２０２に格納される。光スイッチ部２０には、運用中のスイッチ２０５の状態を示すスイッチ状態管理テーブル２２０Ａと、切替前のスイッチ状態を示す退避中スイッチ状態管理テーブル２２０Ｂが含まれる。スイッチ状態管理テーブル２２０Ａ及び２２０Ｂは、同じ構造である。
【００４５】
スイッチ状態管理テーブル２２０は、入力ＩＦフィールド２２０１、出力ＩＦフィールド２２０２、及びＩＦ状態フィールド２２０３を含む。
【００４６】
入力ＩＦフィールド２２０１は、スイッチ２０５の入力側のＩＦ番号を格納する。出力ＩＦフィールド２２０２は、スイッチ２０５の出力側のＩＦ番号を格納する。ＩＦ状態フィールド２２０３は、入力ＩＦフィールド２２０１で指定されたＩＦの状態を格納する。
【００４７】
ＩＦの状態は、「未使用」「使用中」「予約済」「障害中」の４種類の状態が定義される。「未使用」は、当該ＩＦが利用されていないことを示し、「使用中」は、当該ＩＦが出力ＩＦと接続されている状態であることを示す。また、「予約済」は、障害発生時に切替えられる副経路などとして、当該ＩＦを経由するパスが設定されているが、実際にはスイッチ２０５で入力ＩＦと出力ＩＦが接続されていない状態であることを示す。「障害中」は、当該入力ＩＦに障害が発生し、通信することができない状態にあることを示す。なお、ＩＦ状態フィールド２２０３は、格納された値が「使用中」以外の状態の場合には、出力ＩＦフィールド２２０２の値は無視される。
【００４８】
図６は、第１の実施の形態のスイッチ部内部状態管理テーブル２３０の構成を示す図である。スイッチ部内部状態管理テーブル２３０は、光スイッチ部２０のメモリ２０２に格納される情報である。
【００４９】
スイッチ部内部状態管理テーブル２３０は、光スイッチ部２０の内部状態を格納する。内部状態には、「通常」状態と「保留」状態が定義される。「保留」状態は、スイッチ２０５の状態変更をＧＭＰＬＳ制御部３０に通知したが、ＧＭＰＬＳ制御部３０が通知を受信できない状態である。「通常」状態は、「保留」状態以外の状態である。
【００５０】
図７は、第１の実施の形態のパス状態管理テーブル３３０の構成を示す図である。パス状態管理テーブル３３０は、ＧＭＰＬＳ制御部３０のメモリ３０２に格納される。ＧＭＰＬＳプロトコルによって設定されたパスの状態を保持する。
【００５１】
パス状態管理テーブル３３０は、セッションＩＤフィールド３３０１、入力側ＩＦ＿ＩＤフィールド３３０２、入力側ラベルフィールド３３０３、出力側ＩＦ＿ＩＤフィールド３３０４、出力側ラベルフィールド３３０５、状態フィールド３３０６、及びその他属性値フィールド３３０７によって構成される。
【００５２】
セッションＩＤフィールド３３０１は、ＲＳＶＰ−ＴＥプロトコルにおいてパスを識別するために使用されるセッションＩＤ値を格納する。
【００５３】
入力側ＩＦ＿ＩＤフィールド３３０２、及び入力側ラベルフィールド３３０３は、それぞれ入力側のＩＦ＿ＩＤ値及びラベル値を格納する。出力側ＩＦ＿ＩＤフィールド３３０４、及び出力側ラベルフィールド３３０５は、それぞれ出力側のＩＦ＿ＩＤ値及びラベル値を格納する。
【００５４】
なお、ＩＦ＿ＩＤ及びラベルは、ＧＭＰＬＳプロトコルにおいて定義されている、種々の伝送方式のスイッチを抽象化し、統一して扱うための概念である。第１の実施の形態では、ＩＦ＿ＩＤは、光スイッチ２０の光インターフェース２０６を特定するための数値である。また、ラベルは、光スイッチ２０の光インターフェース２０６から入出力される光データの波長を特定するための数値である。そして、ＩＦ＿ＩＤ及びラベルの値は数値であり、各ＧＭＰＬＳ制御部３０が独自に決定して隣接するＧＭＰＬＳ制御部３０に通知する。ＩＦ＿ＩＤ及びラベルの値は、物理的な対応関係（例えば、光の波長をナノメートルで表した数値等）はなく、値が一致するか否かの判定にのみ使用される。
【００５５】
ＲＳＶＰ−ＴＥでは、ＩＦ＿ＩＤ値は、当該インターフェースを管理するＧＭＰＬＳ制御部３０によって決定される。また、ラベル値は、下流側、すなわちデータを受信する側のＧＭＰＬＳ制御部３０によって指定される。したがって、前述のフィールドでは、入力側ＩＦ＿ＩＤフィールド３３０２、入力側ラベルフィールド３３０３、及び出力側ＩＦ＿ＩＤフィールド３３０４には、当該ＧＭＰＬＳ制御部３０が決定した値が格納される。さらに、出力側ラベルフィールド３３０５には、隣接する下流側の他のＧＭＰＬＳ制御部３０から通知された値を格納する。
【００５６】
状態フィールド３３０６は、各パスの状態が格納される。パス状態には、「使用中」、「予約済」、及び「復旧中」の３種類の状態が定義される。「使用中」状態は、当該パスがＧＭＰＬＳ制御部３０間で設定され、また、各光スイッチ部２０においても当該パス設定に従ってスイッチ２０５が設定されている状態である。一方、「予約済」状態は、当該パスが各ＧＭＰＬＳ制御部３０間で設定されているが、各光スイッチ部２０のスイッチ２０５の設定はされていない状態である。また、「復旧中」状態は、グレースフル・リスタート手順に従ってパス状態を復旧している最中であることを示す。
【００５７】
その他属性値フィールド３３０７は、プロテクション処理に必要な情報など、ＲＳＶＰ−ＴＥで規定されている種々のパス情報を格納する。その他属性値フィールド３３０７の値は、ＲＳＶＰ−ＴＥで規定された値を格納し、本発明の実施にあたって特に変更する必要がないため、詳細な説明は省略する。
【００５８】
引き続き、光スイッチ部２０、ＧＭＰＬＳ制御部３０の処理手順をフローチャートを用いて示す。
【００５９】
図８は、第１の実施の形態の光スイッチ部障害チェック処理２５０の手順を示すフローチャートである。光スイッチ部障害チェック処理２５０は、光スイッチ部２０のＣＰＵ２０１によって、周期的に実行される。
【００６０】
光スイッチ部２０は、まず、各光インターフェース２０６の状態をチェックする（２５０１）。そして、障害発生の有無を判定し（２５０２）、障害が発生していない場合には（２５０２の結果が「Ｎｏ」）、処理を終了する。
【００６１】
一方、光スイッチ部２０は、障害が発生していない場合には（２５０２の結果が「Ｙｅｓ」、図４の４０６）、スイッチ状態管理テーブル２２０Ａの内容をスイッチ状態管理テーブル２２０Ｂに複写し、スイッチ状態を退避する（２５０３）。
【００６２】
次に、光スイッチ部２０は、障害が発生したインターフェースを経由するプロテクションパスが設定されているか否かを確認する（２５０４）。プロテクションパスとは、障害が発生したとき、通信する代替経路である。第１の実施の形態では、副回線であるＬＳＰ６０Ｂが該当する。
【００６３】
光スイッチ部２０は、プロテクションパスが設定されている場合には（２５０４の結果が「Ｙｅｓ」）、Ｄ−ｐｌａｎｅ網５０の経路切替処理を実行する（２５０５、図４の４０７及び４０８）。Ｄ−Ｐｌａｎｅ網５０における経路切替処理は、予め定められたプロテクションパスに従って、ＧＭＰＬＳ制御部３０を介さずに、光スイッチ部２０に直接スイッチ切替指示を送信して経路を切替える。経路切替処理が完了すると、スイッチ状態管理テーブル２２０Ａは、切替後の状態に更新される。
【００６４】
続いて、光スイッチ部２０は、スイッチ状態が変更されたことを通信インターフェース２０４を介して、ＧＭＰＬＳ制御部３０に通知する（２５０６、図４の４０９）。そして、ＧＭＰＬＳ制御部３０から一定時間内に応答があるか否かを判定する（２５０７）。ＧＭＰＬＳ制御部３０からの応答があった場合には（２５０７の結果が「Ｙｅｓ」）、処理を終了する。また、ＧＭＰＬＳ制御部３０からの応答がなかった場合には（２５０７の結果が「Ｎｏ」）、スイッチ部内部状態管理テーブル２３０の値を「保留」状態に更新し（２５０８）、本処理を終了する。
【００６５】
図９は、第１の実施の形態の光スイッチ部コマンド受信処理２６０の手順を示すフローチャートである。光スイッチ部コマンド受信処理２６０は、光スイッチ部２０のＣＰＵ２０１によって実行される。光スイッチ部コマンド受信処理２６０は、光スイッチ部２０がＧＭＰＬＳ制御部３０によって送信されたコマンドを受信したときに実行される。
【００６６】
光スイッチ部２０は、まず、通信インターフェース２０４を介してコマンドを受信する（２６０１）。そして、受信したコマンドに基づいて、コマンド種別が「保留解除」か否かを判定する（２６０２Ａ）。コマンド種別が「保留解除」の場合には（２６０２Ａの結果が「Ｙｅｓ」）、ＧＭＰＬＳ制御部３０のパス状態の回復が完了したため、光スイッチ部２０のスイッチ部内部状態管理テーブル２３０の値を「保留」状態から「通常」状態に更新する（２６０４、図４の４２１）。
【００６７】
一方、光スイッチ部２０は、受信したコマンドのコマンド種別が「保留解除」でなかった場合には（２６０２Ａの結果が「Ｎｏ」）、コマンド種別が「スイッチ状態問合せ」か否かを判定する（２６０２Ｂ）。
【００６８】
光スイッチ部２０は、受信したコマンドのコマンド種別が「スイッチ状態問合せ」の場合には（２６０２Ｂの結果が「Ｙｅｓ」、図４の４１１）、光スイッチ部２０のスイッチ部内部状態管理テーブル２３０の値が「保留」状態であるか否かを判定する（２６０３）。
【００６９】
光スイッチ部２０は、スイッチ部内部状態管理テーブル２３０の値が「保留」状態である場合には（２６０３の結果が「Ｙｅｓ」）、ＧＭＰＬＳ制御部３０のパス状態を再起動前の状態に回復させるため、退避中の状態であるスイッチ状態管理テーブル２２０Ｂの内容をコマンドの送信元に通知する（２６０６、図４の４１２）。一方、スイッチ部内部状態管理テーブル２３０の値が「保留」状態でない場合には（２６０３の結果が「Ｎｏ」）、現在のスイッチ状態であるスイッチ状態管理テーブル２２０Ａの内容をコマンドの送信元に通知する（２６０７）。
【００７０】
光スイッチ部２０は、受信したコマンドのコマンド種別が「保留解除」でも、「スイッチ状態問合せ」でもなかった場合には（２６０２Ｂの結果が「Ｎｏ」）、受信したコマンドに応じた処理を実行する（２６０５）。
【００７１】
以上が光スイッチ部２０において、実行される処理の手順である。続いて、ＧＭＰＬＳ制御部３０において、実行される処理の手順を説明する。
【００７２】
図１０は、第１の実施の形態のＧＭＰＬＳ制御部メイン処理３５０の手順を示すフローチャートである。ＧＭＰＬＳ制御部メイン処理３５０は、ＧＭＰＬＳ制御部３０のＣＰＵ３０１によって実行される。ＧＭＰＬＳ制御部メイン処理３５０は、通常の電源投入による起動、何らかの障害発生を原因とする再起動、プログラムのバージョンアップ等による計画的な再起動等を契機に実行される。
【００７３】
ＧＭＰＬＳ制御部３０は、まず、初期化処理を実行し（３５０１）、通信インターフェース３０４を介して、光スイッチ部２０にスイッチ状態を問い合わせる（３５０２、図４の４１１）。そして、光スイッチ部２０に対する問い合わせの応答があるか否かを判定する（３５０３）。一定時間内に応答がなかった場合には（３５０３の結果が「Ｎｏ」）、光スイッチ部２０に障害が発生しているものと判定され、システム管理者に対して警告し（３５０４）、処理を終了する。
【００７４】
ＧＭＰＬＳ制御部３０は、光スイッチ部２０から応答があった場合には（３５０３の結果が「Ｙｅｓ」、図４の４１２）、受信したスイッチ状態に使用中のスイッチが存在するか否かを判定する（３５０５）。
【００７５】
ＧＭＰＬＳ制御部３０は、受信したスイッチ状態に使用中のスイッチが存在しない場合には（３５０５の結果が「Ｎｏ」）、パスを復旧する必要がないため、パス状態管理テーブル３３０の内容をクリアし、Ｒｅｃｏｖｅｒｙ＿ｔｉｍｅ値を０に設定する（３５０７）。Ｒｅｃｏｖｅｒｙ＿ｔｉｍｅ値とは、ＲＦＣ３４７３に規定されている値であり、再起動が完了するまでの時間を設定する。したがって、Ｒｅｃｏｖｅｒｙ＿ｔｉｍｅ値が０の場合には、再起動ではなく初期起動となる。
【００７６】
ＧＭＰＬＳ制御部３０は、受信したスイッチ状態に使用中のスイッチが存在する場合には（３５０５の結果が「Ｙｅｓ」）、パス状態管理テーブル３３０を部分的に復旧させる。具体的には、受信したスイッチ状態に基づいて、復旧中のパスの入力側ＩＦ＿ＩＤ３３０２及び出力側ＩＦ＿ＩＤ３３０４の値を更新し、状態フィールド３３０６の値を「復旧中」に設定する。さらに、Ｒｅｃｏｖｅｒｙ＿ｔｉｍｅ値をパス状態を復旧させるために必要な値に設定する（３５０８）。
【００７７】
ＧＭＰＬＳ制御部３０は、隣接するＧＭＰＬＳ制御部３０にＨｅｌｌｏメッセージを送信する（３５０９、図４の４１３及び４１５）。このとき送信されるＨｅｌｌｏメッセージは、パス状態の復旧中であることを示すパラメータを含む。そして、隣接するＧＭＰＬＳ制御部３０から送信したＨｅｌｌｏメッセージに対する応答メッセージを受信し（図４の４１４及び４１６）、さらに、ＲＳＶＰメッセージ受信処理を実行する（３５１０）。ＲＳＶＰメッセージは、パス状態の復旧中であることを示すパラメータを含むＨｅｌｌｏメッセージを受信した隣接するＧＭＰＬＳ制御部３０がＨｅｌｌｏメッセージの応答とは別に送信するメッセージである。ＲＳＶＰメッセージ受信処理の内容については、図１１にて詳細を後述する。
【００７８】
図１１は、第１の実施の形態のＧＭＰＬＳ制御部メッセージ受信処理３５１０の手順を示すフローチャートである。
【００７９】
ＧＭＰＬＳ制御部３０は、通信インターフェース３０４を介して、他のＧＭＰＬＳ制御部３０から送信されるＲＳＶＰメッセージを受信する（３６０１）。そして、ＧＭＰＬＳ制御部３０は、受信したＲＳＶＰメッセージのメッセージ種別が「ＰＡＴＨ」であるか否かを判定する（３６０２Ａ）。
【００８０】
ＧＭＰＬＳ制御部３０は、受信したメッセージがＰＡＴＨメッセージであった場合には（３６０２Ａの結果が「Ｙｅｓ」、図４の４１７及び４１８）、ＰＡＴＨメッセージ処理を実行する（３６０３）。ＰＡＴＨメッセージ処理の詳細については、図１２にて後述する。
【００８１】
一方、ＧＭＰＬＳ制御部３０は、受信したメッセージがＰＡＴＨメッセージでなかった場合には（３６０２Ａの結果が「Ｎｏ」）、受信したメッセージがＲＥＳＶメッセージであるか否かを判定する（３６０２Ｂ）。受信したメッセージがＲＥＳＶメッセージであった場合には（３６０２Ｂの結果が「Ｙｅｓ」、図４の４１９及び４２０）、ＲＥＳＶメッセージ処理を実行する（３６０４）。ＲＥＳＶメッセージ処理の詳細については、図１３にて後述する。
【００８２】
なお、ＧＭＰＬＳ制御部３０は、受信したＲＳＶＰメッセージがＰＡＴＨメッセージ又はＲＥＳＶメッセージ以外のメッセージであった場合には（３６０２Ｂの結果が「Ｎｏ」）、受信したメッセージに応じた処理を実行する（３６０５）。３６０５の処理で実行される処理は、従来技術と相違しないため、詳細な説明は省略する。
【００８３】
続いて、ＰＡＴＨメッセージ及びＲＥＳＶメッセージ処理について説明する。第１の実施の形態におけるＲＳＶＰプロトコルを用いたパス設定は、まず、始点ノードから終点ノードに向けてＰＡＴＨメッセージを送信する。終点ノードは、ＰＡＴＨメッセージを受信すると、始点ノードに向けてＲＥＳＶメッセージを送信する。そして、始点ノードがＲＥＳＶメッセージを受信することによって、パス設定が完了するという手順である。したがって、パスの復旧処理においても、上流ノードからのＰＡＴＨメッセージ及び下流ノードからのＲＥＳＶメッセージを利用する手順によって状態を復旧させる。
【００８４】
図１２は、第１の実施の形態のＧＭＰＬＳ制御部ＰＡＴＨメッセージ処理３６０３の手順を示すフローチャートである。ＧＭＰＬＳ制御部ＰＡＴＨメッセージ処理３６０３は、ＧＭＰＬＳ制御部３０のＣＰＵ３０１によって実行される。
【００８５】
ＧＭＰＬＳ制御部３０は、まず、ＰＡＴＨメッセージにＲＥＣＯＶＥＲＹ＿ＬＡＢＥＬオブジェクトが含まれているか否かを判定する（３７０１）。ＰＡＴＨメッセージは、新規にパスを設定する場合、及び障害からパスを回復させる場合に使用される。そこで、ＧＭＰＬＳ制御部３０は、受信したＰＡＴＨメッセージにＲＥＣＯＶＥＲＹ＿ＬＡＢＥＬオブジェクトが含まれているか否かを判定することによって、パス状態を復旧させるためのＰＡＴＨメッセージか否かを判定する。なお、ＲＥＣＯＶＥＲＹ＿ＬＡＢＥＬオブジェクトの詳細については、ＲＦＣ３４７３に規定されている。
【００８６】
ＧＭＰＬＳ制御部３０は、ＰＡＴＨメッセージにＲＥＣＯＶＥＲＹ＿ＬＡＢＥＬオブジェクトが含まれていない場合には（３７０１の結果が「Ｎｏ」）、受信したＰＡＴＨメッセージがパス状態を復旧させるためのメッセージでないため、通常のＰＡＴＨメッセージ処理を実行する（３７０３）。
【００８７】
一方、ＧＭＰＬＳ制御部３０は、ＰＡＴＨメッセージにＲＥＣＯＶＥＲＹ＿ＬＡＢＥＬオブジェクトが含まれている場合には（３７０１の結果が「Ｙｅｓ」、図４の４１７及び４１８）、パス状態の復旧処理を実行する。
【００８８】
具体的には、まず、ＧＭＰＬＳ制御部３０は、受信したＰＡＴＨメッセージの内容に基づいて、パス状態管理テーブル３３０を復旧する（３７０２）。このとき、パスの全てのフィールドの復旧が完了したエントリは、状態フィールド３３０６の値を「復旧中」から元の状態に変更する。全てのフィールドの復旧が完了していないエントリは、状態フィールド３３０６の値を「復旧中」のままとする。
【００８９】
次に、ＧＭＰＬＳ制御部３０は、自ノードがパスの終端であるか否かを判定する（３７０４）。自ノードがパスの終端である場合には（３７０４の結果が「Ｙｅｓ」）、上流ノードにＲＥＳＶメッセージを送信する（３７０６）。自ノードがパスの終端でない場合には（３７０４の結果が「Ｎｏ」）、下流ノードにＰＡＴＨメッセージを送信する（３７０５）。
【００９０】
さらに、ＧＭＰＬＳ制御部３０は、パス状態管理テーブルの全てのエントリの復旧が完了したか否かを判定する（３７０７）。完了していない場合には（３７０７の結果が「Ｎｏ」）、処理を終了する。完了した場合には（３７０７の結果が「Ｙｅｓ」）、光スイッチ部２０に保留解除コマンドを通知し（３７０８）、処理を終了する。
【００９１】
図１３は、第１の実施の形態のＧＭＰＬＳ制御部ＲＥＳＶメッセージ処理３６０４の手順を示すフローチャートである。ＧＭＰＬＳ制御部ＲＥＳＶメッセージ処理３６０４は、ＧＭＰＬＳ制御部３０のＣＰＵ３０１によって実行される。
【００９２】
ＧＭＰＬＳ制御部３０は、受信したＲＥＳＶメッセージに対応し、パス状態管理テーブル３３０の状態フィールド３３０６の値が「復旧中」であるエントリが存在するか否かを判定する（３８０１）。ＲＥＳＶメッセージには、ＰＡＴＨメッセージのＲＥＣＯＶＥＲＹ＿ＬＡＢＥＬオブジェクトのようにパス状態を復旧するためのメッセージであることを識別する情報は含まれていないため、セッションＩＤの値が一致するか否かによって判定する。
【００９３】
ＧＭＰＬＳ制御部３０は、受信したＲＥＳＶメッセージに対応するパス状態管理テーブル３３０のエントリが存在しない場合には（３８０１の結果が「Ｎｏ」）、通常のＲＥＳＶメッセージ処理を実行する（３８０３）。
【００９４】
一方、ＧＭＰＬＳ制御部３０は、受信したＲＥＳＶメッセージに対応するパス状態管理テーブル３３０のエントリが存在する場合には（３８０１の結果が「Ｙｅｓ」、図４の４１９又は４２０）、パス状態の復旧処理を実行する。具体的には、ＧＭＰＬＳ制御部３０は、受信したＲＥＳＶメッセージの内容に基づいて、パス状態管理テーブル３３０の内容を復旧させる（３８０２）。そして、図１２の３７０２の処理と同じく、パスの全ての情報の復旧が完了したエントリは、状態フィールド３３０６の値を「復旧中」から元の状態へと変更する。そして、全てのフィールドの復旧が完了していないエントリは、状態フィールド３３０６の値を「復旧中」のままとする。
【００９５】
次に、ＧＭＰＬＳ制御部３０は、自ノードがパスの始点であるか否かを判定する（３８０４）。パスの始点でない場合には（３８０４の結果が「Ｙｅｓ」）、上流ノードにＲＥＳＶメッセージを送信する（３８０５）。
【００９６】
さらに、ＧＭＰＬＳ制御部３０は、パス状態管理テーブルの全てのエントリの復旧が完了したか否かを判定する（３８０６）。全てのエントリの復旧が完了していない場合には（３８０６の結果が「Ｎｏ」）、処理を終了する。全てのエントリの復旧が完了した場合には（３８０６の結果が「Ｙｅｓ」）、光スイッチ部２０に保留解除コマンドを通知し（３８０７）、処理を終了する。
【００９７】
図１４は、第１の実施の形態のＧＭＰＬＳ制御部光スイッチ部メッセージ受信処理３９０の手順を示すフローチャートである。ＧＭＰＬＳ制御部光スイッチ部メッセージ受信処理３９０は、ＧＭＰＬＳ制御部３０のＣＰＵ３０１によって実行される。
【００９８】
ＧＭＰＬＳ制御部３０は、通信インターフェース３０４を介して光スイッチ部２０によって送信されたメッセージを受信する（３９０１）。そして、受信したメッセージのメッセージ種別が「スイッチ状態変更」であるか否かを判定する（３９０２）。受信したメッセージのメッセージ種別が「スイッチ状態変更」でない場合には（３９０２の結果が「Ｎｏ」）、受信したメッセージに従った処理を実行する（３９０４）。
【００９９】
一方、ＧＭＰＬＳ制御部３０は、受信したメッセージのメッセージ種別が「スイッチ状態変更」であった場合には（３９０２の結果が「Ｙｅｓ」）、光スイッチ部２０にＡＣＫを送信する（３９０３）。そして、光スイッチ部２０にスイッチ状態を問い合わせる（３９０５）。さらに、光スイッチ部２０が応答したスイッチ状態に基づいて、プロテクション処理を実行する（３９０６）。
【０１００】
以上、光スイッチ部２０及びＧＭＰＬＳ制御部３０によって実行される処理について説明した。続いて、以上の処理手順に従ってパス状態を復旧させる具体的な例を、図を参照しながら説明する。
【０１０１】
図１５Ａ及び図１５Ｂは、第１の実施の形態の光スイッチ部２０Ａのスイッチ状態管理テーブル２２０Ａの内容を示す図である。図１５Ａは、データ障害検出前（図４の４０６の前）の状態である。また、図１５Ｂは、データ障害検出後（図４の４０６の後）の状態である。
【０１０２】
図１５Ａを参照すると、データ障害を検出する前であるため、ＩＦ−１及びＩＦ−２が接続されている。したがって、ＩＦ−１及びＩＦ−２のＩＦ状態は、ともに「使用中」となっている。図１５Ａに示す状態は、図１に示す主回線であるＬＳＰ６０Ａを経由して通信している。また、副回線であるＬＳＰ６０Ｂで使用されるＩＦ−４は、ＩＦ状態が「予約中」に設定されている。
【０１０３】
ここで、ＩＦ−１に障害が発生すると、ＩＦ−１の状態は、図１５Ｂに示すように「使用中」から「障害中」に更新される。そして、パスが、ＬＳＰ６０ＡからＬＳＰ６０Ｂに切替えられるため、副回線のＩＦ−４の状態が「予約中」から「使用中」に変更される。
【０１０４】
図１６Ａから図１６Ｄは、第１の実施の形態のＧＭＰＬＳ制御部３０Ａのパス状態管理テーブル３３０の内容を示す図である。なお、図１６のＩＦ＿ＩＤの値は、第１の実施の形態では、図１５での入力ＩＦの値に１０００を加算した値としている。
【０１０５】
図１６Ａは、ＧＭＰＬＳ制御部３０Ａが再起動する前のパス状態管理テーブル３３０を示している（図４の４０５の前）。ＧＭＰＬＳ制御部３０Ａが再起動する前は、光スイッチ部２０ＡのＩＦ−１に障害が発生していないため、稼働中のＬＢＰ６０Ａに対応するＳＥＳＳＩＯＮ＿Ａ及び予約中のＬＢＰ６０Ｂに対応するＳＥＳＳＩＯＮ＿Ｂは、図１６Ａに示すように格納されている。具体的には、ＳＥＳＳＩＯＮ＿Ａは、入力ＩＦを１とし、出力ＩＦを２としている。また、ＳＥＳＳＩＯＮ＿Ｂは、入力ＩＦを４とし、出力ＩＦを２としている。
【０１０６】
図１６Ｂは、光スイッチ部２０Ａに問い合わせて受信したスイッチ状態に基づいて復旧したパス状態管理テーブル３３０を示している（図４の４１２の後）。
【０１０７】
ＧＭＰＬＳ制御部３０Ａは、再起動が完了すると、ＧＭＰＬＳ制御部メイン処理３５０の初期化処理３５０１によって、パス状態管理テーブル３３０をクリアする。その後、ＧＭＰＬＳ制御部３０Ａは、光スイッチ部２０Ａにスイッチ状態を問い合わせ（図１０の３５０２、図４の４１１）、スイッチ状態を受信する（図４の４１２）。ＧＭＰＬＳ制御部３０Ａは、受信したスイッチ状態に基づいて、パス状態管理テーブル３３０を更新する（図１０の３５０６）。
【０１０８】
このとき、光スイッチ部２０Ａは、ＩＦ−１に障害が発生しているため、ＬＢＰ６０ＡからＬＢＰ６０Ｂに切替えられている（図８の２５０５、図４の４０７及び４０８）。また、切替後に、光スイッチ部２０ＡからＧＭＰＬＳ制御部３０Ａに送信したスイッチ状態変更通知に対する応答を受信していないため（図８の２５０６、図４の４０９）、内部状態が「保留」状態となっている（図８の２５０８）。よって、ＧＭＰＬＳ制御部３０Ａは、光スイッチ部２０Ａにスイッチ状態を問い合わせたとき（図４の４１１）、受信するスイッチ状態は（図４の４１２）、更新前のスイッチ状態となる（図９の２６０６）。したがって、ＧＭＰＬＳ制御部３０Ａが実際に受信したスイッチ状態は、図１５Ａに示したスイッチ状態である。図１６Ｂは、受信したスイッチ状態を反映させた状態である。
【０１０９】
図１６Ｃは、ＧＭＰＬＳ制御部３０Ｂによって送信されたＰＡＴＨメッセージに基づいて復旧させたパス状態管理テーブル３３０を示している（図４の４１７の後）。
【０１１０】
ＧＭＰＬＳ制御部３０Ａは、ＧＭＰＬＳ制御部３０Ｂに状態復旧中であることを示すパラメータを含むＨｅｌｌｏメッセージを送信すると（図１０の３５０９、図４の４１３）、ＧＭＰＬＳ制御部３０ＢからＰＡＴＨメッセージを受信する（図１０の３５１０）。受信したＰＡＴＨメッセージは、通常のグレースフル・リスタートの手順に従うため、再起動前のパス状態が含まれている。ＧＭＰＬＳ制御部３０Ａは、受信した再起動前のパス状態に基づいて、パス状態管理テーブル３３０を更新する（図１２の３７０２）。ＧＭＰＬＳ制御部３０Ｂからは、ＳＥＳＳＩＯＮ＿Ｂのパス状態が送信されるため、図１６Ｃに示すように、ＳＥＳＳＩＯＮ＿Ｂのパス状態が復旧される。
【０１１１】
図１６Ｄは、ＧＭＰＬＳ制御部３０Ｃから受信したＰＡＴＨメッセージに基づいて復旧させたパス状態管理テーブル３３０を示している（図４の４１８の後）。
【０１１２】
ＧＭＰＬＳ制御部３０Ａは、ＧＭＰＬＳ制御部３０Ｃから受信したＰＡＴＨメッセージに基づいて、パス状態管理テーブル３３０を復旧させる。受信したＰＡＴＨメッセージには、ＳＥＳＳＩＯＮ＿Ａ及びＳＥＳＳＩＯＮ＿Ｂのパス状態が含まれ、復旧していないＳＥＳＳＩＯＮ＿Ａのパス状態を回復させることができる。以上の処理が完了すると、パス状態管理テーブル３３０は、図１６Ｄに示す状態となり、図１６Ａの内容と一致する。
【０１１３】
以上の処理によって、パス状態管理テーブル３３０が回復させると、実際の経路情報との整合性を確保することができる。さらに、通常のプロテクション処理を実行することによって、光スイッチ部２０とＧＭＰＬＳ制御部３０との整合性を確保することができる。
【０１１４】
第１の実施の形態によれば、ＧＭＰＬＳ制御部３０が再起動中に光スイッチ部のＩＦに障害が発生した場合であっても、グレースフル・リスタート及びプロテクション処理によって、矛盾無くパス状態を復旧させることができる。また、第１の実施の形態では、高価なホットスタンバイ方式を用いる必要もない。
【０１１５】
さらに、第１の実施の形態によれば、ＧＭＰＬＳ制御部３０に障害が発生した場合だけでなく、ソフトウェアの更新などの障害以外の要因による再起動の場合にも適用可能であるため、管理コストを削減することができる。
【０１１６】
（第２の実施の形態）
図１７は、第２の実施の形態のネットワークシステムの構成図である。第２の実施の形態のハードウェア及びソフトウェアの構成は、第１の実施の形態と同一である。また、相違点としては、ＬＳＰ６０Ｂが主経路、ＬＳＰ６０Ａが副経路となっている。そして、第２の実施の形態では、ＧＭＰＬＳ制御部３０Ｂの再起動中に、光スイッチ部２０Ｃと光スイッチ部２０Ｂと間のデータ回線に障害が発生し、データ経路をＬＳＰ６０ＢからＬＳＰ６０Ａに切替える。
【０１１７】
図１８は、第２の実施の形態のデータ回線障害及びＧＭＰＬＳ制御部障害との二重障害が発生したときの復旧処理の手順を示すシーケンス図である。ＧＭＰＬＳ制御部３０Ａ、３０Ｂ、及び３０Ｃは、第１の実施の形態と同様に、相互にＨｅｌｌｏメッセージを交換して正常動作していることを周期的に確認する（６０１〜６０４）。
【０１１８】
ＧＭＰＬＳ制御部３０Ａ及び３０Ｃは、ＧＭＰＬＳ制御部３０Ｂが再起動を開始すると（６０５）、一定期間以上ＧＭＰＬＳ制御部３０ＢからのＨｅｌｌｏメッセージを受信することができなくなる。そこで、ＧＭＰＬＳ制御部３０Ａ及び３０Ｃは、ＧＭＰＬＳ制御部３０Ｂ、又はＧＭＰＬＳ制御部３０Ｂとの間のＣ−Ｐｌａｎｅ網４０のいずれかに障害が発生したものと判定する。そして、ＧＭＰＬＳ制御部３０Ａ及び３０Ｃは、ＧＭＰＬＳ制御部３０Ｂを経由するパス情報の更新を停止し、パス情報の保護を開始する。
【０１１９】
その後、光スイッチ部２０Ｂは、ＩＦ−１における光データ回線の障害を検出すると（６０６）、使用中のＬＳＰ６０Ｂから副経路のＬＳＰ６０Ａに切替える。具体的には、光スイッチ部２０Ｂは、Ｄ−Ｐｌａｎｅ網５０を介して光スイッチ部２０Ａ及び光スイッチ部２０Ｃにスイッチ切替指示を送信する（６０７、６０８）。光スイッチ部２０Ａ及び光スイッチ部２０Ｃは、スイッチ切替指示を受信すると、経路をＬＳＰ６０ＢからＬＳＰ６０Ａに切替えて、障害を復旧させる。
【０１２０】
光スイッチ部２０Ｂは、スイッチ状態が変更されたことをＧＭＰＬＳ制御部３０Ｂに通知するが（６０９）、ＧＭＰＬＳ制御部３０Ｂが再起動中であるために応答を受信することができない。そこで、光スイッチ部２０Ｂは、ＧＭＰＬＳ制御部３０Ｂに何らかの障害が発生していると判断し、内部状態を「保留」状態とする。
【０１２１】
その後、ＧＭＰＬＳ制御部３０Ｂは、再起動が完了すると（６１０）、光スイッチ部２０Ｂに対してスイッチ状態を問い合わせる（６１１）。このとき、光スイッチ部２０Ｂは、内部状態が「保留」状態であるため、ＬＳＰ６０Ａに切替えた後のスイッチ状態ではなく、切替前のＬＳＰ６０Ｂのスイッチ状態を送信する（６１２）。
【０１２２】
ＧＭＰＬＳ制御部３０Ｂは、光スイッチ部２０Ｂによって送信されたスイッチ状態の応答結果に基づいて、パス状態の復旧を開始する。そして、ＧＭＰＬＳ制御部３０Ｂは、状態復旧中であることを示すパラメータ値を設定したＨｅｌｌｏメッセージを、隣接するＧＭＰＬＳ制御部３０Ａ及び３０Ｃに送信する（６１３、６１５）。
【０１２３】
Ｈｅｌｌｏメッセージを受信したＧＭＰＬＳ制御部３０Ａ及び３０Ｃは、Ｈｅｌｌｏメッセージの交換を再開し（６１４、６１６）、状態復旧に必要な情報を含んだＰＡＴＨメッセージをＧＭＰＬＳ制御部３０Ｂに送信する。第２の実施の形態では、上流側のＧＭＰＬＳ制御部３０ＣからＰＡＴＨメッセージがＧＭＰＬＳ制御部３０Ｂに送信される（６１７）。
【０１２４】
ＧＭＰＬＳ制御部３０Ｂは、ＧＭＰＬＳ制御部３０ＣからＰＡＴＨメッセージを受信すると、受信したメッセージの内容に基づいて、パス状態を復旧させる（図１２の３７０２）。そして、下流側のＧＭＰＬＳ制御部３０ＡにＰＡＴＨメッセージを送信する（６１８）。
【０１２５】
ＧＭＰＬＳ制御部３０Ａは、ＰＡＴＨメッセージを受信すると、自ノードが終端であるため（図１２の３７０４の結果が「Ｙｅｓ」）、ＧＭＰＬＳ制御部３０ＢにＲＥＳＶメッセージを送信する（６１９、図１２の３７０６）。
【０１２６】
ＧＭＰＬＳ制御部３０Ｂは、ＲＥＳＶメッセージを受信すると、受信したＲＥＳＶメッセージの内容に基づいて、パス状態を復旧し（図１３の３８０２）、ＲＥＳＶメッセージをＧＭＰＬＳ制御部３０Ｃに送信する（６２０、図１３の３８０５）。そして、ＧＭＰＬＳ制御部３０Ｃは、ＧＭＰＬＳ制御部３０ＢからＲＥＳＶメッセージを受信すると、パス状態の復旧が完了したものと判定し、パス状態の保護を停止し、通常処理に移行する。
【０１２７】
ＧＭＰＬＳ制御部３０Ｂは、全てのパス状態の復旧を終えると、光スイッチ部２０Ｂに対し、保留状態の解除を指示する（６２１）。光スイッチ部２０Ｂは、指示に従って内部状態を通常状態に変更し、ＧＭＰＬＳ制御部３０Ｂに確認応答を送信する（６２２）。その後、引き続き、通常のプロテクション処理手順が実行され、ＧＭＰＬＳ制御部３０と光スイッチ部２０との整合性が確保される。
【０１２８】
次に、第２の実施の形態において、以上の処理手順に従い、パス状態管理テーブル３３０の内容が更新される推移を具体的な例を参照しながら説明する。
【０１２９】
図１９Ａ及び図１９Ｂは、第２の実施の形態の光スイッチ部２０Ｂのスイッチ状態管理テーブル２２０Ａの内容を示す図である。図１９Ａは、データ障害検出前（図１８の６０６の前）の状態である。また、図１９Ｂは、データ障害検出後（図１８の６０６の後）の状態である。
【０１３０】
図１９Ａを参照すると、データ障害を検出する前であるため、ＩＦ−１及びＩＦ−２が接続されている。したがって、ＩＦ−１及びＩＦ−２のＩＦ状態は、ともに「使用中」となっている。図１５Ａに示す状態では、図１７に示す主回線であるＬＳＰ６０Ｂを経由して通信する。また、副回線であるＬＳＰ６０Ａは、光スイッチ部２０Ｂを経由せずに通信する。
【０１３１】
ここで、ＩＦ−１に障害が発生すると、図１９Ｂに示すように、ＩＦ−１の状態が「使用中」から「障害中」に更新される。そして、パスが、ＬＳＰ６０ＡからＬＳＰ６０Ｂに切替えられ、他のＩＦがすべて「未使用」に変更される。
【０１３２】
図２０Ａから図２０Ｄは、第２の実施の形態のＧＭＰＬＳ制御部３０Ａのパス状態管理テーブル３３０の内容を示す図である。
【０１３３】
図２０Ａは、ＧＭＰＬＳ制御部３０Ｂが再起動する前のパス状態管理テーブル３３０を示している（図１８のシーケンス６０５の前）。ＧＭＰＬＳ制御部３０Ｂが再起動する前は、光スイッチ部２０ＢのＩＦ−１に障害が発生していないため、稼働中のＬＢＰ６０Ｂに対応するＳＥＳＳＩＯＮ＿Ｂは、光スイッチ部２０Ｂのパス状態管理テーブル３３０に図２０Ａに示すように格納されている。具体的には、ＳＥＳＳＩＯＮ＿Ｂは、入力ＩＦを１とし、出力ＩＦを２としている。
【０１３４】
図２０Ｂは、光スイッチ部２０Ｂに問い合わせて受信したスイッチ状態に基づいて復旧したパス状態管理テーブル３３０を示している（図１８の６１２の後）。
【０１３５】
ＧＭＰＬＳ制御部３０Ｂは、再起動が完了すると、ＧＭＰＬＳ制御部メイン処理３５０の初期化処理３５０１によって、パス状態管理テーブル３３０をクリアする。その後、ＧＭＰＬＳ制御部３０Ｂは、光スイッチ部２０Ｂにスイッチ状態を問い合わせ（図１０の３５０２、図１８の６１１）、光スイッチ部２０Ｂからスイッチ状態を受信する（図１８の６１２）。ＧＭＰＬＳ制御部３０Ｂは、受信したスイッチ状態に基づいて、パス状態管理テーブル３３０を更新する（図１０の３５０６）。
【０１３６】
このとき、光スイッチ部２０Ｂは、ＩＦ−１に障害が発生しているため、ＬＢＰ６０ＢからＬＢＰ６０Ａに切替えられている（図８の２５０５、図１８の６０７及び６０８）。また、切替後に、光スイッチ部２０ＢからＧＭＰＬＳ制御部３０Ｂに送信したスイッチ状態変更通知に対する応答を受信していないため（図８の２５０６、図１８の６０９）、内部状態が「保留」状態となっている（図８の２５０８）。したがって、ＧＭＰＬＳ制御部３０Ｂは、光スイッチ部２０Ｂにスイッチ状態を問い合わせたとき（図１８の６１１）、受信するスイッチ状態は（図１８の６１２）、更新前のスイッチ状態となる（図９の２６０６）。したがって、ＧＭＰＬＳ制御部３０Ｂが実際に受信したスイッチ状態は、図１９Ａに示したスイッチ状態である。図２０Ｂは、受信したスイッチ状態を反映させた状態である。
【０１３７】
図２０Ｃは、ＧＭＰＬＳ制御部３０Ｃによって送信されたＰＡＴＨメッセージに基づいて復旧させたパス状態管理テーブル３３０を示している（図１８の６１７の後）。
【０１３８】
ＧＭＰＬＳ制御部３０Ｂは、ＧＭＰＬＳ制御部３０Ｃに状態復旧中であることを示すパラメータを含むＨｅｌｌｏメッセージを送信すると（図１０の３５０９、図１８の６１３）、ＧＭＰＬＳ制御部３０ＢからＰＡＴＨメッセージを受信する（図１０の３５１０）。受信したＰＡＴＨメッセージには、通常のグレースフル・リスタートの手順に従うため、再起動前のパス状態が含まれている。ＧＭＰＬＳ制御部３０Ｂは、受信した再起動前のパス状態に基づいて、パス状態管理テーブル３３０を更新する（図１２の３７０２）。
【０１３９】
図２０Ｄは、ＧＭＰＬＳ制御部３０Ａから受信したＲＥＳＶメッセージに基づいて復旧させたパス状態管理テーブル３３０を示している（図１８の６１９の後）。
【０１４０】
ＧＭＰＬＳ制御部３０Ｂは、ＧＭＰＬＳ制御部３０Ａから受信したＲＥＳＶメッセージに基づいて、パス状態管理テーブル３３０を復旧させる。以上の処理が完了すると、パス状態管理テーブル３３０は、図２０Ｄに示す状態となり、図２０Ａの内容と一致する。
【０１４１】
第２の実施の形態によれば、障害が発生した光スイッチ部２０が終端でない場合であっても、第１の実施の形態と同様に、グレースフル・リスタート及びプロテクション処理によって、矛盾無くパス状態を復旧させることができる。
【図面の簡単な説明】
【０１４２】
【図１】第１の実施の形態のネットワークシステムの構成図である。
【図２】第１の実施の形態の光スイッチ部の構成図である。
【図３】第１の実施の形態のＧＭＰＬＳ制御部の構成図である。
【図４】第１の実施の形態のデータ回線障害及びＧＭＰＬＳ制御部障害の二重障害が発生したときの復旧処理の手順を示すシーケンス図である。
【図５】第１の実施の形態のスイッチ状態管理テーブルの構成図である。
【図６】第１の実施の形態のスイッチ部内部状態管理テーブルの構成図である。
【図７】第１の実施の形態のパス状態管理テーブルの構成図である。
【図８】第１の実施の形態の光スイッチ部障害チェック処理のフローチャートである。
【図９】第１の実施の形態の光スイッチ部コマンド受信処理のフローチャートである。
【図１０】第１の実施の形態のＧＭＰＬＳ制御部メイン処理のフローチャートである。
【図１１】第１の実施の形態のＧＭＰＬＳ制御部メッセージ受信処理のフローチャートである。
【図１２】第１の実施の形態のＧＭＰＬＳ制御部ＰＡＴＨメッセージ処理のフローチャートである。
【図１３】第１の実施の形態のＧＭＰＬＳ制御部ＲＥＳＶメッセージ処理のフローチャートである。
【図１４】第１の実施の形態のＧＭＰＬＳ制御部光スイッチ部メッセージ受信処理のフローチャートである。
【図１５Ａ】第１の実施の形態の回線障害発生前のスイッチ状態管理テーブルを示す図である。
【図１５Ｂ】第１の実施の形態の回線障害発生後のスイッチ状態管理テーブルを示す図である。
【図１６Ａ】第１の実施の形態の再起動前のパス状態管理テーブルを示す図である。
【図１６Ｂ】第１の実施の形態のスイッチ状態受信後のパス状態管理テーブルを示す図である。
【図１６Ｃ】第１の実施の形態のＰＡＴＨメッセージ受信後のパス状態管理テーブルを示す図である。
【図１６Ｄ】第１の実施の形態のＰＡＴＨメッセージ受信後のパス状態管理テーブルを示す図である。
【図１７】第２の実施の形態のネットワークシステムの構成図である。
【図１８】第２の実施の形態の障害復旧処理のシーケンス図である。
【図１９Ａ】第２の実施の形態の回線障害発生前のスイッチ状態管理テーブルを示す図である。
【図１９Ｂ】第２の実施の形態の回線障害発生後のスイッチ状態管理テーブルを示す図である。
【図２０Ａ】第２の実施の形態の再起動前のパス状態管理テーブルを示す図である。
【図２０Ｂ】第２の実施の形態のスイッチ状態受信後のパス状態管理テーブルを示す図である。
【図２０Ｃ】第２の実施の形態のＰＡＴＨメッセージ受信後のパス状態管理テーブルを示す図である。
【図２０Ｄ】第２の実施の形態のＲＥＳＶメッセージ受信後のパス状態管理テーブルを示す図である。
【符号の説明】
【０１４３】
２０Ａ、２０Ｂ、２０Ｃ  光スイッチ部
３０Ａ、３０Ｂ、３０Ｃ  ＧＭＰＬＳ制御部
４０  Ｃ−Ｐｌａｎｅ網
５０  Ｄ−Ｐｌａｎｅ網
６０Ａ、６０Ｂ  ＬＳＰ（Ｌａｂｅｌ  Ｓｗｉｔｃｈ  Ｐａｔｈ）
【図１】
2008042807.tif 000003
【図２】
2008042807.tif 000004
【図３】
2008042807.tif 000005
【図４】
2008042807.tif 000006
【図５】
2008042807.tif 000007
【図６】
2008042807.tif 000008
【図７】
2008042807.tif 000009
【図８】
2008042807.tif 000010
【図９】
2008042807.tif 000011
【図１０】
2008042807.tif 000012
【図１１】
2008042807.tif 000013
【図１２】
2008042807.tif 000014
【図１３】
2008042807.tif 000015
【図１４】
2008042807.tif 000016
【図１５Ａ】
2008042807.tif 000017
【図１５Ｂ】
2008042807.tif 000018
【図１６Ａ】
2008042807.tif 000019
【図１６Ｂ】
2008042807.tif 000020
【図１６Ｃ】
2008042807.tif 000021
【図１６Ｄ】
2008042807.tif 000022
【図１７】
2008042807.tif 000023
【図１８】
2008042807.tif 000024
【図１９Ａ】
2008042807.tif 000025
【図１９Ｂ】
2008042807.tif 000026
【図２０Ａ】
2008042807.tif 000027
【図２０Ｂ】
2008042807.tif 000028
【図２０Ｃ】
2008042807.tif 000029
【図２０Ｄ】
2008042807.tif 000030