説明

トラヒック誘導ネットワーク装置、トラヒック誘導方法、及びプログラム

【課題】複数のASが接続された通信ネットワークにおいて、コンテンツへのトラヒック誘導を動的に行って、ネットワーク全体のリソースの有効利用を図る。
【解決手段】トラヒック誘導ネットワーク装置において、各コンテンツサーバ毎のアドレス情報、自ASとの間のAS経路情報、及び重み付け情報を含む誘導情報を格納する手段と、自ASのコンテンツサーバのサーバ負荷情報、及び自ASにおける隣接ASとの間のリンク負荷情報を他のトラヒック誘導ネットワーク装置に送信するとともに、他のトラヒック誘導ネットワーク装置から他のASにおけるサーバ負荷情報及びリンク負荷情報を受信する手段と、得られたサーバ負荷情報及びリンク負荷情報から報酬Rを算出する手段と、報酬Rに基づき、各コンテンツサーバのサーバ負荷及び前記通信ネットワークにおけるリンク負荷が平準化するように、前記誘導情報における重み付け情報を変更する手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数キャリアで構成されるIP網上のCDN(Contents Delivery Network)サービスにおいて、コンテンツサーバ及びネットワークリンクの負荷を軽減するように、ユーザとサーバ間のトラヒックフローを誘導するための技術に関するものである。
【背景技術】
【0002】
近年、Webサーバ上のコンテンツをエンドユーザに効率的に配信するCDNサービスが普及してきている。CDNサービスでは、多数のユーザに大量のコンテンツを配信するため、コンテンツサーバの負荷軽減対策が必要である。
【0003】
コンテンツサーバの負荷軽減のためには、コンテンツサーバサイトにおいて、コンテンツの複数の複製を用意し、複数コンテンツサーバ間でロードバランスをとる局所的な解決方法がある。また、コンテンツサーバの負荷軽減のために、プロキシサーバと呼ばれる代理サーバを用意し、そこにアクセス頻度の高いコンテンツを複製し、このプロキシサーバにアクセスをする解決方法もある。これらの方法は、例えば非特許文献1に記載されている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】安井真伸、横川和哉ら「サーバ/インフラを支える技術」、1.3節「Webサーバを冗長化する・・・DNSラウンドロビン」(pp. 18 - 30)、2.1節「リバースプロキシの導入・・・Apacheモジュール」(pp. 42 - 62)、2.2節「キャッシュサーバの導入・・・・Squid, memcached」(pp. 63 - 71)、技術評論社、2008.
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の技術は静的にコンテンツサーバの負荷軽減を行う技術であり、この技術では、ネットワークやサーバの随時変化する状態に適応して、トラヒックフローを動的に適応させることはできない。
【0006】
また、従来の技術は、サーバサイト側における局所最適な方法であり、コンテンツ提供者側から、ユーザアクセスに関する動的な制御を行うことは困難である。すなわち、例えば、網側でユーザからのアクセスを、契約やサーバ、ネットワーク状況に応じて変更させることなどは困難であった。
【0007】
また、従来技術では、ネットワークリソースを全体として、有効に使えない状況が生じる場合があった。例えば、ユーザの近くにコンテンツが存在するにもかかわらず、遠方のコンテンツサイトへコンテンツ取得のアクセスがなされ、このトラヒックを通過させるためのリソースを用意しなければいけないなどの場合である。
【0008】
本発明は上記の点に鑑みてなされたものであり、ユーザ端末とコンテンツサーバ間のトラヒック誘導を動的に行って、ネットワーク全体のリソースの有効利用を図ることを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記の課題を解決するために、本発明は、複数のASが接続されて構成された通信ネットワークにおいて、コンテンツを要求するユーザ端末を、当該コンテンツを提供する複数のコンテンツサーバの中から特定のコンテンツサーバに誘導する機能を備えるトラヒック誘導ネットワーク装置であって、前記トラヒック誘導ネットワーク装置が属する自ASのAS境界ルータからAS経路情報を取得する経路情報取得手段と、前記コンテンツを提供する各コンテンツサーバ毎のアドレス情報、自ASとの間のAS経路情報、及び重み付け情報を含み、前記誘導の際に参照される誘導情報を格納する誘導情報格納手段と、前記自ASのコンテンツサーバからサーバ負荷情報を取得し、当該自ASのAS境界ルータから隣接ASとの間のリンク負荷情報を取得して、取得したサーバ負荷情報及びリンク負荷情報を他のトラヒック誘導ネットワーク装置に送信するとともに、他のトラヒック誘導ネットワーク装置から他のASにおけるサーバ負荷情報及びリンク負荷情報を受信する負荷情報取得手段と、ある時点において前記負荷情報取得手段で得られたサーバ負荷情報及びリンク負荷情報から報酬Rを算出する報酬算出手段と、前記報酬算出手段で算出された報酬Rに基づき、各コンテンツサーバのサーバ負荷及び前記通信ネットワークにおけるリンク負荷が平準化するように、前記誘導情報における重み付け情報を変更する誘導情報設定手段とを備えたことを特徴とするトラヒック誘導ネットワーク装置として構成される。
【0010】
前記報酬算出手段は、
Nをコンテンツサーバの数とし、Liをサーバ負荷情報に基づくパラメータとした場合に、サーバ負荷公平性指標FIsを、
【0011】
【数1】

