(57)【要約】【課題】ネットワーク内のいずれかの回線に異常が生じたことにより、既に設定されていた通信経路の迂回経路を設定する場合に、迂回経路設定後における輻輳の発生を防止することができ、また、異常が生じた場合におけるネットワーク内のスイッチの処理負荷の増加を抑制することができる通信経路制御装置を提供する。【解決手段】使用帯域収集手段７１は、スイッチ同士を結ぶ各回線の使用帯域の情報を収集する。コスト設定手段７２は、回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコストを定める。経路計算手段７３は、スイッチ同士を結ぶ回線のいずれかで異常が生じた場合に、異常が生じた回線を用いていた通信の迂回経路として、異常が生じた回線を用いない通信経路を、コスト設定手段７２が定めたコストに基づいて計算する。【選択図】図６
2017168881.tif 000002
【特許請求の範囲】
【請求項１】
スイッチ同士を結ぶ各回線の使用帯域の情報を収集する使用帯域収集手段と、
回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコストを定めるコスト設定手段と、
スイッチ同士を結ぶ回線のいずれかで異常が生じた場合に、前記異常が生じた回線を用いていた通信の迂回経路として、前記異常が生じた回線を用いない通信経路を、前記コスト設定手段が定めたコストに基づいて計算する経路計算手段と、
前記経路計算手段が計算した通信経路を、当該通信経路上のスイッチに対して設定する経路設定手段とを備える
ことを特徴とする通信経路制御装置。
【請求項２】
使用帯域収集手段は、いずれの回線においても異常が生じていない場合に、各回線の使用帯域の情報を収集する
請求項１に記載の通信経路制御装置。
【請求項３】
予め回線の使用可能帯域に応じて定められたコストである初期コストを記憶する初期コスト記憶手段を備え、
経路計算手段は、異常が生じていない状態で通信が発生した場合に、前記通信の通信経路を前記初期コストに基づいて計算する
請求項１または請求項２に記載の通信経路制御装置。
【請求項４】
スイッチ同士を結ぶ各回線の使用帯域の情報を収集し、
回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコストを定め、
スイッチ同士を結ぶ回線のいずれかで異常が生じた場合に、前記異常が生じた回線を用いていた通信の迂回経路として、前記異常が生じた回線を用いない通信経路を、前記残帯域に応じたコストに基づいて計算し、
前記通信経路を、当該通信経路上のスイッチに対して設定する
ことを特徴とする通信経路制御方法。
【請求項５】
いずれの回線においても異常が生じていない場合に、各回線の使用帯域の情報を収集する
請求項４に記載の通信経路制御方法。
【請求項６】
異常が生じていない状態で通信が発生した場合に、前記通信の通信経路を、予め回線の使用可能帯域に応じて定められたコストである初期コストに基づいて計算する
請求項４または請求項５に記載の通信経路制御方法。
【請求項７】
コンピュータに、
スイッチ同士を結ぶ各回線の使用帯域の情報を収集する使用帯域収集処理、
回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコストを定めるコスト設定処理、
スイッチ同士を結ぶ回線のいずれかで異常が生じた場合に、前記異常が生じた回線を用いていた通信の迂回経路として、前記異常が生じた回線を用いない通信経路を、前記コスト設定手段が定めたコストに基づいて計算する経路計算処理、および、
前記経路計算処理で計算した通信経路を、当該通信経路上のスイッチに対して設定する経路設定処理
を実行させるための通信経路制御プログラム。
【請求項８】
コンピュータに、
使用帯域収集処理で、いずれの回線においても異常が生じていない場合に、各回線の使用帯域の情報を収集させる
請求項７に記載の通信経路制御プログラム。
【請求項９】
予め回線の使用可能帯域に応じて定められたコストである初期コストを記憶する初期コスト記憶手段を備えたコンピュータに、
異常が生じていない状態で通信が発生した場合に、前記通信の通信経路を前記初期コストに基づいて計算する処理を実行させる
請求項７または請求項８に記載の通信経路制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク内の通信経路を制御する通信経路制御装置、通信経路制御方法および通信経路制御プログラムに関する。
【背景技術】
【０００２】
ＯＳＰＦ（Open Shortest Path First）等の一般的な通信経路制御では、ネットワーク内の区間毎にコストが予め定められている。コストは、区間の使用可能帯域が広いほど、小さい値に設定され、区間の使用可能帯域が狭いほど、大きい値に設定される。区間とコストの対応関係を示す情報は、コストマップと呼ばれることもある。一般的な通信経路制御では、コストの合計値の小さい通信経路が探索される。また、いずれかの区間に異常が生じた場合には、その区間を用いていた通信経路の迂回経路が探索される。このとき、異常が生じた区間を除いて、コストの合計値の小さい通信経路が迂回経路として探索される。
【０００３】
また、特許文献１には、リンクにコストと空き帯域との組を対応付けることが記載されている。特許文献１には、コストの例として、リンクの距離に比例した値や、残帯域の大きさに応じた値が示されている。また、特許文献１には、着ノードが障害通知メッセージを受信すると、通知された障害位置が、自ノードが使用している経路上に存在するかを判定することが記載されている。さらに、特許文献１には、障害が発生すると、着ノードが、リンクの空き帯域とコストとを用いて、空き帯域が相対的に大きい経路候補が優先されるように、経路候補を順位付けすることが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−３２４１２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記の一般的な通信経路制御では、いずれかの区間に異常が生じた場合、それまでその区間を用いていた通信経路の迂回経路が探索される。この探索は、予め定められたコストマップに基づいて行われる。また、コストの合計値が小さい通信経路が迂回経路として定められる。従って、迂回経路は、使用可能帯域が広い区間を通過するように定められる傾向が強い。また、使用可能帯域が広い区間は、異常が生じた区間を通過していない通信経路によっても、既に用いられている可能性が高い。従って、上記の一般的な通信経路制御では、異常が生じると、使用可能帯域が広い区間に輻輳が生じやすくなる。また、その結果、既にその区間を用いていた通信を阻害しやすくなる。
【０００６】
また、特許文献１に記載の技術では、着ノードは、障害通知メッセージを受信すると、通知された障害位置が、自ノードが使用している経路上に存在するかを判定し、障害位置がその経路上に存在する場合に、新たな経路を決定しなければならない。従って、自ノードが使用している経路上に障害位置が存在していない着ノードであっても、障害位置が、自ノードが使用している経路上に存在するかを判定するため、ノードの処理負荷が高くなる。
【０００７】
そこで、本発明は、ネットワーク内のいずれかの回線に異常が生じたことにより、既に設定されていた通信経路の迂回経路を設定する場合に、迂回経路設定後における輻輳の発生を防止することができ、また、異常が生じた場合におけるネットワーク内のスイッチの処理負荷の増加を抑制することができる通信経路制御装置、通信経路制御方法および通信経路制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明による通信経路制御装置は、スイッチ同士を結ぶ各回線の使用帯域の情報を収集する使用帯域収集手段と、回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコストを定めるコスト設定手段と、スイッチ同士を結ぶ回線のいずれかで異常が生じた場合に、異常が生じた回線を用いていた通信の迂回経路として、異常が生じた回線を用いない通信経路を、コスト設定手段が定めたコストに基づいて計算する経路計算手段と、経路計算手段が計算した通信経路を、当該通信経路上のスイッチに対して設定する経路設定手段とを備えることを特徴とする。
【０００９】
また、本発明による通信経路制御方法は、スイッチ同士を結ぶ各回線の使用帯域の情報を収集し、回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコストを定め、スイッチ同士を結ぶ回線のいずれかで異常が生じた場合に、異常が生じた回線を用いていた通信の迂回経路として、異常が生じた回線を用いない通信経路を、残帯域に応じたコストに基づいて計算し、通信経路を、当該通信経路上のスイッチに対して設定することを特徴とする。
【００１０】
また、本発明による通信経路制御プログラムは、コンピュータに、スイッチ同士を結ぶ各回線の使用帯域の情報を収集する使用帯域収集処理、回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコストを定めるコスト設定処理、スイッチ同士を結ぶ回線のいずれかで異常が生じた場合に、異常が生じた回線を用いていた通信の迂回経路として、異常が生じた回線を用いない通信経路を、コスト設定手段が定めたコストに基づいて計算する経路計算処理、および、経路計算処理で計算した通信経路を、当該通信経路上のスイッチに対して設定する経路設定処理を実行させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ネットワーク内のいずれかの回線に異常が生じたことにより、既に設定されていた通信経路の迂回経路を設定する場合に、迂回経路設定後における輻輳の発生を防止することができ、また、異常が生じた場合におけるネットワーク内のスイッチの処理負荷の増加を抑制することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の通信経路制御装置と、スイッチによって形成されるネットワークの例を示す説明図である。
【図２】本発明の通信経路制御装置の構成例を示すブロック図である。
【図３】本発明の通信経路制御装置の処理経過の例を示すフローチャートである。
【図４】図４は、ステップＳ２で計算された通信経路の例を示す模式図である。
【図５】ステップＳ７で迂回経路として計算された通信経路の例を示す模式図である。
【図６】本発明の通信経路制御装置の概要を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態を図面を参照して説明する。
【００１４】
図１は、本発明の通信経路制御装置と、スイッチによって形成されるネットワークの例を示す説明図である。
【００１５】
本発明の通信経路制御装置１は、各スイッチ２０を含むネットワーク内の通信経路を制御する。通信経路制御装置１は、ＳＤＮ（Software-Defined Networking ）における制御装置であると言うことができる。
【００１６】
スイッチのトポロジは、図１に示す例に限定されない。また、図１では、５個のスイッチ２０を示しているが、スイッチ２０の数は特に限定されない。また、図１に示す個々のスイッチ２０を区別する場合には、符号“＃１”〜“＃５”によって区別する。
【００１７】
各スイッチ２０は、ネットワークを形成している。１つの回線２５は、２つのスイッチ２０同士を結ぶ。ただし、スイッチ２０間に回線２５が設けられない場合をもある。例えば、図１に示す例では、スイッチ＃１，＃２間に回線２５は設けられていない。
【００１８】
各スイッチ２０は、自身と他のスイッチ２０とを結ぶ回線２５の使用帯域を検出する機能を有する。使用帯域は、ネットワークの運用時に実際に回線２５で使用されている帯域である。
【００１９】
また、各スイッチ２０は、回線２５とは別の専用の回線２６によって通信経路制御装置１と接続されている。以下、この回線２６を、スイッチ２０同士を結ぶ回線２５と区別して、制御回線２６と記す。図１では、制御回線２６を点線で示している。
【００２０】
また、スイッチ２０には、通信における送信元または宛先に該当する端末３０ａ，３０ｂが接続されている。図１では、２つの端末３０ａ，３０ｂを示しているが、端末の数は特に限定されない。
【００２１】
スイッチ２０同士を結ぶ個々の回線２５にはそれぞれ、コストが設定される。通信経路制御装置１は、２種類のコストを用いる。
【００２２】
１つ目のコストは、回線２５の使用可能帯域に応じて予め設定されたコストである。以下、このコストを第１のコストと記す。第１のコストは、初期コストと称することもできる。第１のコストは、回線２５の使用可能帯域が広いほど、小さい値に設定され、回線２５の使用可能帯域が狭いほど、大きい値に設定される。第１のコストは、回線２５毎に設定される。回線２５と第１のコストとの対応関係を示す情報を、以下、第１のコストマップと記す。例えば、通信経路制御装置１の管理者が、予め、第１のコストマップを作成し、通信経路制御装置１に記憶させておく。
【００２３】
２つ目のコストは、回線２５の使用可能帯域からその回線２５の使用帯域を減算して得られる残帯域に応じて、通信経路制御装置１が設定するコストである。以下、このコストを第２のコストと記す。通信経路制御装置１は、ネットワークの運用中であっていずれの回線２５においても異常が生じていない状況で、各回線２５の使用帯域の情報を各スイッチ２０から収集し、残帯域を計算する。そして、通信経路制御装置１は、回線２５の残帯域が広いほど、その回線２５の第２のコストを小さい値に設定し、残帯域が狭いほど、その回線２５の第２のコストを大きい値に設定する。通信経路制御装置１は、回線２５毎に第２のコストを設定する。回線２５と第２のコストとの対応関係を示す情報を、以下、第２のコストマップと記す。
【００２４】
通信経路制御装置１は、送信元となる端末に接続されたスイッチ２０から、宛先となる端末に接続されたスイッチ２０までの通信経路を計算する。通信経路制御装置１は、いずれの回線２５にも異常が生じていない場合には、第１のコストマップに基づいて、通信経路を計算する。また、いずれかの回線２５に異常が生じた場合には、通信経路制御装置１は、異常が生じた回線２５を用いていた通信の迂回経路として、その回線２５を用いない通信経路を新たに計算する。このとき、通信経路制御装置１は、第２のコストマップに基づいて新たな通信経路を計算する。
【００２５】
通信経路制御装置１は、通信経路を計算した場合、通信経路上の各スイッチに対して、その通信経路を設定する。
【００２６】
以下の説明では、異常の種類が、回線に生じる障害である場合を例にして説明する。
【００２７】
図２は、本発明の通信経路制御装置１の構成例を示すブロック図である。通信経路制御装置１は、トポロジ情報記憶部２と、コストマップ記憶部３と、使用帯域収集部４と、コスト設定部５と、経路計算部６と、経路設定部７とを備える。
【００２８】
トポロジ情報記憶部２は、ネットワークを形成する各スイッチ２０（図１参照）のトポロジ情報を記憶する記憶装置である。トポロジ情報は、どのスイッチ２０とどのスイッチ２０とが回線２５によって結ばれているのかを示す。さらに、トポロジ情報は、個々のスイッチ２０に接続されている端末の情報も含む。トポロジ情報は、さらに、回線２５毎の使用可能帯域の情報を含んでいてもよい。以下、回線２５毎の使用可能帯域の情報がトポロジ情報に含まれる場合を例にして説明する。例えば、トポロジ情報は、スイッチ＃１,＃４が回線２５によって結ばれているという情報と、その回線２５の使用可能帯域の情報とを含む。トポロジ情報は、回線２５によって結ばれている他のスイッチ２０の組に関しても、同様の情報を含む。
【００２９】
コストマップ記憶部３は、第１のコストマップおよびコスト設定部５によって生成される第２のコストマップを記憶する記憶装置である。
【００３０】
コストマップ記憶部３は、第１のコストマップを予め記憶する。例えば、管理者は、予め、回線２５毎に第１のコストを設定し、回線２５と第１のコストとの対応関係を示す第１のコストマップを作成する。そして、管理者は、その第１のコストマップを予めコストマップ記憶部３に記憶させておけばよい。なお、第１のコストマップをコストマップ記憶部３に記憶させる態様は、上記の態様に限定されない。ただし、第１のコストは、回線２５の使用可能帯域が広いほど、小さい値に設定され、回線２５の使用可能帯域が狭いほど、大きい値に設定される。
【００３１】
また、初期状態では、コストマップ記憶部３は、第２のコストマップを記憶していない。コスト設定部５が、第２のコストマップを生成すると、その第２のコストマップをコストマップ記憶部３に記憶させる。
【００３２】
なお、トポロジ情報記憶部２およびコストマップ記憶部３は、同一の記憶装置によって実現されていてもよく、あるいは、別々の記憶装置によって実現されていてもよい。
【００３３】
使用帯域収集部４は、ネットワークの運用中であっていずれの回線２５においても障害が生じていない状況で、制御回線２６を介して、各スイッチ２０から回線２５の使用帯域の情報を収集する。各スイッチ２０は、自身と他のスイッチ２０とを結ぶ回線２５の使用帯域を検出する機能を有する。使用帯域収集部４は、例えば、スイッチ２０が検出した回線２５の使用帯域の情報およびその回線２５の識別情報を、各スイッチ２０から収集する。この結果、使用帯域収集部４は、個々の回線２５の使用帯域の情報を収集することになる。
【００３４】
コスト設定部５は、回線２５毎に第２のコストを設定する。このとき、コスト設定部５は、まず、回線２５毎に、使用可能帯域から使用帯域を減算することによって残帯域を求める。コスト設定部５は、トポロジ情報に含まれている使用可能帯域の情報と、使用帯域収集部４が収集した使用帯域の情報とを参照して、残帯域を計算すればよい。そして、コスト設定部５は、回線２５の残帯域が広いほど、その回線２５の第２のコストを小さい値に設定し、残帯域が狭いほど、その回線２５の第２のコストを大きい値に設定する。
【００３５】
コスト設定部５は、回線２５毎に第２のコストを設定した後、回線２５と第２のコストとの対応関係を示す第２のコストマップを生成し、第２のコストマップをコストマップ記憶部３に記憶させる。
【００３６】
経路計算部６は、新たな通信の発生をスイッチ２０から通知されると、その通信において、送信元となる端末に接続されたスイッチ２０から、宛先となる端末に接続されたスイッチ２０までの通信経路を計算する。以下、図１に示すスイッチ＃１〜＃５および端末３０ａ，３０ｂを例にして説明する。
【００３７】
ここでは、端末３０ｂが送信元であり、端末３０ａが宛先である場合を例にして説明する。また、いずれの回線２５においても障害は生じていないものとする。送信元となる端末３０ｂに接続されたスイッチ＃２は、端末３０ａを宛先とするパケットを端末３０ｂから受信すると、送信元および宛先に応じた通信経路上の次のスイッチ２０を指定する情報（以下、経路設定情報と記す。）がスイッチ＃２に設定されているか否かを判定する。経路設定情報が決定されていない場合、スイッチ＃２は、例えば、制御回線２６を介して、そのパケットを通信経路制御装置１に送信することによって、端末３０ｂを送信元として端末３０ａを宛先とする新たな通信が発生したことを通信経路制御装置１に通知する。
【００３８】
通信経路制御装置１の経路計算部６は、この通知を受信すると、端末３０ｂ（送信元）に接続されたスイッチ＃２から、端末３０ａ（宛先）に接続されたスイッチ＃１までの通信経路を計算する。例えば、経路計算部６は、端末３０ｂ（送信元）に接続されたスイッチ＃２から、端末３０ａ（宛先）に接続されたスイッチ＃１まで一続きになる回線２５の組を全て探索し、探索した回線２５の組をそれぞれ通信経路候補とする。経路計算部６は、通信経路候補毎に、通信経路候補に含まれる回線２５の第１のコストを第１のコストマップから読み取り、第１のコストの合計値を計算する。経路計算部６は、その合計値が最も小さい通信経路候補を通信経路として定める。このように、障害が生じていない場合、経路計算部６は、第１のコストマップ（換言すれば、第１のコスト）に基づいて、通信経路を計算する。
【００３９】
また、経路計算部６は、ある回線２５に障害が生じたことをスイッチ２０から通知されると、その障害が生じた回線２５を用いている通信の迂回路として、その障害が生じた回線２５用いない通信経路を計算する。例えば、障害発生前に、端末３０ｂ（送信元）から端末３０ａ（宛先）までの通信経路として、「スイッチ＃２→スイッチ＃５→スイッチ＃４→スイッチ＃３→スイッチ＃１」という通信経路を計算し、その通信経路を用いた通信が行われていたとする。その後、スイッチ＃３とスイッチ＃４との間の回線２５に障害が生じたという通知を、経路計算部６がスイッチ＃３、＃４から受けたとする。すると、経路計算部６は、スイッチ＃３とスイッチ＃４との間の回線２５を除外して、スイッチ＃２からスイッチ＃１まで一続きになる回線２５の組を全て探索し、探索した回線２５の組をそれぞれ通信経路候補とする。経路計算部６は、通信経路候補毎に、通信経路候補に含まれる回線２５の第２のコストを第２のコストマップから読み取り、第２のコストの合計値を計算する。経路計算部６は、その合計値が最も小さい通信経路候補を通信経路として定める。この通信経路は、障害が生じた回線２５を含まない迂回経路である。このように、障害が生じた場合、経路計算部６は、第２のコストマップ（換言すれば、第２のコスト）に基づいて、迂回経路を計算する。
【００４０】
経路設定部７は、経路計算部６が通信経路を計算すると、その通信経路を、その通信経路上の各スイッチ２０に対して設定する。経路計算部６が迂回経路となる通信経路を計算した場合も同様である。
【００４１】
経路設定部７は、具体的には、経路設定情報（送信元および宛先に応じた通信経路上の次のスイッチ２０を指定する情報）を、通信経路上のスイッチ２０毎に生成し、経路設定情報を対応するスイッチ２０に設定する。
【００４２】
例えば、端末３０ｂ（送信元）から端末３０ａ（宛先）までの通信経路として、「スイッチ＃２→スイッチ＃５→スイッチ＃４→スイッチ＃３→スイッチ＃１」という通信経路が計算されたとする。経路設定部７は、スイッチ＃２に対して、端末３０ｂを送信元とし端末３０ａを宛先とする通信経路において次のスイッチがスイッチ＃５であることを示す経路設定情報を設定する。経路設定部７は、その通信経路上の他のスイッチ２０に対しても同様に経路設定情報を設定する。この結果、スイッチ＃２は、端末３０ｂを送信元とし端末３０ａを宛先とするパケットを端末３０ｂから受信した場合、経路設定情報に従って、そのパケットを次のスイッチ＃５に送信する。通信経路上の他のスイッチ２０も同様に、受信したパケットを、経路設定情報に従って送信する。この結果、端末３０ｂが端末３０ａを宛先として送信したパケットは、端末３０ａに送られ、端末３０ｂから端末３０ａへの通信が実現される。
【００４３】
使用帯域収集部４、コスト設定部５、経路計算部６および経路設定部７は、例えば、通信経路制御プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、ＣＰＵは、例えば、コンピュータのプログラム記憶装置（図示略）等のプログラム記録媒体から通信経路制御プログラムを読み込み、その通信経路制御プログラムに従って、使用帯域収集部４、コスト設定部５、経路計算部６および経路設定部７として動作すればよい。また、使用帯域収集部４、コスト設定部５、経路計算部６および経路設定部７が別々のハードウェアによって実現されていてもよい。
【００４４】
以下、具体例を用いながら本発明の処理経過について説明する。図３は、本発明の通信経路制御装置１の処理経過の例を示すフローチャートである。
【００４５】
経路計算部６は、いずれかのスイッチ２０から新たな通信の発生を通知されると（ステップＳ１）、第１のコストマップに基づいて、その通信の通信経路を計算する（ステップＳ２）。なお、この時点では、いずれの回線２５においても障害は生じていないものとする。
【００４６】
例えば、端末３０ｂが送信元であり、端末３０ｂが、端末３０ａを宛先とする通信を開始したとする。端末３０ｂに接続されたスイッチ＃２は、端末３０ａを宛先とする一番目のパケットを端末３０ｂから受信する。この時点では、各スイッチ２０に、端末３０ｂを送信元として端末３０ａを宛先とする通信に関する経路設定情報は設定されていない。従って、スイッチ＃２は、例えば、そのパケットを通信経路制御装置１に送信することによって、端末３０ｂを送信元として端末３０ａを宛先とする新たな通信が発生したことを通信経路制御装置１に通知する。経路計算部６は、ステップＳ１で、このパケットをスイッチ＃２から受信し、端末３０ｂを送信元として端末３０ａを宛先とする新たな通信が発生したことを認識する。
【００４７】
すると、経路計算部６は、ステップＳ２で、端末３０ｂ（送信元）に接続されたスイッチ＃２から、端末３０ａ（宛先）に接続されたスイッチ＃１までの通信経路を、第１のコストマップに基づいて計算する。既に説明したように、例えば、経路計算部６は、スイッチ＃２からスイッチ＃１まで一続きになる回線２５の組を全て探索し、探索した回線２５の組をそれぞれ通信経路候補とする。経路計算部６は、通信経路候補毎に、通信経路候補に含まれる回線２５の第１のコストを第１のコストマップから読み取り、第１のコストの合計値を計算する。経路計算部６は、その合計値が最も小さい通信経路候補を通信経路として定める。図４は、ステップＳ２で計算された通信経路の例を示す模式図である。図４では、通信経路に含まれる各回線２５を矢印の線で示している。以下、ステップＳ２で、図４に示す「スイッチ＃２→スイッチ＃５→スイッチ＃４→スイッチ＃３→スイッチ＃１」という通信経路が計算された場合を例にして説明する。
【００４８】
ステップＳ２の後、経路設定部７は、ステップＳ２で計算された通信経路を、その通信経路上の各スイッチ２０（図４に示す例では、スイッチ＃２，＃５，＃４，＃３，＃１）に対して設定する(ステップＳ３）。ステップＳ３において、経路設定部７は、経路設定情報を、通信経路上のスイッチ２０毎に生成し、経路設定情報を対応するスイッチ２０に設定する。
【００４９】
例えば、経路設定部７は、スイッチ＃２に対して、端末３０ｂを送信元とし端末３０ａを宛先とする通信経路において次のスイッチがスイッチ＃５であることを示す経路設定情報を生成する。そして、経路設定部７は、制御回線２６を介して、その経路設定情報をスイッチ＃２に送信することにより、その経路設定情報をスイッチ＃２に設定する。経路設定部７は、通信経路上の他のスイッチに対しても同様の処理を行う。この結果、スイッチ＃２は、端末３０ｂから受信した、端末３０ａを宛先とするパケットをスイッチ＃５に送信する。通信経路上の他のスイッチ２０も同様に、受信したパケットを、経路設定情報に従って送信する。この結果、端末３０ｂから端末３０ａへの通信が実現される。
【００５０】
通信経路制御装置１は、障害が生じていない状態で新たな通信が発生する毎に、ステップＳ１〜Ｓ３を実行する。例えば、スイッチ＃５に接続されている端末（図示略）を送信元とし、スイッチ＃３に接続されている端末（図示略）を宛先とする新たな通信が発生した場合、通信経路制御装置１は、ステップＳ１〜Ｓ３を実行する。他の通信が発生した場合も同様である。
【００５１】
新たな通信の発生に伴い、通信経路制御装置１がステップＳ１〜Ｓ３を実行することにより、通信経路上の各回線２５が使用され、その各回線２５で使用帯域が増加する。
【００５２】
また、使用可能帯域が広い回線２５の第１のコストは小さな値に設定されている。従って、そのような回線２５は、多くの通信の通信経路に含まれやすい。
【００５３】
ネットワーク内の回線２５が使用されていていずれの回線２５においても障害が生じていない状況で、使用帯域収集部４は、制御回線２６を介して、各スイッチ２０から回線２５の使用帯域の情報を収集する（ステップＳ４）。例えば、使用帯域収集部４は、スイッチ２０が検出した回線２５の使用帯域の情報およびその回線２５の識別情報を、各スイッチ２０から収集する。
【００５４】
ステップＳ４の後、コスト設定部５は、回線２５毎に第２のコストを設定し、第２のコストマップを生成する（ステップＳ５）。ステップＳ５において、コスト設定部５は、回線２５毎に、使用可能帯域から使用帯域を減算することによって残帯域を求める。そして、コスト設定部５は、回線２５の残帯域が広いほど、その回線２５の第２のコストを小さい値に設定し、残帯域が狭いほど、その回線２５の第２のコストを大きい値に設定する。コスト設定部５は、回線２５と第２のコストとの対応関係を示す第２のコストマップを生成し、第２のコストマップをコストマップ記憶部３に記憶させる。
【００５５】
使用帯域収集部４およびコスト設定部５は、ステップＳ４，Ｓ５を、例えば、定期的に実行してもよい。そして、コスト設定部５は、コストマップ記憶部３に記憶されている第２のコストマップを定期的に更新してもよい。
【００５６】
いずれかの回線２５で障害が生じると、経路計算部６は、その回線２５に接続されるスイッチ２０から障害の発生を通知される（ステップＳ６）。例えば、スイッチ＃３，＃４間の回線２５に障害が生じたとする。すると、スイッチ＃３，＃４は、スイッチ＃３，＃４間の回線２５に障害が生じたことを、制御回線２６を介して、通信経路制御装置１に通知する。経路計算部６は、ステップＳ６で、この通知を受け、スイッチ＃３，＃４間の回線２５に障害が生じたことを認識する。以下、スイッチ＃３，＃４間の回線２５に障害が生じた場合を例に説明する。
【００５７】
ステップＳ６の後、経路計算部６は、障害が生じた回線２５を使用していた通信の迂回経路として、その回線２５を用いない通信経路を新たに計算する（ステップＳ７）。ステップＳ７では、経路計算部６は、第２のコストマップに基づいて、迂回経路となる通信経路を計算する。
【００５８】
例えば、図４に例示する「スイッチ＃２→スイッチ＃５→スイッチ＃４→スイッチ＃３→スイッチ＃１」という通信経路は、障害が生じたスイッチ＃３，＃４間の回線２５を含む。従って、経路計算部６は、「スイッチ＃２→スイッチ＃５→スイッチ＃４→スイッチ＃３→スイッチ＃１」という通信経路の迂回経路を、第２のコストマップに基づいて計算する。例えば、経路計算部６は、スイッチ＃３，＃４間の回線２５を除外して、スイッチ＃２からスイッチ＃１まで一続きになる回線２５の組を全て探索し、探索した回線２５の組をそれぞれ通信経路候補とする。経路計算部６は、通信経路候補毎に、通信経路候補に含まれる回線２５の第２のコストを第２のコストマップから読み取り、第２のコストの合計値を計算する。経路計算部６は、その合計値が最も小さい通信経路候補を通信経路として定める。この通信経路は、障害が生じた回線２５を含まない迂回経路である。
【００５９】
図５は、ステップＳ７で迂回経路として計算された通信経路の例を示す模式図である。図５では、通信経路に含まれる各回線２５を矢印の線で示している。すなわち、図５では、「スイッチ＃２→スイッチ＃４→スイッチ＃１」という通信経路を示している。
【００６０】
ステップＳ７の後、経路設定部７は、ステップＳ７で計算された通信経路を、その通信経路上の各スイッチ２０（図５に示す例では、スイッチ＃２，＃４，＃１）に対して設定する（ステップ８）。ステップＳ８において、経路設定部７は、ステップＳ３と同様に、経路設定情報を、通信経路上のスイッチ２０毎に生成し、経路設定情報を対応するスイッチ２０に設定する。
【００６１】
例えば、経路設定部７は、スイッチ＃２に対して、端末３０ｂを送信元とし端末３０ａを宛先とする通信経路において次のスイッチがスイッチ＃４であることを示す経路設定情報を生成する。そして、経路設定部７は、制御回線２６を介して、その経路設定情報をスイッチ＃２に送信することにより、その経路設定情報をスイッチ＃２に設定する。経路設定部７は、通信経路上の他のスイッチに対しても同様の処理を行う。この結果、スイッチ＃２は、端末３０ｂから受信した、端末３０ａを宛先とするパケットをスイッチ＃４に送信する。通信経路上の他のスイッチ２０も同様に、受信したパケットを、経路設定情報に従って送信する。この結果、図５に示す迂回経路を用いた端末３０ｂから端末３０ａへの通信が実現される。
【００６２】
上記の例では、端末３０ｂを送信元とし端末３０ａを宛先とする通信の迂回経路を計算する場合を例にして説明した。障害が生じた回線２５（スイッチ＃３，＃４間の回線２５）を用いている通信が他にも存在する場合、経路計算部６および経路設定部７は、その通信に関しても、ステップＳ７，Ｓ８を実行する。
【００６３】
本実施形態では、使用帯域収集部４が、各回線２５の使用帯域の情報を収集する。そして、コスト設定部５が、回線２５毎に、使用可能帯域から使用帯域を減算することによって残帯域を求める。さらに、コスト設定部５は、回線２５毎に、残帯域に応じて第２のコストを設定する。そして、いずれかの回線２５で障害が発生した場合、経路計算部６は、その回線２５を用いていた通信の迂回経路となる通信経路を、その回線２５を用いずに、第２のコストに基づいて計算する。さらに、経路設定部７は、その迂回経路を設定する。
【００６４】
従って、本実施形態によれば、ネットワーク内のいずれかの回線２５に障害が生じた場合、その回線を用いていた通信の迂回経路を設定することができ、その回線を用いていた通信を維持することができる。
【００６５】
そして、経路計算部６は、迂回経路となる通信経路を第２のコストに基づいて計算する。従って、迂回経路は、障害が生じた回線２５以外の回線２５の残帯域に基づいて定められていると言える。よって、使用可能帯域が広くても、種々の端末間で通信が開始された結果、残帯域が狭くなっている回線２５は、ステップＳ７で計算される通信経路で用いられにくくなる。従って、使用可能帯域が広くても残帯域が狭くなっている回線２５で、輻輳が生じること防止することができる。その結果、使用可能帯域が広くても残帯域が狭くなっている回線２５を既に使用していた通信であって、迂回経路を定める必要がない通信が輻輳によって阻害されることを防止することができる。また、各回線２５の残帯域を平滑化することができる。
【００６６】
具体例を用いて説明する、図４に示すスイッチ＃５，＃４間の回線２５は、使用可能帯域が広いため、いずれかの回線２５で障害が生じる前に種々の端末間の通信で用いられていたとする。そして、その結果、スイッチ＃５，＃４間の回線２５の残帯域は狭くなっていたとする。仮に、経路計算部６が、ステップＳ７で、第１のコストに基づいて迂回経路を計算したとすると、スイッチ＃５，＃４間の回線２５を使用する迂回経路が増え、その回線２５で輻輳が生じやすくなる。その結果、既にその回線２５を使用していた通信であって、迂回経路を計算する必要がない通信が阻害される。しかし、本発明では、経路計算部６が、ステップＳ７で、第２のコストに基づいて迂回経路を計算する。従って、経路計算部６が、図４に示す通信経路の迂回経路をステップＳ７で計算する場合、残帯域が狭いスイッチ＃５，＃４間の回線２５を用いない迂回経路（例えば、図５に示す通信経路）を計算する。従って、本発明によれば、スイッチ＃５，＃４間の回線２５における輻輳を防止することができる。また、既にその回線２５を使用していた通信であって、迂回経路を計算する必要がない通信が輻輳によって阻害されることを防止することができる。
【００６７】
また、本発明では、経路計算部６が、障害が生じた回線２５を用いている通信の迂回経路となる通信経路を計算する。従って、本発明では、特許文献１に記載された技術とは異なり、個々のスイッチ２０がそれぞれ、自身が使用している通信経路上に障害が発生した区間が存在するか否かを判定する必要がない。従って、障害が生じた場合におけるネットワーク内のスイッチ２０の処理負荷の増加を抑制することができる。
【００６８】
上記の実施形態では、異常の種類が、回線に生じる障害である場合を例にして説明した。異常の種類が、輻輳であってもよい。すなわち、経路計算部６が、いずれかの回線２５において輻輳が生じた旨の通知を受け（ステップＳ６）、その後、経路計算部６がステップＳ７を実行し、経路設定部７がステップＳ８を実行してもよい。
【００６９】
次に、本発明の概要を説明する。図６は、本発明の通信経路制御装置の概要を示すブロック図である。本発明の通信経路制御装置は、使用帯域収集手段７１と、コスト設定手段７２と、経路計算手段７３と、経路設定手段７４とを備える。
【００７０】
使用帯域収集手段７１（例えば、使用帯域収集部４）は、スイッチ（例えば、スイッチ２０）同士を結ぶ各回線（例えば、回線２５）の使用帯域の情報を収集する。
【００７１】
コスト設定手段７２（例えば、コスト設定部５）は、回線毎に、回線の使用可能帯域から当該回線の使用帯域を減算して得られる残帯域を計算し、当該残帯域に応じたコスト（例えば、第２のコスト）を定める。
【００７２】
経路計算手段７３（例えば、経路計算部６）は、スイッチ同士を結ぶ回線のいずれかで異常（例えば、障害や輻輳）が生じた場合に、異常が生じた回線を用いていた通信の迂回経路として、異常が生じた回線を用いない通信経路を、コスト設定手段７２が定めたコストに基づいて計算する。
【００７３】
経路設定手段７４（例えば、経路設定部７）は、経路計算手段７３が計算した通信経路を、当該通信経路上のスイッチに対して設定する。
【００７４】
そのような構成により、ネットワーク内のいずれかの回線に異常が生じたことにより、既に設定されていた通信経路の迂回経路を設定する場合に、迂回経路設定後における輻輳の発生を防止することができる。また、異常が生じた場合におけるネットワーク内のスイッチの処理負荷の増加を抑制することができる。
【００７５】
使用帯域収集手段７１が、いずれの回線においても異常が生じていない場合に、各回線の使用帯域の情報を収集する構成であってもよい。
【００７６】
また、予め回線の使用可能帯域に応じて定められたコストである初期コスト（例えば、第１のコスト）を記憶する初期コスト記憶手段（例えば、コストマップ記憶部３）を備え、経路計算手段７３が、異常が生じていない状態で通信が発生した場合に、通信の通信経路を初期コストに基づいて計算する構成であってもよい。
【産業上の利用可能性】
【００７７】
本発明は、ネットワーク内の通信経路を制御する通信経路制御装置に好適に適用される。
【符号の説明】
【００７８】
１  通信経路制御装置
２  トポロジ情報記憶部
３  コストマップ記憶部
４  使用帯域収集部
５  コスト設定部
６  経路計算部
７  経路設定部
【図１】
2017168881.tif 000003
【図２】
2017168881.tif 000004
【図３】
2017168881.tif 000005
【図４】
2017168881.tif 000006
【図５】
2017168881.tif 000007
【図６】
2017168881.tif 000008