説明

経路情報更新システム、及び経路情報更新方法

【課題】トポロジの変更時に、リンクステート通知、現用系経路計算、予備系経路計算の順番を最適に設定して経路を更新することができる。
【解決手段】複数のノード100をリンクにより接続することで構成される通信ネットワークに流れるパケットの経路を更新する経路情報更新システムであって、各ノード100は、網トポロジ情報DB11を更新した場合に、(1)リンクステート転送部23、及び現用系経路計算部24の処理が終了した後に、予備系経路計算部26の処理を行う。(2)予備系経路計算部25の処理が終了した後に、リンクステート転送部23、及び現用系経路計算部24の処理を行う。または、(3)現用系経路計算部24、及び予備系経路計算部25の処理が終了した後に、リンクステート転送部23の処理を行う、のいずれかの処理手順で経路を更新する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、IP(Internet Protocol)ネットワークなどのパケット交換網における、設備増減設時の経路情報更新システム、及び経路情報更新方法に関する。
【背景技術】
【0002】
ネットワークにおいては、予期しない故障の発生に対して迅速に転送経路を切り替えることで故障復旧を行い、転送品質の維持を行うことが重要である。IPネットワークにおける故障復旧方式として、OSPF(Open Shortest Path First)等のルーチングプロトコルを用いた動的な復旧方式がある(非特許文献1参照)。
【0003】
OSPFでは、故障を検知したノードは、全ノードに故障情報を通知(フラッディング)する。故障情報を受け取ったノードは、故障箇所を除いた網トポロジ情報をもとに予備系経路を計算することで、自動的に転送経路を切り替えることが可能となる。しかし、OSPFでは故障発生後に予備系経路を計算するため、故障の復旧に秒単位の時間を必要とする問題がある。また、故障情報の通知や予備系経路の計算は、IPネットワークの規模に依存して増加する。
【0004】
このような問題点を解決する方法として、事前に予備系経路を計算しておくことで高速な故障復旧を実現するIP−FRR(IP Fast Reroute)方式が提案されている(非特許文献2参照)。IP−FRR方式は、事前に予備トポロジを作成し、故障発生時には該当故障箇所をプロテクトする(迂回する)予備トポロジに従った転送経路に切り替えることで故障復旧を行う。
【0005】
IP−FRR方式における予備トポロジを用いた故障復旧方法の具体例を図10を用いて説明する。図10(a)は、通常のトポロジの一例を示し、図10(b)は、予備トポロジの一例を示す。
【0006】
まず、ノードは、リンク断絶に備えたコンフィグレーション(予備トポロジ)を予め用意しておく。例えば、ノードは、リンク1−2(ノード番号「1」のノードと、ノード番号「2」のノードとの間のリンク)が断絶した場合に備え、このリンク1−2をプロテクトリンクとする予備トポロジを事前に作成する。なお、予備トポロジにおけるプロテクトリンクのリンクコストは、このプロテクトリンクが経路として選択されないようにするため、設定可能な最大値を付与する。これにより、予備トポロジ上でリンクコストの総和が最小となる最小コストルーティングにより経路を計算すると、プロテクトリンクを使用しない経路が算出される。この予備トポロジはすべてのノードに投入され、すべてのノードは予備トポロジに従った予備系経路が事前に(トラヒック転送前に)計算される。
【0007】
ここで、ノード番号「1」のノードをsrc(発ノード)とし、ノード番号「5」のノードをdst(着ノード)とする経路上において、リンク1−2の故障を検出した場合を考える。例えば、図10(a)に示す通常のトポロジ上で、(1)リンク1−2の故障を検出すると、故障検出ノード(ノード番号「1」のノード)は、故障リンクをプロテクトする予備トポロジAに従ってパケットをノード番号「4」のノードに転送する(図10(b)参照)。このとき、故障検出ノード(ノード番号「1」のノード)は、リンク1−2が故障したことを知っているので、予備トポロジAを使用すれば故障箇所を迂回できることを知っている。
【0008】
しかし、他のノード(例えば、ノード番号「4」のノード)は、故障箇所を把握できていない。そこで、故障検出ノード(ノード番号「1」のノード)は、(2)使用する予備トポロジAを選択し、この予備トポロジAのIDをノード番号「4」のノードに転送するパケットのヘッダに付与する。そして、予備系経路上に存在する他のノード(ここでは、ノード番号「4」のノード)はパケットを受信すると、(3)このパケットのヘッダを参照し、使用すべき予備トポロジAを選択し、その選択した予備トポロジAに従った予備系経路であるノード番号「5」のノードにパケットを転送する。
【0009】
このように、従来検討されてきたIP−FRR方式は、基準となるトポロジがノードの増設や減設がされずに固定であることを前提として、各リンクをプロテクトする予備トポロジを複数個作成することで、任意の単一リンクの故障に対する高速復旧を実現する。なお、予備トポロジの接続性が担保される限り、予備トポロジにおいて複数個所のリンクをプロテクトしてもよい。
【先行技術文献】
【非特許文献】
【0010】
【非特許文献1】“OSPF Version 2”、[online]、April 1998、IETF、[平成23年7月25日検索]、インターネット<URL: http://www.ietf.org/rfc/rfc2328.txt>
【非特許文献2】A.Kyalbein, A.F.Hansen, T.Cicic, S.Gjessing, and O.Lysne, “Fast IP Network Recovery using Multiple Routing Configurations,” in Proceedings of INFOCOM, Apr.2006
【発明の概要】
【発明が解決しようとする課題】
【0011】
上述した通り、従来検討されてきたIP−FRR方式では基準となるトポロジが固定であることを前提としている。トポロジは、設備の増設、減設等を契機に変化するため、トポロジの変化に伴って現用系経路だけでなくIP−FRRのための予備系経路についても再計算や設定を行う必要がある。
しかしながら、非特許文献2では、トポロジが変更された場合が考慮されていないので、トポロジが変更された場合に現用系経路及び予備系経路を再計算することができなかった。
【0012】
本発明は前記問題に鑑みてなされたものであり、トポロジの変更時に、リンクステート通知、現用系経路計算、予備系経路計算の順番を最適に設定して経路を更新することができる経路情報更新システム、及び経路情報更新方法を提供することを課題とする。
【課題を解決するための手段】
【0013】
前記課題を解決するため、本発明に係る経路情報更新システムは、複数のノードをリンクにより接続することで構成されるネットワークに流れるパケットの経路を更新する経路情報更新システムであって、各ノードが、前記ネットワークに属する前記各ノードに接続される前記リンクのインタフェースの情報であるリンクステートが格納される網トポロジ情報DBを備え、接続される前記リンクが変更された場合に、隣接する他のノードに前記リンクステートをリンクステート通知として送信するリンクステート送信部と、前記リンクステート通知を受信した場合に、受信したリンクステート通知に基づいて前記網トポロジ情報DBを更新するリンクステート受信部と、前記網トポロジ情報DBを更新した場合に、受信したリンクステート通知を隣接する他の前記ノードへさらに転送するリンクステート転送部と、前記網トポロジ情報DBに基づいて、現用系経路の計算を行う現用系経路計算部と、前記網トポロジ情報DBに基づいて、前記現用系経路が使用できない場合に使用する予備系経路の計算を行う予備系経路計算部と、前記リンクステート転送部、前記現用系経路計算部、及び前記予備系経路計算部の処理の順番を制御するプロトコル制御部と、を備え、前記プロトコル制御部が、前記リンクステート転送部、及び前記現用系経路計算部の処理が終了した後に、前記予備系経路計算部の処理を行わせる、ことを特徴とする。
【0014】
このようにすることで、本発明に係る経路情報更新システムは、経路の計算前にリンクステート通知を他のノードへ転送することができる。したがって、本発明に係る経路情報更新システムは、通信ネットワーク内の各ノードに対して、より早くリンクステート通知を送信することができる。特に、設備減設時には、即時的に減設情報(リンクステート通知)を通知することで、消失した設備(リンク)を使用することを回避することができる。
【0015】
また、本発明に係る経路情報更新システムは、前記プロトコル制御部が、前記予備系経路計算部の処理が終了した後に、前記リンクステート転送部、及び前記現用系経路計算部の処理を行わせる、ことを特徴とする。
【0016】
このようにすることで、本発明に係る経路情報更新システムは、予備系経路の計算をリンクステート通知の転送に先立って行うことができる。したがって、本発明に係る経路情報更新システムは、増設されたノードで予備系経路の計算が終了しておらずに現用系経路のみの計算が終了している状態で故障が発生した場合に、物理的には迂回できる経路が存在するにも関わらず予備系経路の計算が終了していないためにパケット転送ができない状態が発生しない。つまり、予備系経路が先立って計算されているので、現用系経路が故障した場合に、物理的な接続性が担保される限り予備系経路を用いて確実にパケットを送信できる。
【0017】
また、本発明に係る経路情報更新システムは、前記プロトコル制御部が、前記現用系経路計算部、及び前記予備系経路計算部の処理が終了した後に、前記リンクステート転送部の処理を行わせる、ことを特徴とする。
【0018】
このようにすることで、本発明に係る経路情報更新システムは、リンクステート通知の転送前に現用系経路及び予備系経路の計算を完了できる。したがって、本発明に係る経路情報更新システムは、リンクステート通知の転送元の現用系経路の計算が完了する前に、転送先の現用系経路の計算が完了してしまい、転送元から転送先へのIPパケットの転送時に転送元でIPパケットをロス(破棄)する現象が発生しない。
【発明の効果】
【0019】
本発明に係る経路情報更新方法、及び経路情報更新システムによれば、トポロジの変更時に、リンクステート通知、現用系経路計算、予備系経路計算の順番を最適に設定して経路を更新することができる。
【図面の簡単な説明】
【0020】
【図1】第1実施形態に係る通信ネットワークの構成図である。
【図2】第1実施形態に係るノードの機能構成図である。
【図3】従来のノードの処理手順(OSPF)を示すフローチャートである。
【図4】第1実施形態に係るノードの処理手順(ケース1)を示すフローチャートである。
【図5】第1実施形態に係るノードの処理手順(ケース2)を示すフローチャートである。
【図6】第1実施形態に係るノードの処理手順(ケース3)を示すフローチャートである。
【図7】第1実施形態に係る通信ネットワークの概略図である。図7(a)は、通信ネットワークに、1つのノードを物理的に増設した状態を示し、図7(b)は、増設したノード及び隣接するノードのインタフェースの設定及びプロトコルの設定を行っている状態を示し、図7(c)は、増設したノードが通信ネットワークのトポロジに関する情報を取得する様子を示し、図7(d)は、増設したノードから送信されたリンクステート通知が他のノードに転送される様子を示す。
【図8】第2実施形態に係る通信ネットワークの構成図である。
【図9】第2実施形態に係る制御サーバの機能構成図である。
【図10】IP−FRR方式における予備トポロジを用いた故障復旧方法を説明するための図である。
【発明を実施するための形態】
【0021】
[発明の概要]
従来からある方式であるOSPFでは、ネットワークトポロジの変化に伴って、(1)他のノードへの「インタフェースの情報(リンクステート)」の通知、(2)現用系経路の計算、の順番に処理を行っていた。本発明は、(1)他のノードへのリンクステートの通知、(2)現用系経路の計算、に加えて(3)予備系経路の計算の処理を考慮に入れた最適な処理の順番を提案する。
以下、本発明の実施の形態を、第1実施形態及び第2実施形態に分けて説明する。第1実施形態では、ネットワークトポロジの変化に伴ってそれぞれのノードが経路計算を行う分散型処理について説明し、第2実施形態では、ネットワークトポロジの変化に伴ってネットワークを制御するネットワーク制御装置が経路計算を行い、それぞれのノードに計算した経路を配布する集中型処理について説明する。
【0022】
以下、図面を参照して、本発明の実施の形態につき詳細に説明する。
なお、各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。なお、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【0023】
[第1実施形態]
≪経路情報更新システムの構成≫
以下、図1を参照して、第1実施形態に係る経路情報更新システムとしての通信ネットワーク1000の構成について説明する。なお、図1は、第1実施形態に係る通信ネットワーク1000の構成図である。
【0024】
経路情報更新システムとしての通信ネットワーク1000は、複数のノード100と、各々のノード100を接続するリンクとで構成される。通信ネットワーク1000は、例えば、インターネットやイントラネット等である。
【0025】
<ノード>
図2を参照して、第1実施形態に係るノード100の構成について説明する。なお、図2は、第1実施形態に係るノード100の機能構成図である。
ノード100は、中継装置であり、例えば、ルータである。ノード100は、記憶部10と、制御部20と、通信部30とで構成される。通信部30は、リンクを介して他のノード100と通信可能に接続する装置である。通信部30は、複数のインタフェース3で構成され、それぞれのインタフェース3には接続先のノード100別のリンクが接続される。以下では、「インタフェース」を「I/F」と省略して呼ぶ場合がある。
【0026】
制御部20は、このノード100が備えるCPU(Central Processing Unit)によるプログラム実行処理や、専用回路等により実現される。さらに、記憶部10は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶媒体から構成される。なお、ノード100をプログラム実行処理により実現する場合、記憶部10には、このノード100の機能を実現するための経路情報更新プログラムが格納される。
【0027】
本実施の形態に係るノード100は、前記したような処理を実行させるプログラムによって実現することができ、そのプログラムをコンピュータによる読み取り可能な記録媒体(CD−ROM等)に記憶して提供することが可能である。また、そのプログラムを、インターネット等のネットワークを通して提供することも可能である。
【0028】
記憶部10には、網トポロジ情報DB11と、現用系経路情報DB12と、予備系経路情報DB13とが記憶される。
(網トポロジ情報DB)
網トポロジ情報DB11には、通信ネットワーク1000のトポロジに関する情報が格納される。具体的には、通信ネットワーク1000を構成するそれぞれのノード100に接続されるリンクのインタフェース3の情報(以下、「インタフェース3の情報」を「リンクステート」と呼ぶ場合がある)が格納される。
【0029】
この網トポロジ情報DB11は、例えば、OSPFで規定されるリンクステートデータベース(LSD:Link State Database)である。網トポロジ情報DB11は、それぞれのノード100から送信されるリンクステートについての通知(以下、「リンクステートについての通知(LSA:Link State Advertisement)」を省略して「リンクステート通知」と呼ぶ場合がある)を後記するリンクステート受信部22が受信した場合に、受信したリンクステート通知に基づいて更新される。
【0030】
(現用系経路情報DB)
現用系経路情報DB12には、受信したパケットの宛先のノード100と、受信したパケットを出力するインタフェース3との対応関係が規定されるテーブルが格納される。以下では、現用系経路情報DB12に格納されるテーブルを現用系経路情報テーブルと呼ぶこととし、現用系経路情報テーブルにはテーブルIDとして「0」が設定されている。現用系経路情報DB12は、網トポロジ情報DB11を基にして、後記する現用系経路計算部24により作成される。
【0031】
(予備系経路情報DB)
予備系経路情報DB13には、現用系経路情報DB12と同様に、受信したパケットの宛先のノード100と、受信したパケットを出力するインタフェース3の対応関係が規定されるテーブルが格納される。以下では、予備系経路情報DB13に格納されるテーブルを予備系経路情報テーブルと呼ぶこととする。予備系経路情報テーブルは、通信ネットワーク1000を構成するノード100やリンクに故障等の不具合が発生した場合に、現用系経路情報テーブルに代わって用いられる。予備系経路情報テーブルは、通信ネットワーク1000の故障箇所に対応させて複数存在し、これらの複数の予備系経路情報テーブルにはテーブルIDとして「0」以外の数字が連番で設定されている。
【0032】
制御部20は、リンクステート送信部21と、リンクステート受信部22と、リンクステート転送部23と、現用系経路計算部24と、予備系経路計算部25と、プロトコル制御部26と、パケット転送処理部27とを備えて構成される。以下では、ノード100の増減設によりトポロジが変化した場合の制御部20の機能について説明する。
【0033】
(リンクステート送信部)
リンクステート送信部21は、隣接するノード100が増減設されることによりインタフェース3に接続されるリンクが追加や変更された場合に、インタフェース3の設定やプロトコルの設定を行う。ここで、インタフェース3の設定とは、インタフェース3に接続されたリンクを介して隣接するノード3と電気信号のやり取りを行える状態にすることである。プロトコルの設定とは、リンクを介して隣接するノード100と情報の送受信を行うための規約を決め交わすことである。インタフェース3の設定やプロトコルの設定を行うことにより、ノード100は、リンクを介して隣接するノード100と情報の送受信を行える状態になる。そして、リンクステート送信部21は、インタフェース3の設定やプロトコルの設定を行った後に、自身の変更されたインタフェースに関する情報をリンクステート通知として、隣接するノード100に送信する。
【0034】
(リンクステート受信部)
リンクステート受信部22は、隣接するノード100からリンクステート通知を受信し、受信したリンクステート通知に基づいて網トポロジ情報DB11を更新する。
【0035】
(リンクステート転送部)
リンクステート転送部23は、既にリンクステート通知を受信しているノード100を除く隣接するノード100に対して、受信したリンクステート通知を転送する。リンクステート転送部23が、リンクステート通知を転送するタイミングは、後記するプロトコル制御部26に制御される。
【0036】
(現用系経路計算部)
現用系経路計算部24は、例えば、OSPFで用いられるダイクストラ(Dijkstra)のアルゴリズムを使用して網トポロジ情報DB11から現用系経路情報テーブルを作成し、現用系経路情報DB12を更新する。現用系経路計算部24が、現用系経路情報テーブルを作成するタイミングは、後記するプロトコル制御部26に制御される。
【0037】
(予備系経路計算部)
予備系経路計算部25は、例えば、IP−FRR方式を使用して網トポロジ情報DB11から予備系経路情報テーブルを作成し、予備系経路情報DB13を更新する。予備系経路計算部25が、予備系経路情報テーブルを作成するタイミングは、後記するプロトコル制御部26に制御される。
【0038】
(プロトコル制御部)
プロトコル制御部26は、リンクステート転送部23、現用系経路計算部24、及び予備系経路計算部25の処理の順番を制御し、それぞれ実行させる指示を行う。なお、トポロジの変更を最初に検出したノード100のプロトコル制御部26の処理においては、リンクステート転送部23が行う処理をリンクステート送信部21が行う処理に置き替えた処理となる。
プロトコル制御部26がリンクステート転送部23、現用系経路計算部24、及び予備系経路計算部25に処理の指示を出す順番は、3種類のケースが存在する。以下では、図3を参照し、従来のOSPFに規定される処理の順番を最初に説明し、そのあとに、図4〜図6を参照し、本実施形態に係る3種類のケースについて説明する。
【0039】
<従来の処理(OSPF)>
図3を参照してOSPFに規定される従来の処理手順を説明する。
OSPFに基づいて動作するノードは、リンクステート通知を他のノードから受信した場合に、受信したリンクステート通知をさらに隣接するノードに転送し(ステップS10)、次に、受信したリンクステート通知の内容を反映した現用系経路を計算する(ステップS20)。これにより、従来技術では、通信ネットワーク内の各ノードに対して、より早くリンクステート通知を送信することができたが、現用系経路の更新と同じタイミングで予備系経路を更新していないので、予備系経路が更新されるまでに通信ネットワーク内で故障が発生した場合に、トポロジ変更後の予備系経路を用いることができないという問題があった。
【0040】
<ケース1>
次に、図4を参照してケース1の処理手順を説明する。
プロトコル制御部26は、リンクステート通知を他のノードから受信した場合に、最初に、リンクステート転送部23に対して処理の指示を出し、それによりリンクステート転送部23は、リンクステート通知を隣接するノード100に転送する(ステップS110)。次に、プロトコル制御部26は、現用系経路計算部24に対して処理の指示を出し、それにより現用系経路計算部24は、現用系経路を計算し(ステップS120)現用系経路情報DB12を更新する。次に、プロトコル制御部26は、予備系経路計算部25に対して処理の指示を出し、それにより予備系経路計算部25は、予備系経路を計算し(ステップS130)予備系経路情報DB13を更新する。
なお、ステップS110のリンクステート通知の転送と、ステップS120の現用系経路の計算は、並行して処理を行ってもよい。
【0041】
ケース1の処理手順は、リンクステート通知の転送を優先したい場合の制御である。ケース1の処理手順は、例えば、ノード100の減設によるトポロジの変更のように、リンクステート通知を他のノード100へ転送することに即時性が求められる場合に有効である。
【0042】
<ケース2>
次に、図5を参照してケース2の処理手順を説明する。
プロトコル制御部26は、リンクステート通知を他のノードから受信した場合に、最初に、予備系経路計算部25に対して処理の指示を出し、それにより予備系経路計算部25は、予備系経路を計算し(ステップS210)予備系経路情報DB13を更新する。次に、プロトコル制御部26は、リンクステート転送部23に対して処理の指示を出し、それによりリンクステート転送部23は、リンクステート通知を隣接するノード100に転送する(ステップS220)。次に、プロトコル制御部26は、現用系経路計算部24に対して処理の指示を出し、それにより現用系経路計算部24は、現用系経路を計算し(ステップS230)現用系経路情報DB12を更新する。
なお、ステップS220のリンクステート通知の転送と、ステップS230の現用系経路の計算は、並行して処理を行ってもよい。
【0043】
ケース2の処理手順は、ケース1に比べて経路更新の安定した切り替えを実現したい場合の制御である。ここで、経路更新の安定した切り替えとは、ケース1では、現用系経路の計算の後に予備系経路の計算を行っているので、経路更新の過渡期において一時的ではあるが現用系経路のみの計算が終了している事が想定される。また、リンクステート通知の転送後に経路計算を行っているため、リンクステート通知の転送元のノード100は、転送先の予備系経路の計算が終了する前に、IPパケットを転送する可能性がある。そのため、増設されたノード100で予備系経路の計算が終了せずに現用系経路のみの計算が終了している状態で故障が発生した場合に、物理的には迂回できる経路が存在するにも関わらず予備系経路の計算が終了していないためにパケット転送ができない状態が発生する。しかしながら、ケース2では予備系経路の計算をリンクステート通知の転送に先立って行っているので、このような問題が発生しない。ケース2の処理手順は、例えば、ノード100の増設によるトポロジの変更のように、他のノード100へのリンクステート通知に即時性が求められない場合に有効である。
【0044】
<ケース3>
次に、図6を参照してケース3の処理手順を説明する。
プロトコル制御部26は、リンクステート通知を他のノードから受信した場合に、最初に、現用系経路計算部24に対して処理の指示を出し、それにより現用系経路計算部24は、現用系経路を計算し(ステップS310)現用系経路情報DB12を更新する。次に、プロトコル制御部26は、予備系経路計算部25に対して処理の指示を出し、それにより予備系経路計算部25は、予備系経路を計算し(ステップS320)予備系経路情報DB13を更新する。次に、プロトコル制御部26は、リンクステート転送部23に対して処理の指示を出し、それによりリンクステート転送部23は、リンクステート通知を隣接するノード100に転送する(ステップS330)。
なお、ステップS310の現用系経路の計算と、ステップS320の予備系経路の計算は、並行して処理を行ってもよいし、又は順序を逆転して予備系経路の計算の後に現用系経路の計算を行ってもよい。
【0045】
ケース3の処理手順は、ケース1やケース2と比べて経路更新のさらに安定した切り替えを実現したい場合の制御である。ここで、経路更新のさらに安定した切り替えとは、ケース1やケース2では、現用系経路の計算前若しくは並行してリンクステート通知の転送を行うので、リンクステート通知の転送元の現用系経路の計算が完了する前に、転送先の現用系経路の計算が完了してしまい、転送元から転送先へのIPパケットの転送時に転送元でIPパケットをロス(破棄)する現象が原理的に発生する可能性がある。しかしながら、ケース3ではリンクステート通知の転送前に現用系経路及び予備系経路の計算を完了することからこのような問題が発生しない。ケース3の処理手順は、現用系経路及び予備系経路の計算を待つので、リンクステート通知の伝搬がケース1やケース2よりも遅れるが、経路更新の安定した切り替えが優先される場合に有効である。
【0046】
上述したケース1ないしケース3の処理手順は、何れか1つを選択してもよいし、トポロジが変更される形態によってケース1ないしケース3の中から適切なケースを適宜選択するようにしてもよい。例えば、ノード100が増設されることによるトポロジの変更には、ケース2やケース3の処理手順を使用し、ノード100が減設されることによるトポロジの変更には、ケース1の処理手順を使用するようにしてもよい。また、ノード100が増減設される場所を考慮してケースを選択してもよいし、ノード100が増減設される時間帯(IPパケットの量)を考慮してケースを選択してもよい。また、通信ネットワーク1000のサイズを考慮してケースを選択してもよい。
【0047】
(パケット転送処理部)
図2に戻り、パケット転送処理部27は、受信したIPパケットを、どの経路に従って転送するかを決定して、決定した経路に従って受信したIPパケット転送する。具体的には、パケット転送処理部27は、IPパケットの宛先ID(例えばIPアドレス等)と、テーブルIDをキーとして出力インタフェース3(I/F)を決定して、決定した出力インタフェース3を介して受信したIPパケットを送信する。テーブルIDは、現用系経路か予備系経路かを指定するものであり、例えばIPパケットのToS(Type of Service)フィールドに記述される。
以上で、ノード100の構成の説明を終了する。また、経路情報更新システムとしての通信ネットワーク1000の構成の説明を終了する。
【0048】
≪経路情報更新システムの動作≫
以下、図7を参照して、第1実施形態に係る経路情報更新システムとしての通信ネットワーク1000にノード100が増設されることよりトポロジが変化した場合の経路情報更新の動作について、ケース2の処理を例にとり説明する。なお、ノード100の減設によりトポロジが変化した場合については、設備の増設によりトポロジが変化した場合の説明を援用することとして詳細な説明を省略する。また、ケース1及びケース3の処理手順についても、以下の説明を援用することとして詳細な説明は省略する。
【0049】
図7は、第1実施形態に係る通信ネットワーク1000の概略図である。図7(a)は、通信ネットワーク1000に、1つのノード100を物理的に増設した状態を示し、図7(b)は、増設したノード100及び隣接するノード100のインタフェースの設定及びプロトコルの設定を行っている状態を示し、図7(c)は、増設したノード100が通信ネットワーク1000のトポロジに関する情報を取得する様子を示し、図7(d)は、増設したノード100から送信されたリンクステート通知が他のノード100に転送される様子を示す。
【0050】
図7(a)に示すように、ノード番号「1」〜「5」のノード100で構成される通信ネットワーク1000に、ノード番号「6」のノード100を物理的に増設したとする。すると、図7(b)に示すように、ノード番号「1」及び「6」のノード100は、ノード番号「1」のノード100とノード番号「6」のノード100との間を接続するリンク1−6のインタフェース3の設定及びノード間のプロトコルの設定を行う。これにより、ノード番号「1」のノード100とノード番号「6」のノード100とは、情報の送受信を行える状態になる。
【0051】
次に、図7(c)に示すように、増設されたノード番号「6」のノード100は、既設のノード番号「1」のノード100から、網トポロジ情報DB11に格納される通信ネットワーク1000のトポロジに関する情報を受信する(符号51の矢印)。符号51の矢印で示す網トポロジに関する情報は、ノード番号「6」のノード100が増設される前の、ノード番号「1」〜「5」のノード100で構成される通信ネットワーク1000のトポロジの情報を取得する様子である。これにより、ノード番号「6」のノード100は、受信したトポロジに関する情報を基にして網トポロジ情報DB11を更新する。
【0052】
次に、図7(c)に示すノード番号「6」のノード100のプロトコル制御部26は、図5のフローチャートに従って指示を行う。それにより、まずノード番号「6」のノード100の予備系経路計算部25は、網トポロジ情報DB11から予備系経路情報テーブルを作成し、予備系経路情報DB13を更新する。次に、ノード番号「6」のノード100のリンクステート送信部21は、設定したインタフェース3に関する情報をリンクステート通知としてノード番号「1」のノード100に対して送信する(図7(d)における符号52の矢印)。次に、ノード番号「6」のノード100の現用系経路計算部24は、網トポロジ情報DB11から現用系経路情報テーブルを作成し、現用系経路情報DB12を更新する。
【0053】
一方、ノード番号「1」のリンクステート受信部22は、増設されたノード番号「6」のノード100のリンクステート送信部21から設定したインタフェース3に関する情報をリンクステート通知として受信し(図7(d)における符号52の矢印)、受信したリンクステート通知に基づいて網トポロジ情報DB11を更新する。
【0054】
次に、図7(d)に示すノード番号「1」のノード100のプロトコル制御部26は、図5のフローチャートに従って指示を行う。それにより、まずノード番号「1」のノード100の予備系経路計算部25は、網トポロジ情報DB11から予備系経路情報テーブルを作成し、予備系経路情報DB13を更新する。次に、ノード番号「1」のノード100のリンクステート転送部23は、ノード番号「6」のノード100から受信したリンクステート通知を隣接するノード番号「2」及び「5」のノード100に対して転送する(符号53,54の矢印)。次に、ノード番号「1」のノード100の現用系経路計算部24は、網トポロジ情報DB11から現用系経路情報テーブルを作成し、現用系経路情報DB12を更新する。
【0055】
一方、図7(d)に示すノード番号「2」のノード100のリンクステート受信部22は、ノード番号「1」のノード100のリンクステート転送部23から転送されたリンクステート通知を受信し(符号53の矢印)、受信したリンクステート通知に基づいて網トポロジ情報DB11を更新する。
【0056】
そして、図7(d)に示すノード番号「2」のノード100のプロトコル制御部26は、図5のフローチャートに従って指示を行う。それにより、まずノード番号「2」のノード100の予備系経路計算部25は、網トポロジ情報DB11から予備系経路情報テーブルを作成し、予備系経路情報DB13を更新する。次に、ノード番号「2」のノード100のリンクステート転送部23は、ノード番号「1」のノード100から受信したリンクステート通知を隣接するノード番号「3」のノード100に対して転送する(符号55の矢印)。次に、ノード番号「2」のノード100の現用系経路計算部24は、網トポロジ情報DB11から現用系経路情報テーブルを作成し、現用系経路情報DB12を更新する。
【0057】
一方、図7(d)に示すノード番号「5」のノード100は、ノード番号「2」のノード100と同様の処理を行い、ノード番号「1」のノード100から受信したリンクステート通知を隣接するノード番号「4」のノード100に対して転送する(符号56の矢印)。次に、ノード番号「3」や「4」のノード100も、受信したリンクステート通知に基づき経路計算を行う。
以上で、経路情報更新システムとしての通信ネットワーク1000の動作の説明を終了する。
【0058】
以上のように、第1実施形態に係る通信ネットワーク1000は、トポロジの変更時に、リンクステート通知、現用系経路計算、予備系経路計算の順番を最適に設定して経路を更新することができる。
具体的には、ケース1の手順に従えば、経路の計算前にリンクステート通知を他のノード100へ転送することができるので、通信ネットワーク1000内の各ノード100に対して、より早くリンクステート通知を送信することができる。
また、ケース2の手順に従えば、予備系経路の計算をリンクステート通知の転送に先立って行うので、現用系経路が故障した場合に、物理的な接続性が担保される限り予備系経路を用いて確実にIPパケットを送信できる。
また、ケース3の手順に従えば、リンクステート通知の転送前に現用系経路及び予備系経路の計算が完了するので、転送元のノード100から転送先のノード100へIPパケットを転送するときに、転送元でIPパケットをロス(破棄)する現象が発生しない。
【0059】
[第2実施形態]
≪経路情報更新システムの構成≫
以下、図8を参照して、第2実施形態に係る経路情報更新システムとしての通信ネットワーク1000aの構成について説明する。なお、図8は、第2実施形態に係る通信ネットワーク1000aの構成図である。
【0060】
経路情報更新システムとしての通信ネットワーク1000aは、ネットワーク情報取得装置300と、制御サーバ400と、複数のノード100aと、各々のノード100aを接続するリンクとで構成される。通信ネットワーク1000aは、例えば、インターネットやイントラネット等である。
【0061】
<ネットワーク情報取得装置>
ネットワーク情報取得装置300は、例えば、NMS(Network Management System)であり、通信ネットワーク1000aを構成するノード100aからインタフェース3の情報(リンクステート)を含む情報を取得して、取得した情報を制御サーバ400に送信する。
【0062】
<制御サーバ>
図9を参照して、第2実施形態に係る制御サーバ400の構成について説明する。なお、図9は、第2実施形態に係る制御サーバ400の機能構成図である。
制御サーバ400は、通信ネットワーク1000aの経路を計算し、計算した経路をそれぞれのノード100aに通知する装置である。制御サーバ400は、記憶部410と、制御部420と、通信部430とで構成される。通信部430は、他の装置と通信可能に接続するためのインタフェース等の装置である。
【0063】
記憶部410には、網トポロジ情報DB11と、現用系経路情報DB12と、予備系経路情報DB13とが記憶される。これらの情報は、第1実施形態と同様である。
制御部420は、現用系経路計算部24と、予備系経路計算部25と、経路配信部426とを備えて構成される。現用系経路計算部24及び予備系経路計算部25は、第1実施形態と同様である。
【0064】
(経路配信部)
経路配信部426は、現用系経路計算部24が計算した現用系経路、及び予備系経路計算部25が計算した予備系経路をノード100aに送信(配信)する。経路配信部426が、現用系経路→予備系経路の順番に経路を配信することで、第1実施形態のプロトコル制御部26の「ケース1」と同様の効果を得ることができる。また、経路配信部426が、予備系経路→現用系経路の順番に経路を配信することで、第1実施形態のプロトコル制御部26の「ケース2」と同様の効果を得ることができる。
【0065】
<ノード>
ノード100aは、第1実施形態に係るノード100と異なり自身で経路計算を行わず、制御サーバ400から現用系経路及び予備系経路を取得する。
以上で、経路情報更新システムとしての通信ネットワーク1000aの構成の説明を終了する。
【0066】
以上のように、第2実施形態に係る通信ネットワーク1000aは、第1実施形態に係る通信ネットワーク1000と同様の効果を得ることができる。
【0067】
[変形例]
以上、本発明の第1実施形態及び第2実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲で実施することができる。第1実施形態及び第2実施形態の変形例を以下に示す。
【0068】
(プロトコル制御部)
第1実施形態におけるプロトコル制御部26では、リンクステート通知、現用系経路計算、予備系経路計算の順番を入れ替える処理手順を説明した。ここで、通信ネットワーク1000が、パスネットワークのようにある現用系経路に対して予備系経路が存在する場合、現用系経路が決まらないと予備系経路が計算できない。そのような場合は、現用系経路→予備系経路の順番に経路計算は行い、プロトコル制御部26における「計算」の部分を「IPパケットを転送するための設定」に読み替えるようにする。
【0069】
(制御サーバ)
第2実施形態における制御サーバ400では、インタフェース3の情報(リンクステート)をネットワーク情報取得装置300から受信していたが、制御サーバ400がネットワーク情報取得装置300の機能(リンクステート収集部)を備えるようして、制御サーバ400がノード100aからリンクステートを直接受信するようにしてもよい。
【符号の説明】
【0070】
3 インタフェース
10 記憶部
11 網トポロジ情報DB
12 現用系経路情報DB
13 予備系経路情報DB
20 制御部
21 リンクステート送信部
22 リンクステート受信部
23 リンクステート転送部
24 現用系経路計算部
25 予備系経路計算部
26 プロトコル制御部
27 パケット転送処理部
30 通信部
100,100a ノード
300 ネットワーク情報取得装置(リンクステート収集部)
400 制御サーバ(経路制御装置)
410 記憶部
420 制御部
430 通信部
426 経路配信部
1000,1000a 通信ネットワーク(経路情報更新システム)