により算出し、
Mをリンクの数とし、Xiをリンク負荷情報に基づくパラメータとした場合に、リンク負荷公平性指標FInを、
【0012】
【数2】

により算出し、
a、bをそれぞれFIs及びFInの重み付けを示すパラメータとし、0≦a≦2、0≦b≦2、a+b = 2を満たすとした場合に、前記報酬Rを、R = {2 - a((FIs) - 1)2 - b((FIn) - 1)2} / 2 により算出するように構成してもよい。
【0013】
また、前記誘導情報設定手段は、前記報酬Rが予め定めた報酬設定値より大きい場合に、前記重み付け情報を変更せず、前記報酬Rが前記報酬設定値より小さい場合に、前記重み付け情報を変更するようにしてもよい。
【0014】
また、前記誘導情報設定手段は、前記重み付け情報を変更する場合において、自ASから所定の近さにあるコンテンツサーバのうち、負荷の高いコンテンツサーバの重みを所定の値だけ下げ、下げた分の重みを他のコンテンツサーバに分配するように構成してもよい。
【0015】
また、本発明は、前記トラヒック誘導ネットワーク装置が実行する処理に対応したトラヒック誘導方法として構成することもできる。更に、本発明は、コンピュータを、前記トラヒック誘導ネットワーク装置における各手段として機能させるためのプログラムとして構成することもできる。
【発明の効果】
【0016】
本発明によれば、ユーザ端末とコンテンツサーバ間のトラヒック誘導を動的に行って、ネットワーク全体のリソースの有効利用を図ることを可能とする技術を提供することが可能となる。
【図面の簡単な説明】
【0017】
【図1】本発明の実施の形態におけるネットワークの構成図である。
【図2】トラヒック誘導ネットワーク装置100の機能構成図である。
【図3】トラヒック誘導ネットワーク装置100の機能構成をソフトウェアのプロトコルスタックイメージで表した図である。
【図4】トラヒック誘導ネットワーク装置100の動作例を説明するためのフローチャートである。
【図5】装置間の通信シーケンスを示す図である。
【図6】AS経路情報を取得する処理を説明するための図である。
【図7】AS経路情報から得られる情報の例を示す図である。
【図8】トラヒック誘導ネットワーク装置間での情報交換の例を示す図である。
【図9】情報交換により取得されるコンテンツサーバ毎の負荷情報の例を示す図である。
【図10】トラヒック誘導ネットワーク装置間での情報交換の例を示す図である。
【図11】情報交換により取得される隣接AS間のネットワークのリソース状況の例を示す図である。
【図12】隣接AS間のリンク使用率情報の例を示す図である。
【図13】負荷(リンク使用率)とパラメータとの間の関係を説明するための図である。
【図14】パラメータを用いたテーブル情報の例を示す図である。
【図15】FIs、FIn、Rの関係を表す3次元グラフである。
【図16】アクセス制御を説明するためのシーケンス図である。
【図17】コンテンツ1に関する誘導情報の例を示す図である。
【発明を実施するための形態】
【0018】
以下、図面とともに本発明の実施の形態の一例を説明する。
【0019】
(システム構成)
図1に、本発明の実施の形態におけるネットワークの構成図を示す。図1に示すように、本実施の形態に係るネットワークは、5つのAS(自律分散システム:Autonomous System)(10,20,30,40,50)が接続されたIPネットワークである。
【0020】
本実施の形態では、同じコンテンツを提供するコンテンツサーバが、複数AS上に存在することを想定している。また、コンテンツの複製を所有する代理サーバ(これも"コンテンツサーバ"と呼ぶことにする)も同様に複数AS上に存在することを想定している。
【0021】
図1に示すネットワークの例では、AS10上にコンテンツサーバ102が存在し、AS20上にコンテンツサーバ201が存在し、AS30上にコンテンツサーバ301が存在し、AS40上にコンテンツサーバ401及び402が存在し、AS50上にコンテンツサーバ501及び502が存在する。また、図1には、各コンテンツサーバのIPアドレスが示されている。これらのコンテンツサーバのうち、コンテンツサーバ201、301、401、501の4つがコンテンツ1を提供しており、コンテンツサーバ102、402、502の3つがコンテンツ2を提供している。
【0022】
各ASには、コンテンツを要求し、取得するユーザ端末(110、210、310、410、510)が存在する。また、AS間は、各ASのAS境界ルータ(ASBR:AS Border Router)(120、130、220、320、420、520)により、図1に示すように接続されている。
【0023】
また、各ASには、コンテンツのトラヒックフローの誘導を行うためのトラヒック誘導ネットワーク装置(100、200、300、400、500)が備えられている。以下、トラヒック誘導ネットワーク装置についてより詳細に説明する。なお、各ASにおけるトラヒック誘導ネットワーク装置の機能は基本的に同じなので、ここでは、AS10のトラヒック誘導ネットワーク装置100に着目して説明する。
【0024】
図2に、トラヒック誘導ネットワーク装置100の機能構成図を示す。
【0025】
図2に示すように、トラヒック誘導ネットワーク装置100は、データ通信機能部101、ルーティング機能部102、ネットワーク装置間通信・リソース状況取得機能部103、アクセス制御部104、報酬算出機能部105、誘導情報設定機能部106、経路情報格納部107、設定情報格納部108、サーバ情報・リソース状況格納部109、誘導情報格納部111を備える。
【0026】
データ通信機能部101は、IPネットワークを介してデータ通信を行うための機能部である。データ通信機能部101には、トラヒック誘導ネットワーク装置100のIPアドレス、サブネットマスク、デフォルトルート、DNS情報等が設定されている。
【0027】
ルーティング機能部102は、通常のルータが有するルーティング処理と同様のルーティング処理を行う機能部である。本実施の形態において、ルーティング機能部102は、自身が属するAS内のAS境界ルータ120、130とiBGP(Internal BGP)で接続を行うことにより、自ASから他のASに至るAS経路情報を取得し、それを経路情報格納部107に格納する機能を有する。
【0028】
ネットワーク装置間通信・リソース状況取得機能部103は、他のトラヒック誘導ネットワーク装置との間で定期的に通信を行って、ASに存在するコンテンツ名、コンテンツサーバのPrefix(IP address, Subnet mask)情報、コンテンツサーバのメモリ、CPUなどのスペック情報、コンテンツサーバの負荷状況、隣接するAS間のネットワークのリソース状況などを交換するとともに、他のトラヒック誘導ネットワーク装置から受信する他のASのコンテンツサーバやリンクに関する情報をサーバ情報・リソース状況格納部109に格納する機能を有する。
【0029】
報酬算出機能部105は、サーバ情報・リソース状況格納部109に格納された情報に基づいて、後述する「報酬」を算出する機能を有する。誘導情報設定機能部106は、ユーザからのコンテンツ要求アクセスのコンテンツサーバへの振り分けを行うために使用する誘導情報を設定及び変更する機能を有する。アクセス制御部104は、誘導情報格納部111に格納された誘導情報に基づいて、ユーザ端末からコンテンツサーバへのアクセスのアクセス制御を行う機能部である。
【0030】
経路情報格納部107には、ルーティング機能部102により取得される経路情報が格納される。設定情報格納部108には、自ASで管理しているコンテンツサーバリスト(IP address, Subnet mask, 提供コンテンツ)、Neighbor情報、報酬のしきい値(報酬設定値)、報酬計算方法、コンテンツサーバの重みづけルール(アサインルール)、変更時のルール、Neighborに対して提供する情報についてのフィルタ情報、など、マニュアルで設定される設定情報が格納される。
【0031】
サーバ情報・リソース状況格納部109には、トラヒック誘導ネットワーク装置間の通信で取得される情報、自ASのコンテンツサーバから取得するリソース状況(負荷情報)、AS境界ルータから取得する隣接AS間のリンクのリソース状況等が格納される。
【0032】
誘導情報格納部111には、誘導情報設定機能部106により作成及び変更される誘導情報が格納される。
【0033】
トラヒック誘導ネットワーク装置100は、例えば、CPUやメモリ、ハードディスク、及び通信インターフェース等を備えたコンピュータに、各機能部に対応するプログラムを実行させることにより実現可能である。当該プログラムは、可搬メモリ等のコンピュータ読み取り可能な記録媒体に記録して配布してもよいし、ネットワーク上のサーバからダウンロードすることもできる。上記コンピュータは、ルータやスイッチ等の通信装置内の機能であってもよい。また、トラヒック誘導ネットワーク装置100を、各機能部の処理機能を埋め込んだハードウェアロジック回路を用いて実現することも可能である。
【0034】
トラヒック誘導ネットワーク装置100の機能構成をソフトウェアのプロトコルスタックイメージで表したものを図3に示す。
【0035】
図3において、TCP/UDPプロトコル層、IPプロトコル層、及びインターフェースが、図2のデータ通信機能部101に対応し、ルーティングプロトコル層がルーティング機能部102に対応し、ネットワーク装置間通信プロトコル層が、ネットワーク装置間通信・リソース状況取得機能部103におけるネットワーク装置間通信機能に対応し、トラヒックナビゲーションアプリケーション層が、ネットワーク装置間通信・リソース状況取得機能部103におけるリソース状況取得機能、アクセス制御部104、報酬算出機能部105、誘導情報設定機能部106に対応する。
【0036】
(システムの動作)
次に、本実施の形態に係るトラヒック誘導ネットワーク装置100の動作例を図4のフローチャートに沿って説明する。また、図5のシーケンス図や、その他の図も適宜参照して説明する。なお、以下では、AS10のトラヒック誘導ネットワーク装置100に着目して動作を説明するが、他のASにおける各トラヒック誘導ネットワーク装置も、各ASにおいて同様の動作を行っている。
【0037】
<ステップ1:情報設定>
まず、事前の設定として、自ASに存在するコンテンツ名、コンテンツサーバのPrefix(IP address, Subnet mask)情報、コンテンツサーバのメモリ、CPUなどのスペック情報、その他の情報をトラヒック誘導ネットワーク装置100の設定情報格納部108に格納する。これらの情報は、管理者によりマニュアルで入力される情報である。
【0038】
<ステップ2:経路情報取得>
トラヒック誘導ネットワーク装置100のルーティング機能部102が、AS10のAS境界ルータ120、130とiBGP接続することで、自ASと他のASとの間のAS経路情報を取得し、経路情報格納部107に格納する。この処理は、iBGPに従って、例えば経路情報の変更がある都度行われる。
【0039】
ステップ2の処理は、図5のシーケンス図におけるステップ11、ステップ12の処理に相当する。
【0040】
ステップ2での処理内容を図6を参照してより具体的に説明する。図6に示すように、異なるASのAS境界ルータ間でeBGPで経路情報の交換がなされる。また、各トラヒック誘導ネットワーク装置は、自ASのAS境界ルータとiBGPで通信を行って、自ASと他のASとの間のAS経路情報を取得する。
【0041】
このようにして取得したAS経路情報から、後述するようにステップ3で取得されるコンテンツに関する情報を利用することにより、各コンテンツ毎に、コンテンツサーバのアドレス情報と、自ASと他ASとの間の経路情報(ASパスリスト)を取得することができる。図7は、ステップ2のBGP動作で取得できるプレフィックスと経路情報(ASパスリスト)の一例を示す図である。
【0042】
<ステップ3:リソース状況取得>
トラヒック誘導ネットワーク装置100のネットワーク装置間通信・リソース状況取得機能部103は、自ASのコンテンツサーバ102から当該コンテンツサーバの負荷状況を取得するとともに、自ASのAS境界ルータ120、130から、隣接するASとの間のネットワークのリソース状況(本実施形態では、リンク負荷情報としてのリンク使用率)を取得する。これらの情報の取得は、以下のトラヒック誘導ネットワーク装置間通信での情報交換とは独立に定期的に行ってもよいし、トラヒック誘導ネットワーク装置間通信による情報交換を行う際に行うこととしてもよい。
【0043】
また、ネットワーク装置間通信・リソース状況取得機能部103は、他の各ASに存在するトラヒック誘導ネットワーク装置との間で通信を行い、コンテンツ名、コンテンツサーバのIPアドレス、コンテンツサーバの負荷状況、隣接するASとの間のネットワークのリソース状況等の情報交換を行う。つまり、トラヒック誘導ネットワーク装置100は、自ASにおけるこれらの情報を他のトラヒック誘導ネットワーク装置に送り、他のトラヒック誘導ネットワーク装置から、他のASにおける上記情報を受信する。上記の処理により得られた自ASと他ASにおけるコンテンツ毎のコンテンツサーバのリソース状況(負荷状況)、及び自ASと他ASにおけるネットワークのリソースの状況(リンク使用率)はリソース状況格納部109に格納される。
【0044】
上記のネットワーク装置間通信の相手となるトラヒック誘導ネットワーク装置は、Neighbor(隣接装置)として、トラヒック誘導ネットワーク装置100における設定項目として、マニュアルで設定する。なお、他のトラヒック誘導ネットワーク装置と交換する情報の内容については、通信を行う際に、マニュアルで設定したフィルタリング機能により、通信相手により伝える内容を変えるなど、管理者による政策を反映することができる。つまり、この情報は、あるプロバイダにはアクセス可能とするが、そうでない場合はアクセスできないよう、アドレス情報を隠ぺいするというような処理を行うことができる。
【0045】
上記ステップ3でのネットワーク装置間通信は、図5のシーケンス図におけるステップ13、14に対応する。図8は、ステップ3におけるコンテンツサーバに関する情報交換を示した図である。図8に示すように、各コンテンツサーバは、自分が属するASのトラヒック誘導ネットワーク装置に対してサーバ負荷情報を報告するとともに、トラヒック誘導ネットワーク装置間でこれらの情報の交換がなされる。
【0046】
なお、トラヒック誘導ネットワーク装置間の情報交換は、基本的にフルメッシュになるが、iBGPのRouter reflector技術と同様に、階層化を持たせることでスケーラブルにすることが可能である。
【0047】
図9に、上記の処理の結果、トラヒック誘導ネットワーク装置100のサーバ情報・リソース状況格納部109に格納される情報の一例を示す。図9に示す情報は、コンテンツ1に関する情報であり、コンテンツ1を提供するコンテンツサーバのアドレスと、その負荷情報が示されている。コンテンツ毎にこのような負荷情報が得られる。
【0048】
図10は、ステップ3における、隣接AS間のネットワークのリソース状況に関する情報交換を示した図である。ここでの例では、ネットワークのリソース状況として、隣接AS境界ルータのインターフェース間のリンク使用率情報を用いている。図10に示すように、各トラヒック誘導ネットワーク装置は、自分が属するASのAS境界ルータからの報告により、隣接AS間リンクの使用率情報を取得するとともに、トラヒック誘導ネットワーク装置間でこれらの情報の交換を行う。
【0049】
図11に、上記の処理により、トラヒック誘導ネットワーク装置100のサーバ情報・リソース状況格納部109に格納される情報の例を示す。図11に示すように、トラヒック誘導ネットワーク装置が備えられている他AS毎に、隣接ASとの間のリンク使用率情報が格納される。ここで得られる情報から、各AS間リンク(図12(a)参照)のリンク使用率情報(図12(b)参照)を得る。なお、各AS境界ルータにおける測定のタイミングにずれがあり、また、上り下りの使用率の違いがあることから、同じリンクについて、複数の異なる情報が得られる場合は、最大値を採用することとする。
【0050】
上記ステップ1〜ステップ3の動作により、トラヒック誘導ネットワーク装置100は、「どこに」、「どのコンテンツが」存在し、これを提供できる「サーバ・ネットワークリソースの状況がどのようなものか」の情報を取得、維持管理することができる。
【0051】
<ステップ4:報酬算出>
次に、トラヒック誘導ネットワーク装置100の報酬算出部105は、ステップ3で得られたリソース状況の情報を用いて、対象とするコンテンツに関する"報酬"を算出する。ここで、報酬とは、各サーバ負荷及び各リンク使用率が平準化された場合に、大きくなる値であり、この報酬により、「どのコンテンツへのアクセス、トラヒックを、どのASのコンテンツサーバに誘導すると、ネットワーク全体に散らばるサーバ負荷を平準化できるか(つまり、各サーバの負荷を公平にする)、NW全体の負荷を削減できるか」という効果を示すことができる。
【0052】
本実施の形態では、ある時刻tで得られたリソース状況の情報に基づく報酬Rを、下記の報酬関数(R(FIs, FIn) at t)を用いて算出する。
R(FIs, FIn) at t = {2 - a((FIs at t) - 1)2 - b((FIn at t) - 1)2} / 2 (1)
上記の式において、FIsは以下で説明するサーバ負荷公平性指標(Server Load Fairness Index)であり、FInは以下で説明するリンク負荷公平性指標(Link Load Fairness Index)であり、a,bはそれぞれFIs及びFInの重みづけを示すパラメータであり、0≦a≦2、0≦b≦2、a+b = 2を満たす。
【0053】
時刻tにおけるサーバ負荷公平性指標FIsは、時刻tにおけるサーバ負荷情報(対象とするコンテンツに関するサーバ負荷情報)から、下記の式により算出される値である。
【0054】
【数3】

