(57)【要約】【課題】機能拡張への対応可能性や各機能モジュールの独立性を担保しつつ、二重化構成間で通信サービスを維持するためのデータ同期を行うことを可能とする。【解決手段】当該通信制御装置６００に実装されている機能モジュール５０２−１，５０２−２とは独立したモジュールとして実装され、現用系と待機系との間で同期対象とされたデータの通知処理を行う二重化同期制御部５００（５００−１，５００−２）を備え、二重化同期制御部５００は、現用系として動作している機能モジュール５０２−１から同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取り、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュール５０２−２に受け取ったデータを引き渡す。【選択図】図１０
2010218304.tif 000002
【特許請求の範囲】
【請求項１】
現用系と待機系の二重化構成を有している通信制御装置であって、
当該通信制御装置が提供する通信サービスを実現するために実装されているプログラムモジュールである機能モジュールとは独立したモジュールとして実装され、現用系と待機系との間で同期対象とされたデータの通知処理を行う二重化同期制御部を備え、
前記二重化同期制御部は、現用系として動作している前記機能モジュールから同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取り、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュールに受け取ったデータを引き渡す
ことを特徴とする通信制御装置。
【請求項２】
二重化同期制御部は、
同期対象データとともに少なくとも通知先モジュール識別子を受け取るためのインタフェースを機能モジュールに提供し、
通知先モジュールとして指定されうる機能モジュールは、
当該機能モジュールを通知先モジュールとするデータを引き取るためのインタフェースを二重化同期制御部に提供する
請求項１に記載の通信制御装置。
【請求項３】
各機能モジュールは、
当該機能モジュールを通知先モジュールとするデータを引き取るためのインタフェースを初期化時に二重化同期制御部に通知する
請求項２に記載の通信制御装置。
【請求項４】
二重化同期制御部は、待機系の機能モジュールに通知すべきデータおよび該データに付随するデータを保持する同期処理用記憶部を含み、
前記二重化同期制御部は、現用系の各機能モジュールからの指示に応じて待機系の機能モジュールに通知すべきデータおよび該データに付随するデータを前記同期処理用記憶部に保持させ、系切り替えが実行された場合に前記同期処理用記憶部に保持されている内容に従って、待機系として動作している機能モジュールにデータを引き渡す
請求項１から請求項３のうちのいずれか１項に記載の通信制御装置。
【請求項５】
通信制御装置は、ＭＰＬＳフレームまたはＩＰパケットのフォワーディングを行う装置であって、
フォワーディングのために必要なデータのうち、フォワード処理を停止させない範囲で周辺ノードから得られるデータを同期対象データから除外する
請求項１から請求項４のうちのいずれか１項に記載の通信制御装置。
【請求項６】
現用系と待機系の二重化構成を有している通信制御装置に適用されるデータ同期方法であって、
前記通信制御装置が提供する通信サービスを実現するために実装されているプログラムモジュールである機能モジュールとは独立したモジュールとして実装される二重化同期制御用モジュールが、現用系として動作している前記機能モジュールから同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取り、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュールに受け取ったデータを引き渡し、
通知先モジュールとして指定された機能モジュールが、引き渡されたデータを引き取り、必要に応じて保持する
ことを特徴とするデータ同期方法。
【請求項７】
二重化同期制御用モジュールが、同期対象データとともに少なくとも通知先モジュール識別子を受け取るためのインタフェースを機能モジュールに提供し、
通知先モジュールとして指定されうる機能モジュールが、当該機能モジュールを通知先モジュールとするデータを引き取るためのインタフェースを二重化同期制御モジュールに提供し、
二重化同期制御用モジュールおよび機能モジュールは、提供されるインタフェースを用いて、同期対象データの引渡しおよび引取りを行う
請求項６に記載のデータ同期方法。
【請求項８】
機能モジュールが、当該機能モジュールを通知先モジュールとするデータを引き取るためのインタフェースを初期化時に二重化同期制御モジュールに通知する
請求項７に記載のデータ同期方法。
【請求項９】
二重化同期制御モジュールが、現用系の各機能モジュールからの指示に応じて待機系の機能モジュールに通知すべきデータおよび該データに付随するデータを所定の記憶装置に保持させ、系切り替えが実行された場合に前記記憶装置に保持されている内容に従って、待機系として動作している機能モジュールにデータを引き渡す
請求項６から請求項８のうちのいずれか１項に記載のデータ同期方法。
【請求項１０】
ＭＰＬＳフレームまたはＩＰパケットのフォワーディングを行う通信制御装置に適用されるデータ同期方法であって、
フォワーディングのために必要なデータのうち、フォワード処理を停止させない範囲で周辺ノードから得られるデータを同期対象データに含まない
請求項６から請求項９のうちのいずれか１項に記載のデータ同期方法。
【請求項１１】
現用系と待機系の二重化構成を有している通信制御装置に適用されるデータ同期用プログラムであって、
コンピュータに、
当該通信制御装置が提供する通信サービスを実現するために実装されているプログラムモジュールである機能モジュールとは独立したモジュールとして実装される二重化同期制御用モジュールの処理として、現用系として動作している前記機能モジュールから同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取る処理と、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュールに受け取ったデータを引き渡す処理とを実行させ、
通知先モジュールとして指定された機能モジュールの処理として、引き渡されたデータを引き取り、必要に応じて保持する処理を実行させる
ことを特徴とするデータ同期用プログラム。
【請求項１２】
ＭＰＬＳフレームまたはＩＰパケットのフォワーディングを行う通信制御装置に適用されるデータ同期用プログラムであって、
フォワーディングのために必要なデータのうち、フォワード処理を停止させない範囲で周辺ノードから得られるデータを同期対象データに含まない
請求項１１に記載のデータ同期用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現用系と待機系の二重化構成を有している通信制御装置、該通信制御装置におけるデータ同期方法およびデータ同期用プログラムに関する。
【背景技術】
【０００２】
通信制御装置の中継処理制御部の冗長化構成は、現用系の故障などの障害が発生するケース、また、機能拡張に伴ってソフトウェアのアップグレードを行うケースにおいて、通信サービスを中断させずに提供することで、通信サービスの信頼性を確保するために利用されることが一般的に知られている。
【０００３】
このような通信制御装置の冗長化構成において、設定データを現用系と待機系とでどのように同期させるかについて、一般的に２つの方式がある。
【０００４】
１つ目の方式は、二重化時に現用系と待機系とで全てのアプリケーション機能が同時に同じ動作をする方式である。例えば、Ｌ３プロトコルでＴＣＰ／ＩＰプロトコル通信を利用するアプリケーションモジュールがあったとする。ＴＣＰセッションのシーケンス番号は、ＴＣＰ／ＩＰスタック（ＴＣＰ／ＩＰ通信をとり行うプログラム・モジュール）に依存する場合が多いが、切り替え時に通信サービスを中断させずに提供するためには、これらを含めたデータの同期が必要である。
【０００５】
一般に知られるＴＣＰ／ＩＰスタックによって行われるＴＣＰプロトコル通信において、メッセージのシーケンス番号の初期値はランダムにアサインされるため、これらを含めたデータの同期を行うためには、ＴＣＰ／ＩＰスタックの修正が必要となる。このことは、様々な装置に実装するケースにおいて、ＯＳベンダやサードパーティから提供されるＴＣＰ／ＩＰスタックをそのまま利用することができないということであり、その都度同じ変更を行う必要が生じるという点でモジュール依存度を高くしてしまい、ソフトウェアの開発効率を低下させてしまう主な要因となっている。
【０００６】
２つ目の方式は、二重化におけるデータ同期を現用系側の設定データが設定・更新される度に、待機系側に通知して同期させる、および待機系が実装される契機では現用系側の設定データを取得して同期するという方式である。しかし、この方式では、二重化構成で同期させるべきデータの種別が増加するケースにおいて、その都度データ同期のための処理を追加実装する必要がある。すなわち、通信制御装置の機能を拡大するごとに、データ同期の制御を行う処理部も追加しなければならず、ソフトウェアの開発効率を低下させてしまう主な要因となっている。
【０００７】
このような通信制御装置の冗長化構成における設定データの同期方法に関して、例えば、特許文献１には、稼働中サーバのデータベース更新プロセスが、自サーバのデータベースを更新する際に保管した更新履歴を待機中サーバのデータベース更新プロセスに通知することにより、稼働中サーバと待機中サーバとの間で常時データベースの同期を図り、二重化方式を高速かつ確実に行うシステム構成が記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０００−２５０７７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特許文献１に記載されているサーバ二重化方式は、稼働中サーバと待機中サーバの各データベースを常時同期させておくことによって、メインプロセス間の通信が途絶えた際にシステム中枢サーバを無停止状態で切り替えることを目的としたものである。
【００１０】
二重化構成においてデータベースを常時同期させておく方法を採用すれば、確実にシステム中枢サーバを無停止状態で切り替えることは可能である。しかし、特許文献１では、機能拡張の際のデータ種別の追加や、各機能モジュールの独立性については特に考慮されていない。
【００１１】
そこで、本発明は、機能拡張への対応可能性や各機能モジュールの独立性を担保しつつ、二重化構成間で通信サービスを維持するためのデータ同期を行うことが可能な通信制御装置、データ同期方法およびデータ同期用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明による通信制御装置は、現用系と待機系の二重化構成を有している通信制御装置であって、当該通信制御装置が提供する通信サービスを実現するために実装されているプログラムモジュールである機能モジュールとは独立したモジュールとして実装され、現用系と待機系との間で同期対象とされたデータの通知処理を行う二重化同期制御部を備え、二重化同期制御部は、現用系として動作している機能モジュールから同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取り、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュールに受け取ったデータを引き渡すことを特徴とする。
【００１３】
また、本発明によるデータ同期方法は、現用系と待機系の二重化構成を有している通信制御装置に適用されるデータ同期方法であって、通信制御装置が提供する通信サービスを実現するために実装されているプログラムモジュールである機能モジュールとは独立したモジュールとして実装される二重化同期制御用モジュールが、現用系として動作している機能モジュールから同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取り、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュールに受け取ったデータを引き渡し、通知先モジュールとして指定された機能モジュールが、引き渡されたデータを引き取り、必要に応じて保持することを特徴とする。
【００１４】
本発明によるデータ同期用プログラムは、現用系と待機系の二重化構成を有している通信制御装置に適用されるデータ同期用プログラムであって、コンピュータに、当該通信制御装置が提供する通信サービスを実現するために実装されているプログラムモジュールである機能モジュールとは独立したモジュールとして実装される二重化同期制御用モジュールの処理として、現用系として動作している機能モジュールから同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取る処理と、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュールに受け取ったデータを引き渡す処理とを実行させ、通知先モジュールとして指定された機能モジュールの処理として、引き渡されたデータを引き取り、必要に応じて保持する処理を実行させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、通信制御装置において、機能拡張への対応可能性や各機能モジュールの独立性を担保しつつ、二重化構成間で通信サービスを維持するためのデータ同期を行うことが可能である。
【図面の簡単な説明】
【００１６】
【図１】本発明による通信制御装置２００の構成例を示すブロック図である。
【図２】本発明によるラベルスイッチングルータの構成例を示すブロック図である。
【図３】二重化同期制御部４１の構成例を示すブロック図である。
【図４】ファンクションテーブルの例を示す説明図である。
【図５】同期データ通知ＡＰＩ４１５により通知されるイベントトランザクションの例を示す説明図である。
【図６】同期対象とされる中継処理用ＦＩＢデータの例を示す説明図である。
【図７】ＭＰＬＳラベルの設定処理の処理フローの一例を示すフローチャートである。。
【図８】現用系のデータの同期処理の処理フローの例を示すフローチャートである。
【図９】待機系のデータの同期処理の処理フローの例を示すフローチャートである。
【図１０】本発明の概要を示す説明図である。
【図１１】本発明の概要において通信制御装置の他の構成例を示す説明図である。
【発明を実施するための形態】
【００１７】
以下、発明を実施するための形態を図面を参照して説明する。図１は、本実施形態の通信制御装置２００の構成例を示すブロック図である。図１に示す通信制御装置２００は、回線中継処理を行うフォワード層のハードウェア資源の１つである回線中継処理部（Ｈ／Ｗ）１０に対して、現用系の中継処理制御システム１００−１と、待機系の中継処理制御システム１００−２とを備えることによって冗長化構成となっている。
【００１８】
中継処理制御システム１００−１は、中継処理部（Ｈ／Ｗ）１１と、中継処理部（Ｓ／Ｗ）１２と、中継処理制御部２１と、中継処理用ＦＩＢ記憶部２２と、装置状態管理部３１と、プロトコル制御部３２と、コマンド処理部３３と、コマンドデータ記憶部３４と、同期用ＤＢ４１と、二重化同期制御部４２とを含む。
【００１９】
なお、中継処理制御システム１００−２も、中継処理制御システム１００−１と同様の構成である。すなわち、中継処理部（Ｈ／Ｗ）１１と、中継処理部（Ｓ／Ｗ）１２と、中継処理制御部２１と、中継処理用ＦＩＢ記憶部２２と、装置状態管理部３１と、プロトコル制御部３２と、コマンド処理部３３と、コマンドデータ記憶部３４と、同期用ＤＢ４１と、二重化同期制御部４２とを含む。
【００２０】
以下、中継処理制御システムが備える各構成要素について、含まれる中継処理制御システムを区別する際には、中継処理部（Ｈ／Ｗ）３１−１や中継処理部（Ｈ／Ｗ）３１−２のように、通計処理制御システムに付した区別符合（”−１”または”−２”）を付して表記する場合がある。
【００２１】
回線中継処理部（Ｈ／Ｗ）１０は、中継処理を行うフォワード層を構成する構成要素であって、ある中継処理部（Ｈ／Ｗ，Ｓ／Ｗ）で受信したパケットを他の中継処理部（Ｈ／Ｗ，Ｓ／Ｗ）から送信する必要がある場合に、パケットの転送経路を実現するハードウェア資源である。
【００２２】
中継処理部（Ｈ／Ｗ）１１は、中継処理を行うフォワード層を構成する構成要素であって、外部からのパケットの送受信を行う。なお、中継処理部（Ｈ／Ｗ）１１は、パケットの送受信を実現する際の機能ブロックのうちハードウェア資源によって実現される部分を指す。中継処理部（Ｓ／Ｗ）１２または中継処理制御部２１からの設定に応じて、ＭＰＬＳフレームやＩＰパケットのフォワーディング（転送または再送信）を行う。なお、Ｅｔｈｅｒｎｅｔ（登録商標），ＡＴＭ，ＳＴＭ等の回線種別により実装方式は異なる。
【００２３】
中継処理部（Ｓ／Ｗ）１２は、中継処理を行うフォワード層を構成する構成要素であって、外部からのパケットの送受信を行う際のソフトウェア処理を行う。なお、外部からのパケットの送受信を全てハードウェア資源で実現可能な場合には、当該中継処理部（Ｓ／Ｗ）１２は省略される。
【００２４】
中継処理制御部２１は、中継処理制御モジュール層を構成する構成要素であって、プロトコル制御部３１によって生成された各プロトコルに応じたフォワーディングデータをとりまとめ、フォワード層の構成要素（本実施形態では、回線中継処理部（Ｈ／Ｗ）１０，中継処理部（Ｈ／Ｗ）１１，中継処理部（Ｓ／Ｗ）１２）に対して必要な設定を行う。
【００２５】
なお、中継処理制御部２１は、当該中継処理制御システム１００（当該中継処理制御部２１を備えた中継処理制御システム１００）においてパケットの中継処理（すなわち転送処理）に必要な各種データを中継処理用ＦＩＢ記憶部２２に保持させることによって管理している。パケットの転送処理に必要なデータとして、例えば、中継処理部用ＦＩＢ（Ｆｏｒｗａｒｄｉｎｇ  Ｉｎｆｏｍａｔｉｏｎ  Ｂａｓｅ：経路制御表）として規定されるデータや回線中継処理部用ＦＩＢとして規定されるデータを保持させてもよい。以下、中継処理部用ＦＩＢとして規定されるデータと回線中継処理部用ＦＩＢとして規定されるデータとを合わせて、中継処理用ＦＩＢデータという場合がある。なお、パケットの転送処理に必要なデータは中継処理用ＦＩＢデータに限定されず、中継処理用ＦＩＢデータ以外のデータや、中継処理用ＦＩＢデータの一部であったり、中継処理用ＦＩＢデータに他のデータを付加したデータであってもよい。
【００２６】
中継処理用ＦＩＢ記憶部２２は、予め定義されたまたは中継処理制御部２１からの制御に応じて、パケットの転送処理に必要なデータを保持する。
【００２７】
装置状態管理部３１は、当該中継処理制御システム１００（当該装置状態管理部３１を備えた中継処理制御システム１００）の状態を管理する。装置状態管理部３１は、少なくとも当該中継処理制御システム１００が現用系か待機系のいずれの状態で動作しているか（系状態）を検出して、保持する。系状態の検出は、例えば、起動時に所定のＩ／Ｏや記憶領域を参照することによって行ってもよい。また、稼働中であれば、警報の発生やユーザ制御に応じて系切替が行われた（または行われる）旨を検知することによって現在の系状態に基づき行ってもよい。
【００２８】
プロトコル制御部３２は、中継処理におけるＲＳＶＰ−ＴＥ（Ｒｅｓｏｕｒｃｅ  Ｒｅｓｅｒｖａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ−Ｔｒａｆｆｉｃ  Ｅｎｇｉｎｅｅｒｉｎｇ）やＬＤＰ（Ｌａｂｌｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）、ＯＳＰＦ−ＴＥ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ−Ｔｒａｆｆｉｃ  Ｅｎｇｉｎｅｅｒｉｎｇ）等の各プロトコルの処理を行う。具体的には、隣接ノードとの間のプロトコルとしての接続と接続状態の維持、プロトコル情報の送受信、タイマの監視などを行って、中継処理制御部２１に対し、各プロトコルから生成したフォワーディング情報を提供する。
【００２９】
コマンド処理部３３は、本装置の保守者からのコマンドを受け付け、要求内容の解析と、解析結果に応じた他のモジュールへの指示を行う。また、設定の指示であれば、その設定内容の反映を各モジュールに指示し、コマンドデータ（受け付けたコマンドの内容を示す情報）の保持を行う。なお、コマンド処理部３３は、保守者から受け付けたコマンドデータをコマンドデータ記憶部３４に保持させることによって管理している。
【００３０】
コマンドデータ記憶部３４は、コマンド処理部３３からの制御に応じて、コマンドデータを保持する。なお、全てのコマンドをコマンドデータ記憶部３４への保持対象としなくてもよい。例えば、設定を指示するコマンドのみを保持対象としてもよい。なお、系切り替えの際に相手側（現用系に切り替わる側）の中継処理制御システムに通知すべき設定内容は、必ず保持しておく。
【００３１】
二重化同期制御部４１は、二重化された中継処理制御システム間で、同期すべきデータ（更新データ）の送受信をとりまとめて行うとともに、当該中継処理システム１００（当該二重化同期制御部４１を備えた中継処理システム１００）内において、受け取った更新データの分配（必要なモジュールへ引き渡す処理）を行う。なお、二重化同期制御部４１は、現用系として稼働している場合と待機系として稼働している場合の両方の動作を具備した上で、当該中継処理システム１００が現用系で稼働しているか待機系で稼働しているかによって自身の動作を切り替え可能とし、稼働している系に応じた動作（現用系動作か待機系動作のいずれか）を行う。どちらの系で稼働しているかの情報は、装置状態管理部３１から取得すればよい。
【００３２】
例えば、二重化同期制御部４１では、現用系動作として、当該中継処理システム１００内の各モジュールからの要求に応じて、指示された更新データを相手側の中継処理制御システム１００（より具体的には、相手側の中継処理制御システム１００が備える二重化同期制御部４１）に送信する。なお、送信する更新データには、当該更新データの種別を示す情報と、指示を行ったモジュールを識別するための情報（以下、モジュール識別子）が付加されることとする。そして、受け取った相手側の中継処理制御システム１００の二重化同期制御部４１では、待機系動作として、受け取った更新データに含まれるこれらの情報に基づいて分配先となるモジュールを特定する。図１において、太線の矢印は、このような方法により同期される設定データの流れを示している。
【００３３】
このような方法により、二重化同期制御部４１では、どのようなデータを同期すべきデータとして扱っているかについては一切関知せずに、同期すべきデータの送受信および分配を行う。なお、本実施形態では、各モジュールに対して、相手側にデータの送信を要求するためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）や相手側からデータを受け取ったときに呼ぶ関数（データを引き取るためのコールバック関数）を登録するためのＡＰＩを提供する。
【００３４】
なお、更新対象のデータとそのデータに関連する機能モジュールの対応付けの特定については、予め二重化制御部側にてマッピング情報を持たせ、このマッピング情報を参照することで行ってもよい。なお、マッピング情報は初期化用のＡＰＩを用意するなどして起動時に各モジュールから情報を提供してもらうことによって動的に生成することも可能である。
【００３５】
なお、二重化同期制御部４１は、内部モジュールや相手側から受け取った更新データや、該更新データの送受信または分配に必要なデータを管理するために、同期用データベース（同期用ＤＢ）４２を有している。同期用ＤＢ４２は、予め定義されたまたは二重化同期制御部４１からの制御に応じて、内部モジュールや相手側から受け取った更新データや、該更新データの送受信または分配に必要なデータを保持する。
【００３６】
本実施形態において、二重化同期制御部４１，コマンド処理部３３，プロトコル処理部３２，装置状態管理部３１，中継処理制御部２１，中継処理部（Ｓ／Ｗ）１２は、例えば、プログラムに従って動作するＣＰＵ等によって実現される。なお、層毎またはフォワーダ層と他の層とで異なるＣＰＵによって実現されていてもよい。また、同期用ＤＢ４２，コマンドデータ記憶部３４，中継処理用ＦＩＢ記憶部２２は、例えば、メモリ等の記憶装置によって実現される。なお、中継処理制御システムを構成する各機能の二重化は、現用系と待機系とを異なるハードウェア資源（ＣＰＵやメモリ）により実現することによって、完全に独立した情報処理システムとして機能するようにしてもよい。
【００３７】
以下、本実施形態の一具体例として、本通信制御装置２００がＭＰＬＳのラベルスイッチングルータである場合の機能配備を図２に示す。図２は、本発明によるラベルスイッチングルータ２００の構成例を示すブロック図である。図２に示す例では、図１に示した構成におけるプロトコル処理部３２を実現するアプリケーションモジュールとして、２つのプロトコルモジュール（ＲＳＶＰ−ＴＥ制御部２３１とＬＤＰ制御部２３２）を備えている。また、フォワーダ層において中継処理部が全てハードウェア資源によって実現されている。
【００３８】
本実施例では、ＲＳＶＰ−ＴＥ制御部２３１は、ＲＳＶＰプロトコルに従って、ＭＰＬＳのラベルフォワーディングのためのラベル情報の配付を含むプロトコル制御を行う。また、ＬＤＰ制御部２３２は、ＬＤＰプロトコルに従って、ＭＰＬＳのラベルフォワーディングのためのラベル情報の配付を含むプロトコル制御を行う。
【００３９】
また、中継処理制御部２１は、ＭＰＬＳのラベルフォワーディングを行う。現用系の中継処理制御部２１では、プロトコルモジュールであるＲＳＶＰ−ＴＥ制御部３２１およびＬＤＰ制御部３２２、またはコマンド処理部３３から通知されるラベルアサイン要求を元に、中継処理部１１および回線中継処理部１０に対してＭＰＬＳのデータフォワーディングのためのラベル設定を行う。またその際に、そのＭＰＬＳラベルの設定データを中継処理用ＦＩＢ記憶部２２に保持させる。
【００４０】
なお、中継処理制御部２１において、ＭＰＬＳのフォワーディングのためにデータを設定する箇所として、中継処理部１１と回線中継処理部１０を挙げているが、実装する装置のハードウェア構成に依存する部分であるため、この限りではない。
【００４１】
また、コマンド処理部３３は、各機能部に対してコマンド設定の処理を行う。コマンド処理部３３は、オペレータからのコマンド実行によって設定されるコマンドをコマンドデータＤＢ３４に保持させた上で、必要に応じて各機能部に設定するための制御を行う。本実施例では、少なくともＬＤＰ制御部３２２、装置状態管理部３１、中継処理部２１に対してコマンド設定の処理を行う。
【００４２】
また、中継処理制御部２１は、中継処理部１１に対してＭＰＬＳのフォワーディングのためのラベル情報を設定する処理を行う。
【００４３】
また、装置状態管理部３１は、二重化同期制御部４１や他の機能部に対して、当該中継処理制御システムの状態が現用系または待機系かを通知するための処理を行う。
【００４４】
また、二重化同期制御部４１は、現用系の各機能部が保持している設定データを待機系の各機能部へ同期させるための制御を行う。本実施例では、少なくとも現用系の中継処理部１１が保持している、ＭＰＬＳのフォワーディング情報の設定データを待機系の中継処理部１１に同期させるための制御を行う。
【００４５】
図３は、二重化同期制御部４１のより詳細な構成例を示すブロック図である。図３に示す例では、二重化同期制御部４１は、設定データの同期処理の制御を行う二重化同期制御機能部４１１および同期処理を実施するための二重化同期用ＡＰＩ群（４１２〜４１５）とを含む。本例における二重化同期用ＡＰＩ群は、ＤＢ操作ＡＰＩ４１２、初期化ＡＰＩ４１３、装置状態通知ＡＰＩ４１４、同期データ通知ＡＰＩ４１５である。
【００４６】
初期化ＡＰＩ４１３は、装置起動時において、各モジュールが起動する際に実行され、データ設定用のＡＰＩをファンクションテーブル（後述する図４参照）に対してモジュールを識別する識別子（モジュールＩＤ）とそれに対応するファンクション名の登録を行う。各機能部は、例えば、当該機能部のモジュールが起動する際に、当該機能部が有する更新データの引き取り用ＡＰＩを引数にして初期化ＡＰＩを呼び出せばよい。
【００４７】
二重化同期制御部４１では、現用系の二重化同期制御部４１から通知されるデータに対応づくアプリケーションモジュールに対して通知する際に、該ファンクションテーブルを参照することによって、対象の通知先のモジュールが有する設定用ＡＰＩを特定して、該ＡＰＩをコールして該ＡＰＩの処理によって、待機系側の同期データの設定処理を行う。なお、図３では、現用系の二重化同期制御機能部４１１と待機系の二重化同期制御機能部４１１との間の同期データのやりとりも同期データ通知ＡＰＩを介して行う例が示されているが、二重化同期制御機能部４１１間のデータ通信に関しては内部メッセージや共有メモリを利用するなど別の方法をとってもよい。
【００４８】
また、初期化ＡＰＩ４１３では、装置状態管理部３１からの呼出に対しては、装置状態管理部３１が外部モジュールに提供する装置状態の取得用ＡＰＩを受け取って、ファンクションテーブルに登録を行う。装置状態管理部３１は、例えば、当該装置状態管理部３１のモジュールが起動する際に、当該装置状態管理部３１が有する装置状態の取得用ＡＰＩを引数にして初期化ＡＰＩ４１３を呼び出せばよい。
【００４９】
図４は、ファンクションテーブルの例を示す説明図である。図４では、ファンクションテーブルとして、インデックスと、モジュールＩＤと、通知先モジュールの同期データ通知用ＡＰＩとを対応づけて保持する例が示されている。
【００５０】
同期データ通知ＡＰＩ４１５は、次の処理を行う。同期データ通知ＡＰＩ４１５は、中継処理制御部２１においてＭＰＬＳフォワーダに対して設定するラベルデータおよびコマンド処理部３３においてオペレータから実行されるコマンドデータを二重化同期制御機能部４１１へ通知する処理を行う。
【００５１】
また、現用系として稼働している場合には、中継処理制御部２１またはコマンド処理部３３から同期データを受け付けると、待機系の二重化同期制御機能部４１１へ受け付けた同期データを通知する。なお、待機系の二重化同期制御機能部４１１への通知は、一旦現用系の二重化同期制御機能部４１１に引き渡し、その現用系の二重化同期制御機能部４１１による制御によって行うことも可能である。
【００５２】
また、待機系として稼働している場合には、現用系の二重化月制御機能部４１１から同期データを受け付けて、受け付けたデータの種別等の識別子に応じて、待機系の中継祖ｈり制御部２１またはコマンド処理部３３に受け付けたデータを通知する。
【００５３】
図５は、本ＡＰＩにより通知されるイベントトランザクションの例を示す説明図である。同期データ通知ＡＰＩ４１５に対して、例えば、（通知先）モジュールＩＤと、モジュール内データ種別と、通知データと、オペレーション種別とを渡して、同期データ通知ＡＰＩ４１５内では渡されたデータ内容を図５に示すように、同期処理イベントトランザクションとしてキューに積み込んで、逐次そのトランザクションを実行するようにしてもよい。なお、図５では、例えば、イベントトランザクションの１つ目として、モジュールＩＤ＝１００であるコマンド処理部３３へ、モジュール内データ種別＝００１である設定コマンドに関するデータとして、”データＡ”の追加を通知する旨の依頼を受けたことが示されている。なお、通知先モジュールＩＤとして、大抵は待機系における当該モジュールを識別するモジュールＩＤが設定される。
【００５４】
同期データ通知ＡＰＩ４１５では、同期処理イベントトランザクションをキューに積むとともに、ＤＢ操作ＡＰＩ４１２を用いて、同期用ＤＢ４２にそのイベントトランザクションの内容に応じたデータの登録または削除を行う。また、二重化同期制御部間では、現用系から待機系へ、イベントトランザクションデータの通知を行う。
【００５５】
イベントトランザクションデータを受け取った待機系の二重化同期制御部は、トランザクションデータを同様にキューに積み、逐次実行すればよい。トランザクションの実行は、既に説明したファンクションテーブルを参照して該当するモジュールＩＤと一致するファンクション（図４における通知先モジュールの同期データ通知用ＡＰＩ）を呼び出すことによって行えばよい。ここで、呼び出されるファンクションは、既に説明したように装置初期起動時に各アプリケーションモジュールの初期化処理において、あらかじめファンクションテーブルへ登録されたものが用いられるものとする。
【００５６】
装置状態通知ＡＰＩ４１４は、現用系か待機系かの２つの装置状態が変化すると、装置状態管理部３１より、呼び出される。装置状態通知ＡＰＩ４１４では、二重化同期制御機能部４１１に対して、その変更を通知する処理を行う。変更の通知を受けた二重化同期制御機能部４１１は、起動時に装置状態管理部３１から初期化ＡＰＩ４１３が呼び出されることによってファンクションテーブルに登録された装置状態取得用ＡＰＩを呼び出すことによって、装置状態を取得すればよい。
なお、本実施例では、コントロールプレーンでのプロトコルモジュールがもつステータス情報の同期については、ＲＦＣ準拠のＧｒａｃｅｆｕｌ  Ｒｅｓｔａｒｔ機能を使用することを前提とする。よって、Ｌ３プロトコルモジュールのステータス情報は同期すべきデータから除外される。
【００５７】
すなわち、Ｌ２パケット転送、ＭＰＬＳ転送を実現するために必要なデータのうち、他の手段により入手可能なデータ以外の同期処理に必要なデータだけを選択することによって、二重化対象データを限定する。
【００５８】
図６は、同期対象とされる中継処理用ＦＩＢデータの例を示す説明図である。図６に示すように、本実施例では、同期対象データとして、中継処理用ＦＩＢ記憶部２２に次のデータを保持するようにしてもよい。すなわち、受信インタフェース（ＩＦ）名と、受信ラベルと、送信インタフェース（ＩＦ）名と、送信ラベルと、ラベル情報とを保持するようにしてもよい。なお、図６に示す１行は、ＬＳＰ（ｌａｂｅｌ  ｓｗｉｔｃｈ  ｐａｔｈ）１つに対応している。中継処理用ＦＩＢ記憶部２２では、保持するＬＳＰの数分、上記に示すラベルデータを保持すればよい。ラベルデータは、本装置がＭＰＬＳパケットを受信したときに、どのような処理を行い、どう送信するかを記述するものである。
【００５９】
なお、プロトコル制御部３２では、上記示したデータ以外に内部的に、ルーティングプロトコル（ＰＳＰＦ，ＬＤＰ，ＲＳＶＰ等）の隣接ノードの状態やＩＰネットワークのトポロジの情報、隣接ノードからのラベル割り当て情報を保持しており、これらの情報を基に、中継処理用ＦＩＢ記憶部２２に保持されるデータを選出する。
【００６０】
本装置では、ＭＰＬＳパケットを受信したときに、まずどのインタフェースで受信し、ＭＰＬＳラベルは何であったかを認識する。そして各データの中から、受信インタフェース名および受信ラベルの組が受信したＭＰＬＳパケットと一致するものを選び出し、選び出したラベルデータに従い、受信したパケットに処理を行って該パケットを送信する。パケットに行う処理は、ラベル操作に書かれた内容に従う。例えば、”ｓｗａｐ”であれば、ラベルを送信ラベルで示されるラベルに書き換える。例えば、”ｐｏｐ”であれば、ラベルを削除する。例えば、”ｐｕｓｈ”であればラベルをもう１段追加する。このように処理されたパケットを送信インタフェース名で指定されたインタフェースから送信する。なお、ＭＰＬＳパケットの転送処理自体に本発明に必要な特別な機能はないため、通常の転送処理を行えばよい。
【００６１】
次に、本実施例の動作について説明する。図７〜図９は、本実施例のラベルスイッチングルータのＭＰＬＳフォワーダに対するＭＰＬＳラベルデータの同期処理に関わる処理フローの例を示すフローチャートである。図７および図８は、現用系の中継処理制御システムにおけるＭＰＬＳラベルの設定処理の処理フローの一例を示すフローチャートである。なお、図８は、そのうちの（ＭＰＬＳラベルの設定処理において実行される）現用系のデータ同期処理フローの一例を示すフローチャートである。
【００６２】
なお、本例では、プロトコルモジュールが、対向装置のプロトコル機能との間で行われるシグナリングにより、ＭＰＬＳのデータフォワーディングのためのラベルをアサインできているものとする。
【００６３】
まず、図７および図８を参照して現用系の設定データの同期処理について説明する。図７に示す例では、まず、ＲＳＶＰ−ＴＥ制御部３２１とＬＤＰ制御部３２２とが、中継処理制御部２１に対してラベルアサイン要求を通知する（ステップＳ１０１）。ＲＳＶＰ−ＴＥ制御部３２１はＭＰＬＳのＴｕｎｎｅｌラベルについて、またＬＤＰ制御部３２２はＭＰＬＳのＶＣラベルについてそれぞれ中継処理制御部２１に対してラベルアサイン要求を通知する。なお、ステップＳ１０１の動作は、設定データの同期処理の開始タイミングの一例であって、同期処理の開始タイミングはこの限りではない。
【００６４】
中継処理制御部２１では、プロトコルモジュール（ＲＳＶＰ−ＴＥ制御部３２１とＬＤＰ制御部３２２）から通知されたＭＰＬＳのフォワーディングラベルを基に、中継処理部１１−１に対してＭＰＬＳラベルの設定を行う（ステップＳ１０２）。本例では、中継処理制御部２１は、中継処理部に対して、ＭＰＬＳ  ＴｕｎｎｅｌラベルおよびＭＰＬＳ  ＶＣラベルのＰＵＳＨとＰＯＰの設定を行う。
【００６５】
また、中継処理制御部２１は、中継処理部１１に対して設定したＭＰＬＳラベルデータを中継処理用ＦＩＢ２２に格納する（ステップＳ１０３）。
【００６６】
次に、中継処理制御部２１は、現用系の設定データの同期処理を実行する（ステップＳ１０４）。
【００６７】
図８は、ＭＰＬＳラベルの設定処理において実行される現用系のデータ同期処理フローの一例を示すフローチャートである。図８に示すように、現用系の設定データの同期処理は、例えば、現用系として動作している中継処理制御部２１−１が、設定した中継処理用ＦＩＢのラベルデータを同期データとして、同期データ通知ＡＰＩ４１５−１をコールすることにより、現用系の二重化同期制御部４１（図２に示す例では、二重化同期制御部４１−１）に通知する（ステップＳ１１１）。
【００６８】
現用系の二重化同期制御部４１−１は、同期データ通知ＡＰＩ４１５−１がコールされると、その同期データ通知ＡＰＩ４１５−１内またはその同期データ通知ＡＰＩ４１５−１によって発せられたイベントによるイベント処理においてＤＢ操作ＡＰＩ４１２−１をコールし、同期用ＤＢ４２−１へ、同期データとして渡されたＭＰＬＳラベルデータを格納する（ステップＳ１１２）。
【００６９】
次に、二重化同期制御部４１−１は、ステップＳ１１２の処理を含む一連の同期データ通知処理の流れにおいて、同期データとして渡されたＭＰＬＳラベルデータを、待機系の二重化同期制御部４１−２に通知する（ステップＳ１１３）。待機系の二重化同期制御部４１−２への通知は、待機系の二重化同期制御部４１−２が提供する同期データ通知ＡＰＩ４１５−２をコールすることにより行ってもよい。
【００７０】
次に、図９を参照して待機系の設定データの同期処理について説明する。図９は、待機系のデータ処理の処理フローの一例を示すフローチャートである。図９に示すように、まず、待機系の二重化同期制御部４１−２では、現用系の二重化同期制御部４１−１から同期データの通知を受けると（ステップＳ２０１）、その同期データに付与されている通知先モジュールＩＤを参照し、通知先モジュールを判別する（ステップＳ２０２）。
【００７１】
次に、二重化同期制御部４１−２は、判別した通知先モジュールの情報を基に、ファンクションテーブルを参照して、該通知先モジュールに対するデータ設定用ＡＰＩを取得し、コールする（ステップＳ２０３，Ｓ２０４）。
【００７２】
ステップＳ２０４で通知先モジュールに対するデータ設定用ＡＰＩをコールすることによって、各通知先モジュールに依存したデータ設定処理が行われる。
【００７３】
例えば、ＭＰＬＳのラベルデータの同期処理の場合、中継処理制御部２１−２によって提供されるデータ設定用ＡＰＩがコールされる。なお、コマンドデータの同期処理の場合には、コマンド処理部３３−２によって提供されるデータ設定用ＡＰＩがコールされる。
【００７４】
中継処理制御部２１−２によって提供されるデータ設定用ＡＰＩでは、そのデータ設定用ＡＰＩ内において通知イベントを発生させるなどして、通知された中継処理用ＦＩＢのラベルデータを中継処理制御部２１−２に通知する（ステップＳ２１１）。
【００７５】
中継処理制御部２１−２では、データ設定用ＡＰＩによって中継処理用ＦＩＢのＭＰＬＳラベルデータの通知を受けると、中継処理用ＦＩＢ記憶部２２−２を更新するとともに、中継処理部１１−２に対して、ＭＰＬＳのフォワーディングのラベルを設定する（ステップＳ２１２）。
【００７６】
また、二重化同期制御部４１−２は、データ設定用ＡＰＩをコールする処理を含む一連の同期データ通知処理の流れにおいて、ＤＢ操作ＡＰＩをコールし、同期用ＤＢ４２−２に受け取ったＭＰＬＳのラベルデータを格納する（ステップＳ２０５）。なお、ステップＳ２０５の処理は、データ設定用ＡＰＩをコールする前に行ってもよい。
【００７７】
以上は、ＭＰＬＳのラベルデータの同期処理の場合の処理の流れであるが、コマンドデータの設定フローの場合も基本的には同様である。ただし、ステップＳ２０４以降の各通知先モジュールに依存したデータ設定処理は異なる。
【００７８】
コマンド処理部３３−２によって提供されるデータ設定用ＡＰＩでは、そのデータ設定用ＡＰＩ内において通知イベントを発生させるなどして、通知されたコマンドデータをコマンド処理部３３−２に通知する（ステップＳ２２１）。
【００７９】
コマンド処理部３３−２では、データ設定用ＡＰＩによってコマンドデータの通知を受けると、コマンドデータ記憶部３４−２を更新するとともに、通知されたコマンドデータによって示されるコマンドを実行する（ステップＳ２２２）。
【００８０】
なお、上記例では、ＭＰＬＳフレームの転送を行うラベルスイッチングルータを例に説明したが、ＭＰＬＳフレームに限らず、ＩＰパケットの転送処理やＬ２フレームの転送処理等においても同様の方式を適用することができる。なお、ユーザトラフィックの転送処理の機能配備について、基本的には、図１に示すような中継処理部１１，１２および回線中継処理部１０の構成と同様でよいが、データ転送のためのパス情報として、ＩＰパケット転送の場合は、入力時のＩＦ（インタフェース）と宛て先ＩＰアドレスとこれに対する送信先ＩＦ情報をフォワーダに設定すればよい。また、Ｌ２フレーム転送の場合は、入力時のＩＦとＶＬＡＮ情報、およびこれらに対する送信先のＩＦ情報をフォワーダに転送すればよい。
【００８１】
以上のように、本実施形態によれば、現用系の中継処理制御システム１００−１と、待機系の中継処理制御システム１００−２の間で同期処理を行う機能部（二重化同期制御部４２）と、各アプリケーションモジュールおよびプロトコルモジュールとを独立させて配備することで、二重化構成時の設定データの同期処理の一元的な制御を実現している。これにより、各機能モジュール（アプリケーションモジュールやプロトコルモジュール、Ｌ２制御モジュール等）では、二重化時の設定データの同期処理のために必要とされる転送処理を意識して実装する必要がなく、ソフトウェアの開発量を抑えることができる。また各機能モジュールでは、共通化されたＡＰＩを実装すればよいため、装置への実装する際のポータビリティを確保できる。
【００８２】
また、実装対象となる装置の構成に依存して、ＭＰＬＳのフォワーディングのために設定される複数種類のラベルデータが存在する場合や、同期すべきデータをもつアプリケーションが複数存在する場合であっても、本実施形態による同期データの格納構造（例えば、図５）とデータ設定のためのファンクションテーブルを構築することによって、柔軟に対応することができる。これは、本発明では、現用系のデータベースと待機系のデータベースとを常時完全に同一にすることは目的としておらず、なにを同期させるかや引き取ったデータをどう扱うかは各機能モジュールの自由であることを意味している。これにより、機能拡張の際に同期データが新たに追加された場合であっても、新たな実装の追加を最小限とすることができる。
【００８３】
また、本実施形態では、無停止のためのデータ保持に関して、ＦＩＢ情報を中心とする限定的な内容のみを同期対象とし、ＭＰＬＳフレームおよびＩＰパケットのフォワーディングを行う装置として必要な大部分のデータについてはＲＦＣ順序のＧｒａｃｅｆｕｌ  Ｒｅｓｔａｒｔ等を利用して、周辺ノードから収集する方法を採用することによって、同期対象データを限定している。すなわち、Ｌ２パケット転送やＭＰＬＳ転送に必要なデータのなかで、他の手段により入手可能なデータ以外を選択して同期データとすることで、二重化の対象とするデータ量を大幅に減少し、系切り替え時に要する時間の短縮や、二重化を考慮するモジュールの局所化を実現可能にしている。
【００８４】
なお、上記例では、設定データの変更がある度に同期データ通知ＡＰＩ４１５−１が呼ばれ、その同期データ通知ＡＰＩ４１５−１を介した通知によって現用系の二重化同期制御部４１−１が待機系の二重化同期制御部４１−２に同期データを通知する例を示したが、同期データの通知タイミングはこの限りではない。例えば、運用端末からの系切り替えの指示があったときに、コマンド処理部１２からの通知を受けた各アプリケーションモジュール・プロトコルモジュールが同期データ通知ＡＰＩ４１５−１を呼ぶようにしてもよい。また、例えば、設定データの更新の度に同期データ通知ＡＰＩ４１５−１を呼ぶようにはするが、その同期データ通知ＡＰＩ４１５−１から始まる同期処理では、引き取った同期データを同期用ＤＢ４２−１に保持させるにとどめておき、運用端末からの系切り替えの指示があったときに、コマンド処理部１２からの通知を受けた現用系の二重化同期制御部４１−１が、同期用ＤＢ４２−１に保持されたデータを使って待機系の二重化同期制御部４１−２に一括して通知を行うようにしてもよい。
【００８５】
このように系切り替え時に現用系から待機系に必要なデータだけを転送することによって、切り替えのためにかかる処理時間および転送データ容量のさらなる削減が可能となる。
【００８６】
従って、例えば、通信事業者の商用のＩＰおよびＭＰＬＳネットワーク網において、装置の現用系での障害発生ケースおよびファイルアップグレードを実施するケースにおいて、通信サービスを中断させることなく継続して提供することができる。
【００８７】
次に、本発明の概要について説明する。図１０は、本発明の概要を示す説明図である。図１０に示す通信制御装置６００は、現用系と待機系の二重化構成として、制御システム５００−１と、制御システム５００−２とを有している通信制御装置であって、二重化同期制御部５０１（図１０の例では５０１−１と５０１−２）を備えている。
【００８８】
なお、図１０に示す例では、現用系処理を実行する二重化同期制御部５０１を二重化同期制御部５０１−１として示し、待機系処理を実行する二重化同期制御部５０１を二重化同期制御部５０１−２として示している。また、現用系として動作している機能モジュール５０２を機能モジュール５０２−１として示し、待機系として動作している機能モジュール５０２を機能モジュール５０２−２として示している。
【００８９】
二重化同期制御部５０１は、当該通信制御装置が提供する通信サービスを実現するために実装されているプログラムモジュールである機能モジュール５０２（図１０の例では５０２−１と５０２−２）とは独立したモジュールとして実装され、現用系と待機系との間で同期対象とされたデータの通知処理を行う。
【００９０】
二重化同期制御部５０１は、より具体的には、現用系として動作している機能モジュールから同期対象データとともに、該データに付随するデータとして少なくとも通知先となるモジュールを識別するための通知先モジュール識別子を受け取り、受け取った通知先モジュール識別子を基に、待機系として動作している機能モジュールに受け取ったデータを引き渡すことによって現用系と待機系との間で同期対象とされたデータの通知処理を行う。
【００９１】
また、二重化同期制御部５０１は、例えば、同期対象データとともに少なくとも通知先モジュール識別子を受け取るためのインタフェースを機能モジュールに提供してもよい。また例えば、通知先モジュールとして指定されうる機能モジュール５０２は、当該機能モジュール５０２を通知先モジュールとするデータを引き取るためのインタフェースを二重化同期制御部５０１に提供してもよい。また例えば、各機能モジュール５０２は、当該機能モジュールを通知先モジュールとするデータを引き取るためのインタフェースを初期化時に二重化同期制御部５０１に通知してもよい。
【００９２】
また、図１１に示すように、二重化同期制御部５０１は、同期処理用記憶部５０３（図１１に示す例では、５０３−１，５０３−２）を含んでいてもよい。なお、図１１に示す例では、現用系として動作している二重化同期制御部５０１の制御対象とされる同期処理用記憶部５０３を同期処理用記憶部５０３−１として示し、待機系として動作している二重化同期制御部５０１の制御対象とされる同期処理用記憶部５０３を同期処理用記憶部５０３−２として示している。
【００９３】
同期処理用記憶部５０３は、二重化同期制御部５０１からの制御に応じて、待機系の機能モジュールに通知すべきデータおよび該データに付随するデータを保持する。このような構成の場合には、二重化同期制御部５０１（より具体的には二重化同期制御部５０１−１）は、現用系の各機能モジュール５０２−１からの指示に応じて待機系の機能モジュール５０２−２に通知すべきデータおよび該データに付随するデータを同期処理用記憶部５０３−１に保持させ、系切り替えが実行された場合に同期処理用記憶部５０３−１に保持されている内容に従って、待機系として動作している機能モジュールにデータを引き渡してもよい。
【００９４】
また、通信制御装置６００が、ＭＰＬＳフレームまたはＩＰパケットのフォワーディングを行う装置である場合には、フォワーディングのために必要なデータのうち、フォワード処理を停止させない範囲で周辺ノードから得られるデータを同期対象データから除外するようにしてもよい。
【００９５】
なお、図１０および図１１では、二重化された制御システム内でそれぞれ二重化同期制御部５０１を備える例を示しているが、二重化された制御システムとは別に独立したＣＰＵ等によって実現される場合には、現用系用の処理と待機系用の処理の両方を行う１つの二重化同期制御部５０１を備えるといった構成も可能である。そのような場合には、二重化同期制御部５０１は、現用系用の処理を現用系として動作している制御システム５００−１に対して提供し、待機系の処理を待機系として動作している制御システム５００−２に対して提供するようにすればよい。
【産業上の利用可能性】
【００９６】
本発明は、ＭＰＬＳフレームやＩＰパケット、Ｌ２フレームといった通信パケットに対して何らかの制御を行う通信制御装置であって、通信サービスの無停止のための二重化構成を備えている通信制御装置に、好適に適用可能である。
【符号の説明】
【００９７】
２００  通信制御装置
１００−１  中継処理制御システム（現用系）
１００−２  中継処理制御システム（待機系）
１０  回線中継処理部
１１  中継処理部（Ｈ／Ｗ）
１２  中継処理部（Ｓ／Ｗ）
２１  中継処理制御部
２２  中継処理用ＦＩＢ記憶部
３１  装置状態管理部
３２  プロトコル制御部
３３  コマンド処理部
３４  コマンドデータ記憶部
４１  二重化同期制御部
４２  同期用データベース（ＤＢ）
６００  通信制御装置
５００−１  制御システム１
５００−２  制御システム２
５０１  二重化同期制御部
５０２  各種機能モジュール
５０３  同期処理用記憶部
【図１】
2010218304.tif 000003
【図２】
2010218304.tif 000004
【図３】
2010218304.tif 000005
【図４】
2010218304.tif 000006
【図５】
2010218304.tif 000007
【図６】
2010218304.tif 000008
【図７】
2010218304.tif 000009
【図８】
2010218304.tif 000010
【図９】
2010218304.tif 000011
【図１０】
2010218304.tif 000012
【図１１】
2010218304.tif 000013