以下、図面に基づいて、本願の開示する通信制御装置及び通信システムの実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。また、以下に示す実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
図1は、実施例1の通信システム1の一例を示す説明図である。図1に示す通信システム1は、例えば、WAN(Wide Area Network)回線2で通信接続する複数の通信装置Nと、例えば、制御NW3経由で各通信装置Nを制御する複数の制御装置Cと、利用者端末4と、複数の拠点Tとを有する。通信システム1は、各制御装置Cが各通信装置Nを制御する、例えば、SDN(Software Defined Networking)技術を採用している。尚、説明の便宜上、通信装置Nは、例えば、N1〜N6、制御装置Cは、例えば、C1〜C4とする。通信システム1では、例えば、WAN回線2上の通信装置Nを経由して拠点T1と拠点T2との間の経路を確立する。
利用者端末4は、拠点T1と拠点T2との間をWAN回線2上の複数の通信装置Nを経由して拠点T1と拠点T2との間の経路設定を要求する。制御装置Cは、利用者端末4からの設定要求に応じて自装置が担当する通信装置Nに転送設定情報を設定する。尚、転送設定情報は、例えば、通信装置N1の転送設定情報の場合、例えば、拠点T1から拠点T2宛のパケットを通信装置N2に転送するといった情報である。例えば、通信装置N2の転送設定情報としては、例えば、通信装置N1から拠点T2宛のパケットを通信装置N3に転送するといった情報である。転送設定情報は、例えば、OpenFlowプロトコルのAPIに適合するように記述されているものとする。
例えば、制御装置C1は、通信装置N1及びN2を制御するマスタの制御装置C、制御装置C2は、通信装置N3を制御するマスタの制御装置Cである。また、制御装置C3は、通信装置N4及びN5を制御するマスタの制御装置C、制御装置C4は、通信装置N6を制御するマスタの制御装置Cである。通信システム1は、例えば、関西地域のエリアA1と、関東地域のエリアA2とに分割している。そして、エリアA1には、制御装置C1及びC2、通信装置N1、N2及びN3を配置して属し、エリアA2には、制御装置C3及びC4、通信装置N4、N5及びN6を配置して属しているものとする。
図2は、実施例1の制御装置Cの一例を示す説明図である。図2に示す制御装置Cは、NWIF(Network Interface)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、主記憶装置14と、CPU(Central Processing Unit)15と、データバス16とを有する。NWIF11は、制御NW3との間の通信を司るIFである。ROM12は、様々なプログラムや、各プログラムの実行に際してCPU15が使用するデータを格納する領域である。RAM13は、例えば、ROM12に格納されたプログラムをロードするCPU15の作業領域である。主記憶装置14は、各種情報を記憶する領域である。CPU15は、制御装置C全体を制御する。CPU15は、ROM12に格納されたプログラムをRAM13にロードして実行することで各種プロセスを機能として実行する。
主記憶装置14は、トポロジDB(Data Base)21と、エリアDB22と、マスタDB23と、経路DB24と、区間DB25とを有する。トポロジDB21は、WAN回線2上の通信装置N間のリンク構成、すなわちトポロジ構成を含むトポロジ情報を格納するDBである。エリアDB22は、通信装置N及び制御装置C毎に、その配置箇所の地域を示すエリアIDを管理するエリア情報を格納するDBである。図3は、エリア情報の一例を示す説明図である。図3に示すエリア情報は、装置ID22Aと、エリアID22Bとを対応付けて管理する情報である。装置ID22Aは、制御装置C又は通信装置Nを識別するIDである。エリアID22Bは、エリアを識別するIDである。CPU15は、図3に示すエリア情報を参照し、通信装置N1〜N3がエリアA1、通信装置N4〜N6がエリアA2、制御装置C1及びC2がエリアA1、制御装置C3及びC4がエリアA2と識別する。
マスタDB23は、通信装置N毎に、マスタの制御装置Cを管理するマスタ情報を格納するDBである。図4は、マスタ情報の一例を示す説明図である。図4に示すマスタ情報は、通信装置ID23Aと、マスタID23Bとを対応付けて管理する情報である。通信装置ID23Aは、通信装置Nを識別するIDである。マスタID23Bは、マスタの制御装置Cを識別するIDである。CPU15は、図4に示すマスタ情報を参照し、通信装置N1及びN2のマスタとして制御装置C1、通信装置N3が制御装置C2、通信装置N4及びN5が制御装置C3、通信装置N6が制御装置C4と識別する。
経路DB24は、WAN回線2上に経路を設定する際の経路情報を格納するDBである。図5は、経路情報の一例を示す説明図である。図5に示す経路情報は、経路ID24Aと、管理ID24Bと、始点ID24Cと、終点ID24Dと、経路24Eとを対応付けて管理する情報である。経路ID24Aは、経路を識別するIDである。管理ID24Bは、経路を管理する制御装置Cを識別するIDである。始点ID24Cは、経路の始点を識別するIDである。終点ID24Dは、経路の終点を識別するIDである。経路24Eは、経路上の始点から終点までに通過する通信装置Nの経路順序を示すリストである。CPU15は、図5に示す経路情報を参照し、経路R1を管理する制御装置CをC1、始点を拠点T1、終点を拠点T2、経路として拠点T1、通信装置N1、N3、N4、N6及び拠点T2を識別する。
区間DB25は、経路を分割した際の区間情報を格納するDBである。図6は、区間情報の一例を示す説明図である。図6に示す区間情報は、区間ID25Aと、経路ID25Bと、管理ID25Cと、始点ID25Dと、終点ID25Eと、経路25Fとを対応付けて管理する情報である。区間ID25Aは、区間を識別するIDである。経路ID25Bは、経路を識別するIDである。管理ID25Cは、区間内の障害発生時に障害復旧に対応する障害対応の制御装置Cを識別するIDである。始点ID25Dは、区間内の始点を識別するIDである。終点ID25Eは、区間内の終点を識別するIDである。経路25Fは、区間内の始点から終点までに通過する通信装置Nの経路順序を示すリストである。CPU15は、図6に示す区間情報を参照し、区間SG1が経路R1、区間の障害対応の制御装置CがC1、始点を拠点T1、終点を通信装置N3−N4間のリンク、経路として拠点T1、通信装置N1、N3、N3−N4間リンクを識別する。CPU15は、図6に示す区間情報を参照し、区間SG2が経路R1、区間の障害対応の制御装置CがC4、始点を通信装置N4、終点を拠点T2、経路として通信装置N4、N6及び拠点T2を識別する。
尚、同一分散型通信制御システム内の制御装置Cは、トポロジDB21、エリアDB22、マスタDB23、経路DB24及び区間DB25内の情報を制御装置C間で同期化している。
CPU15は、その処理機能として、要求処理部31と、設定部32と、分割部33と、転送部34と、復旧部35と、制御部36とを有する。要求処理部31は、利用者端末4からの要求に応じて各種処理を実行する処理部である。要求処理部31は、利用者端末4からの経路設定要求に応じてWAN回線2上で最適な経路を計算する。尚、経路設定要求は、経路の始点及び終点を含む。要求処理部31は、経路設定要求内の始点及び終点、トポロジDB21内のトポロジ情報に基づき、例えば、ダイクストラ法で始点及び終点間の最適経路を計算する。更に、要求処理部31は、算出した経路を通過する通信装置N毎に転送設定情報を生成する。要求処理部31は、経路を識別する経路ID24A、経路を管理する制御装置Cを識別する管理ID24B、経路の始点及び終点を識別する始点ID24C及び終点ID24D、経路上の通信装置Nの経路順序を示す経路24Eを含む経路情報を生成する。要求処理部31は、生成した経路情報を経路DB24に格納する。要求処理部31は、経路上の通信装置N毎の転送設定情報を各通信装置Nに設定すべく、通信装置N毎の転送設定情報を設定部32に通知する。
分割部33は、算出した経路を複数の区間に分割し、区間毎の各通信装置Nを制御する制御装置Cの内、障害対応の制御装置Cを決定する。分割部33は、算出した経路情報内の経路内の通信装置Nを始点から順次指定し、エリアDB22内のエリア情報を参照し、指定された通信装置Nの装置IDをエリアIDに変換する。分割部33は、エリアID変換後の経路を参照し、経路上にエリア変化点があるか否かを判定する。分割部33は、経路上にエリア変化点がある場合、エリア変化点を特定する。分割部33は、特定されたエリア変化点に基づき、経路を区間に分割する。更に、分割部33は、区間毎に、当該区間内の通信装置Nを制御するマスタの制御装置Cの内、当該区間の障害対応の制御装置Cを決定する。尚、分割部33は、区間内の通信装置Nを制御するマスタの制御装置Cの内、例えば、制御装置Cが制御する通信装置Nの台数が最小の制御装置Cを障害対応の制御装置Cに決定する。そして、分割部33は、区間の区間ID25A、経路の経路ID25B、区間の障害対応の制御装置Cの管理ID25C、区間の始点及び終点の始点ID25D及び終点ID25E、区間上の通信装置Nの経路順序を示す経路25Fを含む区間情報を生成する。分割部33は、生成した区間情報を区間DB25に格納する。
設定部32は、経路内の区間毎の各通信装置Nに転送設定情報を設定する。尚、通信装置Nの設定には、例えば、OpenFlowプロトコルを使用するものとする。設定部32は、自装置がマスタの制御装置Cとなる通信装置Nの場合、当該通信装置Nに該当の転送設定情報を設定する。また、設定部32は、他の制御装置Cがマスタの制御装置Cとなる通信装置Nの場合、当該通信装置Nを制御するマスタの制御装置Cに対して当該通信装置Nの転送設定情報を転送する。
転送部34は、通信装置Nから障害情報を検出した場合、障害情報内の通知先の通信装置Nの通信装置IDに基づき、区間DB25内の区間情報を参照して障害箇所を含む区間の区間IDを特定する。更に、転送部34は、障害箇所を含む区間の区間IDに対応する管理IDの制御装置C、すなわち障害対応の制御装置Cに対して障害情報を転送する。
復旧部35は、障害区間の障害を復旧する処理部である。復旧部35は、障害情報、障害区間の区間情報及びトポロジ情報に基づき、例えば、ダイクストラ法で障害箇所を迂回する迂回路を算出する。復旧部35は、算出した迂回路を通過する通信装置N毎の転送設定情報を生成する。復旧部35は、迂回路の転送設定情報に基づき、経路DB24内の障害箇所を含む経路情報の内容を更新する。更に、復旧部35は、迂回路の転送設定情報に基づき、区間DB25内の障害箇所を含む区間情報の内容を更新する。復旧部35は、経路上の通信装置N毎の転送設定情報を各通信装置Nに設定すべく、通信装置N毎の転送設定情報を設定部32に通知する。制御部36は、CPU15全体を制御する。制御部36は、トポロジDB21、エリアDB22、マスタDB23、経路DB24及び区間DB25内の情報を制御装置C相互間で同期化している。
図7は、通信システム1内の障害発生の一例を示す説明図である。尚、説明の便宜上、拠点T1と拠点T2との間の経路は通信装置N1、N3、N4及びN6、その経路の区間は、区間SG1及びSG2に分割している。更に、区間SG1は拠点T1から通信装置N1、N3、N3−N4間のリンクまでとし、区間SG2は通信装置N4からN6及び拠点T2までとしている。更に、区間SG1の障害対応の制御装置Cは制御装置C1、区間SG2内の障害対応の制御装置Cは制御装置C4とする。また、通信装置N1のマスタの制御装置Cは制御装置C1、通信装置N3のマスタの制御装置Cは制御装置C2、通信装置N4のマスタの制御装置Cは制御装置C3、通信装置N6のマスタの制御装置Cは制御装置C4とする。
通信装置N1は、通信装置N3との間のリンクで障害を検出した場合、自装置のマスタである制御装置C1に障害情報を通知する。制御装置C1内の復旧部35は、通信装置N1から障害情報を検出した場合、障害箇所を迂回すべく、通信装置N1、N2及びN3の迂回路を算出し、その迂回路の転送設定情報で経路DB24内の経路情報を更新する。
また、通信装置N4は、通信装置N6との間のリンクで障害を検出した場合、自装置のマスタの制御装置C3に障害情報を通知する。制御装置C3は、障害情報内の障害箇所の障害区間を特定し、区間DB25内の区間情報を参照し、障害区間に対応する管理IDを特定する。更に、制御装置C3は、特定された障害区間に対応する管理IDに基づき、障害区間の障害対応の制御装置C4に障害情報を転送する。制御装置C4内の復旧部35は、制御装置C3からの障害情報を検出した場合、障害箇所を迂回すべく、通信装置N4、N5及びN6の迂回路を算出し、その迂回路の転送設定情報で経路DB24内の経路情報を更新する。
通信システム1では、経路を複数の区間に分割し、区間毎に障害対応の制御装置Cを配置したので、障害箇所と障害対応の制御装置Cとの間の距離が従来技術に比較して近くなる。
次に実施例1の通信システム1の動作について説明する。先ず、制御装置C内の要求処理部31の動作について説明する。例えば、制御装置C1内の要求処理部31は、利用者端末4から拠点T1と拠点T2との間の経路の設定要求を検出した場合、トポロジ情報に基づき、ダイクストラ法を用いて、拠点T1と拠点T2との間の経路を算出する。すなわち、要求処理部31は、拠点T1、通信装置N1、N3、N4、N6及び拠点T2の経路を算出する。更に、要求処理部31は、各通信装置N1、N3、N4及びN6の転送設定情報を生成し、各通信装置Nの転送設定情報を設定部32に通知する。
制御装置C1内の分割部33の動作について説明する。分割部33は、例えば、拠点T1、通信装置N1、N3、N4、N6及び拠点T2の経路を含む経路情報を取得する。分割部33は、エリアDB22内のエリア情報を参照し、経路上の通信装置N1、N3、N4及びN6を、エリアID変換後の経路上のA1(N1)、A1(N3)、A2(N4)及びA2(N6)に変換する。分割部33は、エリアID変換後の経路を参照し、例えば、エリアIDが変化したエリア変化点があるか否かを判定する。分割部33は、通信装置N3(A1)と通信装置N4(A2)との間にエリア変化点があるため、そのエリア変化点を特定する。分割部33は、特定されたエリア変化点に基づき、拠点T1から、通信装置N1及びN3を経由してN3とN4との間のリンクまでの区間SG1と、通信装置N4からN6経由して拠点T2までの区間SG2とに分割する。更に、分割部33は、区間SG1内の制御装置C1及びC2から区間SG1の障害対応の制御装置C1を決定すると共に、区間SG2内の制御装置C3及びC4から区間SG2の障害対応の制御装置C4を決定する。
次に制御装置C1内の設定部32の動作について説明する。制御装置C1内の設定部32は、通信装置N1のマスタの制御装置Cが制御装置C1であるため、通信装置N1の転送設定情報を通信装置N1に設定する。また、制御装置C1内の設定部32は、通信装置N3のマスタの制御装置Cが制御装置C2であるため、通信装置N3の転送設定情報を通信装置N3に設定すべく、制御装置C2に転送する。また、制御装置C1内の設定部32は、通信装置N4のマスタの制御装置が制御装置C3であるため、通信装置N4の転送設定情報を通信装置N4に設定すべく、制御装置C3に転送する。制御装置C1内の設定部32は、通信装置N6のマスタの制御装置Cが制御装置C4であるため、通信装置N6の転送設定情報を通信装置N6に設定すべく、制御装置C4に転送する。
次に制御装置C3内の転送部34の動作について説明する。制御装置C3内の転送部34は、制御下の通信装置N4から通信装置N6との間の障害情報を検出した場合、障害情報から障害箇所を含む障害区間SG2を特定する。更に、転送部34は、障害区間SG2を特定した場合、区間SG2内の障害対応の制御装置Cが制御装置C4であるため、その障害情報を障害対応の制御装置C4に転送する。
次に障害対応の制御装置C4内の復旧部35の動作について説明する。障害対応の制御装置C4内の復旧部35は、障害情報を検出した場合、障害情報内の障害箇所、区間情報内の経路及びトポロジ情報に基づき、障害箇所の迂回路を算出する。その結果、復旧部35は、区間SG2内の通信装置N4、N5、N6及び拠点T2の迂回路を得る。復旧部35は、迂回路を通過する通信装置N4〜N6の転送設定情報を生成し、その転送設定情報を設定部32に通知する。更に復旧部35は、迂回路に基づき、区間DB25内の区間情報及び経路DB24内の経路情報を更新する。尚、制御部36は、各制御装置Cの区間DB25及び経路DB24内の情報を同期する信号を他の制御装置Cに通知する。
図8は、復旧前後の区間情報の一例を示す説明図、図9は、復旧前後の経路情報の一例を示す説明図である。尚、区間SG2内の通信装置N4と通信装置N6との間のリンクで障害が発生し、通信装置N4、N5及びN6の迂回路で障害を復旧したものとする。図8に示す復旧前の区間情報内の区間SG1は、経路ID25BをR1、管理ID25Cを制御装置C1、始点ID25Dを拠点T1、終点ID25Eを通信装置N3−N4間リンク、経路25Fを拠点T1、通信装置N1、N3、N3−N4間リンクとする。更に、復旧前の区間情報内の区間SG2は、経路ID25BをR1、管理ID25Cを制御装置C4、始点ID25Dを通信装置N4、終点ID25Eを拠点T2、経路25Fを通信装置N4、N6及び拠点T2とする。
そして、復旧後の区間情報内の区間SG1は、復旧前の区間情報と同一である。しかし、復旧後の区間情報内の区間SG2は、経路ID25B、管理ID25C、始点ID25D及び終点ID25Eが復旧後の区間情報と同一であるものの、経路25Fは通信装置N4、N5、N6及び拠点T2となる。
また、図9に示す復旧前の経路情報は、管理ID24Bを制御装置C1、始点ID24Cを拠点T1、終点ID24Dを拠点T2、経路24Eを拠点T1、通信装置N1、N3、N4、N6及び拠点T2である。
そして、復旧後の経路情報は、管理ID24B、始点ID24C及び終点ID24Dが復旧前の経路情報と同一であるものの、経路24Eは拠点T1、通信装置N1、N3、N4、N5、N6及び拠点T2となる。
図10は、経路設定処理に関わる制御装置C内のCPU15の処理動作の一例を示すフローチャートである。図10に示す経路設定処理は、利用者端末4からの経路設定要求に応じて経路を設定する処理である。図10において制御装置C内のCPU15内の要求処理部31は、利用者端末4から経路設定要求を検出したか否かを判定する(ステップS11)。要求処理部31は、経路設定要求を検出した場合(ステップS11肯定)、経路設定要求内の始点及び終点を抽出する(ステップS12)。要求処理部31は、始点及び終点を抽出した後、トポロジ情報に基づき、始点と終点との間の経路情報を算出する(ステップS13)。尚、要求処理部31は、例えば、ダイクストラ算出法を用いて、始点と終点との間の最適経路の経路情報を算出する。
要求処理部31は、算出した経路情報を経路DB24内に格納し(ステップS14)、経路情報に基づき、後述する分割処理を実行する(ステップS15)。更に、要求処理部31は、分割処理で得た区間情報を区間DB25内に格納し(ステップS16)、図10に示す処理動作を終了する。
要求処理部31は、算出した経路情報に基づき、経路上の各通信装置Nの転送設定情報を生成する(ステップS17)。要求処理部31は、生成した転送設定情報を設定部32に通知し(ステップS18)、図10に示す処理動作を終了する。尚、CPU15は、ステップS14からステップS16までの処理と、ステップS17からステップS18までの処理とを、例えば、平行で処理するものとする。
要求処理部31は、利用者端末4から経路設定要求を検出しなかった場合(ステップS11否定)、図10に示す処理動作を終了する。
図10に示す経路設定処理を実行するCPU15は、経路設定要求内の始点及び終点、トポロジ情報に基づき、始点と終点との間の経路をダイクストラ法で算出し、経路上の各通信装置Nの転送設定情報を生成し、その転送設定情報を設定部32に通知する。その結果、CPU15は、利用者端末4からの経路設定要求に応じて、始点と終点との間の経路を設定できる。
次に、図10のステップS15で実行する分割処理として第1の分割処理を実行する場合の動作について説明する。図11は、第1の分割処理に関わる制御装置C内のCPU15の処理動作の一例を示すフローチャートである。図11に示す第1の分割処理は、設定した経路をエリア単位の区間に分割する処理である。
CPU15内の分割部33は、分割対象の経路情報内の経路を抽出する(ステップS21)。尚、分割対象の経路情報は、図10のステップS13で算出した経路情報である。分割部33は、経路情報内の経路を抽出した後、エリアDB22内のエリア情報を参照し、経路内の通信装置N毎の装置IDをエリアIDに変換する(ステップS22)。
分割部33は、エリアID変換後の経路上にエリアIDの変化点があるか否かを判定する(ステップS23)。分割部33は、経路上にエリアIDの変化点がある場合(ステップS23肯定)、エリア変化点を特定する(ステップS24)。
分割部33は、特定されたエリア変化点に基づき、分割対象の経路を区間に分割する(ステップS25)。分割部33は、エリアDB22内のエリア情報に基づき、区間毎の制御装置Cの装置IDを障害対応の制御装置候補の装置IDとして抽出する(ステップS26)。分割部33は、区間毎の障害対応の制御装置候補の装置IDから区間毎の障害対応の制御装置Cの装置IDを決定する(ステップS27)。
分割部33は、区間毎に障害対応の制御装置Cの装置IDを決定した場合、区間ID25A、経路ID25B、管理ID25C、始点ID25D、終点ID25E、経路25Fを含む区間情報を生成する(ステップS28)。そして、分割部33は、図10に示すステップS15の処理を終了する。
分割部33は、エリアID変換後の経路上にエリア変化点がない場合(ステップS23否定)、単一のエリアと判断し、エリアDB22内のエリア情報に基づき、当該区間の制御装置Cの装置IDを制御装置候補の装置IDとして抽出する(ステップS29)。分割部33は、その区間の制御装置候補の装置IDから当該区間の障害対応の制御装置Cの装置IDを決定し(ステップS30)、区間情報を生成すべく、ステップS28に移行する。
図11に示す第1の分割処理を実行するCPU15は、経路情報内の経路内の通信装置Nの装置IDをエリアIDに変換し、エリアID変換後の経路上にエリア変化点がある場合に、そのエリア変化点に基づき、経路を複数の区間に分割する。その結果、CPU15は、経路をエリア単位で複数の区間に分割できる。
図12は、復旧処理に関わる制御装置C内のCPU15の処理動作の一例を示すフローチャートである。図12に示す復旧処理は、経路上で障害を検出した場合、障害の区間内の障害対応の制御装置Cで障害復旧する処理である。図12において制御装置C内のCPU15内の復旧部35は、障害情報を検出したか否かを判定する(ステップS41)。復旧部35は、障害情報を検出した場合(ステップS41肯定)、障害情報から障害箇所を抽出する(ステップS42)。
復旧部35は、区間DB25内の区間情報を参照し、障害箇所に対応する障害区間の区間ID及び管理IDを特定する(ステップS43)。復旧部35は、特定された管理IDが自装置の装置IDであるか否かを判定する(ステップS44)。
復旧部35は、管理IDが自装置の装置IDの場合(ステップS44肯定)、トポロジ情報、区間情報及び障害情報に基づき、障害区間の迂回路の経路情報を算出する(ステップS45)。復旧部35は、障害区間の迂回路の経路情報を算出した後、迂回路の経路情報に基づき、経路DB24内の経路情報を更新する(ステップS46)。復旧部35は、迂回路の経路情報に基づき、区間DB25内の区間情報を更新する(ステップS47)。更に、復旧部35は、迂回路の経路情報に基づき、迂回路中の通信装置Nの転送設定情報を生成し(ステップS48)、マスタDB23内のマスタ情報を参照し、迂回路中の各通信装置NのマスタIDが自装置の装置IDであるか否かを判定する(ステップS49)。
設定部32は、各通信装置NのマスタIDが自装置の装置IDの場合(ステップS49肯定)、生成した転送設定情報を通信装置Nに設定し(ステップS50)、図12に示す処理動作を終了する。また、設定部32は、迂回路中の各通信装置NのマスタIDが自装置の装置IDでない場合(ステップS49否定)、マスタDB23内のマスタ情報を参照し、当該通信装置Nの通信装置IDに対応したマスタIDの制御装置Cに対して転送設定情報を転送する(ステップS51)。そして、設定部32は、図12に示す処理動作を終了する。
復旧部35は、管理IDが自装置の装置IDでない場合(ステップS44否定)、管理IDに基づき、障害区間内の障害対応の制御装置Cに対して障害情報及び区間情報を転送し(ステップS52)、図12に示す処理動作を終了する。復旧部35は、通信装置Nから障害情報を検出しなかった場合(ステップS41否定)、図12に示す処理動作を終了する。
図12に示す復旧処理を実行するCPU15は、障害情報を検出した場合、障害情報内の障害箇所に対応する区間の障害対応の制御装置Cを特定し、障害対応の制御装置Cが自装置の場合、障害区間を迂回する迂回路を計算する。そして、CPU15は、迂回路に基づき、区間情報及び経路情報を更新し、迂回路上の各通信装置Nの転送設定情報を生成し、転送設定情報を各通信装置Nに設定する。その結果、CPU15は、経路上の障害を迅速に復旧できる。
CPU15は、障害対応の制御装置Cが自装置でない場合、障害対応の制御装置Cに対して障害情報を転送する。その結果、障害対応の制御装置Cは、経路上の障害を迅速に復旧できる。
図7に示す通信システム1内の制御装置C2は、通信装置N3と通信装置N4との間のリンクの障害発生の障害情報を通信装置N3から検出した場合、障害情報内の障害区間の区間SG1を特定する。制御装置C2は、障害区間SG1を特定した場合、障害区間SG1の障害対応の制御装置C1に障害情報を転送する。
障害対応の制御装置C1は、障害情報を検出した場合、区間内の終点であるため、区間の迂回路を算出できない。そこで、障害対応の制御装置C1は、例えば、通信装置N1、N2、N5、N6及び拠点T1の迂回路を算出し、その迂回路の転送設定情報に基づき、経路DB24内の経路情報を更新する。
図13Aは、復旧前後の経路情報の一例を示す説明図である。復旧前の経路情報は、管理ID24Bを制御装置C1、始点ID24Cを拠点T1、終点ID24Dを拠点T2、経路24Eを拠点T1、通信装置N1、N3、N4、N6及び拠点T2である。そして、復旧後の経路情報は、管理ID24B、始点ID24C及び終点ID24Dが復旧前の経路情報の内容と同一であるものの、経路24Eが拠点T1、通信装置N1、N2、N5、N6及び拠点T2となる。
そして、制御装置C1は、更新した経路情報内の通信装置Nの装置IDをエリアIDに変換し、エリアID変換後の経路上のエリア変化点に基づき、経路情報を複数の区間に分割する。そして、図13Bは、復旧前後の区間情報の一例を示す説明図である。復旧前の経路情報内の区間SG1は、経路ID25BをR1、管理ID25Cを制御装置C1、始点ID25Dを拠点T1、終点ID25Eを通信装置N3−N4間リンク、経路25Dを拠点T1、通信装置N1、N3、N3−N4間リンクである。更に、復旧前の区間情報内の区間SG2は、経路ID25BをR1、管理ID25Cを制御装置C4、始点ID25Dを通信装置N4、終点ID25Eを拠点T2、経路25Fを通信装置N4、N6及び拠点T2である。
そして、復旧後の区間情報内の区間SG1は、経路ID25B、管理ID25C及び始点ID25Dは復旧前の内容と同一である。そして、区間SG1内の終点ID25Eは通信装置N2と通信装置N5との間のリンク、経路25Fは拠点T1、通信装置N1、N2、N2−N5間リンクとなる。更に、復旧後の区間情報内の区間SG2は、経路ID25B、管理ID25C及び終点ID25Eは復旧前の内容と同一のものの、始点ID25Dを通信装置N5、経路25Fを通信装置N5、N6及び拠点T2となる。その結果、区間内で障害の迂回路を算出できない場合、経路全体を管理する制御装置Cで障害を復旧することになる。
実施例1の通信システム1は、経路の経路上の通信装置NをエリアIDに変換し、エリアID変換後の経路のエリア変化点に基づき、経路を複数の区間に分割し、区間毎に障害対応の制御装置Cを決定した。しかも、制御装置Cは、経路上で障害を検出した場合、障害箇所に対応した区間を特定し、特定された区間に対応する障害対応の制御装置に障害情報を転送する。つまり、通信システム1では、区間毎に障害対応の制御装置Cを配置したので、障害箇所と障害対応の制御装置Cとの間の距離が従来技術に比較して近くなる。その結果、障害復旧に要する時間を短縮化できる。
実施例1の通信システム1では、経路上の区間毎に障害対応の制御装置を配置するため、障害対応を高速化できる。しかも、通信システム1では、経路単位で見ると、障害発生箇所に応じて障害対応の制御装置Cを変えることになるが、区間単位で見ると、ある区間内の障害は必ず一つの制御装置Cが障害に対応する。その結果、1つの障害を異なる制御装置Cで同時に対応しないとする分散型通信制御システムとしての処理の整合性を維持できる。しかも、例えば障害のように、即時に対応したいことのみを先に対応し、例えば、ルート管理のように即時性のないものを後から対応できる。
実施例1の制御装置Cは、区間内の複数の制御装置Cの内、制御装置Cが制御する通信装置Nの台数が最小の制御装置Cを障害対応の制御装置Cとして決定する。その結果、障害負荷が最小の制御装置Cを障害対応の制御装置Cとして決定できる。尚、障害対応の制御装置Cを決定する方法は、制御下の通信装置Nの台数が最小の制御装置を障害対応の制御装置として決定したが、これに限定されるものではなく、例えば、ランダムに決定しても良い。
尚、上記実施例1の障害対応の制御装置Cは、障害の迂回路を再設定し、その迂回路の転送設定情報に基づき、障害を復旧した。しかしながら、障害対応の制御装置Cは、障害の迂回路を再設定できなかった場合、経路を管理する他の制御装置Cに障害に関わる障害情報を転送し、その障害情報に基づき、障害箇所の迂回路を再設定するようにしても良い。
図10の経路設定処理では、ステップS13にて経路情報を算出した後、ステップS14及びステップS17の処理を並列処理で実行したが、直列に実行しても良い。図11の第1の分割処理では、経路上にエリア変化点がない場合でも区間情報を生成したが、区間情報を生成しなくても良い。
上記実施例1の制御装置Cは、経路上のエリア変化点に基づき、経路を複数の区間に分割した。しかしながら、制御装置Cは、エリア変化点に限定されるものではなく、経路情報内の経路上の各通信装置NをマスタIDに変換し、マスタID変換後の経路内のマスタ変化点を特定し、マスタ変化点に基づき、経路を複数の区間に分割しても良く。この場合の実施の形態につき、実施例2として以下に説明する。
図14は、実施例2の通信システム1Bの一例を示す説明図である。尚、説明の便宜上、実施例1の通信システム1と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明については省略する。実施例1の通信システム1と実施例2の通信システム1Bとが異なるところは、エリアを識別するエリアIDではなく、マスタIDで経路情報内の経路を変換し、その経路上のマスタ変化点に基づき、経路を複数の区間に分割する分割部33Aにある。
図14に示す通信システム1Bでは、通信装置N1及びN2のマスタの制御装置Cは制御装置C1、通信装置N3及びN4のマスタの制御装置Cは制御装置C2である。更に、通信装置N5のマスタの制御装置Cは制御装置C3、通信装置N6のマスタの制御装置Cは制御装置C4である。
図15は、実施例2の制御装置C内の構成の一例を示すブロック図である。図15に示す制御装置C内の主記憶装置14は、トポロジDB21、マスタDB23、経路DB24及び区間DB25を内蔵している。図16は、マスタ情報の一例を示す説明図である。図16に示すマスタ情報は、通信装置ID23A及びマスタID23Bを対応付けて管理している。
図17は、経路情報の一例を示す説明図である。尚、説明の便宜上、経路情報は、図14に示すように、拠点T1、通信装置N1、N2、N3、N4、N5、N6及び拠点T2とする。図17に示す経路情報として、経路ID24AをR2、管理ID24Bを制御装置C1、始点ID24Cを拠点T1、終点ID24Dを拠点T2、経路24Eを拠点T1、通信装置N1、N2、N3、N4、N5、N6及び拠点T2とする。
CPU15内の分割部33Aは、経路情報を取得する。分割部33Aは、経路情報内の経路内の通信装置Nを始点から終点へ指定し、マスタDB23内のマスタ情報を参照し、指定された通信装置Nの装置IDをマスタIDに変換する。分割部33Aは、マスタID変換後の経路を参照し、経路上にマスタ変化点があるか否かを判定する。分割部33Aは、マスタID変換後の経路内にマスタ変化点がある場合、マスタ変化点を特定する。分割部33Aは、特定されたマスタ変化点に基づき、経路を区間に分割する。更に、分割部33Aは、区間毎に、当該区間内の通信装置Nを制御する制御装置Cから当該区間の障害対応の制御装置Cを決定する。尚、分割部33Aは、区間内の通信装置Nを制御するマスタの制御装置Cを障害対応の制御装置Cに決定する。そして、分割部33Aは、区間ID25A、経路ID25B、区間の障害対応の制御装置Cの管理ID25C、区間の始点及び終点を識別する始点ID25D及び終点ID25E、区間上の通信装置Nの経路順序を示す経路25Fを含む区間情報を生成する。分割部33Aは、生成した区間情報を区間DB25に格納する。
次に実施例2の通信システム1Bの動作について説明する。制御装置C1内の分割部33Aの動作について説明する。
分割部33Aは、例えば、拠点T1、通信装置N1、N2、N3、N4、N5、N6及び拠点T2の経路を含む経路情報を取得したとする。分割部33Aは、マスタDB23内のマスタ情報を参照し、経路上の通信装置N1、N2、N3、N4、N5及びN6を、C1(N1)、C1(N2)、C2(N3)、C2(N4)、C3(N5)及びC4(N6)のマスタID変換後の経路に変換する。分割部33Aは、マスタID変換後の経路上にマスタ変化点があるか否かを判定する。分割部33Aは、マスタ変化点がある場合、例えば、C1(N2)とC2(N3)との間、C2(N4)とC3(N5)との間、C3(N5)とC4(N6)との間にマスタ変化点を特定する。分割部33Aは、マスタ変化点に基づき、経路を区間SG1、SG2、SG3及びSG4に分割する。分割部33Aは、区間毎に区間情報を生成し、区間情報を区間DB25内に格納する。
図18は、第2の分割処理に関わる制御装置C内のCPU15の処理動作の一例を示すフローチャートである。尚、図10のステップS15の分割処理として、図18に示す第2の分割処理を実行するものとする。図18に示す第2の分割処理は、設定した経路をマスタの制御装置C単位で区間に分割する処理である。図18において制御装置C内のCPU15内の分割部33Aは、分割対象の経路情報内の経路を抽出する(ステップS61)。分割部33Aは、経路を抽出した後、マスタDB23内のマスタ情報を参照し、経路内の通信装置N毎の装置IDをマスタIDに変換する(ステップS62)。
分割部33Aは、マスタID変換後の経路上にマスタIDの変化点(マスタ変化点)があるか否かを判定する(ステップS63)。分割部33Aは、経路上にマスタIDの変化点がある場合(ステップS63肯定)、マスタ変化点を特定する(ステップS64)。
分割部33Aは、特定されたマスタ変化点に基づき、分割対象の経路を区間に分割する(ステップS65)。分割部33Aは、区間毎の制御装置Cの装置IDを障害対応の制御装置Cの装置IDとして決定する(ステップS66)。
分割部33Aは、区間毎に障害対応の制御装置Cの装置IDを決定した場合、区間ID25A、経路ID25B、管理ID25C、始点ID25D、終点ID25E、経路25Fを含む区間情報を生成する(ステップS67)。そして、分割部33Aは、図10に示すステップS15の処理を終了する。
分割部33Aは、経路上にマスタIDの変化点(マスタ変化点)がない場合(ステップS63否定)、単一のマスタIDであるため、当該区間の制御装置Cの装置IDを障害対応の制御装置Cの装置IDとして決定する(ステップS68)。そして、分割部33Aは、区間情報を生成すべく、ステップS67に移行する。
図18に示す第2の分割処理を実行するCPU15は、経路情報内の経路内の通信装置Nの装置IDをマスタIDに変換し、変換後の経路上にマスタ変化点がある場合に、そのマスタ変化点に基づき、経路を区間に分割する。その結果、CPU15は、経路をマスタの制御装置C単位で複数の区間に分割できる。
実施例2の制御装置Cは、経路上の通信装置N毎の装置IDをマスタIDに変換し、経路上のマスタIDのマスタ変化点がある場合、マスタ変化点に基づき、経路を区間に分割する。分散型通信制御システムの性質上、通信装置Nの設定は常にマスタを経由して行われるので、上記のようにマスタIDに基づいて分割することで、最も通信装置Nに近い場所で障害対応を行うことができる。
上記実施例2の制御装置Cは、経路上のマスタ変化点に基づき、経路を複数の区間に分割した。しかしながら、経路内の区間数が過度に増えると、複雑な処理を要する。そこで、CPU15は、経路をマスタの制御装置C単位で複数の区間に分割した後、区間内の経路内の通信装置Nの台数が所定数未満、かつ、台数が所定数未満の区間が連続する場合、連続する区間を統合するようにしても良い。
図19は、統合前後の区間情報の一例を示す説明図である。統合前の区間情報は、区間SG1〜SG4の4個の区間情報である。区間SG1の区間情報は、経路ID25BをR2、管理ID25Cを制御装置C1、始点ID25Dを拠点T1、終点ID25EをN2−N3間リンク、経路25Fを拠点T1、通信装置N1、N2及びN2−N3間リンクである。区間SG2の区間情報は、経路ID25BをR2、管理ID25Cを制御装置C2、始点ID25Dを通信装置N3、終点ID25EをN4−N5間リンク、経路25Fを通信装置N3、N4及びN4−N5間リンクである。区間SG3の区間情報は、経路ID25BをR2、管理ID25Cを制御装置C3、始点ID25Dを通信装置N5、終点ID25EをN5−N6間リンク、経路25Fを通信装置N5及びN5−N6間リンクである。区間SG4の区間情報は、経路ID25BをR2、管理ID25Cを制御装置C4、始点ID25Dを通信装置N6、終点ID25Eを拠点T2、経路25Fを通信装置N6及び拠点T2である。
分割部33Aは、区間の経路を参照し、経路内の通信装置Nの台数が所定数、例えば、2未満、かつ、台数が所定数未満の区間が連続する場合、連続する区間を統合する。分割部33Aは、区間SG3及び区間SG4の台数がそれぞれ所定数未満、かつ、区間SG3及び区間SG4が連続するため、区間SG3及び区間SG4を統合する。つまり、分割部33Aは、区間SG3の区間情報に区間SG4の区間情報を統合する。統合後の区間SG3の区間情報は、経路ID25BをR2、管理ID25Cを制御装置C3、始点ID25Dを通信装置N5、終点ID25Eを拠点T2、経路25Fを通信装置N5、N6及び拠点T2となる。その結果、過度の区間数による制御負荷の増加を抑制できる。
実施例2の制御装置Cは、経路の経路上の通信装置NをマスタIDに変換し、マスタID変換後の経路のマスタ変化点に基づき、経路を複数の区間に分割し、区間毎に障害対応の制御装置Cを決定した。更に、制御装置Cは、経路上で障害を検出した場合、障害箇所に対応した区間を特定し、特定された区間に対応する障害対応の制御装置Cに障害情報を転送する。その結果、障害復旧に要する時間を短縮化できる。
制御装置Cは、マスタID単位の区間内の通信装置Nの台数が所定台数未満、かつ、台数が所定数未満の区間が連続する場合、連続する区間を統合する。その結果、過度に分割数が増加することで生じる処理の複雑化を防止できる。尚、制御装置Cでは、区間内の通信装置Nの台数が所定数未満、かつ、台数が所定数未満の区間が連続する場合に連続する区間を統合した。しかしながら、区間内の通信装置Nの台数が所定数未満の場合に、当該所定数未満の区間の前の区間又は後ろの区間に当該区間を統合するようにしても良い。
また、CPU15は、経路をマスタの制御装置C単位で複数の区間に分割した後、区間内の経路内の通信装置Nの台数が所定数未満、かつ、その台数が所定数未満の区間が連続する場合、連続する区間を統合した。しかしながら、CPU15は、経路をマスタの制御装置C単位で複数の区間に分割後、区間内の経路内の通信装置Nの台数が所定数未満、かつ、区間のエリアIDが同一の場合に、これらの区間を統合しても良い。
上記実施例2では、区間内の通信装置Nの台数を判定基準としたが、通信装置Nの台数に代えて、区間内の通信装置Nのスパン数でも良い。また、図19の第2の分割処理では、経路上にマスタ変化点がない場合でも区間情報を生成したが、区間情報を生成しなくても良い。
上記実施例2では、経路上の通信装置N毎のマスタIDのマスタ変化点に基づき、経路を複数の区間に分割したが、経路上の通信装置N毎の各制御装置Cまでの通信遅延時間に基づき、経路を複数の区間に分割しても良い。この場合の実施の形態につき、実施例3として以下に説明する。
図20は、実施例3の通信システム1Cの一例を示す説明図である。尚、説明の便宜上、実施例1の通信システム1と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明については省略する。実施例1の通信システム1と実施例3の通信システム1Cとが異なるところは、エリアを識別するエリアIDではなく、通信装置Nと制御装置Cとの間の通信遅延時間に基づき、経路を複数の区間に分割する分割部33Bにある。
図20に示す通信システム1Cでは、通信装置N1及びN2のマスタの制御装置Cは制御装置C1、通信装置N3及びN4のマスタの制御装置Cは制御装置C2である。通信装置N5のマスタの制御装置Cは制御装置C3、通信装置N6のマスタの制御装置Cは制御装置C4である。
図21は、実施例3の制御装置C内の構成の一例を示すブロック図である。図21に示す制御装置C内の主記憶装置14には、トポロジDB21、マスタDB23、経路DB24及び区間DB25に加えて、遅延DB26及び遅延条件リスト27を有する。遅延DB26は、遅延情報を格納するDBである。遅延情報は、通信装置Nの装置ID毎に各制御装置Cまでの通信遅延時間を管理する情報である。尚、制御装置Cは、通信装置N毎の通信遅延時間を、Pingコマンド等を使用して予め計測しておくものとする。図22は、遅延情報の一例を示す説明図である。図22に示す遅延情報は、通信装置Nの装置ID26A毎に各制御装置Cまでの通信遅延時間26Bを対応付けて管理している。遅延条件リスト27は、遅延条件である所定閾値を格納する領域である。
CPU15内の分割部33Bは、経路情報を取得する。分割部33Bは、経路情報内の経路内の通信装置Nを始点から順次指定し、遅延DB26内の遅延情報を参照し、指定された通信装置Nの装置IDに対応する制御装置C毎の通信遅延時間を取得する。分割部33Bは、通信遅延時間が所定閾値以下の制御装置Cを抽出する。尚、所定閾値は、例えば、20m秒とする。分割部33Bは、通信遅延時間が所定閾値以下の制御装置Cを経路上に並べ、経路上で同一の制御装置Cが連続する通信装置Nを区間とする。
分割部33Bは、経路上の通信装置N1、N2、N3及びN4の制御装置CがC1及びC2、経路上の通信装置N5及びN6の制御装置CがC3及びC4のため、通信装置N1〜N4を区間SG1、通信装置N5及びN6を区間SG2とする。
分割部33Bは、区間SG1内の制御装置C1及びC2を当該区間SG1内の障害対応の制御装置候補とし、障害対応の制御装置候補から障害対応の制御装置Cを決定する。更に、分割部33Bは、区間SG2内の制御装置C3及びC4を区間SG2内の障害対応の制御装置候補とし、障害対応の制御装置候補から障害対応の制御装置Cを決定する。
分割部33Bは、区間ID25A、経路ID25B、区間の障害対応の制御装置Cを識別する管理ID25C、区間の始点及び終点を識別する始点ID25D及び終点ID25E、区間上の通信装置Nの経路順序を示す経路25Fを含む区間情報を生成する。分割部33Bは、生成した区間情報を区間DB25に格納する。
次に実施例3の通信システム1Cの動作について説明する。制御装置C1内の分割部33Bの動作について説明する。
分割部33Bは、例えば、拠点T1、通信装置N1、N2、N3、N4、N5、N6及び拠点T2の経路を含む経路情報を取得したとする。分割部33Bは、遅延DB26内の遅延情報を参照し、経路上の通信装置N毎に通信遅延時間が所定閾値、すなわち20m秒以下の制御装置Cを特定する。分割部33Bは、図23に示すように、通信装置N1の制御装置C1及びC2を特定し、通信装置N2の制御装置C1及びC2、通信装置N3の制御装置C1及びC2、通信装置N4の制御装置C1及びC2を特定する。更に、分割部33Bは、通信装置N5の制御装置C3及びC4、通信装置N5の制御装置C3及びC4を特定する。
分割部33Bは、図24に示すように、制御装置C1及びC2が連続する通信装置N1〜N4の区間SG1と、制御装置C3及びC4が連続する通信装置N5及びN6の区間SG2とに分割する。分割部33Bは、区間SG1の制御装置C1及びC2の内、区間DB25内の区間情報を参照し、区間SG1に対応する管理IDに基づき、制御装置C1を障害対応の制御装置Cとして決定する。また、分割部33Bは、区間SG2の制御装置C3及びC4の内、区間DB25内の区間情報を参照し、区間SG2に対応する管理IDに基づき、制御装置C4を障害対応の制御装置Cとして決定する。
図25は、第3の分割処理に関わる制御装置C内のCPU15の処理動作の一例を示すフローチャートである。尚、図10のステップS15の分割処理として、図25に示す第3の分割処理を実行するものとする。図25に示す第3の分割処理は、通信装置N毎に各制御装置Cとの間の通信遅延時間に基づき、経路を複数の区間に分割する処理である。
図25において制御装置C内のCPU15内の分割部33Bは、分割対象の経路情報内の経路を抽出する(ステップS81)。分割部33Bは、経路を抽出した後、遅延DB26内の遅延情報を参照し、経路内の始点から装置毎の装置IDに対応する各制御装置Cの通信遅延時間を取得する(ステップS82)。
分割部33Bは、経路内の装置毎の各制御装置Cの通信遅延時間の内、所定閾値以下の制御装置Cを抽出する(ステップS83)。分割部33Bは、所定閾値以下の制御装置Cの内、同一の制御装置Cが連続する区間を特定する(ステップS84)。
分割部33Bは、特定した区間の内、最長の区間を順次選択し(ステップS85)、順次選択された区間が複数あるか否かを判定する(ステップS86)。尚、最長の区間は、始点から見て最長の区間である。分割部33Bは、順次選択した区間が複数の場合(ステップS86肯定)、区間毎の制御装置Cの装置IDを制御装置候補の装置IDとして抽出する(ステップS87)。分割部33Bは、区間毎の制御装置候補の装置IDから区間毎の障害対応の制御装置Cの装置IDを決定する(ステップS88)。
分割部33Bは、区間毎に障害対応の制御装置Cの装置IDを決定した場合、区間ID25A、経路ID25B、管理ID25C、始点ID25D/終点ID25E、経路25Fを含む区間情報を生成する(ステップS89)。そして、分割部33Bは、図10に示すステップS15の処理を終了する。
分割部33Bは、順次選択された区間が複数でない場合(ステップS86否定)、単一の区間であるため、当該区間の制御装置Cの装置IDを制御装置候補の装置IDとして抽出する(ステップS90)。分割部33Bは、その区間の制御装置候補の装置IDから当該区間の障害対応の制御装置Cの装置IDを決定し(ステップS91)、区間情報を生成すべく、ステップS89に移行する。
図25に示す第3の分割処理を実行する分割部33Bは、経路内の通信装置N毎に通信遅延時間が所定閾値以下の制御装置Cを取得し、その取得結果に基づき、同一制御装置Cが連続する区間に基づき、経路を複数の区間に分割する。その結果、分割部33Bは、経路を複数の区間に分割できる。
実施例3の制御装置Cは、エリアDB22を要することなく、通信装置N毎の通信遅延時間に基づき、経路を複数の区間に分割する。その結果、分割部33Bは、経路を複数の区間に分割できる。
実施例3の制御装置Cは、経路の経路上の通信装置N毎の各制御装置Cまでの通信遅延時間が所定閾値以下の制御装置Cを特定し、特定された所定閾値以下の制御装置C単位の区間で経路を分割し、区間毎に障害対応の制御装置Cを決定した。更に、制御装置Cは、経路上で障害を検出した場合、障害箇所に対応した区間を特定し、特定された区間に対応する障害対応の制御装置Cに障害情報を転送する。その結果、障害復旧に要する時間を短縮化できる。
尚、図25の第3の分割処理では、ステップS86にて区間が複数でない場合でも区間情報を生成したが、区間情報を生成しなくても良い。
上記実施例1及び2の制御装置Cでは、トポロジDB21、エリアDB22、マスタDB23、経路DB24及び区間DB25を内蔵した。しかしながら、制御装置Cの外部にトポロジDB21、エリアDB22、マスタDB23、経路DB24及び区間DB25を一元管理するサーバを設けても良い。この場合、各制御装置Cは、サーバ内のトポロジDB21、エリアDB22、マスタDB23、経路DB24及び区間DB25にアクセスするようにしても良い。実施例3の制御装置Cでも、制御装置Cの外部にトポロジDB21、マスタDB23、経路DB24、区間DB25及び遅延DB26を一元管理するサーバを設けても良い。
上記実施例の制御装置C内の分割部33(33A,33B)は区間毎の障害対応の制御装置Cを決定する場合、同一区間内の通信装置Nを制御する制御装置Cの内、制御下の通信装置Nの台数が最小の制御装置Cを障害対応の制御装置Cに決定した。しかしながら、同一区間内の制御装置Cの内、障害対応の制御装置Cを択一的にランダムに選択しても良い。
上記実施例では、WAN回線2上の通信装置Nを制御する制御装置Cを設定したが、制御装置Cの負荷量に基づき、通信装置N毎の制御装置Cを分散制御するようにしても良い。また、通信装置Nを収容する回線としてWAN回線2を例示したが、WAN回線2に限定されるものではなく、パケット回線等の通信回線でも良い。
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
更に、各装置で行われる各種処理機能は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)やFPGA(Field Programmable Gate Array)等上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、CPU等で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良い。
各種情報を記憶する領域は、例えば、ROM(Read Only Memory)や、SDRAM(Synchronous Dynamic Random Access Memory)、MRAM(Magnetoresistive Random Access Memory)やNVRAM(Non-Volatile Random Access Memory)等のRAM(Random Access Memory)で構成しても良い。
ところで、本実施例で説明した各種の処理は、予め用意されたプログラムをコンピュータ内のCPU等のプロセッサで実行させることによって実現できる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図26は、障害復旧プログラムを実行するコンピュータの一例を示す説明図である。
図26に示す障害復旧プログラムを実行するコンピュータ100は、通信部110と、ROM120と、RAM130と、CPU140とを有する。通信部110、ROM120、RAM130及びCPU140は、バス150を介して接続される。通信部110は、通信網内の各通信装置と通信する。
そして、ROM120には、上記実施例と同様の機能を発揮する障害復旧プログラムが予め記憶されている。ROM120は、障害復旧プログラムとして分割プログラム120A、転送プログラム120B及び復旧プログラム120Cが記憶されている。尚、ROM120ではなく、図示せぬドライブでコンピュータ読取可能な記録媒体に障害復旧プログラムが記録されていても良い。また、記録媒体としては、例えば、CD−ROM、DVDディスク、USBメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。
そして、CPU140は、分割プログラム120AをROM120から読み出し、RAM130上で分割プロセス130Aとして機能する。更に、CPU140は、転送プログラム120BをROM120から読み出し、RAM130上で転送プロセス130Bとして機能する。CPU140は、復旧プログラム120CをROM120から読み出し、RAM130上で復旧プロセス130Cとして機能する。
CPU140は、通信装置を使用して通信を確立する経路を区間に分割し、前記区間毎に当該区間内の障害を復旧する障害対応のコンピュータを決定する。CPU140は、前記経路上で障害を検出した場合に、障害箇所の前記区間を特定し、特定された前記区間に対応する前記障害対応のコンピュータに障害情報を転送する。CPU140は、障害情報に基づき、当該障害箇所の前記区間内の迂回路を設定する。その結果、障害復旧に要する時間を短縮化できる。
以上、本実施例を含む実施の形態に関し、更に以下の付記を開示する。
(付記1)通信網内の通信装置を制御する通信制御装置であって、
前記通信装置を使用して通信を確立する経路を区間に分割し、前記区間毎に当該区間内の障害を復旧する障害対応の通信制御装置を決定する分割部と、
前記経路上で障害を検出した場合に、障害箇所の前記区間を特定し、特定された前記区間に対応する前記障害対応の通信制御装置に障害情報を転送する転送部と、
前記障害情報に基づき、当該障害箇所の前記区間内の迂回路を設定する復旧部と
を有することを特徴とする通信制御装置。
(付記2)前記通信装置及び前記通信制御装置の配置箇所が属するエリアを識別するエリア識別情報毎に前記通信装置又は前記通信制御装置を管理し、
前記分割部は、
前記エリア識別情報単位で前記経路を前記区間に分割することを特徴とする付記1に記載の通信制御装置。
(付記3)前記通信装置毎に、前記通信装置を制御する通信制御装置を識別する装置識別情報を管理し、
前記分割部は、
前記装置識別情報単位で前記経路を前記区間に分割することを特徴とする付記1に記載の通信制御装置。
(付記4)前記分割部は、
前記区間内の通信装置の台数が所定台数未満の場合に、当該区間と、当該区間と連続する区間の前の区間又は後ろの区間とを統合することを特徴とする付記3に記載の通信制御装置。
(付記5)前記通信装置毎に各通信制御装置までの通信遅延時間を管理し、
前記分割部は、
前記通信装置毎に前記通信遅延時間が所定時間以下の前記通信制御装置を特定し、当該特定された通信制御装置単位で前記経路を前記区間に分割することを特徴とする付記1に記載の通信制御装置。
(付記6)前記分割部は、
前記区間内の複数の通信制御装置の内、当該通信制御装置が制御する通信装置の台数が最小の通信制御装置を前記障害対応の通信制御装置として決定することを特徴とする付記1〜5の何れか一つに記載の通信制御装置。
(付記7)前記復旧部は、
前記障害の迂回路を設定できない場合に、当該障害の区間内の通信装置を制御する他の通信制御装置に対して前記障害情報を転送することを特徴とする付記1〜6の何れか一つに記載の通信制御装置。
(付記8)通信網内の通信装置と、前記通信装置を制御する通信制御装置とを有する通信システムであって、
前記通信制御装置は、
通信装置を使用して通信を確立する経路を区間に分割し、前記区間毎に当該区間内の障害を復旧する障害対応の通信制御装置を決定する分割部と、
前記経路上で障害を検出した場合に、障害箇所の前記区間を特定し、特定された前記区間に対応する前記障害対応の通信制御装置に障害情報を転送する転送部と、
前記障害情報に基づき、当該障害箇所の前記区間内の迂回路を設定する復旧部と
を有することを特徴とする通信システム。
(付記9)通信網内の通信装置を制御する通信制御装置の障害復旧方法であって、
前記通信制御装置が、
通信装置を使用して通信を確立する経路を区間に分割し、前記区間毎に当該区間内の障害を復旧する障害対応の通信制御装置を決定し、
前記経路上で障害を検出した場合に、障害箇所の前記区間を特定し、特定された前記区間に対応する前記障害対応の通信制御装置に障害情報を転送し、
前記障害情報に基づき、当該障害箇所の前記区間内の迂回路を設定する
処理を実行することを特徴とする障害復旧方法。
(付記10)通信網内の通信装置を制御する通信制御装置に、
通信装置を使用して通信を確立する経路を区間に分割し、前記区間毎に当該区間内の障害を復旧する障害対応の通信制御装置を決定し、
前記経路上で障害を検出した場合に、障害箇所の前記区間を特定し、特定された前記区間に対応する前記障害対応の通信制御装置に障害情報を転送し、
前記障害情報に基づき、当該障害箇所の前記区間内の迂回路を設定する
処理を実行させることを特徴とする障害復旧プログラム。