本発明は、IP(Internet Protocol)ネットワークの通信品質を向上させる技術に係り、特に、IPネットワーク上に論理的に形成されたオーバーレイネットワークにおける通信品質を効率的に向上させるのに好適な技術に関するものである。
インターネット等のIPネットワークにおいては、予め定められた帯域を超える大量のトラヒックが発生したり、ルータ等の処理能力を超える大量の処理が発生して輻輳する可能性があり、このような輻輳による通信品質の劣化を未然に防止するために、通信規制をかける等の制御を行う必要がある。
このような通信制御を自動的に行う技術としては、例えば、特許文献1に記載のように、予めトラヒック量等の閾値を静的に定めておき、収集したネットワーク内のトラヒック量等が閾値を超えた場合には、通信規制をかける等してネットワークの通信制御を行う技術がある。
しかし、この技術では、トラヒック量等が閾値を超えた場合には一律に制御が行われるため、その後にトラヒック量等が急激に増加するような場合には、制御が間に合わずに、ルータ等の処理限界に達してしまうことがある。尚、閾値を低く設定することにより、その後にトラヒック量等が急激に増加する場合においても、迅速に制御を行うことが可能であるが、閾値が低く設定されることにより、通信制御によって廃棄されるトラヒックが増加し、ネットワークの利用効率が低下してしまうという問題がある。
このような問題を解決して、適切な通信制御によりネットワークの利用効率を向上させる技術として、例えば、特許文献2に記載の技術がある。この技術は、ネットワークに関連する情報を収集し、収集したネットワークに関連する情報に基づいて、ネットワークの将来の状態を予測すると共に、予測したネットワークの将来の状態に基づいて、ネットワークにおける通信を制御するものである。
この技術では、ネットワーク状態の予測は、時系列解析、及び、収集したネットワークに関連する情報の予め用意されたモデルとの比較等により行い、通信制御は、予測結果に応じて、通信経路の切り替え、及び、ネットワーク内の通信ノードにおけるデータの損失率の調整等を行う。
より具体的には、SNMP(Simple Network Management Protocol)、COPS(Common Open Policy Service)等のプロトコルや、他の様々なプロトコルが用いて、ネットワークのトラヒック量や、ネットワークにおけるルータ間の伝送遅延時間、ルータにおけるCPU稼働率等を、ネットワークに関連する情報(ネットワーク関連情報)として収集する。
例えば、SNMPを用いる場合、ネットワーク関連情報を収集する装置が、SNMPマネージャとして機能し、ルータがSNMPエージェントとして機能し、ネットワーク関連情報を収集する装置は、ルータに対して、情報を要求するコマンドであるGet Requestを送信し、このGetRequestを受信したルータは、収集したネットワーク関連情報を、コマンドGetResponseに含ませて、ネットワーク関連情報を収集する装置側に送信する。
このルータからのGetResponseを受信すると、ネットワーク関連情報を収集する装置は、収集したネットワーク関連情報に基づいて、線形予測や非線形予測等、様々な時系列解析の手法を用いて、ネットワークの将来の状態を予測する。
線形予測の一例としては、過去の状態から将来の状態を予測する自己回帰(AR:Auto Recurrence)モデルに基づく予測や、直近の過去の所定個の状態の平均により将来の状態を予測する移動平均(MA:Moving Average)モデルに基づく予測等がある。また、非線形予測の一例としては、カオス理論に基づく予測等がある。
あるいは、ネットワーク状態の予測において、ネットワーク関連情報のモデルとして例えばトラヒック量の変動のモデルを用い、ネットワーク関連情報として収集したトラヒック量の変動と、当該トラヒック量の変動モデルとを比較し、最も近似するモデルを選択し、選択したネットワーク関連情報のモデルにおける将来の状態を、ネットワーク関連情報の将来の状態とすることにより、ネットワークの将来の状態を予測する。
そして、このようにして予測したネットワークの将来の状態が、通信品質の劣化を生じさせるものであるか否かを判定し、通信品質の劣化を生じさせるものである場合には、その通信品質の劣化を防止すべく、通信制御を行う。この通信制御としては、通信経路(例えば、MPLS(Multi Protocol Label Switching)におけるパス)の切り替えや、ルータの内部キューにおけるパケットロス率の引き下げ等がある。
例えば、MPLSのパスを切り替える場合、当該ルータに対して、通信経路に対応するラベルを変更する指示を出し、ルータは、この指示に応じて、受信したパケットに付加するラベルを変更し、その変更されたラベルが吹かされたパケットを次のルータへ転送する。
このような制御処理を行うことにより、特許文献2に記載の技術では、特許文献1に記載の技術のように、閾値を低く設定することにより、その後にトラヒック量等が急激に増加する場合においても、迅速に制御を行うことが可能である一方で、通信制御によって廃棄されるトラヒックが増加し、ネットワークの利用効率が低下してしまうということもなく、適切な通信制御によるネットワークの利用効率の向上を図ることが可能となる。
このような特許文献1,2に記載の技術の他に、例えば、非特許文献1に記載のように、IPネットワーク上に論理的に形成されたオーバーレイネットワーク(オーバーレイNW)側で、当該IPネットワーク(アンダーレイNW)の通信制御を行うことにより、オーバーレイNWの性能向上を図る技術がある。
オーバーレイネットワークとは、例えば非特許文献2においても記載のように、既存のリンクを用いて、その上位層に目的に応じて論理的(仮想的)なリンクを形成し、構成するネットワークである。
このようなオーバーレイネットワークによる通信制御技術の基本的な概念を図5に例示する。図5は、オーバーレイネットワークの構成例を示すブロック図であり、オーバーレイネットワーク(図中「Overlay−NW」と記載)54は複数のオーバーレイノード51,52,53からなり、複数のIPルータ55〜59からなるIPネットワーク(図中「IP−NW」と記載)50上に論理的に形成されている。
このような構成のIPネットワーク50において、xからyに向けて、破線矢印で表わされる経路にトラヒックが流れているとする。また、この経路上には輻輳しているIPルータ59が存在しており、その結果として、x,y間のQoSが低下しているとする。
このとき、オーバーレイノード51,52,53で形成されるオーバーレイネットワーク54を用いて、実線矢印で表される経路(x→オーバーレイノード51→オーバーレイノード52→オーバーレイノード53→y)にトラヒックを迂回させることができれば、上記の輻輳を回避できる。
実際、非特許文献3,4,5,6等では、上述のような迂回経路が実網において多数存在していることを実測に基づいて示している。このような非特許文献3,4,5,6および非特許文献7等において挙げられる従来のオーバーレイ経路の選択技術では、各エンドホストが、その時点で最も通信品質の良いものを選ぶ。
ここで通信品質とは、各オーバーレイ経路における現在までに観測されたスループットや平均遅延時間を指し、この通信品質をオーバーレイ経路ごとに計測することにより、エンドホストは、通信品質の良い経路を選択することができる。
このように、オーバーレイネットワーク(オーバーレイNW)は、アンダーレイNWの制約に縛られずにネットワークトポロジを構築することにより、通信品質の向上を図ることができる。上述の非特許文献1においては、このようなオーバーレイNW側におけるルーチングを最適化する技術、すなわち、オーバーレイNW側において、アンダーレイNW側から当該アンダーレイNWにおけるネットワーク関連情報を収集し、収集したネットワーク関連情報に基づき、当該オーバーレイNWにおけるルーチングを最適化する技術が記載されている。
この非特許文献1における技術は、図2に示すように、オーバーレイNW側におけるアンダーレイルーチング情報収集装置22により、アンダーレイNW側のルーチング装置23から、当該ルーチング装置23が収集して記憶管理しているネットワーク関連情報を収集し、オーバーレイNW側におけるオーバーレイルーチング制御装置21により、アンダーレイルーチング情報収集装置22が収集したネットワーク関連情報に基づき、オーバーレイNW側でのルーチングを制御する。
これに対して、上述の特許文献1,2における技術では、図3に示すように、アンダーレイNW側のみで閉じた構成で、トラヒック予測・制御装置31において、ルーチング装置32からネットワーク関連情報を収集し、収集したネットワーク関連情報に基づき、アンダーレイNWの将来の状態を予測し、予測したネットワークの将来の状態が、通信品質の劣化を生じさせるものである場合には、その通信品質の劣化を防止すべく、ルーチング装置32に対して、例えば、MPLSにおけるパスの切り替えや、ルーチング装置32の内部キューにおけるパケットロス率の引き下げ等の通信制御を行う。
しかし、上述の非特許文献1における技術では、アンダーレイNW側のルーチング装置が収集して記憶管理しているネットワーク関連情報を用いて、オーバーレイNW側でのルーチングを制御するものであり、アンダーレイNW側でのトラヒック制御を行うことができない。
そのため、オーバーレイネットワーク技術に準拠しないアプリケーションを実装したノードに対応できず、準拠・非準拠アプリケーションの混在したネットワークにおいては公平なトラヒック制御を行うことができない。また、オーバーレイNW側にアンダーレイNW側の情報を開示する必要があり、例えばルートジャックなどのサイバーテロに利用される危険性がある。
以下、図を用いて本発明を実施するための最良の形態例を説明する。図1に示すように、本例のトラヒック制御システムは、オーバーレイNW側にコンテンツ情報収集装置1を設け、コンテンツ情報収集装置1で収集したコンテンツ配置情報やコンテンツ要求情報からなるオーバーレイNW情報2を、アンダーレイNW側に設けたトラヒック予測装置3とトラヒック制御装置4に送信する構成となっている。
このようなトラヒック制御システムを構成するコンテンツ情報収集装置1とトラヒック予測装置3およびトラヒック制御装置4は、それぞれ、CPU(Central Processing Unit)や主メモリ等を具備したコンピュータ装置からなり、光ディスク駆動装置等を介してCD−ROM等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みCPUで処理することにより、本発明に係る処理を実行する。
すなわち、プログラムされたコンピュータ処理として、コンテンツ情報収集装置1は、オーバーレイNW側において、当該オーバーレイNW上の通信品質状態の判別に用いるオーバーレイNW情報2を収集して図示していない記憶装置に格納すると共に、収集したオーバーレイNW情報2を、アンダーレイNW側のトラヒック予測装置3およびトラヒック制御装置4に送出し、トラヒック予測装置3は、コンテンツ情報収集装置1から受け取ったオーバーレイNW情報2を用いて、当該アンダーレイNWにおける通信品質の程度を示す品質情報を生成して、トラヒック制御装置4に送出し、トラヒック制御装置4は、トラヒック予測装置3から受け取った品質情報を用いて、アンダーレイNW側におけるトラヒック制御の要否の判定を行い、要との判定結果の場合に、当該アンダーレイNWに対するトラヒック制御を行う。
本例では、コンテンツ情報収集装置1は、当該オーバーレイNW上の通信品質状態の判別に用いるオーバーレイNW情報2として、例えばコンテンツ配置分布とコンテンツ要求分布を用いる。
そして、図6に示すように、本例では、コンテンツ情報収集装置1は、コンテンツ配置分布情報とコンテンツ要求分布情報をオーバーレイNW情報2として収集し、図示していない記憶装置に格納すると共に(ステップS601)、収集したコンテンツ配置分布情報とコンテンツ要求分布情報を、アンダーレイNW側のトラヒック予測装置3およびトラヒック制御装置4に送出し(ステップS602)、トラヒック予測装置3は、コンテンツ情報収集装置1から受け取ったコンテンツ配置分布情報とコンテンツ要求分布情報を用いて、当該アンダーレイNWにおける通信量の予測値を算出し(ステップS603)、算出した予測値を品質情報としてトラヒック制御装置4に送出し(ステップS604)、
トラヒック制御装置4は、トラヒック予測装置3から受け取った予測値Fと、予め定められた閾値Tとを比較し(ステップS605)、予測値Fが閾値Tを超える場合に(ステップS606)、コンテンツ情報収集装置1から受け取ったコンテンツ配置分布情報とコンテンツ要求分布情報を用いて、アンダーレイNWに対するトラヒック制御を行う(ステップS607)。
以下、図4を用いて、本発明に係るトラヒック制御システムの構成と動作の詳細を説明する。
図4において、40はアンダーレイNW側におけるネットワーク(図中「IX」と記載)で、41はオーバーレイNWであり、アンダーレイNW側におけるネットワーク40とオーバーレイNW41はルータA40a,B40b等を介して接続され、オーバーレイNW41はノード(図中「A01〜B02」と記載)41b〜41e等から構成されている。
オーバーレイNW41側には、図1におけるコンテンツ情報収集装置1と同じコンテンツ情報収集装置41aが設けられており、アンダーレイNW側には、図1におけるトラヒック予測装置3とトラヒック制御装置4と同じトラヒック予測装置43とトラヒック制御装置42が設けられている。
尚、コンテンツ情報収集装置41aは、オーバーレイNW41の1ノードとして振る舞い、オーバーレイNW41の情報を収集する装置であり、制御対象となるオーバーレイNWアプリケーションごとに対応して作成する必要がある。
このコンテンツ情報収集装置41aは、各ノード41b〜41eにおいてどのようなコンテンツが保持されているかを示すコンテンツ配置分布情報や、どの各ノード41b〜41eからコンテンツ要求が発生しているかを示すコンテンツ要求分布情報を収集して記憶装置に格納している。
例えば、コンテンツ情報収集装置41aは、ノード41bやノード41cにアクセスして、当該ノードで保持しているコンテンツ情報や、当該ノードで発生したコンテンツ要求情報を収集し、コンテンツ配置分布情報やコンテンツ要求分布情報を生成して記憶管理する。
コンテンツ情報収集装置41aにおけるコンテンツ配置分布情報の具体的な管理技術として、例えば、各ノードのIPアドレスや各ノードで格納している各コンテンツ情報の識別情報を対応付けたテーブルを生成して用いることでも良い。
また、コンテンツ情報収集装置41aにおけるコンテンツ要求分布情報の具体的な管理技術としても、例えば、各ノードのIPアドレスや各ノードが要求したコンテンツ情報の識別情報と要求日時情報等を対応付けたテーブルを生成して用いることでも良い。
コンテンツ情報収集装置41aは、このようにして収集したコンテンツ配置分布情報とコンテンツ要求分布情報を、トラヒック予測装置43に送信する。
コンテンツ情報収集装置41aからコンテンツ配置分布情報とコンテンツ要求分布情報を受け取ったトラヒック予測装置43は、受け取ったコンテンツ配置分布情報とコンテンツ要求分布情報を用いて、当該アンダーレイNWにおける通信品質の程度を示す品質情報を生成し、トラヒック制御装置42に通知する。
具体的な例として、トラヒック予測装置43は、コンテンツ要求分布情報から各要求を読み出し、読み出した各要求を発生させた各々のノードの位置と各要求に対応してコンテンツを転送した各ノードの位置を、コンテンツ配置分布情報を参照して特定し、各要求に対して、要求元のノード位置から最も遠い位置にあるノードからのコンテンツ転送が行われた回数を累積して最悪値として求め、また、要求元のノード位置から、当該要求に合致する全てのノードの位置までの距離を累積して期待値として求め、これらの最悪値と期待値を、ネットワークにおける通信品質状態を予測する値(品質情報)として、トラヒック制御装置42に送信する。
トラヒック予測装置43から予測値を受け取ったトラヒック制御装置42は、受け取った予測値が予め定められた閾値を超える場合に、コンテンツ情報収集装置41aから送信されるオーバーレイNW情報(コンテンツ要求分布情報、コンテンツ配置分布情報)を利用して、アンダーレイNWに対するトラヒック制御を行う。
具体的な例として、トラヒック制御装置42は、ルータA40aに対して、転送するコンテンツのサイズが予め定められたサイズより大きければ、制御対象として特定させ、例えば、ルータA40aに対して、従来技術としての通信制御、すなわち、通信経路(MPLSにおけるパス)の切り替えや、ルータの内部キューにおけるパケットロス率の引き下げ等を指示する。
尚、この際、トラヒック制御装置42は、転送トラヒックが当該アンダーレイNW内に収まるように制御する。例えば、ルータA40aを代理応答装置(キャッシュサーバまたはプロキシサーバ)として機能させる。あるいは、ルータA40aを、NAPT(Network Address Port Translation:パケットのIPアドレスやポート番号を変換する技術)を行うパケット転送装置として機能させる。
以下、このようなコンテンツ情報収集装置41aとトラヒック制御装置42およびトラヒック予測装置43のそれぞれの動作についてさらに詳細に説明する。
まず、コンテンツ情報収集装置41aの動作について、以下に説明する。
本例においては、オーバーレイNW41上のコンテンツ配置分布情報、および、コンテンツ要求分布情報は、いずれも対象とするオーバーレイNW41に設置するプローブ装置としてのコンテンツ情報収集装置41aにおいて収集する。
コンテンツ情報集装置41aにおいては、収集したコンテンツ配置分布情報とコンテンツ要求分布情報をデータベースで管理する。コンテンツ配置分布情報とコンテンツ要求分布情報の内容として、各コンテンツを保持するノードの位置を、当該ノードのIPアドレスで表し、各コンテンツは、コンテンツのキー情報で表す。
コンテンツ配置分布情報とコンテンツ要求分布情報は、例えばSQLのテーブルで記述すると下記のように例示される。
create table content_infomation
(
obstime timestamp,
ip inet,
speed int,
port int,
fsize int,
fhash text,
fname text
);
ここでinet,はPostgreSQLのIPアドレス型を意味し、portは転送を行うためのポート番号、speedは各ノードの転送速度上限値をそれぞれ意味する。
ファイルのキーとしてサイズfsize、ハッシュ値fhash、ファイル名fnameをこの例では用いている。また、obstimeはコンテンツの存在を確認した、あるいは、コンテンツに対する要求を確認した時刻である。
より抽象的には、コンテンツ配置分布情報は、(コンテンツのキー情報,コンテンツにアクセスするためのネットワーク情報)を並べたテーブルとなり、また、コンテンツ要求情報は、(コンテンツのキー情報,コンテンツを要求しているノードのネットワーク情報)を並べたテーブルとなる。
コンテンツ情報収集装置41aは、コンテンツ情報を保持しているノードが定期的に広告しているもの、あるいは要求に応じて各ノードが保持しているコンテンツ情報を広告しているものを、コンテンツ配置分布情報として収集して集積し、トラヒック予測装置43に送出する。
以下、トラヒック予測装置43の動作について説明する。
トラヒック予測装置43は、各コンテンツ情報分布情報とコンテンツ要求分布情報を用いて、要求元と転送元(広告側)における距離を求めるが、このように各コンテンツ「遠い位置」などに関連する距離を算出する際には、ネットワークにおけるルーチング情報を用いる。
具体的には、BGP(Border Gateway Prptocol)におけるAS(Autonomous System)単位のルーチング情報を使用する。すなわち、トラヒック予測装置43は、BGPのフルルート情報を取得する機能も有するものである。
尚、本例のトラヒック制御は、AS単位でのトラヒックを対象とし、AS内でコンテンツの転送ができる場合には、できるだけAS内でコンテンツの転送を行うように制御する。図4の例では、ASは、(ルータA40a,ノード41b,ノード41c)や、(ルータB40b,ノード41d,ノード41e)のような単位となる。
従って、トラヒック予測装置43が算出するトラヒック値としては、図4におけるネットワーク40を通過するトラヒック、すなわち、ルータA40aとルータB40bの間のトラヒックであり、トラヒック制御装置42では、このルータA40aとルータB40bの間のトラヒックを削減するよう、可能な限り、ノード41bとノード41c、あるいは、ノード41dとノード41eの間で転送が行われるように制御する。
以下、本例では、制御対象は例えば図4の(ルータA40a,ノード41b,ノード41c)のプロバイダと仮定して説明する。
具体的には、まず、トラヒック予測装置43は、コンテンツ情報収集装置41aがデータベース管理しているコンテンツ配置情報テーブルにおける情報を用いて、(ルータA40a,ノード41b,ノード41c)のプロバイダ(AS)内で発生した、あるコンテンツcに対する転送要求rについて、転送要求rを出しているノードのアドレスacから、アドレスacのノードが属するASのAS番号scを求める。
また、トラヒック予測装置43は、コンテンツcを保持しているノードのアドレス集合B(c)={bi,c}を、コンテンツ情報収集装置41aが管理しているコンテンツ配置情報テーブルより求め、各bi,cが属するASのAS番号si,cを求める。
このようにして、ある1つのコンテンツ転送要求rについて、要求されたコンテンツを保持するノード集合の各要素についてAS番号を求める。
トラヒック予測装置43においては、この作業処理を、ある時点で発生している全ての転送要求について行い、その上で、本システムを設置するプロバイダと外部プロバイダとの間で発生するトラヒックの最悪値もしくは期待値の予測値を算出する。
ここで、最悪値とは、全ての転送要求について、各々の転送要求を満たすノードの内、最もAS間ホップ数の多いノードからの転送を行ったとした場合に発生すると予測されるAS間トラヒック(例えば、ルータA40aとネットワーク40の間のトラヒック)であり、期待値とは、各々の転送要求を満たすノードとの通信で発生すると予測されるトラヒックを平均したものとなる。トラヒック帯域の算出には、コンテンツ配置情報に含まれるspeedの値を用いる。
尚、図4では、本システムを設置すると仮定した(ルータA40a,ノード41b,ノード41c)のAS(プロバイダ)の他には1つのAS(ルータB40b,ノード41d,ノード41e)しかないが、一般には、あるASから別のASの経路は複数ある場合が想定される。
そして、あるコンテンツ転送要求に関して、要求されたコンテンツを持つコンテンツ保持ノードも一般には複数あると想定されるため、例えば、制御対象とするAS間リンクがルータA40aとネットワーク40の間のリンクと仮定すると、転送元のノードとしてルータA40aとネットワーク40間のリンクを通らないノードを選択した場合には、このリンクを通るトラヒックとしてはカウントされない。
各コンテンツ要求ノードが、どのコンテンツ保持ノードから転送を行うかについては情報がないため、最も遠い位置との通信が起きた場合を最悪値とし、あた、転送が起きやすいASを想定して算出する場合には重みを付けた期待値として算出する。
ただし、この重みについては任意に設定するものであり、「全てのコンテンツ保持ノードから均等な確率で転送がおきる」として、重みを付けずに平均をとるという操作でも構わない。
次に、このようにしてトラヒック予測装置43が算出した予測値に基づくトラヒック制御装置42の動作に関して説明する。
トラヒック制御装置42において、閾値の設定は、本システムを設置するASの管理者が設定するもので、例えば、ユーザとのSLA(Service Level Agreement:通信サービスの事業者が、利用者にサービスの品質を保証するものであり、回線の最低通信速度やネットワーク内の平均遅延時間、利用不能時間の上限などを含)などに基づいて任意に設定することを想定する。
最悪値と期待値のいずれを用いるかについても管理者が選択するものとなる。例えば、AS間のリンク(ルータA40a−ネットワーク40)について、リンクの帯域幅に対して、予測されるトラヒックの帯域がどの程度になったら制御を行うか、を管理者がSLAの管理ポリシーに基づいて設定する。
トラヒック制御装置42において、制御を行う場合、本システムを設置するAS内からの全てのコンテンツ転送要求について制御を行うのではなく、例えば、コンテンツのファイルサイズを基準として、一定のファイルサイズを超えるコンテンツの転送要求のみを制御対象とする、というように、制御対象を制限する。
すなわち、ファイルサイズの大きい転送要求については長時間のトラヒックを発生すると予想されることから、管理者が任意に設定する閾値を超える転送要求を制御対象とする。
尚、コンテンツ情報に含まれるspeedの情報を用いて、要求される帯域の大きなものを制御の対象とすることでも良い。
次に、トラヒック制御装置42における、転送トラヒックがAS内に収まるように制御する技術について説明する。
例えば、図4において、ノード41bがあるコンテンツの転送要求を出しており、当該コンテンツの保持ノードがノード41c、およびノード41dであったとする。この場合、コンテンツの転送がノード41dから起きれば、AS間トラヒック(ルータA40a−ネットワーク40−ルータB40b)が発生するが、コンテンツの転送がノード41cから起きれば当該トラヒックは発生しない。
しかし、一般に、要求を出したノード41bが、ノード41cとノード41dのどちらから、要求したコンテンツの転送が行われるかは予測できない。
これに対処するため、本例では、トラヒック制御装置42は、ルータA40aを代理応答装置(キャッシュサーバまたはプロキシサーバ)として機能させる。代理応答装置は、ノード41bがノード41dとの間で転送を行おうとしたとき、ノード41bに対してノード41dの代理として応答するものである。
ノード41bが要求しているコンテンツはノード41cも保持しているため、代理応答装置は、ノード41cから当該コンテンツを取得して、ノード41bに対しては自身がノード41dであるかのように応答する。
これにより、ノード41bとノード41dの間に発生するはずのトラヒックが、実際には、ノード41bと代理応答装置(ルータA40a)、および、代理応答装置(ルータA40a)とノード41c、の間の各トラヒックに置き換えられ、結果として、ルータA40a−ネットワーク40−ルータB40bに発生するはずであったトラヒックが削減され、AS内にトラヒックが収まることになる。
あるいは、このような代理応答装置機能の代わりに、ルータA40aを、NAPT(Network Address Port Translation:パケットのIPアドレスやポート番号を変換する技術)を実行するパケット転送装置として機能させることでも良い。
ルータA40aは、パケット転送装置としてNAPTを行う場合、ノード41bからノード41dへのパケットの宛先を、ノード41cの宛先に書き換え、また、ノード41cからのノード41bへの応答パケットについては、ノード41dからノード41bへのパケットとなるように送信元を書き換える。尚、この機能は、通常のルータにも実装されているものが多数あり、それを利用して良いが、専用の装置を設けることでも良い。
以下、本例のシステムと前述した先行文献(非特許文献1,特許文献2)との相違点を説明する。
非特許文献1の技術では、オーバーレイNWにおいて上述した制御を行う場合、オーバーレイNW側のアプリケーションが、アンダーレイNW情報を収集する機能を具備し、収集した情報に基づいて転送先を選択する機能を同時にもっている必要がある。これに対して、本例のシステムのように、アンダーレイNW側で対処する技術であれば、既に使用されているオーバーレイNWのアプリケーションや、これから出現するアプリケーションで非特許文献1に記載の技術を取り入れていないアプリケーションについても制御が可能となる。
具体的には、オーバーレイNWを構成するアプリケーションは複数の種類(例えば、Winny、BitTorrent、Napsterなど多数)があるが、非特許文献1に記載の技術を搭載したものはまだない。ここで、非特許文献1に記載の技術に準拠しないアプリケーションとは、各個に独立のオーバーレイNWを構成するものと考えて良い。
また、非特許文献1に記載の技術と本例のシステムのいずれも、アンダーレイNW側の使用帯域を削減し、結果としてファイル転送などの効率を上げる技術であるが、非特許文献1に記載の技術の場合、当該技術を搭載したアプリケーションは帯域削減の恩恵を受けることができ、結果として効率の良いファイル転送などのサービスを受けることができるのに対して、非搭載アプリケーションについてはその限りではない。
これに対して、本例のシステムでは、オーバーレイNW側での対処や改修を必要としないため、アンダーレイ側での対応によって、どのアプリケーションにおいても転送効率の改善を提供することができる可能性がある。
また、アンダーレイNWの情報は、プロバイダ内外のルーチング情報や使用帯域情報のことであり、例えば、OSPF(Open Shortest Path First)などのルーチングテーブルや、SNMPによるルータのインターフェース情報(リンク利用率=使用帯域などの情報)を指し、これらの情報は、商用プロバイダでは一般に外部に知られることが好まれない情報であるが、非特許文献1に記載の技術の場合、これらのネットワークトポロジやリンク利用率などのアンダーレイNW情報を必要となり、好ましくないが、本例のシステムでは、これらの情報の収集は不要である。
また、本例のシステムを設置したプロバイダにおいて、AS間トラヒック(図4におけるルータA40a−ネットワーク40−ルータB40b)をルータA40aにおいて測定し、特許文献2の技術による予測との一致を比較することで、本例のシステムの予測精度の高さが確認できる。
特許文献2の技術では、トラヒック発生の源であるオーバーレイNW側の情報をもたず、時系列に基づく予測であるために現象論的な予測となるが、本例のシステムでは、オーバーレイNW側のコンテンツ配置・要求情報から原因論的に予測するため、精度の向上が期待される。
時系列的に予測する従来技術(上述の特許文献2の技術)では、過去の輻輳継続時間、輻輳発生前後のトラヒック量、輻輳立ち上がり時のトラヒック量微分値、などの情報に基づき、時系列フィルタなどを用いて統計的、経験的に予測するのに対し、本例においては、輻輳を発生させる原因であるコンテンツの要求分布情報と配置分布情報を直接に知ることによって原因論的、因果論的に予測するため、個別の輻輳現象に対して、より精度の高い予測を行うことが期待される。
以上、図を用いて説明したように、本例では、コンテンツ情報収集装置1,41aにより、オーバーレイNW41側において、オーバーレイNW41上のコンテンツ配置分布とコンテンツ要求分布からなるオーバーレイNW情報2を収集して記憶装置に格納すると共に、収集したオーバーレイNW情報2を、アンダーレイNW側のトラヒック予測装置3,43およびトラヒック制御装置4,42に送出し、トラヒック予測装置3,43は、コンテンツ情報収集装置1,41aから受け取ったオーバーレイNW情報2を用いて、アンダーレイNWにおける通信品質の程度を示す品質情報として、アンダーレイNWにおける通信量の予測値を算出し、この予測値をトラヒック制御装置4,42に送出し、トラヒック制御装置4,42は、品質情報としての予測値が予め定められた閾値を超える場合に、アンダーレイNW側におけるトラヒック制御が必要であると判断し、当該アンダーレイNWに対するトラヒック制御を行う。
このように、本例では、オーバーレイNW41におけるネットワーク関連情報に基づきアンダーレイNWにおけるトラヒック制御を行っており、オーバーレイネットワーク技術に準拠しないアプリケーションを実装したノードに関してもトラヒック制御を行うことができ、準拠・非準拠アプリケーションの混在したネットワークにおいても公平なトラヒック制御を行うことができ、また、オーバーレイNW41におけるネットワーク関連情報に基づきアンダーレイNWにおけるトラヒック状態の予測を行っており、予測精度の向上を図ることができ、さらに、オーバーレイNW41側にアンダーレイNW側の情報を開示する必要がないので例えばルートジャックなどのサイバーテロに利用される危険性もなく、その結果、アンダーレイNW41側でのトラヒック制御を、高精度に且つ効率よく、さらに安全に行うことが可能となり、オーバーレイNWの性能向上を図ることができる。すなわち、アンダーレイNWのトポロジや輻輳などの要因を考慮せずにオーバーレイNWが構築されるのに起因する、オーバーレイNWの性能低下、ならびにアンダーレイNWの輻輳や設備投資の高騰を抑えることが可能となる。
尚、本発明は、図を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、トラヒック制御装置42とトラヒック予測装置43を、それぞれ異なるコンピュータ装置上で構成しているが、トラヒック制御装置42とトラヒック予測装置43を、同じコンピュータ装置上に構成することでも良い。
尚、本例では、コンテンツ配置分布とコンテンツ要求分布に、IPアドレスを含むとしているが、IPアドレスとポートを含むことでも良い。例えば固定ポートを用いる場合は、IPアドレスのみの参照でノード特定が可能である。
また、コンテンツ情報収集装置41aやトラヒック制御装置42、トラヒック予測装置43におけるコンピュータ処理用のプログラムに関しても、本例では、光ディスクを記録媒体として用いているが、FD(Flexible Disk)等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。