(57)【要約】【課題】インターネットの標準規格であるＢＧＰを用いてＡＳ間の経路制御を行う複数の市販されているボーダルータを動的に制御するルータ制御装置を提供する。【解決手段】ルータ制御装置２０は、複数の宛先ＩＰアドレスの情報と宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と宛先ＩＰアドレスごとに設定された優先度の情報と宛先ＩＰアドレスごとに割り当てられたインターネット上で一意に特定できるＡＳ番号とから構成される経路情報をボーダルータ１０ａ、１０ｂから受信する。受信した、経路情報のうち宛先ＩＰアドレスが同一の経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの経路情報を検出する。そして、検出した経路情報の優先度が宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成し、新たな経路情報をボーダルータ１０ａ、１０ｂへ送信する。【選択図】    図１
2005318409.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置と接続する通信制御装置であって、
複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられたインターネット上で一意に特定できるＡＳ番号とから構成される経路情報を前記通信装置から受信する受信手段と、
前記受信手段によって受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出する検出手段と、
前記検出手段によって検出された前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成する生成手段と、
前記生成手段によって生成した前記新たな経路情報を前記通信装置へ送信する送信手段と、
を備えたことを特徴とする通信制御装置。
【請求項２】
前記所定の経路決定規則は、特定の前記通信装置に経路を設定するため前記通信装置が接続している前記次段ＩＰアドレスを指定して決定する規則であることを特徴とする請求項１に記載の通信制御装置。
【請求項３】
前記所定の経路決定規則は、前記優先度が最大の前記次段ＩＰアドレスによって示される前記通信装置を経由する経路数が前記通信装置ごとに等しくなるように決定する規則であることを特徴とする請求項１または２に記載の通信制御装置。
【請求項４】
前記所定の経路決定規則は、前記通信装置が交換するトラフィック量が前記通信装置ごとに等しくなるように決定する規則であることを特徴とする請求項１乃至３のいずれか１つに記載の通信制御装置。
【請求項５】
インターネット上で一意に特定できるＡＳ番号が設定された複数の外部通信装置と接続し前記外部通信装置の前記ＡＳ番号と異なる同一のＡＳ番号が設定されている複数の通信装置と、複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられた前記ＡＳ番号とから構成される経路情報を前記通信装置との間で送受信する通信制御装置と、を備えた通信制御システムにおいて、
前記通信装置は、
前記外部通信装置から受信した前記経路情報に基づいて内部に記憶している情報を更新して前記通信制御装置に送信し、前記通信制御装置から受信した経路情報に基づいて内部に記憶している情報を更新して前記経路情報を前記外部通信装置に送信し、
前記通信制御装置は、
前記通信装置から前記経路情報を受信し、受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出し、検出した前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成し、前記通信制御部を介して接続している前記内部通信装置へ前記新たな経路情報を送信することを特徴とする通信制御システム。
【請求項６】
インターネット上で一意に特定できるＡＳ番号が設定された複数の外部通信装置と接続し前記外部通信装置の前記ＡＳ番号と異なる同一のＡＳ番号が設定されている複数の通信装置と、複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられた前記ＡＳ番号とから構成される経路情報を前記通信装置との間で送受信する通信制御装置と、を備えた通信制御システムの通信制御方法において、
前記通信装置が、前記外部通信装置から受信した前記経路情報に基づいて内部に記憶している情報を更新して前記通信制御装置に送信する過程と、
前記通信制御装置が、前記通信装置から前記経路情報を受信する過程と、
前記通信制御装置が、受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出する過程と、
前記通信制御装置が、検出した前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成する過程と、
前記通信制御装置が、前記通信制御部を介して接続している前記内部通信装置へ前記新たな経路情報を送信する過程と、
前記通信装置が、前記通信制御装置から受信した経路情報に基づいて内部に記憶している情報を更新して前記経路情報を前記外部通信装置に送信する過程と、
からなることを特徴とする通信制御方法。
【請求項７】
複数の通信装置と接続する通信制御装置のコンピュータを、
複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられたインターネット上で一意に特定できるＡＳ番号とから構成される経路情報を前記通信装置から受信する受信手段、
前記受信手段によって受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出する検出手段、
前記検出手段によって検出された前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成する生成手段、
前記生成手段によって生成した前記新たな経路情報を接続している前記内部通信装置へ送信する送信手段、
として機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主にインターネットを運用するＩＳＰ（Ｉｎｔｅｒｎｅｔ  ＳｅｒｖｉｃｅＰｒｏｖｉｄｅｒ）が経路制御のために利用する通信装置を制御する通信制御装置、通信制御システム及び通信制御方法並びにコンピュータプログラムに関する。
【背景技術】
【０００２】
インターネットは狭域では、複数のルータ、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）により構成され、広域では複数の自律システム（以下、ＡＳ：Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍと呼ぶ）から構成される分散システムとして考えられる。
ところで、実際のＡＳ間の経路制御は、他のＡＳのルータと接続する自ＡＳ内部のボーダルータに用意されているＡＳ間経路制御プロトコル（以下、ＢＧＰ：Ｂｏｒｄｅｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌと呼ぶ）やフォワード動作の制御のための基本コマンドを設定し、それを単一ルータ上で読み込ませ、動作させることにより実行する（例えば、非特許文献１、非特許文献２参照）。
【非特許文献１】ワイ．レクター（Ｙ．Ｒｅｋｈｔｅｒ）、ティー．リー（Ｔ．Ｌｉ）、“ＲＦＣ１７７１  ア  ボーダゲートウェイプロトコル（Ａ  Ｂｏｒｄｅｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ  ４（ＢＧＰ−４））”，[online]，１９９５年３月，インターネット  エンジニアリング  タスク  フォース（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｅｃｅ）， [平成１６年４月２６日検索]、インターネット<URL: http://www.ietf.org/rfc/rfc1771.txt>
【非特許文献２】ティー．ベイツ（Ｔ．Ｂａｔｅｓ）、アール．チャンドラ（Ｒ．Ｃｈａｎｄｒａ）、“ＲＦＣ１９６６  ビージーピールートリフレクション（ＢＧＰ  Ｒｏｕｔｅ  Ｒｅｆｌｅｃｔｉｏｎ”，[online]，１９９６年６月，インターネット  エンジニアリング  タスク  フォース（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｅｃｅ）， [平成１６年４月２６日検索]、インターネット<URL: http://www.ietf.org/rfc/rfc1966.txt>
【発明の開示】
【発明が解決しようとする課題】
【０００３】
図６は、従来のボーダルータ１０と他のＡＳ番号が設定されたネットワークとの接続を示す概略ブロック図である。複数の異なるＡＳネットワークが相互接続するインターネットにおいては、各ＡＳネットワークはその境界にあるボーダルータ１０がＢＧＰに基づいて経路情報を交換する。ボーダルータ１０は、設定されているＢＧＰの経路情報に基づいてパケットのフォワード先を決定する。つまり、外部にパケットを送信するときには、ボーダルータ１０と同一のＡＳネットワーク内の他のルータは、ボーダルータ１０にパケットをフォワードし、ボーダルータ１０が経路情報に従ってパケットのフォワード先を決定する。ＢＧＰの経路情報は、宛先ＩＰアドレス、宛先に到達するためのＡＳのリスト（以下、ＡＳパスと呼ぶ）等の経路制御のための様々な属性情報から構成されている。
【０００４】
複数のＡＳネットワークから同一宛先への複数のＢＧＰの経路情報を受信した場合は、受信したＡＳネットワークが自らのポリシに従い、経路情報のエントリの中から１つのエントリをベストパスとして選択する。また、必要に応じてベストパスのみを他のＡＳネットワークにも広報する。
ベストパスの選択とは送信先IPアドレスごとに１つのフォワード先を決定することであり、ＡＳネットワーク毎の管理ポリシに基づいてＢＧＰの経路情報に設定されている属性情報の値に基づいて生成されるＢＧＰの経路選択規則に従って行われる。
具体的には、 local_pref属性と呼ばれる値の大きな経路が選択されるため、その値を大きくするようにボーダルータの基本設定を記述することにより行う。local_pref属性が設定されていない場合は、ＡＳパス長の短い方を優先するというプロトコルの基本規則により、フォワード先を決定する。
例として、同図のボーダルータ１０の基本設定の例を示す。このボーダルータ１０は、ＡＳ１００及びＡＳ２００とＢＧＰ接続をしている。ＡＳ１００は自ＡＳネットワークとの間で大きなトラフィック交換のあるＡＳ３００及びＡＳ４００と接続している。また、 ＡＳ２００は海外へ帯域の大きな回線を持つＩＳＰである。
このような場合、自ＡＳネットワークのポリシとして、「ＡＳ３００、ＡＳ４００宛は、ＡＳ１００経由、その他はＡＳ２００経由でトラフィックを送信する。」とした場合、以下のような設定ファイルをルータの基本設定として作成し、ボーダルータ１０に入力する。以下は、ルータの設定ファイルの例であり、設定ファイルの例において「!」以下は、コメントを意味する。
【０００５】
！AS100とは、IPアドレスxx.xx.xx.yで接続
！入ってくるＢＧＰ経路情報には、名前bgp-as100-inで示されるルールを適用
neighbor  xx.xx.xx.y  remote-as  100
neighbor  xx.xx.xx.y  route-map  bgp-as100-in  in
！AS200とは、IPアドレスxx.xx.xx.zで接続
！入ってくるＢＧＰ経路情報には、名前bgp-as200-inで示されるルールを適用
neighbor  xx.xx.xx.z  remote-as  200
neighbor  xx.xx.xx.z  route-map  bgp-as200-in  in
！アクセスリスト、番号で示す
！AS100のみを示すアクセスリスト10番
ip  as-path  access-list  10  permit  ^100_.$
！AS 100を経由し、最終目的AS300を示すアクセスリスト11番
ip  as-path  access-list  11  permit  ^100_.*_300$
！AS100を経由し、最終目的AS400を示すアクセスリスト12番
ip  as-path  access-list  12  permit  ^100_.*_400$
！AS100を経由するその他のASアクセスリスト15番
ip  as-path  access-list  15  permit  ^100_.*$
！AS200のみを示すアクセスリスト20番
ip  as-path  access-list  20  permit  ^200$
！AS200を経由するその他のASアクセスリスト25番
ip  as-path  access-list  25  permit  ^200_.*$
！以下、名前bgp-asl00-inで示されるルール
！AS100から入ってくるＢＧＰ経路情報に対して最初に適用される。
！直接接続しているAS100宛は、 local_pref  3000（優先順位１）
route-map  bgp-as100-in  permit  10
match  as-path   10
set  local_pref  3000
！AS100から入ってくるＢＧＰ経路情報に対して２番目に適用される。
！AS100経由のAS300、 AS400宛は、 local_pref  2000（優先順位２）
route-map  bgp-as100-in  permit  20
match  as-path   11  12
set local_pref  2000
！AS100から入ってくるＢＧＰ経路情報に対して３番目に適用される。
！AS100経由のその他の宛先は、 local_pref  500 （優先順位４）
route-map  bgp-as100-in  permit  30
match as-path  15
set  local_pref  500
！以下、名前bgp-as200-inで示されるルール
！AS200から入ってくるＢＧＰ経路情報に対して最初に適用される。
！直接接続しているAS200宛は、 local_pref 3000 （優先順位１）
route-map  bgp-as200-in  permit  10
match  as-path  20
set  weight  3000
！AS200から入ってくるＢＧＰ経路情報に２番目に適用される。
！AS200経由のその他の宛先は、 local_pref  1000 （優先順位３）
route-map  bgp-as200-in  permit  20
match  as-path  25
set  weight  1000
【０００６】
複数のボーダルータを用いて他の複数のＡＳネットワークとＢＧＰ接続をする場合は、それぞれのボーダルータが外部ＡＳネットワークとＢＧＰ接続を行うのと同時に、ＡＳネットワーク内部のボーダルータ間でＢＧＰセッションを張り、ＢＧＰの経路情報を交換する。厳密には、前者をｅＢＧＰ（ｅｘｔｅｒｎａｌＢＧＰ）、後者をｉＢＧＰ（ｉｎｔｅｒｎａｌＢＧＰ）と呼んで区別する。
ｉＢＧＰで受信した経路情報は、再度ｉＢＧＰでは広報しないということがＢＧＰの規則として定められているため、各ボーダルータは、通常他の全てのボーダルータとフルメッシュの形態でｉＢＧＰのセッションを張る。
ｉＢＧＰではlocal_pref属性の値は、そのＡＳネットワーク内部で保存されるため、その値の設定を行う複数のボーダルータの設定において統一した経路制御を行うために、local_prefの一貫性を保つ必要がある。一般的には、基本設定を記述するオペレータが手作業でそれらの一貫性を管理する。
例えば、単一のボーダルータの範囲内ではlocal_pref値は意図通りのポリシだとしても、他のボーダルータでは、より大きなlocal_pref値が設定されているとする。そのとき、大きなlocal_pref値が設定されているルータとｉＢＧＰ接続をした場合に、そのルータが外部ＡＳネットワークから受信したＢＧＰ経路情報が優先されるため、全ての外部宛パケットのフォワード先は、接続先ルータとなってしまい、意図通りの経路制御ができない。そのため、このような場合には、オペレータが両ルータで使うlocal_prefの値を調整して設定を行う必要がある。
上記のように、従来の技術では、ボーダルータの集合、すなわち複数のボーダルータを統一して扱う方式がなく、また同時にその設定である基本コマンド自体が、local_pref等の低レベルの基本的動作をオペレータの管理の下であらかじめ静的に記述しておくことしかできない。そのため、時間の経過を考慮したネットワークの状態の変化を観測してその結果をボーダルータの経路制御にフィードバックさせるような記述ができないという問題がある。
【０００７】
本発明は、上記問題を解決すべくなされたもので、その目的は、インターネットの経路制御の管理単位であるＡＳネットワークにおいて、インターネットの標準規格であるＢＧＰを用いてＡＳ間の経路制御を行う複数の市販されているボーダルータを統一して動的に制御することが可能な通信制御装置及び通信制御システムを提供することにある。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、本発明は、複数の通信装置（ボーダルータ１０ａ、１０ｂ）と接続する通信制御装置（ルータ制御装置２０）であって、複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられたインターネット上で一意に特定できるＡＳ番号とから構成される経路情報を前記通信装置から受信する受信手段と、前記受信手段によって受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出する検出手段と、前記検出手段によって検出された前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成する生成手段と、前記生成手段によって生成した前記新たな経路情報を前記通信装置へ送信する送信手段と、を備えたことを特徴とする通信制御装置である。
【０００９】
本発明は、上記の発明において、前記所定の経路決定規則は、特定の前記通信装置に経路を設定するため前記通信装置が接続している前記次段ＩＰアドレスを指定して決定する規則であることを特徴とする。
【００１０】
本発明は、上記の発明において、前記所定の経路決定規則は、前記優先度が最大の前記次段ＩＰアドレスによって示される前記通信装置を経由する経路数が前記通信装置ごとに等しくなるように決定する規則であることを特徴とする。
【００１１】
本発明は、上記の発明において、前記所定の経路決定規則は、前記通信装置が交換するトラフィック量が前記通信装置ごとに等しくなるように決定する規則であることを特徴とする。
【００１２】
本発明は、インターネット上で一意に特定できるＡＳ番号が設定された複数の外部通信装置と接続し前記外部通信装置の前記ＡＳ番号と異なる同一のＡＳ番号が設定されている複数の通信装置（ボーダルータ１０ａ、１０ｂ）と、複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられた前記ＡＳ番号とから構成される経路情報を前記通信装置との間で送受信する通信制御装置（ルータ制御装置２０）と、を備えた通信制御システム（ルータ制御システム１）において、前記通信装置は、前記外部通信装置から受信した前記経路情報に基づいて内部に記憶している情報を更新して前記通信制御装置に送信し、前記通信制御装置から受信した経路情報に基づいて内部に記憶している情報を更新して前記経路情報を前記外部通信装置に送信し、前記通信制御装置は、前記通信装置から前記経路情報を受信し、受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出し、検出した前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成し、前記通信制御部を介して接続している前記内部通信装置へ前記新たな経路情報を送信することを特徴とする通信制御システムである。
【００１３】
本発明は、インターネット上で一意に特定できるＡＳ番号が設定された複数の外部通信装置と接続し前記外部通信装置の前記ＡＳ番号と異なる同一のＡＳ番号が設定されている複数の通信装置（ボーダルータ１０ａ、１０ｂ）と、複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられた前記ＡＳ番号とから構成される経路情報を前記通信装置との間で送受信する通信制御装置（ルータ制御装置２０）と、を備えた通信制御システム（ルータ制御システム１）の通信制御方法において、前記通信装置が、前記外部通信装置から受信した前記経路情報に基づいて内部に記憶している情報を更新して前記通信制御装置に送信する過程と、前記通信制御装置が、前記通信装置から前記経路情報を受信する過程と、前記通信制御装置が、受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出する過程と、前記通信制御装置が、検出した前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成する過程と、前記通信制御装置が、前記通信制御部を介して接続している前記内部通信装置へ前記新たな経路情報を送信する過程と、前記通信装置が、前記通信制御装置から受信した経路情報に基づいて内部に記憶している情報を更新して前記経路情報を前記外部通信装置に送信する過程と、からなることを特徴とする通信制御方法である。
【００１４】
本発明は、複数の通信装置（ボーダルータ１０ａ、１０ｂ）と接続する通信制御装置（ルータ制御装置２０）のコンピュータを、複数の宛先ＩＰアドレスの情報と前記宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と前記宛先ＩＰアドレスごとに設定された優先度の情報と前記宛先ＩＰアドレスごとに割り当てられたインターネット上で一意に特定できるＡＳ番号とから構成される経路情報を前記通信装置から受信する受信手段、前記受信手段によって受信した前記経路情報のうち前記宛先ＩＰアドレスが同一の前記経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出する検出手段、前記検出手段によって検出された前記経路情報の前記優先度が前記宛先ＩＰアドレスが同一の前記経路情報の中で最大になるように設定した新たな経路情報を生成する生成手段、前記生成手段によって生成した前記新たな経路情報を接続している前記内部通信装置へ送信する送信手段、として機能させることを特徴とするコンピュータプログラムである。
【発明の効果】
【００１５】
この発明によれば、通信制御装置は、複数の宛先ＩＰアドレスの情報と宛先ＩＰアドレスに到達するための次段ＩＰアドレスの情報と宛先ＩＰアドレスごとに設定された優先度の情報と宛先ＩＰアドレスごとに割り当てられたインターネット上で一意に特定できるＡＳ番号とから構成される経路情報を通信装置から受信する。そして、受信した経路情報のうち宛先ＩＰアドレスが同一の経路情報の中から予め設定されている所定の経路決定規則に基づいて１つの前記経路情報を検出する。そして、検出した経路情報の優先度が宛先ＩＰアドレスが同一の経路情報の中で最大になるように設定した新たな経路情報を生成する。そして、生成した新たな経路情報を接続している通信装置へ送信する構成となっている。そのため、通信制御装置は、複数の通信装置の経路情報を集約し、予め設定されている経路決定規則に従って自動的に適切な経路情報を自動的に導き出し、適切な経路情報を通信装置に設定することが可能となる。それによって、従来は個々の通信装置ごとにオペレータが調整を行っていた設定作業を、削減することができ、人手では不可能なきめ細かな制御ができるという効果がある。
【００１６】
また、本発明によれば、所定の経路決定規則として、特定の次段ＩＰアドレスを指定して決定する規則や優先度が最大の次段ＩＰアドレスによって示される通信装置を経由する経路数が通信装置ごとに等しくなるように決定する規則や通信装置が交換するトラフィック量が通信装置ごとに等しくなるように決定する規則を設定する構成となっている。そのため、ネットワークのトポロジ、トラフィック情報、トラフィック情報に基づく課金情報など時間に応じて変化するネットワークの状態を表す情報を、与えられた規則と照合し、それに応じて経路情報を変更することが可能となる。また、本発明の通信制御装置は、標準的なＢＧＰによって制御を行っているため、市販の通信装置であるＢＧＰを搭載したルータに適用することが可能である。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の一実施形態によるルータ制御装置及びルータ制御システムを図面を参照して説明する。
図１は、本実施形態によるルータ制御装置及びルータ制御システム及び他のＡＳ番号が設定されたネットワークとの接続を示す概略ブロック図である。
同図において、実線の矢印はｅＢＧＰ接続であることを示しており、破線の矢印はｉＢＧＰ接続であることを示している。
ボーダルータ１０ａは外部のＡＳネットワークであるＡＳ３とｅＢＧＰ接続する。ボーダルータ１０ｂもまた外部のＡＳネットワークであるＡＳ１及びＡＳ２とｅＢＧＰ接続するボーダルータである。ボーダルータ１０ａとボーダルータ１０ｂは、市販されているＢＧＰを搭載したルータである。
ルータ制御装置２０は、ＢＧＰの制御を行うＢＧＰ制御部２１を備えており、外部のＡＳネットワークとＢＧＰ接続を行っている自ＡＳ内の複数のボーダルータ１０ａ及び１０ｂとｉＢＧＰ接続する。すなわち、各ボーダルータ１０ａ及び１０ｂは、ＡＳ内部でのＢＧＰの経路情報の交換のためにｉＢＧＰフルメッシュによる接続を行う代わりに、ルータ制御システム２０とｉＢＧＰ接続を行う。ルータ制御装置２０及びボーダルータ１０ａ、１０ｂには、ＡＳ番号として４が設定されており、同一のＡＳネットワークに属するルータである。ＢＧＰエントリ候補データベース２２は、ＢＧＰ制御部２１が経路制御において利用する経路制御情報等を記憶する。
ポリシ制御部２３は、ＢＧＰ制御部２１と接続し、ＢＧＰ制御部２１から受信するＢＧＰの経路情報とポリシ記述データベース２４に設定されているポリシに従って、新たなベストパスを選択しＢＧＰ制御部２１に通知して、ＢＧＰ制御部２１は、新たなベストパスの情報をＢＧＰエントリ候補データベース２２に反映する。
【００１８】
ルータ制御装置２０とボーダルータ１０ａ、１０ｂの接続形態は、ｉＢＧＰによるボーダルータ間のフルメッシュ接続数を減らす目的で規格化されているルートリフレクタ（上記した非特許文献２参照）と同様の接続形態である。ルートリフレクタは各ボーダルータとｉＢＧＰのセッションを設定し、受信した経路を広報元以外のボーダルータに情報を加工せずにフォワードすることにより、ｉＢＧＰのフルメッシュ方式によるＢＧＰセッション数の増加を抑制するのが主な目的である。
しかし、本実施形態におけるルータ制御装置２０は、ルートリフレクタとしての役割よりむしろ、全てのボーダルータを１つのルータ制御装置２０で管理することを目的としている。ルータ制御装置２０は、ボーダルータから受信した経路候補に関する情報を取りまとめ、その情報とポリシ記述データベース２４に記述された情報に基づきベストパスを決定する。そして、ベストパスを含んだ新たなＢＧＰ経路情報を作成し、その情報を他のボーダルータに通知することにより、結果的に他のボーダルータの経路情報の内容を操作し、パケットのフォワード先を変える。
【００１９】
図２は、ルータ制御装置２０のＢＧＰエントリ候補データベース２２のデータ構造を示した図である。
ＢＧＰエントリ候補データは、ＢＧＰ制御部２１がボーダルータから受信したＢＧＰ経路情報を基に作成されたエントリ情報を記憶している。エントリ情報は、エントリＩＤ、宛先ＩＰアドレス、次の転送先であるnext_hop属性、経路の優先度を示すlocal_pref属性の値、ルータに付与されているＩＤ及び経路制御のために既存のエントリ情報をコピーして新たにエントリを生成した際の作成元のＩＤを格納するコピー元エントリＩＤから構成されている。
【００２０】
以下、ルータ制御装置２０の処理の流れについて説明する。
（１）最初に、ＢＧＰ制御部２１が各ボーダルータ１０ａ、１０ｂとｉＢＧＰ接続を行い、ボーダルータ１０ａ、１０ｂから受信した全てのＢＧＰの経路情報に基づいて、ＢＧＰエントリ候補データベース２２に経路情報のエントリ情報を作成する。
（２）作成されたエントリ情報において、ある１つの宛先ＩＰアドレスに対する経路が複数存在する場合、ポリシ制御部２３は、ＢＧＰ制御部２１から受信したエントリ情報とポリシ記述データベース２４に設定されたポリシに従い、条件を満たす１つのエントリをベストパスとして選択する。そして、選択したエントリをＢＧＰ制御部２１に通知する。ＢＧＰ制御部２１は、そのエントリのコピーを生成し、ＢＧＰエントリ候補データベース２２に設定する。この時、フォワード先であるnext_hopにもコピー元のnext_hop属性をそのまま適用する。ただし、コピー元のルータＩＤは、ルータ制御装置２０のルータＩＤに変換し、ベストパスであることを示すために最も高い値を持つlocal_pref値を設定する。例えば、図３のエントリＩＤ：３の情報がエントリＩＤ：１を基に生成された新たなエントリ情報であり、next_hopはエントリＩＤと同じものが設置絵されているが、local_pref値には５００ではなく２０００の値を設定している。
（３）新たに生成したエントリを、コピー元情報を送付したボーダルータ１０ａ以外の全てのボーダルータ１０ｂに対して、ＢＧＰの経路通知メッセージであるadvertiseメッセージにより広報する。全てのボーダルータ１０ｂは、通常のＢＧＰの経路選択の処理の下で、広報によって受信したエントリをベストパスとして採用する。当該エントリに関する宛先IPアドレスのフォワード先は上記のコピー元と同じnext_hop属性の示すＩＰアドレスとなる。
【００２１】
このとき、ルータ制御装置２０が採用したコピー元のエントリ情報を送信してきたボーダルータ１０ａにadvertiseメッセージを送付しないのは、削除後に新規に作成したエントリ情報を送信してしまうと、それがベストパスとなってボーダルータ１０ａに設定されてしまうからである。新たに挿入したエントリ情報がベストパスとして設定されてしまうと、コピー元のエントリ情報を送信したボーダルータ１０ａの状態がその後に変更した際、例えば、ルートが削除された際等にエントリ情報がルータ制御装置２０にフォワードされなくなるのを防ぐためである。フォワードされないのは、ベストパス以外の変更は他のルータに通知しないというＢＧＰの規則にも従っているためである。
【００２２】
上記の経路制御の処理においては、実際に存在する経路の中からベストパスを選択している。しかし、この経路の有効性は時間と共に変化するため、常に最新の経路情報をｉＢＧＰを通じて観測し、その経路が存在しなくなった場合は、直ちに状態を更新する必要がある。
例えば、ルータ制御装置２０が新たに生成したエントリ情報の元となったエントリ情報がＢＧＰのwithdrawメッセージによって削除された場合、すなわち、通常のＢＧＰの経路広報の動作範囲内でそのエントリ情報が削除された場合を想定する。エントリ情報が削除されるということは、宛先ＩＰアドレスへの経路が存在しなくなったことを意味しており、ルータ制御装置２０は、コピー元を送付してきたボーダルータ１０ａを除く他の全てのボーダルータ１０ｂに対して、経路削除を通知するためにwithdrawメッセージを送信する。
【００２３】
ルータ制御装置２０がwithdrawメッセージを受信して、あるエントリ情報を削除した際、ポリシ記述データベース２４に記載されているポリシ情報に従って新たなベストパスの候補を検出する。そして、検出した新たなベストパスの候補の中から１つをベストパスとして選択し、同様にＢＧＰのadvertiseメッセージを用いて広報する。新たなベストパスの候補の検出は以下のようにして行う。
（１）ルータ制御装置２０が経路削除を通知するために送信したwithdrawメッセージを受信したボーダルータが、その経路に対する代替パスを有していれば、そのボーダルータはＢＧＰの規則に従って、ルータ制御システム２０に対してadvertiseメッセージで代替パスを通知する。
（２）ルータ制御装置２０が経路削除を通知するために送信したwithdrawメッセージを受信したボーダルータが、その経路に対する代替パスを有していなければ、そのボーダルータはＢＧＰの規則に従って、ルータ制御装置２０に対してwithdrawメッセージを送信する。
（３）ルータ制御装置２０が経路削除を通知するために送信したwithdrawメッセージに対して上記のadvertiseもしくはwithdrawメッセージが応答されない場合には、ルータ制御装置２０は、当該ボーダルータのＢＧＰのプロセスがダウンしていると判断し、そのボーダルータからの経路は存在しないものとして候補の検出を行う。
【００２４】
ルータ制御装置２０は、古い経路情報に基づいてベストパスの選択を行うこと防ぐために、withdrawを送信した全てのボーダルータが上記（１）から（３）のいずれかに該当した後に、次のベストパス候補の選択を行う。
このような通常のＢＧＰ処理の範囲内で、 エントリ情報の作成及び挿入を動的に行うことで、複数のボーダルータの経路情報の宛先別にＩＰパケットのフォワード先を動的に操作することが可能となる。また、既存のエントリ情報のnext_hop属性をコピーして生成するため、その経路がフォワード先として存在することを保証することができる。
なお、各ボーダルータでは、経路制御はlocal_pref値のみで行い、特定のルータベンダが用いている規格以外の重み等の属性値を用いた制御は行っていないことが条件となる。これは、 ベンダ独自の重み等の属性値は、local_pref値に優先する場合があるためである。
【実施例１】
【００２５】
図３を参照して、ルータ制御装置２０を用いたパケットフォワード先切替えの実施例について説明する。
ＢＧＰ制御部２１によって操作が行われる前（図３の（ａ：操作前））は、あるＩＰアドレスa.b.c.0宛のパケットは、＃1ベストパスとなっているため、x.x.x.1（ルータＩＤ：ｘ）経由で送信される設定となっている。
ここで、ＢＧＰ制御部２１が、a.b.c.0宛の代替経路としてエントリ情報が存在するy.y.y.1(ルータＩＤ：ｙ)経由で送信する指示をポリシ制御部２２から受信したとする。このとき、代替経路である＃２のエントリ情報をコピーし、local_pref値を＃１、＃２の経路の値より大きな値、例えば2000に設定する。そして、next_hop属性がy.y.y.1(ルータＩＤ：ｙ)経由のエントリをルータ制御装置２０のルータＩＤである「ｚ」で自経路情報に挿入する（図３の（ｂ）図）。そして、ルータ制御装置２０が、ルータＩＤが「ｘ」のボーダルータに広報することにより＃３がベストパスとなり、パケットのフォワード先をルータＩＤが「ｙ」のボーダルータ経由に変更することが可能となる。
【実施例２】
【００２６】
図４を参照して、ルータ制御装置２０を用いたピア毎のベストパス数の自動調整を行う実施例について説明する。
ピアとはボーダルータが異なるＡＳ番号と直接接続している場合の、異なるＡＳ番号を持つ相手方のネットワークを示しており、ピア毎のベストパス数とは、自ＡＳネットワークから見た異なるＡＳネットワークに向かうベストパスの数である。
同図においてＡＳｘはＡＳ番号がｘのＡＳネットワークのボーダルータの群を示しており、異なるＡＳネットワークであるｙとｚにｅＢＧＰで接続している。ＡＳｘのボーダルータはルータ制御装置２０にｉＢＧＰで接続している。
同図に示すように、ルータ制御装置２０のＢＧＰ制御部２１は、ボーダルータにおけるＢＧＰピアの情報、ピア毎のベストパス数及び代替経路の情報を内部のＢＧＰエントリ候補データベース２２から知ることが可能である。ポリシ制御部２３は、ポリシ記述データベース２４に記述されている「ピア毎のベストパス数が等しくなるように、現在のベストパスの少ない方のピアを新たにベストパスにして割り振る。」というポリシに従って、ルータ制御装置２０のルータＩＤを持つ新たなベストパスを作成し、ＢＧＰ制御部２１経由でＢＧＰエントリ候補データベース２２に設定する。ＢＧＰ制御部２１は、設定された情報に従って、現在ベストパスが多い方のボーダルータに広報する。広報されたエントリ情報は新たなベストパスとなる。そして、ピア毎にベストパス数を平均化することが可能となる。
【実施例３】
【００２７】
図５を参照して、ルータ制御装置２０を用いたピア毎のトラフィックの自動調整を行う実施例について説明する。
同図においてＡＳｘ、ＡＳｙ、ＡＳｚ及びルータ制御装置２０の関係は、図４と同じなので説明は省略する。
同図に示すように、 ＢＧＰ制御部２１は、ＢＧＰピアの情報、ピア毎のベストパス数及び代替経路の情報をＢＧＰエントリ候補データベース２２から知ることが可能である。またピア毎のリンクのトラフィック情報は、既存のＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）などの規格化されたプロトコルを使えば、情報を容易に得ることができる。ポリシ制御部２３は、ポリシ記述データベース２４に設定されている「ピアごとにトラフィックが等しくなるようにベストパスを割振る。」というポリシに従って、ピア毎のトラフィック数が一致するように、現在トラフィックの少ない方のピア経由のベストパスをルータ制御装置のルータＩＤを有する新たなベストパスとして生成する。そして、その時点でトラフィックが多い方のルータに新たなベストパスを含むエントリ情報を広報する。ボーダルータは、広報されたエントリ情報を新たなベストパスとして設定する。そして、ピア毎にトラフィック平均化する。この、トラフィック観測、経路の変更の動作を繰り返すことにより、トラフィックの変動にも追随することが可能となる。
【００２８】
上述の通信制御装置は内部に、コンピュータシステムを有している。そして、上述した通信制御装置の処理過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【図面の簡単な説明】
【００２９】
【図１】本実施形態によるルータ制御装置及びルータ制御システム及び他のＡＳ番号が設定されたネットワークとの接続を示すブロック図である。
【図２】同実施形態におけるルータ制御装置のＢＧＰエントリ候補データベースのデータ構造を説明するための図である。
【図３】同実施形態における実施例１を説明するための図である。
【図４】同実施形態における実施例２を説明するための図である。
【図５】同実施形態における実施例３を説明するための図である。
【図６】従来のＡＳネットワークにおける経路情報の交換手順を説明するための図である。
【符号の説明】
【００３０】
１０ａ  ボーダルータ
１０ｂ  ボーダルータ
２０  ルータ制御装置
【図１】
2005318409.tif 000003
【図２】
2005318409.tif 000004
【図３】
2005318409.tif 000005
【図４】
2005318409.tif 000006
【図５】
2005318409.tif 000007
【図６】
2005318409.tif 000008