(57)【要約】【課題】トラフィックエンジニアリングを行う場合において、メッセージの数の増大を防止し、メッセージの処理負荷の増大を防止することができるようにする。【解決手段】本発明によるトラフィックエンジニアリング装置は、トラフィックエンジニアリングを行うトラフィックエンジニアリング装置であって、前記トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定手段と、前記最適分岐点決定手段が決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整手段とを備えたことを特徴とする。【選択図】図１８
2010016641.tif 000002
【特許請求の範囲】
【請求項１】
トラフィックエンジニアリングを行うトラフィックエンジニアリング装置であって、
前記トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定手段と、
前記最適分岐点決定手段が決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整手段とを
備えたことを特徴とするトラフィックエンジニアリング装置。
【請求項２】
前記最適分岐点決定手段は、自身のノードからより近いネットワーク内の分岐点を選択する請求項１記載のトラフィックエンジニアリング装置。
【請求項３】
前記最適分岐点決定手段は、ネットワークのトポロジ情報を用いて、最適な分岐点を決定する請求項１又は請求項２記載のトラフィックエンジニアリング装置。
【請求項４】
前記最適分岐点決定手段は、経路制御メッセージ中の自律システムのパス情報を用いて、最適な分岐点を決定する請求項１から請求項３のうちのいずれか１項に記載のトラフィックエンジニアリング装置。
【請求項５】
前記自律システムのパス情報に基づいて、自身のノードに流れ込むトラフィックの流れを示す自律システムのパスツリーを推定するパスツリー推定手段を備えた請求項４記載のトラフィックエンジニアリング装置。
【請求項６】
前記最適分岐点決定手段は、自律システムのパスツリーとネットワークのトポロジ情報とを用いて、トポロジ上隣接しているが異なるリンク経由で自身のノードにトラフィックが流れ込んでいる自律システムのペアを、分岐点の候補として特定する請求項５記載のトラフィックエンジニアリング装置。
【請求項７】
前記最適分岐点決定手段は、各リンク毎のトラフィック量を用いて、最適な分岐点を決定する請求項１から請求項６のうちのいずれか１項に記載のトラフィックエンジニアリング装置。
【請求項８】
トラフィック量を送信元毎に対応付けて含むトラフィック量テーブルを備え、
前記最適分岐点決定部は、前記トラフィック量テーブルに含まれるトラフィック量を用いて、最適な分岐点を決定する
請求項７記載のトラフィックエンジニアリング装置。
【請求項９】
前記トラフィック量テーブルに含まれる送信元毎のトラフィック量と自律システムのパス情報とに基づいて、それぞれの自律システムを通過するトラフィック量の積算値を求め、求めたトラフィック量の積算値をトラフィック量積算テーブルに記録するトラフィック量積算手段を備えた請求項８記載のトラフィックエンジニアリング装置。
【請求項１０】
前記最適分岐点決定手段は、トラフィック量積算テーブルに含まれるトラフィック量の積算値に基づいて、自身のノードに流れ込むトラフィックを自身のノードのポリシに近づけるために最適な分岐点を選択する請求項９記載のトラフィックエンジニアリング装置。
【請求項１１】
トラフィック流量調整手段は、前記最適分岐点決定手段が決定した分岐点に対して、分岐点から自身のノードへのパスの変更処理を実行する請求項１から請求項１０のうちのいずれか１項に記載のトラフィックエンジニアリング装置。
【請求項１２】
トラフィックエンジニアリングを行うトラフィックエンジニアリング装置を備え、
前記トラフィックエンジニアリング装置は、
前記トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定手段と、
前記最適分岐点決定手段が決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整手段とを含む
ことを特徴とするネットワークシステム。
【請求項１３】
前記最適分岐点決定手段は、自身のノードからより近いネットワーク内の分岐点を選択する請求項１２記載のネットワークシステム。
【請求項１４】
トラフィック流量の制御を行うトラフィック制御方法であって、
トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定ステップと、
決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整ステップとを
含むことを特徴とするトラフィック制御方法。
【請求項１５】
前記最適分岐点決定ステップで、自身のノードからより近いネットワーク内の分岐点を選択する請求項１４記載のトラフィック制御方法。
【請求項１６】
トラフィック流量の制御を行うトラフィック制御用プログラムであって、
コンピュータに、
トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定処理と、
決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整処理とを
実行させるためのトラフィック制御用プログラム。
【請求項１７】
コンピュータに、
前記最適分岐点決定処理で、自身のノードからより近いネットワーク内の分岐点を選択する処理を実行させる
請求項１８記載のトラフィック制御用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トラフィックエンジニアリングを行うトラフィックエンジニアリング装置に関する。また、本発明は、トラフィックエンジニアリング装置を備えたネットワークシステムに関する。また、本発明は、トラフィック流量の制御を行うトラフィック制御方法及びトラフィック制御用プログラムに関する。
【背景技術】
【０００２】
インターネットの普及に伴い、インターネットに接続されるドメインの数が増加の一途を辿っている。インターネットは、複数のドメインと呼ばれるネットワークの集合である。また、このドメインとは、ある１つの管理主体によって一貫した管理が行われているネットワークを示す。これらのドメイン間において、インタードメインルーティングプロトコルを用いて互いの経路情報を交換することにより、ドメインをまたがった通信が実現される。
【０００３】
現在、インターネット上では、インタードメインルーティングプロトコルとしてＢＧＰ４が用いられている（非特許文献１参照）。また、ＢＧＰ４では、ドメインのことをＡＳ（Autonomous System ：自律システム）と呼んでいる。
【０００４】
ＢＧＰ４を用いて通信を行う場合、ＡＳは、自ＡＳ内のアドレスプレフィックスを他のＡＳに通知する。通知を受けた他のＡＳ（具体的には、ＢＧＰルータ）は、自ＡＳの番号をアドレスプレフィックスに付加して、隣接するＡＳに通知する。このようにアドレスプレフィックスが広告される場合、アドレスプレフィックスは、通過するＡＳ毎にそのＡＳのＡＳ番号が付与されて伝播される。
【０００５】
図１９は、アドレスプレフィックスがＢＧＰを用いて伝播される様子を示した説明図である。ＡＳ１は、自身がもつアドレスプレフィックス「192.168.1.0/24」に自ＡＳ番号１を付加して、隣接するＡＳ２及びＡＳ３に、BGP UPDATEメッセージを用いて通知（送信）する。BGP UPDATEメッセージを受け取る（受信する）と、各ＡＳは、それぞれ自身のＡＳ番号を付加して、BGP UPDATEメッセージをさらに隣接するＡＳに送信する。以後、BGP UPDATEメッセージを受け取る（受信する）と、各ＡＳは、宛先がアドレスプレフィックスにマッチするパケットを、BGP UPDATEメッセージが送信されてきた側のＡＳに向かって転送する。
【０００６】
図１９に示す例において、ＡＳ５は、アドレスプレフィックスが「192.168.1.0/24」であるBGP UPDATEメッセージを、隣接するＡＳ２及びＡＳ４の双方から受信している。この場合、ＡＳ５は、双方から受信したBGP UPDATEメッセージのうち、アドレスプレフィックスに付加されているAS PATH 属性を参照して、AS PATH 長が短い方のBGP UPDATEメッセージを採用する。図１９に示す例では、BGP UPDATEメッセージ１９１３は、AS PATH 長が２である。一方、BGP UPDATEメッセージ１９１５中のAS PATH 長は３である。そのため、ＡＳ５は、前者のBGP UPDATEメッセージ１９１３を採用して、パケットの転送を行う。
【０００７】
上記のように、通過するＡＳ番号を記録した上でアドレスプレフィックスが伝搬されるルーティングプトロコルは、パスベクトル型のルーティングプロトコルと呼ばれている。
【０００８】
次に、図２０を用いて、ＢＧＰを用いたトラフィックエンジニアリングについて説明を行う。ＡＳ１は、保有するアドレスプレフィックス「192.168.1.0/24」を、「192.168.1.0/25」及び「192.168.1.128/25」という２つのアドレスブロックに分割する。そして、ＡＳ１は、それぞれのアドレスブロックを、BGP UPDATEメッセージを用いて、異なるＡＳに通知（送信）する。そのように処理を実行することによって、ＡＳ１自身が保有するアドレスのうち、例えば、「192.168.1.1 」宛てのパケットは、ＡＳ２と接続するリンク側からのみ自ＡＳに到達する。一方、例えば、「192.168.1.129 」宛てのパケットは、ＡＳ3と接続するリンク側から自ＡＳに到達する。
【０００９】
【非特許文献１】Y. Rekhter, T. Li, and S. Hares, "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, Internet Engineering Task Force, 2006.
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、ＢＧＰを用いたトラフィックエンジニアリング（Traffic Engineering ：以下、ＴＥともいう）を行う場合、BGP UPDATEメッセージの伝播範囲をコントロールすることができない。そのため、BGP UPDATEメッセージの伝播範囲が広範囲にわたってしまう。従って、各ＡＳがＴＥを行うことによって、BGP UPDATEメッセージの数が増大し、これらのBGP UPDATEメッセージの処理負荷が増大するという問題がある。
【００１１】
図２０に示す例では、ＡＳ１は、自身がもつアドレスプレフィックスを２つに分割し、それぞれのアドレスブロックを、異なるBGP UPDATEメッセージを用いて他のＡＳに通知することによって、ＴＥを実現している。しかし、図１９の例に示すＴＥを行わない場合と比較して、BGP UPDATEメッセージの数が増大していることがわかる。
【００１２】
そこで、本発明は、上記に示した課題を解決するためになされたものであって、トラフィックエンジニアリングを行う場合において、メッセージの数の増大を防止し、メッセージの処理負荷の増大を防止することができるトラフィックエンジニアリング装置、ネットワークシステム、トラフィック制御方法、及びトラフィック制御用プログラムを目的とする。
【課題を解決するための手段】
【００１３】
本発明によるトラフィックエンジニアリング装置は、トラフィックエンジニアリングを行うトラフィックエンジニアリング装置であって、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定手段と、最適分岐点決定手段が決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整手段とを備えたことを特徴とする。
【００１４】
本発明によるネットワークシステムは、トラフィックエンジニアリングを行うトラフィックエンジニアリング装置を備え、トラフィックエンジニアリング装置は、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定手段と、最適分岐点決定手段が決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整手段とを含むことを特徴とする。
【００１５】
本発明によるネットワーク制御方法は、トラフィック流量の制御を行うトラフィック制御方法であって、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定ステップと、決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整ステップとを含むことを特徴とする。
【００１６】
本発明によるネットワーク制御用プログラムは、トラフィック流量の制御を行うトラフィック制御用プログラムであって、コンピュータに、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定処理と、決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整処理とを実行させるためのものである。
【発明の効果】
【００１７】
本発明によれば、トラフィックエンジニアリングを行う場合において、メッセージの数の増大を防止し、メッセージの処理負荷の増大を防止することができる。
【発明を実施するための最良の形態】
【００１８】
実施形態１．
以下、本発明の第１の実施形態について図面を参照して説明する。本発明は、インタードメインルーティングを行う場合において、 トラフィックエンジニアリング（ＴＥ）を行うトラフィックエンジニアリング装置に関する。
【００１９】
まず、本発明によるトラフィックエンジニアリング装置の概要を説明する。本発明によるトラフィックエンジニアリング装置は、影響範囲を限定するために、少数のＡＳのみがＴＥにおける分岐点となる特殊なBGP Updateメッセージを送信する。そして、トラフィックエンジニアリング装置は、管理者によって予め定められたＴＥポリシを実現するために、適切なBGP UPDATEを送信すべき送信先ＡＳを、トラフィックの状況やトポロジ情報を用いて自律的に決定する。そのように制御することによって、範囲を限定したＴＥを実現するトラフィックエンジニアリング装置、ネットワークシステム、ネットワーク制御方法、及びネットワーク制御用プログラムを実現している。
【００２０】
図１は、本発明による中継装置の構成の一例を示すブロック図である。図１に示すように、中継装置１は、トラフィック情報測定部１１、トラフィック量テーブル１２１〜１２ｎ、トラフィック量積算部１３、トラフィック量積算テーブル１４１〜１４ｎ、プレフィックス対応テーブル１５、経路情報交換部１６、トポロジ推定部１７、ＡＳパスツリー推定部１８、ＴＥ対象分岐点決定部１９、ポリシ管理部２０、ネットワークインタフェイス部２１〜２ｎ、及びＴＥメッセージ処理部３１を含む。
【００２１】
本実施形態において、トラフィックエンジニアリング装置は、中継装置１によって実現される。中継装置１は、具体的には、ＢＧＰルータ等のネットワーク装置によって実現される。また、中継装置１は、例えば、ルータ機能を搭載しプログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現されてもよい。
【００２２】
トラフィック情報測定部１１は、ネットワークインタフェイス部２１〜２ｎを経由して中継装置１内に流れ込む（受信する）トラフィックに対して、パケット毎に、宛先アドレス、送信先アドレス、及びそのパケットサイズ等のトラフィック情報やトラフィック量を測定する機能を備える。また、トラフィック情報測定部１１は、測定したトラフィック情報やトラフィック量を、トラフィック量テーブル１２１〜１２ｎに格納する機能を備える。
【００２３】
トラフィック量テーブル１２１〜１２ｎは、具体的には、中継装置１が備えるメモリ等の記憶装置（図示せず）に記憶される。トラフィック量テーブル１２１〜１２ｎは、トラフィック情報測定部１１が取得（測定）したトラフィック情報やトラフィック量を、送信元ＡＳ及び宛先アドレスブロック毎に分類して格納する表（テーブル）である。なお、図１に示すように、本実施形態では、中継装置１は、複数のトラフィック量テーブル１２１〜１２ｎを含む。この場合、各トラフィック量テーブル１２１〜１２ｎは、自ＡＳが隣接するＡＳと接続しているネットワークインタフェイス部にそれぞれ対応している。
【００２４】
例えば、図７に示すようなネットワークシステムに、トラフィックエンジニアリングを用いた中継装置１を適用する場合を考える。この場合、図７に示すように、自ＡＳ（ＡＳ１）には、隣接するＡＳと接続するリンクが４本（図中に示すリンク７２１，７３１，７４１，７５１）存在する。また、ＡＳ１（具体的には、中継装置７１１１）は、これらのリンク７２１，７３１，７４１，７５１に接続するためのネットワークインタフェイス部を４つ備える。
【００２５】
また、図８に示す構成例の場合、中継装置７１１１は、トラフィック量テーブルも４つ備え、それぞれのトラフィック量テーブルをリンク７２１，７３１，７４１，７５１から流れ込むトラフィック量を記録するために用いる。
【００２６】
図２は、あるリンクＹに対するのトラフィック量テーブルの例を示す説明図である。図２に示す例において、トラフィック量テーブル２０１における行２２２は、それぞれ各パケットの送信元ＡＳを示している。トラフィック情報測定部１１は、各パケットの送信元アドレスを参照し、後述する図３のプレフィックス対応テーブルに基づいて、その送信元アドレスがどのＡＳに属するのかを検索することによって、そのパケットの送信元ＡＳを知る（測定する）ことができる。そして、トラフィック情報測定部１１は、測定した送信元ＡＳをトラフィック量テーブルに格納する。
【００２７】
また、図２において、列２２１は、自ＡＳが保有するプレフィックスを分割したアドレスブロックを示している。例えば、自ＡＳが「200.X.0.0/16」というプレフィックスをもっていたとする。図２に示す例では、このプレフィックスを、「200.X.0.0/24」，「200.X.1.0/24」・・・という２５６個のアドレスブロックに分割した場合を示している。
【００２８】
なお、図２に示す例では、プレフィックスを２５６個のアドレスブロックに分割する場合を示しているが、自ＡＳがもつプレフィックスを分割せずに１つのアドレスブロックとして用いてもよい。その場合、図２に示す表（テーブル）において、列２２１は１列のみとなる。
【００２９】
また、自ＡＳ宛てのパケットは、すなわち自ＡＳのもつプレフィックスを宛先としてもつパケットである。この場合、トラフィック情報測定部１１は、受信した自ＡＳ宛てのパケットの宛先フィールドを参照することによって、該当するアドレスブロックを知る（特定する）ことができる。また、トラフィック情報測定部１１は、図２に示すトラフィック量テーブルにおいて、受信したパケットの送信元ＡＳ及び宛先アドレスに該当するアドレスブロックのフィールドに、そのパケットのパケットサイズの値を加算して保存する。また、トラフィック情報測定部１１は、図２に示すトラフィック量テーブルにおいて、各行毎の合計２２３及び各列毎の合計２２４を記録する。また、トラフィック情報測定部１１は、図２に示すトラフィック量テーブルにおいて、リンクＹに流れ込むトラフィック全体のトラフィック量２２５も記録する。
【００３０】
トラフィック量積算部１３は、トラフィック量テーブル１２１〜１２ｎに保存されているトラフィック量を、ＡＳパスツリー推定部１８が推定したＡＳパスツリーに基づいて積算する機能を備える。また、トラフィック量積算部１３は、求めたトラフィック量の積算結果をトラフィック量積算テーブル１４１〜１４ｎに保存する機能を備える。
【００３１】
トラフィック量積算テーブル１４１〜１４ｎは、具体的には、中継装置１が備えるメモリ等の記憶装置に記憶される。トラフィック量積算テーブル１４１〜１４ｎは、トラフック量積算部１３が積算したトラフィック積算量を保存するためのテーブルである。なお、本実施形態では、中継装置１は、複数のトラフィック量積算テーブル１４１〜１４ｎを含む。
【００３２】
図４は、トラフィック量積算テーブルの例を示す説明図である。なお、図４に示すトラフィック量積算テーブルにおいて、行４２２及び列４２１の意味は、図２に示したトラフィック量テーブルにおける行２２２及び列２２１の意味と同様である。
【００３３】
プレフィックス対応テーブル１５は、具体的には、中継装置１が備えるメモリ等の記憶装置に記憶される。プレフィックス対応テーブル１５は、プレフィックスとそのプレフィックスを保有するＡＳのＡＳ番号とを対応付けて保持する表（テーブル）である。図３は、プレフィックス対応テーブルの例を示す説明図である。図３に示すようにプレフィックス対応テーブルは、プレフィックス３２１とＡＳ番号３２２とを対応付けて含む。
【００３４】
経路情報交換部１６は、ＢＧＰを用いて、隣接するＡＳと経路情報の交換を行う機能を備える。また、経路情報交換部１６は、交換処理により隣接するＡＳから取得（受信）した経路情報中からＡＳパスに関わる情報を抽出する機能を備える。また、経路情報交換部１６は、抽出したＡＳパスに関わる情報をトポロジ推定部１７に渡す（出力する）機能を備える。
【００３５】
トポロジ推定部１７は、経路情報取得部１６が取得（抽出）したＡＳパスに関する情報に基づいて、ＡＳ間のつながりを示すトポロジマップを作成する機能を備える。図８は、トポロジ推定部１７が作成するトポロジマップの例を示す説明図である。図８に示す例において、図中のＡＳ１１〜ＡＳ１７は、それぞれＡＳを表している。また、図８において、直線８２１〜８３０は、それぞれＡＳ間を接続するリンクを示している。
【００３６】
ＡＳパスツリー推定部１８は、トポロジ推定部１７が推定（作成）したトポロジマップ、及びＡＳパス情報取得部１６が取得（抽出）したＡＳパスに関する情報に基づいて、送信元が各ＡＳであるトラフィックがどのようなＡＳパスを通って自ＡＳに到達したかを示すＡＳパスツリーを作成する機能を備える。
【００３７】
さらに、ＡＳパスツリー推定部１８は、作成したＡＳパスツリーを用いて、各ＡＳ発のトラフィックがどのリンク経由で入ってくるか（受信したか）に従ってグルーピングを行う機能を備える。
【００３８】
図９は、ＡＳパスツリーの例を示す説明図である。図９に示す例において、図中のＡＳ１４は、自ＡＳである。また、ＡＳ１４は、他のＡＳと２本のリンク９２５，９２７で接続されている。この場合、リンク９２５経由でＡＳ１４にトラフィックが到達する場合の発ＡＳとなりうるＡＳは、ＡＳ１１，１２，１６，１７の４つのＡＳである。一方、リンク９２７経由でＡＳ１４に到達するトラフィックの発ＡＳとなりうるＡＳは、ＡＳ１３，１５の２つのＡＳである。図９に示す例の場合、ＡＳパスツリー推定部１８は、このように２つのリンクに対応した２つのＡＳ群にグルーピングを行う。
【００３９】
ＴＥ対象分岐点決定部１９は、ＡＳパスツリー推定部１８が推定するＡＳパスツリー、及びトラフィック量積算テーブル１４１〜１４ｎに保存されている各ＡＳを通過して受信したトラフィックの積算量を用いて、ポリシ管理部２０が管理するＴＥポリシを実現するために適したＡＳ（以下、分岐点ＡＳともいう）を決定する機能を備える。また、ＴＥ対象分岐点決定部１９は、決定したＡＳ（分岐点ＡＳ）及びそのＡＳ（分岐点ＡＳ）までのＡＳパスをＴＥメッセージ処理部３１に送る（出力する）機能を備える。
【００４０】
ポリシ管理部２０は、管理者により設定されたＴＥポリシを保存する機能を備える。例えば、ポリシ管理部２０は、管理者の設定操作に従って、ＴＥポリシを設定（例えば、編集や作成、入力）し、設定したＴＥポリシをメモリ等の記憶装置に予め記憶する。また、ポリシ管理部２０は、必要に応じて、予め設定したＴＥポリシをＴＥ対象分岐点決定部１９に通知（出力）する機能を備える。
【００４１】
ネットワークインタフェイス部２１〜２ｎは、外部のネットワークと接続するためのインタフェイス部である。例えば、図７に示す例では、ネットワークインタフェイス部２１〜２ｎを介して、中継装置７１１１が外部のネットワークと接続されている例が示されている。図７において、図中の中継装置７１１１は、本発明による中継装置（トラフィックエンジニアリング装置）である。図７に示す例では、中継装置７１１１は、リンク７２１，７３１，７４１，７５１を介して、それぞれＡＳ２の中継装置７２２、ＡＳ３の中継装置７３２、ＡＳ４の中継装置７４２、ＡＳ５の中継装置７５２と接続されている。
【００４２】
なお、ここで、中継装置７２２，７３２，７４２，７５２は、本発明によるトラフィック制御機能を備えた中継装置であってもよいし、本発明によるトラフィック制御機能を有しない一般の中継装置であってもよい。
【００４３】
ＴＥメッセージ処理部３１は、ＴＥ対象分岐点決定部１９が決定した分岐点に基づいて、トラフィックの受信の際に自身のＡＳに流れ込むトラフィック流量の調整を行う。具体的には、ＴＥメッセージ処理部３１は、ＴＥ対象分岐点決定部１９から出力される分岐点ＡＳに対して、分岐点から自身までのパスを変更するためのExplicit AS UPDATEメッセージを送信する機能を備える。また、ＴＥメッセージ処理部３１は、他のＡＳにより作成され送信されたExplicit AS UPDATEメッセージを受信し、受信したExplicit AS UPDATEメッセージの内容を判断する機能を備える。また、ＴＥメッセージ処理部３１は、受信したExplicit AS UPDATEメッセージを他のＡＳに転送する機能を備える。
【００４４】
Explicit AS UPDATEメッセージは、通常のＢＧＰにおけるUPDATEメッセージに対して、Explicit AS PATH属性を付加したメッセージである。図１０は、Explicit AS PATH属性の例を示す説明図である。本実施形態では、図１０に示すように、Explicit AS PATH属性は、BGP UPDATEメッセージの一部に含まれる情報として、他ＡＳに広告される。
【００４５】
図１２は、ＢＧＰメッセージのヘッダの例を示す説明図である。図１２において、図中のMarker１２１１は、ＢＧＰメッセージにおいて同期の検出を行ったり、又は認証を行うために用いられるフィールドである。またLength１２１２は、ヘッダを含むＢＧＰメッセージ全体の長さを表すフィールドである。また、Type１２１３は、ＢＧＰメッセージのタイプを表すフィールドである。このType１２１３のフィールドの値が２である場合、ＢＧＰヘッダに続くフィールドがBGP UPDATEメッセージであることを示す。
【００４６】
図１３は、BGP UPDATEメッセージの例を示す説明図である。図１３において、図中のWithdrawn RoutesLength１３１１は、２（octet ）のフィールドであり、続くWithdrawn Routes１３１２のフィールドの長さを表す。Withdrawn Routes１３１２は、可変長のフィールドであり、到達不能となった経路を通知するために用いられる。Total Path Attribute Length １３１３は、２（octet ）のフィールドであり、続くPath Attributes １３１４のフィールドの長さを表す。Path Attributes １３１４のフィールドは、各種PATH属性を通知するために用いられる。Network Layer Reachability Information１３１５のフィールドには、広告されるprefix及びそのprefix長が格納される。
【００４７】
また、本実施形態では、ＡＳペア証明書は、PATH（パス）属性として広告される。この場合、ＡＳペア証明書は、図１３において図中に示したPath Attributes １３１４のフィールドに格納され、BGP UPDATEメッセージを用いて伝達される。具体的には、ＡＳペア証明書は、図１４に示す形式で格納される。
【００４８】
図１４において、図中のAttribute Flags １４１１には、このパス属性の扱いに関する各種フラグが格納される。また、Attribute Type Code １４１２には、パス属性の種類を示す値が格納される。本発明では、Explicit AS PATHを新しいパス属性として定義しているため、このフィールドに格納される値として、従来割り当てられていない値を割り当てるものとする。また、Length１４１３フィールドには、このパス属性の長さが格納される。
【００４９】
また、AS Path Length１４２１フィールドには、このExplicit AS Path属性にて通知されるExplicit AS Pathに含まれるＡＳの数が格納される。図１４に示す例では、AS Number フィールド１４３１〜１４３ｎまでに示されるｎ個のＡＳが含まれている。そのため、AS Path Length１４２１フィールドにはnという値が格納される。また、AS Number フィールド１４３１〜１４３ｎには、それぞれＡＳ番号が格納される。
【００５０】
本実施形態では、図１０で模式的に示しているBGP UPDATEメッセージのうち、prefix１０２１は、図１３における図中のNetwork Layer Reachability Information１３１５のフィールドに格納されることになる。また、AS PATH 属性１０２２及びExplicit AS PATH属性１０２３は、それぞれ図１３における図中のPath Attributes １３１４のフィールドに格納されることになる。
【００５１】
なお、本実施形態において、トラフィックエンジニアリング装置が情報処理装置を用いて実現される場合、トラフィックエンジニアリング装置を実現する情報処理装置の記憶装置（図示せず）は、トラフィック流量の制御を行うための各種プログラムを記憶している。例えば、トラフィックエンジニアリング装置を実現する情報処理装置の記憶装置は、コンピュータに、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する最適分岐点決定処理と、決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整処理とを実行させるためのトラフィック制御用プログラムを記憶している。
【００５２】
次に、動作について説明する。まず、中継装置１がトラフィック量積算テーブル１４１〜１４ｎを作成する動作を説明する。図５は、中継装置１がトラフィック量積算テーブル１４１〜１４ｎを作成する作成処理の一例を示すフローチャートである。以下、図５を用いて、トラフィック量積算テーブル１４１〜１４ｎの作成手順の動作について説明を行う。
【００５３】
なお、本実施形態では、中継装置１のトラフィック情報測定部１１は、隣接するＡＳから受信するパケットに基づいて、随時、トラフィック情報やトラフィック量を測定し、トラフィック量テーブル１２１〜１２ｎに格納している。そして、トラフィック量積算部１３は、所定の積算タイミングとなると、トラフィック量テーブル１２１〜１２ｎに基づいて、トラフィック量の積算処理を開始する。例えば、トラフィック量積算部１３は、予め定められた期間毎に、トラフィック量の積算処理を実行する。また、例えば、トラフィック量積算部１３は、管理者によって積算処理の開始操作が行われたことに基づいて、トラフィック量の積算処理を開始してもよい。
【００５４】
まず、トラフィック量積算部１３は、図１に示す複数のトラフィック量テーブル１２１〜１２ｎのうち、まだ積算処理を行っていないテーブルを１つ選択する。また、トラフィック量積算部１３は、空のトラフィック量積算テーブル（内部の各フィールドの値が空であるテーブル）を作成する（ステップＳ１０１）。次に、トラフィック量積算部１３は、ステップＳ１０１で選択したトラフィック量テーブル中において、積算処理を行っていないＡＳを１つ選択し、選択したＡＳをＡＳ−ｘとする（ステップＳ１０２）。次に、トラフィック量積算部１３は、変数Ｔｘを用意し、その変数Ｔｘの値を０に設定する（ステップＳ１０３）。
【００５５】
次に、トラフィック量積算部１３は、ＡＳパスツリー推定部１８が推定したＡＳパスツリーを参照し、ＡＳ−ｘの子ノードであるＡＳを抽出し、その抽出したＡＳの集合をＡＳｅｓ−ｙとする（ステップＳ１０４）。次に、トラフィック量積算部１３は、ＡＳｅｓ−ｙの中から後述するステップＳ１０６の処理を行っていないＡＳを１つ選択し、そのＡＳをＡＳ−ｚとする（ステップＳ１０５）。そして、トラフィック量積算部１３は、ステップＳ１０１で選択したトラフィック量テーブル中に含まれるステップＳ１０５で選択したＡＳ−ｚ発のトラフィック量ｔｚを参照し、Ｔｘにそのｔｚの値を加算する（ステップＳ１０６）。
【００５６】
次に、トラフィック量積算部１３は、ＡＳｅｓ−ｙ中の全てのＡＳに対して、ステップＳ１０６の加算処理を行ったか否かを判定する（ステップＳ１０７）。ステップＳ１０６の加算処理を行っていないＡＳが存在すれば（ステップＳ１０７のＮ）、トラフィック量積算部１３は、ステップＳ１０５の処理に戻る。ステップＳ１０６の加算処理を全てのＡＳに対して行っていれば（ステップＳ１０７のＹ）、トラフィック量積算部１３は、ステップＳ１０８の処理に進む。
【００５７】
ステップＳ１０８では、トラフィック量積算部１３は、ステップＳ１０１で作成したトラフィック量積算テーブルのＡＳ−ｘのフィールドにＴｘの値を格納する（ステップＳ１０８）。次いで、トラフィック量積算部１３は、ステップＳ１０１で選択したトラフィック量テーブル中の全てのＡＳに対して積算処理を行ったか否かを判定する（ステップＳ１０９）。積算処理を行っていないＡＳが存在すれば（ステップＳ１０９のＮ）、トラフィック量積算部１３は、ステップＳ１０２の処理に戻る。積算処理を全てのＡＳに対して行っていれば（ステップＳ１０９のＹ）、トラフィック量積算部１３は、ステップＳ１１０の処理に進む。
【００５８】
次に、トラフィック量積算部１３は、図１に示した全てのトラフィック量テーブル１２１〜１２ｎについて積算処理を行ったか否かを判定する（ステップＳ１１０）。積算処理を行っていないトラフィック量テーブルが存在すれば（ステップＳ１１０のＮ）、トラフィック量積算部１３は、ステップＳ１０１の処理に戻る。積算処理を全てのトラフィック量テーブルに対して行っていれば（ステップＳ１１０のＹ）、トラフィック量積算部１３は、処理を終了する。
【００５９】
なお、図５に示す例では、図２に示すトラフィック量テーブルにおける自ＡＳが保有する宛先アドレス２２１を複数に分割しない例について示したが、自ＡＳが保有するアドレスを複数に分割している場合にも、本発明は適用可能である。この場合、トラフィック量積算部１３は、ステップＳ１０３からステップＳ１０８までの積算処理を分割数分だけ行うことによって対応することができる。
【００６０】
次に、トラフィックエンジニアリングの対象とするＴＥ対象ＡＳを決定する動作を説明する。図６は、ＴＥ対象ＡＳを決定する処理の一例を示すフローチャートである。以下、図６を用いて、ＴＥ対象ＡＳを決定するための手順の動作について説明を行う。
【００６１】
なお、本実施形態では、ＴＥ対象分岐点決定部１９は、所定のＴＥ対象ＡＳ決定タイミングとなると、ＴＥ対象ＡＳの決定処理を開始する。例えば、ＴＥ対象分岐点決定部１９は、予め定められた期間毎に、ＴＥ対象ＡＳの決定処理を実行する。また、例えば、ＴＥ対象分岐点決定部１９は、管理者によって開始操作が行われたことに基づいて、ＴＥ対象ＡＳの決定処理を開始してもよい。
【００６２】
まず、ＴＥ対象分岐点決定部１９は、トラフィック量テーブル１２１〜１２ｎを参照し、各リンク毎に流れ込むトラフィック量の合計値を取得（抽出）する（ステップＳ２０１）。次に、ＴＥ対象分岐点決定部１９は、図１に示すポリシ管理部２０から、ポリシ管理部２０が管理しているポリシを取得（入力）する（ステップＳ２０２）。
【００６３】
次いで、ＴＥ対象分岐点決定部１９は、ステップＳ２０１で取得した各リンク毎のトラフィック量の合計値を参照し、ポリシによる理想的なトラフィック量を一番超えているリンクを超過リンクとして選択する。また、ＴＥ対象分岐点決定部１９は、ポリシによる理想的なトラフィック量より一番不足しているリンクを不足リンクとして選択する（ステップＳ２０３）。
【００６４】
例えば、４つのリンクＡ，Ｂ，Ｃ，Ｄのトラフィック量が、それぞれ１２０，１５０，８０，５０であったとする。また、各リンク毎のトラフィック量が合計値に対して２５％ずつが理想的であるというポリシが設定されていたとする。この場合、各リンク毎のトラフィック量の合計値は４００であり、各リンク毎のトラフィック量を１００ずつにすることが目標値となる。ＴＥ対象分岐点決定部１９は、この目標値に対して実際のトラフィック量が超えているリンクＡ，Ｂのうち、超えているトラフィック量が最も多いリンクＢを超過リンクとして選択する。同様に、ＴＥ対象分岐点決定部１９は、不足リンクとして、トラフィック量の不足分が最も多いリンクＤを選択する。
【００６５】
次に、ＴＥ対象分岐点決定部１９は、ポリシに示される条件を満足するために、不足リンク側で不足しているトラフィック量を調整量として求める（ステップＳ２０４）。上記に示した例では、不足リンクであるリンクＤのトラフィック量が５０であるので、目標値１００に対して５０程足りない。つまり、この場合、ＴＥ対象分岐点決定部１９は、調整量を５０と求める。
【００６６】
次に、ＴＥ対象分岐点決定部１９は、図１に示すＡＳパスツリー推定部１８がグルーピングしたＡＳ群を参照し、超過リンク及び不足リンクそれぞれに対応するＡＳ群中から、異なるグループに所属するがトポロジマップ上で隣接するＡＳのペアを選択する（ステップＳ２０５）。
【００６７】
例えば、図９に示す例において、図中のリンク９２５が超過リンクであり、リンク９２７が不足リンクであるものとして説明する。この場合、ＡＳ１２とＡＳ１３とは、異なるグループに所属しているがお互いに隣接している。そのため、ＴＥ対象分岐点決定部１９は、ＡＳ１２とＡＳ１３とのペアを選択する。また、ＴＥ対象分岐点決定部１９は、同様に、ＡＳ１１とＡＳ１３とのペア、及びＡＳ１５とＡＳ１７とのペアを選択する。すなわち、ＴＥ対象分岐点決定部１９は、図９に示す例において、３つのＡＳのペアを選択できる。
【００６８】
次に、ＴＥ対象分岐点決定部１９は、ステップＳ２０５で選択したが未だステップＳ２０７の処理を行っていないＡＳペアのうち、自ＡＳに近いＡＳペアを１つ選択する（ステップＳ２０６）。ここで、自ＡＳに近いＡＳペアを選択する手順では、ＴＥ対象分岐点決定部１９は、不足リンク側のＡＳが自ＡＳに一番近いペアを選択し、その選択したＡＳペアの中で超過リンク側のＡＳが自ＡＳに一番近いペアを選択することとする。
【００６９】
例えば、図９に示す例において、ＴＥ対象分岐点決定部１９は、ステップＳ２０５で選択したＡＳペアのうち、不足リンク側のＡＳが近いＡＳ１３とＡＳ１２とのペア、及びＡＳ１３とＡＳ１１とのペアを比較する。このうち超過リンク側のＡＳを比較すると、ＡＳ１１よりＡＳ１２の方が自ＡＳ１４に近いので、ＴＥ対象分岐点決定部１９は、ここではＡＳ１３とＡＳ１２とのペアを選択する。なお、もし不足リンク側及び超過リンク側それぞれのＡＳの自リンクからの距離が同一である複数のＡＳペアがある場合には、ＴＥ対象分岐点決定部１９は、いずれのＡＳペアを選択してもよい。
【００７０】
次に、ＴＥ対象分岐点決定部１９は、ステップＳ２０５で選択したＡＳペアのうち、超過リンク側のトラフィック積算テーブル中の超過リンク側のＡＳに対応する行を参照し、ステップＳ２０４で選択した調整量に一番近い列を選択する（ステップＳ２０７）。
【００７１】
次いで、ＴＥ対象分岐点決定部１９は、ステップＳ２０７で選択したフィールドに格納されている値とステップＳ２０４で求めた調整量との差を求め、この調整量の差が調整量の１０％以内であるか否かを判定する（ステップＳ２０８）。調整量の差が１０％より大きいと判定した場合には、ＴＥ対象分岐点決定部１９は、調整量の差が大きすぎると判断し、ステップＳ２０６の処理に戻り、他のＡＳペアの選択を行う。調整量の差が１０％より小さいと判定した場合には、ＴＥ対象分岐点決定部１９は、次のステップＳ２０９の処理に進む。
【００７２】
ステップＳ２０９では、ＴＥ対象分岐点決定部１９は、ステップＳ２０６で選択したＡＳペアの超過リンク側のＡＳをＴＥ対象の分岐点ＡＳと決定し、ステップＳ２０７で選択したアドレスブロックをＴＥ対象プレフィックスと決定する（ステップＳ２０９）。そして、ＴＥ対象分岐点決定部１９は、処理を終了する。
【００７３】
中継装置１は、上記の処理を実行することによって決定したＴＥ対象分岐点ＡＳに対して、ＴＥ対象プレフィックスを不足リンク側に誘導することによって、ポリシに沿ったトラフィック量に近づけることができる。
【００７４】
次に、図1に示すＴＥメッセージ処理部３１が実行するExplicit AS UPDATEメッセージの送信手順の動作について説明を行う。図１１は、ＴＥメッセージ処理部３１がExplicit AS UPDATEメッセージを送信する処理の一例を示すフローチャートである。
【００７５】
まず、ＴＥメッセージ処理部３１は、ＡＳパスツリー推定部１８が推定したＡＳパスツリーを参照して、自ＡＳを起点としＴＥ対象ＡＳ決定手順において用いたＡＳペアのうち、ＴＥ対象分岐点ＡＳでない方（不足リンク側のＡＳ）を終点とするＡＳパスを取得（特定）する（ステップＳ３０１）。
【００７６】
次いで、ＴＥメッセージ処理部３１は、ステップＳ３０１で取得したＡＳパスの終点側にＴＥ対象分岐点ＡＳを追加したＡＳパスを作成する（ステップＳ３０２）。例えば、図９に示す例において、ＡＳ１５とＡＳ１７とのＡＳペアのうち、ＡＳ１７がＴＥ対象分岐点ＡＳである場合について説明を行う。この場合、ＴＥメッセージ処理部３１は、ステップＳ３０１では、自ＡＳ（ＡＳ１４）からＡＳ１５までのパスであるＡＳ１４→ＡＳ１３→ＡＳ１５を得る。次いで、ＴＥメッセージ処理部３１は、ステップＳ３０２では、このパスにＡＳ１７を追加し、ＡＳ１４→ＡＳ１３→ＡＳ１５→ＡＳ１７というパスを得る。
【００７７】
次に、ＴＥメッセージ処理部３１は、ステップＳ３０２で得た（作成した）ＡＳパス及びＴＥ対象プレフィックスを用いて、Explicit AS UPDATEメッセージを作成する（ステップＳ３０３）。そして、ＴＥメッセージ処理部３１は、不足リンクを介して接続されている隣接ＡＳの中継装置に対して、ステップＳ３０３で作成したExplicit AS UPDATEメッセージを送信する（ステップＳ３０４）。
【００７８】
次に、図１に示す中継装置１が他のＡＳ中の中継装置により作成されたExplicit AS UPDATEメッセージを受け取ったときの転送動作について説明を行う。図１５は、Explicit AS UPDATEメッセージの転送処理の一例を示すフローチャートである。
【００７９】
まず、ＴＥメッセージ処理部３１は、他のＡＳの中継装置からExplicit AS UPDATEメッセージを受信すると、受信したExplicit AS UPDATEメッセージ中のExplicit AS PATH属性を参照する（ステップＳ４０１）。次に、ＴＥメッセージ処理部３１は、Explicit AS PATH属性中に自ＡＳのＡＳ番号が含まれているか否かを判定する（ステップＳ４０２）。自ＡＳのＡＳ番号が含まれていなければ（ステップＳ４０２のＮ）、ＴＥメッセージ処理部３１は、ステップＳ４０７の処理に進む。自ＡＳのＡＳ番号が含まれていれば（ステップＳ４０２のＹ）、ＴＥメッセージ処理部３１は、ステップＳ４０３に進む。
【００８０】
ステップＳ４０３では、ＴＥメッセージ処理部３１は、Explicit AS PATH属性中において自ＡＳのＡＳ番号の次に記載されているＡＳ番号を参照する（ステップＳ４０３）。そして、ＴＥメッセージ処理部３１は、自ＡＳの隣接ＡＳ中にステップＳ４０３で参照したＡＳ番号のＡＳが存在するか否かを判定する（ステップＳ４０４）。ステップＳ４０３で参照したＡＳ番号のＡＳが存在しない場合にに（ステップＳ４０４のＮ）、ＴＥメッセージ処理部３１は、ステップＳ４０７の処理に進む。ステップＳ４０３で参照したＡＳ番号のＡＳが存在する場合には（ステップＳ４０４のＹ）、ＴＥメッセージ処理部３１は、ステップＳ４０５の処理に進む。
【００８１】
ステップＳ４０５では、ＴＥメッセージ処理部３１は、Explicit AS PATH属性以外のパス属性に対して、一般のＢＧＰと同様の処理を行う（ステップＳ４０５）。次に、ＴＥメッセージ処理部３１は、ステップＳ４０３で選択したＡＳに対して、ステップＳ４０５で処理を行ったExplicit AS UPDATEメッセージを送信する（ステップＳ４０６）。
【００８２】
一方、ステップＳ４０７では、ＴＥメッセージ処理部３１は、受信したExplicit AS UPDATEメッセージを、隣接するＡＳに転送することなく破棄する処理を実行する（ステップＳ４０７）。
【００８３】
以上に説明したように、本実施形態によれば、ＴＥ対象分岐点決定部１９は、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適なＴＥ対象分岐点を決定する。そして、ＴＥメッセージ処理部３１は、ＴＥ対象分岐点決定部１９が決定したＴＥ対象分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うように処理を実行する。トラフィック流量の調整を行うことができるので、トラフィックエンジニアリングを行う場合において、メッセージの数の増大を防止し、メッセージの処理負荷の増大を防止することができる。
【００８４】
また、一般に、ＢＧＰを用いたトラフィックエンジニアリング（ＴＥ）を行う場合、自身のポリシにあったＴＥを実現するためのプレフィックスの分割を人手で行わなければならず、管理者の手間がかかるという問題点があった。例えば、図２０に示した例では、自身のもつアドレスプレフィックスを２つに分割してＴＥを行っているが、そうすることにより実際に流れるトラフィック自体が５０％ずつに分かれるとは限らない。なぜなら、宛先アドレス毎のトラフィックが均一であるとは限らないためである。そのため、目的のポリシを実現するために、どのようなアドレスプレフィックスの分割を行うかについての調整を、実際のトラフィックの状況を見ながら人手で行わなければならない。
【００８５】
これに対して、本実施形態によれば、ＴＥメッセージ処理部３１がＴＥ対象分岐点に基づいてトラフィック流量の調整を自動的に行う。そのため、人手を介さずに自身のポリシにあったトラフィックエンジニアリングを実現することができ、管理者の手間を軽減することができる。
【００８６】
実施形態２．
次に、本発明の第２の実施形態について図面を用いて説明する。第１の実施形態ではトラフィックエンジニアリング装置が中継装置によって実現される場合を示したが、本実施形態では、トラフィックエンジニアリング装置が中継装置とは別に用意された計算装置によって実現される場合を説明する。
【００８７】
図１６は、第２の実施形態における計算装置を実際のネットワークに配置したネットワークシステムの構成の一例を示すブロック図である。図１６に示すように、本実施形態では、ＡＳ１は、複数の中継装置１６１１１，１６１１２，１６１１３を含む。また、各中継装置１６１１１，１６１１２，１６１１３は、それぞれリンク１６２１，１６３１，１６４１，１６５１を介して、他のＡＳと接続されている。
【００８８】
図１６に示す例では、外部と接続するリンクがそれぞれ異なる中継装置に接続されているため、第１の実施形態で示した中継装置を用いたとしても、これらのリンク間でのトラフィックエンジニアリングを行うことができない。そのため、本実施形態では、中継装置１６１１１，１６１１２，１６１１３とは別に計算装置（以下、ＴＥ計算装置ともいう）１６１２を備え、ＴＥ計算装置１６１２が複数の中継装置１６１１１，１６１１２，１６１１３から情報を集めて、分岐点ＡＳの決定を行う。
【００８９】
図１７は、第２の実施形態におけるＴＥ計算装置の構成の一例を示すブロック図である。図１７に示すように、本実施形態では、ＴＥ計算装置１Ａは、図１に示した中継装置１と比較して、トラフィック情報測定部１１に代えて、トラフィック情報取得部１１Ａを含む点で、第１の実施形態と異なる。また、本実施形態では、ＴＥ計算装置１Ａは、図１に示した中継装置１と比較して、ＴＥメッセージ処理部３１に代えて、ＴＥメッセージ送信管理部３１Ａを含む点で、第１の実施形態と異なる。また、本実施形態では、ＴＥ計算装置１Ａは、図１に示した中継装置１と比較して、経路情報交換部１６Ａの機能が、第１の実施形態で示した経路情報交換部１６の機能と異なる。
【００９０】
なお、トラフィック情報取得部１１Ａ、経路情報交換部１６Ａ、及びＴＥメッセージ送信管理部３１Ａ以外の構成要素の機能は、第１の実施形態で示したそれらの機能と同様である。
【００９１】
本実施形態において、トラフィックエンジニアリング装置は、ＴＥ計算装置１Ａによって実現される。ＴＥ計算装置１Ａは、具体的には、ＢＧＰルータ等のネットワーク装置によって実現される。また、ＴＥ計算装置１Ａは、例えば、ルータ機能を搭載しプログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現されてもよい。
【００９２】
トラフィック情報取得部１１Ａは、ＡＳ１内の他の中継装置１６１１１，１６１１２，１６１１３からそれぞれ外部と接続するリンクに関するトラフィック情報を取得（受信）する機能を備える。この場合、トラフィック情報の取得を行うためには、各中継装置１６１１１，１６１１２，１６１１３側でパケットを受信する度に、そのパケットの送信元アドレス、宛先アドレス及びパケットサイズを一組にしてＴＥ計算装置に送信することによって実現できる。
【００９３】
なお、各中継装置１６１１１，１６１１２，１６１１３側で受信したパケット全てに対してトラフィック情報を送信する代わりに、各中継装置１６１１１，１６１１２，１６１１３は、トラフィック情報のサンプリングを行うようにしてもよい。そして、各中継装置１６１１１，１６１１２，１６１１３は、例えば、受信パケット１００個に対して１つ分の情報をＴＥ計算装置に送信するようにしてもよい。このようにｎ個のパケットに対して１つ分の情報を送る場合（つまり、サンプリングレート１／ｎ）とした場合、自ＡＳ内の全ての中継装置１６１１１，１６１１２，１６１１３のサンプリングレートとして同じ値を用いる必要がある。
【００９４】
ＴＥメッセージ送信管理部３１Ａは、自ＡＳ内の複数の中継装置１６１１１，１６１１２，１６１１３のうち、不足リンクに接続している中継装置に対して、第１の実施形態と同様の処理によって作成したExplicit AS UPDATEメッセージの送信を指示する機能を備える。
【００９５】
また、本実施形態では、経路情報交換部１６Ａは、第１の実施形態と異なり、外部のＡＳと接続されていない。しかし、経路情報交換部１６Ａは、自ＡＳ内の他の中継装置１６１１１，１６１１２，１６１１３との間でＢＧＰを用いることによって、他の中継装置１６１１１，１６１１２，１６１１３が他のＡＳから受け取ったＢＧＰのメッセージを受け取る（受信する）ことができる。なお、その他の経路情報交換部１６Ａの機能は、第１の実施形態で示した経路情報交換部１６の機能と同様である。
【００９６】
以上に説明したように、本実施形態によれば、中継装置とは別にＴＥ計算装置を備える。ＴＥ計算装置は、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適なＴＥ対象分岐点を決定する。そして、ＴＥ計算装置は、決定したＴＥ対象分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うように処理を実行する。従って、上記の構成により、第１の実施形態で示した効果に加えて、自ＡＳ内に複数の中継装置がある場合であっても、トラフィックエンジニアリングを実現することができる。
【００９７】
次に、本発明によるトラフィックエンジニアリング装置の最小構成について説明する。図１８は、トラフィックエンジニアリング装置の最小の構成例を示すブロック図である。図１８に示すように、トラフィックエンジニアリング装置は、最小の構成要素として、ＴＥ対象分岐点決定部１９及びＴＥメッセージ処理部３１を含む。
【００９８】
ＴＥ対象分岐点決定部１９は、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点を決定する機能を備える。ＴＥメッセージ処理部３１は、ＴＥ対象分岐点決定部１９が決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行う機能を備える。
【００９９】
図１８に示す最小構成のトラフィックエンジニアリング装置によれば、トラフィックエンジニアリングを行う場合において、メッセージの数の増大を防止し、メッセージの処理負荷の増大を防止することができる。
【０１００】
なお、上記に示した各実施形態では、以下の（１）〜（１１）に示すようなトラフィックエンジニアリング装置の特徴的構成が示されている。
【０１０１】
（１）トラフィックエンジニアリング装置は、トラフィックエンジニアリングを行うトラフィックエンジニアリング装置（例えば、中継装置１、ＴＥ計算装置１Ａ）であって、トラフィックエンジニアリングを行うために予め設定されたポリシを実現するためにネットワーク内の最適な分岐点（例えば、ＴＥ対象分岐点）を決定する最適分岐点決定手段（例えば、ＴＥ対象分岐点決定部１９によって実現される）と、最適分岐点決定手段が決定した分岐点に基づいて、トラフィックの受信の際に自身のノードに流れ込むトラフィック流量の調整を行うトラフィック流量調整手段（例えば、ＴＥメッセージ処理部３１、ＴＥメッセージ送信管理部３１Ａによって実現される）とを備えたことを特徴とする。
【０１０２】
（２）トラフィックエンジニアリング装置において、最適分岐点決定手段は、自身のノードからより近いネットワーク内の分岐点を選択するように構成されていてもよい。
【０１０３】
（３）トラフィックエンジニアリング装置において、最適分岐点決定手段は、ネットワークのトポロジ情報（例えば、トポロジマップ）を用いて、最適な分岐点を決定するように構成されていてもよい。
【０１０４】
（４）トラフィックエンジニアリング装置において、最適分岐点決定手段は、経路制御メッセージ（例えば、Explicit AS UPDATEメッセージ）中の自律システムのパス情報（例えば、Explicit AS PATH属性）を用いて、最適な分岐点を決定するように構成されていてもよい。
【０１０５】
（５）トラフィックエンジニアリング装置は、自律システムのパス情報に基づいて、自身のノードに流れ込むトラフィックの流れを示す自律システムのパスツリーを推定するパスツリー推定手段（例えば、ＡＳパスツリー推定部１８によって実現される）を備えるように構成されていてもよい。
【０１０６】
（６）トラフィックエンジニアリング装置において、最適分岐点決定手段は、自律システムのパスツリーとネットワークのトポロジ情報とを用いて、トポロジ上隣接しているが異なるリンク経由で自身のノードにトラフィックが流れ込んでいる自律システムのペアを、分岐点の候補として特定するように構成されていてもよい。
【０１０７】
（７）トラフィックエンジニアリング装置において、最適分岐点決定手段は、各リンク毎のトラフィック量を用いて、最適な分岐点を決定するように構成されていてもよい。
【０１０８】
（８）トラフィックエンジニアリング装置は、トラフィック量を送信元毎に対応付けて含むトラフィック量テーブル（例えば、トラフィック量テーブル１２１〜１２ｎ）を備え、最適分岐点決定部は、トラフィック量テーブルに含まれるトラフィック量を用いて、最適な分岐点を決定するように構成されていてもよい。
【０１０９】
（９）トラフィックエンジニアリング装置は、トラフィック量テーブルに含まれる送信元毎のトラフィック量と自律システムのパス情報とに基づいて、それぞれの自律システムを通過するトラフィック量の積算値を求め、求めたトラフィック量の積算値をトラフィック量積算テーブル（例えば、トラフィック量積算テーブル１４１〜１４ｎ）に記録するトラフィック量積算手段（例えば、トラフィック量積算部１３によって実現される）を備えるように構成されていてもよい。
【０１１０】
（１０）トラフィックエンジニアリング装置において、最適分岐点決定手段は、トラフィック量積算テーブルに含まれるトラフィック量の積算値に基づいて、自身のノードに流れ込むトラフィックを自身のノードのポリシに近づけるために最適な分岐点を選択するように構成されていてもよい。
【０１１１】
（１１）トラフィックエンジニアリング装置において、トラフィック流量調整手段は、最適分岐点決定手段が決定した分岐点に対して、分岐点から自身のノードへのパスの変更処理を実行するように構成されていてもよい。
【産業上の利用可能性】
【０１１２】
本発明は、主に、インターネットへの接続サービスを提供するインターネットサービスプロバイダにおいて使用されるＢＧＰ機能を有するルータ装置に適用できる。
【図面の簡単な説明】
【０１１３】
【図１】本発明による中継装置の構成の一例を示すブロック図である。
【図２】あるリンクＹに対するのトラフィック量テーブルの例を示す説明図である。
【図３】プレフィックス対応テーブルの例を示す説明図である。
【図４】トラフィック量積算テーブルの例を示す説明図である。
【図５】中継装置がトラフィック量積算テーブルを作成する作成処理の一例を示すフローチャートである。
【図６】ＴＥ対象ＡＳを決定する処理の一例を示すフローチャートである。
【図７】中継装置を配置したネットワークシステムの構成の一例を示すブロック図である。
【図８】トポロジ推定部が作成するトポロジマップの例を示す説明図である。
【図９】ＡＳパスツリーの例を示す説明図である。
【図１０】Explicit AS PATH属性の例を示す説明図である。
【図１１】ＴＥメッセージ処理部がExplicit AS UPDATEメッセージを送信する処理の一例を示すフローチャートである。
【図１２】ＢＧＰメッセージのヘッダの例を示す説明図である。
【図１３】BGP UPDATEメッセージの例を示す説明図である。
【図１４】Explicit AS Path属性を格納するためのパス属性における各フィールドの構成を示す説明図である。
【図１５】Explicit AS UPDATEメッセージの転送処理の一例を示すフローチャートである。
【図１６】第２の実施形態における計算装置を実際のネットワークに配置したネットワークシステムの構成の一例を示すブロック図である。
【図１７】第２の実施形態におけるＴＥ計算装置の構成の一例を示すブロック図である。
【図１８】トラフィックエンジニアリング装置の最小の構成例を示すブロック図である。
【図１９】アドレスプレフィックスがＢＧＰを用いて伝播される様子を示した説明図である。
【図２０】ＢＧＰを用いたトラフィックエンジニアリングを説明するための説明図である。
【符号の説明】
【０１１４】
１  中継装置
１１  トラフィック情報測定部
１２１，１２２，１２ｎ  トラフィック量テーブル
１３  トラフィック量積算部
１４１，１４２，１４ｎ  トラフィック量積算テーブル
１５  プレフィックス対応テーブル
１６  経路情報交換部
１７  トポロジ推定部
１８  ＡＳパスツリー推定部
１９  ＴＥ対象分岐点決定部
２０  ポリシ管理部
２１，２２，２ｎ  ネットワークインタフェイス部
３１  ＴＥメッセージ処理部
【図１】
2010016641.tif 000003
【図２】
2010016641.tif 000004
【図３】
2010016641.tif 000005
【図４】
2010016641.tif 000006
【図５】
2010016641.tif 000007
【図６】
2010016641.tif 000008
【図７】
2010016641.tif 000009
【図８】
2010016641.tif 000010
【図９】
2010016641.tif 000011
【図１０】
2010016641.tif 000012
【図１１】
2010016641.tif 000013
【図１２】
2010016641.tif 000014
【図１３】
2010016641.tif 000015
【図１４】
2010016641.tif 000016
【図１５】
2010016641.tif 000017
【図１６】
2010016641.tif 000018
【図１７】
2010016641.tif 000019
【図１８】
2010016641.tif 000020
【図１９】
2010016641.tif 000021
【図２０】
2010016641.tif 000022