次に本発明の実施の形態について図面を参照して詳細に説明する。
[第1の実施の形態]
図1が、本発明の第1の実施の形態を示している。Web サーバS1,S2 は、それぞれサブネットN2,N3 内に存在し、様々なWeb コンテンツ情報を保持する。サブネットN1,N4 には、Web サーバS1,S2 へのアクセスを行う端末T1〜T3が存在する。また、ネットワークの負荷および経路情報を参照するQoS 経路参照キャッシュサーバC101〜C103もネットワーク上に配置されている。QoS 経路参照キャッシュサーバC101〜C103は、端末T1〜T3や他のキャッシュサーバ(QoS 経路キャッシュサーバでも、図示を省略した従来のキャッシュサーバでも良い) からアクセスのあった、Web サーバS1,S2 上のさまざまなコンテンツのコピーを保持している上、互いに接続しているリンクとルータの名前の対と、各リンクの帯域と、各リンクの残余帯域とを含むQoS 経路情報を得るための構成を有している。このQoS 経路情報は、ルータR100〜R104上で各リンクの帯域,空き帯域などの情報を収集するプロセスを動作させ、そのプロセスと通信することによって収集しても良いし、或いは、QoS 経路情報をやりとりするQSSPF 等の経路制御プロトコルを各ルータR100〜R104上で動作させることによってネットワークからQoS 経路情報を集め、キャッシュサーバは近隣のルータからQoS 経路情報を得るという構成でも良い。ルータR100〜R104は、リンクL0〜L5を用いて、サブネットN1,N2,N3,N4 を接続するネットワークを構成している。また、ルータR100〜R104は、ルーティングテーブルに基づいてルーティング処理を行っている。
端末(ここではT1とする) が、Web サーバ(ここではS1とする) 内のコンテンツを取得する場合、或るQoS 経路参照キャッシュサーバ(ここではC101とする)が、その仲介をする。この時の動作は、従来のキャッシュサーバと同様である。先ず、QoS 経路参照キャッシュサーバC101は、アクセス要求のあったWeb サーバS1のコンテンツ情報をC101自身が保持しているかどうか調べる。保持していない場合は、C102,C103等の他のQoS 経路参照キャッシュサーバへそのコンテンツを所持しているか問い合わせ、所持しているキャッシュサーバから該当コンテンツを取得するか、或いは該当コンテンツを元々保持していたオリジナルWeb サーバS1から該当コンテンツ情報を取得し、端末T1へコンテンツ情報を受け渡す。この時、同時に、C101内の記憶装置へ該当コンテンツを保持しても良い。保持している場合には、該当コンテンツを、端末T1へ受け渡す。なお、該当コンテンツを端末T1へ受け渡す場合に、オリジナルWeb サーバS1へコンテンツの最終更新日時を問い合わせ、保持しているコンテンツが、オリジナルWeb サーバS1での最終更新日時より古い場合には、オリジナルWeb サーバS1のコンテンツをQoS 経路参照キャッシュサーバC101が再取得することもある(更新チェック動作)。
QoS 経路参照キャッシュサーバ(C101,C102,C103 等) は、端末T1〜T3からだけでなく、他のQoS 経路参照キャッシュサーバから、コンテンツ情報を保持しているかどうか問い合わされるが、この場合の動作も、従来のキャッシュサーバの動作と同様である。すなわち、アクセスのあったWeb サーバのコンテンツ情報をQoS 経路参照キャッシュサーバ自身が保持しているかどうか調べる。保持していない場合は、他のQoS 経路参照キャッシュサーバ等へそのコンテンツを所持しているか問い合わせて、所持しているQoS 経路参照キャッシュサーバ等から該当コンテンツを取得するか、或いは、該当コンテンツを元々保持していたオリジナルWeb サーバから該当コンテンツ情報を取得し、問い合わせ元のキャッシュサーバへコンテンツ情報を受け渡す。この時、同時に記憶装置へ該当コンテンツを保持してもよい。保持している場合には、該当コンテンツを受け渡す。更新チェック動作を行ってもよい。また、キャッシュサーバの有効性を高めるための、(1) 自動キャッシュ更新動作,(2) リンク先読み動作,(3) キャッシュサーバ連携動作を行う点も従来のキャッシュサーバと同じであるが、これらの動作を行う時に必要な通信に関して、従来は、その時点で設定されている通信相手との経路上のネットワークの輻輳状態のみをみて、上記動作をするかしないかの決定をしていたのに対して、本実施の形態では、QoS 経路情報を利用して経路迂回動作を行うようにしている。
図2が、図1に示したQoS 経路参照キャッシュサーバC101の構成例を示すブロック図である。各要素の説明をする。尚、他のQoS 経路参照キャッシュサーバも同様の構成を有している。
●通信インターフェース部101:キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107 に対して、ネットワークからのデータを送受する。
● QoS経路情報取得部102: QOS経路情報を取得する。
●キャッシュ動作部103:通信インターフェース部101 を介して端末からのWebコンテンツへのアクセス要求を受け取り、記憶装置106 にそのコンテンツが存在するかどうか検索する。存在しない場合は、該当するWeb サーバへのアクセスあるいは他のキャッシュサーバへアクセスを行い、コンテンツを取得して記憶装置106 へ格納すると共に、そのコンテンツを要求元の端末へと送る。存在する場合には、そのコンテンツを端末へと送信する。但し、存在する場合でも、更新チェック動作をする場合は、保持しているコンテンツの最終更新日時が、Web サーバの保持しているコンテンツの最終更新日時より古いかどうかをチェックし、古い場合には、Web サーバのコンテンツを取得し、記憶装置106 へ保持すると同時に、端末へコンテンツ情報を受け渡す。
●リンク先読み制御部104:記憶装置106 に保存されているWeb コンテンツ内に記述されている、関連情報へのリンク( 関連情報が保存されているネットワーク上の場所を示すもの) の中で、記憶装置106 内には存在しないが、これからアクセスがありそうなものを見つけ、そのリンクの指すコンテンツを保持するWeb サーバの位置情報を、経路計算部108 へ通知し、最大残余帯域を得られる経路(最大残余帯域経路)およびその経路上の最小残余帯域(その経路を構成する各リンクの残余帯域の内の、最も小さいもの)の情報を得る。そして、取得した情報に基づいて、上記リンクの指すコンテンツを取得するかどうか判断する。例えば、最小残余帯域が予め決められている値以上であれば、取得すると判断する。或いは、最小残余帯域が予め定められている値以上で、且つ最大残余帯域経路のホップ数が予め定められている値以下であれば、取得すると判断する。取得すると判断した場合には、該当するWeb サーバへのアクセスを、パケットに経路情報を含ませるソースルートオプション等の経路指定手法を用いて行い、該当するコンテンツを取得して記憶装置106 に保存する。
●自動キャッシュ更新部105:記憶装置106 内に保存されいているWeb コンテンツについて、元々そのコンテンツが存在したWeb サーバ上でのコンテンツ内容の更新間隔を調査し、キャッシュ内容を更新する日時を決定する。決定した日時に、経路計算部108 に対して該当するコンテンツを保持しているWeb サーバの位置情報(ネットワークアドレス)を渡し、最大残余帯域を得られる経路および最小残余帯域の情報を得る。そして、該当コンテンツを取得するかどうか判断する。例えば、最小残余帯域が予め定められている値以上であれば、取得すると判断する。或いは、最小残余帯域が予め定められている値以上で、且つ最大残余帯域経路のホップ数が予め定められている値以下であれば、取得すると判断する。取得すると判断した場合には、該当するWeb サーバへのアクセスを、ソースルートオプション等の経路指定手法を用いて行い、該当するコンテンツを取得して記憶装置106 に保存する。
●記憶装置106:様々なWeb コンテンツ,コンテンツサマリーを記憶している。
●キャッシュサーバ連携部107:キャッシュサーバ間で、再分配, 共有, 鮮度比較を行うため、キャッシュサーバ間で、それぞれが持つコンテンツの一覧や、各キャッシュサーバが持つコンテンツのキャッシュとしての有効性を示す情報(コンテンツサマリー)を他のキャッシュサーバと交換し、その情報を基に、必要に応じてコンテンツを交換する処理を行う。このコンテンツやコンテンツサマリーの交換を行う時に、交換を行う相手のキャッシュサーバのネットワークアドレスを経路計算部108 に渡し、最大残余帯域を得られる経路および最小残余帯域の情報を得る。そして、該当コンテンツやコンテンツサマリーを取得するかどうか決定する。取得する場合は、ソースルートオプション等の経路決定指定手法を用いてコンテンツサマリーを取得し、記憶装置106 に保存する。
●経路計算部108: QoS経路情報取得部102 から、各ルータに接続されたリンクとそのリンクに接続されているルータ名の情報および各リンクの空き帯域情報(QoS 経路情報)を得、リンク先読み制御部104,自動キャッシュ更新部105,あるいはキャッシュサーバ連携部107 から指定された、Web サーバへの最大残余帯域を得られる経路および最小残余帯域を計算する。計算には、Dijkstraのアルゴリズムなどを用いる。計算結果として、Web サーバへの経路情報と、最小残余帯域情報とを、要求のあったリンク先読み制御部104,自動キャッシュ更新部105 或いはキャッシュサーバ連携部107 へと返す。
QoS 経路参照キャッシュサーバC101は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K1には、コンピュータをQoS 経路参照キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,経路計算部108 を実現する。
本発明の第1の実施の形態における、自動キャッシュ更新動作,リンク先読み動作およびキャッシュサーバ連携動作を、図3のフローチャートに示す。
自動キャッシュ更新部105 が、自動更新するコンテンツを決定する部分、リンク先読み制御部104 が、リンク先読みを行うコンテンツを決定する部分、そして、キャッシュサーバ連携部107 が、必要とするコンテンツやコンテンツサマリーを決定する部分は、従来のキャッシュサーバのものと変わらないため、ここでは説明しない。ここでは、コンテンツあるいは必要とするコンテンツサマリーが決定してからの動作について説明する。
自動キャッシュ更新部105,リンク先読み制御部104,キャッシュサーバ連携部107 は、自動キャッシュ更新,リンク先読み, 或いはキャッシュサーバ連携を行うコンテンツ, コンテンツサマリーについて、それらを取得するために接続したいWeb サーバ, QoS 経路参照キャッシュサーバのネットワークアドレスを経路計算部108 へ渡し経路計算を要求する(F101)。尚、自動キャッシュ更新部105 は、コンテンツの内容の更新間隔を調査することにより決定したキャッシュの更新日時になった時、上記コンテンツを取得するためのネットワークアドレスを経路計算部108 に渡す。また、リンク先読み制御部104 は、記憶装置106 に保存されているWeb コンテンツ内に記述されている、関連情報へのリンクの中で、記憶装置106 には存在しないが、これからアクセスがありそうなものを見つけた時、そのリンクの指すコンテンツを保持しているWeb サーバのネットワークアドレスを経路計算部108 に渡す。また、キャッシュサーバ連携部107 は、所定時間毎に、取得したいコンテンツ等を保持しているWeb サーバのアドレスを経路計算部108 に渡す。
経路計算部108 では、QoS 経路情報取得部102 から得られた、互いに接続されているルータとリンクの名前の対と、各リンクの帯域と、各リンク残余帯域とを含むQoS 経路情報を基に、渡されたネットワークアドレスへの最大残余帯域経路と、その経路上の最小残余帯域とを求め、要求元(自動キャッシュ更新部105,リンク先読み制御部104,あるいはキャッシュサーバ連携部107)へ渡す(F102)。例えば、経路計算部108 が、QoS 経路情報取得部102 から、図4のような、QoS 経路情報を得ており、要求元からWeb サーバS1のネットワークアドレスを渡された場合、図4のようなQoS 経路情報は、図5のグラフのようになり、DijkstraのSPF(Shortest Path First)アルゴリズムを使えば、最大残余帯域を得られる経路は、R100→L0→R101→L2→R103→L3→R102であることがわかり、最小残余帯域は、4Mbps( 経路上のリンクの最小残余帯域で決まる) となる。
尚、図4に示した経路情報中の項目「ルータアドレス」は、ルータのネットワークアドレスを示し、「リンク」は、次ホップルータとの間に存在するリンクを示し、「次ホップルータアドレス」は、次ホップルータのネットワークアドレスを示し、「接続サブネットアドレス」は、ルータに接続されるサブネット内に存在する端末,Web サーバ,QoS 経路参照キャッシュサーバ等の機器のネットワークアドレスを示している。また、QoS 経路情報取得部102 は、最寄りのルータR100上で動作する経路制御プロトコルから、追加されたルータ, リンクが通知された場合や、残余帯域に変化のあったリンク, 変化後の残余帯域が通知された場合、通知内容に従って、保持しているQoS 経路情報を更新する。
最大残余帯域経路及びその経路における最小残余帯域得た要求元(自動キャッシュ更新部105,リンク先読み制御部104,あるいはキャッシュサーバ連携部107)では、最大残余帯域経路と、最小残余帯域を基に、コンテンツ等の取得を行うかどうかを決定する(F103)。例えば、最小残余帯域が予め決めた値以上であれば、コンテンツ等の取得を行うと決定する。コンテンツ等の取得を行う場合、経路計算部108 から得られた経路情報に従って、ソースルートオプション等の経路指定をしたアクセス手法で、該当コンテンツを取得する(F104)。コンテンツの取得を行わない場合は(F105)、処理終了となる。尚、コンテンツの取得を行わなかった場合には、記憶装置106 に古いコンテンツが保存されたままになるが、端末から上記コンテンツに対するアクセス要求があった時、キャッシュ動作部103 の更新チェック動作により、上記コンテンツは最新のものに置き換えられる。
以上の動作によって、ネットワーク上の空いている帯域を有効活用し、従来のキャッシュサーバでは、自動キャッシュ更新、リンク先読み、キャッシュサーバ連携動作が行えなかった状況においても、本発明のネットワークシステムでは、それらを行うことができる可能性が高まる。
[第2の実施の形態]
本発明の第2の実施の形態は、図6のブロック図に示す通りで、図1に示した第1の実施の形態との相違点は、ルータルータR100〜R104が経路設定可能ルータR200〜R204に置き換えられている点と、QoS 経路参照キャッシュサーバC101〜C103がQoS 経路参照キャッシュサーバC201〜C203に置き換えられている。
経路設定可能ルータR200〜R204は、ルータR100〜R104が備えている機能に加え、MPLSプロトコルなどを動作させることにより実現される機能である、QoS 経路参照キャッシュサーバC201〜C203からの経路情報に従って、ネットワーク上に上記経路情報で指定された経路を設定する機能を有している。尚、上記経路情報は、通信を行う2つのサーバのネットワークアドレスと、通信を識別する識別子(TCP/IP ネットワークではポート番号等) と、キャッシュ経路を構成するルータ名の列とからなる。QoS 経路参照キャッシュサーバC201〜C203は、第1の実施の形態のQoS 経路参照キャッシュサーバC101〜C103が備えている機能に加え、経路設定解除機能を有している。その他の構成は同一である。このため、以下では、第1の実施の形態に対する相違点を主に説明する。
本発明の第2の実施の形態の、QoS 経路参照キャッシュサーバC201の内部構成を図7のブロック図に示す。第1の実施の形態に比べて、経路設定部109 が付加されている。
リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107 は、経路計算部108 によって得られた経路を使用してコンテンツや、コンテンツサマリーを取得するか否かを決定した後、取得する場合には、経路設定部109に上記経路を指示する機能が付加されている。経路設定可能ルータによって経路が設定された後、該当のコンテンツや、コンテンツサマリーを取得し、経路解除を、経路設定部109 に指示する。
経路設定部109 は、リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107 から経路が指示されると、その経路を示す経路情報を最寄りの経路設定可能ルータR200のMPLS等のプロトコルに対して送り、経路設定を要求する。また、リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107 からの指示に従って、最寄りの経路設定可能ルータR200に対して経路解除要求を行う。
QoS 経路参照キャッシュサーバC201は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K2には、コンピュータをQoS 経路参照キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,経路計算部108,経路設定部109 を実現する。
本発明の第2の実施の形態における、自動キャッシュ更新動作,リンク先読み動作, およびキャッシュサーバ連携動作を、図8のフローチャートに示す。
自動キャッシュ更新部105 が、自動更新するコンテンツを決定する部分、リンク先読み制御部104 が、リンク先読みを行うコンテンツを決定する部分、そして、キャッシュサーバ連携部107 が、必要とするコンテンツやコンテンツサマリーを決定する部分は、従来のキャッシュサーバのものと変わらないため、ここでは説明しない。ここでは、コンテンツ或いは必要とするコンテンツサマリーが決定してからの動作について説明する。自動キャッシュ更新, リンク先読み, 或いはキャッシュサーバ連携を行うコンテンツ, コンテンツサマリーについて、それらを取得するために接続したいキャッシュサーバの位置情報(ネットワークアドレス) を経路計算部108 へ渡し経路計算を要求する(F201)。経路計算部では、QoS経路情報取得部102 から得られたQoS 経路情報を基に、渡されたネットワークアドレスへの最大残余帯域経路およびこの経路上の最小残余帯域を求め、要求元(自動キャッシュ更新部105,リンク先読み制御部104,あるいはキャッシュサーバ連携部107)へ渡す(F202)。最大残余帯域経路およびその経路における最小残余帯域を得た要求元では、それらに基づいて、コンテンツの取得を行うかどうかを決定する(F203)。例えば、最大残余帯域があらかじめ決めた値以上であれば、コンテンツあるいはコンテンツサマリーの取得を行うと決定する。或いは、最小残余帯域が予め定められている値以上で、且つ最大残余帯域経路のホップ数が予め定められている値以下であれば、取得すると判断する。取得を行う場合、経路計算部108 から得られた最大残余帯域経路を、経路設定部109 に渡し、経路設定部109は最寄りの経路設定可能ルータR200に上記最大残余帯域経路を示す経路情報を送る。これにより、経路設定可能ルータR200を始めとする経路上の経路設定可能ルータが連携してネットワーク上に経路を設定する(F204)。その後、要求元は、設定された経路を利用して該当コンテンツ或いは該当コンテンツサマリーを取得し、記憶装置106 へ保存する(F205)。その後、経路設定部109 へ指示を出し、設定した経路を解除させる(F206)。コンテンツ取得を行わない場合(F207)は、そのまま処理終了となる。
以上の動作によって、ネットワーク上の空いている帯域を有効活用し、従来のキャッシュサーバでは、自動キャッシュ更新、リンク先読み、キャッシュサーバ連携動作、が行えなかった状況においても、本発明のネットワークシステムでは、それらを行うことができる可能性が高まる。
[第3の実施の形態]
本発明の第3の実施の形態の構成例を図9のブロック図に示す。キャッシュサーバC1〜C3が、QoS 経路参照中継制御キャッシュサーバC301〜C303に置き換わっている点と、中継サーバM301,M302 が存在する点と、ルータR0〜R4がルータR100〜R104(機能はルータR0〜R4と同じ)で置き換わっている点以外は従来のネットワークシステム(図36)と同じである。尚、QoS 経路参照中継制御キャッシュサーバが、中継サーバの役割を同時に果たす構成をとってもよい。つまり、1つの筐体内に、QoS 経路参照中継制御キャッシュサーバの機能部分と、中継サーバの機能部分とを組み込むようにしても良い。更に、1つの筐体内にルータの機能部分と、QoS 経路参照中継キャッシュサーバの機能部分と、中継サーバの機能部分とを組み込み、ルータがQoS 経路参照中継制御キャッシュサーバ,中継サーバの役割を同時に果たす構成をとってもよい。
中継サーバM301,M302 の機能は、QoS 経路参照中継制御キャッシュサーバC401〜C403の指示に従って、Web コンテンツや、コンテンツサマリーを中継して、キャッシュサーバC401〜C403へ配送することである。動作は、C401〜C403の指示に従って、C401〜C403の代わりにWeb コンテンツやコンテンツサマリーを、Web サーバ, QoS 経路参照中継制御キャッシュサーバ, 或いは中継サーバから取得し、指示を出したQoS 経路参照中継制御キャッシュサーバC401〜C403, 或いは他の中継サーバが、それを取りにくるまでの間、記憶しておくことである。中継のタイミングについては、指示をしたQoS 経路参照中継制御キャッシュサーバC401〜C403 が指定する。
QoS 経路参照中継制御キャッシュサーバC401〜C403は、QoS 経路情報を受け取り、その情報を基に、自動キャッシュ更新動作、リンク先読み動作, およびキャッシュサーバ連携動作のためのデータ(Web コンテンツとコンテンツサマリー)を、中継サーバを利用して取得するキャッシュサーバである。図10が、QoS 経路参照中継キャッシュサーバC401の構成例を示すブロック図である。従来のキャッシュサーバの内部構成(図37)と比べて違いのある、QoS 経路情報取得部102,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,中継制御部110 について説明する。
● QoS経路情報取得部102:本発明の第1の実施の形態の図2の、QoS 経路情報取得部と同じ機能を有する。QOS 経路制御プロトコル情報を受け取る。
●中継制御部110:リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107 から、取得したいWeb コンテンツ, コンテンツサマリーを特定するための情報を受け取り、QoS 経路情報取得部102 から受け取ったネットワークの負荷状況を基に、取得するかどうか、また、どの中継サーバを中継して取得するかを決定する。中継サーバを全く経由させない場合もあり得る。取得する場合には、中継を行う全ての中継サーバへ中継の指示を出し、Web コンテンツ、コンテンツサマリーを実際に中継して取得させる。
●リンク先読み制御部104:記憶装置106 に保存されているWeb コンテンツ内に記述されている、関連情報へのリンク( 関連情報が保存されているネットワーク上の場所を示すもの) の中で、記憶装置106 内には存在しないが、これからアクセスがありそうなものを見つけ、そのコンテンツを中継制御部110 に指示して取得する。取得できた場合には、記憶装置106 に記憶する。
●自動キャッシュ更新部105:記憶装置106 内に保存されいているWeb コンテンツについて、元々そのコンテンツが存在したWeb サーバ上のでのコンテンツ内容の更新間隔を調査し、キャッシュ内容を更新する時刻を決定する。決定した時刻に、そのコンテンツを中継制御部110 に指示して取得する。取得できた場合にいは、それを記憶装置106 に記憶する。
●キャッシュサーバ連携部107:キャッシュサーバ間で、再分配, 共有, 鮮度比較を行うため、キャッシュサーバ間で、それぞれが持つコンテンツの一覧や、各キャッシュサーバが持つコンテンツのキャッシュとしての有効性を示す情報(コンテンツサマリー)を他のキャッシュサーバと交換し、その情報を基に、必要に応じてコンテンツを交換する処理を行う。このコンテンツやコンテンツサマリーの交換を行う時には、そのコンテンツ、あるいはコンテンツサマリーを中継制御部110 に指示して取得する。取得できた場合には、記憶装置106 に記憶する。
QoS 経路参照中継制御キャッシュサーバC401は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K3には、コンピュータをQoS 経路参照中継制御キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータを通信インターフェース部101,QoS経路情報取得部102,キャッシュ動作部, リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,中継制御部110 として機能させる。
本発明の第3の実施例の形態における、自動キャッシュ動作,リンク先読み動作及びキャッシュサーバ連携動作を、図11のフローチャートに示す。自動キャッシュ更新部105 が、自動更新するコンテンツを決定する部分, リンク先読み制御部104 が、リンク先読みを行うコンテンツを決定する部分、そして、キャッシュサーバ連携部107 が、必要とするコンテンツやコンテンツサマリーを決定する部分は、従来のキャッシュサーバのものと変わらないため、ここでは説明しない。ここでは、必要とするコンテンツ或いはコンテンツサマリーを決定してからの動作について説明する。
自動キャッシュ更新, リンク先読み, 或いはキャッシュサーバ連携を行うコンテンツ, コンテンツサマリーについて、それらを取得するために接続したいキャッシュサーバ或いはWeb サーバのネットワークアドレスを中継制御部110 に渡す(F401)。中継制御部110 では、予め認識している中継サーバの位置情報及びQoS経路情報取得部102 から得られたQoS 経路情報を基に、渡されたネットワークアドレスからコンテンツを取得すべきか否かを、また、取得するなら、どの経路と中継サーバを用いるかを決定する(F402)。取得する場合(F403)には、中継制御部110 が中継サーバを制御してコンテンツを取得し、要求元(自動キャッシュ更新部105,リンク先読み制御部104 或いはキャッシュサーバ連携部107)へそれを渡す(F404)。コンテンツの取得を行わない場合(F405)は、そのまま終了する。
次に、具体例を挙げて、本実施例の形態の動作を説明する。図9のネットワークシステムにおいて、QoS 経路参照中継制御キャッシュサーバC301が、Web サーバS1から、或るコンテンツαを取得する場合を例にして説明する。この時のWebサーバS1からQoS 経路参照中継制御キャッシュサーバC301までの経路(各ルータ内のルーティングテーブルの内容によって決まる経路)が、S1→R102→L1→R101→L0→R100→C301であり、QoS 経路情報取得部から得られたQoS 経路情報が、図12に示すものあったとする。リンク帯域の90% 以上を使用している時に、輻輳状態であると判断するとすれば、Web サーバS1からQoS 経路参照中継制御キャッシュサーバC301までの経路上にあるリンクL1において、輻輳状態にあると考えられる。このように、経路上に輻輳部分(リンクL1) が存在する場合は、中継制御部110 は、ネットワーク上に存在する中継サーバM301,M302 を使用することにより、輻輳部分を通らない、Web サーバS1からQoS 経路参照中継制御キャッシュサーバC301への経路を設定できるか否かを調べる。今、例えば、ルーティングテーブルの内容によって決まるWeb サーバS1から中継サーバM301への経路がS1→R102→L3→R103→M301であり、中継サーバM301から中継サーバM302への経路がM301→R103→L2→R101→M101であるとすると、中継サーバM301,M302 を使用することにより、輻輳部分(リンクL1) を通らない経路S1→R102→L3→R103→M301→R103→L2→R101→M302→R101→L0→R100→C301を設定できるので、中継サーバM301,M302へ指示を出して、リンク帯域の使用率が90% 以下のリンクのみを使用したS1→R102→L3→R103→M301 (中継) M301→R103→L2→R101→M302 (中継) M302→R101→L0→R100→C301の経路で、コンテンツを中継させる。より具体的には、QoS 経路参照中継制御キャッシュサーバC301は、先ず、中継サーバM301に対して、WebサーバS1からコンテンツαを取得することを指示する。これにより、中継サーバM301は、S1→R102→L3→R103→M301の経路で、Web サーバS1からコンテンツαを取得し、それを保持する。その後、QoS 経路参照中継制御キャッシュサーバC301は、中継サーバM302に対して、中継サーバM301からコンテンツαを取得することを指示する。これにより、中継サーバM302は、中継サーバM301が保持しているコンテンツαを、M301→R103→L2→R101→M302の経路で取得する。その後、QoS 経路参照中継制御キャッシュサーバC301は、中継サーバM302が保持しているコンテンツを、M302→R101→L0→R100→C301の経路で取得する。尚、図12に示した各リンクの内の、リンクL3のリンク負荷が90%であった場合は、ルーティングテーブルの内容によって決まる経路では、コンテンツの転送を行うことができないことになる。このような場合は、例えば、次のような処理を行う。中継制御部110 は、QoS 経路情報に基づいて、輻輳部分を通らないWeb サーバS1からQoS 経路参照中継制御キャッシュサーバC301への経路を求める。その際、中継制御部110は、ルーティングテーブルの内容によって決まる経路は、無視して経路を求める。この場合、輻輳部分を通らない経路として、S1→R102→L5→R104→L4→R103→L2→R101→L0→R100→C301が求まる。その後、中継制御部110 は、使用する中継サーバとして、上記経路上に存在する全ての中継サーバ或いは一部の中継サーバを選択する。今、例えば、経路上に存在する全ての中継サーバを使用するとすると、中継制御部110 は、中継サーバM301,M302 を選択することになる。その後、中継制御部110 は、経路上の最も上流側に位置する中継サーバM301に対して、コンテンツαを、S1→R102→L5→R104→L4→R103の経路で取得することを、ソースルートオプション等の経路指定手法を用いて指示する。この指示に応答して、中継サーバM301は、S1→R102→L5→R104→L4→R103の経路で、コンテンツαをWebサーバS1から取得する。その後、中継サーバM302に対して、コンテンツαを中継サーバM301から、取得することを指示する。これにより、中継サーバM302は、中継サーバM301からコンテンツαを取得する。そして、最後に、QoS 経路参照中継制御キャッシュサーバC301が、中継サーバM302からコンテンツαを取得する。
また、QoS 経路情報取得部102 から得られたQoS 経路情報が、図13に示すものであった場合は、ネットワーク上に存在する中継サーバM301,M302 を使用しても輻輳部分(リンクL0) を含まない経路を設定できないので、中継制御部110 は、ルーティングテーブルの内容によって定まる経路S1→R102→L1→R101→L0→R100→C301上に存在する中継サーバの内の、Web サーバからそこに至るまでの経路に輻輳部分が存在しない中継サーバまで(輻輳部分に最も近い中継サーバでなくても良い。但し、輻輳部分に最も近い中継サーバまで転送させるのが最も効率的である)、コンテンツαを転送させておく。この図13の例の場合は、中継サーバM302に指示を出し、S1→R102→L1→R101→M302の経路で、中継サーバM302までコンテンツを転送しておく。その後、中継制御部110 は、リンクL0の輻輳状態の改善を待って(改善したかどうかも、QoS 経路情報取得部102 から得られる)、M302→R101→L1→R100→C301の経路で、中継サーバM302が保持していたコンテンツαを取得する。
以上の動作によって、ネットワーク上の空いている帯域を有効活用し、従来のキャッシュサーバでは、自動キャッシュ更新、リンク先読み、キャッシュサーバ連携動作が行えなかった状況においても、本発明のネットワークシステムでは、それらを行うことができる可能性が高まる。更に、経路上に存在する途中の中継サーバまで、コンテンツを転送させておき、輻輳状態の改善を待って中継サーバからコンテンツを取得することが可能になるので、輻輳状態の改善を待ってWebサーバからコンテンツを取得する場合に比較して、コンテンツの取得に要する時間を短くすることができる。
[第4の実施の形態]
本発明の第4の実施の形態を図14のブロック図に示す。第3の実施の形態と類似しているが、ルータが、第2の実施の形態で説明した、 MPLS プロトコルなどが動作し、QoS 経路参照中継制御キャッシュサーバ(C401〜C403) が指定する経路情報(通信を行う2つのキャッシュサーバのネットワークアドレスと、通信を識別するポート番号等の識別子と、キャッシュ経路を構成するルータ名の列からなる) を元に必要な経路設定する事が可能な、経路設定可能ルータR200〜R204に置き換えられている。また、QoS 経路参照中継制御キャッシュサーバC401〜C403は、第3の実施の形態で説明した、QoS 経路参照中継制御キャッシュサーバに、経路設定可能ルータR200〜R204に対する経路設定機能を追加したものである。尚、QoS 経路参照中継制御キャッシュサーバが、中継サーバの役割を同時に果たす構成をとってもよい。つまり、1つの筐体内に、QoS 経路参照中継制御キャッシュサーバの機能部分と、中継サーバの機能部分とを組み込むようにしても良い。更に、1つの筐体内に経路設定可能ルータの機能部分と、QoS 経路参照中継キャッシュサーバの機能部分と、中継サーバの機能部分とを組み込み、ルータがQoS 経路参照中継制御キャッシュサーバ,中継サーバの役割を同時に果たす構成をとってもよい。C401〜C403の構成例を図15のブロック図に示す。第3の実施の形態との違いのある、中継制御部110,経路設定部109 の動作について説明する。
●経路制御部109:中継制御部110 の指定する経路情報に従って、経路設定可能ルータのMPLS等のプロトコルに対して、経路指定を要求する。また、中継制御部110 の要求によって経路の解除も行う。
●中継制御部110:第3の実施の形態の中継制御部110 と動作はほぼ同じであるが、QoS 経路情報と、経路設定部109 による経路迂回も考慮した中継制御を行う。
QoS 経路参照中継制御キャッシュサーバC401は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K4には、コンピュータをQoS 経路参照中継制御キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,中継制御部110,経路設定部109 を実現する。
本発明の第4の実施例の形態における、自動キャッシュ動作,リンク先読み動作及びキャッシュサーバ連携動作を、図16のフローチャートに示す。自動キャッシュ更新部105 が、自動更新するコンテンツを決定する部分,リンク先読み制御部104 が、リンク先読みを行うコンテンツを決定する部分、そして、キャッシュサーバ連携部107 が、必要とするコンテンツやコンテンツサマリーを決定する部分は、従来のキャッシュサーバのものと変わらないため、ここでは説明しない。ここでは、必要とするコンテンツ或いはコンテンツサマリーが決定してからの動作を説明する。
自動キャッシュ更新,リンク先読み,或いはキャッシュサーバ連携を行う際に必要となるコンテンツ,コンテンツサマリーについて、それらを取得するために接続したいQoS 経路参照中継制御キャッシュサーバ等のキャッシュサーバ,或いはWeb サーバのネットワークアドレスを中継制御部110 へ渡す(F501)。中継制御部110 では、予め認識している中継サーバの位置情報およびQoS 経路情報取得部102 から得られたQoS 経路情報を基に、渡されたネットワークからコンテンツを取得するか否か、また、取得するなら、どの経路と中継サーバを用いるかを決定する(F502)。取得する場合(F503)には、経路設定部109 へ決定した経路に基づいて経路設定を指示し、経路設定部109 が経路設定を完了した後(F504)、該当コンテンツ或いは該当コンテンツサマリーを、中継制御部110 が中継サーバを制御して取得し、要求元(自動キャッシュ更新部105,リンク先読み制御部104 或いはキャッシュサーバ連携部107)へそれを渡す(F505)。その後、経路設定部109 へ設定した経路の解除を指示し(F506)、処理を終了する。コンテンツの取得を行わない場合(F507)は、直ちに処理終了となる。
次に、具体例を挙げて、本実施の形態の動作を説明する。図14のネットワークシステムにおいて、QoS 経路参照中継制御キャッシュサーバC401が、Web サーバS1から、あるコンテンツαを取得する場合を例に挙げて動作を説明する。この時、ルーティングテーブルの内容によって決まる経路が下記のものであったとする。
S1からC401までの経路: S1→R202→L1→R201→L0→R200→C401S1からM302までの経路: S1→R202→L1→R201→M302S1からM301までの経路: S1→R202→L3→R203→M301M301からM302までの経路: M301→R203→L2→R201→M301
また、QoS 経路情報取得部102 から得られたQoS 経路情報が、図17のようであったとする。リンク帯域の90% 以上を使用している時に、輻輳状態であると判断するとすれば、QoS 経路参照中継制御キャッシュサーバC401からWeb サーバS1までの経路上にあるリンクL1において、輻輳状態にあると考えられる。このような場合、中継制御部110 は、先ず、ルーティングテーブルの内容によって決まる経路上に輻輳部分が存在するか否かを調べる。もし、存在しなければ、その経路を使用してコンテンツ等の転送を行う。しかし、この例の場合、上記経路上に輻輳部分(リンクL1) が存在するので、ネットワーク上に存在する中継サーバM301,M302 及び経路設定可能ルータR200〜R204を使用することにより、輻輳部分(リンクL1,L3)を通らない、Web サーバWeb サーバS1からQoS 経路参照中継制御キャッシュサーバC401への経路を設定できるか否かを調べる。この例の場合は、中継サーバM301,M302 及び経路設定可能ルータR200〜R204を使用することにより、輻輳部分を含まない経路S1→R202→L5→R204→L4→R203→M301→R203→L2→R201→M302→R201→L0→R200→C401を設定できるので、中継制御部110 は、経路設定部109 に対して上記経路を通知する。これにより、経路設定部109 は、最寄りの経路設定可能ルータR200に経路の設定を指示する。その後、中継制御部110 は、中継サーバM301,M302 に対して指示を出し、リンク帯域の使用率が90% 以下のリンクのみを使用したS1→R102→L5→R104→L4→R103→M301 (中継) M301→R103→L2→R101→M302 (中継) M302→R101→L0→R100→C401の経路でコンテンツを中継させる。
また、QoS 経路情報取得部102 から得られたQoS 経路情報が、図18に示すものであった場合は、ネットワーク上に存在する中継サーバM301,M302 を使用しても輻輳部分(リンクL0) を含まない経路を設定できないので、中継制御部110 は、ルーティングテーブルの内容によって定まる経路S1→R202→L1→R201→L0→R200→C401上に存在する中継サーバの内の、Web サーバS1からそこに至るまでの経路に輻輳部分が存在しない中継サーバまで(輻輳部分に最も近い中継サーバでなくても良い。但し、輻輳部分に最も近い中継サーバまで転送させるのが最も効率的である)、コンテンツαを転送させておく。この図18の例の場合は、中継サーバM302に指示を出し、S1→R202→L1→R201→M302の経路で、中継サーバM302までコンテンツαを転送しておく。その後、中継制御部110 は、リンクL0の輻輳状態の改善を待って(改善したかどうかも、QoS 経路情報取得部102 から得られる)、M302→R201→L1→R200→C401の経路で、中継サーバM302が保持していたコンテンツαを取得する。
以上の動作で設定される経路は、経路設定機能のなかった第3の実施の形態では、ソースルートオプション等の経路指定手法を使用しなければ、設定不可能な経路である。以上の動作によって、ネットワーク上の空いている帯域を有効活用し、従来のキャッシュサーバでは、自動キャッシュ更新、リンク先読み、キャッシュサーバ連携動作が行えなかった状況においても、本発明のネットワークシステムでは、それらを行うことができる可能性が高まる。
[第5の実施の形態]
本発明の第5の実施の形態のネットワークシステム構成は、図19のブロック図に示すように、従来の技術で説明したネットワークシステム(図36)のキャッシュサーバC1〜C3が、優先度機能付きキャッシュサーバC501〜C503に置き換わり、ルータR0〜R4が、優先制御可能ルータR300〜R304に置き換わっている。優先制御可能ルータR300〜R304は、パケットに付与された優先度情報を基に、パケットをリンクに送出する際の優先度を制御できるものである。優先度機能付きキャッシュC501〜C504の構成例を図20のブロック図に示す。
●通信インターフェース部501:キャッシュ動作部503,リンク先読み制御部504,自動キャッシュ更新部505,キャッシュサーバ連携部507 に対して、ネットワークからのデータ(パケット)を受け渡す。また、優先度情報付加部508 から優先度情報の付加されたパケットを受け取り、ネットワークへ送信する。また、優先度付与部509 に対してもネットワークとのデータの送受信を行う。
●キャッシュ動作部503:通信インターフェース部501 を介して端末からのWebコンテンツへのアクセス要求を受け取り、記憶装置506 にそのコンテンツが存在するかどうか検索する。存在しない場合、該当するWeb サーバ、或いは、他のキャッシュサーバへアクセスを行い、コンテンツを取得して記憶装置506 へ格納すると共に、そのコンテンツを要求元の端末へと送る。存在する場合には、そのコンテンツを端末へと送信する。但し、存在する場合でも、更新チェック動作をする場合は、保持しているコンテンツの最終更新日時が、Web サーバの保持しているコンテンツの最終更新日時より古いかどうかをチェックし、古い場合には、Web サーバのコンテンツを取得し、記憶装置506 へ保持すると同時に、端末へコンテンツ情報を受け渡す。以上の通信に関して、キャッシュ動作部503 は、通信前に、通信相手のネットワークアドレスを含む優先度の付与要求を優先度付与部509 に受け渡し、優先度付与部509 から付与された優先度と送信パケットとを優先度情報付加部508 に渡す。これにより、優先度情報付加部508 は、送信パケットに上記優先度を示す優先度情報を付加してネットワークへ送信する。
●リンク先読み制御部504:記憶装置506 に保存されているWeb コンテンツ内に記述されている、関連情報へのリンク(関連情報が保存されているネットワーク上の場所を示すもの) の中で、記憶装置506 内には存在しないが、これからアクセスがありそうなものを見つけ、該当するコンテンツを取得して記憶装置506 に保存する。以上の通信に関して、リンク先読み制御部504 は、通信前に、通信相手のネットワークアドレスを含む優先度の付与要求を優先度付与部509 に受け渡し、優先度付与部509 から付与された優先度と送信パケットとを優先度情報付加部508 に渡す。これにより、優先度情報付加部508 は、送信パケットに上記優先度を示す優先度情報を付加してネットワークへ送信する。
●自動キャッシュ更新部505:記憶装置506 内に保存されいているWeb コンテンツについて、元々そのコンテンツが存在したWeb サーバ上でのコンテンツ内容の更新間隔を調査し、キャッシュ内容を更新する時刻を決定する。該当するコンテンツを取得して記憶装置106 に保存する。以上の通信に関して、自動キャッシュ更新部505 は、通信前に、通信相手のネットワークアドレスを含む優先度の付与要求を優先度付与部509 に受け渡し、優先度付与部509 から付与された優先度と送信パケットとを優先度情報付加部508 に渡す。これにより、優先度情報付加部508 は、送信パケットに上記優先度を示す優先度情報を付加してネットワークへ送信する。
●記憶装置506:様々なWeb コンテンツ,コンテンツサマリーを記憶している。
●キャッシュサーバ連携部507:キャッシュサーバ間で、再分配、共有、鮮度比較を行うため、キャッシュサーバ間で、それぞれが持つコンテンツの一覧や、各キャッシュサーバが持つコンテンツのキャッシュとしての有効性を示す情報(コンテンツサマリー)を他のキャッシュサーバと交換し、その情報を基に、必要に応じてコンテンツを交換する処理を行う。以上の通信に関して、通信前に、通信相手のネットワークアドレスを含む優先度の付与要求を優先度付与部509 に受け渡し、優先度付与部509 から付与された優先度と送信パケットとを優先度情報付加部508 に渡す。これにより、優先度情報付加部508 は、送信パケットに上記優先度を示す優先度情報を付加してネットワークへ送信する。
●優先度情報付加部508:キャッシュ動作部503,リンク先読み制御部504,自動キャッシュ更新部505,キャッシュサーバ連携部507 から送信パケット, 優先度が渡されたとき、上記送信パケットに上記優先度を示す優先度情報を付加して通信インターフェース部501 へ受け渡す。
●優先度付与部509:キャッシュ動作部503,リンク先読み制御部504,自動キャッシュ更新部505,キャッシュサーバ連携部507 から優先度の付与要求があった場合、要求元に優先度を付与する。付与する優先度の決定方法は、種々採用できるが、例えば、次の(a) 〜(c) の方法を採用することができる。
(a) 要求元毎に、予め付与する優先度を決めておき、優先度の付与要求があった場合、その要求元に対して予め決められている優先度を付与する。具体的には、リンク先読み制御部504,自動キャッシュ更新部505,キャッシュサーバ連携部507 に付与する優先度を、キャッシュ動作部503 に付与する優先度や、他の通信手段(図示せず)に付与する優先度よりも低くする。(b) 要求元毎に、通信相手先への経路上の負荷に応じた優先度を決めておき(同じ負荷については、リンク先読み制御部503,自動キャッシュ更新部505,キャッシュサーバ連携部507 の優先度が、キャッシュ動作部504 の優先度や、他の通信手段の優先度よりも低くなるように決めておく)、優先度の付与要求があった場合、経路上の負荷を求め、要求元に対して決められている各負荷に応じた優先度の内の、上記求めた負荷に対応する優先度を付与する。具体的には、通信相手先への経路上の負荷が高ければ、優先度を低くし、負荷が低ければ優先度を高くする。尚、この方法の場合には、優先度付与部509 に、QoS 経路情報取得部502 が取得したQoS 経路情報に基づいて、通信相手先への経路上の負荷を求める機能を付加する必要がある。また、要求元は、優先度付与部509 に対して、通信相手先のネットワークアドレスを含む優先度の付与要求を渡す。(c) 通信するコンテンツの内容(動画,テキスト,サイズ等)に応じて、優先度を付与する。具体的には、コンテンツの内容が動画がある場合は、高い優先度を付与し、テキストである場合は低い優先度を付与する。尚、この場合、要求元は、優先度付与部509 に対してコンテンツの内容を含む、優先度の付与要求を渡す。また、要求元は、記憶装置506 に格納されているコンテンツに付与されている拡張子に基づいて、コンテンツの内容を判断する。
また、上記した(a) 〜(c) 以外にも、通信相手が優先度機能付きキャッシュサーバ等の、優先度制御が可能なホストで、優先度付与部509 と同等の機能を持つ場合は、お互いに通信して優先度を決定するようにしても良い。また、通信相手が、パケットをどの優先度に設定して送出してもらいたいかを、指定する場合もある。
●QoS 経路情報取得部502:図2に示したQoS 経路情報取得部102 と同様の機能を有する。
優先度機能付きキャッシュサーバC501は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K5には、コンピュータを優先度機能付きキャッシュサーバとした機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部501,QoS 経路情報取得部502,キャッシュ動作部503,リンク先読み制御部504,自動キャッシュ更新部505,キャッシュサーバ連携部507,優先度情報付加部508,優先度付与部509 を実現する。
本発明の第5の実施の形態における、キャッシュ動作, 自動キャッシュ更新動作、リンク先読み動作, および、キャッシュサーバ連携動作を、図21のフローチャートに示す。各動作での、通信相手の決定については、従来のキャッシュサーバと同様なので、フローチャートには、通信相手決定後の動作がかかれている。
先ず、キャッシュ動作部503,リンク先読み制御部504,自動キャッシュ更新部505,キャッシュサーバ連携部507 の内、取得したいWeb コンテンツ,コンテンツサマリーがあるもの(要求元)が、取得したいコンテンツ,コンテンツサマリーを保持している、Web サーバ或いは優先機能付きキャッシュサーバ等のキャッシュサーバのネットワークアドレスを含む優先度の付与要求を優先度付与部509 へ渡す(F301)。優先度付与部509 では、付与要求に含まれているネットワークアドレスと、要求元がキャッシュ動作部503,リンク先読み制御部504,自動キャッシュ更新部505,キャッシュサーバ連携部507 の内の何れであるかに依存して、付与する優先度を決定する。通信相手が優先度制御部と同等の機能を持っている場合、通信相手と通信して、どの優先度を使用するか、また、相手から到着するパケットの優先度を何に設定してもらいたいか等を指定する場合もある。優先度を決定すると、優先度付与部509 はそれを要求元へ通知する(F302)。要求元では、通知された優先度と、送信パケット(取得を要求するコンテンツを示す情報が含まれている)を優先度情報付加部508 に渡す。優先度情報付加部508 は、送信パケットに上記優先度を示す優先度情報を付加し、通信インターフェース部501 に渡す。これにより、通信相手先との間で、上記優先度情報によって示される優先度でパケットの送受信が行われ、Web コンテンツ、コンテンツサマリーが取得される(F303)。
以上の動作によって、従来のキャッシュサーバでは、自動キャッシュ更新,リンク先読み,キャッシュサーバ連携動作が行えなかった、ネットワークの一部が輻輳を起こしている場合でも、本発明のネットワークシステムでは、自動キャッシュ更新,リンク先読み,キャッシュサーバ連携動作に関する通信の優先度を低くした通信が可能となるため、ネットワークの輻輳状態を悪化させることなくそれらを行うことができる。
[第6の実施の形態]
本発明の第6の実施の形態のネットワークシステム構成は、図22のブロック図に示すように、従来の技術で説明したネットワークシステム(図36)のキャッシュサーバC1〜C3が、優先度機能付きキャッシュサーバC601〜C603に置き換わり、ルータR0〜R4が、優先制御可能ルータR600〜R604に置き換わっている。
優先制御可能ルータR600〜R604は、優先度機能付きキャッシュサーバC601〜C603から通信フロー及び優先度が指示されることにより、ネットワーク上を流れるパケットの内の上記指示された通信フローに関するパケットに、上記指示された優先度を示す優先度情報を付与する機能と、パケットに付与された優先度情報を基に、パケットをリンクに送出する際の優先度を制御する機能を持つ。特定の通信フローは、例えば、パケットヘッダに含まれる、通信を行う両端のホスト(キャッシュサーバやWeb サーバ)のネットワークアドレス情報,通信を識別するポート番号情報,プロトコル情報等の組によって定義され、特定の通信フローの識別は、パケット毎に、これらの情報の組が、予め優先度機能付きキャッシュサーバから与えられた組と一致するかどうか判断することで実現できる。尚、特に指定のないフローに対しては、前もって決められた、ある優先度(デフォルト優先度PDと呼ぶ)で扱われる。
優先度機能付きキャッシュサーバC601の構成例を図22のブロック図に示す。以下に、優先度機能付きキャッシュサーバC601の各構成要素について説明する。尚、他の優先度機能付きキャッシュサーバC602,C603 も同様の構成を有する。
●通信インターフェース部601:キャッシュ動作部603,リンク先読み制御部604,自動キャッシュ更新部605,キャッシュサーバ連携部607 に対して、ネットワークからのデータ(パケット)を受け渡す。
●QoS 経路情報取得部602:図2に示したQoS 経路情報取得部102 と同様の機能を有する。
●キャッシュ動作部603:通信インターフェース部601 を介して端末からのWebコンテンツへのアクセス要求を受け取り、記憶装置606 にそのコンテンツが存在するかどうか検索する。存在しない場合は、該当するWeb サーバ或いは他のキャッシュサーバへアクセスを行い、コンテンツを取得して記憶装置606 へ格納すると共に、そのコンテンツを要求元の端末へと送る。存在する場合には、そのコンテンツを端末へと送信する。但し、存在する場合でも、更新チェック動作をする場合は、保持しているコンテンツの最終更新日時が、Web サーバの保持しているコンテンツの最終更新日時より古いかどうかをチェックし、古い場合には、Webサーバのコンテンツを取得し、記憶装置606 へ保持すると同時に、端末へコンテンツ情報を受け渡す。以上のコンテンツ取得のための通信に関して、キャッシュ動作部603 は、次に述べる「優先度設定動作」を行う。
・「優先度設定動作」通信前に、通信相手のネットワークアドレスを含む優先度の付与要求を優先度付与部609 に受け渡し、優先度付与部609 から(優先度設定ルータアドレス、次ホップルータアドレス、優先度) の組(複数組ある場合もある) の情報を受け取る。そして、通信フロー識別情報と、上記情報に含まれている次ホップルータアドレス及び優先度とを、上記情報に含まれている優先度設定ルータアドレスの示すルータそれぞれへルータ優先度設定部610 を利用して通知し、優先度を設定する。通信終了後、上記の設定を解除する。
●リンク先読み制御部604:記憶装置606 に保存されているWeb コンテンツ内に記述されている関連情報へのリンクの中で、記憶装置606 内には該当するコンテンツは存在しないが、これからアクセスがありそうなものを見つけ、該当するコンテンツを取得して記憶装置606 に保存する。また、以上のコンテンツ取得のための通信に関して、先に定義した「優先度設定動作」も併せて行う。
●自動キャッシュ更新部605:記憶装置606 内に保存されいているWeb コンテンツについて、元々そのコンテンツが存在したWeb サーバ上でのコンテンツ内容の更新間隔を調査し、キャッシュ内容を更新する時刻を決定する。該当するコンテンツを取得して記憶装置606 に保存する。また、上記のコンテンツ取得のための通信に関して、先に定義した「優先度設定動作」も併せて行う。
●記憶装置606:様々なWeb コンテンツ,コンテンツサマリーを記憶している。
●キャッシュサーバ連携部607:キャッシュサーバ間で、再分配,共有,鮮度比較を行うため、キャッシュサーバ間で、それぞれが持つコンテンツの一覧や、各キャッシュサーバが持つコンテンツのキャッシュとしての有効性を示す情報(コンテンツサマリー)を他のキャッシュサーバと交換し、その情報を基に、必要に応じてコンテンツを交換する処理を行う。また、以上のコンテンツサマリーの通信やコンテンツ交換のための通信に関して、先に定義した「優先度設定動作」も併せて行う。
●優先度付与部609:キャッシュ動作部603,リンク先読み制御部604,自動キャッシュ更新部605,キャッシュサーバ連携部607 から優先度の付与要求があった場合、要求元に対して、どのルータに対して、どのような優先度設定をすべきかを通知する。この内容は、 (優先度設定するルータのネットワークアドレス、次ホップルータアドレス、優先度) の組(複数個ありえる) からなる。付与する優先度の決定方法は、種々採用できるが、例えば、(d) 〜(f) の方法を採用することができる。
(d) 要求元毎に、通信相手先へ至る経路上の負荷に対する閾値と、それを越えた場合に設定する優先度とを決めておく。ここで、リンク先読み制御部604,自動キャッシュ更新部605,キャッシュサーバ連携部607 に対する閾値は、キャッシュ動作部603 や図示を省略した他の通信手段に対する閾値よりも低く設定しておく。また、優先度は、閾値を越えた場合の優先度を、閾値を越えなかった場合の優先度よりも低くする。閾値を越えなかった場合の優先度は、例えば、デフォルト優先度PDとすることができ、閾値を越えた場合の優先度は、全ての要求元に対して例えばP(P<PD) とすることができる。また、閾値を越えた場合の優先度を要求元毎に異なるものにすることもできる。この場合は、リンク先読み制御部604,自動キャッシュ更新部605,キャッシュサーバ連携部607 に対する優先度を、キャッシュ動作部603 や図示を省略した他の通信手段に対する優先度よりも低くする。優先度の付与要求があった場合、経路上の各リンク上の負荷を求め、要求元毎に決められている閾値に対し、それを上回る負荷のあるリンクに対しては、対応する優先度を付与する。
例えば、図22において、優先度機能付きキャッシュサーバC601が、Web サーバS1からリンク先読み動作をしようとする場合を考える。
また、この場合の経路は、C601←→R600←(L0)→R601←→R603←→R604←(L5)→R602←→S1であり、例えば、経路上で、R602とR604の間のリンク(L5)およびR601とR600の間のリンク(L0)の負荷が、リンク先読み動作に対してあらかじめ決められた閾値を越えており、閾値を越えた場合の優先度がPであったとする。
優先度付与部609 は、Web サーバS1から優先度機能付きキャッシュサーバC601への通信フローに対して、優先度設定をしたいので、1.Web サーバS1の初段のルータR602に対して、R604方向へ流れるフローに対して優先度Pの設定を行い、2.R604に対して、R603方向へ流れるフローに対してデフォルト優先度PDの設定を行い、3.R601に対して、R600方向へ流れるフローに対して優先度Pの設定を行う、と判断する。その後、優先度付与部609 は、(R602 のネットワークアドレス、次ホップルータR604のアドレス、優先度P)の組と、(R604 のネットワークアドレス、次ホップルータR603のアドレス、優先度PD: PD>P)の組と、(R601 のネットワークアドレス、次ホップルータR600のアドレス、優先度P)の組とを、リンク先読み制御部604 に返却する。尚、上記した1.〜3.に示した全ての処理を行う場合に比較して、要求元がコンテンツ等を取得するまでの時間は長くなるが、上記した1.〜3.の処理の内の、1.の処理のみを行い、(R602 のネットワークアドレス、次ホップルータR604のアドレス、優先度P)の組のみをリンク先読み制御部604 に返却するようにしても良い。
(e) 上記した(d) において、リンク毎に、経路経路上の負荷に対する閾値と、それを越えた場合に設定する優先度を変えてもよい。例えば、図22において、優先度機能付きキャッシュサーバC601が、Web サーバS1からリンク先読み動作をしようとする場合を考える。
また、この場合の経路は、C601←→R600←(L0)→R601←→R603←→R604←(L5)→R602←→S1であり、例えば、経路上で、R602とR604の間のリンク(L5)および、R601とR600の間のリンク(L0)の負荷が、リンク先読み動作に対して、それぞれにあらかじめ決められた閾値を越えており、閾値を越えた場合の優先度がそれぞれ、P1, P2(P1<PD, P2<PD) であったとする。
優先度付与部609 は、Web サーバS1から優先度機能付きキャッシュサーバC601への通信フローに対して、優先度設定をしたいので、1.Web サーバS1の初段のルータR602に対して、R604方向へ流れるフローに対して優先度P1の設定を行い、2.R604に対して、R603方向へ流れるフローに対してデフォルト優先度PDの設定を行い、3.R601に対して、R600方向へ流れるフローに対して優先度P2の設定を行う、と判断する。
その後、優先度付与部609 は、(R602のネットワークアドレス、次ホップルータR604のアドレス、優先度P1) の組と、(R604のネットワークアドレス、次ホップルータR603のアドレス、優先度PD) の組と、(R601のネットワークアドレス、次ホップルータR600のアドレス、優先度 P2)の組とを、リンク先読み制御部604 へ返却する。
(f) コンテンツの性質(動画, テキスト, コンテンツの内容の更新頻度, サイズ等) に応じ、またリンクの混雑度に応じて、リンク毎に個別に優先度を変える。例えば、動画の場合には、テキストの場合と比べて、リンクの混雑度が低い場合でも、優先度付与(デフォルトよりも低い優先度の付与)を行う。また、動画の場合はテキストの場合より高い優先度を与える、等である。
また、上記した(d) 〜(f) 以外にも、通信相手が優先度機能付きキャッシュサーバ等の、優先度制御が可能なホストで、優先度付与部609 と同等の機能を持つ場合は、お互いに通信して優先度を決定するようにしても良い。
●ルータ優先度設定部610:リンク先読み制御部604 、自動キャッシュ更新部605 、キャッシュサーバ連携部607 から、(優先度設定ルータアドレス、次ホップルータアドレス、優先度) と、フロー識別情報の組情報(複数あり得る) を受け取り、その各々の組に対して、優先度設定ルータアドレスの示すルータへ、フロー識別情報と優先度を次ホップルータアドレスの示す方路に対して設定するように指示する。
また、リンク先読み制御部604 、自動キャッシュ更新部605 、キャッシュサーバ連携部607 から設定解除指示が出た場合は、該当の設定を解除する。
優先度機能付きキャッシュサーバC601は、コンピュータによって実現されるものであり、ディスク、半導体メモリ等の記録媒体K6には、コンピュータを優先度機能付きキャッシュサーバとした機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部601 、QoS 経路情報取得部602 、キャッシュ動作部603 、リンク先読み制御部604 、自動キャッシュ更新部605 、キャッシュサーバ連携部607 、優先度付与部609 、ルータ優先度設定部610 を実現する。
本発明の第6の実施の形態における、キャッシュ動作、自動キャッシュ更新動作、リンク先読み動作、および、キャッシュサーバ連携動作を、図24のフローチャートに示す。各動作での、通信相手の決定については、従来のキャッシュサーバと同様なので、フローチャートには、通信相手決定後の動作を示している。
先ず、キャッシュ動作部603,リンク先読み制御部604,自動キャッシュ更新部605 及びキャッシュサーバ連携部607 の内、取得したいWeb コンテンツ, コンテンツサマリーがあるもの(要求元)が、取得したいコンテンツ, コンテンツサマリーを保持している、Web サーバ或いは優先機能付きキャッシュサーバ等のキャッシュサーバのネットワークアドレスを含む優先度の付与要求を優先度付与部609へ渡す(F601)。優先度付与部609 では、付与要求に含まれているネットワークアドレスと、要求元がキャッシュ動作部603,リンク先読み制御部604,自動キャッシュ更新部605,キャッシュサーバ連携部607 の内の何れであるか、また、コンテンツや、ネットワークのQoS 経路情報に依存して、付与する優先度と、どの次ホップルータへの方路に対して設定すべきかを決定し、要求元へ通知する(F602)。要求元では、通知された、(優先度設定すべきルータ、次ホップルータ、優先度)の組(複数あり得る)と、優先度設定したい通信のフロー識別情報を、ルータ優先度設定部310 へ渡す。ルータ優先度設定部310 は、渡された情報を基に、ルータへ優先度を設定。これが完了すると、該当要求元は、通信相手先との間で、Web コンテンツ、コンテンツサマリーが等を取得する(F603)。そして、ルータ優先度設定部へ設定解除を指示し、優先度設定を解除する。
以上の動作によって、従来のキャッシュサーバでは、自動キャッシュ更新、リンク先読み、キャッシュサーバ連携動作が行えなかった、ネットワークの一部が輻輳を起こしている場合でも、本発明のネットワークシステムでは、自動キャッシュ更新、リンク先読み、キャッシュサーバ連携動作に関する通信の優先度を低くした通信によって、ネットワークの輻輳状態を悪化させることなくそれらを行うことができるため、キャッシュサーバの効率を上げることができる。
[第7の実施の形態]
本発明の第7の実施の形態を図25のブロック図に示す。第4の実施の形態と類似しているが、経路設定可能ルータR200〜R204が、第6の実施の形態のルータで説明した優先度制御機能が追加された経路設定優先度制御可能ルータR700〜R704に置き換わっている点と、QoS 経路参照中継制御キャッシュサーバC401〜C403が、QoS 経路参照中継優先制御キャッシュサーバC701〜C703に置き換わっている点が異なる。
本実施の形態のルータR700〜R704は、通常のルータに対して、第4の実施の形態のルータR200〜R204のように、MPLSプロトコルなどが動作し、指定された経路情報(通信を行う2つのキャッシュサーバのネットワークアドレスと、通信を識別するポート番号等の識別子と、キャッシュ経路を構成するルータ名の列からなる) を元に必要な経路設定する機能が追加されている上に、さらに、第6の実施の形態で説明した、優先制御可能ルータR600〜R604のように、キャッシュサーバC701〜C703からの要求に応じて、特定の通信フローを識別し、パケットに優先度情報を付与する機能と、パケットに付与された優先度情報を基に、パケットをリンクに送出する際の優先度を制御する機能を持つ。特定の通信フローは、例えば、パケットヘッダに含まれる、通信を行う両端のホスト(キャッシュサーバやWeb サーバ) のネットワークアドレス情報,通信を識別するポート番号情報,プロトコル情報等の組によって定義され、特定の通信フローの識別は、パケット毎に、これらの情報の組が、あらかじめ優先度機能付きキャッシュサーバから与えられた組と一致するかどうか判断することで実現できる。尚、特に指定のないフローに対しては、前もって決められた、ある優先度(デフォルト優先度PDと呼ぶ)で扱われる。また、QoS 経路参照中継優先制御キャッシュサーバC701〜C703は、第4の実施の形態で説明した、QoS 経路参照中継制御キャッシュサーバに、第6の実施の形態で説明した、ルータに対して優先度設定する機能が追加されたものである。
QoS 経路参照中継制御キャッシュサーバC701の構成例を示すブロック図を図26に示す。尚、他のQoS 経路参照中継制御キャッシュサーバC702,C703 も同様の構成を有している。
QoS 経路参照中継制御キャッシュサーバC701の構成要素の内、中継通信インターフェース部701,QoS 経路情報取得部702,キャッシュ動作部703,リンク先読み制御部704,自動キャッシュ更新部705,キャッシュサーバ連携部707,経路設定部709は、図15に示した中継通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,経路設定部109 と同様の機能を有し、ルータ優先度設定部710 は、図23に示したルータ優先度設定部610 と同様の機能を有するので、ここでは、他の実施の形態と相違のある中継制御部708 についてのも説明する。
●中継制御部708:リンク先読み制御部704,自動キャッシュ更新部705,キャッシュサーバ連携部707 から取得したいWeb コンテンツ, コンテンツサマリーを特定するための情報を受け取り、QoS 経路情報取得部702 から受け取ったネットワークの負荷状況を基に、どの中継サーバを使用し、どの経路を経由して取得するか、また、経路上で優先度設定をする必要がある部分も決定する。経路設定して取得する必要がある場合には、経路設定部709 へ経路設定,解除要求を出す。中継サーバを用いる場合には、中継に使用する全ての中継サーバへ中継の指示を出し、Web コンテンツ、コンテンツサマリーを実際に中継して取得させる。優先度設定を行う必要がある場合には、ルータ優先度設定部710 に、 (優先度設定ルータアドレス、次ホップルータアドレス、優先度) の組と、フロー識別情報をあわせた情報( 複数あり得る) を受け渡し、優先度設定,解除を行う。
QoS 経路参照中継優先制御キャッシュサーバC701は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K7には、コンピュータをQoS 経路参照中継制御キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部701,QoS 経路情報取得部702,キャッシュ動作部703,リンク先読み制御部704,自動キャッシュ更新部705,キャッシュサーバ連携部707,中継制御部708,経路設定部709,ルータ優先度設定部710 を実現する。
本発明の第7の実施例の形態における、自動キャッシュ動作、リンク先読み動作及びキャッシュサーバ連携動作を、図27のフローチャートに示す。自動キャッシュ更新部705 が、自動更新するコンテンツを決定する部分、リンク先読み制御部704 が、リンク先読みを行うコンテンツを決定する部分、そして、キャッシュサーバ連携部707 が、必要とするコンテンツやコンテンツサマリーを決定する部分は、従来のキャッシュサーバのものと変わらないため、ここでは説明しない。ここでは、必要とするコンテンツ或いはコンテンツサマリーが決定してからの動作を説明する。
自動キャッシュ更新、リンク先読み、或いはキャッシュサーバ連携を行う際に必要となるコンテンツ,コンテンツサマリーについて、それらを取得するために接続したいQoS 経路参照中継優先制御キャッシュサーバ等のキャッシュサーバ、或いはWeb サーバのネットワークアドレスを中継制御部708 へ渡す(F701)。中継制御部708 では、予め認識している中継サーバの位置情報およびQoS 経路情報取得部702 から得られたQoS 経路情報を基に、渡されたネットワークアドレスからコンテンツを取得するか否か、また、取得するなら、どの経路と中継サーバを用いるか、またどの経路上で優先度設定をするかを決定する(F702)。取得する場合(F703)には、経路設定部709 へ決定した経路に基づいて経路設定を指示し、優先度設定する場合には、ルータ優先度設定部710 へ、優先度設定を指示した後(F704)、該当コンテンツ或いは該当コンテンツサマリーを、中継制御部708 が中継サーバを制御して取得し、要求元(自動キャッシュ更新部705,リンク先読み制御部704 或いはキャッシュサーバ連携部707)へそれを渡す(F705)。その後、経路設定部709 へ設定した経路の解除を指示し(F706)、処理を終了する。コンテンツの取得を行わない場合(F707)は、直ちに処理終了となる。
次に、具体例を挙げて、本実施の形態の動作を説明する。図28のネットワークシステムにおいて、QoS 経路参照中継優先制御制御キャッシュサーバC701が、Web サーバS1から、あるコンテンツαを取得する場合を例に挙げて動作を説明する。この時、ルーティングテーブルの内容によって決まる経路が下記のものであったとする。
・S1からC601までの経路: S1→R702→L1→R701→L0→R700→C701・S1からM402までの経路: S1→R702→L1→R701→M402・S1からM401までの経路: S1→R702→L3→R703→M401・M401からM402までの経路: M401→R703→L2→R701→M401
また、QoS 経路情報取得部102 から得られたQoS 経路情報が、図28に示すものであったとする。リンク帯域の90%以上を使用している時に、輻輳状態であると判断するとし、60%〜80%の使用率に関しては、優先度をP1に設定することで、他のトラヒックへの影響をほぼ無視出来るとする。QoS 経路参照中継優先制御キャッシュサーバC701からWeb サーバS1までの経路上にあるリンクL1において、輻輳状態にあると考えられる。
中継制御部708 は、先ず、ルーティングテーブルの内容によって決まる経路上に輻輳部分が存在するか否かをQoS 経路情報に基づいて判断する。もし、上記経路上に輻輳部分が存在しなければ、中継制御部708 は、上記経路を構成する各リンクの負荷と要求元に対して設定されている閾値とに基づいて優先度を決定し、ルーティング優先度設定部710 を使用してルータに対して優先度, 通信フローの設定動作を行う。しかし、この例の場合は、ルーティングテーブルの内容によって決まる経路上には輻輳部分(リンクL1) が存在するので、ネットワーク上に存在する中継サーバM401,M402 及び経路設定可能ルータR700〜R704を使用することにより、輻輳部分(リンクL0,L1,L3) を通らない、Web サーバS1からQoS 経路参照中継優先制御キャッシュサーバC701への経路を設定できるか否かを調べる。この例の場合は、中継サーバM401、M402及び経路設定が可能ルータR400〜R404と、優先度制御を用いることで、他のトラヒックに影響を与えず、輻輳部分回避した経路を用いてデータを取得することができる。
この例では、(1) S1からM401にデータを取得させる経路S1→R702→L5→R704→L4→R703→M401の設定(2) 上記(1) のデータを取得するフローに対して、R702→L5→R704の部分に優先度P1を設定すると共にR704→L4→R703の部分に優先度PDを設定(3) M401から M402 へデータを中継させる。最後に以下の(4-1) 或いは、 (4-2)の何れかの方法でC701は、M402からデータを取得する。
(4-1) リンクL0の負荷が80%以下に下がるまで待って、R101に対して、R100へ流れる M402 からC701へのフローに対して優先度P1を設定し、データを取得。(4-2) リンクL0の負荷が 60%以下に下がるまで待って、M402からデータを取得。
以上の動作は、優先度設定機能のなかった第4の実施の形態では不可能な動作であり、第7の実施の形態によって可能となるものである。以上の動作によって、ネットワーク上の空いている帯域を有効活用し、従来のキャッシュサーバでは、自動キャッシュ更新、リンク先読み、キャッシュサーバ連携動作が行えなかった状況においても、本発明のネットワークシステムでは、それらを行うことができる可能性が高まる。
[第8の実施の形態]
本発明の第8の実施の形態は、図1に示した第1の実施の形態のネットワークシステムに於いて、QoS 経路参照キャッシュサーバC101〜C103 の代わりに図29のブロック図に示す構成を有するQoS 経路参照キャッシュサーバC101a を用い、ルータR100〜R104の代わりに図19に示した優先制御可能ルータR300〜R304を用いることにより実現される。この図29のQoS 経路参照キャッシュサーバC101a は、図20(第5の実施の形態)に示した優先度情報付加部508 が追加されている点、経路計算部108 の代わりに経路計算部108aを備えている点、記録媒体K1の代わりに記録媒体K1aを備えている点が図2に示した第1の実施の形態に於けるQoS 経路参照キャッシュサーバC101と相違している。
QoS 経路参照キャッシュサーバC101a は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K1a には、コンピュータをQoS経路参照キャッシュサーバとした機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部505,キャッシュサーバ連携部107,経路計算部108a, 優先度情報付加部508 を実現する。
経路計算部108aは、要求元(キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,或いはキャッシュサーバ連携部107 )から渡されたネットワークアドレスと、QoS 経路情報取得部102 が保持しているQoS 経路情報とに基づいて、上記ネットワークアドレスによって示されるWeb サーバ等への最大残余帯域経路を求める機能や、前述した優先度の決定方法(a) 〜(c) (図20の優先度付与部509 の説明参照)に基づいて要求元に優先度を付与する機能を有する。
経路計算部108aは、要求元からネットワークアドレスが渡されると、そのネットワークアドレスによって示されるWeb サーバ等への最大残余帯域経路を求めると共に、前述した優先度の決定方法(a) 〜(c) により優先度を決定する。要求元は、決定された優先度とソースルートオプション等により経路を上記最大残余帯域経路にした送信パケット(取得するコンテンツ等を示す情報を含む)とを優先度情報付加部508 に渡す。優先度情報付加部508 は、送信パケットに優先度を示す優先度情報を付加し、通信インターフェース部101 に渡す。これにより、通信相手先との間で、上記最大残余帯域経路を使用した上記優先度のパケットの送受信が行われ、要求元がWeb コンテンツ,コンテンツサマリーを獲得する。
[第9の実施の形態]
本発明の第9の実施の形態は、図1に示した第1の実施の形態のネットワークシステムに於いて、QoS 経路参照キャッシュサーバC101〜C103 の代わりに図30のブロック図に示す構成を有するQoS 経路参照キャッシュサーバC101b を用い、ルータR100〜R104の代わりに図22に示した優先制御可能ルータR600〜R604を用いることにより実現される。この図30のQoS 経路参照キャッシュサーバC101bは、図23(第6の実施の形態)に示したルータ優先度設定部710 が追加されている点、経路計算部108 の代わりに経路計算部108bを備えている点、記録媒体K1の代わりに記録媒体K1b を備えている点、が図2に示した第1の実施の形態に於けるQoS 経路参照キャッシュサーバC101と相違している。
QoS 経路参照キャッシュサーバC101b は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K1a には、コンピュータをQoS経路参照キャッシュサーバとした機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,経路計算部108b, ルータ優先度設定部710 を実現する。
経路計算部108bは、要求元(リンク先読み制御部104,自動キャッシュ更新部105,或いはキャッシュサーバ連携部107 )から渡されたネットワークアドレスと、QoS 経路情報取得部102 が保持しているQoS 経路情報とに基づいて、上記ネットワークアドレスによって示されるWeb サーバ等への最大残余帯域経路を求める機能や、前述した(d) 〜(f) の方法(図23の優先度付与部609 の説明参照)により、(優先度設定すべきルータ,次ホップルータ,優先度)の組(複数あり得る)を決定する機能を有する。
経路計算部108bは、要求元から通信相手先のネットワークアドレスが渡されると、通信相手先との間の最大残余帯域経路を求めると共に、前述した(d) 〜(f)の方法により、(優先度設定すべきルータ,次ホップルータ,優先度)の組(複数あり得る)を決定する。要求元は、決定された(優先度設定すべきルータ,次ホップルータ,優先度)の組と、優先度設定したい通信のフロー識別情報をルータ優先度設定部710 に渡す。ルータ優先度設定部710 は、渡された情報を基に、ルータへ優先度を設定し、これが完了すると、該当要求元は、通信相手先との間で、ソースルートオプション等の手法により、最大残余帯域経路を使用してWebコンテンツ等を取得する。そして、ルータ優先度設定部710 に設定解除を指示し、優先度設定を解除する。
[第10の実施の形態]
本発明の第10の実施の形態は、図6に示した第2の実施の形態のネットワークシステムに於いて、ルータR200〜R204の代わりに経路設定及び優先度制御が可能なルータを用い、更に、QoS 経路参照キャッシュサーバC201〜C203の代わりに図31に示すQoS 経路参照キャッシュサーバC201a を用いることにより実現される。
図31に示すQoS 経路参照キャッシュサーバC201a は、優先度情報付加部508が追加されている点、経路計算部108 の代わりに経路計算部108aを備えている点、及び記録媒体K2の代わりにK2a を備えている点が、図7に示したQoS 経路参照キャッシュサーバC201と相違している。
QoS 経路参照キャッシュサーバC201a は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K2a には、コンピュータをQoS経路参照キャッシュサーバとした機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,経路計算部108a, 経路設定部109,優先度情報付与部508 を実現する。
経路計算部108aは、要求元(キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,或いはキャッシュサーバ連携部107 )から渡されたネットワークアドレスと、QoS 経路情報取得部102 が保持しているQoS 経路情報とに基づいて、上記ネットワークアドレスによって示されるWeb サーバ等への最大残余帯域経路を求める機能や、前述した優先度の決定方法(a) 〜(c) (図20の優先度付与部509 の説明参照)に基づいて要求元に優先度を付与する機能を有する。
経路計算部108aは、要求元から通信相手先のネットワークアドレスが渡されると、そのネットワークアドレスによって示されるWeb サーバ等への最大残余帯域経路を求めると共に、前述した優先度の決定方法(a) 〜(c) により優先度を決定する。その後、経路設定部109 がルータに指示を出し、ネットワーク上に上記最大残余帯域経路を設定する。また、要求元は、送信パケットと上記決定された優先度とを優先度情報付加部508 に渡す。優先度情報付加部508 は、送信パケットに上記優先度を示す優先度情報を付加し、通信インターフェース部101 に渡す。これにより、通信相手先との間で、上記最大残余帯域経路を使用した上記優先度のパケットの送受信が行われ、要求元がWeb コンテンツ,コンテンツサマリーを獲得する。
[第11の実施の形態]
本発明の第11の実施の形態は、図6に示した第2の実施の形態のネットワークシステムに於いて、ルータR200〜R204の代わりに図26に示したルータR700〜R704を使用し、QoS 経路参照キャッシュサーバC201〜C203の代わりに図32に示すQoS 経路参照キャッシュサーバC201bを用いることにより実現される。
この図32に示すQoS 経路参照キャッシュサーバC201bは、ルータ優先度設定部710 が追加されている点、及び記録媒体K2の代わりに記録媒体K2b を備えている点が図7に示したQoS 経路参照キャッシュサーバC201と相違している。
QoS 経路参照キャッシュサーバC201b は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K2b には、コンピュータをQoS経路参照キャッシュサーバとした機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,経路計算部108b, 経路設定部109,ルータ優先度設定部710 を実現する。
経路計算部108bは、要求元(リンク先読み制御部104,自動キャッシュ更新部105,或いはキャッシュサーバ連携部107 )から渡されたネットワークアドレスと、QoS 経路情報取得部102 が保持しているQoS 経路情報とに基づいて、上記ネットワークアドレスによって示されるWeb サーバ等への最大残余帯域経路を求める機能や、前述した(d) 〜(f) の方法(図23の優先度付与部609 の説明参照)により、(優先度設定すべきルータ,次ホップルータ,優先度)の組(複数あり得る)を決定する機能を有する。
経路計算部108bは、要求元から通信相手先のネットワークアドレスが渡されると、通信相手先との間の最大残余帯域経路を求めると共に、前述した(d) 〜(f)の方法により、(優先度設定すべきルータ,次ホップルータ,優先度)の組(複数あり得る)を決定する。その後、経路設定部109 がルータに指示を出し、ネットワーク上に上記最大残余帯域経路を設定する。要求元は、決定された(優先度設定すべきルータ,次ホップルータ,優先度)の組と、優先度設定したい通信のフロー識別情報をルータ優先度設定部710 に渡す。ルータ優先度設定部710 は、渡された情報を基に、ルータへ優先度を設定し、これが完了すると、該当要求元は、通信相手先との間で、最大残余帯域経路を使用してWeb コンテンツ等を取得する。そして、ルータ優先度設定部710 に設定解除を指示し、優先度設定を解除する。
[第12の実施の形態]
本発明の第12の実施の形態は、図9に示した第3の実施の形態のネットワークシステムに於いて、QoS 経路参照中継制御キャッシュサーバC301〜303 の代わりに図33のブロック図に示すQoS 経路参照中継制御キャッシュサーバC301a を使用し、ルータR100〜R104の代わりに図19に示した優先制御可能ルータR300〜R304を使用することにより実現される。
この図33に示すQoS 経路参照中継制御キャッシュサーバC301a は、優先度情報付加部508 が追加されている点、中継制御部110 の代わりに中継制御部110aを備えている点、及び記録媒体K3の代わりに記録媒体K3a を備えている点が図10に示したQoS 経路参照中継制御キャッシュサーバC301と相違している。
QoS 経路参照中継制御キャッシュサーバC301a は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K3a には、コンピュータをQoS 経路参照中継制御キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,中継制御部110a, 優先度情報付加部508 を実現する。
中継制御部110aは、要求元(リンク先読み制御部104,自動キャッシュ更新部105,或いはキャッシュサーバ連携部107 )から取得したいWeb コンテンツ, コンテンツサマリーを特定するための情報を受け取ると、要求元に付与する優先度を前述した(a) 〜(c) の方法で決定すると共に、QoS 経路情報取得部102 が保持しているネットワークの負荷状況を基に、ルーティングテーブルの内容によって決まる通信相手先への経路上に輻輳部分が存在するか否かを調べる。そして、輻輳部分が存在しない場合は、要求元に優先度を通知する。これにより、要求元は、優先情報付加部508 に送信パケットと優先度とを渡す。優先度情報付加部508 は、送信パケットに優先度情報を付加して通信インターフェース101 に渡す。これにより、上記優先度のパケットが通信相手先との間で送受信され、要求元がWeb コンテンツ等を取得する。
これに対して、ルーティングテーブルの内容によって決まる経路上に輻輳部分が存在する場合は、中継サーバを使用することにより輻輳部分を通らない経路を設定できるか否かを判断する。そして、設定できると判断した場合は、上流側の中継サーバから順番に指示を出し、Web コンテンツ等を実際に中継させる。その際、上記決定された優先度で中継することを指示する。
また、中継サーバを利用しても、輻輳部分を通らない経路(ルーティングテーブルの内容によって決まる経路)を設定できない場合は、輻輳部分よりも上流側に存在する中継サーバ(輻輳部分に最も近い中継サーバでなくても良い。但し、輻輳部分に最も近い中継サーバまで転送させるのが最も効率的である)まで、コンテンツを中継させておき、輻輳が解除されるのを待って、それよりも下流に転送するようにする。この場合も、中継サーバに対しては、上記決定された優先度で中継することを指示する。また、中継サーバを利用しても、中継部分を通らない経路(ルーティングテーブルの内容によって決まる経路)を設定できない場合には次のようにすることもできる。中継制御部110aは、QoS 経路情報に基づいて、輻輳部分が存在しない通信相手先との間の経路を求める。その際、ルーティングテーブルの内容は無視して経路を決定する。その後、中継制御部110aは、使用する中継サーバとして、上記経路上に存在する全ての中継サーバ或いは一部の中継サーバを選択する。次いで、中継制御部110aは、使用する中継サーバの内の最も上流側に位置する中継サーバに対して、取得するコンテンツ, その取得経路(ソースルートオプション等の経路指定手法を用いて指示)及び優先度を指示する。この指示に応答して、中継サーバは、指示された経路, 優先度で、指示されたコンテンツを取得する。以下、最下流に位置する中継サーバまで、同様の処理を繰り返し行う。但し、中継サーバ間の経路が、ルーティングテーブルの内容によって決まるものと同じである場合は、中継するデータのみを指示し、中継経路は指示しない。そして、最下流の中継サーバまで、コンテンツを中継させると、QoS 経路参照中継制御キャッシュサーバC301a は、最下流の中継サーバから、コンテンツを取得する。
[第13の実施の形態]
本発明の第13の実施の形態は、図9に示した第3の実施の形態のネットワークシステムに於いて、QoS 経路参照中継制御キャッシュサーバC301〜303 の代わりに図34のブロック図に示すQoS 経路参照中継制御キャッシュサーバC301b を使用し、ルータR100〜R104の代わりに図25に示した優先制御可能ルータR600〜R604を使用することにより実現される。
この図34に示すQoS 経路参照中継制御キャッシュサーバC301B は、ルータ優先度設定部710 が追加されている点、中継制御部110 の代わりに中継制御部110bを備えている点、及び記録媒体K3の代わりに記録媒体K3b を備えている点が図10に示したQoS 経路参照中継制御キャッシュサーバC301と相違している。
QoS 経路参照中継制御キャッシュサーバC301b は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K3b には、コンピュータをQoS 経路参照中継制御キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,中継制御部110b, ルータ優先度設定部710 を実現する。
経路計算部108bは、要求元(リンク先読み制御部104,自動キャッシュ更新部105 或いはキャッシュサーバ連携部107)から通信相手先のネットワークアドレスが渡されると、ルーティングテーブルによって決まる上記通信相手先への経路上に輻輳部分が存在するか否かをQoS 経路情報に基づいて判断する。輻輳部分が存在しない場合は、上記経路に対して前述した(d) 〜(f) の方法により、(優先度設定すべきルータ,次ホップルータ,優先度)の組(複数あり得る)を決定する。要求元は、決定された(優先度設定すべきルータ,次ホップルータ,優先度)の組と、優先度設定したい通信のフロー識別情報をルータ優先度設定部710 に渡す。ルータ優先度設定部710 は、渡された情報を基に、ルータへ優先度を設定し、これが完了すると、該当要求元は、通信相手先との間で、ルーティングテーブルの内容によって決まる経路を使用してWeb コンテンツ等を取得する。
これに対して、ルーティングテーブルによって決まる経路上に輻輳部分が存在する場合は、中継サーバを使用することにより、輻輳部分の存在しない経路を設定できるか否かを調べる。そして、設定できる場合は、その経路に対して前述した(d) 〜(f) の方法により、(優先度設定すべきルータ,次ホップルータ,優先度)の組(複数あり得る)を決定する。要求元は、決定された(優先度設定すべきルータ,次ホップルータ,優先度)の組と、優先度設定したい通信のフロー識別情報をルータ優先度設定部710 に渡す。ルータ優先度設定部710 は、渡された情報を基に、ルータへ優先度を設定し、これが完了すると、該当要求元は、上流側の中継サーバから順番に指示を出し、Web コンテンツ等を実際に中継させ、Web コンテンツ等を取得する。また、中継サーバを利用しても、輻輳部分を通らない経路(ルーティングテーブルの内容によって決まる経路)を設定できない場合は、輻輳部分よりも上流側に存在する中継サーバ(輻輳部分に最も近い中継サーバでなくても良い。但し、輻輳部分に最も近い中継サーバまで転送させるのが最も効率的である)まで、コンテンツを中継させておき、輻輳が解除されるのを待って、それよりも下流に転送するようにする。また、中継サーバを利用しても、中継部分を通らない経路(ルーティングテーブルの内容によって決まる経路)を設定できない場合には次のようにすることもできる。中継制御部110bは、QoS 経路情報に基づいて、輻輳部分が存在しない通信相手先との間の経路を求める。その際、ルーティングテーブルの内容は無視して経路を決定する。その後、中継制御部110bは、使用する中継サーバとして、上記経路上に存在する全ての中継サーバ或いは一部の中継サーバを選択する。次いで、中継制御部110bは、使用する中継サーバの内の最も上流側に位置する中継サーバに対して、取得するコンテンツ及びその取得経路(ソースルートオプション等の経路指定手法を用いて指示)を指示する。この指示に応答して、中継サーバは、指示された経路で、指示されたコンテンツを取得する。以下、最下流に位置する中継サーバまで、同様の処理を繰り返し行う。但し、中継サーバ間の経路が、ルーティングテーブルの内容によって決まるものと同じである場合は、中継するデータのみを指示し、中継経路は指示しない。そして、最下流の中継サーバまで、コンテンツを中継させると、QoS 経路参照中継制御キャッシュサーバC301b は、最下流の中継サーバから、コンテンツを取得する。
[第14の実施の形態]
本発明の第14の実施の形態は、図14に示した第4の実施の形態のネットワークシステムに於いて、QoS 経路参照中継制御キャッシュサーバC401〜C403の代わりに図35に示すQoS 経路参照中継制御キャッシュサーバC401a を使用し、ルータR200〜R204の代わりに優先度制御, 経路設定が可能なルータを使用することにより実現される。
図35に示すQoS 経路参照中継制御キャッシュサーバC401a は、優先度情報付加部508 が追加されている点、中継制御部110 の代わりに中継制御部110aを備えている点、及び記録媒体K4の代わりに記録媒体K4a を備えている点が図15に示したQoS 経路参照中継制御キャッシュサーバC401と相違している。
QoS 経路参照中継制御キャッシュサーバC401a は、コンピュータによって実現されるものであり、ディスク, 半導体メモリ等の記録媒体K3b には、コンピュータをQoS 経路参照中継制御キャッシュサーバとして機能させるためのプログラムが記録されている。このプログラムは、コンピュータによって読み取られ、コンピュータの動作を制御することで、コンピュータ上に、通信インターフェース部101,QoS 経路情報取得部102,キャッシュ動作部103,リンク先読み制御部104,自動キャッシュ更新部105,キャッシュサーバ連携部107,中継制御部110a, 優先度情報付加部5081を実現する。
中継制御部110aは、要求元(リンク先読み制御部104,自動キャッシュ更新部105,或いはキャッシュサーバ連携部107 )から取得したいWeb コンテンツ, コンテンツサマリーを特定するための情報を受け取ると、要求元に付与する優先度を前述した(a) 〜(c) の方法で決定すると共に、QoS 経路情報取得部102 が保持しているネットワークの負荷状況を基に、ルーティングテーブルの内容によって決まる通信相手先への経路上に輻輳部分が存在するか否かを調べる。そして、輻輳部分が存在しない場合は、要求元に優先度を通知する。これにより、要求元は、優先情報付加部508 に送信パケットと優先度とを渡す。優先度情報付加部508 は、送信パケットに優先度情報を付加して通信インターフェース101 に渡す。これにより、上記優先度のパケットが通信相手先との間で送受信され、要求元がWeb コンテンツ等を取得する。
これに対して、ルーティングテーブルの内容によって決まる経路上に輻輳部分が存在する場合は、中継サーバ及び経路設定可能なルータを使用することにより輻輳部分を通らない経路を設定できるか否かを判断する。そして、設定できると判断した場合は、経路設定部109 を用いてルータに指示を出して上記経路をネットワーク上に設定する。その後、上流側の中継サーバから順番に指示を出し、Web コンテンツ等を実際に中継させる。その際、上記決定された優先度で中継することを指示する。また、中継サーバを利用しても、輻輳部分を通らない経路を設定できない場合は、輻輳部分よりも上流側に存在する中継サーバ(輻輳部分に最も近い中継サーバでなくても良い。但し、輻輳部分に最も近い中継サーバまで転送させるのが最も効率的である)まで、コンテンツを中継させておき、輻輳が解除されるのを待って、それよりも下流に転送するようにする。
C1〜C3…キャッシュサーバR0〜R4…ルータL0〜L5…リンクT1〜T3…端末N1〜N4…サブネットS1,S2 …Web サーバR100〜R104…ルータR200〜R204…経路設定可能ルータR300〜R304,R600〜R604…優先制御可能ルータR700〜R704…経路設定優先度制御可能ルータC101〜C103,C101a,C101b,C201a,C201b,C301a,C301b,C401a…QoS 経路参照キャッシュサーバC201〜C203…QoS 経路参照キャッシュサーバC301〜C303…QoS 経路参照中継制御キャッシュサーバC401〜C403…QoS 経路参照中継制御キャッシュサーバC501〜C503…優先度機能付きキャッシュサーバC601〜C603…優先度機能付きキャッシュサーバC701〜C703…QoS 経路参照中継優先制御キャッシュサーバ1…通信インターフェース部2…輻輳情報取得部3…キャッシュ動作部4…リンク先読み制御部5…自動キャッシュ更新部6…記憶装置7…キャッシュサーバ連携部101 …通信インターフェース部102 …QoS 経路情報取得部103 …キャッシュ動作部104 …リンク先読み制御部105 …自動キャッシュ更新部106 …記憶装置107 …キャッシュサーバ連携部108,108a,108b …経路計算部109 …経路設定部110,110a,110b …中継制御部501 …通信インターフェース部502 …QoS 経路情報取得部503 …キャッシュ動作部504 …リンク先読み制御部505 …自動キャッシュ更新部506 …記憶装置507 …キャッシュサーバ連携部508 …優先度情報付加部509 …優先度付与部601 …通信インターフェース部602 …QoS 経路情報取得部603 …キャッシュ動作部604 …リンク先読み制御部605 …自動キャッシュ更新部606 …記憶装置607 …キャッシュサーバ連携部609 …優先度付与部610 …ルータ優先度設定部701 …通信インターフェース部702 …QoS 経路情報取得部703 …キャッシュ動作部704 …リンク先読み制御部705 …自動キャッシュ更新部706 …記憶装置707 …キャッシュサーバ連携部708 …中継制御部709 …経路設定部710 …ルータ優先度設定部K1,K1a,K1b,K2,K2a,K2b,K3,K3a,K3b,K4,K4a,K5〜K7…記録媒体