上記の式(2)で、Nは計算の対象となるコンテンツサーバの数である。例えば、図9に示す例の場合、コンテンツ1に関するコンテンツサーバの数は4である。
【0055】
Liは、サーバ負荷を示すパラメータである。一般に、サーバ負荷やリンク利用率は、ある値を超えると急激に転送時のキューイング遅延などの影響が大きくなり(例:M/M/1モデルの遅延時間特性)、逆にそれ以下であれば、遅延等に与える影響が少ないことから、ここで用いるパラメータLiとしては、この特徴を示すような、例えば、図13に示すような特性(サーバ負荷に関して予め定める特定)を有するパラメータを用いる。すなわち、図9に示すように収集されたコンテンツサーバの負荷の各値から、図13に示すような関係を用いて各パラメータLiを求め、上記の式(2)で使用する。
【0056】
式(2)で求められるFIsは、各サーバ負荷が平準化されれば、1に近くなり、その逆であれば0に近くなる性質を有する。パラメータLiを用いたサーバ負荷のテーブルを図14(a)に示す。
【0057】
時刻tにおけるリンク負荷公平性指標FInは、時刻tにおけるリンク使用率情報から、下記の式により算出される値である。
【0058】
【数4】

上記の式(3)で、Mは計算の対象となるリンクの数である。例えば、図12に示す例の場合、リンクの数は5である。
【0059】
Xiは、リンク使用率を示すパラメータである。サーバ負荷の場合と同様に、このパラメータはリンク使用率そのものではなく、図13に示すような特性(リンク使用率に関して予め定める特定)を有するパラメータを用いる。すなわち、図12(b)に示すように収集されたリンク使用率の各値から、図13に示すような関係を用いてパラメータXiを求め、上記の式(3)で使用する。パラメータXiを用いたリンク使用率のテーブルを図14(b)に示す。
【0060】
式(3)で求められるFInは、各リンクの使用率が平準化されれば、1に近くなり、その逆であれば0に近くなる性質を有する。
【0061】
式(1)で求められる報酬Rは、0≦R≦1を満たす。図15に、FIs、FIn、Rの関係を表す3次元グラフを示す。図15に示すように、サーバ負荷及びリンク使用率がともに平準化されると、報酬は1に近くなり、その逆であれば0に近くなる。
【0062】
ステップ4で算出された報酬情報は記憶手段に格納され、ステップ5での判定処理に用いられる。
【0063】
<ステップ5:誘導情報変更判定>
次に、誘導情報設定機能部106は、ステップ4で算出した時刻tにおける報酬Rと、予め規定した報酬設定値とを比較することにより、誘導情報を変更するか否かの判定を行う。
【0064】
ここでの処理内容を詳細に説明する前に、トラヒック誘導ネットワーク装置100のアクセス制御部104が実行するアクセス制御、及び誘導情報について説明する。
【0065】
まず、アクセス制御について、図16のシーケンス図を参照して説明する。ここでは、AS10のユーザ端末110がコンテンツ1を要求する場合について説明する。本実施の形態において、AS10のユーザ端末110は、トラヒック誘導ネットワーク装置100にアクセスすることにより、コンテンツ要求(認証と誘導の依頼でもある)を行う(ステップ21)。
【0066】
トラヒック誘導ネットワーク装置100のアクセス制御部110は、認証機能を有しており、ユーザ端末110の認証を行って、認証成功であれば、誘導情報格納部111に格納されているコンテンツ1の誘導情報(具体的には、コンテンツサーバの重み付け)に従って、ユーザ端末110がアクセスすべきコンテンツサーバのアドレス情報を決定し、その情報をユーザ端末110に返す(ステップ22)。
【0067】
そして、ユーザ端末110は、上記プレフィックス情報に対応するネットワークにあるコンテンツサーバ301にアクセスしてコンテンツ1を要求し(ステップ23)、コンテンツサーバ301は、コンテンツ1をユーザ端末110に送信する(ステップ24)。
【0068】
誘導情報設定機能部106により作成及び変更され、誘導情報格納部111に格納されるコンテンツ1の誘導情報の例を図17に示す。図17に示すように、本実施の形態における誘導情報は、コンテンツサーバのプレフィックス情報と、AS経路情報(トラヒック誘導ネットワーク装置100が属する自ASと、コンテンツサーバが属するASとの間の経路を示すASパスリスト)、及び、重み付け情報とからなる。コンテンツサーバのプレフィックス情報と、AS経路情報は、経路情報取得部102により取得される経路情報から、誘導情報設定機能部106により抽出された情報である。
【0069】
重み付け情報は、ユーザ端末110を誘導する候補となるコンテンツサーバのうち、どのコンテンツサーバへ誘導するかを決定するために用いる値である。例えば、アクセス制御部104は、同一コンテンツ(ここではコンテンツ1)に対する複数のアクセス要求を、各コンテンツサーバの重みの大きさの割合に従って、各コンテンツサーバに割り付ける。すなわち、各コンテンツサーバに割り付ける要求数の割合が、各コンテンツサーバの重みの割合になるように割り付けを行う。
【0070】
重み付け情報は、予め定めたコンテンツサーバのアサインルールに基づき、誘導情報設定機能部106により決定され、誘導情報として誘導情報格納部111に格納される。コンテンツサーバのアサインルールとは、ネットワークの負荷を削減するために、自AS、または、管理者によって設定された自ASより近いAS、負荷の小さいコンテンツサーバへ誘導するよう、候補となるコンテンツサーバを選択する際の重み付けを決定するルールである。
【0071】
例えば、ネットワーク負荷の削減を図るための基本ルールとして、要求全体のX%を、自ASのコンテンツサーバを含むASリスト長がYより短いコンテンツサーバ間で均等割し、残り100- X% を残りの候補サーバ間で割りつけるというルールを定め、このような割り付けに対応した重み付けが決定される。X、Yなどは、管理者の設定パラメータとし、ルールの情報として設定情報格納部108に格納しておく。
【0072】
ステップ5の誘導ルール変更判定において、誘導情報設定機能部106は、今回算出した報酬が、予め規定した報酬設定値以上であれば現在の誘導情報を維持し(つまり、誘導情報を変更せずに)、ステップ3に戻る。また、負荷が十分に低い状態であれば、管理者の判断で、現在のアサインルールを基本ルールに戻すこともできる。
【0073】
一方、今回算出した報酬が、予め規定した報酬設定値より小さければ、誘導情報における重み付けを変更する(ステップ5−1)。例えば、自ASに最も近いコンテンツサーバのうち、負荷の高いコンテンツサーバに対応する重みをΔ下げ、それ以外のコンテンツサーバに対し、上記コンテンツサーバで下げた重みΔ分を均等割りして加えることにより、重みを変更する。Δは、管理者によるパラメータ値である。また、自ASに最も近いコンテンツサーバとは、例えば、自ASのコンテンツサーバを含むASリスト長がYより短いコンテンツサーバとしてよい。また、負荷の高いコンテンツサーバとは、例えば、負荷の最も高いサーバ、最も負荷の高いサーバからK番目までの負荷のサーバ、もしくは、負荷が予め定めた値以上のサーバといったように定義してよい。また、下げた分の重みを他のサーバに分配する方法は、上記に限られるわけではなく、他の方法を用いてもよい。
【0074】
上記の変更ルールによる重み付けの変更により、ユーザが所属するASにより近い、現状負荷の低いコンテンツサーバへアクセスが誘導され易くなる。
【0075】
このような変更ルールは、アサインルールの1つとして、管理者により予め定められ、設定情報格納部108に格納されるものである。もちろん、運用の状況に応じて、マニュアルで変更ルールを修正することも可能である。また、判断の基準となる報酬設定値も、運用の状況に応じてマニュアルで修正することが可能である。
【0076】
ステップ5での判定がYesになった後、もしくは、ステップ5−1の重み付け変更処理の後、ステップ3からの処理が繰り返される。
【0077】
(実施の形態の効果)
本実施の形態で説明した技術により、各ASに分散して存在するトラヒック誘導ネットワーク装置が、自律的な情報交換動作により、どこに、どのコンテンツが存在し、これを提供できるサーバの負荷状況、至るネットワークのリソース状況を把握することができ、これら情報からリソースを有効利用しているかどうかの指数である報酬を計算し、その値に合わせて、トラヒックを動的に誘導することが可能となる。
【0078】
すなわち、本実施の形態で説明した技術を用いることにより、ユーザが所属するASにより近い、現状負荷の低いコンテンツサーバへトラヒックが誘導される。このことにより、ネットワーク全体のネットワークリソースの有効利用が図れる。また、定期的な情報交換により、コンテンツサーバ、ネットワークの障害や負荷状況の変化に対して、トラヒック誘導を適切に行うことが可能となり、障害の影響を軽減できるという効果もある。また、トラヒック誘導ネットワーク装置間で情報交換するコンテンツ情報をフィルタリングするなど、政策的なトラヒック誘導も可能になる。
【産業上の利用可能性】
【0079】
本発明は、複数キャリアで構成されるIP網上のCDN(Contents Delivery Network)サービスに適用できる。
【0080】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【符号の説明】
【0081】
10、20、30、40、50 AS
201、301、401、501、102、402、502 コンテンツサーバ
110、210、310、410、510 ユーザ端末
120、130、220、320、420、520 AS境界ルータ
100、200、300、400、500 トラヒック誘導ネットワーク装置
101 データ通信機能部
102 ルーティング機能部
103 ネットワーク装置間通信・リソース状況取得機能部
104 アクセス制御部
105 報酬算出機能部
106 誘導情報設定機能部
107 経路情報格納部
108 設定情報格納部
109 サーバ情報・リソース状況格納部
111 誘導情報格納部

