(57)【要約】    【課題】  網内の任意のノードが適応的にミラーサーバになることにより、オリジンサーバに対するアクセス負荷状況に応じて最適なミラーサーバ群を生成する。    【解決手段】  網内の任意のノードに対して、オリジンサーバからの動的ミラーリング要求によって適応的にミラーサーバになれる機能が付加される（適応ミラーノードＢ１）。オリジンサーバＡ１がコンテンツの動的ミラーリングを行う際、適応ミラーノード検出手段Ａ１４は、網内の適応ミラーノードを検出し、動的ミラーリング先決定手段Ａ１３によってミラーリング先を決定する。動的ミラーリング要求手段Ａ１５は動的ミラーリング要求を選択された適応ミラーノードＢ１に行い、要求が受理されると動的ミラーリング手段Ａ１６によってミラーコンテンツを転送する。適応ミラーノードは受信したミラーコンテンツをミラーコンテンツ記憶部Ｂ１０１に格納し、ミラーサーバとして機能する。【選択図】    図１
2006146951.tif 000002
【特許請求の範囲】
【請求項１】
自ノードの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行うオリジンサーバであって、
クライアントからのコンテンツ取得要求に伴う前記オリジンサーバの性能劣化を示すパラメータを測定し、該測定結果に基づいて前記動的ミラーリングを行うかどうかを判定するサーバ負荷測定手段と、
前記オリジンサーバの保持するコンテンツのうちのどのコンテンツをミラーコンテンツとして、前記動的ミラーリングを行うかを選択するミラーコンテンツ決定手段と、
前記網内リソース情報と前記ミラーサーバ性能情報のいずれか、あるいは両方を取得する機能を有する網リソース取得手段と、
前記網リソース取得手段によって取得した情報をもとに、所定のアルゴリズムに従って前記ミラーコンテンツをどの前記ミラーサーバへコピーするかを決定する動的ミラーリング先決定手段と、
前記動的ミラーリング先決定手段によって決定された動的ミラーリング先となる前記ノードに対して、前記動的ミラーリングを行うための動的ミラーリング要求を出す動的ミラーリング要求手段と、
前記動的ミラーリング要求が受理された場合に、前記ミラーリングツリーを転送経路として動的ミラーリング先として決定された前記ノードに対して、前記ミラーコンテンツを転送するミラーコンテンツ転送手段と、
前記ミラーリングツリーを計算する機能を有するミラーリングツリー作成手段とを備え、
前記ミラーリングツリー作成手段が作成するミラーリングツリーは、
前記ミラーコンテンツがコピーされる前記ミラーサーバの他に、
中継用ホップとして選択されたミラーサーバを前記ミラーリングツリーの構成要素として含むことを特徴とするオリジンサーバ。
【請求項２】
自ノードの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行うオリジンサーバであって、
クライアントからのコンテンツ取得要求に伴う前記オリジンサーバの性能劣化を示すパラメータを測定し、該測定結果に基づいて前記動的ミラーリングを行うかどうかを判定するサーバ負荷測定手段と、
前記オリジンサーバの保持するコンテンツのうちのどのコンテンツをミラーコンテンツとして、前記動的ミラーリングを行うかを選択するミラーコンテンツ決定手段と、
前記網内リソース情報と前記ミラーサーバ性能情報のいずれか、あるいは両方を取得する機能を有する網リソース取得手段と、
前記網リソース取得手段によって取得した情報をもとに、所定のアルゴリズムに従って前記ミラーコンテンツをどの前記ミラーサーバへコピーするかを決定する動的ミラーリング先決定手段と、
前記動的ミラーリング先決定手段によって決定された動的ミラーリング先となる前記ノードに対して、前記動的ミラーリングを行うための動的ミラーリング要求を出す動的ミラーリング要求手段と、
前記動的ミラーリング要求が受理された場合に、前記ミラーリングツリーを転送経路として動的ミラーリング先として決定された前記ノードに対して、前記ミラーコンテンツを転送するミラーコンテンツ転送手段と、
前記ミラーリングツリーを計算する機能を有するミラーリングツリー作成手段とを備え、
前記ミラーリングツリー作成手段は、
前記オリジンサーバと、前記ミラーコンテンツがコピーされる前記ミラーサーバだけで構成されたミラーリングツリーにおいて、
前記ミラーリングツリーの構成要素となる前記オリジンサーバ及び前記ミラーサーバ相互間の転送経路の利用可能帯域が、所定の閾値以下となる前記転送経路を、
前記ミラーリングツリーの構成要素以外のミラーサーバを用いて中継する転送経路に置き換えたミラーリングツリーを再作成することを特徴とするオリジンサーバ。
【請求項３】
前記ミラーリングツリー作成手段は、
作成しようとする前記ミラーリングツリーの構成要素となる前記オリジンサーバ及び前記ミラーサーバのリソース情報と、
前記オリジンサーバ及び前記ミラーサーバ相互間の前記ミラーコンテンツの転送経路におけるリソース情報
のいずれか、又は両方
を用いて前記ミラーリングツリーを計算することを特徴とする請求項１または請求項２に記載のオリジンサーバ。
【請求項４】
前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、
前記網リソース取得手段によって得られた、前記オリジンサーバに対してコンテンツ取得要求を行うクライアントの属するサイトであるクライアントサイトごとに計測された、
前記オリジンサーバから前記クライアントサイトまでの１セッションあたりの第一のコンテンツ転送スループットと、
前記クライアントサイトにとってのコンテンツ取得遅延を最小化するように選択されたミラーサーバから、前記クライアントサイトまでの１セッションあたりの第二のコンテンツ転送スループット
を用いることを特徴とする請求項１から請求項３のいずれか１項に記載のオリジンサーバ。
【請求項５】
前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、
前記クライアントサイトからの単位時間あたりのコンテンツ取得要求数×（前記第二のコンテンツスループット／前記第一のコンテンツスループット）の値が大きいほど、高い優先度を与えることを特徴とする請求項４に記載のオリジンサーバ。
【請求項６】
前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、
前記網リソース取得手段によって得られた、前記オリジンサーバに対してコンテンツ取得要求を行うクライアントの属するサイトであるクライアントサイトごとに計測された、動的ミラーリング先の候補となる前記ミラーサーバから、前記クライアントサイトまでの転送経路の利用可能帯域が値が大きいほど、あるいは、動的ミラーリング先の候補となる前記ミラーサーバから、前記クライアントサイトまでのＲＴＴ、又はある固定長データの前記クライアントサイトが下流となる向きの転送遅延の何れか１つの値が小さいほど、高い優先度を与えることを特徴とする請求項１から請求項３のいずれか１項に記載のオリジンサーバ。
【請求項７】
前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、
前記オリジンサーバから前記ミラーサーバまでの１セッションあたりのコンテンツ転送スループット、又は転送経路の利用可能帯域の値が大きいほど、高い優先度を与えることを特徴とする請求項１から請求項３のいずれか１項に記載のオリジンサーバ。
【請求項８】
オリジンサーバの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行う動的ミラーリングシステムのノードであって、
前記オリジンサーバから１又は複数の前記ミラーサーバへ前記ミラーコンテンツを転送する際に、
前記オリジンサーバを頂点とし、前記ミラーサーバによって構成される任意のツリー状の経路であるミラーリングツリーに従って前記ミラーコンテンツの転送を受け、
前記オリジンサーバからの、前記ミラーリングツリーを転送経路とした、前記ミラーコンテンツの転送において、
前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継し、
前記ミラーリングツリーの下流の前記ミラーサーバへ転送する、ミラーコンテンツ中継手段を有し、
前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継する際に、前記ミラーサーバ内に前記ミラーコンテンツを記憶するかしないかの動作をオリジンサーバからの指示に基づいて選択的に行うことを特徴とするノード。
【請求項９】
オリジンサーバの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行う動的ミラーリングシステムのノードであって、
前記オリジンサーバから１又は複数の前記ミラーサーバへ前記ミラーコンテンツを転送する際に、前記オリジンサーバを頂点とし、前記ミラーサーバによって構成される任意のツリー状の経路であるミラーリングツリーに従って前記ミラーコンテンツの転送を受け、
前記オリジンサーバからの、前記ミラーリングツリーを転送経路とした、前記ミラーコンテンツの転送において、
前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継し、
前記ミラーリングツリーの下流の前記ミラーサーバへ転送する、ミラーコンテンツ中継手段を有し、
前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継する際に、前記ミラーサーバ内に前記ミラーコンテンツを記憶するかしないかの動作を自ノードの状態に基づいて自律的に選択できることを特徴とするノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ動的ミラーリングシステムに関し、特にＷＷＷ（World Wide Web）コンテンツや動画コンテンツなどの配信用コンテンツを、オリジンサーバや既にコンテンツのミラーリングが行われているミラーサーバの負荷分散を目的として他のミラーサーバにミラーリングするコンテンツ動的ミラーリングシステムに関する。
【背景技術】
【０００２】
従来より、この種のコンテンツ動的ミラーリングシステムは、オリジンサーバの負荷状況に応じて、他のミラーサーバに対して動的にコンテンツのミラーリングを行い、負荷分散を図るために用いられている。
【０００３】
例えば、特開平１１−８５６０４号公報（特許文献１）では、連続メディアコンテンツの動的なミラーリングシステムについて記載されている。
【０００４】
この公報に記載されたコンテンツのミラーリングシステムは、映像・音声等の連続メディアコンテンツを格納しているメディアサーバに対して多数の端末装置からコンテンツの要求が発生した場合に、アクセス負荷の原因となるコンテンツを特定し、特定されたコンテンツへの端末装置からのアクセス状況を解析し、メディアサーバの処理できるアクセス負荷の限界値を越える時間を予測し、メディアサーバが処理できる限界値に達する前に、コンテンツの複製の作成、または当該コンテンツとその他のコンテンツとで所在の再配置を行なうことにより、動的なコンテンツ配置変更を可能としている。
【０００５】
また、特開２００１−６９１６９号公報（特許文献２）に開示されるミラーリングシステムでは、コンテンツを保持する特定のサーバの負荷が基準値を越えたかどうかを検出し、負荷が基準値以上になった場合に、当該サーバのコンテンツを異なる他のサーバ（ミラーサーバ）に複製し、ネットワークを介してアクセスするエンドホストが特定のサーバあるいは上記ミラーサーバのうち転送経路の近いサーバへアクセスする。
【特許文献１】特開平１１−８５６０４号公報
【特許文献２】特開２００１−６９１６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したように従来の技術では、以下に述べるような問題点があった。
【０００７】
第１の問題点は、動的にコンテンツのミラーリングを行うとしても、動的ミラーリングの行われるミラーサーバの選択は、予め固定的に配置されたミラーサーバ群のなかから行われなければならないということである。
【０００８】
したがって、負荷分散の効果は予め固定的に配置されているミラーサーバ群の数及び位置によって制限され、効率的に負荷分散を図ることができない可能性がある。この問題を解決するために、例えば、どのようなアクセス状況に対しても柔軟に負荷分散効果が生み出せるように網内の至るところに多数のミラーサーバを配置するとしても、その設置コスト及び管理コストを考えると現実的とはいえない。
【０００９】
第２の問題点は、網内のリソース状況を考慮した動的ミラーリングが行えないということである。
【００１０】
例えば、オリジンサーバから１２５Ｍｂｙｔｅのコンテンツの動的ミラーリングを行おうとしているときに、候補となるミラーサーバが２つ存在するとし、それぞれの候補ミラーサーバをＡ、Ｂとし、どちらかに動的ミラーリングを行うとする。候補ミラーサーバＡ、Ｂはそれぞれ、クライアントサイトＣ、Ｄに対して該コンテンツの転送遅延を最小化するために選択されている。このとき、オリジンサーバからクライアントＣ、Ｄまでの利用可能帯域はともに１Ｍｂｉｔ／ｓｅｃであったとする。更に候補ミラーサーバＡからクライアントサイトＣまで、及び候補ミラーサーバＢからクライアントサイトＤまでの利用可能帯域がそれぞれ１Ｍｂｉｔ／ｓｅｃ、１００Ｍｂｉｔ／ｓｅｃであったとする。この場合、候補ミラーサーバＢに動的ミラーリングを行った場合はクライアントＤにとって該コンテンツ取得時の利用可能帯域が飛躍的に増加する一方、候補ミラーサーバＡに動的ミラーリングを行っても、オリジンサーバの負荷が分散されるだけで、クライアントＣにとっての該コンテンツ取得時の利用可能帯域は変わらない。
【００１１】
他の例では、同様にオリジンサーバから１２５Ｍｂｙｔｅのコンテンツの動的ミラーリングを候補ミラーサーバＡ、Ｂのどちらかに動的ミラーリングを行うとするときに、オリジンサーバから各候補ミラーサーバまでの利用可能帯域を比較し、候補ミラーサーバＡに対しては１００Ｍｂｉｔ／ｓｅｃであり、候補ミラーサーバＢに対しては１Ｍｂｉｔ／ｓｅｃであったとする。このとき、候補ミラーサーバＡに動的ミラーリングを行うのために要するコンテンツの転送遅延は１０秒であるのに対し、候補ミラーサーバＢに動的ミラーリングする場合は１０００秒を要する。直ちにオリジンサーバの負荷の軽減が要求される場合は上記の転送遅延の差は無視できず、負荷分散性能を左右する原因となる。
【００１２】
上記の例より、動的ミラーリングを行う際に網内のリソース状況を考慮することによって、動的ミラーリングに伴う性能改善効果を高めることができることが分かる。
【００１３】
第３の問題点は、動的ミラーリングにおいて、オリジンサーバからミラーサーバへのミラーコンテンツ転送に伴う大量のトラフィック量によって、網に負荷をかけてしまうおそれがあることである。また、複数のミラーサーバに同時に同一コンテンツの動的ミラーリングを行う場合、そのトラフィック量が大きくなることも問題である。
【００１４】
例えば、オリジンサーバからミラーサーバまでの転送経路に利用可能帯域値の非常に小さいリンクが存在する場合、ミラーリングに要する転送遅延が大きくなるばかりでなく、ミラーコンテンツの転送時の大量のトラフィックによって、そのリンクを通過する他のトラフィックを阻害するおそれがある。
【００１５】
また、複数のミラーサーバに同時に同一コンテンツの動的ミラーリングを行う場合、各ミラーサーバに同じミラーコンテンツの転送を並列に行うため、転送トラフィックが網に与える負荷はその分大きくなる。
【００１６】
本発明の第１の目的は、上記従来技術の欠点を解決し、網内の任意のノードが適応的にミラーサーバになることにより、オリジンサーバに対するアクセス負荷状況に応じて最適なミラーサーバ群を生成できるようなコンテンツ動的ミラーリングシステムを提供することにある。
【００１７】
本発明の第２の目的は、上記従来技術の欠点を解決し、網内のリソース状況を考慮することにより、動的ミラーリングに伴う性能改善効果を高めることができるコンテンツ動的ミラーリングシステムを提供することにある。
【００１８】
本発明の第３の目的は、上記従来技術の欠点を解決し、オリジンサーバから１つあるいは複数のミラーサーバに対して動的ミラーリングを行う際に、ミラーコンテンツの転送遅延と転送トラフィック量を削減することのできるコンテンツ動的ミラーリングシステムを提供することにある。
【課題を解決するための手段】
【００１９】
上記目的を達成するため本発明は、自ノードの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行うオリジンサーバであって、クライアントからのコンテンツ取得要求に伴う前記オリジンサーバの性能劣化を示すパラメータを測定し、該測定結果に基づいて前記動的ミラーリングを行うかどうかを判定するサーバ負荷測定手段と、前記オリジンサーバの保持するコンテンツのうちのどのコンテンツをミラーコンテンツとして、前記動的ミラーリングを行うかを選択するミラーコンテンツ決定手段と、
前記網内リソース情報と前記ミラーサーバ性能情報のいずれか、あるいは両方を取得する機能を有する網リソース取得手段と、前記網リソース取得手段によって取得した情報をもとに、所定のアルゴリズムに従って前記ミラーコンテンツをどの前記ミラーサーバへコピーするかを決定する動的ミラーリング先決定手段と、前記動的ミラーリング先決定手段によって決定された動的ミラーリング先となる前記ノードに対して、前記動的ミラーリングを行うための動的ミラーリング要求を出す動的ミラーリング要求手段と、前記動的ミラーリング要求が受理された場合に、前記ミラーリングツリーを転送経路として動的ミラーリング先として決定された前記ノードに対して、前記ミラーコンテンツを転送するミラーコンテンツ転送手段と、前記ミラーリングツリーを計算する機能を有するミラーリングツリー作成手段とを備え、前記ミラーリングツリー作成手段が作成するミラーリングツリーは、前記ミラーコンテンツがコピーされる前記ミラーサーバの他に、中継用ホップとして選択されたミラーサーバを前記ミラーリングツリーの構成要素として含むことを特徴とする。
【００２０】
請求項２の本発明は、自ノードの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行うオリジンサーバであって、クライアントからのコンテンツ取得要求に伴う前記オリジンサーバの性能劣化を示すパラメータを測定し、該測定結果に基づいて前記動的ミラーリングを行うかどうかを判定するサーバ負荷測定手段と、
前記オリジンサーバの保持するコンテンツのうちのどのコンテンツをミラーコンテンツとして、前記動的ミラーリングを行うかを選択するミラーコンテンツ決定手段と、
前記網内リソース情報と前記ミラーサーバ性能情報のいずれか、あるいは両方を取得する機能を有する網リソース取得手段と、
前記網リソース取得手段によって取得した情報をもとに、所定のアルゴリズムに従って前記ミラーコンテンツをどの前記ミラーサーバへコピーするかを決定する動的ミラーリング先決定手段と、
前記動的ミラーリング先決定手段によって決定された動的ミラーリング先となる前記ノードに対して、前記動的ミラーリングを行うための動的ミラーリング要求を出す動的ミラーリング要求手段と、前記動的ミラーリング要求が受理された場合に、前記ミラーリングツリーを転送経路として動的ミラーリング先として決定された前記ノードに対して、前記ミラーコンテンツを転送するミラーコンテンツ転送手段と、前記ミラーリングツリーを計算する機能を有するミラーリングツリー作成手段とを備え、前記ミラーリングツリー作成手段は、前記オリジンサーバと、前記ミラーコンテンツがコピーされる前記ミラーサーバだけで構成されたミラーリングツリーにおいて、前記ミラーリングツリーの構成要素となる前記オリジンサーバ及び前記ミラーサーバ相互間の転送経路の利用可能帯域が、所定の閾値以下となる前記転送経路を、前記ミラーリングツリーの構成要素以外のミラーサーバを用いて中継する転送経路に置き換えたミラーリングツリーを再作成することを特徴とする。
【００２１】
請求項３の本発明は、前記ミラーリングツリー作成手段は、作成しようとする前記ミラーリングツリーの構成要素となる前記オリジンサーバ及び前記ミラーサーバのリソース情報と、前記オリジンサーバ及び前記ミラーサーバ相互間の前記ミラーコンテンツの転送経路におけるリソース情報のいずれか、又は両方を用いて前記ミラーリングツリーを計算することを特徴とする。
【００２２】
請求項４の本発明は、前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、前記網リソース取得手段によって得られた、前記オリジンサーバに対してコンテンツ取得要求を行うクライアントの属するサイトであるクライアントサイトごとに計測された、前記オリジンサーバから前記クライアントサイトまでの１セッションあたりのコンテンツ転送スループット（第一のコンテンツ転送スループット）と、前記クライアントサイトにとってのコンテンツ取得遅延を最小化するように選択されたミラーサーバから、前記クライアントサイトまでの１セッションあたりのコンテンツ転送スループット（第二のコンテンツ転送スループット）を用いることを特徴とする。
【００２３】
請求項５の本発明は、前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、前記クライアントサイトからの単位時間あたりのコンテンツ取得要求数×（前記第二のコンテンツスループット／前記第一のコンテンツスループット）の値が大きいほど、高い優先度を与えることを特徴とする。
【００２４】
請求項６の本発明は、前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、前記網リソース取得手段によって得られた、前記オリジンサーバに対してコンテンツ取得要求を行うクライアントの属するサイトであるクライアントサイトごとに計測された、動的ミラーリング先の候補となる前記ミラーサーバから、前記クライアントサイトまでの転送経路の利用可能帯域が値が大きいほど、あるいは、動的ミラーリング先の候補となる前記ミラーサーバから、前記クライアントサイトまでのＲＴＴ、又はある固定長データの前記クライアントサイトが下流となる向きの転送遅延の何れか１つの値が小さいほど、高い優先度を与えることを特徴とする。
【００２５】
請求項７の本発明は、前記動的ミラーリング先決定手段は、前記動的ミラーリング先の決定において、前記オリジンサーバから前記ミラーサーバまでの１セッションあたりのコンテンツ転送スループット、又は転送経路の利用可能帯域の値が大きいほど、高い優先度を与えることを特徴とする。
【００２６】
請求項８の本発明は、オリジンサーバの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行う動的ミラーリングシステムのノードであって、前記オリジンサーバから１又は複数の前記ミラーサーバへ前記ミラーコンテンツを転送する際に、前記オリジンサーバを頂点とし、前記ミラーサーバによって構成される任意のツリー状の経路であるミラーリングツリーに従って前記ミラーコンテンツの転送を受け、前記オリジンサーバからの、前記ミラーリングツリーを転送経路とした、前記ミラーコンテンツの転送において、前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継し、前記ミラーリングツリーの下流の前記ミラーサーバへ転送する、ミラーコンテンツ中継手段を有し、前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継する際に、前記ミラーサーバ内に前記ミラーコンテンツを記憶するかしないかの動作をオリジンサーバからの指示に基づいて選択的に行うことを特徴とする。
【００２７】
請求項９の本発明は、オリジンサーバの保持するコンテンツの全部又は一部の複製であるミラーコンテンツを網内の他のミラーサーバへコピーする動的ミラーリングを行う動的ミラーリングシステムのノードであって、前記オリジンサーバから１又は複数の前記ミラーサーバへ前記ミラーコンテンツを転送する際に、前記オリジンサーバを頂点とし、前記ミラーサーバによって構成される任意のツリー状の経路であるミラーリングツリーに従って前記ミラーコンテンツの転送を受け、前記オリジンサーバからの、前記ミラーリングツリーを転送経路とした、前記ミラーコンテンツの転送において、前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継し、前記ミラーリングツリーの下流の前記ミラーサーバへ転送する、ミラーコンテンツ中継手段を有し、前記ミラーリングツリーの上流の前記オリジンサーバ又は前記ミラーサーバから受信した前記ミラーコンテンツを中継する際に、前記ミラーサーバ内に前記ミラーコンテンツを記憶するかしないかの動作を自ノードの状態に基づいて自律的に選択できることを特徴とする。
【００２８】
本発明の第１のコンテンツ動的ミラーリングシステムは、網内に配置された任意のノードに対して、適応的にミラーサーバになれる適応ミラーノード（図１のＢ１）機能が付加される。そして、任意のオリジンサーバからの動的ミラーリング要求が、オリジンサーバ上の動的ミラーリング要求手段（図１のＡ１５）と、ミラーコンテンツ転送手段（図１のＡ１６）及び、適応ミラーノード上の動的ミラーリング要求受付手段（図１のＢ１１）を介して行われ、適応ミラーノードはミラーサーバとして機能する。オリジンサーバは、適応ミラーノード化された網内の任意のノードを動的ミラーリングの対象とすることができ、オリジンサーバにおけるアクセス負荷状況に応じて適応的にミラーサーバ網を構築することが可能となる。これにより、本発明の第１の目的を達成することができる。
【００２９】
本発明の第２のコンテンツ動的ミラーリングシステムは、オリジンサーバから適応ミラーノードへの動的ミラーリング時に、網リソース取得手段（図１１のＦ１１）を介して取得した網リソース状況を考慮して動的ミラーリング先を決定する。動的ミラーリング先の決定アルゴリズムの例は以下の発明の実施の形態において述べられる。これにより、本発明の第２の目的を達成することができる。
【００３０】
本発明の第３のコンテンツ動的ミラーリングシステムは、オリジンサーバからの適応ミラーノードへのミラーコンテンツの転送経路を、ミラーリングツリー作成手段（図１５のＧ１１）によって計算する。ミラーコンテンツは、計算されたミラーリングツリー上を転送される。最適なミラーリングツリーを選択することにより、動的ミラーリング時のミラーコンテンツの転送遅延を削減することができ、特に複数のミラーリング先へのミラーコンテンツの転送においては、その転送遅延と転送トラフィック量を削減することが可能になる。これにより、本発明の第３の目的を達成することができる。
【発明の効果】
【００３１】
以上説明したように本発明によれば、以下のような効果が達成される。
【００３２】
第１の効果は、オリジンサーバは網内に配置された適応ミラーノードを用いて、オリジンサーバのアクセス負荷状況に応じて適応的にミラーサーバ網を構築し、負荷分散の効果を最大限に出すことができる。
【００３３】
その理由は、網内に配置されているルータやプロキシサーバ等の任意のノードに適応ミラーノード機能をもたせることにより、任意のオリジンサーバからの動的ミラーリング要求を受けてミラーサーバとして機能させることができ、オリジンサーバは、適応ミラーノード化された網内の任意のノードを動的ミラーリングの対象とできるからである。
【００３４】
第２の効果は、クライアントは、常に低遅延、高スループットでコンテンツを取得することが可能になる。
【００３５】
その理由は、オリジンサーバにアクセスが集中してコンテンツ取得時の遅延、スループットの性能が低下した場合は、取得要求の頻度が高いコンテンツの複製が自動的にクライアントにとって最寄りの適応ミラーノードにコピーされ、クライアントは最寄りの適応ミラーノードから該コンテンツを取得することが可能だからである。
【００３６】
第３の効果は、従来プロキシサーバとミラーサーバの機能を独立したノードとして実現しなければいけないために要した設置コスト及び管理コストを削減することができる。
【００３７】
その理由は、プロキシサーバ上に適応ミラーノード機能を実装することにより、プロキシサーバの提供する機能とミラーサーバの提供する機能の両方を同一ノード上で提供するすることが可能になるからである。
【００３８】
第４の効果は、ＳＳＬプロトコルによる認証・暗号処理、ＣＧＩスクリプトの実行等を要するコンテンツに対する取得要求による、オリジンサーバへのトラフィック及びオリジンサーバのアクセス負荷を削減することができる。
【００３９】
その理由は、プロキシサーバは従来コンテンツキャッシュ機能しか有しないために、上記のコンテンツに対する取得要求は受け付けることができず、オリジンサーバへ要求を転送するしかなかったが、適応ミラーノード機能を実装してミラーサーバとしての機能をもたせることにより、上記のコンテンツを取り扱うことが可能になるからである。
【００４０】
第５の効果は、コンテンツのミラーリングが行われている場合に、従来はクライアント側で適当なミラーサーバを選択し、その宛先ＩＰアドレスに対応するサーバにコンテンツ取得要求を送信しなければならなかったが、その必要なしに、クライアント側でプロキシサーバの設定を行うだけでミラーコンテンツを取得することができる。
【００４１】
その理由は、適応ミラープロキシサーバを配下のクライアント群におけるプロキシサーバとして設定することにより、配下のクライアント群からの全てのコンテンツ取得要求はこの適応ミラープロキシサーバに受信され、適応ミラープロキシサーバは、各コンテンツ取得要求をみて、ミラーリングされているコンテンツに対する取得要求にのみ直接応答し、その他のコンテンツに対する取得要求は通常のプロキシサーバとしての処理を選択的に行うからである。
【００４２】
第６の効果は、認証、課金処理を行うオリジンサーバの負荷を軽減できる。
【００４３】
その理由は、認証、課金処理は、従来、オリジンサーバでしか行うことができなかったが、動的ミラーリングに伴うオリジンサーバから適応ミラーノードへのミラーコンテンツ転送の際、同時に、認証、課金処理もオリジンサーバから適応ミラーノードに委託することにより、適応ミラーノードにおいて、認証、課金処理を行うことが可能になるからである。
【００４４】
第７の効果は、クライアントは、常に低遅延、高スループットで認証、課金処理を必要とするコンテンツの取得を行うことが可能になる。
【００４５】
その理由は、オリジンサーバにアクセスが集中してコンテンツ取得時の遅延、スループットの性能が低下した場合は、認証、課金処理を要するコンテンツであっても、動的にクライアントに最寄りの適応ミラーノードに該コンテンツの複製が自動的にクライアントにとって最寄りの適応ミラーにコピーされ、同時に認証、課金処理の委託がされるため、クライアントは該コンテンツを最寄りの適応ミラーノードから取得することが可能だからである。
【００４６】
第８の効果は、動的ミラーリングを行う際に、動的ミラーリングを行うことによる性能改善効果を最大化するようにミラーサーバの選択をすることができる。
【００４７】
その理由は、動的ミラーリング時に網内リソース状況を考慮して行うためである。
【００４８】
第９の効果は、動的ミラーリング時に、ミラーコンテンツの転送遅延を削減し、転送経路上の他のトラフィックを阻害しないようなミラーコンテンツの転送ができる。
【００４９】
その理由は、オリジンサーバから動的ミラーリング先となる適応ミラーノードまでのミラーコンテンツの転送経路において、他の適応ミラーノードを中継用ホップとして利用する転送経路を選択することができるからである。
【００５０】
第１０の効果は、複数のミラーリング先へのミラーコンテンツの転送において、その転送遅延と転送トラフィック量を削減することが可能になる。
【００５１】
その理由は、複数のミラーリング先に同時に動的ミラーリングを行う場合、オリジンサーバは、ミラーリング先となる適応ミラーノード及び中継用適応ミラーノードから構成されるミラーリングツリーを作成し、ミラーコンテンツは作成されたミラーリングツリーにそって転送されることができるからである。
【発明を実施するための最良の形態】
【００５２】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００５３】
図１を参照すると、本発明の第１の実施の形態は、オリジンサーバＡ１と、コンテンツ動的ミラーリングが行われる対象となる適応ミラーノードＢ１と、クライアントＣ１とを含む。
【００５４】
オリジンサーバＡ１は、オリジナルコンテンツを保有しているオリジンサーバだけではなく、同一コンテンツが既にミラーリングされているミラーサーバも含むものとし、以下両者をまとめてオリジンサーバと称することにする。オリジンサーバＡ１は、能動的にコンテンツ動的ミラーリングを行う機能を有する。
【００５５】
適応ミラーノードＢ１は、網内に配置されている任意のノードが適応的にミラーサーバになれる機能をもたせた装置であり、本実施の形態の構成において特徴となる装置である。適応ミラーノードの例として、ルータに適応ミラーノード機能をもたせたもの、レイヤ４又はレイヤ７スイッチに適応ミラーノード機能をもたせたもの、プロキシサーバに適応ミラーノード機能をもたせたものなどが挙げられる。また、適応ミラーノード機能のみを有し、他の機能を有さない専用ノードであってもよい。ルータに適応ミラーノード機能が実装された場合の例を考えると、ミラーリングが行われている状態では、ルータとして機能するだけではなく、同時にミラーサーバとしても機能する。
【００５６】
適応ミラーノードＢ１は、任意のオリジンサーバからの動的ミラーリング要求を受けてミラーサーバとして機能する。オリジンサーバＡ１側の立場からみると、適応ミラーノード化された網内の任意のノードを動的ミラーリングの対象とすることができ、オリジンサーバＡ１におけるアクセス負荷状況に応じて適応的にミラーサーバ網を構築することが可能となる。
【００５７】
クライアントＣ１は、コンテンツ取得要求を行うユーザ端末だけではなく、複数のクライアントを収容し、代理にコンテンツ取得要求を行うプロキシサーバであってもよい。
【００５８】
オリジンサーバＡ１は、コンテンツ及びコンテンツの処理方法、処理プログラム等を記憶する記憶装置Ａ１０と、サーバ負荷測定手段Ａ１１と、ミラーコンテンツ決定手段Ａ１２と、動的ミラーリング先決定手段Ａ１３と、適応ミラーノード検出手段Ａ１４と、動的ミラーリング要求手段Ａ１５と、ミラーコンテンツ転送手段Ａ１６とを含む。
【００５９】
サーバ負荷測定手段Ａ１１は、オリジンサーバＡ１のアクセス負荷を測定し、動的ミラーリングを行い負荷分散をするべきかどうかを決定する。ここでアクセス負荷とは、オリジンサーバＡ１のＣＰＵ負荷、コンテンツ転送セッション数、１セッションあたりのコンテンツ転送スループット等のコンテンツ取得要求の集中に伴うオリジンサーバの性能劣化を示すパラメータである。ここで、コンテンツ転送セッションの例として、ＨＴＴＰによるコンテンツ転送時に用いられるＴＣＰセッションが挙げられる。以後、コンテンツ転送セッションを代表して、ＴＣＰセッションとして述べる。
【００６０】
ミラーコンテンツ決定手段Ａ１２は、他のミラーサーバへの動的ミラーリングを行う際に、どのコンテンツを動的ミラーリングすれば負荷分散効果を最大化できるかを判別し、動的ミラーリングすべきコンテンツを決定する。
【００６１】
動的ミラーリング先決定手段Ａ１３は、ミラーコンテンツ決定手段Ａ１２によって決定されたミラーコンテンツの動的ミラーリングにおいて、負荷分散効果を最大化できる１つあるいは複数の適応ミラーノードを、オリジンサーバＡ１のアクセス負荷状況に基づいて決定する。このとき、網内に存在する適応ミラーノードの検出は、適応ミラーノード検出手段Ａ１４によって行われる。
【００６２】
動的ミラーリング先決定手段Ａ１３における、負荷分散効果を最大化できる動的ミラーリング先となる適応ミラーノードの決定アルゴリズムの例を述べる。まず、動的ミラーリングの対象となるコンテンツに対する単位時間あたりのコンテンツ取得要求数を、クライアントが存在する網内の管理ドメインごとに測定する。そして、そのコンテンツ取得要求数の値がある閾値以上である管理ドメイン内に存在する適応ミラーノードを、動的ミラーリング先として決定する。このような管理ドメインの例としてインターネットにおけるＡＳ（Autonomous System）が挙げられる。
【００６３】
適応ミラーノード検出手段Ａ１４は、網内に存在する適応ミラーノードを検出する機能を有する。このとき網内に存在する全ての適応ミラーノードを検出するのはそのオーバーヘッドが大きい。したがって適応ミラーノードの検出はできるだけ少ないオーバーヘッドで行われるべきである。
【００６４】
例として、網内の各管理ドメインごとに配置された代表管理サーバに対して、該管理ドメイン内に存在する適応ミラーノードリストの問合わせを行うなどの方式が考えられる。この代表管理サーバは、各管理ドメイン内の適応ミラーノードを管理し、各適応ミラーノードの位置、リソース状況等を把握する。オリジンサーバＡ１は、ミラーコンテンツを新規に配置したい管理ドメインの代表管理サーバに対してだけ適応ミラーノードリストの問合わせを行うことにより検出オーバヘッドを削減できる。このような管理ドメインの例としてインターネットにおけるＡＳが挙げられる。
【００６５】
網内の適応ミラーノードの検出方法のもう１つの例を述べる。クライアントＣ１からあるオリジンサーバＡ１までのコンテンツ取得要求の通過経路上に、適応ミラーノードが存在するものとする。このような通過経路上に存在する適応ミラーノードとして、ルータ、レイヤ４／レイヤ７スイッチ、プロキシサーバなどが考えられる。このとき、クライアントＣ１からのコンテンツ取得要求に対して、該コンテンツ取得要求の通過経路上に、適応ミラーノードが存在するという情報を付加する。該情報が付加されたコンテンツ取得要求を受信したオリジンサーバＡ１は、クライアントＣ１からあるオリジンサーバＡ１までのコンテンツ取得要求の通過経路上に適応ミラーノードが存在するということを識別する。オリジンサーバＡ１は、クライアントＣ１からのコンテンツ取得要求増加によるアクセス負荷を軽減するためには、該適応ミラーノードに動的ミラーリングを行えばよいと決定できる。
【００６６】
動的ミラーリング要求手段Ａ１５は、動的ミラーリング先決定手段Ａ１３によって動的ミラーリング要求の対象と決定された適応ミラーノードに対して、動的ミラーリング要求を送信する。さらにこの動的ミラーリング要求に対する適応ミラーノードからの応答を受信し、受理されればミラーコンテンツ転送手段Ａ１６によって実際に動的ミラーリングを行い、拒否されれば動的ミラーリングをあきらめるか、動的ミラーリングすべき他の適応ミラーノードを検索する。
【００６７】
ミラーコンテンツ転送手段Ａ１６は、記憶装置Ａ１０から決定されたミラーコンテンツを読み出し、動的ミラーリング要求を受理した適応ミラーノードに対して送信する。このとき送信するミラーコンテンツとは、テキスト、画像、動画等のオブジェクトだけではなく、コンテンツに伴う各種処理プログラム、情報等も含む。このような処理プログラム、情報の例として、検索プログラム、ＣＧＩ（Common Gateway Interface）スクリプト、ＳＳＬ（Secure Socket Layer）等の認証・暗号情報等が挙げられる。また、転送トラフィックを減らすために、送信するミラーコンテンツを圧縮する機能や、転送時のセキュリティ確保のために、送信するミラーコンテンツを暗号化する機能も有する。
【００６８】
適応ミラーノードＢ１は、記憶装置Ｂ１０と、動的ミラーリング要求受付手段Ｂ１１と、要求データ受信部Ｂ１２と、応答コンテンツ作成手段Ｂ１３と、コンテンツ応答手段Ｂ１４とを含む。
【００６９】
記憶装置Ｂ１０は、ミラーコンテンツ記憶部Ｂ１０１を備えている。
【００７０】
ミラーコンテンツ記憶部Ｂ１０１は動的ミラーリングされたコンテンツを記憶する。記憶されるのは、テキスト、画像、動画等のオブジェクトだけではなく、コンテンツに伴う各種処理プログラム、情報等も含む。
【００７１】
動的ミラーリング要求受付手段Ｂ１１は、オリジンサーバＡ１からのコンテンツ動的ミラーリング要求の処理及びオリジンサーバから転送されたミラーコンテンツの受信処理を行う。
【００７２】
要求データ受信部Ｂ１２は、クライアントＣ１からのコンテンツ取得要求を受信し、要求内容を応答コンテンツ作成手段Ｂ１３に渡す。
【００７３】
応答コンテンツ作成手段Ｂ１３は、要求されているコンテンツをミラーコンテンツ記憶部Ｂ１０１から読み出し、応答コンテンツを作成する。このとき、コンテンツに伴う各種処理プログラムの実行、あるいは認証情報等の読み出しが必要とされる場合はそれらの処理を適宜行う。そして作成された応答コンテンツをコンテンツ応答手段Ｂ１４に渡す。
【００７４】
コンテンツ応答手段Ｂ１４は、応答コンテンツ作成手段Ｂ１３によって作成された応答コンテンツを、コンテンツ取得要求を送信したクライアントＣ１に対して送信する。
【００７５】
図２は、動的ミラーリング要求受付手段Ｂ１１の構成を詳細に示した図である。動的ミラーリング要求受付手段Ｂ１１は、オリジンサーバとのデータ送受信手段Ｂ１１１と、動的ミラーリング要求受理判別手段Ｂ１１２と、ミラーコンテンツ受信手段Ｂ１１３と、解凍・復号化手段Ｂ１１４とを含む。
【００７６】
オリジンサーバとのデータ送受信手段Ｂ１１１は、オリジンサーバＡ１からのデータを受信し、その内容を識別する。受信データの内容が動的ミラーリング要求ならば、動的ミラーリング要求受理判別手段Ｂ１１２に対して該動的ミラーリング要求を受理できるかどうかを問い合わせ、その結果をオリジンサーバＡ１に対して返す。また、オリジンサーバＡ１から受信したミラーコンテンツを受信した場合は、受信データをミラーコンテンツ受信手段Ｂ１１３へ渡す。
【００７７】
動的ミラーリング要求受理判別手段Ｂ１１２は、オリジンサーバＡ１からの動的ミラーリング要求が受理できるか否かの判断を行う。
【００７８】
ミラーコンテンツ受信手段はＢ１１３は、オリジンサーバＡ１から受信したミラーコンテンツをミラーコンテンツ記憶部Ｂ１０１へ格納する。また、受信したミラーコンテンツが圧縮あるいは暗号化されている場合は、解凍・復号化手段Ｂ１１４によって必要な解凍・復号化処理を行ってからミラーコンテンツ記憶部Ｂ１０１へ格納する。
【００７９】
解凍・復号化手段Ｂ１１４は、オリジンサーバＡ１から受信したミラーコンテンツの解凍・復号化を行う機能を有する。オリジンサーバＡ１から受信するミラーコンテンツが圧縮・暗号化されない環境下においては、解凍・復号化手段Ｂ１１４は必ずしも必要ではない。
【００８０】
次に、図３を参照して、本実施の形態において、動的ミラーリング時のオリジンサーバＡ１における動作について詳細に説明する。
【００８１】
オリジンサーバＡ１において、動的ミラーリング機能が有効になっている場合、サーバ負荷測定手段Ａ１１が、定期的にサーバのＣＰＵ負荷を監視し、サーバＣＰＵ負荷が予め設定された閾値以上であるかどうかを調べる（図３のステップＳ１０１、Ｓ１０２）。ここで監視する対象の例として、ＣＰＵ負荷の他に、単位時間あたりのコンテンツ取得要求数、コンテンツの転送スループットなどが挙げられる。
【００８２】
ステップＳ１０２で、サーバ負荷が閾値以上であった場合、ミラーコンテンツ決定手段Ａ１２によって、動的ミラーリングを行うコンテンツを決定する（ステップＳ１０３）。ここで動的ミラーリングするコンテンツは、オブジェクト単位という細かい粒度で選択されるよりもむしろ、ページ単位、ウェブサイト単位といった大きな粒度で選択されるべきである。また、動的ミラーリングを行うコンテンツを決定する判断基準の例として、ａ．「単位時間あたりのクライアントからのコンテンツ取得要求数が閾値を超えるもの」、ｂ．「基準ａを満たし、かつコンテンツのサイズが閾値を超えるもの」、ｃ．「コンテンツの種類やサイズに応じた動的ミラーリングによって負荷分散した結果クライアントにとってのコンテンツ転送スループットを最大化するもの」などが挙げられる。
【００８３】
ステップＳ１０２で、サーバ負荷が閾値以下であった場合は、負荷分散の必要はないとみなし、動的ミラーリングは行わない。
【００８４】
ステップＳ１０３の後、動的ミラーリング先決定手段Ａ１３によって、負荷分散効果が最大化されるような１つあるいは複数の適応ミラーノードを、動的ミラーリングの対象となる各コンテンツごとに決定する（ステップＳ１０４、Ｓ１０５）。この適応ミラーノードの決定には、適応ミラーノード検出手段Ａ１４による検出結果が用いられる。また、ステップＳ１０４において、動的ミラーリングによる負荷分散効果より、動的ミラーリングのオーバーヘッドの方が大きいと判断される場合は、動的ミラーリングの実行を中止し、対象となる適応ミラーノードはないと決定する。
【００８５】
次に、ステップＳ１０４、Ｓ１０５において動的ミラーリングを行う対象となる適応ミラーノードがある場合は、動的ミラーリング要求手段Ａ１５によって、各適応ミラーノードに対して動的ミラーリング要求メッセージを送信する（ステップＳ１０６）。動的ミラーリング要求メッセージには、コンテンツの種類、サイズ等のコンテンツに関する情報が含められている。ステップＳ１０５で、対象となる適応ミラーノードがない場合には動的ミラーリングは行わない。
【００８６】
適応ミラーノードから、動的ミラーリング要求メッセージに対する受理応答を受信した場合（ステップＳ１０７）、ミラーコンテンツ転送手段Ａ１６は、記憶装置Ａ１０からミラーコンテンツを読み出し、動的ミラーリングを受理した適応ミラーノードに対して送信する（ステップＳ１０８）。このとき、必要ならばミラーコンテンツを圧縮あるいは暗号化して送信する。
【００８７】
ステップＳ１０８において、オリジンサーバＡ１内の記憶装置Ａ１０から適応ミラーノードＢ１へ直接ミラーコンテンツを送信する方式の他に、同一コンテンツを保持する他のミラーサーバを検出し、最も転送遅延が小さくなるミラーサーバから適応ミラーノードＢ１へ送信する方式も考えられる。また、１つのミラーコンテンツを複数の部分に分割し、同一コンテンツを保持する複数のミラーサーバから分割した各々の部分を並列に送信し、適応ミラーノードＢ１で組み立てを行うという方式により転送遅延を短縮する方式も考えられる。
【００８８】
図４は、図３のステップＳ１０８において、最も転送遅延が小さくなるミラーサーバから動的ミラーリングを行う方式を実現するためのミラーコンテンツ転送手段Ａ１６の構成を詳細に示したものである。ミラーコンテンツ転送手段Ａ１６は、他ミラーサーバとの通信手段Ａ１６１と、ソース決定手段Ａ１６２と、適応ミラーノードとの通信手段Ａ１６３とを含む。
【００８９】
他ミラーサーバとの通信手段Ａ１６１は、他のミラーサーバと通信する機能を有し、他のミラーサーバに対して、保持するコンテンツおよび網リソースを問合わせ、さらにミラーコンテンツ転送の指示などを行う。ソース決定手段Ａ１６２は、自ノードまたは他のミラーサーバから適応ミラーノードＢ１までの網リソースにもとづいて、最も転送遅延が少なくなるソースを決定する。適応ミラーノードとの通信手段Ａ１６３は、適応ミラーノードＢ１と通信する機能を有し、適応ミラーノードＢ１に対してミラーコンテンツの転送を行う。
【００９０】
次に、図４に示したミラーコンテンツ転送手段Ａ１６が、ステップＳ１０８において、最も転送遅延が小さくなるミラーサーバから動的ミラーリングを行う場合の詳細な動作について図５を用いて説明する。
【００９１】
まず、動的ミラーリングを行おうとするコンテンツと同一のコンテンツを保持するミラーサーバを検出する（ステップＳ８０１）。ステップＳ８０１において同一コンテンツを保持するミラーサーバを検出できた場合（ステップＳ８０２）、検出された各ミラーサーバから、コンテンツが転送される適応ミラーノードまでの網リソースおよび、次ノードから該適応ミラーノードまでの網リソースを取得する（ステップＳ８０３）。次に、ステップＳ８０３で取得した網リソース情報を用いて、該適応ミラーノードに対してミラーコンテンツを送信する際に最も転送遅延が小さくなる送信元を決定する（ステップＳ８０４）。
【００９２】
送信元が自ノードである場合（ステップＳ８０５）、自ノードから該適応ミラーノードにミラーコンテンツを送信する（ステップＳ８０６）。ステップＳ８０２において同一コンテンツを保持するミラーサーバが存在しなかった場合も、ステップＳ８０６を実行する。ステップＳ８０５において送信元が自ノードではなく、他のミラーサーバのいずれかである場合、送信元となるミラーサーバに対してミラーコンテンツの転送を指示し（ステップＳ８０７）、該ミラーサーバからミラーコンテンツの転送が終了したというメッセージを受信することによってミラーコンテンツ転送終了を確認する（ステップＳ８０８）。
【００９３】
図６は、ステップＳ１０８において、最も転送遅延が小さくなるミラーサーバから動的ミラーリングを行う方式の例を示すものである。オリジンサーバ１０１、適応ミラーノード１０２、１０３、１０４がそれぞれリンク２０１、２０２、２０３、２０４を介してバックボーンネットワーク１に接続されている。いま、オリジンサーバ１０１から適応ミラーノード１０４にあるコンテンツを動的ミラーリングしようとしており、適応ミラーノード１０２、１０３はともに同一コンテンツを既にもっているとする。このとき、各オリジンサーバ、適応ミラーノードから適応ミラーノード１０４までの利用可能帯域を示したものが表３０１である。この利用可能帯域の情報が与えられたとき、オリジンサーバ１０１は、適応ミラーノード１０３から該コンテンツを転送した方が少ない転送遅延で動的ミラーリングが行えると判断し、適応ミラーノード１０３に対して該コンテンツを適応ミラーノード１０４に送信するように指示する。該コンテンツの転送を指示された適応ミラーノード１０３は、適応ミラーノードに該コンテンツを転送し、転送終了を確認したのち、正常に転送されたことをオリジンサーバ１０１に応答する。
【００９４】
ステップＳ１０７において、動的ミラーリング要求メッセージに対する拒否応答を受信した場合は、ステップＳ１０４に戻り、拒否応答のあった適応ミラーノードを除外して再度適応ミラーノードの決定を行う。
【００９５】
次に、図７を参照して、本実施の形態において、動的ミラーリング時の適応ミラーノードＢ１における動作について詳細に説明する。
【００９６】
適応ミラーノードＢ１において、オリジンサーバＡ１から動的ミラーリング要求メッセージを受信すると（図７のステップＳ２０１）、動的ミラーリング要求受付手段Ｂ１１は、その要求を受理できるかどうかを判定する（ステップＳ２０２）。ここで要求を受理できるかどうかの判定基準の例としては、ａ．「適応ミラーノードＢ１における記憶装置Ｂ１０においてミラーコンテンツを格納するのに十分な残りリソースがあるか」、ｂ．「ミラーコンテンツに伴う処理プログラムがある場合、その処理プログラムを実行できる環境であるか」、ｃ．「ミラーサーバからクライアント向けの網リソースが十分あるか」などがある。
【００９７】
ステップＳ２０２において、要求を受理できると判定された場合、オリジンサーバＡ１に対して受理応答を送信する（ステップＳ２０３）。また要求を受理できないと判定された場合は拒否応答を送信する（ステップＳ２０４）。
【００９８】
ステップ２０３で受理応答を送信した場合、ミラーサーバＢ１は、オリジンサーバＡ１からミラーコンテンツを受信し、記憶装置Ｂ１０内のミラーコンテンツ記憶部Ｂ１０１に保存する（ステップＳ２０６）。このとき、受信したミラーコンテンツが圧縮あるいは暗号化されている場合、これを解凍あるいは復号化してから保存する。
【００９９】
また、ミラーサーバＢ１における、クライアントからのコンテンツ取得要求を受信した際の動作の説明に関しては、従来のミラーサーバの動作と同様である。
【０１００】
次に、本実施の形態の効果について説明する。
【０１０１】
従来技術では、オリジンサーバが動的ミラーリングを行ってアクセス負荷の分散を図る際に、その動的ミラーリング先は、予め固定的にミラーサーバとして配置されているものからしか選択できなかった。そのため、アクセス負荷分散効果は、予め配置されているミラーサーバの数及び位置によって制限されていた。
【０１０２】
本実施の形態では、網内に配置されているルータやプロキシサーバ等の任意のノードに適応ミラーノード機能をもたせ、任意のオリジンサーバからの動的ミラーリング要求を受けてミラーサーバとして機能させる。オリジンサーバは、適応ミラーノード化された網内の任意のノードを動的ミラーリングの対象とすることができ、オリジンサーバにおけるアクセス負荷状況に応じて適応的にミラーサーバ網を構築することが可能となる。
【０１０３】
クライアントの立場からみると、オリジンサーバにアクセス負荷が集中しているときは、そのミラーコンテンツが自動的に最寄りの適応ミラーノードにコピーされ、常に低遅延、高スループットでコンテンツを取得することが可能になる。
【０１０４】
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。
【０１０５】
本発明の第２の実施の形態は、第１の実施の形態において、プロキシサーバを適応ミラーノード化した場合に対応する。
【０１０６】
図８を参照すると、本発明の第２の実施の形態は、図１に示された第１の実施の形態における適応ミラーノードＢ１が、適応ミラープロキシサーバＤ１になっている点で異なる。
【０１０７】
適応ミラープロキシサーバとは、プロキシサーバに適応ミラーノード機能をもたせたものであり、記憶装置Ｄ１０と、動的ミラーリング要求受付手段Ｂ１１と、応答コンテンツ作成手段Ｂ１３と、コンテンツ応答手段Ｂ１４と、要求データ受信部Ｄ１１と、動作決定手段Ｄ１２と、キャッシュヒット判定手段Ｄ１３と、コンテンツ取得要求転送先決定手段Ｄ１４と、コンテンツ取得要求転送手段Ｄ１５とを含む。
【０１０８】
記憶装置Ｄ１０は、キャッシュ記憶部Ｄ１０１を有している点で、記憶装置Ｂ１０と異なる。キャッシュ記憶部Ｄ１０１は、適応ミラープロキシサーバがプロキシサーバとしてのコンテンツキャッシュ機能を有するときに、キャッシュコンテンツを格納するために用いられる。
【０１０９】
要求データ受信部Ｄ１１は、クライアントＣ１からのコンテンツ取得要求を受信し、動作決定手段Ｄ１２に渡す。
【０１１０】
動作決定手段Ｄ１２は、コンテンツ取得要求で要求されている内容を識別する。そして要求内容にしたがって、ミラーサーバとして動作するか、プロキシサーバとして動作するかを決定する。単純には、適応ミラープロキシサーバＤ１内にミラーリングしているコンテンツに対する取得要求であればミラーサーバとして動作すると決定し、それ以外の場合はプロキシサーバとして動作すると決定する。その他、ミラーリングしていても、クライアントの認証を行い、許可されているクライアントにのみ、ミラーサーバとしての動作を行うという方式なども考えられる。
【０１１１】
キャッシュヒット判定手段Ｄ１３は、クライアントからのコンテンツ取得要求に該当するコンテンツがキャッシュ記憶部Ｄ１０１内に存在するかどうかを判定し、存在すれば、該当コンテンツをコンテンツ応答手段Ｂ１４に渡す。存在しなければ、該当コンテンツ取得要求をコンテンツ取得要求転送先決定手段Ｄ１４に渡す。
【０１１２】
コンテンツ取得要求転送先決定手段Ｄ１４は、コンテンツ取得要求に該当するコンテンツを、適応ミラープロキシサーバＤ１がミラーリング又はキャッシュをしていない場合に、コンテンツ取得要求を転送する先のオリジンサーバ又はミラーサーバを決定する。
【０１１３】
コンテンツ取得要求転送手段Ｄ１５は、コンテンツ取得要求転送先決定手段Ｄ１４によって決定されたオリジンサーバ又はミラーサーバにコンテンツ取得要求を転送する。
【０１１４】
次に、図９を参照して、本実施の形態において、コンテンツ取得要求受信時の適応ミラープロキシサーバＤ１における動作について詳細に説明する。
【０１１５】
適応ミラープロキシサーバＤ１において、要求データ受信部Ｄ１１がクライアントＣ１からのコンテンツ取得要求を受信すると（図９のステップＳ３０１）、動作決定手段Ｄ１２は、適応ミラープロキシサーバＤ１内にミラーリングされているコンテンツに対する取得要求であるかどうかを識別する（ステップＳ３０２）。
【０１１６】
ステップＳ３０２において、コンテンツ取得要求に該当するコンテンツが適応ミラープロキシサーバＤ１内にミラーリングされていれば、応答コンテンツ作成手段Ｂ１３によって、ミラーコンテンツ記憶部Ｂ１０１から読み出しを行い、応答コンテンツの作成を行う（ステップＳ３０３）。このとき、要求されているコンテンツが何らかの処理プログラムの実行、あるいは認証処理などを必要としている場合は、適宜その実行、処理を行い、応答コンテンツの作成を行う。上記の手順にしたがって作成された応答コンテンツをコンテンツ応答手段Ｂ１４に渡し、クライアントＣ１に対して応答する（ステップＳ３０５）。
【０１１７】
また、ステップＳ３０２において、コンテンツ取得要求に該当するコンテンツが適応ミラープロキシサーバＤ１内にミラーリングされていなければ、キャッシュヒット判定手段Ｄ１３によって、コンテンツ取得要求に該当するコンテンツがキャッシュ記憶部Ｄ１０１内に存在するかどうかを判定する（ステップＳ３０４）。
【０１１８】
ステップＳ３０４においてコンテンツが存在していれば（キャッシュにヒット）、キャッシュ記憶部Ｄ１０１から該当コンテンツを読み出し、そのコンテンツをコンテンツ応答手段Ｂ１４に渡し、クライアントＣ１に対して応答する（ステップＳ３０６、Ｓ３０５）。
【０１１９】
また、ステップＳ３０４においてコンテンツが存在しなければ（キャッシュにヒットしない）、コンテンツ取得要求転送先決定手段Ｄ１４によって、コンテンツ取得要求を転送する先のオリジンサーバ又はミラーサーバを決定する（ステップＳ３０７）。
【０１２０】
適応ミラープロキシサーバＤ１が、複数の候補転送先を検出する手段を有している場合、コンテンツ取得要求転送先決定手段Ｄ１４はこれらの候補転送先から１つを選択する。このときの選択基準の例として、最も負荷の低いものや、下り方向（サーバからクライアントの向き）の利用可能帯域が最も大きいものなどが挙げられる。
【０１２１】
ステップＳ３０７によって決定されたコンテンツ取得要求転送先に対して、コンテンツ取得要求転送手段Ｄ１５は、該当コンテンツ取得要求を転送する（ステップＳ３０８）。
【０１２２】
次に、本実施の形態の効果について説明する。
【０１２３】
本実施の形態では、プロキシサーバ上に適応ミラーノード機能を実装する。したがって、プロキシサーバの提供する機能とミラーサーバの提供する機能の両方を同一ノード上で提供するすることが可能になり、従来各々の機能を別のノードとして実現しなければいけないために要した設置コスト及び管理コストを削減することができる。
【０１２４】
また、プロキシサーバの立場からみると、従来コンテンツキャッシュ機能しか有しないために、ＳＳＬプロトコルによる認証・暗号処理、ＣＧＩスクリプトの実行等を要するコンテンツに対する取得要求は受け付けることができず、オリジンサーバへ要求を転送するしかなかった。適応ミラーノード機能を実装してミラーサーバとしての機能をもたせることにより、上記のコンテンツに対する取得要求を受け付けることが可能になり、オリジンサーバへのトラフィック及びオリジンサーバのアクセス負荷を削減することができる。
【０１２５】
更に、本実施の形態では、適応ミラープロキシサーバを配下のクライアント群におけるプロキシサーバとして設定することにより、配下のクライアント群からの全てのコンテンツ取得要求はこの適応ミラープロキシサーバに受信される。適応ミラープロキシサーバは、各コンテンツ取得要求をみて、ミラーリングされているコンテンツに対する取得要求にのみ直接応答し、その他のコンテンツに対する取得要求は通常のプロキシサーバとしての処理を選択的に行う。従来はコンテンツのミラーリングが行われている場合、クライアント側で適当なミラーサーバを選択し、その宛先ＩＰアドレスに対応するサーバにコンテンツ取得要求を送信しなければならなかったが、本実施の形態ではその必要がなく、クライアント側でプロキシサーバの設定を行うだけでミラーコンテンツを取得することができる。
【０１２６】
次に、本発明の第３の実施の形態について図面を参照して詳細に説明する。
【０１２７】
本発明の第３の実施の形態は、第１の実施の形態において、適応ミラーノードとクライアント間とのデータ通信に対して認証、課金処理が必要とされており、適応ミラーノードが認証、課金処理機能を有する場合に対応する。
【０１２８】
図１０を参照すると、本発明の第３の実施の形態は、図１に示された第１の実施の形態において、適応ミラーノードＢ１の代わりに、適応ミラーノードＥ１となっている点が異なる。
【０１２９】
適応ミラーノードＥ１は、応答コンテンツ作成手段Ｂ１３と、コンテンツ応答手段Ｂ１４と、記憶装置Ｅ１０と、動的ミラーリング要求受付手段Ｅ１１と、要求データ受信部Ｅ１２と、認証課金情報処理手段Ｅ１３とを有する。
【０１３０】
記憶装置Ｅ１０は、認証課金情報管理部Ｅ１０１を有している点で、記憶装置Ｂ１０と異なる。認証課金情報管理部Ｅ１０１は、認証、課金に関する情報を管理する。管理される情報の例として、各クライアントの認証ＩＤ、パスワード及びコンテンツごとのダウンロード価格などがある。更に、各クライアントごとの課金状況などの動的な情報もある。
【０１３１】
動的ミラーリング要求受付手段Ｅ１１は、図１における動的ミラーリング要求受付手段Ｂ１１の機能に加え、適応ミラーノードＥ１がオリジンサーバＡ１の代わりに認証、課金処理を行うために必要な手続きを行う。この手続きには、オリジンサーバＡ１と適応ミラーノードＥ１とが互いを信用して認証、課金処理の委託を行う手順と、オリジンサーバＡ１の有する認証課金情報の内、適応ミラーノードＥ１が、クライアントＣ１から受信したコンテンツ取得要求の認証、課金を行うために必要な情報を、認証課金情報管理部Ｅ１０１に記憶し、その後オリジンサーバＡ１との間で、認証課金情報管理部Ｅ１０１に記憶された情報の同期をとる手順とを含む。また、認証課金情報の管理がオリジンサーバＡ１に一元化されている場合、適応ミラーノードＥ１内の認証課金情報処理手段Ｅ１３が行う認証、課金処理時にオリジンサーバＡ１内に管理されている認証課金情報の読み出し、書き込みを行う手順も含む。更に、オリジンサーバＡ１との間でのデータベース同期、認証、課金処理時のオリジンサーバＡ１内で管理されている認証課金情報の読み出し、書き込みにおいて、オリジンサーバＡ１と適応ミラーノードＥ１との間でやり取りされるデータは、圧縮、暗号化されてもよい。
【０１３２】
要求データ受信部Ｅ１２は、クライアントＣ１からのコンテンツ取得要求を受信し、その認証処理を認証課金情報処理手段Ｅ１３を介して行う。認証の結果、コンテンツ取得が許可されればコンテンツ作成手段Ｂ１３に要求内容を渡し、該コンテンツの作成を指示する。
【０１３３】
認証課金情報処理手段Ｅ１３は、要求データ受信部Ｅ１２が受信したコンテンツ取得要求の認証を行い、認証された要求に対して課金を行う機能を有する。このとき、要求するクライアントのＩＤ、パスワードなどの情報を認証課金情報管理部Ｅ１０１から読み出し、更にコンテンツ取得に伴って発生する課金情報を認証課金情報管理部Ｅ１０１に書き込む。
【０１３４】
上記の例は、適応ミラーノードＢ１に対して、認証、課金処理機能が導入されたノードであるが、その他にも、第２の実施の形態による適応ミラープロキシサーバＤ１に対して認証、課金処理機能が導入されたノードの構成も同様に考えられる。
【０１３５】
次に、本実施の形態の効果について説明する。
【０１３６】
本実施の形態では、適応ミラーノードにおいて、認証、課金処理をすることができる。このような処理は、従来はオリジンサーバでしか行うことができなかったが、認証、課金処理を動的に適応ミラーノードに委託することにより、オリジンサーバの負荷を軽減できる。認証、課金処理が伴うコンテンツ場合、通常のコンテンツの場合と比較して、クライアントからの要求応答に遥かに多くの処理を必要とするため、適応ミラーノードによる負荷分散効果は、通常コンテンツの動的ミラーリングの場合と比べて大きいといえる。
【０１３７】
次に、本発明の第４の実施の形態について図面を参照して詳細に説明する。
【０１３８】
本発明の第４の実施の形態は、第１の実施の形態において、オリジンサーバからの動的ミラーリング時に、網リソース状況を考慮して動的ミラーリング先を決定するという点が異なる。
【０１３９】
図１１を参照すると、本発明の第４の実施の形態は、図１に示された第１の実施の形態において、オリジンサーバＡ１の代わりに、網リソース取得手段Ｆ１１を有し、かつ網リソース取得手段Ｆ１１によって取得された網リソース情報に基づいて、動的ミラーリング先の決定を行なう動的ミラーリング先決定手段Ａ１３ａを備えるオリジンサーバＦ１となっている点が異なる。動的ミラーリングが行われる先として、適応ミラーノードＢ１が描かれているが、本実施の形態では、従来型の固定的に配置されるミラーサーバであってもよい。本実施の形態では、以下、動的ミラーリング先のことをミラーサーバと総称する。
【０１４０】
網リソース取得手段Ｆ１１は、他ミラーサーバまでの利用可能帯域及び遅延、他ミラーサーバのアクセス負荷状況など、動的ミラーリングに関する網リソース情報を取得する機能を有する。また、網リソース情報としては、上記の他に、他ミラーサーバのＣＰＵ負荷、ＴＣＰセッション数などのサーバ性能に関する情報を含めることもできる。上記の網リソース及びサーバ性能情報の取得方法として、各ミラーサーバに対して測定パケットを流すことにより動的に取得する方式や、網内各ノード／リンクのリソース情報交換をサポートするルーティングプロトコルによって収集した情報を用いる方式などが考えられる。
【０１４１】
本実施の形態の動的ミラーリング先決定手段Ａ１３ａは、網リソース取得手段Ｆ１１によって得られたリソース情報を基にして後述するアルゴリズムに従った計算を行なう網リソースベース計算手段Ａ１３０を備え、当該計算結果に従って最適な動的ミラーリング先を決定する。
【０１４２】
従来は、動的ミラーリングを行う先のミラーサーバを決定する際の優先度として、網リソース情報を考慮していなかったため、典型的な例では、該ミラーサーバによってサポートされるクライアントサイトからの単位時間あたりのコンテンツ取得要求数が用いられていた。このコンテンツ取得要求数とは、動的ミラーリングを行うコンテンツに対する取得要求数であり、該コンテンツの動的ミラーリングを行うことによって、オリジンサーバにおけるコンテンツ取得要求受信数すなわちオリジンサーバのアクセス負荷の減少分を最大化することを目的としている。
【０１４３】
本実施の形態では、コンテンツ取得要求数以外に各ミラーサーバに関する網リソースを考慮して優先度を決定する点が異なる。以下に、動的ミラーリング先の優先度を決定する際に、コンテンツ取得要求数の他に考慮する網リソースの例を複数挙げる。
【０１４４】
（１）オリジンサーバに対してコンテンツ取得要求を行うクライアントの属するサイトごとに計測された、オリジンサーバから各クライアントサイトまでの１セッションあたりのＴＣＰスループットと、該クライアントサイトにとってのコンテンツ取得遅延を最小化するように選択されたミラーサーバから、該クライアントサイトまでの１セッションあたりのＴＣＰスループット。
【０１４５】
（２）上記（１）において、１セッションあたりのＴＣＰスループットの代わりに利用可能帯域としたもの。
【０１４６】
（３）上記（１）において、１セッションあたりのＴＣＰスループットの代わりにＲＴＴ（Round Trip Time）としたもの。
【０１４７】
（４）上記（１）において、１セッションあたりのＴＣＰスループットの代わりにある固定長データの転送遅延時間（クライアントサイトが下流となる向き）としたもの。
【０１４８】
（５）オリジンサーバからあるミラーサーバにコンテンツを動的ミラーリングする際のオリジンサーバから該ミラーサーバまでの１セッションあたりのＴＣＰスループット。
【０１４９】
（６）上記（５）において１セッションあたりのＴＣＰスループットの代わりに利用可能帯域としたもの。
【０１５０】
以下、上記（１）〜（６）を用いた動的ミラーリング先の決定アルゴリズムのいくつかの実現例について図１２〜図１４を用いて詳細に説明する。
【０１５１】
まず、上記（１）を利用する場合のアルゴリズムによって動的ミラーリング先を決定する例を図１２を参照して以下に述べる。これをアルゴリズム１とする。
【０１５２】
オリジンサーバＦ１は、クライアントの存在するドメインごとに、該ドメインからの単位時間あたりのコンテンツ取得要求数をモニタしている。ここでドメインの例として、ＡＳが挙げられる。以下ドメインはＡＳである場合を例にして説明する。
【０１５３】
いま、オリジンサーバは、自身の負荷を軽減するためにいくつかのミラーサーバに自身の保持するコンテンツの動的ミラーリングを行うとする。ここでは、動的ミラーリングを行う対象となるミラーサーバ数は与えられているものとする。
【０１５４】
まず、動的ミラーリング先決定手段Ａ１３ａは、オリジンサーバにコンテンツ取得要求を行うクライアントが存在する全ＡＳのなかから、単位時間あたりのコンテンツ取得要求数が閾値を超えるＡＳを抽出する（図１２のステップＳ４０１）。
【０１５５】
次に、抽出された各ＡＳごとに（ステップＳ４０２）、該ＡＳ内にあるミラーサーバを１つ選択する（ステップＳ４０３）。ここで、該ＡＳにあるミラーサーバを検出し、そのなかから１つを選択する方法としては、各ＡＳ内にあるミラーサーバを一元管理している代表管理サーバに問合わせを行い、最もＣＰＵ負荷の低いものを選択する方法などが考えられる。
【０１５６】
抽出された各ＡＳごとに、オリジンサーバから該ＡＳ内のクライアントまでの１セッションあたりのＴＣＰスループットを測定し、これをＴＣＰＢＷ１とする（ステップＳ４０４）。更に該ＡＳ内で選択されたミラーサーバから、該ＡＳ内のクライアントまでの１セッションあたりのＴＣＰスループットを測定し、これをＴＣＰＢＷ２とする（ステップＳ４０５）。ここで、該ＡＳ内のクライアントとは、任意に選択されたいくつかの端末でもよいし、固定的に設置された測定用ポイントなどでもよい。次に、網リソースベース計算手段Ａ１３０にて、Ｘ＝Ｎ×（ＴＣＰＢＷ２／ＴＣＰＢＷ１）を計算する（ステップＳ４０６）。ここで、Ｎは該ＡＳ内に存在するクライアントからの単位時間あたりのコンテンツ取得要求数である。
【０１５７】
上記のＸを全ての抽出されたＡＳに対して計算し（ステップＳ４０７）、Ｘの値が大きいＡＳ内のミラーサーバから順に、予め与えられた数だけ動的ミラーリングを行う対象として選択する（ステップＳ４０８、Ｓ４０９）。
【０１５８】
上記（２）〜（４）を使う場合のアルゴリズムの例も同様にして考えられる。詳細な手順はアルゴリズム１と同様にして考えられるためここでは省略する。
【０１５９】
次に、上記（６）を利用する場合のアルゴリズムによって動的ミラーリング先を決定する例を図１３を参照して以下に述べる。これをアルゴリズム２とする。
【０１６０】
ここでは、動的ミラーリングを行う際にコンテンツの転送先となる候補ミラーサーバが複数存在するとし、このなかから限られた数のミラーサーバにだけ動的ミラーリングを行うものとする。すなわち動的ミラーリングの回数が制限されている。このような状況は、１回あたりの動的ミラーリングのコスト（例えば、ディスク使用量等）が与えられており、合計コストが制限されている場合に十分ありえる。この例では、コンテンツは全てオリジンサーバから直接転送されるものとする。
【０１６１】
まず、動的ミラーリング先の候補である各ミラーサーバに対して（ステップＳ５０１）、オリジンサーバから該ミラーサーバまでの利用可能帯域を測定又は取得し、これをＡｖＢＷとする（ステップＳ５０２）。更に網リソースベース計算手段Ａ１３０にて、該ミラーサーバに対して動的ミラーリングを行おうとしているコンテンツのサイズＳを用いて、Ｓ／ＡｖＢＷを計算する（ステップＳ５０３）。これは動的ミラーリング時の予想されるコンテンツ転送遅延である。全ての候補ミラーサーバに対して上記の計算をした後（ステップＳ５０４）、Ｓ／ＡｖＢＷの値の小さいものから順に、制限回数まで動的ミラーリングを行う（ステップＳ５０５、Ｓ５０６）。
【０１６２】
次に、上記（１）と上記（６）の網リソースを組み合わせて用いるアルゴリズムによって動的ミラーリング先を決定する例を図１４を参照して以下に述べる。これをアルゴリズム３とする。
【０１６３】
ここでも動的ミラーリングを行う際にコンテンツの転送先となる候補ミラーサーバが複数存在するとし、このなかから限られた数のミラーサーバにだけ動的ミラーリングを行うものとする。まず、各候補ミラーサーバに対して、アルゴリズム１、２と同様にしてＴＣＰＢＷ２／ＴＣＰＢＷ１及びＡｖＢＷ／Ｓを計算する（図１４のステップＳ６０１）。ここで各パラメータ取得方法及び計算方法はそれぞれアルゴリズム１、３に述べられた通りである。
【０１６４】
全ての候補ミラーサーバについて計算が終了した後、ＴＣＰＢＷ２／ＴＣＰＢＷ１の最小値の逆数をｋ１、ＡｖＢＷ／Ｓの最小値の逆数をｋ２とする（ステップＳ６０２）。次に、全候補ミラーサーバについてそれぞれ、
Ｙ＝α＊ｋ１＊ＴＣＰＢＷ２／ＴＣＰＢＷ１＋（１−α）＊ｋ２＊ＡｖＢＷ／Ｓ
を計算する（ステップＳ６０３）。ここで、αは０≦α≦１の予め決められた係数である。Ｙが大きいものから順に、制限回数まで動的ミラーリングを行う（ステップＳ６０４、Ｓ６０５）。
【０１６５】
更に、上記（１）と上記（６）の網リソースを組み合わせて用いるもう１つのアルゴリズムの例を考える。これをアルゴリズム４とする。
【０１６６】
ここでも動的ミラーリングを行う際にコンテンツの転送先となる候補ミラーサーバが複数存在するとし、このなかから限られた数のミラーサーバにだけ動的ミラーリングを行うものとする。
【０１６７】
まず、全候補ミラーサーバのなかから、ＴＣＰＢＷ２／ＴＣＰＢＷ１の値が閾値以上である候補ミラーサーバに選択範囲を絞る。そして、絞られた候補ミラーサーバのなかから、アルゴリズム３によってＳ／ＡｖＢＷの値の小さい順に制限回数まで動的ミラーリングを行う。
【０１６８】
次に、本実施の形態の効果について説明する。
【０１６９】
本実施の形態では、動的ミラーリング時に、網内のリソース状況を考慮して動的ミラーリング先を決定することにより、動的ミラーリングに伴う性能改善効果を高めることができる。上述したアルゴリズム１〜４の各々において、具体的な性能改善効果を以下に示す。
【０１７０】
アルゴリズム１では、Ｘ＝Ｎ×（ＴＣＰＢＷ２／ＴＣＰＢＷ１）が大きくなるミラーサーバに優先的に動的ミラーリングを行う。Ｘが大きいほど、該ＡＳ内にあるミラーサーバへの動的ミラーリングによって、コンテンツ取得遅延の改善効果及び、その改善効果の恩恵を受けるコンテンツ取得要求数が大きいと考えられる。したがって、オリジンサーバの負荷減少効果以外にも、クライアントのコンテンツ取得時の性能を改善することができる。
【０１７１】
アルゴリズム２では、動的ミラーリング時のオリジンサーバからミラーサーバまでのミラーコンテンツ転送遅延が小さいものを優先的にミラーリング先として選択する。したがって、動的ミラーリングに伴うミラーコンテンツの転送を高速に完了することができ、直ちにオリジンサーバの負荷軽減を行うことができる。また、ミラーコンテンツの転送に、利用可能帯域が小さいリンクはできるだけ利用されないため、このような利用可能帯域の小さいリンク上を流れる他のトラフィックを大量のミラーコンテンツ転送によって阻害する可能性が低くなる。以上の点で、コンテンツ動的ミラーリングシステムの性能を高めることができる。
【０１７２】
アルゴリズム３では、アルゴリズム１におけるＴＣＰＢＷ２／ＴＣＰＢＷ１とアルゴリズム２におけるＡｖＢＷ／Ｓをそれぞれ最小値で正規化し、それぞれに任意の重み付けをして加えた値を比較してミラーリング先を選択する。したがって、クライアントにおけるコンテンツ取得遅延の改善効果と、アルゴリズム２による効果を両立したいときに、それぞれの重要度に応じた重み付けを行うことにより、最適な動的ミラーリング先を選択することができる。
【０１７３】
アルゴリズム４では、まずクライアントにおけるコンテンツ取得遅延の改善効果がある一定以上であるものだけに候補ミラーサーバを絞り、そのなかから、オリジンサーバからミラーサーバまでのミラーコンテンツ転送遅延が小さいものから優先的にミラーリング先を選択する。したがって、クライアントにおけるコンテンツ取得遅延の改善効果をある一定値以上に保ったまま、アルゴリズム２による効果を出すことが可能になり、クライアント側の性能改善とオリジンサーバ側の性能改善効果を両立できる。
【０１７４】
次に、本発明の第５の実施の形態について図面を参照して詳細に説明する。
【０１７５】
図１５を参照すると、本実施の形態は、オリジンサーバＧ１が、図１１に示された第４の実施の形態におけるオリジンサーバＦ１の構成に加え、ミラーリングツリー作成手段Ｇ１１を有する点で異なる。更に、図１６を参照すると、適応ミラーノードＨ１内の適応ミラーノードにおける動的ミラーリング要求受付手段Ｈ１１が、図２における適応ミラーノードＢ１内の動的ミラーリング要求受付手段Ｂ１１の構成に加え、ミラーコンテンツ中継手段Ｈ１１１を有する点で異なる。適応ミラーノードＨ１は、適応ミラーノードＢ１、Ｅ１、適応ミラープロキシサーバＤ１のいずれかにおいて、動的ミラーリング要求受付手段Ｂ１を動的ミラーリング要求受付手段Ｈ１で置き換えたものに相当する。
【０１７６】
ミラーリングツリー作成手段Ｇ１１は、動的ミラーリング先決定手段Ａ１３によって決定された動的ミラーリング先に対して、ミラーコンテンツを転送するための最適な経路であるミラーリングツリーを計算する。
【０１７７】
ミラーコンテンツ中継手段Ｈ１１１は、前記ミラーリングツリーの上流のオリジンサーバＧ１又は他の適応ミラーノードＨ１から転送されたミラーコンテンツを中継し、該ミラーリングツリーの下流にある適応ミラーノードＨ１へ該ミラーコンテンツを転送する機能を有する。このとき、該ミラーコンテンツを中継する適応ミラーノードＨ１が、該ミラーコンテンツのミラーサーバとなる必要がある場合は、中継時に、同時に記憶装置内に該ミラーコンテンツを記憶する。
【０１７８】
以下、オリジンサーバＧ１から動的ミラーリングが行われる対象は、適応ミラーノードＨ１であるとして説明を行うが、本実施の形態では、従来型の固定的に配置されるミラーサーバにおいて、ミラーコンテンツ中継手段Ｈ１１１によって実現される機能と同じ機能を有するミラーサーバであってもよい。
【０１７９】
次に、図１７のフローチャートと図１８を参照して本実施の形態の動作について詳細に説明する。
【０１８０】
オリジンサーバＡ１内の動的ミラーリング先決定手段Ａ１３は、ミラーコンテンツの動的ミラーリング先となる１つあるいは複数の適応ミラーノードを決定する（図１７のステップＳ７０１）。このときの決定アルゴリズムの例としては、本発明の第４の実施の形態に述べられたものが挙げられる。
【０１８１】
次に、ミラーリングツリー作成手段Ｇ１１が、ステップＳ７０１によって決定された動的ミラーリング先となる適応ミラーノードに対する、ミラーコンテンツの転送経路となるミラーリングツリーを計算する（ステップＳ７０２）。ここで作成されるミラーリングツリーは、動的ミラーリング先となる適応ミラーノードだけで構成される。ミラーリングツリーの作成には、ミラーリングツリーの構成要素となるオリジンサーバ及び適応ミラーノード自身のリソース情報と、ミラーリングツリーの構成要素となるオリジンサーバ及び適応ミラーノード相互間のミラーコンテンツの転送経路におけるリソース情報とのどちらか一方、あるいは両方を用いる方法が考えられる。
【０１８２】
図１８を用いて、ステップＳ７０２におけるミラーリングツリーの計算アルゴリズムの例を述べる。オリジンサーバ１１３は、ミラーコンテンツを適応ミラーノード１１４、１１５の両方に転送したいとする。ここでは、ミラーリングツリーは、オリジンサーバと適応ミラーノード間及び、動的ミラーリング先となる適応ミラーノード相互間の転送経路における利用可能帯域の逆数をコストとしてダイクストラ（Ｄｉｊｋｓｔｒａ）アルゴリズムで計算される。このアルゴリズムで作成されるミラーリングツリーには、オリジンサーバ及び適応ミラーノードだけがその構成要素として含まれる。そして、ミラーリングツリーによる転送経路は、ミラーコンテンツ転送時の利用可能帯域を最大化するものである。各転送経路における利用可能帯域は表３０３に示される。計算の結果、オリジンサーバ１１３を頂点とし、転送経路２１７（１１３→１１４）を介して適応ミラーノード１１４を経由し、更に転送経路２２０（１１４→１１５）を介して適応ミラーノード１１５に至るミラーリングツリー４０１が作成される。
【０１８３】
そして、中継用適応ミラーノードを追加的に選択する必要があるかどうかを判定する（ステップＳ７０３）。この判定基準の例として、ａ．「ステップＳ７０２で作成したミラーリングツリー上において、ボトルネックとなる利用可能帯域が閾値以下である」、あるいは、ｂ．「ミラーコンテンツ転送における総トラフィック量を削減することができる中継用適応ミラーノードが存在する」などが挙げられる。また、選択する中継用適応ミラーノードの数を制限してもよい。その理由は、多くの中継用適応ミラーノードを選択すると、ステップＳ７０５で行われるミラーリングツリーの計算コストが大きくなるばかりか、多くの中継用適応ミラーノードを経由することで、ミラーコンテンツ転送における総トラフィック量が大きくなりがちだからである。
【０１８４】
ステップＳ７０３において、中継用適応ミラーノードを追加的に選択する必要があると判定された場合、網内に配置されている適応ミラーノードから、最適な中継用適応ミラーノードを選択する（ステップＳ７０４）。ステップＳ７０３において、中継用適応ミラーノードを追加的に選択する必要があると判定されなかった場合は、ステップ７０２で計算されたミラーリングツリーを、ミラーコンテンツの転送経路として決定する。
【０１８５】
ステップＳ７０４における中継用適応ミラーノードの選択アルゴリズムの例を挙げる。ここでは、図１８におけるミラーリングツリー４０１に対して、ステップＳ７０３における判定基準の例ａが用いられるとし、ボトルネックとなる利用可能帯域の閾値が１００ｋｂｐｓであるとする。ミラーリングツリー４０１のボトルネックリンク（転送経路２１７）となる利用可能帯域は８０ｋｂｐｓであるため、中継用適応ミラーノードが追加的に選択される必要があると判定される。また、選択する中継用適応ミラーノードの数は１つに制限されているものとする。本アルゴリズムの例では、利用可能帯域が閾値以下となる転送経路を中継用適応ミラーノードを１ホップ経由して迂回する。
【０１８６】
この中継用適応ミラーノードは、その利用可能帯域が閾値以下となる転送経路において、その上流側のオリジンサーバ又は適応ミラーノードが存在するドメイン（例えばインターネットにおけるＡＳ）に隣接するドメイン内に存在する適応ミラーノードのなかから、中継した場合に利用可能帯域を最大化するように選択される。ここでは、最もオリジンサーバ１１３→適応ミラーノード１１４までの利用可能帯域を最大化するような中継用適応ミラーノードが選択される。ただし、転送経路２１７（１１３→１１４）よりも利用可能帯域が大きくなる中継用適応ミラーノードが存在しない場合は、中継用適応ミラーノードは選択しない。ここでは、転送経路２１９（１１３→１１６）、２２２（１１６→１１４）を介してオリジンサーバ１１３と適応ミラーノード１１４との間を中継する、適応ミラーノード１１６が中継用適応ミラーノードとして選択されたとする。適応ミラーノード１１６が中継用適応ミラーノードとして用いられた場合は、オリジンサーバと適応ミラーノードとの間の利用可能帯域は１５０ｋｂｐｓになる。
【０１８７】
ステップＳ７０４で中継用適応ミラーノードが選択されたのち、再度ミラーリングツリーを作成する（ステップＳ７０５）。ここで作成されるミラーリングツリーは、動的ミラーリング先となる適応ミラーノードに加え、選択された中継用ミラーノードがその構成要素に含められる。ここで用いられるミラーリングツリーの計算アルゴリズムは、ステップ７０２で用いられる計算アルゴリズムと同じでもよいし、異なるものでもよい。異なるアルゴリズムの例として、ステップＳ７０２において計算されたミラーリングツリーにおいて、利用可能帯域がボトルネックとなっていた転送経路部分を、中継用適応ミラーノードを経由する転送経路に置き換えたミラーリングツリーを作成する、などがある。ステップＳ７０３において、中継用適応ミラーノードを追加的に選択する必要があると判定された場合は、ステップＳ７０５で計算されたミラーリングツリーを、ミラーコンテンツの転送経路として決定する。
【０１８８】
図１８の例では、ミラーリングツリー４０１に対して、オリジンサーバ１１３と適応ミラーノード１１４との間の転送経路２１７（１１３→１１４）が適応ミラーノード１１６を中継する転送経路、２１９（１１３→１１６）、２２２（１１６→１１４）に置き換えられ、ミラーリングツリー４０２がミラーコンテンツの転送経路として決定したとする。
【０１８９】
次に、ミラーコンテンツの転送経路として決定されたミラーリングツリー上の各適応ミラーノードに対してミラーコンテンツ転送要求が送信される（ステップＳ７０６）。ここで、ミラーコンテンツ転送要求に含まれる情報は、図３のステップＳ１０６において述べられた情報に加え、ミラーリングツリーの経路情報が含められると共に、中継用適応ミラーノードに対しては、更にミラーコンテンツのミラーリング処理を要求するか中継処理を要求するかという情報が含められる。
【０１９０】
ステップＳ７０６においてミラーコンテンツ転送要求が送信された全適応ミラーノードからの受理応答をオリジンサーバＡ１が受信すると、ミラーコンテンツをミラーリングツリー上に転送する（ステップＳ７０７、Ｓ７０８）。
【０１９１】
図１８の例において、ミラーリングツリー４０２上にミラーコンテンツが転送される場合、オリジンサーバは適応ミラーノード１１６へ転送経路２１９（１１３→１１６）を介してミラーコンテンツの送信を行う。適応ミラーノード１１６は受信したミラーコンテンツを中継し、転送経路２２２（１１６→１１４）を介して適応ミラーノード１１４へ送信する。ここで、適応ミラーノード１１６はいったん記憶装置内に受信したミラーコンテンツを記憶し、全ミラーコンテンツ受信後に適応ミラーノード１１４への送信を行ってもよいし、記憶せずにリアルタイムに中継を行ってもよい。ミラーコンテンツの転送遅延削減の面では、後者の方が望ましい。適応ミラーノード１１４は、受信したミラーコンテンツを記憶装置内に記憶すると同時に、転送経路２２０（１１４→１１５）を介して適応ミラーノード１１５への中継を行う。適応ミラーノード１１５は、受信したミラーコンテンツを記憶装置内に記憶し、ミラーコンテンツの受信が完了すると、オリジンサーバ１１３へミラーコンテンツの全転送が完了したことを示すメッセージを送信する。
【０１９２】
ここでは、ミラーリングツリー４０２上にミラーコンテンツが転送される場合について説明されたが、ミラーリングツリーがマルチキャストツリー状になる場合についても図１８を用いて簡単に説明する。ここでは、オリジンサーバ１１３は、ミラーリングツリー４０３を用いて適応ミラーノード１１４、１１５、１１７へミラーコンテンツの転送を行うものとする。まず、オリジンサーバ１１３は、適応ミラーノード１１４へ転送経路２１７（１１３→１１４）を介してミラーコンテンツの送信を行う。適応ミラーノード１１４は、受信したミラーコンテンツを記憶装置内に記憶すると同時に、ミラーリングツリー４０３における下流側のノードである、適応ミラーノード１１５、１１７へそれぞれ転送経路２２０（１１４→１１５）、転送経路２２３（１１４→１１７）を介してミラーコンテンツの中継を行う。
【０１９３】
ステップＳ７０６においてミラーコンテンツ転送要求が送信された全適応ミラーノードの内、１つ以上の適応ミラーノードから拒否応答を受信した場合、ステップＳ７０１に戻り、動的ミラーリング先の候補となる適応ミラーノードを再選択する（ステップＳ７０７）。その他、拒否応答のあった適応ミラーノードだけを取り除いて、ステップＳ７０３でミラーリングツリーを再計算する方法なども考えられる。
【０１９４】
以上に述べられた本実施の形態では、ミラーリングツリーは、オリジンサーバを頂点とするように作成されたが、オリジンサーバの他に、ミラーコンテンツと同一のコンテンツが既にミラーリングされている他のミラーサーバを頂点としてもよい。複数の適応ミラーノードに動的ミラーリングを同時に行う場合、各適応ミラーノードごとに、最もミラーコンテンツの転送遅延が小さくなるようにミラーリングツリーの頂点となるオリジンサーバ又はミラーサーバを選択し、こうして選択されたオリジンサーバ又はミラーサーバの各々を頂点とする複数のミラーリングツリーを作成して転送を行ってもよい。
【０１９５】
次に、本実施の形態の効果について説明する。
【０１９６】
従来、オリジンサーバから１つあるいは複数のミラーサーバに対して動的ミラーリングを行う際に、直接オリジンサーバからミラーサーバに対してミラーコンテンツの転送が行われるため、ミラーコンテンツ転送に伴う大量のトラフィック量によって、網に負荷をかけてしまうおそれがあった。特に、オリジンサーバからミラーサーバまでの転送経路に利用可能帯域値の非常に小さいリンクが存在する場合、ミラーリングに要する転送遅延が大きくなるばかりでなく、ミラーコンテンツの転送時の大量のトラフィックによって、そのリンクを通過する他のトラフィックを阻害するおそれがある。また、複数のミラーサーバに同時に同一コンテンツの動的ミラーリングを行う場合、各ミラーサーバに同じミラーコンテンツの転送を並列に行うため、転送トラフィックが網に与える負荷はその大きかった。
【０１９７】
本実施の形態では、オリジンサーバから動的ミラーリング先となる適応ミラーノードまでのミラーコンテンツの転送経路において、他の適応ミラーノードを中継用ホップとして利用する転送経路を選択することができる。そのため、ミラーコンテンツの転送遅延を削減し、転送経路上の他のトラフィックを阻害しないようなミラーコンテンツの転送が可能になる。
【０１９８】
また、特に複数のミラーリング先に同時に動的ミラーリングを行う場合、オリジンサーバは、ミラーリング先となる適応ミラーノードでミラーリングツリーを作成し、ミラーコンテンツは作成されたミラーリングツリーにそって転送される。このとき、ミラーリング先となる適応ミラーノード以外の他の適応ミラーノードを中継用にミラーリングツリーに加えてもよい。したがって、複数のミラーリング先へのミラーコンテンツの転送において、その転送遅延と転送トラフィック量を削減することが可能になる。
（実施例）
次に、本発明の第１の実施例を、図面を参照して説明する。この第１の実施例は、本発明の第１及び第２の実施の形態に対応するものである。
【０１９９】
図１９を参照すると、本実施例は、ＡＳ２〜５の４つのＡＳから構成され、それぞれＡＳ内ネットワーク６〜９を有している。また、ＡＳ間はリンク２１３〜２１６によって接続されている。ＡＳ２内にはオリジンサーバ１０５が存在し、ＡＳ３〜５内にはそれぞれ適応ミラープロキシサーバ１０６〜１０８が存在する。また、各ＡＳ内には、それぞれクライアント１０９〜１１２が存在する。ここでは、１台のクライアントマシンではなく、各ＡＳ内に存在するクライアント群をまとめたものとして示している。
【０２００】
本実施例では簡単のために、オリジンサーバ１０５内にあるコンテンツの内、ＵＲＬが“http://www.biglobe.com/news/”で始まるコンテンツ（以下ｎｅｗｓコンテンツ）だけを動的ミラーリングの対象とする。
【０２０１】
適応ミラープロキシサーバは１０６〜１０８は、それぞれ各ＡＳ内にあるクライアント１０９〜１１２のプロキシサーバとして設定されている。各クライアントが送信する全てのコンテンツ取得要求（ＨＴＴＰリクエスト）は、いったん各ＡＳ内のプロキシサーバに受信され、リクエストに対応するコンテンツがキャッシュされていれば直接コンテンツをクライアントに送信する。リクエストに対応するコンテンツをキャッシュしていない場合は、オリジンサーバに該リクエストを代理で送信する。
【０２０２】
オリジンサーバ１０５は、ｎｅｗｓコンテンツの単位時間あたりのリクエスト数をクライアントの存在するＡＳごとにカウントし、その値が閾値を上回った場合、該ＡＳにｎｅｗｓコンテンツを動的ミラーリングするものとする。ここではその閾値を５００００リクエスト／時間とする。
【０２０３】
既に適応ミラープロキシサーバ１０７には、クライアント１１１からのリクエスト数が閾値を超えるため、既にｎｅｗｓコンテンツが動的ミラーリングされており、ミラーサーバとして動作しているとする。クライアント１１１におけるｎｅｗｓコンテンツに対するリクエストは、全て適応ミラープロキシサーバ１０７に送信される。適応ミラープロキシサーバ１０７は該リクエストがミラーコンテンツに対するものであることを識別し、オリジンサーバ１０５に該リクエストを送信することなく直接応答する。
【０２０４】
いま、オリジンサーバ１０５において、クライアント１１０からのｎｅｗｓコンテンツに対するリクエスト数が、閾値である５００００リクエスト／時間を超えたとする。
【０２０５】
オリジンサーバ１０５は、ＡＳ３内にある適応ミラーノードを検索し、適当な適応ミラーノードに動的ミラーリングを行おうとする。
【０２０６】
ここでは、適応ミラープロキシサーバ１０６が、オリジンサーバ１０５に対してクライアント１１０の代理に送信するＨＴＴＰリクエスト内に、プロキシサーバ機能の他に適応ミラーノードの機能をもつことを示す情報が含まれているものとする。オリジンサーバ１０５は、その情報により、ＡＳ３内には適応ミラープロキシサーバ１０６が存在するということを認識し、適応ミラープロキシサーバ１０６にｎｅｗｓコンテンツの動的ミラーリングを行おうと決定する。
【０２０７】
オリジンサーバ１０５は、適応ミラープロキシサーバ１０６に対して、動的コンテンツミラーリング要求を送信する。適応ミラープロキシサーバ１０６は、この要求を受信して、受理できるならば受理応答をオリジンサーバ１０５に対して送信する。
【０２０８】
次に、オリジンサーバ１０５は、既にｎｅｗｓコンテンツをもつ他の適応ミラーノードの各々から、適応ミラープロキシサーバ１０６までの利用可能帯域を調べる。オリジンサーバ１０５からの利用可能帯域と比較して大きいものがあれば、最も利用可能帯域が大きい適応ミラーノードからミラーコンテンツの送信を行う。
【０２０９】
ここでは、オリジンサーバ１０５から適応ミラープロキシサーバ１０６までの利用可能帯域と、適応ミラープロキシサーバ１０７から適応ミラープロキシサーバ１０６までの利用可能帯域とを比較し、後者の方が大きいとする。
【０２１０】
オリジンサーバ１０５は、適応ミラープロキシサーバ１０７に対し、ｎｅｗｓコンテンツを適応ミラープロキシサーバ１０６まで送信するように指示を送信する。
【０２１１】
適応ミラープロキシサーバ１０７は、この指示を受信すると、ｎｅｗｓコンテンツを適応ミラープロキシサーバ１０６に送信する。
【０２１２】
適応ミラープロキシサーバ１０６がｎｅｗｓコンテンツを全て受信すると、以後ｎｅｗｓコンテンツのミラーサーバとして機能し、クライアント１１０から受信したｎｅｗｓコンテンツに対するＨＴＴＰリクエストは直接応答される。
【０２１３】
次に第２の実施例を、図面を参照して説明する。この第２の実施例は、第４の実施の形態に対応するものであり、特に、アルゴリズム１を用いて動的ミラーリング先を決定する場合に対応する。本実施例では、適応ミラープロキシサーバ１０６〜１０８は、通常のミラーサーバであると読みかえてもよい。
【０２１４】
本実施例でも同じく図１９の網構成が用いられるものとする。ここで、オリジンサーバ１０５内には、ｎｅｗｓコンテンツが存在し、ｎｅｗｓコンテンツは、適応ミラープロキシサーバ１０６〜１０８のいずれにもミラーリングが行われていないとする。
【０２１５】
オリジンサーバ１０５は、ｎｅｗｓコンテンツの単位時間あたりのリクエスト数をクライアントの存在するＡＳごとにカウントし、その値が閾値を上回った場合、該ＡＳ内のミラーサーバにｎｅｗｓコンテンツを動的ミラーリングすることができる。ここではその閾値を５００００リクエスト／時間とする。
【０２１６】
ＡＳ３〜５には、それぞれに対応するクライアントであるクライアント１１０〜１１２が存在するが、いま、クライアント１１０〜１１２からのリクエスト数Ｎがそれぞれ１０万リクエスト／時、２０万リクエスト／時、３０万リクエスト／時であり、全て閾値である５００００リクエスト／時間を上回ったとする。各ＡＳ内には、適応ミラープロキシサーバ１０６〜１０８がそれぞれミラーサーバとして存在するということを、オリジンサーバ１０５は第１の実施例と同様にして認識している。したがって、オリジンサーバ１０５は、各ＡＳ内に存在する適応ミラープロキシサーバ１０６〜１０８のそれぞれに対してｎｅｗｓコンテンツの動的ミラーリングを行うことができるが、ここでは、適応ミラープロキシサーバ内ディスクスペースの使用に対して課金が発生するため、動的ミラーリング先は２つだけに制約されているものとする。そこで、第４の実施の形態におけるアルゴリズム４を用いて２つに絞る。
【０２１７】
まず、全てのＡＳに対して、オリジンサーバ１０５から該ＡＳ内にあるクライアントまでの１セッションあたりのＴＣＰスループットであるＴＣＰＢＷ１と、該ＡＳ内に存在する適応ミラープロキシサーバから該ＡＳ内にあるクライアントまでの１セッションあたりのＴＣＰスループットであるＴＣＰＢＷ２を測定する。ここで、該ＡＳ内にあるクライアントは、該ＡＳ内で設定された測定用ポイントが用いられるものとする。測定結果を図２０の表３０２に示す。
【０２１８】
表３０２に示された値と、各ＡＳからの単位時間あたりのリクエスト数より、ＡＳ３〜５に対してそれぞれ、Ｘ＝Ｎ×（ＴＣＰＢＷ２／ＴＣＰＢＷ１）を計算する。その結果、ＡＳ３〜５に対してそれぞれ、Ｘ＝１５０万、４００万、３００万である。Ｘの値は、ＡＳ４、５、３の順に大きい。したがって、適応ミラープロキシサーバ１０７と１０８がｎｅｗｓコンテンツの動的ミラーリング先として決定される。
【０２１９】
上述したコンテンツ動的ミラーリングシステムは、ハードウェア的に実現することは勿論として、コンピュータシステムの磁気ディスク、半導体メモリその他の記録媒体に記録された、上述した各機能を実現するためのプログラムによってソフトウェア的に実現することも可能である。上述した各実施の形態によるコンテンツ動的ミラーリングシステムでは、オリジンサーバＡ１と適応ミラーノードＢ１の動的ミラーリングプログラムＰ１０、Ｐ２０が、記録媒体からコンピュータシステムのデータ処理部（ＣＰＵ）に読み込まれ、データ処理部の動作を制御することにより、上述した各手段の機能を実現して動的ミラーリングを実行する。すなわち、オリジンサーバ及び適応ミラーノードにおいて、それぞれ図３、図５、図７、図９、図１２、図１３、図１４及び図１７の処理を実行する。
【０２２０】
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図面の簡単な説明】
【０２２１】
【図１】本発明の第１の実施の形態の構成を示すブロック図である。
【図２】本発明の第１の実施の形態における動的ミラーリング要求受付手段の構成を詳細に示すブロック図である。
【図３】本発明の第１の実施の形態のオリジンサーバの動作を示すフローチャートである。
【図４】本発明の第１の実施の形態のオリジンサーバのミラーコンテンツ転送手段の詳細な構成を示すブロック図である。
【図５】本発明の第１の実施の形態の最も転送遅延が小さくなるミラーサーバから動的ミラーリングを行う方式の詳細な動作を説明するフローチャートである。
【図６】本発明の第１の実施の形態で最も転送オーバヘッドが少ないミラーサーバから動的ミラーリングを行う方式の例を示す図である。
【図７】本発明の第１の実施の形態のミラーサーバの動作を示すフローチャートである。
【図８】本発明の第２の実施の形態の構成を示すブロック図である。
【図９】本発明の第２の実施の形態の適応ミラープロキシサーバの動作を示すフローチャートである。
【図１０】本発明の第３の実施の形態の構成を示すブロック図である。
【図１１】本発明の第４の実施の形態の構成を示すブロック図である。
【図１２】本発明の第４の実施の形態におけるアルゴリズム１の動作を示すフローチャートである。
【図１３】本発明の第４の実施の形態におけるアルゴリズム２の動作を示すフローチャートである。
【図１４】本発明の第４の実施の形態におけるアルゴリズム３の動作を示すフローチャートである。
【図１５】本発明の第５の実施の形態のオリジンサーバの構成を示すブロック図である。
【図１６】本発明の第５の実施の形態の適応ミラーノードの構成を示すブロック図である。
【図１７】本発明の第５の実施の形態のオリジンサーバの動作を示すフローチャートである。
【図１８】本発明の第５の実施の形態におけるミラーリングツリーの作成例を示す図である。
【図１９】本発明を適用した第１の実施例における網構成図である。
【図２０】本発明を適用した第２の実施例における１セッションあたりのＴＣＰスループットの測定結果を示す図である。
【符号の説明】
【０２２２】
Ａ１  オリジンサーバ
Ａ１０  記憶装置
Ａ１１  サーバ負荷測定手段
Ａ１２  ミラーコンテンツ決定手段
Ａ１３  動的ミラーリング先決定手段
Ａ１４  適応ミラーノード検出手段
Ａ１５  動的ミラーリング要求手段
Ａ１６  ミラーコンテンツ転送手段
Ａ１６１  他ミラーサーバとの通信手段
Ａ１６２  ソース決定手段
Ａ１６３  適応ミラーノードとの通信手段
Ｂ１  ミラーサーバ
Ｂ１０  記憶装置
Ｂ１１  動的ミラーリング要求受付手段
Ｂ１２  要求データ受信部
Ｂ１３  応答コンテンツ作成手段
Ｂ１４  コンテンツ応答手段
Ｂ１０１  ミラーコンテンツ記憶部
Ｂ１１１  データ送受信手段
Ｂ１１２  動的ミラーリング要求受理判別手段
Ｂ１１３  ミラーコンテンツ受信手段
Ｂ１１４  解凍・復号化手段
Ｃ１  クライアント
Ｄ１  適応ミラープロキシサーバ
Ｄ１０  記憶装置
Ｄ１１  要求データ受信部
Ｄ１２  動作決定手段
Ｄ１３  キャッシュヒット判定手段
Ｄ１４  コンテンツ取得要求転送先決定手段
Ｄ１５  コンテンツ取得要求転送手段
Ｄ１０１  キャッシュ記憶部
Ｅ１  適応ミラーノード
Ｅ１０  記憶装置
Ｅ１１  動的ミラーリング要求受付手段
Ｅ１２  要求データ受信部
Ｅ１３  認証課金情報処理手段
Ｅ１０１  認証課金情報管理部
Ｆ１  オリジンサーバ
Ｆ１１  網リソース取得手段
Ｇ１  オリジンサーバ
Ｇ１１  ミラーリングツリー作成手段
Ｈ１  適応ミラーノード
Ｈ１１  動的ミラーリング要求受付手段
Ｈ１１１  ミラーコンテンツ中継手段
１  バックボーンネットワーク
２〜５  ＡＳ
６〜９  ＡＳ内ネットワーク
１０１、１０５  オリジンサーバ
１０６〜１０８  適応ミラープロキシサーバ
１０９〜１１２  クライアント
１１３  オリジンサーバ
１１４〜１１７  適応ミラーノード
２０１〜２１６  リンク
２１７〜２２３  転送経路
３０１  各サーバ間の利用可能帯域を示す表
３０２  各サーバ／クライアント間のＴＣＰスループットを示す表
３０３  各転送経路における利用可能帯域を示す表
４０１〜４０３  ミラーリングツリー
【図１】
2006146951.tif 000003
【図２】
2006146951.tif 000004
【図３】
2006146951.tif 000005
【図４】
2006146951.tif 000006
【図５】
2006146951.tif 000007
【図６】
2006146951.tif 000008
【図７】
2006146951.tif 000009
【図８】
2006146951.tif 000010
【図９】
2006146951.tif 000011
【図１０】
2006146951.tif 000012
【図１１】
2006146951.tif 000013
【図１２】
2006146951.tif 000014
【図１３】
2006146951.tif 000015
【図１４】
2006146951.tif 000016
【図１５】
2006146951.tif 000017
【図１６】
2006146951.tif 000018
【図１７】
2006146951.tif 000019
【図１８】
2006146951.tif 000020
【図１９】
2006146951.tif 000021
【図２０】
2006146951.tif 000022