(57)【特許請求の範囲】
【請求項１】
複数の通信装置を備え、キャッシュ配布サーバーからキャッシュ配布装置に配布されたコンテンツのデータを、前記通信装置間でピアツーピアの通信で送受信する通信システムに備えられる最適化装置であって、
前記通信装置毎に、当該通信装置に対してダウンロードの要求がなされた頻度を表す値を取得し、前記頻度が高い通信装置を、前記キャッシュ配布サーバーからの初期キャッシュの配布先として選択し、選択結果を表す最適化情報を生成する最適化情報生成部と、
前記初期キャッシュの配布先として選択された前記通信装置へ前記コンテンツのデータを配布する前記キャッシュ配布サーバーに対し、前記最適化情報を送信する最適化情報送信部と、を備え、
前記通信システムは、前記コンテンツのデータを要求する通信装置に対して、要求された前記コンテンツのデータを送信可能な他の通信装置を通知するヒントサーバーを備え、
前記最適化情報生成部は、通信装置毎に、前記ヒントサーバーによって通知された回数を、前記ヒントサーバーから前記頻度を表す値として取得し、前記通知された回数が多い通信装置を前記初期キャッシュの配布先として選択する、
最適化装置。
【請求項２】
複数の通信装置を備え、キャッシュ配布サーバーからキャッシュ配布装置に配布されたコンテンツのデータを、前記通信装置間でピアツーピアの通信で送受信する通信システムに備えられる最適化装置が行う最適化方法であって、
前記通信装置毎に、当該通信装置に対してダウンロードの要求がなされた頻度を表す値を取得するステップと、
前記頻度が高い通信装置を、前記キャッシュ配布サーバーからの初期キャッシュの配布先として選択し、選択結果を表す最適化情報を生成するステップと、
前記初期キャッシュの配布先として選択された前記通信装置へ前記コンテンツのデータを配布する前記キャッシュ配布サーバーに対し、前記最適化情報を送信するステップと、
を有し、
前記通信システムは、前記コンテンツのデータを要求する通信装置に対して、要求された前記コンテンツのデータを送信可能な他の通信装置を通知するヒントサーバーを備え、
前記最適化情報を生成するステップでは、通信装置毎に、前記ヒントサーバーによって通知された回数を、前記ヒントサーバーから前記頻度を表す値として取得し、前記通知された回数が多い通信装置を前記初期キャッシュの配布先として選択する、最適化方法。
【請求項３】
複数の通信装置を備え、キャッシュ配布サーバーからキャッシュ配布装置に配布されたコンテンツのデータを、前記通信装置間でピアツーピアの通信で送受信する通信システムに備えられる最適化装置としてコンピュータを動作させるためのコンピュータプログラムであって、
前記通信装置毎に、当該通信装置に対してダウンロードの要求がなされた頻度を表す値を取得するステップと、
前記頻度が高い通信装置を、前記キャッシュ配布サーバーからの初期キャッシュの配布先として選択し、選択結果を表す最適化情報を生成するステップと、
前記初期キャッシュの配布先として選択された前記通信装置へ前記コンテンツのデータを配布する前記キャッシュ配布サーバーに対し、前記最適化情報を送信するステップと、
を前記コンピュータに実行させ、
前記通信システムは、前記コンテンツのデータを要求する通信装置に対して、要求された前記コンテンツのデータを送信可能な他の通信装置を通知するヒントサーバーを備えており、
前記最適化情報を生成するステップにおいて、通信装置毎に、前記ヒントサーバーによって通知された回数を、前記ヒントサーバーから前記頻度を表す値として取得し、前記通知された回数が多い通信装置を前記初期キャッシュの配布先として選択するように前記コンピュータを動作させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配布対象となるデータをキャッシュとしてキャッシュ配布サーバーからキャッシュ配布装置に配布し、その後にキャッシュ配布装置から通信端末装置へデータを配布する通信技術に関する。特に、キャッシュ配布装置から通信端末装置へのデータ配布をより効率良く行う事ができるように、キャッシュ配布サーバーからキャッシュを配布するキャッシュ配布装置を選択するための技術に関する。
【背景技術】
【０００２】
近年、インターネットにおいてＰ２Ｐ（ピアツーピア：Peer To Peer）技術が進展してきている。Ｐ２Ｐ技術を用いて配布対象のデータを通信端末装置へ配布する場合には、例えば以下のように処理が行われる。まず、配布対象のデータをキャッシュとしてキャッシュ配布サーバーからキャッシュ配布装置へ配布する。通信端末装置は、まずはキャッシュ配布装置とＰ２Ｐ通信を行うことによって、配布対象のデータをダウンロードする。その後、通信端末装置は、キャッシュ配布サーバーとＰ２Ｐ通信をすることによって配布対象のデータをダウンロードすることもできるし、配布対象のデータを既にダウンロードした他の通信端末装置とＰ２Ｐ通信をすることによって配布対象のデータをダウンロードすることもできる。
【０００３】
Ｐ２Ｐ技術は様々な長所を持つ。例えば、これまでサーバーで保持していた機能を、Ｐ２Ｐでは端末に分散させるため、クライアントサーバー方式と比較してサーバー負荷等を軽減できる。さらに、近隣からのダウンロードの場合は、Ｐ２Ｐではクライアントサーバー方式と比較して、ルーターやスイッチやケーブル等のノード・リンクにかかる負荷や、ダウンロード時間を削減することができる。さらに、近年はＰ４Ｐ（Provider Portal for P2P）技術が提案され、近隣からのダウンロードを誘発する仕組みが構築されつつある（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Haiyong Xie, Arvind Krishnamurthy, Avi Silberschatz, and Y. Richard Yang. P4P: Explicit Communications for Cooperative Control Between P2P and Network Providers.  http://www.dcia.info/documents/P4P_Overview.pdf
【発明の概要】
【発明が解決しようとする課題】
【０００５】
キャッシュ配布サーバーからキャッシュ配布装置へキャッシュが配布された直後は、キャッシュ配布装置のみがコンテンツのデータを記憶している。したがって、例えばキャッシュ配布サーバーからキャッシュを配布するキャッシュ配布装置が地理的に偏ってしまうと、その後にキャッシュ配布装置から通信端末装置へコンテンツのデータを配布する際にトラフィックの増大やダウンロード時間の増大などを招いてしまう。すなわち、最初にキャッシュ配布サーバーからどのキャッシュ配布装置へキャッシュを配布するかによって、その後のコンテンツのデータ配布の効率が左右される。地理的な偏りのみならず、キャッシュの偏りは様々な要因で生じてしまう。
しかしながら、キャッシュ配布サーバーからキャッシュを配布するキャッシュ配布装置を、従来はランダムに選択していた。そのため、キャッシュ配布装置から通信端末装置へのデータ配布の効率化がなされていなかった。このようなキャッシュ配布の問題は、Ｐ２Ｐに限った問題ではなく、クラウドやクライアントサーバー方式などでのキャッシュの配布においても同様に生じる問題である。
【０００６】
上記事情に鑑み、本発明は、キャッシュ配布装置から通信端末装置へのデータ配布をより効率良く行う事ができるように、キャッシュ配布サーバーからキャッシュを配布するキャッシュ配布装置を選択する技術を提供することを目的としている。
【課題を解決するための手段】
【０００７】
本発明の第一の態様は、複数の通信装置を備え、キャッシュ配布サーバーからキャッシュ配布装置に配布されたコンテンツのデータを、前記通信装置間でピアツーピアの通信で送受信する通信システムに備えられる最適化装置であって、前記通信装置毎に、当該通信装置に対してダウンロードの要求がなされた頻度を表す値を評価パラメータとして取得し、前記頻度が高い通信装置を、前記キャッシュ配布サーバーからの初期キャッシュの配布先として選択し、選択結果を表す最適化情報を生成する最適化情報生成部と、前記初期キャッシュの配布先として選択された前記通信装置へ前記コンテンツのデータを配布する前記キャッシュ配布サーバーに対し、前記最適化情報を送信する最適化情報送信部と、を備え、前記通信システムは、前記コンテンツのデータを要求する通信装置に対して、要求された前記コンテンツのデータを送信可能な他の通信装置を通知するヒントサーバーを備え、前記最適化情報生成部は、通信装置毎に、前記ヒントサーバーによって通知された回数を、前記ヒントサーバーから前記頻度を表す値として取得し、前記通知された回数が多い通信装置を前記初期キャッシュの配布先として選択する。
【０００８】
本発明の第一の態様は、上記の最適化装置であって、前記通信システムは、前記コンテンツのデータを要求する通信装置に対して、要求された前記コンテンツのデータを送信可能な他の通信装置を通知するヒントサーバーを備え、前記最適化情報生成部は、通信装置毎に、前記ヒントサーバーによって通知された回数を、前記ヒントサーバーから前記頻度を表す値として取得し、前記通知された回数が多い通信装置を前記初期キャッシュの配布先として選択する。
【０００９】
本発明の第一の態様は、上記の最適化装置であって、前記最適化情報生成部は、通信装置毎に、他の通信装置からコンテンツのデータを要求された回数を、前記頻度を表す値として取得し、前記要求された回数が多い通信装置を前記初期キャッシュの配布先として選択する。
【００１０】
本発明の第一の態様は、上記の最適化装置であって、前記最適化情報生成部は、通信装置毎に、通信のトラフィック量を、前記頻度を表す値として取得し、前記トラフィック量が大きい通信装置を前記初期キャッシュの配布先として選択する。
【００１１】
本発明の第一の態様は、複数の通信装置を備え、キャッシュ配布サーバーからキャッシュ配布装置に配布されたコンテンツのデータを、前記通信装置間でピアツーピアの通信で送受信する通信システムに備えられる最適化装置が行う最適化方法であって、前記通信装置毎に、当該通信装置に対してダウンロードの要求がなされた頻度を表す値を評価パラメータとして取得するステップと、前記頻度が高い通信装置を、前記キャッシュ配布サーバーからの初期キャッシュの配布先として選択し、選択結果を表す最適化情報を生成するステップと、前記初期キャッシュの配布先として選択された前記通信装置へ前記コンテンツのデータを配布する前記キャッシュ配布サーバーに対し、前記最適化情報を送信するステップと、を有し、前記通信システムは、前記コンテンツのデータを要求する通信装置に対して、要求された前記コンテンツのデータを送信可能な他の通信装置を通知するヒントサーバーを備え、前記最適化情報を生成するステップでは、通信装置毎に、前記ヒントサーバーによって通知された回数を、前記ヒントサーバーから前記頻度を表す値として取得し、前記通知された回数が多い通信装置を前記初期キャッシュの配布先として選択する。
【００１２】
本発明の第一の態様は、複数の通信装置を備え、キャッシュ配布サーバーからキャッシュ配布装置に配布されたコンテンツのデータを、前記通信装置間でピアツーピアの通信で送受信する通信システムに備えられる最適化装置としてコンピュータを動作させるためのコンピュータプログラムであって、前記通信装置毎に、当該通信装置に対してダウンロードの要求がなされた頻度を表す値を評価パラメータとして取得するステップと、前記頻度が高い通信装置を、前記キャッシュ配布サーバーからの初期キャッシュの配布先として選択し、選択結果を表す最適化情報を生成するステップと、前記初期キャッシュの配布先として選択された前記通信装置へ前記コンテンツのデータを配布する前記キャッシュ配布サーバーに対し、前記最適化情報を送信するステップと、を前記コンピュータに実行させ、前記通信システムは、前記コンテンツのデータを要求する通信装置に対して、要求された前記コンテンツのデータを送信可能な他の通信装置を通知するヒントサーバーを備えており、前記最適化情報を生成するステップにおいて、通信装置毎に、前記ヒントサーバーによって通知された回数を、前記ヒントサーバーから前記頻度を表す値として取得し、前記通知された回数が多い通信装置を前記初期キャッシュの配布先として選択するように前記コンピュータを動作させるためのコンピュータプログラムである。
【発明の効果】
【００１３】
本発明により、キャッシュ配布装置から通信端末装置へのデータ配布をより効率良く行う事ができるように、キャッシュ配布サーバーからキャッシュを配布するキャッシュ配布装置を選択することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】通信システム１００のシステム構成を表すシステム構成図である。
【図２】通信システム１００の各装置間の処理の流れのうち、通信端末装置１０がコンテンツのデータをダウンロードする際の処理を表すシーケンス図である。
【図３】通信システム１００の各装置間の処理の流れのうち、キャッシュ配布サーバー６０が初期キャッシュを配布する際の処理を表すシーケンス図である。
【図４】最適化サーバー５０の第一実施形態の機能構成を表す概略ブロック図である。
【図５】最適化サーバー５０の第二実施形態の機能構成を表す概略ブロック図である。
【図６】地域アドレス対応テーブルの概略を表す図である。
【図７】ホップ数テーブルの概略を表す図である。
【図８】最適化サーバー５０の第三〜第七実施形態の機能構成を表す概略ブロック図である。
【図９】通知回数テーブルの概略を表す図である。
【図１０】最適化サーバー５０の第八実施形態の機能構成を表す概略ブロック図である。
【図１１】通信システム１００の変形例における各装置間の処理の流れのうち、通信端末装置１０がコンテンツのデータをダウンロードする際の処理を表すシーケンス図である。
【発明を実施するための形態】
【００１５】
図１は、通信システム１００のシステム構成を表すシステム構成図である。通信システム１００は、複数台の通信端末装置１０（１０ａ〜１０ｈ）を有しており、各通信端末装置１０同士はリンクやノードによって互いに通信可能に接続されている。リンクやノードとは、ネットワークを構成するための要素となる装置や機器（通信要素機器）であり、例えばルーター、スイッチ、ハブ、ケーブル等である。以下の説明では、ルーターをリンクやノードの具体例として取り上げて説明を行う。
【００１６】
通信システム１００は、複数台の通信端末装置１０の他にも、複数台のルーター２０（２０ａ〜２０ｇ）、ピア管理サーバー３０、ヒントサーバー４０、最適化サーバー５０、キャッシュ配布サーバー６０を備える。ルーター２０ａ〜２０ｃには、複数台の通信端末装置１０が接続される。ルーター２０ｅ〜２０ｇには、複数台のルーター２０が接続される。ルーター２０ｇには、さらにピア管理サーバー３０、ヒントサーバー４０、最適化サーバー５０、キャッシュ配布サーバー６０が接続される。また、ピア管理サーバー３０にはヒントサーバー４０が接続される。
【００１７】
通信端末装置１０は、パーソナルコンピューター、ワークステーション、サーバー、ＰＤＡ、携帯電話機、通信要素機器などの通信可能な情報処理装置である。通信端末装置１０は、使用者が所望するコンテンツのデータを、当該データを記憶している他の通信端末装置１０又はキャッシュ配布装置から受信する。このとき、通信端末装置１０は、ピア管理サーバー３０もしくは書く通信端末装置１０に問い合わせることによって、通信すべき相手となる他の通信端末装置１０又はキャッシュ配布装置を判定する。なお、以下の説明において、コンテンツのデータを受信する側の通信端末装置１０を「ＤＬ先通信端末装置」といい、コンテンツのデータを送信する側の装置（通信端末装置１０又はキャッシュ配布装置）を「ＤＬ元装置」という。ヒントサーバー４０は、サーバー以外に端末や、パーソナルコンピューター、ワークステーション、ＰＤＡ、携帯電話機、通信要素機器などの通信可能な情報処理装置である。
【００１８】
キャッシュ配布装置とは、キャッシュ配布サーバー６０からコンテンツのデータを受信し記憶している装置である。キャッシュ配布装置は、例えばリンクやノードに接続された通信装置、ルーター２０、通信端末装置１０とルーター２０との間に設置されるＨＧＷ（Home Gate Way）、通信端末装置１０、サーバーなどである。キャッシュ配布サーバー６０からキャッシュ配布装置が受信するコンテンツのデータを、「初期キャッシュ」という。キャッシュ配布装置は、通信端末装置１０から受ける要求に応じて、自身が記憶しているコンテンツのデータ（初期キャッシュ）を通信端末装置１０へ送信する。
【００１９】
ルーター２０は、複数台の通信端末装置１０同士を通信可能に接続するネットワークの要素であり、パケットを受信し、受信されたパケットをルーティングテーブルに従って通信端末装置１０、他のルーター２０、ピア管理サーバー３０、ヒントサーバー４０、最適化サーバー５０、キャッシュ配布サーバー６０のいずれかへ送信する。
【００２０】
ピア管理サーバー３０は、通信端末装置１０（ＤＬ先通信端末装置）からの問い合わせに応じて、問い合わせてきた通信端末装置１０が通信すべき相手となるＤＬ元装置のＩＰアドレスのリスト（以下、「ＤＬ元候補リスト」という。）を生成する。そして、ピア管理サーバー３０は、ヒントサーバー４０によってＤＬ元装置の優先順位が最適化された後のリスト（以下、「ＤＬ元リスト」という。）を、問い合わせしてきた通信端末装置１０に対して返信する。
【００２１】
ヒントサーバー４０は、ピア管理サーバー３０によって生成されたＤＬ元候補リストのＤＬ元ピアの識別子（ピアＩＤやＩＰアドレス等）の順番を変更することによってＤＬ元リストを生成する。ヒントサーバー４０は、どのような基準に基づいてＤＬ元ピアの識別子の順番を最適となるように変更しても良い。例えば、通信負荷が軽い順にＤＬ元ピアの識別子の順番を変更しても良い。また、例えば機器の負荷が低い順にＤＬ元ピアの識別子の順番を変更しても良い。また、例えば機器の性能が高い順にＤＬ元ピアの識別子の順番を変更しても良い。
【００２２】
図２は、通信システム１００の各装置間の処理の流れのうち、通信端末装置１０がコンテンツのデータをダウンロードする際の処理を表すシーケンス図である。ＤＬ先通信端末装置は、使用者が所望するコンテンツのデータを示す識別子（コンテンツＩＤ）を含むＤＬ元リスト要求データを生成し、ピア管理サーバー３０へ送信する（ステップＳ１）。ピア管理サーバー３０は、ＤＬ元リスト要求データを受信すると、ＤＬ元リスト要求データに含まれる識別子が示すコンテンツを記憶しているＤＬ元装置を検索する。なお、ピア管理サーバー３０は、各ＤＬ元装置が記憶しているコンテンツのデータについての情報を収集することによって、各ＤＬ元装置と、各々が記憶するコンテンツのデータとを対応付けたテーブルを記憶している。
【００２３】
次に、ピア管理サーバー３０は、検索されたＤＬ元装置のＩＰアドレスが列挙されたＤＬ元候補リストを生成する（ステップＳ２）。そして、ピア管理サーバー３０は、生成されたＤＬ元候補リストを、ヒントサーバー４０へ送信する（ステップＳ３）。
【００２４】
ヒントサーバー４０は、ＤＬ元候補リストを受信すると、ＤＬ元候補リストに含まれる複数のＤＬ元装置のＩＰアドレスを所定の基準に応じて並べ替え、ＤＬ元リストを生成する（ステップＳ４）。そして、ヒントサーバー４０は、生成されたＤＬ元リストを、ピア管理サーバー３０へ送信する（ステップＳ５）。ピア管理サーバー３０は、ヒントサーバー４０からＤＬ元リストを受信すると、受信されたＤＬ元リストをＤＬ先通信端末装置へ送信する（ステップＳ６）。
【００２５】
ＤＬ先通信端末装置は、ピア管理サーバー３０からＤＬ元リストを受信すると、ユーザーが所望するコンテンツのデータを示す識別子を含むダウンロード要求データを生成する。そして、ＤＬ先通信端末装置は、ＤＬ元リストに示されるＩＰアドレスを列挙された順に選択し、選択されたＩＰアドレスのＤＬ元装置に対し、生成されたダウンロード要求データを送信する（ステップＳ７）。ＤＬ先通信端末装置がダウンロード要求データを送信するＤＬ元装置の台数は、１台であっても良いし複数台であっても良い。ＤＬ先通信端末装置が複数台にダウンロード要求データを送信する場合には、並行して送信しても良いし、タイミングをあけてシーケンシャルに送信しても良い。
【００２６】
ＤＬ元装置は、ダウンロード要求データを受信すると、ダウンロード要求データに含まれる識別子が示すコンテンツのデータを読み出し、ＤＬ先通信端末装置へ送信する。ＤＬ先通信端末装置は、ＤＬ元装置からコンテンツのデータを受信し、ローカルの記憶装置に記録する（ステップＳ８）。その後、コンテンツのデータを受信したＤＬ先通信端末装置は、ピア管理サーバー３０に対して自身が記憶しているコンテンツのデータを通知することにより、このコンテンツのデータのＤＬ元装置の候補の一つとなる。
【００２７】
図３は、通信システム１００の各装置間の処理の流れのうち、キャッシュ配布サーバー６０が初期キャッシュを配布する際の処理を表すシーケンス図である。所定のタイミングで、最適化サーバー５０がフィードバック情報の収集を行う。例えば、最適化サーバー５０は、ヒントサーバー４０、キャッシュ配布装置、通信端末装置１０に対し、フィードバック情報の要求を送信する（ステップＳ１１）。ヒントサーバー４０、キャッシュ配布装置、通信端末装置１０は、フィードバック情報の要求を受信すると、この要求に応じてフィードバック情報を最適化サーバー５０に送信する（ステップＳ１２）。なお、このフィードバック情報を送信する機器は、通信要素機器などいずれの機器でも良い。最適化サーバー５０は、各装置から受信したフィードバック情報に基づいてキャッシュ配布の最適化処理を行う（ステップＳ１３）。最適化処理では、最適化サーバー５０はフィードバック情報に基づいてＤＬ元装置毎に評価パラメータを取得し、評価パラメータにしたがってＤＬ元装置に順位付けする。そして、最適化サーバー５０は、順位付けされたＤＬ元装置のうち、評価の高いものから所定数のＤＬ元装置をキャッシュの配布先（キャッシュ配布装置）として選択する。最適化サーバー５０は、選択したＤＬ元装置を表す情報を最適化情報として生成する。最適化サーバー５０は、最適化処理の結果として得られる最適化情報をキャッシュ配布サーバー６０に通知する（ステップＳ１４）。キャッシュ配布サーバー６０は、次回の初期キャッシュ配布時に、最適化情報に基づいて初期キャッシュを配布する（ステップＳ１５）。
【００２８】
次に、図２に示される処理と図３に示される処理との関係について説明する。図２の処理は、ＤＬ先通信端末装置からＤＬ元リスト要求が送信される度に生じる。図３の処理は、所定のタイミング（最適化処理を行うタイミング）が到来する度に生じる。
図３の処理が完了した時点では、図３のステップＳ１５の処理で配布されたコンテンツのデータは、初期キャッシュとしてのみ存在する。すなわち、この時点では、キャッシュ配布装置のみが、図３ステップＳ１５の処理で配布されたコンテンツのデータを記憶している。このようなコンテンツのデータのダウンロードが要求される場合には、図２ステップＳ６でＤＬ先通信端末装置に返送されるＤＬ元リストには、キャッシュ配布装置のＩＰアドレスのみが掲載されている。そのため、ＤＬ先通信端末装置は、図２ステップＳ７の処理において、キャッシュ配布装置に対してコンテンツのダウンロード要求を送信する。図２ステップＳ８の処理によってコンテンツのデータをキャッシュ配布装置から受信した通信端末装置１０は、ヒントサーバー４０に対してその旨を通知する。その後、キャッシュ配布装置からコンテンツのデータを受信した通信端末装置１０は、キャッシュ配布装置以外のＤＬ元装置となる。そのため、その後は、キャッシュ配布装置以外の通信端末装置１０がＤＬ元リストに掲載される可能性が生じる。
【００２９】
また、図２に示される処理が行われることによって、ヒントサーバー４０、キャッシュ配布装置、通信端末装置１０が、それぞれ通信のログを蓄積する。ヒントサーバー４０、キャッシュ配布装置、通信端末装置１０は、図２の処理の実行によって蓄積したログに基づいてフィードバック情報を生成し、図３ステップＳ１２の処理を行う際に、最適化サーバー５０へ送信する。
以下、最適化サーバー５０の構成について複数の実施形態を説明する。なお、各装置が生成するフィードバック情報の内容は、最適化サーバー５０の構成に応じて変化する。そのため、各実施形態に応じたフィードバック情報についても説明する。
【００３０】
[第一実施形態]
第一実施形態では、通信システム１００において、各装置のＩＰアドレスの値が近いほど実際に各装置が設置されている物理的距離が近くなるように、ＩＰアドレスの付与ルールが設定されていることを前提とする。
【００３１】
図４は、最適化サーバー５０の第一実施形態の機能構成を表す概略ブロック図である。第一実施形態における最適化サーバー５０（５０ａ）は、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５０１、最適化情報生成部５０２を備える装置として機能する。
【００３２】
送受信部５０１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５０１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００３３】
第一実施形態におけるフィードバック情報は、各通信端末装置１０によって生成される。第一実施形態の最適化サーバー５０ａとともに通信システム１００に設置される通信端末装置１０は、通信ログ記憶部と、通信ログ管理部とを備える。通信ログ記憶部は、通信ログテーブルを記憶する。通信ログテーブルは、自装置（通信端末装置１０）がデータのダウンロードを行った際の通信相手となったＤＬ元装置のＩＰアドレスを蓄積したテーブルである。
【００３４】
通信ログ管理部は、自装置がＤＬ元装置からコンテンツのデータをダウンロードする度に、通信相手となったＤＬ元装置のＩＰアドレスを通信ログテーブルに記録する。通信ログ管理部は、フィードバック情報の要求を受信すると、その時点の通信ログテーブル及び自装置のＩＰアドレスを含むフィードバック情報を生成し、最適化サーバー５０ａに送信する。通信ログテーブル管理部は、フィードバック情報を送信すると、通信ログテーブルを初期化し、ＤＬ元装置の識別子を削除し、処理を継続する。
【００３５】
最適化情報生成部５０２は、送受信部５０１を介してフィードバック情報を受信する。第一実施形態におけるフィードバック情報には、上述したように、各通信端末装置１０において発生したコンテンツのデータの各通信について、ＤＬ元装置のＩＰアドレスが含まれる。したがって、最適化情報生成部５０２は、フィードバック情報に基づいて、通信システム１００において発生した各通信のＤＬ先通信端末装置のＩＰアドレス及びＤＬ元装置のＩＰアドレスとの組合せを取得できる。最適化情報生成部５０２は、各通信におけるＤＬ先通信端末装置及びＤＬ元装置のＩＰアドレスを比較することによって最適化情報を生成する。
【００３６】
具体的には以下の通りである。最適化情報生成部５０２は、ＤＬ元装置のＩＰアドレスの各桁の数値と、ＤＬ先通信端末装置のＩＰアドレスの各桁の数値とを桁数の高い方から比較する。例えばＩＰアドレスが“１９２．１６８．１２３．４５６”である場合には、“１９２”の“１”が最も高い桁数となり、“４５６”の“６”が最も低い桁数となる。そして、最適化情報生成部５０２は、最も高い桁数から連続して値が一致した桁数（以下、「一致桁数」という。）をカウントする。例えば、“１９２．１６８．１００．４５６”と“１９２．１６８．１２３．４５６”とを比較した場合には、最も高い桁数から連続して一致した値は“１９２．１６８．１”までであり、一致桁数は７となる。
【００３７】
最適化情報生成部５０２は、各通信におけるＤＬ先通信端末装置及びＤＬ元装置のＩＰアドレスの組合せ毎に、上記のようにＩＰアドレスの比較を行い、一致桁数を取得する。最適化情報生成部５０２は、ＤＬ元装置毎に、その装置において発生した通信の一致桁数の平均値（評価パラメータ）を算出する。そして、最適化情報生成部５０２は、平均値が低い順にＤＬ元装置を並べる。最適化情報生成部５０２は、平均値が低い方から所定数のＤＬ元装置を、初期キャッシュの配布先（キャッシュ配布装置）として選択する。最適化情報生成部５０２は、選択結果を表す最適化情報を生成する。
【００３８】
このように構成された最適化サーバー５０ａによれば、ＤＬ先通信端末装置に対する通信のホップ数の平均値が少ないＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、ＤＬ先通信端末装置に対する通信におけるホップ数が少ないＤＬ元装置に対して初期キャッシュが配布される。したがって、ＤＬ先通信端末装置とＤＬ元通信端末装置との間で発生する通信のホップ数を全体的に小さく抑えることが可能となり、通信システム１００全体の通信の効率化を図ることが可能となる。そのため、ＤＬ先通信端末装置とＤＬ元装置との間の通信においてダウンロード時間の短縮やネットワークトラフィック量を削減することが可能となる。また、ネットワークトラフィック量の削減により、ネットワーク設備設置の初期投資コストや消費電力を削減することが可能となる。また、一つのダウンロード要求に応じるために要するダウンロード時間やネットワークトラフィック量が削減されるため、初期キャッシュが配布された直後にそのコンテンツに対するダウンロード要求が急増しても、各ダウンロード要求に対して応答することが可能となる。
なお、ホップ数とは、通信を行う際に経由するリンクやノードの数を表し、例えば通信を行う際に経由するルーター２０の数を表す。
【００３９】
＜変形例＞
通信端末装置１０の通信ログ管理部がフィードバック情報を生成する具体的な処理は、上述した処理に限定されない。例えば、通信ログ管理部は、過去のフィードバック情報にどの通信ログの情報を含めたかを記憶してもよい。この場合、通信ログ管理部は、フィードバック情報の要求を受信した場合に、通信ログテーブルの情報のうち、未だフィードバック情報に含められていない通信ログの情報によってフィードバック情報を生成しても良い。例えば、通信ログ管理部は、フィードバック情報の要求を受信した場合に、通信ログテーブルの情報のうち、その時点を起点として所定の期間内に記録された通信ログの情報によってフィードバック情報を生成しても良い。
【００４０】
ＤＬ元候補リストは、ピア管理サーバー３０を使用せずに、通信端末装置１０同士が互いに問い合わせあうことで生成されても良い。この場合、通信端末装置１０は、ヒントサーバー４０に、ＤＬ元装置の優先順位の最適化を直接依頼し、その最適化後のリストをヒントサーバー４０から受信する。なお、この時、ヒントサーバー４０を用いてＤＬ元リストを最適化させなくても良く、ヒントサーバー４０とＤＬ元候補リストを送受信する手順がなくてもよい。
【００４１】
平均値の代わりに合計値を用いても良い。ここで、例えば次の式からネットワークトラフィック量を算出して、ネットワークトラフィック量のＤＬ元装置毎の平均値・合計値が低い順にＤＬ元装置を並べても良い。
ネットワークトラフィック量＝（ＤＬ先通信端末装置が受信したトラフィック量）×（ＤＬ先通信装置とＤＬ元装置との間に経由したホップ数）
【００４２】
[第二実施形態]
第二実施形態では、通信システム１００において、各装置が設置されている地域に応じて、予め決められたエリア識別子が各装置に対して付与されていることを前提とする。エリア識別子として、各装置のＩＰアドレスのネットワークアドレスが用いられても良いし、都道府県・市町村・区などを表す住所情報が用いられても良い。また、通信端末装置１０に関しては、エリア識別子として、各通信端末装置１０が接続されている基地局装置の識別情報が用いられても良いし、電話番号が用いられても良い。以下の説明では、エリア識別子としてネットワークアドレスが用いられる場合を例に説明する。すなわち、以下の例では、ある装置に対して割り当てられているＩＰアドレスのネットワークアドレスを参照することによって、その装置が設置されている地域が一意に特定できるように通信システム１００が設計されていることが前提となる。
【００４３】
図５は、最適化サーバー５０の第二実施形態の機能構成を表す概略ブロック図である。第二実施形態における最適化サーバー５０（５０ｂ）は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５１１、最適化情報生成部５１２、ホップ数記憶部５１３、地域記憶部５１４を備える装置として機能する。
【００４４】
送受信部５１１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５１１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００４５】
第二実施形態におけるフィードバック情報は、第一実施形態におけるフィードバック情報と同じである。したがって、第二実施形態の最適化サーバー５０ｂとともに通信システム１００に設置される通信端末装置１０は、第一実施形態の最適化サーバー５０ａとともに通信システム１００に設置される通信端末装置１０と同様に構成される。
【００４６】
地域記憶部５１４は、地域アドレス対応テーブルを記憶する。図６は、地域アドレス対応テーブルの概略を表す図である。地域アドレス対応テーブルは、ネットワークアドレスと、各ネットワークアドレスに含まれるＩＰアドレスの装置が設置されている都道府県（地域）とを対応付けて有する。なお、図６では、地域の具体例として都道府県単位が用いられているが、国単位、地方単位、市町村単位、基地局装置単位などのように、地域としてどのような大きさの単位が用いられても良い。
【００４７】
ホップ数記憶部５１３は、ホップ数テーブルを記憶する。図７は、ホップ数テーブルの概略を表す図である。ホップ数テーブルは、ＤＬ元県とＤＬ先県とホップ数とを対応付けて有する。ＤＬ元県は、ＤＬ元装置が設置されている地域を表す。ＤＬ先県は、ＤＬ先通信端末装置が設置されている地域を表す。ホップ数は、ＤＬ元県とＤＬ先県との間で通信を行う際のホップ数を表す。
【００４８】
地域アドレス対応テーブルの値、及びホップ数テーブルの値は、最適化サーバー５０ｂの管理者によって予め設定されている。
最適化情報生成部５１２は、送受信部５１１を介してフィードバック情報を受信する。第二実施形態におけるフィードバック情報には、上述したように、各通信端末装置１０において発生したコンテンツのデータの各通信について、ＤＬ元装置のＩＰアドレスが含まれる。したがって、最適化情報生成部５１２は、フィードバック情報に基づいて、通信システム１００において発生した各通信のＤＬ先通信端末装置のＩＰアドレス及びＤＬ元装置のＩＰアドレスとの組合せを取得できる。最適化情報生成部５１２は、地域アドレス対応テーブル及びホップ数テーブルの内容に基づいて、各通信に要したホップ数を取得することによって最適化情報を生成する。
【００４９】
具体的には以下の通りである。最適化情報生成部５１２は、ＤＬ先通信端末装置及びＤＬ元装置のＩＰアドレスについて、地域アドレス対応テーブルを参照することによって、対応する地域を検出する。次に、最適化情報生成部５１２は、ホップ数テーブルを参照することによって、ＤＬ元装置が設置された地域からＤＬ先通信端末装置が設置された地域までのホップ数を通信毎に検出する。最適化情報生成部５１２は、ＤＬ元装置毎に、その装置において発生した通信のホップ数の平均値（評価パラメータ）を算出する。そして、最適化情報生成部５１２は、平均値が低い順にＤＬ元装置を並べる。最適化情報生成部５１２は、平均値が低い方から所定数のＤＬ元装置を、初期キャッシュの配布先として選択する。最適化情報生成部５１２は、選択結果を表す最適化情報を生成する。
【００５０】
このように構成された最適化サーバー５０ｂによれば、ＤＬ先通信端末装置に対する通信のホップ数の平均値が少ないＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、ＤＬ先通信端末装置に対する通信におけるホップ数が少ないＤＬ元装置に対して初期キャッシュが配布される。したがって、ＤＬ先通信端末装置とＤＬ元通信端末装置との間で発生する通信のホップ数を全体的に小さく抑えることが可能となり、通信システム１００全体の通信の効率化を図ることが可能となる。そのため、ＤＬ先通信端末装置とＤＬ元装置との間の通信においてダウンロード時間の短縮やネットワークトラフィック量を削減することが可能となる。また、ネットワークトラフィック量の削減により、ネットワーク設備設置の初期投資コストや消費電力を削減することが可能となる。また、一つのダウンロード要求に応じるために要するダウンロード時間やネットワークトラフィック量が削減されるため、初期キャッシュが配布された直後にそのコンテンツに対するダウンロード要求が急増しても、各ダウンロード要求に対して応答することが可能となる。
【００５１】
＜変形例＞
平均値の代わりに合計値を用いても良い。ここで、例えば次の式からネットワークトラフィック量を算出して、ネットワークトラフィック量のＤＬ元装置毎の平均値・合計値が低い順にＤＬ元装置を並べても良い。
ネットワークトラフィック量＝（ＤＬ先通信端末装置が受信したトラフィック量）×（ＤＬ先通信装置とＤＬ元装置との間に経由したホップ数）
【００５２】
[第三実施形態]
図８は、最適化サーバー５０の第三〜第七実施形態の機能構成を表す概略ブロック図である。最適化サーバー５０の第三〜第七実施形態の機能構成は、図示されるように形式的には一致するため、記載の簡略化のために一つの図として表す。第三実施形態における最適化サーバー５０（５０ｃ）は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５２１、最適化情報生成部５２２を備える装置として機能する。
【００５３】
送受信部５２１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５２１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００５４】
第三実施形態におけるフィードバック情報は、ヒントサーバー４０によって生成される。第三実施形態の最適化サーバー５０ｃとともに通信システム１００に設置されるヒントサーバー４０は、通知回数記憶部と、通知回数管理部とを備える。通知回数記憶部は、通知回数テーブルを記憶する。図９は、通知回数テーブルの概略を表す図である。通知回数テーブルは、ＤＬ元装置識別子と通知回数との組合せをＤＬ元装置毎に有する。ＤＬ元装置識別子は、各ＤＬ元装置を表す識別子であり、例えばＩＰアドレスである。以下の説明では、ＤＬ元装置識別子がＩＰアドレスである場合の構成について説明する。通知回数は、各ＤＬ元装置が、ヒントサーバー４０によってＤＬ元リストに掲載された回数である。すなわち、通知回数は、各ＤＬ元装置がダウンロード要求の送信先の候補としてＤＬ先通信端末装置に通知された回数である。そのため、通知回数が多いほど、そのＤＬ元装置に対するダウンロード要求（ニーズ）が高いと判断できる。
【００５５】
通知回数管理部は、ヒントサーバー４０によって生成されたＤＬ元リストの内容に基づいて、通知回数テーブルの内容を更新する。具体的には、通知回数管理部は、ヒントサーバー４０によって生成されたＤＬ元リストに含まれているＩＰアドレスを読み出し、通知回数テーブルにおいて、読み出されたＩＰアドレスに対応する通知回数をインクリメントする。通知回数管理部は、フィードバック情報の要求を受信すると、その時点の通知回数テーブルの内容を表すフィードバック情報を生成し、最適化サーバー５０ｃに送信する。通知回数管理部は、設定で定めた時間が来たタイミングで、通知回数テーブルの内容を初期化し、全ての通知回数をゼロに戻し、処理を継続する。
【００５６】
最適化情報生成部５２２は、送受信部５２１を介してフィードバック情報を受信する。フィードバック情報は、上述したように通知回数テーブルの内容を表す。最適化情報生成部５２２は、通知回数テーブルの内容に基づいて最適化情報を生成する。
具体的には以下の通りである。最適化情報生成部５２２は、フィードバック情報に基づいて、ＤＬ元装置毎の通知回数（評価パラメータ）を取得する。最適化情報生成部５２２は、通知回数が多い順にＤＬ元装置を並べる。最適化情報生成部５２２は、通知回数が多い方から所定数のＤＬ元装置を、初期キャッシュの配布先（キャッシュ配布装置）として選択する。最適化情報生成部５２２は、選択結果を表す最適化情報を生成する。
【００５７】
このように構成された最適化サーバー５０ｃによれば、所定時間内にＤＬ元リストとして通知された回数が多いＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、コンテンツのダウンロード要求が送信される頻度の高いＤＬ元装置、すなわちニーズの高いＤＬ元装置に対して優先的に初期キャッシュを配布することが可能となる。そのため、ニーズの多い地域のＤＬ元装置に対して初期キャッシュが配布されるため、ＤＬ先通信端末装置との間の通信においてダウンロード時間の短縮やネットワークトラフィック量を削減することが可能となる。また、ネットワークトラフィック量の削減により、ネットワーク設備設置の初期投資コストや消費電力を削減することが可能となる。また、一つのダウンロード要求に応じるために要するダウンロード時間やネットワークトラフィック量が削減されるため、初期キャッシュが配布された直後にそのコンテンツに対するダウンロード要求が急増しても、各ダウンロード要求に対して応答することが可能となる。
【００５８】
また、第三実施形態では、最適化サーバー５０ｃは、ヒントサーバー４０のみにフィードバック情報の要求を送信する。そのため、最適化サーバー５０ｃが複数のＤＬ元装置に対してフィードバック情報の要求を送信する場合に比べて、ネットワークトラフィック量を削減し、フィードバック情報の収集に要する時間を短縮することが可能となる。
【００５９】
＜変形例＞
ヒントサーバー４０は、通知回数テーブルを記憶せずに、各ＤＬ元装置をどの時刻にＤＬ元リストに掲載したかを示すログ情報を蓄積するように構成されても良い。この場合、ヒントサーバー４０は、所定のタイミング毎に、所定の期間のログ情報（例えば、前回のフィードバック情報通知から現在に至るまでのログ情報）をフィードバック情報として最適化サーバー５０ｃに通知しても良い。この場合、最適化サーバー５０ｃの最適化情報生成部５２２は、フィードバック情報に基づいて、ＤＬ元装置毎にＤＬ元リストに掲載された回数を計数し、最適化情報を生成しても良い。
最適化情報生成部５２２は、通知回数の平均値ではなく、通知回数の合計値を算出して処理を行っても良い。
【００６０】
[第四実施形態]
図８を用いて最適化サーバー５０の第四実施形態の機能構成について説明する。第四実施形態における最適化サーバー５０（５０ｄ）は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５３１、最適化情報生成部５３２を備える装置として機能する。
【００６１】
送受信部５３１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５３１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００６２】
第四実施形態におけるフィードバック情報は、各ＤＬ元装置によって生成される。第四実施形態の最適化サーバー５０ｄとともに通信システム１００に設置されるＤＬ元装置は、要求回数記憶部と、要求回数管理部とを備える。要求回数記憶部は、要求回数を記憶する。要求回数は、そのＤＬ元装置が、ＤＬ先通信端末装置からコンテンツのダウンロード要求を受信した回数である。そのため、要求回数が多いほど、そのＤＬ元装置に対するダウンロード要求（ニーズ）が高いと判断できる。
【００６３】
要求回数管理部は、ＤＬ先通信端末装置からダウンロード要求を受信する度に、要求回数記憶部に記憶される要求回数を更新する。具体的には、要求回数管理部は、ダウンロード要求を受信する度に要求回数をインクリメントする。要求回数管理部は、フィードバック情報の要求を受信すると、その時点の要求回数を表すフィードバック情報を生成し、最適化サーバー５０ｄに送信する。要求回数管理部は、設定で定めた所定時の時間になると要求回数を初期化し、要求回数をゼロに戻し、処理を継続する。
【００６４】
最適化情報生成部５３２は、送受信部５３１を介してフィードバック情報を受信する。フィードバック情報は、上述したように、各ＤＬ元装置の要求回数を表す。最適化情報生成部５３２は、各ＤＬ元装置の要求回数に基づいて最適化情報を生成する。
具体的には以下の通りである。最適化情報生成部５３２は、フィードバック情報に基づいて、ＤＬ元装置毎の要求回数（評価パラメータ）を取得する。最適化情報生成部５３２は、要求回数が多い順にＤＬ元装置を並べる。最適化情報生成部５３２は、要求回数が多い方から所定数のＤＬ元装置を、初期キャッシュの配布先（キャッシュ配布装置）として選択する。最適化情報生成部５３２は、選択結果を表す最適化情報を生成する。
【００６５】
このように構成された最適化サーバー５０ｄによれば、所定時間内にダウンロード要求を受信した回数が多いＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、コンテンツのダウンロード要求が送信される頻度の高いＤＬ元装置、すなわちニーズの高いＤＬ元装置に対して優先的に初期キャッシュを配布することが可能となる。そのため、ニーズの多い地域のＤＬ元装置に対して初期キャッシュが配布されるため、ＤＬ先通信端末装置との間の通信においてダウンロード時間の短縮やネットワークトラフィック量を削減することが可能となる。また、ネットワークトラフィック量の削減により、ネットワーク設備設置の初期投資コストや消費電力を削減することが可能となる。また、一つのダウンロード要求に応じるために要するダウンロード時間やネットワークトラフィック量が削減されるため、初期キャッシュが配布された直後にそのコンテンツに対するダウンロード要求が急増しても、各ダウンロード要求に対して応答することが可能となる。
【００６６】
また、第四実施形態では、最適化サーバー５０ｄは、実際にダウンロード要求が受信された情報をフィードバック情報として収集する。そのため、上述した第三実施形態に比べて、より正確に各ＤＬ元装置に対するニーズを把握し、より適格に初期キャッシュの配布先を選択することが可能となる。
【００６７】
[第五実施形態]
図８を用いて最適化サーバー５０の第五実施形態の機能構成について説明する。第五実施形態における最適化サーバー５０（５０ｅ）は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５４１、最適化情報生成部５４２を備える装置として機能する。
【００６８】
送受信部５４１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５４１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００６９】
第五実施形態におけるフィードバック情報は、各ＤＬ元装置によって生成される。第五実施形態の最適化サーバー５０ｅとともに通信システム１００に設置されるＤＬ元装置は、トラフィック量記憶部と、トラフィック量管理部とを備える。トラフィック量記憶部は、トラフィック量を記憶する。トラフィック量は、そのＤＬ元装置において生じた通信のトラフィック量である。そのため、トラフィック量が大きいほど、そのＤＬ元装置に対するダウンロード要求（ニーズ）が高いと判断できる。
【００７０】
トラフィック量管理部は、自装置が通信でデータを送信又は受信する度に、トラフィック量記憶部に記憶されるトラフィック量を更新する。トラフィック量管理部は、フィードバック情報の要求を受信すると、その時点のトラフィック量を表すフィードバック情報を生成し、最適化サーバー５０ｅに送信する。トラフィック量管理部は、設定で定めた所定の時間が経過すると、トラフィック量を初期化し、トラフィック量をゼロに戻し、処理を継続する。
【００７１】
最適化情報生成部５４２は、送受信部５４１を介してフィードバック情報を受信する。フィードバック情報は、上述したように、各ＤＬ元装置のトラフィック量を表す。最適化情報生成部５４２は、各ＤＬ元装置のトラフィック量に基づいて最適化情報を生成する。
具体的には以下の通りである。最適化情報生成部５４２は、フィードバック情報に基づいて、ＤＬ元装置毎のトラフィック量（評価パラメータ）を取得する。最適化情報生成部５４２は、トラフィック量が大きい順にＤＬ元装置を並べる。最適化情報生成部５４２は、トラフィック量が大きい方から所定数のＤＬ元装置を、初期キャッシュの配布先（キャッシュ配布装置）として選択する。最適化情報生成部５４２は、選択結果を表す最適化情報を生成する。
【００７２】
このように構成された最適化サーバー５０ｅによれば、所定時間内のトラフィック量が大きいＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、コンテンツのトラフィック量の大きいＤＬ元装置、すなわちニーズの高いＤＬ元装置に対して優先的に初期キャッシュを配布することが可能となる。そのため、ニーズの多い地域のＤＬ元装置に対して初期キャッシュが配布されるため、ＤＬ先通信端末装置との間の通信においてダウンロード時間の短縮やネットワークトラフィック量を削減することが可能となる。また、ネットワークトラフィック量の削減により、ネットワーク設備設置の初期投資コストや消費電力を削減することが可能となる。また、一つのダウンロード要求に応じるために要するダウンロード時間やネットワークトラフィック量が削減されるため、初期キャッシュが配布された直後にそのコンテンツに対するダウンロード要求が急増しても、各ダウンロード要求に対して応答することが可能となる。
【００７３】
[第六実施形態]
図８を用いて最適化サーバー５０の第六実施形態の機能構成について説明する。第六実施形態における最適化サーバー５０（５０ｆ）は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５５１、最適化情報生成部５５２を備える装置として機能する。
【００７４】
送受信部５５１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５５１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００７５】
第六実施形態におけるフィードバック情報は、各ＤＬ元装置によって生成される。第六実施形態の最適化サーバー５０ｆとともに通信システム１００に設置されるＤＬ元装置は、機器情報管理部を備える。機器情報管理部は、フィードバック情報の要求を受信すると、その時点の自装置のハードウェアに関する情報（機器情報）を表すフィードバック情報を生成し、最適化サーバー５０ｆに送信する。機器情報の具体例として、ＣＰＵの稼働率、空きメモリ容量、ＣＰＵの性能値、メモリの全体の容量などがある。
【００７６】
最適化情報生成部５５２は、送受信部５５１を介してフィードバック情報を受信する。フィードバック情報は、上述したように、各ＤＬ元装置の機器情報を表す。最適化情報生成部５５２は、各ＤＬ元装置の機器情報に基づいて最適化情報を生成する。
具体的には以下の通りである。最適化情報生成部５５２は、フィードバック情報に基づいて、ＤＬ元装置毎の性能評価値（評価パラメータ）を取得する。性能評価値とは、機器情報に応じて得られる値であり、各ＤＬ元装置のハードウェア性能の高低を数値で表したものである。性能評価値は、例えばＣＰＵの使用率や空きメモリ容量や帯域などの値そのものであっても良いし、各値を正規化したものであっても良いし、複数の値に所定の加重を掛けて足した値（合計値）であっても良いし、各値の平均値であっても良い。性能評価値は、その値が高いほど、ハードウェア性能が高いことを示す。したがって、ＣＰＵ使用率やメモリ使用率のようにその値が低いほどハードウェア性能が高いことを示すような機器情報に関しては、その逆数を算出したり、後述する式３と同様の式を用いること等によって性能評価値を算出する必要がある。最適化情報生成部５５２は、性能評価値が高い順にＤＬ元装置を並べる。最適化情報生成部５５２は、性能評価値が高い方から所定数のＤＬ元装置を、初期キャッシュの配布先（キャッシュ配布装置）として選択する。最適化情報生成部５５２は、選択結果を表す最適化情報を生成する。
【００７７】
このように構成された最適化サーバー５０ｆによれば、所定時間毎に機器の性能が高いＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、性能が高いＤＬ元装置に対して優先的に初期キャッシュを配布することが可能となる。そのため、性能の高いＤＬ元装置に対して初期キャッシュが配布されるため、ＤＬ先通信端末装置との間の通信においてダウンロード時間を短縮することが可能となる。また、一つのダウンロード要求に応じるために要するダウンロード時間短縮されるため、初期キャッシュが配布された直後にそのコンテンツに対するダウンロード要求が急増しても、各ダウンロード要求に対して応答することが可能となる。
【００７８】
[第七実施形態]
図８を用いて最適化サーバー５０の第七実施形態の機能構成について説明する。第七実施形態における最適化サーバー５０（５０ｇ）は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５６１、最適化情報生成部５６２を備える装置として機能する。
【００７９】
送受信部５６１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５６１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００８０】
第七実施形態におけるフィードバック情報は、通信端末装置１０によって生成される。第七実施形態の最適化サーバー５０ｇとともに通信システム１００に設置される通信端末装置１０は、ＤＬ時間記憶部と、ＤＬ時間測定部とを備える。ＤＬ時間記憶部は、ＤＬ時間テーブルを記憶する。ＤＬ時間テーブルは、ＤＬ元装置識別子とＤＬ時間との組合せを発生した通信毎に有する。ＤＬ時間は、通信端末装置１０が、ＤＬ元装置からコンテンツのデータをダウンロードする際に要した通信時間である。
【００８１】
ＤＬ時間測定部は、自装置がＤＬ元装置からコンテンツのデータをダウンロードする度に、ダウンロードに要した時間を測定する。ＤＬ時間測定部は、測定した時間を、通信相手となったＤＬ元装置の識別子と対応付けて新たなレコードとして記録することによって、ＤＬ時間記憶部に記憶されるＤＬ時間テーブルを更新する。ＤＬ時間測定部は、フィードバック情報の要求を受信すると、その時点のＤＬ時間テーブルを表すフィードバック情報を生成し、最適化サーバー５０ｆに送信する。ＤＬ時間測定部は、フィードバック情報を送信すると、ＤＬ時間テーブルを初期化し、処理を継続する。
【００８２】
最適化情報生成部５６２は、送受信部５６１を介してフィードバック情報を受信する。フィードバック情報は、上述したように、通信システム１００において発生した各通信のＤＬ元装置と、その通信に要した時間（ＤＬ時間）とを表す。最適化情報生成部５６２は、各ＤＬ元装置のＤＬ時間に基づいて最適化情報を生成する。
具体的には以下の通りである。最適化情報生成部５６２は、収集された複数のフィードバック情報に基づいて、ＤＬ元装置毎にＤＬ時間の平均値（評価パラメータ）を算出する。ＤＬ時間の平均値は、一つの通信に要した時間の平均値を示す。最適化情報生成部５６２は、ＤＬ時間の平均値が短い順にＤＬ元装置を並べる。最適化情報生成部５６２は、ＤＬ時間の平均値が短い方から所定数のＤＬ元装置を、初期キャッシュの配布先（キャッシュ配布装置）として選択する。最適化情報生成部５６２は、選択結果を表す最適化情報を生成する。
【００８３】
このように構成された最適化サーバー５０ｆによれば、ＤＬ時間の平均値が短いＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、ＤＬ時間の平均値が短いＤＬ元装置、すなわちコンテンツのダウンロードに要する時間が短いＤＬ元装置に対して優先的に初期キャッシュを配布することが可能となる。そのため、ＤＬ先通信端末装置との間の通信においてダウンロード時間を短縮することが可能となる。また、一つのダウンロード要求に応じるために要するダウンロード時間が短縮されるため、初期キャッシュが配布された直後にそのコンテンツに対するダウンロード要求が急増しても、各ダウンロード要求に対して応答することが可能となる。
【００８４】
［第八実施形態］
図１０は、最適化サーバー５０の第八実施形態の機能構成を表す概略ブロック図である。第八実施形態における最適化サーバー５０（５０ｈ）は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、最適化サーバープログラムを実行することによって送受信部５７１、最適化情報生成部５７２、ホップ数記憶部５１３、地域記憶部５１４を備える装置として機能する。なお、ホップ数記憶部５１３及び地域記憶部５１４は、第二実施形態における同名の構成と同じであるため説明を省略する。
【００８５】
送受信部５７１は、ネットワークインターフェース等の通信装置を用いて構成され、ルーター２０ｇとデータの送受信を行う。具体的には、送受信部５７１はルーター２０ｇからフィードバック情報を受信し、ルーター２０ｇを介してキャッシュ配布サーバー６０に最適化情報を送信する。
【００８６】
第八実施形態におけるフィードバック情報は、第一実施形態〜第七実施形態における全てのフィードバック情報を含めた情報である。したがって、第八実施形態の最適化サーバー５０ｈとともに通信システム１００に設置される各装置は、上記のようなフィードバック情報を送信できるように、第一実施形態〜第七実施形態において説明した各構成を備える。
【００８７】
最適化情報生成部５７２は、第一実施形態〜第七実施形態における各処理を行うことによって、ＤＬ元装置毎に複数の評価パラメータを取得する。最適化情報生成部５７２は、複数の評価パラメータに基づいてＤＬ元装置毎に統合評価パラメータを算出する。そして、最適化情報生成部５７２は、統合評価パラメータが高い順にＤＬ元装置を並べる。統合評価パラメータの値は、算出に用いられた各評価パラメータの値における評価が高いほど、高い値をとる。最適化情報生成部５７２は、平均値が高い方から所定数のＤＬ元装置を、初期キャッシュの配布先（キャッシュ配布装置）として選択する。最適化情報生成部５７２は、選択結果を表す最適化情報を生成する。
【００８８】
統合評価パラメータの算出方法の具体例について説明する。最適化情報生成部５７２は、予め評価パラメータ毎に定められた加重値ａを記憶している。最適化情報生成部５７２は、以下に示す式１を用いて、統合評価パラメータτを算出する。
【００８９】
【数１】
0005294513.tif 000002
【００９０】
式１において、ｉは評価パラメータの種類を表し、ａｉは評価パラメータ毎の加重値を表し、Ｒｉは評価パラメータ毎の正規化数値を表し、ｎは評価パラメータの種類の数を表す。正規化数値は、以下に示す式２又は式３のように表される。
【００９１】
Ｒｉ＝（Ｍｉ−Ｇｉ）／Ｇｉ  ・・・式２
Ｒｉ＝（Ｇｉ−Ｍｉ）／Ｇｉ  ・・・式３
【００９２】
式２及び式３において、Ｍｉは評価パラメータの値を表し、Ｇｉは評価パラメータの目標値を表す。評価パラメータの値が高いほど評価が高いことを表す場合には、最適化情報生成部５７２は式２を用いて正規化数値を算出する。評価パラメータの値が低いほど評価が高いことを表す場合には、最適化情報生成部５７２は式３を用いて正規化数値を算出する。具体的には、通知回数、要求回数、トラフィック量、性能評価値、に関しては式２が用いられる。一方、ホップ数の平均値、ＤＬ時間の平均値に関しては式３が用いられる。
【００９３】
このように構成された最適化サーバー５０ｈによれば、複数の評価パラメータに基づいて得られた統合評価パラメータの値が高いＤＬ元装置から順に、初期キャッシュの配布先（キャッシュ配布装置）として選択される。そして、キャッシュ配布サーバー６０は、この選択結果に従ってコンテンツのデータの初期キャッシュを配布する。そのため、通信システム１００全体の通信をより効率良くさせることが可能となる。そのため、ＤＬ先通信端末装置とＤＬ元装置との間の通信においてダウンロード時間の短縮やネットワークトラフィック量を削減することが可能となる。
【００９４】
＜変形例＞
最適化情報生成部５７２は、最新の統合評価パラメータτ（最新の評価パラメータに基づいて算出した値）に基づいて最適化情報を生成するのではなく、過去に算出した統合評価パラメータτの値との平均値を用いてもよい。また、最適化情報生成部５７２は、以下に示すような式４によって算出された値μ（ローパスフィルタを介した値）を用いて最適化情報を生成してもよい。
【００９５】
μ＝（τ（ｔ−１）×α）＋τ（ｔ）×（１−α）  ・・・式４
【００９６】
τ（ｔ−１）は、前回の最適化処理で算出された統合評価パラメータの値であり、τ（ｔ）は、最新の最適化処理で算出された統合評価パラメータの値である。αは以下のような値である。０＜α＜１。式４を用いて算出された値μは、時間の変化に応じた統合評価パラメータの値の急激な変化を抑制した値であるため、最適化処理をより安定して行うことが可能となる。
【００９７】
＜共通した変形例＞
また、第一実施形態〜第八実施形態に共通した変形例を示す。
上記通信システム１００はＰ４Ｐのシステムとして構築されているが、Ｐ４Ｐは通信システム１００に適用される通信技術の一つの例に過ぎない。例えば、通信システム１００は、クラウドシステムとして構築されても良いし、Ｐ２Ｐシステムとして構築されても良いし、複数のサーバーに対してキャッシュを配布するサーバー・クライアントシステムとして構築されても良い。
【００９８】
評価パラメータ及び統合評価パラメータの値は、コンテンツの種類毎に取得されても良い。例えば、コンテンツが動画像である場合には、動画像の中身（ニュース、スポーツ、アニメ、お笑い、映画、音楽など）が共通するグループ（以下、「コンテンツグループ」という。）毎に評価パラメータ及び統合評価パラメータの値が取得されても良い。また各コンテンツの配信特性を分析して類似特性を示すコンテンツを同一種別に分類しても良い。この場合、フィードバック情報に示される各値は、コンテンツの種類に対応付けて最適化サーバー５０へ通知される。そして、最適化情報生成部は、コンテンツの種類毎に、最適化情報を生成する。キャッシュ配布サーバー６０は、コンテンツの種類毎に、最適化情報に基づいて初期キャッシュの配布先を決定する。
このように構成されることによって、コンテンツの種類毎により正確に通信システム１００全体の通信の効率化を図ることが可能となる。
【００９９】
また、各実施形態における評価パラメータについて、コンテンツ毎、又はコンテンツグループ毎に平均値が算出され、その平均値に基づいて初期キャッシュの配布先が選択されても良い。
ピア管理サーバー３０の機能は、各通信端末装置１０やヒントサーバー４０に統合されても良い。図１１は、通信システム１００の変形例における各装置間の処理の流れのうち、通信端末装置１０がコンテンツのデータをダウンロードする際の処理を表すシーケンス図である。ＤＬ先通信端末装置は、使用者が所望するコンテンツのデータを記憶しているＤＬ元装置を検索する。ＤＬ先通信端末装置は、検索されたＤＬ元装置の識別子（ピアＩＤやＩＰアドレス等）が列挙されたＤＬ元候補リストを生成する（ステップＳ２１）。そして、ＤＬ先通信端末装置は、生成されたＤＬ元候補リストを、ヒントサーバー４０へ送信する（ステップＳ２２）。
【０１００】
ヒントサーバー４０は、ＤＬ元候補リストを受信すると、ＤＬ元候補リストに含まれる複数のＤＬ元装置の識別子を所定の基準に応じて並べ替え、ＤＬ元リストを生成する（ステップＳ２３）。そして、ヒントサーバー４０は、生成されたＤＬ元リストを、ＤＬ先通信端末装置へ送信する（ステップＳ２４）。ＤＬ先通信端末装置は、ヒントサーバー４０からＤＬ元リストを受信すると、ユーザーが所望するコンテンツのデータを示す識別子を含むダウンロード要求データを生成する。そして、ＤＬ先通信端末装置は、ＤＬ元リストに示される識別子を列挙された順に選択し、選択された識別子のＤＬ元装置に対し、生成されたダウンロード要求データを送信する（ステップＳ２５）。ＤＬ先通信端末装置がダウンロード要求データを送信するＤＬ元装置の台数は、１台であっても良いし複数台であっても良い。ＤＬ先通信端末装置が複数台にダウンロード要求データを送信する場合には、並行して送信しても良いし、タイミングをあけてシーケンシャルに送信しても良い。
【０１０１】
ＤＬ元装置は、ダウンロード要求データを受信すると、ダウンロード要求データに含まれる識別子が示すコンテンツのデータを読み出し、ＤＬ先通信端末装置へ送信する。ＤＬ先通信端末装置は、ＤＬ元装置からコンテンツのデータを受信し、ローカルの記憶装置に記録する（ステップＳ２６）。
【０１０２】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【０１０３】
１０…通信端末装置，  ２０…ルーター，  ３０…ピア管理サーバー，  ４０…ヒントサーバー，  ５０…最適化サーバー，  ６０…キャッシュ配布サーバー
【図１】
0005294513.tif 000003
【図２】
0005294513.tif 000004
【図３】
0005294513.tif 000005
【図４】
0005294513.tif 000006
【図５】
0005294513.tif 000007
【図６】
0005294513.tif 000008
【図７】
0005294513.tif 000009
【図８】
0005294513.tif 000010
【図９】
0005294513.tif 000011
【図１０】
0005294513.tif 000012
【図１１】
0005294513.tif 000013