【特許請求の範囲】
【請求項1】
複数のASが接続されて構成された通信ネットワークにおいて、コンテンツを要求するユーザ端末を、当該コンテンツを提供する複数のコンテンツサーバの中から特定のコンテンツサーバに誘導する機能を備えるトラヒック誘導ネットワーク装置であって、
前記トラヒック誘導ネットワーク装置が属する自ASのAS境界ルータからAS経路情報を取得する経路情報取得手段と、
前記コンテンツを提供する各コンテンツサーバ毎のアドレス情報、自ASとの間のAS経路情報、及び重み付け情報を含み、前記誘導の際に参照される誘導情報を格納する誘導情報格納手段と、
前記自ASのコンテンツサーバからサーバ負荷情報を取得し、当該自ASのAS境界ルータから隣接ASとの間のリンク負荷情報を取得して、取得したサーバ負荷情報及びリンク負荷情報を他のトラヒック誘導ネットワーク装置に送信するとともに、他のトラヒック誘導ネットワーク装置から他のASにおけるサーバ負荷情報及びリンク負荷情報を受信する負荷情報取得手段と、
ある時点において前記負荷情報取得手段で得られたサーバ負荷情報及びリンク負荷情報から報酬Rを算出する報酬算出手段と、
前記報酬算出手段で算出された報酬Rに基づき、各コンテンツサーバのサーバ負荷及び前記通信ネットワークにおけるリンク負荷が平準化するように、前記誘導情報における重み付け情報を変更する誘導情報設定手段と
を備えたことを特徴とするトラヒック誘導ネットワーク装置。
【請求項2】
前記報酬算出手段は、
Nをコンテンツサーバの数とし、Liをサーバ負荷情報に基づくパラメータとした場合に、サーバ負荷公平性指標FIsを、
【数1】