【特許請求の範囲】
【請求項1】
複数のノードをリンクにより接続することで構成されるネットワークに流れるパケットの経路を更新する経路情報更新システムであって、
各ノードは、
前記ネットワークに属する前記各ノードに接続される前記リンクのインタフェースの情報であるリンクステートが格納される網トポロジ情報DBを備え、
接続される前記リンクが変更された場合に、隣接する他のノードに前記リンクステートをリンクステート通知として送信するリンクステート送信部と、
前記リンクステート通知を受信した場合に、受信したリンクステート通知に基づいて前記網トポロジ情報DBを更新するリンクステート受信部と、
前記網トポロジ情報DBを更新した場合に、
受信したリンクステート通知を隣接する他の前記ノードへさらに転送するリンクステート転送部と、
前記網トポロジ情報DBに基づいて、現用系経路の計算を行う現用系経路計算部と、
前記網トポロジ情報DBに基づいて、前記現用系経路が使用できない場合に使用する予備系経路の計算を行う予備系経路計算部と、
前記リンクステート転送部、前記現用系経路計算部、及び前記予備系経路計算部の処理の順番を制御するプロトコル制御部と、を備え、
前記プロトコル制御部は、
前記リンクステート転送部、及び前記現用系経路計算部の処理が終了した後に、前記予備系経路計算部の処理を行わせる、
ことを特徴とする経路情報更新システム。
【請求項2】
前記プロトコル制御部は、
前記予備系経路計算部の処理が終了した後に、前記リンクステート転送部、及び前記現用系経路計算部の処理を行わせる、
ことを特徴とする請求項1に記載の経路情報更新システム。
【請求項3】
前記プロトコル制御部は、
前記現用系経路計算部、及び前記予備系経路計算部の処理が終了した後に、前記リンクステート転送部の処理を行わせる、
ことを特徴とする請求項1に記載の経路情報更新システム。
【請求項4】
複数のノードをリンクにより接続することで構成されるネットワークと、前記ネットワークに流れるパケットの経路を計算する経路制御装置とで構成される経路情報更新システムであって、
前記経路制御装置は、
前記ネットワークに属する前記各ノードに接続される前記リンクのインタフェースの情報であるリンクステートが格納される網トポロジ情報DBを備え、
前記ノードに接続される前記リンクが変更された場合に、当該ノードから前記リンクステートを収集し、収集した前記リンクステートに基づいて前記網トポロジ情報DBを更新するリンクステート収集部と、
前記網トポロジ情報DBを更新した場合に、
前記網トポロジ情報DBに基づいて、前記ノードそれぞれの現用系経路の計算を行う現用系経路計算部と、
前記網トポロジ情報DBに基づいて、前記現用系経路が使用できない場合に使用する前記ノードそれぞれの予備系経路の計算を行う予備系経路計算部と、
前記ノードに対して、前記予備系経路計算部が計算した前記予備系経路を配信した後に、前記現用系経路計算部が計算した前記現用系経路を各ノードに対して配信する経路配信部と、を備える、
ことを特徴とする経路情報更新システム。
【請求項5】
複数のノードをリンクにより接続することで構成されるネットワークに流れるパケットの経路を更新する経路情報更新システムの経路情報更新方法であって、
各ノードは、
前記ネットワークに属する前記各ノードに接続される前記リンクのインタフェースの情報であるリンクステートが格納される網トポロジ情報DBを備え、
接続される前記リンクが変更された場合に、隣接する他のノードに前記リンクステートをリンクステート通知として送信するリンクステート送信ステップと、
前記リンクステート通知を受信した場合に、受信したリンクステート通知に基づいて前記網トポロジ情報DBを更新するリンクステート受信ステップと、
前記網トポロジ情報DBを更新した場合に、
受信したリンクステート通知を隣接する他の前記ノードへさらに転送するリンクステート転送ステップと、
前記網トポロジ情報DBに基づいて、現用系経路の計算を行う現用系経路計算ステップと、
前記網トポロジ情報DBに基づいて、前記現用系経路が使用できない場合に使用する予備系経路の計算を行う予備系経路計算ステップと、の処理を実行し、
前記処理の手順は、
前記リンクステート転送ステップ、及び前記現用系経路計算ステップの処理が終了した後に、前記予備系経路計算ステップの処理を実行する、
ことを特徴とする経路情報更新方法。
【請求項6】
前記処理の手順は、
前記予備系経路計算ステップの処理が終了した後に、前記リンクステート転送ステップ、及び前記現用系経路計算ステップの処理を実行する、
ことを特徴とする請求項5に記載の経路情報更新方法。
【請求項7】
前記処理の手順は、
前記現用系経路計算ステップ、及び前記予備系経路計算ステップの処理が終了した後に、前記リンクステート転送ステップの処理を実行する、
ことを特徴とする請求項5に記載の経路情報更新方法。
【請求項8】
複数のノードをリンクにより接続することで構成されるネットワークと、前記ネットワークに流れるパケットの経路を計算する経路制御装置とで構成される経路情報更新システムの経路情報更新方法であって、
前記経路制御装置は、
前記ネットワークに属する前記各ノードに接続される前記リンクのインタフェースの情報であるリンクステートが格納される網トポロジ情報DBを備え、
前記ノードに接続される前記リンクが変更された場合に、当該ノードから前記リンクステートを収集し、収集した前記リンクステートに基づいて前記網トポロジ情報DBを更新するリンクステート収集ステップと、
前記網トポロジ情報DBを更新した場合に、
前記網トポロジ情報DBに基づいて、前記ノードそれぞれの現用系経路の計算を行う現用系経路計算ステップと、
前記網トポロジ情報DBに基づいて、前記現用系経路が使用できない場合に使用する前記ノードそれぞれの予備系経路の計算を行う予備系経路計算ステップと、
前記ノードに対して、前記予備系経路計算ステップで計算した前記予備系経路を配信した後に、前記現用系経路計算ステップで計算した前記現用系経路を各ノードに対して配信する経路配信ステップと、を実行する、
ことを特徴とする経路情報更新方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2013−34080(P2013−34080A)
【公開日】平成25年2月14日(2013.2.14)
【国際特許分類】
【出願番号】特願2011−168836(P2011−168836)
【出願日】平成23年8月1日(2011.8.1)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】