(57)【要約】【課題】下位階層のドメイン間の最短経路を選択する際に、下位階層のドメインが持つノード間仮想リンクのリンクステート情報を考慮して、最適な最短経路選択を可能にする。【解決手段】階層分散型ルーティングにより最短経路を選択する際に、上位層のＰＣＳ１０１１により、下位層のＰＣＳ１０１２〜１０１７が管理するエリア内最短経路リストから、当該下位サブネットワークの境界ルータ間の最短経路コストを取得してこれを仮想リンクコストと見なす。そして、この取得された境界ノード間の仮想リンクコストと、上位層のＰＣＳ１０１１が管理するサブネットワーク間のリンクコストとに基づいて、起点から終点までの最短経路を求めるようにしたものである。【選択図】      図２
2007019852.tif 000002
【特許請求の範囲】
【請求項１】
各々が複数のノードを含み第１階層を構成する複数の第１のドメインと、これら第１のドメインを含み前記第１階層より上位の第２階層を構成する第２のドメインとを備え、前記複数の第１のドメインのそれぞれにドメイン内の経路リストを管理する第１のルーティング管理装置を設けると共に、前記第２のドメインに第１のドメイン間の経路リストを管理する第２のルーティング管理装置を設けてなるネットワークシステムで使用される階層分散型ルーティング方法であって、
前記第２のルーティング管理装置が、前記複数の第１のルーティング管理装置が管理するドメイン内の経路リストから、当該第１のドメインに含まれる境界ノード間の最短経路コストを取得する過程と、
前記第２のルーティング管理装置が、前記取得された境界ノード間の最短経路コストを、当該第１のドメインに含まれる境界ノード間の仮想リンクコストとして保持する過程と、
前記第２のルーティング管理装置が、前記保持された境界ノード間の仮想リンクコストと、自装置が管理するドメイン間リンクコストとに基づいて、起点ノードから終点ノードまでの最短経路を求める過程と
を具備することを特徴とする階層分散型ルーティング方法。
【請求項２】
前記最短経路を求める過程は、
選択された最終リンクが前記境界ノード間の仮想リンクであるか否かを判定する過程と、
最終リンクが前記境界ノード間の仮想リンクであると判定された場合に、当該仮想リンクの終点ノードから他のドメインに繋がるリンクの有無を判定する過程と、
前記選択した終点ノードから他のドメインに繋がるリンクが存在する場合には、当該リンクをドメイン間リンクと判断してこれを選択する過程と
を備えることを特徴とする請求項１記載の階層分散型ルーティング方法。
【請求項３】
各々が複数のノードを含み第１階層を構成する複数の第１のドメインと、これら第１のドメインを含み前記第１階層より上位の第２階層を構成する第２のドメインとを備え、前記複数の第１のドメインのそれぞれにドメイン内の経路リストを管理する第１のルーティング管理装置を設けると共に、前記第２のドメインに第１のドメイン間の経路を管理する第２のルーティング管理装置を設けてなるネットワークシステムで使用される階層分散型ルーティング方法であって、
前記第２のルーティング管理装置が、前記複数の第１のルーティング管理装置が管理するドメイン内の経路リストから、第１のドメインに含まれる境界ノード間の最短経路コストを取得する過程と、
前記第２のルーティング管理装置が、前記取得された境界ノード間の最短経路コストを、前記第１のドメインに含まれる境界ノード間の仮想リンクコストとして保持する過程と、
前記第２のルーティング管理装置が、前記複数の第１のルーティング管理装置が管理するドメイン内の経路リストから、当該第１のドメインに含まれる内部ノードと境界ノードとの間の最短経路コストを取得する過程と、
前記第２のルーティング管理装置が、前記取得された内部ノードと境界ノードとの間の最短経路コストを、前記第１のドメインに含まれる内部ノードと境界ノードとの間の仮想リンクコストとして保持する過程と、
前記第２のルーティング管理装置が、前記保持された境界ノード間の仮想リンクコストと、前記保持された内部ノードと境界ノードとの間の仮想リンクコストと、自装置が管理するドメイン間リンクコストとに基づいて、起点ノードから終点ノードまでの最短経路を求める過程と
を具備することを特徴とする階層分散型ルーティング方法。
【請求項４】
前記最短経路を求める過程は、
選択された最終リンクが前記境界ノード間の仮想リンクであるか否かを判定する過程と、
最終リンクが前記境界ノード間の仮想リンクと判定された場合に、当該仮想リンクの終点ノードから他のドメインに続くリンクの有無を判定する過程と、
前記選択した終点ノードから他のドメインに続くリンクが存在する場合には、当該リンクをドメイン間リンクと判断して選択する過程と、
前記選択された最終リンクが前記内部ノードと境界ノードとの間の仮想リンクであるか否かを判定する過程と、
最終リンクが前記内部ノードと境界ノードとの間の仮想リンクであると判定された場合に、当該仮想リンクを最終リンクと判断して以後の経路選択を停止する過程と
を備えることを特徴とする請求項３記載の階層分散型ルーティング方法。
【請求項５】
前記最短経路を求める過程は、
選択された経路の終点に対応する第１のドメインのルーティングポリシを判定する過程と、
前記ルーティングポリシの判定の結果、前記終点に対応する第１のドメインのルーティングポリシが独立型ルーティングモードであれば、当該終点に対応する第１のドメインを選択する過程と、
前記ルーティングポリシの判定の結果、前記終点に対応する第１のドメインのルーティングポリシが依存型又は詳細依存型ルーティングモードであれば、前記選択された経路の終点ノードを起点とする仮想リンクを選択する過程と
を、さらに備えることを特徴とする請求項２又は４記載の階層分散型ルーティング方法。
【請求項６】
各々が複数のノードを含み第１階層を構成する複数の第１のドメインと、これら第１のドメインを含み前記第１階層より上位の第２階層を構成する第２のドメインとを備え、前記複数の第１のドメインのそれぞれにドメイン内の経路リストを管理するドメイン内ルーティング管理装置を設けると共に、前記第２のドメインに第１のドメイン間の経路を管理するドメイン間ルーティング管理装置を設けてなるネットワークシステムで使用される前記ドメイン間ルーティング管理装置において、
前記複数のドメイン内ルーティング管理装置が管理するドメイン内の経路リストから、当該第１のドメインに含まれる境界ノード間の最短経路コストを取得する手段と、
前記取得された境界ノード間の最短経路コストを、当該第１のドメインに含まれる境界ノード間の仮想リンクコストとして認識する手段と、
前記認識された境界ノード間の仮想リンクコストと、前記ドメイン間ルーティング管理装置が管理するドメイン間リンクコストとに基づいて、起点ノードから終点ノードまでの最短経路を求める手段と
を具備することを特徴とするドメイン間ルーティング管理装置。
【請求項７】
前記最短経路を求める手段は、
選択された最終リンクが前記境界ノード間の仮想リンクであるか否かを判定する手段と、
最終リンクが前記境界ノード間の仮想リンクであると判定された場合に、当該仮想リンクの終点ノードから他のドメインに繋がるリンクの有無を判定する手段と、
前記選択された終点ノードから他のドメインに繋がるリンクが存在する場合には、当該リンクをドメイン間リンクと判断してこれを選択する手段と
を備えることを特徴とする請求項６記載のドメイン間ルーティング管理装置。
【請求項８】
各々が複数のノードを含み第１階層を構成する複数の第１のドメインと、これら第１のドメインを含み前記第１階層より上位の第２階層を構成する第２のドメインとを備え、前記複数の第１のドメインのそれぞれにドメイン内の経路リストを管理するドメイン内ルーティング管理装置を設けると共に、前記第２のドメインに第１のドメイン間の経路を管理するドメイン間ルーティング管理装置を設けてなるネットワークシステムで使用される前記ドメイン間ルーティング管理装置において、
前記複数のドメイン内ルーティング管理装置が管理するドメイン内の経路リストから、第１のドメインに含まれる境界ノード間の最短経路コストを取得する手段と、
前記取得された境界ノード間の最短経路コストを、前記第１のドメインに含まれる境界ノード間の仮想リンクコストとして保持する手段と、
前記複数のドメイン内ルーティング管理装置が管理するドメイン内の経路リストから、当該第１のドメインに含まれる内部ノードと境界ノードとの間の最短経路コストを取得する手段と、
前記取得された内部ノードと境界ノードとの間の最短経路コストを、前記第１のドメインに含まれる内部ノードと境界ノードとの間の仮想リンクコストとして保持する手段と、
前記保持された境界ノード間の仮想リンクコストと、前記保持された内部ノードと境界ノードとの間の仮想リンクコストと、自装置が管理するドメイン間リンクコストとに基づいて、起点ノードから終点ノードまでの最短経路を求める手段と
を具備することを特徴とするドメイン間ルーティング管理装置。
【請求項９】
前記最短経路を求める手段は、
選択された最終リンクが前記境界ノード間の仮想リンクであるか否かを判定する手段と、
最終リンクが前記境界ノード間の仮想リンクと判定された場合に、当該仮想リンクの終点ノードから他のドメインに繋がるリンクの有無を判定する手段と、
前記選択された終点ノードから他のドメインに繋がるリンクが存在する場合には、当該リンクをドメイン間リンクと判断して選択する手段と、
前記選択された最終リンクが前記内部ノードと境界ノードとの間の仮想リンクであるか否かを判定する手段と、
最終リンクが前記内部ノードと境界ノードとの間の仮想リンクであると判定された場合に、当該仮想リンクを最終リンクと判断して以後の経路選択を停止する手段と
を備えることを特徴とする請求項６記載のドメイン間ルーティング管理装置。
【請求項１０】
前記最短経路を求める手段は、
選択された経路の終点に対応する第１のドメインのルーティングポリシを判定する手段と、
前記ルーティングポリシの判定の結果、前記終点に対応する第１のドメインのルーティングポリシが独立型ルーティングモードであれば、当該終点に対応する第１のドメインを選択する手段と、
前記ルーティングポリシの判定の結果、前記終点に対応する第１のドメインのルーティングポリシが依存型又は詳細依存型ルーティングモードであれば、前記選択された経路の終点ノードを起点とする仮想リンクを選択する手段と
を、さらに備えることを特徴とする請求項７又は９記載のドメイン間ルーティング管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、MPLS（Multi Protocol Label Switching）やGMPLS（Generalized MPLS）ネットワークにおいて、最短経路選択を行うために使用される階層型ルーティング方法と、この方法を実現するためのドメイン間ルーティング管理装置に関する。
【背景技術】
【０００２】
近年、インターネットに代表される情報通信ネットワークの拡充に伴い、より効率の良いルーティング手法が要望されている。特に、複数のドメインを含むネットワークではドメイン間のルーティングが必要であり、これについて種々の検討が試みられている。以下、その一例としてＯＳＰＦ（Open Shortest Path Fist）と、ＡＴＭ（Asynchronous Transfer Mode）フォーラムが規定したＰＮＮＩ（Private Network to Network Interface）のルーティング手法と、上記技術分野へのその適用例について述べる。
【０００３】
先ず、複数のドメインを備えるネットワークの最短経路選択に、ＯＳＰＦプロトコルを用いる手法を図３乃至図５を用いて説明する（例えば、非特許文献１を参照）。なお、ここでは、起点ルータ或いは起点ルータと同じエリアに存在するエリア境界ルータがルーティング管理システムとなり、起点ルータと他のドメイン内の終点ルータとの間の最短経路を決定する場合を例にとって述べる。
【０００４】
先ず、説明の前提とするネットワーク構成／条件について図３を用いて説明する。図３において１０１〜１０６はＯＳＰＦのドメイン単位であるエリアであり、これらのエリア１０１〜１０６にはそれぞれエリア内ルータ２０１〜２１０と、エリア境界ルータ３０１〜３０７が存在する。また、このネットワークはバックボーンルータ４０１，４０２を備え、これらのバックボーンルータ４０１，４０２により上記エリア境界ルータ３０１〜３０７相互間が接続される。なお、６０１〜６１１はエリアＡ〜エリアＦ内のリンクであり、７０１〜７１６はバックボーンエリア内のリンクである。
【０００５】
各リンクの両端の数字はリンクコストを示すもので、リンクのその端からリンクの他方の端までのコストである。これらのリンクコストを含むリンクステート情報は、遅延、スループット及び信頼性等の条件に応じて数値により表されるが、リンクの利用頻度に応じて動的に反映される。エリア境界ルータ３０１〜３０７及びバックボーンルータ４０１，４０２は、自ルータに繋がるバックボーンエリアのリンクに関するリンクステート情報を他のすべてのエリア境界ルータとの間で共有する。
【０００６】
また、上記エリア１０１〜１０６間で交換されたリンクステート情報は、各エリアのエリア境界ルータ３０１〜３０７により、エリア内のすべてのルータ２０１〜２１０に通知される。このようにして、各ルータは自エリア内のリンクステート情報を自エリア内の他のルータと共用し、さらにバックボーンエリア内のリンクステート情報をすべての他のルータと共有することが可能になる。ただし、他のエリア内部のリンクステート情報は保持しない。
【０００７】
なお、この図３から分かるように、すべてのエリア境界ルータ３０１〜３０７はバックボーンエリアに接続している必要がある。なお、この例では示されていないが、エリア境界ルータ３０１〜３０７が直接バックボーンエリアに接続せず、仮想リンクと呼ばれる、エリア境界ルータ３０１〜３０７とバックボーンエリアとを結ぶ仮想的なリンクを用いて接続される場合もある。
【０００８】
図４は、図３の条件の下で、エリア内ルータ（Ｒ１）２０１から、バックボーンルータ（Ｒ２）４０２への最短経路ツリーを示す。この最短経路は、図３に示したリンクコストを距離として、その距離が最も短くなる経路を選択した結果得られる。８０１〜８１０は、上記各ルータ間の距離を示す。この最短経路ツリーは、ツリーの頂点であるルータからの他のルータまでの最短経路を求めるときに使われる。
【０００９】
図５は、図４の例で示したような最短経路ツリーを求めるために利用されるダイクストラのＳＰＦ（Shortest Path First）アルゴリズムのフローチャートを示すものである（例えば、非特許文献３を参照。）。  
先ずステップＳＴ５ａで起点ルータを選択する。次にステップＳＴ５ｂにおいて上記ステップＳＴ５ａで選んだルータから出ているリンクを選択する。起点がルータ（Ｒ１）２０１の場合には、対象となるリンクは図３における６０１のみとなる。ステップＳＴ５ｃでは、起点から上記ステップＳＴ５ｂにより選んだリンクまでのルータとリンクの順列を、ルートとして最短経路候補リストに登録する。起点がルータ（Ｒ１）２０１の場合は、このステップＳＴ５ｃの処理結果としてR1 201，link 601，ABR A 301のみが登録される。ここで、もしルータから外に出ているリンクがない場合には、最短経路候補リストには追加されず、最短経路候補リストの要素に変動は生じない。
【００１０】
ステップＳＴ５ｄでは、最短経路候補リストの要素に最短経路候補が１つ以上あるか否かを判定する。もしルートが一つもない場合にはアルゴリズムの終了となる。これに対し、一つ以上のルートが存在する場合にはステップＳＴ５ｅの処理に移行する。ステップＳＴ５ｅでは、最短経路候補リスト内でルートを構成するリンクコストの合計がコストミニマムな最短経路候補を選択し、そのルートを最短経路候補リストから除外する処理が行われる。
【００１１】
また上記ステップＳＴ５ｅでは、上記選択された最短経路候補を経路リストの要素と比較する処理が行われる。最短経路リストの中に、最短経路候補と同じ起点と終点のルータを持つルートが既に存在する場合には、ステップＳＴ５ｆからステップＳＴ５ｅの処理に戻り、存在しない場合にはステップＳＴ５ｇの処理に移行する。ステップＳＴ５ｇでは、最短経路候補を最短経路リストの新要素として加える処理が行われ、この処理の後にステップＳＴ５ａの処理に戻る。ステップＳＴ５ａは、上記ステップＳＴ５ｇにより加えられた最短経路候補を終点ルータの対象としてステップＳＴｂ以下の処理を行う。
【００１２】
この例では、終点ルータはABR A 301となるので、
（１）R1 201，1ink 601，ABR A 301，link 701，ABR D 304、
（２）R1 201，link 601，ABR A 301，1ink 702，Backbone R1 401、
（３）R1 201，link 601，ABR A 301，link 704，ABR B 302
の３つのルートが最短経路候補リストの中に登録される。
【００１３】
このように、アルゴリズムが終了した時に、最初の処理ステップＳＴ５ａで選んだ起点ルータからそのルータに繋がっているすべてのルータに対する最短経路が求まる。このＯＳＰＦを使った、マルチドメイン（マルチエリア）のＧＭＰＬＳ／ＭＰＬＳルーティングシナリオには以下の４つのシナリオがある（例えば、非特許文献２を参照）。
【００１４】
以下の説明では、起点が図３のR1 201、終点がR10 210の場合を想定する。
シナリオ１：起点ルータR1 201から同一エリア内のエリア境界ルータＡＢＲまでのルートは起点ルータR1 201が選択し、起点エリアＡＢＲから終点エリアＡＢＲまでのルートは起点エリアＡＢＲが選択し、さらに終点エリアＡＢＲから終点ルータまでのルートは終点エリアＡＢＲが計算する方法。
【００１５】
図３では、起点ルータR1 201と同一エリア内のＡＢＲはABR A 301だけなので、同一エリア内のＡＢＲまでの最短経路は、R1 201，link 601，ABR A 301と求まる。次に、エリア境界ルータABR 301はエリアF 106までの最短経路を求める。ABR F 306までの距離はABR G 307までの距離に比べて小さいので、ABR F 306までの経路が最短経路として選択される。その経路は、ABR A 301，1ink 702，Backbone R1 401，link 708，Backbone R2 402，link 714，ABR F 306である。エリア境界ルータABR Fは、終点ルータR10までの最短経路をABR F 306，link 610，Rl0 210として求める。
【００１６】
シナリオ２：起点ルータは、同一エリア内において代表となるエリア境界ルータＡＢＲに対し、起点ルータから終点エリアまでの最短経路を求めるように要求する。その後起点ルータは、求められた終点エリアのＡＢＲに対して、ＡＢＲから終点ルータまでの最短経路選択要求を行う。起点エリアで最短経路を求める代表ＡＢＲは、必ずしも最短経路上に存在する必要はない。図３では、ルータR 201がエリア境界ルータABR A 301に対し最短経路探索要求を行う。エリアＡ１０１にはＡＢＲは一つしかないので、エリア境界ルータABR A 301は必然的に代表ＡＢＲとして選択される。エリア境界ルータABR A 301は、起点ルータR1 201からの最短経路ツリーを用いて、エリア境界ルータABR F 306までの最短経路がR1 201，link 601，ABR A 301，link 702，Backbone R 401，link 708，Backbone R2 402，link 714，ABR F 306として求める。エリア境界ルータABR F 306は、終点ルータR10までの最短距離をABR F 306，Link 610，R10 210として求める。
【００１７】
シナリオ３：シナリオ２における起点エリアのエリア境界ルータＡＢＲの最短経路を起点ルータが計算する。他についてはシナリオ２と同じである。図３においては、起点ルータR1 201が、エリアF 106までの最短経路を起点ルータR1 201からの最短経路ツリーから求め、エリア境界ルータABR F 306が終点ルータR10までの最短経路を求める。
【００１８】
シナリオ４：シナリオ１乃至シナリオ３においては、起点ルータ或いは起点エリアの代表ＡＢＲにより選んだ終点エリアまでの最短経路が、必ずしも終点ルータまで到着されることが保証されていない。この場合には、起点ルータ或いは代表ＡＢＲにおいて再度の経路選択が必要になる。この問題を解消するため、最初に起点ルータは、終点エリアの代表ＡＢＲに対して、終点エリアの複数ＡＢＲから終点ルータまでの到着可否情報を計算させる。続いて終点エリアの代表ルータは、起点エリアの代表に対して、上記算出された終点エリアの複数のＡＢＲから終点ルータまでの到着可否情報を渡す。起点エリアの代表ＡＢＲは、起点ルータから終点エリアまでの最短経路を、終点エリアの到着可能なＡＢＲに到着することを制約として求める。
【００１９】
図３では、起点ルータR1 201が同一エリア内のエリア境界ルータABR A 301に最短経路選択要求を送る。エリア境界ルータABR A 301は、終点エリアの代表ＡＢＲである、ABR G 307（ABR G 307を代表ＡＢＲと仮定した場合）に、終点エリア内の経路情報（終点ルータまでの到着可否情報）の通知を要求する。終点エリアのエリア境界ルータABR G 307は、ABR F 306からR10 210までは到着不可能であるが、ABR G 307からは到着可能であることを伝える（この条件は仮定）。エリア境界ルータABR A 301は、起点ルータR1 201から終点エリアのエリア境界ルータABR G 307までの最短経路を、最短経路ツリーからR1 201，link 601，ABR A 301，link 702，Backbone R2 401，link 708，Backbone R2 402，link 715，ABR G 307として求める。
【００２０】
次に、ＰＮＮＩ（Private Network to Network Interface）プロトコルを複数ドメイン上での最短経路選択に用いる手法を、図６及び図７を用いて説明する（例えば、非特許文献４を参照。）。  
図６は、図３と同じ配置のＡＴＭの物理ノードをＰＧ（Peer Group）に属する論理ノードに分割したものである。図６において、２１０１〜２１０６は最も低い階層のＰＧであるＰＧＡ〜ＰＧＦである。２１１１〜２１１３はこれらの６つのＰＧより１階層上位のＰＧでありＰＧ１〜ＰＧ３である。２２０１〜２２１０は論理ノードであるＮ１〜Ｎ１０であるが、自ＰＧの外へ出るリンクを持たない。２３０１〜２３０７は境界ノードであるＢＮＡ〜ＢＮＧ（ＢＮ；Border Node）であるが、これらのノードは少なくとも１本のＰＧから外に出るリンクを保持する。
【００２１】
２６０１〜２６３３は論理リンクである。２１０１〜２１０６のＰＧは、上位（２１１１〜２１１３）においては論理グループノードとして扱われる。論理リンクは、最下層のＰＧ（２１０１〜２１０６）においては論理ノード間を接続するが、上位のＰＧ内、或いはＰＧ間では論理ノードに加えて論理グループノード間も接続する。ひとつの論理グループノードに繋がる複数リンクは、集約されて一つの論理リンクとして扱われる。
【００２２】
例えば、論理リンク２６２６は実質的に２本のリンク（図３では７１４，７１５）を一つの論理リンクとして扱う。各ＰＧには、ＰＧＬ（Peer Group Leader）が１ノード存在する。このノードは論理ノードか、論理グループノードのどちらかである。図６では、PG A 2101のＰＧＬはN1 2201、PG B 2102のＰＧＬはN3 2203、PG C 2103のＰＧＬはN5 2205、PG D 2104のＰＧＬはN7 2207、PG E 2105のＰＧＬはN8 2208、PG F 2106のＰＧＬはN9 2209となる。１階層上のＰＧのＰＧＬについては、論理グループノードがＰＧＬとなる。
【００２３】
例えば、PG1 2111のＰＧＬはPG A 2101に対応する論理グループノードがＰＧＬとなり、PG2 2112のＰＧＬはPG B 2102に対応する論理グループノードがＰＧＬとなり、PG3 2113のＰＧＬはPG C 2103に対応する論理グループノードがＰＧＬとなる。
【００２４】
ＰＧＬは、同じＰＧの他ノードの機能以外に２つの重要な機能を持つ。一つは当該ＰＧのノード間のリンクトポロジを集約形により上位のＰＧに伝えることである。もう一つは、上位のＰＧで得られたリンクステート情報を当該ＰＧ内のすべてのノードに配布することである。つまり、あるＰＧのＰＧＬの役割を果たす物理ノードは、同時に上位ＰＧ内の当該論理グループノードの物理的な代表ノードとなり、下位ＰＧと上位ＰＧとの間で下位からはリンクトポロジの集約情報を、また上位からは上位のＰＧで交換されたリンクステート情報を交換する。
【００２５】
図７は、下位ＰＧ内の集約リンクトポロジ情報の作成アルゴリズムの一例を示すものである。図７において、２６２６，２６２７はそれぞれ図６と同様にN12 2402とPG F 2106に対応する論理グループノード間の論理リンク、PG C 2103に対応する論理グループノードとPG F 2106に対応する論理グループノード間の論理リンクを示す。２７０１は集約リンクトポロジ情報の中心を示し、２７０２，２７０３はそれぞれPG C 2103への論理リンクの出力ポート及びN12 2402への出力ポートを示す。２７０４，２７０５はそれぞれ、中心２７０１から出力ポート２７０２，２７０３へのデフォルトスポークであり、中心から均等のデフォルトの値を持つ。
【００２６】
ただし、もしポート間のリンク値がデフォルト値よりもかなり異なる場合（例えばポート２７０２と２７０３間に潤沢な帯域が確保されている場合はリンク値が少なくなる）には、２７０６のような例外バイパスを用いてリンク値を設定する。このように集約リンクトポロジ情報の大枠はＰＧの中心を決め、そこからの半径を平均値で求めることにより決められ、例外的な場合のみ例外バイパスが適用される。
【００２７】
このように集約値を使うことには２つの理由がある。一つは、あるＰＧ内の情報を他のＰＧに必要最小限しか開示しないことである。他の一つは、これらの集約情報は上位のＰＧの論理グループノード間で共有するために通信されるため、そのトラフィックを少なくするためである。ここで、ＯＳＰＦの例と同様に、起点N1 2201から終点Nl0 2210までの最短経路選択を、ＰＮＮＩのルーティングプロトコルに基づいて行うシナリオを説明する。
【００２８】
先ず起点N1 2201は、PG1 2111に対応する論理グループノードが同じＰＧ（最上位のＰＧ１）内の他の論理グループノード（PG2 2112，PG3 2113）とやり取りしたリンクステート情報を、PG A 2101に対応する論理グループノード経由でＮ１内に保持している。このため、当該リンクステート情報から最短の経路を求める。その結果、PG1 2111からPG3 2113までの間では、ＰＧ２を経由せずに論理リンク２６３３を用いて（PG1 2111，link 2633，PG3 2113）が最短経路であることが求まる。
【００２９】
次にＮ１は、PG A 2101に対応する論理グループノードから得たPG1 2111内のリンクステート情報から、PG C 2103への経路が物理的に通るN11 2401までの最短経路を求める。その結果、PG D 2104に対応する論理グループノードを経由するよりは、論理リンク２６２２を使って、直接Ｎ１１に繋がる経路がよりコストが小さいと判断する。その結果、PG1 2111内では（PG A 2101，link 2622，N11 2401）が最短経路であると断定する。
【００３０】
N1 2201からＮ１１に向かう経路はBN A 2301を通る必要がある。しかし、その経路は（N1 2201，link 2601，BN A 2301）のみとなる。その結果、PG1 2111からPG3 2113までの経路が階層的に、  
最下位層:（N1 2201，link 2601，BN A 2301）  
第２階層:（PG A 2101，link 2622，N11 2401）  
最上位層:（PG1 2111，link 2633，PG3 2113）  
となる。
【００３１】
その結果、最下位層の論理ノードレベルでは、N1 2201，link 2601，BN A 2301，link 2622，N11 2402，link 2633，N12 2402が最短経路として選ばれる。なお、Ｎ１２はＮ１１と繋がるノードである。この結果、N1 2201からN12 2402までの経路が確保される。Ｎ１２では、PG3 2113の中でのPG F 2106までの最短経路を求める。N12 2402はPG3 2113に属する論理ノードである。このため、経路選択を２６２５〜２６２７のリンクステートを用いて行い、論理リンク２６２６で直接ＰＧＦへ繋がる経路が最短経路であることを求める。
【００３２】
論理リンク２６２８は集約され、実際は２つの区間のリンクから成り立っている。一つはN12 2402とBN F 2306とを結ぶリンクと、N12 2402とBN G2307とを結ぶリンクである。このどちらが選ばれるかについてはＰＮＮＩでは指針が示されておらず、ランダム選択されることが想定される。もしBN G 2307が選択された場合には、（N12 2402，link 2626，BN G 2307）が最短経路として確保される。BN G 2307は、PG F 2106の論理ノードであり、PGF内のリンクステート情報を保持している。しかし、Ｎ１０までの経路は（BN G 2307，1ink 2611，N10 2210）のみであるので、この経路が最短経路として選択され確保される。かくしてＮ１からＮ１０までの経路が選択される。
【００３３】
ＯＳＰＦ、ＰＮＮＩに代わる技術として、本発明者等はＰＣＳ（Path Computation Server）、或いはＮＭＳ（Network Management System）を各ドメインに配布すると共に、下位ドメインを複数含む上位ドメインにも配布し、ドメイン間ルーティングを階層的に行う手法を提案してきた（例えば、非特許文献５を参照。）。ＰＣＳを配布する場合の配置例を図８に示し、図９にドメイン間ルーティングを階層上位のＰＣＳで行うときのアルゴリズムを示す。
【００３４】
図８の例では、ＯＳＰＦ，ＰＮＮＩとの比較を容易にするため、図３と同じ構成のネットワークを管理する。ただし、ＯＳＰＦでのエリアはＳＮ（Sub network）３００１〜３００６として扱われる。ＳＮはドメインと同値であり、ＯＳＰＦのエリア、ＰＮＮＩのＰＧもＳＮとして扱うことが可能である。ＳＮは、ＰＮＮＩのＰＧと同様に、下位に複数のＳＮを階層的に保持することが可能で、複数階層のＳＮの入れ子構造が実現可能である。T0PSN 3007は、下位に６つのＳＮを持ち、その６つのＳＮ間のドメイン間ルーティングを管理するためのＳＮである。１０１１はＰＣＳ配信サーバであり、ＰＣＳソフトウエアの配信をＳＮごとに配置されたＰＣＳ搭載サーバ１０１２〜１０１７に対して行う。
【００３５】
図９の例では、ＰＣＳ搭載サーバ１０１１のように下位に複数のＳＮを保持するＰＣＳの、ドメイン（ＳＮ）間ルーティングアルゴリズムを示す。当該ＰＣＳはステップＳＴ９ａの処理プロセスにおいて、下位の一つのＳＮ（或いはルータ）を選択する。ルータは、ＳＮの極端な例として一つのＳＮを含むドメインとして扱う。
【００３６】
例えば、図８においてＰＣＳ１０１１はSN A 3001を起点ＳＮとして選択する場合もあるし、BackBone R 1401を起点として選択する場合もある。ただし、R1〜R10，ARB A〜ARB Gのような下位ＳＮ内のルータは対象とならない。図５のダイクストラのアルゴリズムではステップＳＴ５ａでルータのみを選択するのに対して、ＳＮも選択可能なところがステップＳＴ５ａの処理と異なるところである。ステップＳＴ９ｂの処理プロセスでは、ステップＳＴ９ａで選択したＳＮ（或いはルータ）から外側に出ているリンクを選択する。
【００３７】
図８で本プロセスを当てはめた場合、起点ＳＮをSN A 3001とすると、ＳＮから外に出ているリンクは７０１，７０２，７０４となる。ステップＳＴ９ｂで選んだリンクは、ダイクストラのステップＳＴ５ｃにおける処理と同様に、ステップＳＴ９ｃで、最短経路候補リストに加えられる。ただし、ステップＳＴ９ｃの例に示すように、ＳＮとその間のリンクの順列の他に、起点ルータ及び終点ルータの情報を保持する。図８の条件では、ここで登録されるルートは３つある。すなわち、ABR A 301からABR D 304までのルートと、ABR A 301からBackbone R1 401までのルートと、ABR A 301からABR B 302までのルートである。
【００３８】
ステップＳＴ９ｄの処理では、ダイクストラのステップＳＴ５ｄの処理と同様に、最短経路候補リストの中に一つ以上の最短経路候補があるかどうかを判断する。もし最短経路候補がなければアルゴリズムを終了する。これに対し１つ以上ある場合にはステップＳＴ９ｅの処理に移る。ステップＳＴ９ｅの処理では、ステップＳＴ５ｅの処理と同様に、最短経路候補リストの中からルートを構成するリンクのコストの和が最小のものを選択する。そして、この選択された最短経路候補を最短経路候補リストから除外し、最短経路リストの要素と比較する。図８の例では、上記３つのルートのコスト比較が行われる。
【００３９】
ステップＳＴ９ｆの処理では、起点ルータと終点ルートが、同じルートが最短経路リストのルートにあるかどうかが判定される。この判定の結果、既に同じ起点／終点ルータがある場合にはステップＳＴ９ｅの処理に戻る。これに対し、同じ起点／終点ルータがまだない場合にはステップＳＴ９ｇの処理に移行し、最短経路リストに上記ステップＳＴ９ｅの処理で選択したルートを加える。ステップＳＴ９ｇの処理後、ステップＳＴ９ａの処理に移る。このとき、対象となるドメインはステップＳＴ９ｇの処理で最短経路リストに登録されたルートの終点ドメインになる。
【００４０】
上記のように、ダイクストラのアルゴリズムと異なる点は、
（１）ステップＳＴ９ａの処理でドメインを扱う点。  
（２）ステップＳＴ９ｃの処理以降のルートとして、ドメインとリンクのルート構成要素の順列の他に、起点／終点ルータを情報として保持する点。  
（３）ステップＳＴ９ｆの処理でルートの構成要素の起点／終点が同じものが最短経路リストにあるかどうかを判断するのではなく、上記起点／終点ルータが同じものがあるかどうかを判断する点。  
である。
【００４１】
この例から分かるように、図９に示すアルゴリズムは上位階層ＳＮの下位に直接帰属する下位のＳＮ、或いはルータ間の最短経路を求めるためのものである。例えば、ＧＭＰＬＳネットワークで下位ＩＰドメイン間に光パスを設定する場合、複数のＩＰドメインと光ルータとの間の最短経路を求める場合に非常に有効である。
【００４２】
また、下位ドメインが上位ドメインに自ドメインの内部リンクトポロジを隠蔽したい場合は、上位ＰＣＳで先ず図９のアルゴリズムを用いてドメイン間の最短経路を求め、内部経路は上位のＰＣＳが定めたＡＢＲ等のドメイン境界ルータ間、或いは起点／終点ルータと境界ルータ間をルートが通過する各下位ＰＣＳが決定する方法で設定可能である。
【００４３】
例えば、起点R1 201から終点R10 210までのルートを求める場合には、ＰＣＳ搭載サーバ１０１２に搭載されるＰＣＳはルータＲ１が所属するSN A 3001からルータＲ１０が所属するSN F 3006までの最短経路順列が（SN A 3001，link 702，Backbone R 1401，link 708，Backbone R2 402，1ink 714，SNF）で、起点ルータがABR A 301、終点ルータがABR F 306であることを求める。
【００４４】
その後、ＰＣＳ搭載サーバ１０１２内のＰＣＳはR1 201とABR A 301との間の最短経路が1ink 601を通ること、ＰＣＳ搭載サーバ１０１７内のＰＣＳはABR F 306とルータＲ１０との最短経路がlink 610を通ることを、いずれも図５のダイクストラのアルゴリズムを当該ＳＮ内で適用することによって求める。このように階層的にルートを求めることが可能である。
【００４５】
提案したＰＣＳでは、上位階層のＳＮ内では図９のアルゴリズムを、また最下位階層のＳＮ内ではダイクストラのアルゴリズムで定期的にすべての起点から終点までの最短経路をアップデートしている。このため、ＯＳＰＲ，ＰＮＮＩのように呼設定要求ごとにルーティングをする手法に比べ、呼接続遅延が少なくなる。また、ＰＣＳ内でリンクステート情報を更新可能なので、ルータ／ノード間でリンクステート情報をやり取りする必要がない。図９のアルゴリズムは、各階層のＳＮが他の階層のＳＮと独立的にルーティングを行うので、「独立型ルーティング」方式と名付ける。
【００４６】
【非特許文献１】REC 1583, OSPF Varsion2.  http://www.fags.org/rfcs/ rfc1583.html.
【００４７】
【非特許文献２】Multi-area MPLS Traffic Engineering draft-kompella-mpls-multiarea-te-04.txt  http://www.watersprings.org/pub/id/draft-kompella-mpls-multiarea-te-04.txt
【００４８】
【非特許文献３】エイホ／ホットクロフト／ウルマン共著、野坂昭弘／野下浩平訳  “アルゴリズムの設計と解析Ｉ”p188. ISBN:N110569563
【００４９】
【非特許文献４】ATM Forum, “Private Network-Network Interface Specification Version 1.0 (PNNI 1.0)”,March 1996.
【００５０】
【非特許文献５】Inter-AS MPLS routing by EJB-based path computation server  Hiroshi Matsuura, Yasushi Yamanaka, Tatsuro Murakami, NTT,Japan, Kazumasa Takami, Soka University, 9th IFIP/IEEE International Symposium on Integrated Network Management (IM2005)
【発明の開示】
【発明が解決しようとする課題】
【００５１】
ＯＳＰＦを用いて複数ドメインに跨る起点ルータから終点ルータまでの最短経路を選ぶ場合には、最短経路を選択する際に起点ルータ或いは起点エリアの代表ＡＢＲに集中的に負荷がかかる。特に、シナリオ２及びシナリオ４は起点エリアの代表ＡＢＲ、シナリオ３は起点ルータが終点エリアまでの最短経路を図５のダイクストラのＳＰＦを用いて計算する必要がある。この計算量は、ＭＰＬＳ／ＧＭＰＬＳのドメイン数、ルータ数が多くなればなるほど大きくなる。
【００５２】
ＯＳＰＦを用いて複数ドメインに跨る起点ルータから終点ルータまでの最短経路を選ぶ場合のシナリオ１は、起点エリア内の情報だけで起点ルータから起点エリア内ＡＢＲまでの最短経路を求める。しかし、選択されたＡＢＲが必ずしも終点ルータまで到着するとは限らない。同様に終点エリアで選択されたＡＢＲも、必ずしも終点ルータまでの到着は保証されていない。その意味で最大Ｍ×Ｎ（Ｍ，Ｎはそれぞれ起点／終点エリアのＡＢＲ数）回のルート選択のやり直しが必要となる。
【００５３】
シナリオ２，３では、起点エリアの代表ＡＢＲ或いは起点ルータが終点エリアのＡＢＲまでの最短経路を計算する。しかし、選択された終点エリアのＡＢＲから終点ルータまでの到達は保証されていない。この場合には、最大Ｎ回のルート選択のやり直しが必要になる。
【００５４】
シナリオ４では、ルート選択のやり直しの必要はない。しかし、起点エリアのＡＢＲが終点エリアのＡＢＲから経路情報を取得してから制約付きの最短経路選択を行う。このため、最短経路選択までの時間が多く費やされると共に、起点エリア代表ＡＢＲと終点エリア代表ＡＢＲにより多くの負荷がかかる。また、終点エリアの代表ＡＢＲで考慮されるのは終点ルータまでの到着可能性のみであり、リンクステートを全て考慮しての起点ルータからのルーティングは行われない。すなわち、最適な経路が選択されるとは限らず、偏った経路が選択される可能性がある。ＰＮＮＩにおいても、起点ノードのルーティング負荷は大きい。理由は、起点ノードは各階層のＰＧのリンクステートを保持しているので、階層数分の最短経路の計算をする必要があるからである。
【００５５】
さらに、ルーティングを設定したときに、帯域等のリソース不足が生じて他の経路を選択してルーティングをし直す必要性が高い。理由は、ＰＧＬを通じて集約したリンクステートを受け取った上位の論理グループノードは、自ＰＧと集約リンクステートを用いて最短経路を導く。しかし、集約リンクステートは必ずしも正確なリンクステートではない。このため、上位階層でのルーティングが正確に行われない可能性があるからである。もう一つの理由は、上位階層の論理グループノード（下位のＰＧに対応）間の論理リンクは集約されており、図６の論理リンク２６２６のように実質の物理リンクは２つの区間に張られているものが１つの論理リンクとして扱われてしまう。このため、実質的にどちらを選ぶかはＰＮＭプロトコルでは最適性を得られないからである。
【００５６】
さらに、常にEnd-to-Endでの最適な経路が選ばれるとは限らない。理由は、起点ノードが経路を選択する場合に、あくまでも自分が保持しているリンクステートのみを参照して行うからである。例えば、図６においてN1 2201からN10 2210までの経路を選択する場合、起点ノードであるＮ１はPG1 2111内のリンクステート情報については考慮してルーティングすることが可能である。しかるに、終点ノードＮ１０が存在するPG3 2113のリンクステート情報については考慮されない。N12 2402がＰＧ３内のリンクステートを考慮するルーティングを行ってBN G 2307を選択し、ＢＮＧがＮ１０までのルーティングを行うが、このように一つのルートを選択する際に途中経路までの最適化までしか行うことができない。この状況では、End-to-Endを考慮した最適解は得られない。
【００５７】
図８のＰＣＳ配置アーキテクチャで行う図９の「独立型ルーティング」方式は、ＯＳＰＥ，ＰＮＮＩでのドメイン間ルーティングの課題であった起点ノードの負荷を大幅に軽減する。理由は、上位階層のＰＣＳが下位ドメイン（ＳＮ）間のルーティングを一括して行い、最下位層のＰＣＳは自ドメイン（ＳＮ）内のみのルーティングをダイクストラのアルゴリズムで行えばよいからである。また、同じ階層型ルーティング方式のＰＮＮＩに比べてドメイン（ＳＮ）間の別区間のリンクは別のリンクとして扱うので、下位ドメイン（ＳＮ）間の最適なリンクを各リンクのリンクステート情報を反映して行うことも可能である。このため、ＧＭＰＬＳネットワークで下位ＩＰドメイン間に光パスを設定する場合、複数ＩＰドメインと光ルータとの間の最短経路を求める場合に最適である。また、下位ドメインが上位ドメインに自ドメインの内部リンクトポロジを隠蔽したい場合にも最適である。ただし、下位ドメインが、下位ドメイン内のリンクステート情報も考慮してドメイン間ルーティングを行って欲しいといった要求を上位ドメインに出している場合には、図７の「独立型ルーティング」方式では最適解が得られない。この課題はＯＳＰＦ，ＰＮＮＩがEnd-to-Endのリンクステート情報を考慮することが難しい課題と同様である。
【００５８】
この発明は上記事情に着目してなされたもので、その目的とするところは、下位階層のドメイン間の最短経路を選択する際に、下位階層のドメインが持つノード間仮想リンクのリンクステート情報を考慮して、最適な最短経路選択を行えるようにした階層分散型ルーティング方法とその管理装置を提供することにある。
【課題を解決するための手段】
【００５９】
上記目的を達成するために第１の発明は、各々が複数のノードを含み第１階層を構成する複数の第１のドメインと、これら第１のドメインを含み上記第１階層より上位の第２階層を構成する第２のドメインとを備え、上記複数の第１のドメインのそれぞれにドメイン内の最短経路リストを管理する第１のルーティング管理装置を設けると共に、上記第２のドメインに第１のドメイン間の経路を管理する第２のルーティング管理装置を設けてなるネットワークシステムで使用される階層分散型ルーティング方法にあって、  
上記第２のルーティング管理装置が、上記複数の第１のルーティング管理装置が管理するドメイン内最短経路リストから、当該第１のドメインに含まれる境界ノード間の最短経路コストを取得して、この取得された境界ノード間の最短経路コストを当該第１のドメインに含まれる境界ノード間の仮想リンクコストとして保持する。そして、この保持された境界ノード間の仮想リンクコストと、上記第２のルーティング管理装置が管理するドメイン間リンクコストとに基づいて、起点ノードから終点ノードまでの最短経路を求めるようにしたものである。  
したがってこの発明によれば、下位ドメイン間の最短経路を選択する際に、下位ドメインにおける境界ノード間の論理リンク（仮想リンク）のリンクステート情報が考慮されるので、少ない処理負荷で最短経路の選択が可能になる。
【００６０】
またこの第１の発明は、上記最短経路を求める際に、選択された最終リンクが上記境界ノード間の仮想リンクであるか否かを判定し、当該仮想リンクであると判定された場合に当該仮想リンクの終点ノードから他のドメインに繋がるリンクの有無を判定する。そして、上記選択した終点ノードから他のドメインに繋がるリンクが存在する場合には、当該リンクをドメイン間リンクと判断してこれを選択するようにすることも特徴とする。
【００６１】
このようにすると、次のような作用が呈せられる。すなわち、下位ドメインの境界ノード間仮想リンクは既に下位ドメイン内で最適経路が選択されたものであり、下位ドメインの境界ノード間仮想リンクの後には下位ドメインの境界ノード間の仮想リンクは続かない。このため、もし経路がさらに続く場合には、この経路は必ずドメイン間リンクであると判断できる。したがって、この判断をもとに後続リンクを適切に選択することができる。すなわち、下位ドメインの境界ノード間仮想リンクのリンクステート情報に依存した、依存型ルーティング方式による最短経路選択が可能になる。
【００６２】
一方、第２の発明は、各々が複数のノードを含み第１階層を構成する複数の第１のドメインと、これら第１のドメインを含み上記第１階層より上位の第２階層を構成する第２のドメインとを備え、上記複数の第１のドメインのそれぞれにドメイン内の最短経路リストを管理する第１のルーティング管理装置を設けると共に、上記第２のドメインに第１のドメイン間の経路を管理する第２のルーティング管理装置を設けてなるネットワークシステムで使用される階層分散型ルーティング方法にあって、  
上記第２のルーティング管理装置が、上記複数の第１のルーティング管理装置が管理するドメイン内最短経路リストから、第１のドメインに含まれる境界ノード間の最短経路コストを取得して、この取得された境界ノード間の最短経路コストを上記第１のドメインに含まれる境界ノード間の仮想リンクコストとして保持する。またそれと共に、上記第２のルーティング管理装置は、上記複数の第１のルーティング管理装置が管理するドメイン内最短経路リストから、当該第１のドメインに含まれる内部ノードと境界ノードとの間の最短経路コストを取得して、この取得された内部ノードと境界ノードとの間の最短経路コストを上記第１のドメインに含まれる内部ノードと境界ノードとの間の仮想リンクコストとして保持する。そして、上記保持された境界ノード間の仮想リンクコストと、上記保持された内部ノードと境界ノードとの間の仮想リンクコストと、上記第２のルーティング管理装置が管理するドメイン間リンクコストとに基づいて、起点ノードから終点ノードまでの最短経路を求めるようにしたものである。
【００６３】
したがってこの発明によれば、下位ドメインの境界ノード間の仮想リンクコストに加え、下位ドメインの内部ノードと境界ノードとの間の仮想リンクコストを考慮して、起点ノードから終点ノードまでの最短経路が選択される。このため、最短経路選択をさらに高精度に行うことが可能となる。
【００６４】
またこの第２の発明は、上記最短経路を求める際に、選択された最終リンクが上記境界ノード間の仮想リンクであるか否かを先ず判定して、最終リンクが境界ノード間の仮想リンクと判定された場合に、当該仮想リンクの終点ノードから他のドメインに続くリンクの有無を判定する。そして、上記選択した終点ノードから他のドメインに続くリンクが存在する場合に、当該リンクをドメイン間リンクと判断して選択する。一方、上記選択された最終リンクが上記内部ノードと境界ノードとの間の仮想リンクであるか否かを判定する。そして、最終リンクが上記内部ノードと境界ノードとの間の仮想リンクであると判定された場合に、当該仮想リンクを最終リンクと判断して以後の経路選択を停止することも特徴とする。
【００６５】
このようにすると、次のような作用が呈せられる。すなわち、下位ドメインの内部ノードと境界ノードとの間の仮想リンクは経路の最初と最後のみに使われるので、下位ドメインの内部ノードと境界ノードとの間の仮想リンクに最短経路が行き着いた場合は、それ以降の経路延長は無いと判断できる。したがって、この判断結果をもとに最短経路の選択を的確に終了することができる。すなわち、下位ドメインの内部ノードと境界ノードとの間の仮想リンクのリンクステート情報に依存した、詳細依存型ルーティング方式による最短経路選択が可能になる。
【００６６】
さらに第１及び第２の発明は、上記最短経路を求める際に、選択された経路の終点に対応する第１のドメインのルーティングポリシを判定する。そして、このルーティングポリシの判定の結果、終点に対応する第１のドメインのルーティングポリシが独立型ルーティング方式であれば、当該終点に対応する第１のドメインを選択する。これに対し、上記ルーティングポリシの判定の結果、上記終点に対応する第１のドメインのルーティングポリシが依存型又は詳細依存型ルーティングモードであれば、上記選択された経路の終点ノードを起点とする仮想リンクを選択することも特徴とする。
【００６７】
このようにすると、下位ドメインのルーティングポリシに応じ、独立型ルーティング方式と、依存型又は詳細依存型ルーティング方式とを選択的に使用して最短経路選択処理を行うことが可能となる。このため、常に下位ドメインのルーティングポリシに応じた最適なルーティング方式による最短経路選択が可能となる。
【発明の効果】
【００６８】
要するにこの発明によれば、下位階層のドメイン間の最短経路を選択する際に、下位階層のドメインが持つノード間仮想リンクのリンクステート情報を考慮して、最適な最短経路選択を行うことを可能にした階層分散型ルーティング方法とその管理装置を提供することができる。
【発明を実施するための最良の形態】
【００６９】
以下、図面を参照してこの発明の実施形態を説明する。  
図１は、この発明に係わる階層分散型ルーティング方法を説明するためのネットワークシステムの構成を示す図である。なお、同図において、前記図３及び図８と同一部分には同一符号を付してある。
【００７０】
この実施形態に係わるネットワークシステム（ＴＯＰ ＳＮ）１０７は、ドメインとしての６つのサブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６と、これらのサブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６間を接続するバックボーンルータ（ＢＢ Ｒ１，ＢＢ Ｒ２）４０１，４０２とを備える。上記サブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６には、エリア内ルータ（Ｒ１〜Ｒ１０）２０１〜２１０と、エリア境界ルータ（ＢＲ Ａ〜ＢＲ Ｇ）３０１〜３０７が含まれる。これらのエリア内ルータ（Ｒ１〜Ｒ１０）２０１〜２１０と、エリア境界ルータ（ＢＲ Ａ〜ＢＲ Ｇ）３０１〜３０７との間は、リンク６０１〜６１１を介して接続される。また、エリア境界ルータ３０１〜３０７と、バックボーンルータ（ＢＢ Ｒ１，ＢＢ Ｒ２）４０１，４０２との間は、リンク７０１〜７１６を介して接続される。
【００７１】
ところで、上記サブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６にはそれぞれ、ドメイン内ルーティング管理装置としてのＰＣＳ（Path Computation Server）１０１２〜１０１７が設置してある。これらのドメイン内ルーティング管理装置としてのＰＣＳ１０１２〜１０１７はそれぞれ、サブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６内に存在する各ルータについてのすべてのエリア内経路リストを管理する。そして、起点及び終点が与えられた場合に、上記エリア内経路リストの中から最短経路を選択する。
【００７２】
また、上記サブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６及びバックボーンルータ（ＢＢ Ｒ１，ＢＢ Ｒ２）４０１，４０２を包含するネットワークシステム１０７には、ドメイン間ルーティング管理装置としてのＰＣＳ１０１１が設置してある。このドメイン間ルーティング管理装置としてのＰＣＳ１０１１は、上記ドメイン内ルーティング管理装置としてのＰＣＳ１０１２〜１０１７の上位に位置し、エリア間経路リストを管理する。
【００７３】
そして、エリア間の最短経路を選択する際に、上記ドメイン内ルーティング管理装置としてのＰＣＳ１０１２〜１０１７が管理するエリア内経路リストから、当該エリアに含まれる境界ルータ間の最短経路コスト（リンクステート情報）を取得して、この取得された境界ルータ間の最短経路コストを当該エリアに含まれる境界ルータ間の仮想リンクコストと見なす。そして、この保持された境界ノード間の仮想リンクコストと、上記エリア間経路リストとに基づいて、起点から終点までの最短経路を求める処理を行う。
【００７４】
なお、ＰＣＳ１０１１は、ＣＰＵ（Central Processing Unit）と、上記エリア間経路リスト等を格納するメモリと、上記ＰＣＳ１０１２〜１０１７等との間で通信を行う通信インタフェースとを備え、上記最短経路を求めるための処理は上記ＣＰＵにプログラムを実行させることにより実現される。
【００７５】
次に、以上の構成に基づいてこの実施形態に係わる階層分散型ルーティング方法を説明する。  
図１に、下位ＰＣＳ１０１２〜１０１７から上位ＰＣＳ１０１１に渡すリンクステート情報の一例を示している。上記したように下位ＰＣＳ１０１２〜１０１７にはそれぞれ、対応するサブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６内の各ルータ間の最短経路のリストが保持されている。これらの最短経路のリストは、図５に示したダイクストラのアルゴリズムにより定期的に求めるか、或いはＳＮの階層が最下位ではない場合には図２に示すアルゴリズムにより定期的に求められる。そして、上記求められた最短経路リストからリンクステート情報が上位ＰＣＳ１０１１に渡される。このリンクステート情報を「仮想リンク情報」と名付ける。
【００７６】
この実施形態では、ＰＣＳ１０１２〜１０１７をサブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６ごとに配置しているので、上記リンクステート情報は下位ＰＣＳ１０１２〜１０１７と上位ＰＣＳ１０１１との間でやり取りされる。しかし、一つのＰＣＳ１０１１で上位及び下位のすべてのサブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６を管理する場合には、各サブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６内における経路の更新と管理は、一つのＰＣＳ１０１１内でサブネットワーク（ＳＮ Ａ〜ＳＮ Ｆ）３００１〜３００６ごとに行われる。したがって、この場合にはＰＣＳ１１０１内で、TOP SN 107管理オブジェクトに対して下位のSN A 101〜SN F 106管理オブジェクトが「仮想リンク」を渡す。
【００７７】
「依存型ルーティング」方式を実行するタイミングでは、下位ＰＣＳ１０１２〜１０１７内の境界ルータ間の仮想リンクのみが上位ＰＣＳ１０１１に対し渡される。例えば、図１においては仮想リンクBRF-BRG 1042のみがそれに相当する。  
「詳細依存型ルーティング」方式を実行するタイミングでは、下位ＰＣＳ１０１２〜１０１７内の境界ルータ間の仮想リンクと、境界ルータと内部ルータとの間の仮想リンクが上位ＰＣＳ１０１１へそれぞれ渡される。例えば、図１においては、下位ＰＣＳ１０１２からはR1 201とBR A 301との間の仮想リンク１０３１と、R2 202とBR A 301との間の仮想リンク１０３２が渡される。その一方で、R1 201とR2 202との間の経路情報は上位ＰＣＳ１０１１では必要ないため渡されない。同様に、下位ＰＣＳ１０１３からは仮想リンク１０３４，１０３５が、下位ＰＣＳ１０１４からは仮想リンク１０３７，１０３８がそれぞれ渡され、また下位ＰＣＳ１０１５からは仮想リンク１０４０が、下位ＰＣＳ１０１６からは仮想リンク１０４１が、下位ＰＣＳ１０１７からは仮想リンク１０４２〜１０４６がそれぞれ渡される。
【００７８】
図２は、上位ＰＣＳ１０１１のＳＮ管理オブジェクトが、下位ＳＮ間のルーティングを図９に示した「独立型ルーティング」方式、「依存型ルーティング」方式、及び「詳細依存型ルーティング」方式を、下位の各ＳＮのルーティングポリシに応じて選択的に実行する場合の制御手順と制御内容を示すフローチャートである。  
なお、同図において、実線で囲まれた処理プロセスは３方式共通のプロセスを示し、点線で囲まれた処理プロセスは依存／詳細依存ルーティング方式特有のプロセスを示す。また、下線部は詳細依存ルーティング方式特有の処理を示す。
【００７９】
先ずステップＳＴ２ａでは、下位の起点サブネットワークＳＮ（ルータの場合あり）が一つ選択される。図１において、ルータの場合には、バックボールータBB R1 401又はBB R2 402が選択される。次にステップＳＴ２ｂの処理プロセスでは、ステップＳＴ２ａにより選択されたサブネットワークＳＮ（或いはルータ）から外側に出ているリンクが選択される。図１のネットワークシステムに本プロセスを当てはめた場合、起点サブネットワークをSN A 3001とすると、ＳＮ Ａから外に出ているリンクは７０１，７０２，７０４となる。ここで、もしステップＳＴ２ａにより選択されたサブネットワークが詳細依存型ルーティング方式を採用していれば、下位のサブネットワークの内部ルータ（ＩＲ）から境界ルータへの仮想リンクも同時に選択される。図１で同時に選択される内部ルータ（ＩＲ）から出る仮想リンクはR1-BRAの仮想リンク１０３１である。
【００８０】
続いて、ステップＳＴ２ｃの処理プロセスでは、ステップＳＴ２ｂにより選択されたリンクのうち、内部ルータ（ＩＲ）を起点とする仮想リンク以外のリンクについて、リンクの終端のルータがステップＳＴ２ａにより選ばれた起点ＳＮ（ルータの場合もあり）からの最短経路としてすでに選択されていれば、そのリンクまでのルートが削除される。起点ＳＮが詳細依存型ルーティング方式を採用している場合には、ステップＳＴ２ｂにより選択されたリンクの終端のルータがステップＳＴ２ａにより選択された起点ＳＮ内の起点ルータからの最短経路としてすでに選択されていれば、そのリンクまでのルートが削除される。ステップＳＴ２ｃの処理では、一つのルートが同じドメインを２度通過するかどうかをチェックすることにより、ドメイン間でルートがループしていないかどうかがチェックされる。そして、ループしているルートは削除される。
【００８１】
続いてステップＳＴ２ｄの処理では、ステップＳＴ２ｃにより削除されなかったルートを最短経路候補リストに入れる処理が行われる。ステップＳＴ２ｅでは、ステップＳＴ２ｄまでの処理の結果、最短経路候補リストに１つ以上の最短経路候補が入れられたか否かが判定される。そしてこの判定の結果、最短経路候補リストに最短経路候補がない場合にはアルゴリズムを終了する。
【００８２】
これに対し、最短経路候補リストに最短経路候補がある場合には、ステップＳＴｅの処理において、最短経路候補リストの中でルートを構成するリンクコストの合計が最も小さい候補が選択される。そして、この選択された候補が最短経路リストに格納されると共に、最短経路候補リストから削除される。
【００８３】
図９に示した独立ルーティング方式の制御手順（ステップＳＴ９ｃ）においても述べたが、ルートの管理は３種のルーティング方式共通であり、サブネットワークＳＮ（ルータの場合あり）と、リンクの順列と、ルートの起点及び終点のルータ情報とから成り立つ。これに対し、終点ルータが詳細依存型ルーティング方式を採用したサブネットワークＳＮの内部ルータ（ＩＲ）であれば、この内部ルータ（ＩＲ）がルートの最後のノードとなることを意味する。このため、再度コストミニマムなルートを最短経路候補リストから選択する。
【００８４】
一方、終点ルータが内部ルータ（ＩＲ）ではない場合には、終点ルータから先のルートをたどる必要があるので、このステップＳＴ２ｆの処理において最短経路リストに格納したルートを選択する。ステップＳＴ２ｇでは、ステップＳＴ２ｆにより選択されたルートの最終リンクが仮想リンクであるか否かが判定される。この判定の結果、仮想リンクであれば仮想リンクは連続しない。このため、ステップＳＴ２ｈにより仮想リンクの終端であるルータが選択され、この選択されたルータから当該サブネットワークＳＮの外に出ているＳＮ間リンクが選択され、その後ステップＳＴ２ｃに戻る。
【００８５】
例えば、図１において、サブネットワークSN C 3003が独立型ルーティング方式を採用し、サブネットワークSN F 3006が依存型ルーティング方式を採用しているものと仮定する。また、ステップＳＴ２ｆのプロセスで選択されたルートが、（起点ルータ:BR C 303，ドメイン順列：SN C 3003，1ink 716，SN F 3006内のBR G 307，仮想リンクBR F-BRG 1042，SN F 3006内のBR F 306，終点ルータ：BR F 306）であると仮定する。この場合、ステップＳＴ２ｈでは終点ルータBR F 306からSN F 3006の外に出ているリンク７１２，７１４の２つが選択される。
【００８６】
ステップＳＴ２ｇにより選択されたルートの最終リンクが仮想リンクでない場合には、ステップＳＴ２ｉにより、選択されたルートの終点のサブネットワークＳＮのルーティングポリシが判断される。この判断の結果、上記終点のサブネットワークＳＮのルーティングポリシが独立型であれば、ステップＳＴ２ｊのプロセスにより終点サブネットワークＳＮが選択され、ステップＳＴ２ｂのプロセスに戻る。
【００８７】
ルータ（例えば図１のBB R1 401，BB R2 402）が選択された場合には、当該ルータは独立型のサブネットワークＳＮとして扱う。これに対し、独立型ではなく依存型又は詳細依存型のサブネットワークＳＮの場合には、ステップＳＴ２ｋのプロセスに進む。ステップＳＴ２ｋのプロセスでは、選択されたルートの最終ルータから出ている仮想リンクをすべて選択し、ステップＳＴ２ｃの処理プロセスに戻る。
【００８８】
例えば、図１においてサブネットワークSN C 3003及びSN F 3006がいずれも独立型だと仮定する。また、ステップＳＴ２ｆのプロセスで選択されたルートが（起点ルータ：BR C 3003，ドメイン順列：SN C 3003，link 716，SN F 3006，終点ルータ：BR G 307）であると仮定する。この場合、ステップＳＴ２ｊの処理プロセスではサブネットワークSN F 3006が選択される。
【００８９】
また図１において、サブネットワークSN C 3003が独立型、SN F 3006が依存型だと仮定する。また、ステップＳＴ２ｆのプロセスで選択されたルートが（起点ルータ：BR C 303，ドメイン順列：SN C 3003，link 716，SN F 3006，終点ルータ：BR G 307）であると仮定する。この場合、ステップＳＴ２ｋの処理プロセスにより、境界ルータBR G 307から出る３本の仮想リンクBR F-BR G 1042，BR G-R9 1045，BR G-R10 1046が選択される。
【００９０】
図２のフローチャートに示されるように、下位のサブネットワークＳＮのルーティングポリシが混在する場合にも、下位のサブネットワークＳＮの３つのルーティングポリシ、つまり独立型ルーティング、依存型ルーティング、詳細依存型ルーティングに従い、提案するアルゴリズムは下位ＳＮ間の考え得る最適経路を作成することが可能である。
【００９１】
以上述べたようにこの実施形態では、次のような作用効果が奏せられる。  
（１）階層分散型ルーティングにより最短経路を選択する際に、上位層のＰＣＳ１０１１により、下位層のＰＣＳ１０１２〜１０１７が管理するエリア内最短経路リストから、当該下位サブネットワークの境界ルータ間の最短経路コストを取得してこれを仮想リンクコストと見なす。そして、この取得された境界ノード間の仮想リンクコストと、上位層のＰＣＳ１０１１が管理するサブネットワーク間のリンクコストとに基づいて、起点から終点までの最短経路を求めるようにしている。  
したがって、下位サブネットワーク間の最短経路を選択する際に、下位サブネットワークにおける境界ノード間の仮想リンクのリンクステート情報を考慮して、少ない処理負荷により最短経路の選択が可能になる。
【００９２】
（２）下位サブネットワークの境界ルータ間の仮想リンクは既に下位サブネットワーク内で最適経路が選択されたものであり、下位サブネットワークの境界ルータ間の仮想リンクの後には、下位サブネットワークの境界ルータ間の仮想リンクは続かない。このため、もし経路がさらに続く場合には、この経路は必ずサブネットワーク間リンクであると判断できる。  
そこでこの点に着目し、上記最短経路を求める際に、ステップＳＴ２ｇにより、選択された最終リンクが上記境界ノード間の仮想リンクであるか否かを判定し、仮想リンクであると判定された場合には、当該仮想リンクの終点ノードから他のドメインに繋がるリンクをサブネットワーク間リンクと判断してこれを選択するようにしている。  
この結果、後続リンクを適切に選択することができ、これにより下位サブネットワークの境界ルータ間の仮想リンクのリンクステート情報をもとに、依存型ルーティング方式による最短経路選択が可能になる。
【００９３】
（３）階層分散型ルーティングにより最短経路を選択する際に、上位層のＰＣＳ１０１１により、下位層のＰＣＳ１０１２〜１０１７が管理するエリア内最短経路リストから、当該下位サブネットワークの境界ルータ間の最短経路コスト、及び内部ルータと境界ルータとの間の最短経路コストをそれぞれ取得してこれらを仮想リンクコストと見なす。そして、この取得された境界ノード間の仮想リンクコスト、及び内部ルータと境界ルータとの間の最短経路コストと、上位層のＰＣＳ１０１１が管理するサブネットワーク間のリンクコストとに基づいて、起点から終点までの最短経路を求めるようにしている。  
したがって、下位サブネットワークの境界ルータ間の仮想リンクコストに加え、下位サブネットワークの内部ルータと境界ルータとの間の仮想リンクコストをさらに考慮して、起点から終点までの最短経路が選択される。このため、最短経路選択をより一層高精度に行うことが可能となる。
【００９４】
（４）下位サブネットワークの内部ルータと境界ルータとの間の仮想リンクは経路の最初と最後のみに使用されるので、下位サブネットワークの内部ルータと境界ルータとの間の仮想リンクに最短経路が行き着いた場合には、それ以降の経路延長は無いものと判断できる。  
そこでこの点に着目し、上記最短経路を選択する際に、選択された最終リンクが上記境界ルータ間の仮想リンクであるか否かを先ず判定して、最終リンクが境界ルータ間の仮想リンクと判定された場合に、当該仮想リンクの終点ルータから他のサブネットワークに続くリンクの有無を判定する。そして、上記選択した終点ルータから他のサブネットワークに続くリンクが存在する場合に、当該リンクをサブネットワーク間リンクと判断して選択する。一方、上記選択された最終リンクが上記内部ルータと境界ルータとの間の仮想リンクであるか否かを判定し、最終リンクが上記内部ルータと境界ルータとの間の仮想リンクであると判定された場合に、当該仮想リンクを最終リンクと判断して以後の経路選択を停止するようにしている。  
この結果、上記判断結果をもとに最短経路の選択を的確に終了することができ、これにより下位サブネットワークの内部ルータと境界ルータとの間の仮想リンクのリンクステート情報に応じ、詳細依存型ルーティング方式による最短経路選択が可能になる。
【００９５】
（５）上記最短経路を求める際に、選択された経路の終点に対応する下位層のサブネットワークのルーティングポリシを判定する。そして、このルーティングポリシの判定の結果、終点に対応する下位層のサブネットワークのルーティングポリシが独立型ルーティング方式であれば、当該終点に対応する下位層のサブネットワークを選択する。これに対し、上記ルーティングポリシの判定の結果、上記終点に対応する下位層のサブネットワークのルーティングポリシが依存型又は詳細依存型ルーティングモードであれば、上記選択された経路の終点ノードを起点とする仮想リンクを選択するようにしている。  
このようにすると、下位層のサブネットワークのルーティングポリシに応じ、独立型ルーティング方式と、依存型又は詳細依存型ルーティング方式とを選択的に使用して最短経路選択処理を行うことが可能となる。このため、下位層のサブネットワークドメインのルーティングポリシに応じた最適なルーティング方式による最短経路選択が可能となる。
【００９６】
なお、この発明は上記実施形態に限定されるものではない。例えば、前記実施形態ではドメインを２階層に構成し、これらの階層にそれぞれルーティング管理装置としてのＰＣＳを配置した場合を例にとって説明した。しかし、ドメインの階層を３階層以上に設定し、これらの階層ごとにルーティング管理装置としてのＰＣＳを配置してもよい。また、その際、階層分散された複数のＰＣＳが複数階層に跨って経路リストを管理することも可能である。
【００９７】
また、下位ドメインから取得した下位ドメイン内ルートコストと、上位ドメインが管理するドメイン間ルートコストの各係数をそれぞれ可変設定することにより、下位ドメイン内ルートに対する重み付けを調整するようにしてもよい。
その他、ネットワークシステムの構成、下位層のサブネットワークの構成、各階層に設けられるルーティング管理装置の構成とその機能、階層分散型ルーティング制御の手順と内容等についても、この発明の要旨を逸脱しない範囲で種々変形して実施できる。
【００９８】
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【図面の簡単な説明】
【００９９】
【図１】この発明に係わる階層分散型ルーティング方法の一実施形態を実現するネットワークシステムの構成を示す図。
【図２】図１に示したシステムに設けられるドメイン間ルーティング管理装置（ＰＣＳ）による３方式を併用した最短経路選択制御の手順と内容を示すフローチャート。
【図３】ＯＳＰＦプロトコルを採用した従来の最短経路選択方式を説明するためのネットワークシステムの構成を示す図。
【図４】図３に示したシステムにおいて従来の最短経路選択方式により得られる最短経路ツリーの一例を示す図。
【図５】ＯＳＰＦプロトコルを採用した従来の最短経路選択方式であるダイクストラのアルゴリズムを説明するためのフローチャート。
【図６】ＰＮＮＩプロトコルを採用した従来の最短経路選択方式を説明するためのネットワークシステムの構成を示す図。
【図７】図６に示したシステムにおいてＰＧＬが作成するＰＧの集約リンクトポロジ情報の一例を示す図。
【図８】従来の階層的ドメイン間ルーティング方法を説明するためのネットワークシステムの構成を示す図。
【図９】図８に示したシステムにおいて採用される独立型ルーティング方式による最短経路選択制御の手順と内容を示すフローチャート。
【符号の説明】
【０１００】
１０１〜１０６…ＯＳＰＦエリア、２０１〜２１０…内部ルータ、３０１〜３０７…エリア境界ルータ、４０１〜４０２…バックボーンルータ、６０１〜６１１…エリア内リンク、７０１〜７１６…エリア間リンク、８０１〜８１０…距離（リンクコスト）、２１０１〜２１０６…最下位階層ＰＧ、（第２階層ＰＧ内では論理グループノード）、２１０１〜２１０３…第２階層の各ＰＧ内のＰＧＬ、２１１１〜２１１３…第２階層ＰＧ（最上位階層ＰＧ内では論理グループノード）、２２０１〜２２１０…ＰＮＮＩの下位ＰＧ内の内部ノード、２２０１，２２０３，２２０５，２２０７，２２０８，２２０９…各最下位ＰＧ内のＰＧＬ、２３０１〜２３０７…ＰＮＮＩの下位ＰＧ内の境界ノード、２４０１〜２４０２…ＰＧ１，ＰＧ３に直接所属する内部ノード、２６０１〜２６１１…最下位階層ＰＧ内の論理リンク、２６２１〜２６２７…第２階層ＰＧ内の論理リンク、２６３１〜２６３３…最上位階層ＰＧ内の論理リンク、２７０１…ＰＧＦの集約リンクトポロジ情報の中心、２７０２，２７０３…集約リンクトポロジ情報からＰＧＦ外のノードへの出力ポート、２７０４，２７０５…集約リンクトポロジ情報から各ポートへのデフォルトスポーク、２７０６…集約リンクトポロジ情報内の例外バイパス、１０１１〜１０１７…複数ドメイン間ルーティング管理のためのＰＣＳの配置例、１０１８…ＰＣＳ配信サーバ、３００１〜３００６…サブネットワーク（ＳＮ）、１０２１〜１０２３…上位階層ＰＣＳが保持するルートリスト要素、１０３１〜１０４７…下位階層ＰＣＳが保持するルートリスト。
【図１】
2007019852.tif 000003
【図２】
2007019852.tif 000004
【図３】
2007019852.tif 000005
【図４】
2007019852.tif 000006
【図５】
2007019852.tif 000007
【図６】
2007019852.tif 000008
【図７】
2007019852.tif 000009
【図８】
2007019852.tif 000010
【図９】
2007019852.tif 000011