により算出し、
Mをリンクの数とし、Xiをリンク負荷情報に基づくパラメータとした場合に、リンク負荷公平性指標FInを、
【数2】

により算出し、
a、bをそれぞれFIs及びFInの重み付けを示すパラメータとし、0≦a≦2、0≦b≦2、a+b = 2を満たすとした場合に、前記報酬Rを、
R = {2 - a((FIs) - 1)2 - b((FIn) - 1)2} / 2
により算出する
ことを特徴とする請求項1に記載のトラヒック誘導ネットワーク装置。
【請求項3】
前記誘導情報設定手段は、前記報酬Rが予め定めた報酬設定値より大きい場合に、前記重み付け情報を変更せず、前記報酬Rが前記報酬設定値より小さい場合に、前記重み付け情報を変更する
ことを特徴とする請求項1又は2に記載のトラヒック誘導ネットワーク装置。
【請求項4】
前記誘導情報設定手段は、前記重み付け情報を変更する場合において、自ASから所定の近さにあるコンテンツサーバのうち、負荷の高いコンテンツサーバの重みを所定の値だけ下げ、下げた分の重みを他のコンテンツサーバに分配する
ことを特徴とする請求項1ないし3のうちいずれか1項に記載のトラヒック誘導ネットワーク装置。
【請求項5】
複数のASが接続されて構成された通信ネットワークにおいて、コンテンツを要求するユーザ端末を、当該コンテンツを提供する複数のコンテンツサーバの中から特定のコンテンツサーバに誘導する機能を備えるトラヒック誘導ネットワーク装置が実行するトラヒック誘導方法であって、
前記トラヒック誘導ネットワーク装置は、前記コンテンツを提供する各コンテンツサーバ毎のアドレス情報、自ASとの間のAS経路情報、及び重み付け情報を含み、前記誘導の際に参照される誘導情報を格納する誘導情報格納手段を備えており、
前記自ASのコンテンツサーバからサーバ負荷情報を取得し、当該自ASのAS境界ルータから隣接ASとの間のリンク負荷情報を取得して、取得したサーバ負荷情報及びリンク負荷情報を他のトラヒック誘導ネットワーク装置に送信するとともに、他のトラヒック誘導ネットワーク装置から他のASにおけるサーバ負荷情報及びリンク負荷情報を受信する負荷情報取得ステップと、
ある時点において前記負荷情報取得ステップで得られたサーバ負荷情報及びリンク負荷情報から報酬Rを算出する報酬算出ステップと、
前記報酬算出ステップで算出された報酬Rに基づき、各コンテンツサーバのサーバ負荷及び前記通信ネットワークにおけるリンク負荷が平準化するように、前記誘導情報における重み付け情報を変更する誘導情報設定ステップと
を備えたことを特徴とするトラヒック誘導方法。
【請求項6】
前記報酬算出ステップにおいて、
Nをコンテンツサーバの数とし、Liを前記サーバ負荷情報に基づくパラメータとした場合に、サーバ負荷公平性指標FIsを、
【数3】

により算出し、
Mをリンクの数とし、Xiを前記リンク負荷情報に基づくパラメータとした場合に、リンク負荷公平性指標FInを、
【数4】

により算出し、
a、bをそれぞれFIs及びFInの重み付けを示すパラメータとし、0≦a≦2、0≦b≦2、a+b = 2を満たすとした場合に、前記報酬Rを、
R = {2 - a((FIs) - 1)2 - b((FIn) - 1)2} / 2
により算出する
ことを特徴とする請求項5に記載のトラヒック誘導方法。
【請求項7】
前記誘導情報設定ステップにおいて、前記報酬Rが予め定めた報酬設定値より大きい場合に、前記重み付け情報を変更せず、前記報酬Rが前記報酬設定値より小さい場合に、前記重み付け情報を変更する
ことを特徴とする請求項5又は6に記載のトラヒック誘導方法。
【請求項8】
前記誘導情報設定ステップにおいて、前記重み付け情報を変更する場合に、自ASから所定の近さにあるコンテンツサーバのうち、負荷の高いコンテンツサーバの重みを所定の値だけ下げ、下げた分の重みを他のコンテンツサーバに分配する
ことを特徴とする請求項5ないし7のうちいずれか1項に記載のトラヒック誘導方法。
【請求項9】
コンピュータを、請求項1ないし4のうちいずれか1項に記載のトラヒック誘導ネットワーク装置における各手段として機能させるためのプログラム。

【図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

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−39323(P2012−39323A)
【公開日】平成24年2月23日(2012.2.23)
【国際特許分類】
【出願番号】特願2010−176738(P2010−176738)
【出願日】平成22年8月5日(2010.8.5)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【出願人】(504157024)国立大学法人東北大学 (2,297)
【Fターム(参考)】