(57)【要約】【課題】端末装置がオーバーレイネットワークに参加することなく、オーバーレイネットワークで配信されるコンテンツを効率良く取得することを可能としたサーバ装置、ページ送信プログラム、及びページ送信方法を提供する。【解決手段】サーバ装置は、第１の端末装置からリクエストされたコンテンツの検索結果に基づいて、Ｗｅｂページに記述する所在情報であって、オーバーレイネットワークを構成する情報処理装置の所在を示す前記所在情報を決定する。そして、サーバ装置は、決定した所在情報が記述されるＷｅｂページを第１の端末装置へ送信する。【選択図】図３
2012078901.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して互いに通信可能な複数の情報処理装置によりオーバーレイネットワークが構成され、１以上の前記情報処理装置にコンテンツが保存された配信システムにおいて前記情報処理装置と通信可能なサーバ装置であって、
所定のコンテンツのリクエストを、前記オーバーレイネットワークに参加していない第１の端末装置から受信する受信手段と、
前記受信手段により受信された前記リクエストに対応する前記コンテンツを保存する前記情報処理装置の所在を前記オーバーレイネットワークで検索する検索手段と、
前記検索手段による検索結果に基づいて、Ｗｅｂページに記述する所在情報であって、前記情報処理装置の所在を示す前記所在情報を決定する決定手段と、
前記決定手段により決定された前記所在情報が記述されるＷｅｂページを生成する生成手段と、
前記生成手段により生成されたＷｅｂページを、前記第１の端末装置へ送信する送信手段と、
を備えることを特徴とするサーバ装置。
【請求項２】
前記決定手段は、前記検索手段により複数の前記所在情報が検索された場合には、前記複数の前記所在情報の中から、前記第１の端末装置へ紹介する条件を満たす前記所在情報を、前記Ｗｅｂページに記述する所在情報として決定することを特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記サーバ装置は、
前記第１の端末装置が設置される地域を示す第１地域情報を取得する第１取得手段と、
前記情報処理装置が設置される地域を示す第２地域情報を取得する第２取得手段と、
を備え、
前記決定手段は、前記第１取得手段により取得された第１地域情報と前記第２取得手段により取得された第２地域情報に基づいて、前記第１の端末装置が設置される地域からの距離が近い地域に設置される前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする請求項２に記載のサーバ装置。
【請求項４】
前記サーバ装置は、
前記第１の端末装置が前記ネットワークに接続するために利用されるＩＳＰ（Internet Service Provider）を示す第１ＩＳＰ情報を取得する第３取得手段と、
前記情報処理装置が前記ネットワークに接続するために利用されるＩＳＰを示す第２ＩＳＰ情報を取得する第４取得手段と、
を備え、
前記決定手段は、前記第３取得手段により取得された第１ＩＳＰ情報と前記第４取得手段により取得された前記第２ＩＳＰ情報に基づいて、前記第１の端末装置と同じ前記ＩＳＰを利用する前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする請求項２又は３に記載のサーバ装置。
【請求項５】
前記情報処理装置には、前記第１の端末装置とは異なる第２の端末装置が通信手段を介して接続されており、
前記情報処理装置は、前記第２の端末装置に送信するコンテンツを前記オーバーレイネットワークを介して他の情報処理装置から取得する動作、または前記コンテンツを前記第２の端末装置へ送信する動作を制御する制御手段を備え、
前記サーバ装置は、前記情報処理装置の前記制御手段により制御される動作が実行中であるか否かを示す動作情報を取得する第５取得手段を備え、
前記決定手段は、前記第５取得手段により取得された動作情報に基づいて、前記動作が実行中でない前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする請求項２から請求項４のいずれか一項に記載のサーバ装置。
【請求項６】
前記サーバ装置は、前記情報処理装置が他の情報処理装置へアクセスした日付または時刻を示すアクセス情報を取得する第６取得手段を備え、
前記決定手段は、前記第６取得手段により取得されたアクセス情報に基づいて、前記日付または時刻が古い前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする請求項２から請求項５のいずれか一項に記載のサーバ装置。
【請求項７】
前記オーバーレイネットワークに参加している前記情報処理装置の所在を示す前記所在情報を管理する管理装置から、前記所在情報を取得する第７取得手段と、
前記検索手段により検索された前記所在情報の数が所定数以下であるか否かを判定する第１判定手段と、を備え、
前記第１判定手段により、前記検索手段により検索された前記所在情報の数が所定数以下であると判定された場合には、前記決定手段は、前記第７取得手段により取得された前記所在情報の中から、前記リクエストに対応する前記コンテンツを保存していない情報処理装置の前記所在情報を、前記Ｗｅｂページに記述する所在情報として決定することを特徴とする請求項１から請求項６のいずれか一項に記載のサーバ装置。
【請求項８】
前記オーバーレイネットワークに参加している前記情報処理装置の所在を示す前記所在情報を管理する管理装置から、前記所在情報を取得する第７取得手段と、
前記検索手段により検索された前記所在情報に対応する前記情報処理装置が、他の情報処理装置へ、コンテンツを提供した日付または時刻、または前記他の情報処理装置へ前記所在情報を提供した日付または時刻を示す提供情報を取得する第８取得手段と、
を備え、
前記第８取得手段により取得された提供情報に示される日付または時刻が所定期間内に含まれる前記情報処理装置の数が所定数以上であるか否かを判定する第２判定手段と、
前記第２判定手段により、前記第８取得手段により取得された提供情報に示される日付または時刻が所定期間内に含まれる前記情報処理装置の数が所定数以上であると判定された場合には、前記決定手段は、前記第７取得手段により取得された所定数の前記所在情報の中から、前記リクエストに対応する前記コンテンツを保存していない情報処理装置の前記所在情報を、前記Ｗｅｂページに記述する所在情報として決定することを特徴とする請求項１から請求項６のいずれか一項に記載のサーバ装置。
【請求項９】
ネットワークを介して互いに通信可能な複数の情報処理装置によりオーバーレイネットワークが構成され、１以上の前記情報処理装置にコンテンツが保存された配信システムにおいて前記情報処理装置と通信可能なサーバ装置に含まれるコンピュータに、
所定のコンテンツのリクエストを、前記オーバーレイネットワークに参加していない第１の端末装置から受信するステップと、
前記受信された前記リクエストに対応する前記コンテンツを保存する前記情報処理装置の所在を前記オーバーレイネットワークで検索するステップと、
前記検索の結果に基づいて、Ｗｅｂページに記述する所在情報であって、前記情報処理装置の所在を示す前記所在情報を決定するステップと、
前記決定された前記所在情報が記述されるＷｅｂページを生成するステップと、
前記生成されたＷｅｂページを、前記第１の端末装置へ送信するステップと、
を実行させるためのページ送信プログラム。
【請求項１０】
ネットワークを介して互いに通信可能な複数の情報処理装置によりオーバーレイネットワークが構成され、１以上の前記情報処理装置にコンテンツが保存された配信システムにおけるＷｅｂページ送信方法であって、
サーバ装置が、所定のコンテンツのリクエストを、前記オーバーレイネットワークに参加していない第１の端末装置から受信するステップと、
前記サーバ装置が、前記受信された前記リクエストに対応する前記コンテンツを保存する前記情報処理装置の所在を前記オーバーレイネットワークで検索するステップと、
前記サーバ装置が、前記検索の結果に基づいて、Ｗｅｂページに記述する所在情報であって、前記情報処理装置の所在を示す前記所在情報を決定するステップと、
前記サーバ装置が、前記決定された前記所在情報が記述されるＷｅｂページを生成するステップと、
前記サーバ装置が、前記生成されたＷｅｂページを、前記第１の端末装置へ送信するステップと、
を含むことを特徴とするページ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））型の配信システムの技術分野に関する。
【背景技術】
【０００２】
近年、ピアツーピア型の配信システムが知られている。ピアツーピア型の配信システムでは、複数のノード装置により構成されるオーバーレイネットワークで複数のノード装置に複数のコンテンツデータが分散保存されている。そして、オーバーレイネットワークに参加している各ノード装置は、オーバーレイネットワークで他のノード装置からコンテンツデータを取得することが可能になっている。以下、コンテンツデータを「コンテンツ」という。
【０００３】
近年、このようなピアツーピア型の配信システムを利用して、Ｗｅｂサーバから配信可能なコンテンツを、オーバーレイネットワークで配信するシステムが提案されている。このシステムでは、Ｗｅｂブラウザを備える端末装置がノード装置としてオーバーレイネットワークに参加する。また、Ｗｅｂサーバから端末装置へ提供されるＷｅｂページには、コンテンツに割り当てられた固有のコンテンツＩＤが記述されている。そして、例えば特許文献１に開示されるように、端末装置は、Ｗｅｂページに記述されたコンテンツＩＤを用いて、オーバーレイネットワークからコンテンツの所在を検索し、取得できるようになっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−３４６３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、上述したシステムにおいて、端末装置がオーバーレイネットワークで配信されるコンテンツを取得するためには、オーバーレイネットワークに参加する必要がある。そのため、端末装置には所定のピアツーピアのアプリケーションプログラムをインストールする必要があった。
【０００６】
しかしながら、端末装置を使用するユーザの中には、ピアツーピアのアプリケーションプログラムを端末装置にインストールしてオーバーレイネットワークに参加することを望まないユーザも存在する。
【０００７】
本発明は、以上の点等に鑑みてなされたものであり、端末装置がオーバーレイネットワークに参加することなく、オーバーレイネットワークで配信されるコンテンツを効率良く取得することを可能としたサーバ装置、ページ送信プログラム、及びページ送信方法を提供することを課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、請求項１に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置によりオーバーレイネットワークが構成され、１以上の前記情報処理装置にコンテンツが保存された配信システムにおいて前記情報処理装置と通信可能なサーバ装置であって、所定のコンテンツのリクエストを、前記オーバーレイネットワークに参加していない第１の端末装置から受信する受信手段と、前記受信手段により受信された前記リクエストに対応する前記コンテンツを保存する前記情報処理装置の所在を前記オーバーレイネットワークで検索する検索手段と、前記検索手段による検索結果に基づいて、Ｗｅｂページに記述する所在情報であって、前記情報処理装置の所在を示す前記所在情報を決定する決定手段と、前記決定手段により決定された前記所在情報が記述されるＷｅｂページを生成する生成手段と、前記生成手段により生成されたＷｅｂページを、前記第１の端末装置へ送信する送信手段と、を備えることを特徴とする。
【０００９】
請求項２に記載の発明は、請求項１に記載のサーバ装置において、前記検索手段により複数の前記所在情報が検索された場合には、前記複数の前記所在情報の中から、前記第１の端末装置へ紹介する条件を満たす前記所在情報を、前記Ｗｅｂページに記述する所在情報として決定することを特徴とする。
【００１０】
請求項３に記載の発明は、請求項２に記載のサーバ装置において、前記サーバ装置は、前記第１の端末装置が設置される地域を示す第１地域情報を取得する第１取得手段と、前記情報処理装置が設置される地域を示す第２地域情報を取得する第２取得手段と、を備え、前記決定手段は、前記第１取得手段により取得された第１地域情報と前記第２取得手段により取得された第２地域情報に基づいて、前記第１の端末装置が設置される地域からの距離が近い地域に設置される前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする。
【００１１】
請求項４に記載の発明は、請求項２又は３に記載のサーバ装置において、前記サーバ装置は、前記第１の端末装置が前記ネットワークに接続するために利用されるＩＳＰ（Internet Service Provider）を示す第１ＩＳＰ情報を取得する第３取得手段と、前記情報処理装置が前記ネットワークに接続するために利用されるＩＳＰを示す第２ＩＳＰ情報を取得する第４取得手段と、を備え、前記決定手段は、前記第３取得手段により取得された第１ＩＳＰ情報と前記第４取得手段により取得された前記第２ＩＳＰ情報に基づいて、前記第１の端末装置と同じ前記ＩＳＰを利用する前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする。
【００１２】
請求項５に記載の発明は、請求項２から請求項４のいずれか一項に記載のサーバ装置において、前記情報処理装置には、前記第１の端末装置とは異なる第２の端末装置が通信手段を介して接続されており、前記情報処理装置は、前記第２の端末装置に送信するコンテンツを前記オーバーレイネットワークを介して他の情報処理装置から取得する動作、または前記コンテンツを前記第２の端末装置へ送信する動作を制御する制御手段を備え、前記サーバ装置は、前記情報処理装置の前記制御手段により制御される動作が実行中であるか否かを示す動作情報を取得する第５取得手段を備え、前記決定手段は、前記第５取得手段により取得された動作情報に基づいて、前記動作が実行中でない前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする。
【００１３】
請求項６に記載の発明は、請求項２から請求項５のいずれか一項に記載のサーバ装置において、前記サーバ装置は、前記情報処理装置が他の情報処理装置へアクセスした日付または時刻を示すアクセス情報を取得する第６取得手段を備え、前記決定手段は、前記第６取得手段により取得されたアクセス情報に基づいて、前記日付または時刻が古い前記情報処理装置の前記所在情報を、前記第１の端末装置へ紹介する条件を満たす前記所在情報として優先的に決定することを特徴とする。
【００１４】
請求項７に記載の発明は、請求項１から請求項６のいずれか一項に記載のサーバ装置において、前記オーバーレイネットワークに参加している前記情報処理装置の所在を示す前記所在情報を管理する管理装置から、前記所在情報を取得する第７取得手段と、前記検索手段により検索された前記所在情報の数が所定数以下であるか否かを判定する第１判定手段と、を備え、前記第１判定手段により、前記検索手段により検索された前記所在情報の数が所定数以下であると判定された場合には、前記決定手段は、前記第７取得手段により取得された前記所在情報の中から、前記リクエストに対応する前記コンテンツを保存していない情報処理装置の前記所在情報を、前記Ｗｅｂページに記述する所在情報として決定することを特徴とする。
【００１５】
請求項８に記載の発明は、請求項１から請求項６のいずれか一項に記載のサーバ装置において、前記オーバーレイネットワークに参加している前記情報処理装置の所在を示す前記所在情報を管理する管理装置から、前記所在情報を取得する第７取得手段と、前記検索手段により検索された前記所在情報に対応する前記情報処理装置が、他の情報処理装置へ、コンテンツを提供した日付または時刻、または前記他の情報処理装置へ前記所在情報を提供した日付または時刻を示す提供情報を取得する第８取得手段と、を備え、前記第８取得手段により取得された提供情報に示される日付または時刻が所定期間内に含まれる前記情報処理装置の数が所定数以上であるか否かを判定する第２判定手段と、前記第２判定手段により、前記第８取得手段により取得された提供情報に示される日付または時刻が所定期間内に含まれる前記情報処理装置の数が所定数以上であると判定された場合には、前記決定手段は、前記第７取得手段により取得された所定数の前記所在情報の中から、前記リクエストに対応する前記コンテンツを保存していない情報処理装置の前記所在情報を、前記Ｗｅｂページに記述する所在情報として決定することを特徴とする。
【００１６】
請求項９に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置によりオーバーレイネットワークが構成され、１以上の前記情報処理装置にコンテンツが保存された配信システムにおいて前記情報処理装置と通信可能なサーバ装置に含まれるコンピュータに、所定のコンテンツのリクエストを、前記オーバーレイネットワークに参加していない第１の端末装置から受信するステップと、前記受信された前記リクエストに対応する前記コンテンツを保存する前記情報処理装置の所在を前記オーバーレイネットワークで検索するステップと、前記検索の結果に基づいて、Ｗｅｂページに記述する所在情報であって、前記情報処理装置の所在を示す前記所在情報を決定するステップと、前記決定された前記所在情報が記述されるＷｅｂページを生成するステップと、前記生成されたＷｅｂページを、前記第１の端末装置へ送信するステップと、を実行させるためのページ送信プログラムである。
【００１７】
請求項１０に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置によりオーバーレイネットワークが構成され、１以上の前記情報処理装置にコンテンツが保存された配信システムにおけるＷｅｂページ送信方法であって、サーバ装置が、所定のコンテンツのリクエストを、前記オーバーレイネットワークに参加していない第１の端末装置から受信するステップと、前記サーバ装置が、前記受信された前記リクエストに対応する前記コンテンツを保存する前記情報処理装置の所在を前記オーバーレイネットワークで検索するステップと、前記サーバ装置が、前記検索の結果に基づいて、Ｗｅｂページに記述する所在情報であって、前記情報処理装置の所在を示す前記所在情報を決定するステップと、前記サーバ装置が、前記決定された前記所在情報が記述されるＷｅｂページを生成するステップと、前記サーバ装置が、前記生成されたＷｅｂページを、前記第１の端末装置へ送信するステップと、を含むことを特徴とする。
【発明の効果】
【００１８】
請求項１、９、又は１０に記載の発明によれば、サーバ装置は、第１の端末装置からリクエストされたコンテンツの検索結果に基づいて、Ｗｅｂページに記述する所在情報であってオーバーレイネットワークを構成する情報処理装置の所在を示す前記所在情報を決定する。そして、サーバ装置は、決定した所在情報が記述されるＷｅｂページを第１の端末装置へ送信する。そのため、第１の端末装置は、オーバーレイネットワークに参加することなく、サーバ装置から送信されたＷｅｂページに記述された所在情報を用いて、オーバーレイネットワークで配信されるコンテンツを効率良く取得することができる。  請求項２に記載の発明によれば、検索手段により複数の情報処理装置に対応する所在情報が検索された場合であっても、それらの所在情報の中から、第１の端末装置へ紹介する条件を満たす所在情報をＷｅｂページを介して端末装置に提供することができる。
【００１９】
請求項３に記載の発明によれば、コンテンツのリクエストをした第１の端末装置が設置される地域からの距離が近い地域に設置される情報処理装置の所在情報を優先的にＷｅｂページを介して第１の端末装置に提供することができる。そのため、第１の端末装置は、紹介された情報処理装置から迅速にコンテンツを取得することが可能となる。
【００２０】
請求項４に記載の発明によれば、コンテンツのリクエストをした第１の端末装置と同じＩＳＰを利用する情報処理装置の所在情報を優先的にＷｅｂページを介して第１の端末装置に提供することができる。そのため、第１の端末装置は、紹介された情報処理装置から迅速にコンテンツを取得することが可能となる。また、異なるＩＳＰ間を跨ることによる利用料金を低減することができる。
【００２１】
請求項５に記載の発明によれば、第２の端末装置へコンテンツを提供するための動作が実行中でない情報処理装置の所在情報を優先的にＷｅｂページを介して第１の端末装置に提供することができる。そのため、情報処理装置による上記動作の実行が妨げられることを回避することができる。
【００２２】
請求項６に記載の発明によれば、他の情報処理装置へコンテンツを提供した日付が古い情報処理装置の所在情報を優先的にＷｅｂページを介して第１の端末装置に提供することができる。そのため、特定の情報処理装置にアクセスが集中することを回避することができる。
【００２３】
請求項７に記載の発明によれば、第１の端末装置からリクエストされたコンテンツをオーバーレイネットワークで保存する情報処理装置が少ない場合に、このコンテンツをオーバーレイネットワークで保存する情報処理装置の数を増やすことができる。
【００２４】
請求項８に記載の発明によれば、第１の端末装置からリクエストされたコンテンツをオーバーレイネットワークで保存する情報処理装置が少ない場合に、このコンテンツをオーバーレイネットワークで保存する情報処理装置の数を増やすことができる。
【図面の簡単な説明】
【００２５】
【図１】本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。
【図２】（Ａ）は、ＷｅｂサーバＷＳの概要構成例を示すブロック図である。（Ｂ）は、管理サーバＭＳの概要構成例を示すブロック図である。（Ｃ）は、ルータＲｍの概要構成例を示すブロック図である。
【図３】コンテンツのリクエストを行ったユーザ端末ＵＴへコンテンツが提供されるまでの各装置の処理等を示すシーケンス図である。
【図４】（Ａ）は、ＩＰアドレスの決定処理の一例を示すフローチャートである。（Ｂ）は、地域情報及びＩＳＰ情報を用いた処理の一例を示すフローチャートである。
【図５】（Ａ）〜（Ｃ）は、コンテンツＸの検索処理による検索結果の一例を示す図である。（Ｄ）は、検索結果に示されるコンテンツ保持ノード以外の複数のノードＮｎの登録情報の一例を示す図である。（Ｅ）は、上記ステップＳ３で取得されたＷｅｂページを構成するＨＴＭＬの記述例を示す図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ配信システムに本発明を適用した場合の実施形態である。
【００２７】
［１．コンテンツ配信システムの構成及び動作概要］
始めに、図１を参照して、本実施形態に係るコンテンツ配信システムの構成及び動作概要について説明する。図１は、本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。図１に示すように、本実施形態に係るコンテンツ配信システムＳは、ＷｅｂサーバＷＳ、管理サーバＭＳ、ユーザ端末ＵＴ、及びルータＲｍ（ｍ＝１，２，３・・・ｊ）等により構成されている。ＷｅｂサーバＷＳ、管理サーバＭＳ、ユーザ端末ＵＴ、及びルータＲｍはネットワークＮＷに接続されている。ネットワークＮＷは、インターネット等からなる。ＷｅｂサーバＷＳは、コンテンツ配信サイトを構成するためのサーバである。また、ＷｅｂサーバＷＳは、本発明におけるサーバ装置の一例である。また、管理サーバＭＳは、後述するオーバーレイネットワークＯＮに参加しているノード装置Ｎｎの情報を管理するサーバである。また、管理サーバＭＳは、本発明における管理装置の一例である。ユーザ端末ＵＴは、本発明における第１の端末装置の一例である。また、ユーザ端末ＵＴは、例えば、ユーザにより使用されるパーソナルコンピュータ又は携帯機器である。また、ユーザ端末ＵＴには、Ｗｅｂブラウザプログラムがインストールされている。なお、ルータＲｍ及びユーザ端末ＵＴ等は、ＩＳＰ（Internet Service Provider）のサーバ（図示せず）により割り当てられたＩＰアドレスを用いてネットワークＮＷに接続可能になっている。
【００２８】
また、図１に示すように、コンテンツ配信システムＳには、複数の拠点Ｐｍ毎に拠点ネットワークＮＬｍが構築されている。この拠点の例としては、例えばカラオケ店舗、学校、会社、住宅、その他の施設等が挙げられる。拠点ネットワークＮＬｍは、例えば、ＬＡＮ（Local Area Network）等のプライベートネットワークである。また、各拠点ネットワークＮＬｍには、ルータＲｍと複数の拠点端末Ｔｍ−ｌ（ｌ＝１，２，３）とが接続されている。ルータＲｍは、ネットワークＮＷと拠点ネットワークＮＬｍとの間でＩＰ（Internet Protocol）パケットを中継する中継機器である。また、ルータＲｍは、拠点端末Ｔｍ−ｌにコンテンツを配信するエッジサーバとしての機能を担う。拠点端末Ｔｍ−ｌは、本発明における第２の端末装置の一例である。拠点端末Ｔｍ−ｌは、ルータＲｍから配信されたコンテンツを再生することができる。なお、各拠点Ｐｍにおける視聴端末Ｔｍ−ｌは、同じ拠点ネットワークＮＬｍに接続されているルータＲｍだけと通信を行うことに限定されるものではない。例えば、拠点Ｐ１における視聴端末Ｔ１−１は、同じ拠点ネットワークＮＬ１に接続されているルータＲ１だけでなく、他の拠点Ｐ２等におけるルータＲ２やＷｅｂサーバＷＳ等とも通信を行うことができる。
【００２９】
また、図１に示すように、コンテンツ配信システムＳには、ネットワークＮＷを介して互いに通信可能な複数のノード装置Ｎｎ（ｎ＝１，２，３・・・ｋ）の参加によりオーバーレイネットワークＯＮが構成されている。ノード装置は、本発明における情報処理装置の一例である。なお、ノード装置を、以下、「ノード」という。オーバーレイネットワークＯＮは、仮想的なリンクを構成する論理的なネットワークである。オーバーレイネットワークＯＮは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。なお、分散ハッシュテーブルを、以下、「ＤＨＴ（Distributed Hash Table）」という。ここで、オーバーレイネットワークＯＮに参加するとは、ＤＨＴを用いたルーティングテーブルに基づいてオーバーレイネットワークＯＮを介して他のノードＮｎとの間で各種メッセージを送受信できる状態に稼動することをいう。なお、ＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００３０】
そして、本実施形態においては、ルータＲｍ及びＷｅｂサーバＷＳがノードＮｎとしてオーバーレイネットワークＯＮに参加する。そのため、ルータＲｍ及びＷｅｂサーバＷＳには、ノードＮｎとして制御処理を実行させるピアツーピアのプログラムがインストールされる。ここで、ピアツーピアのアプリケーションプログラムを以下、「Ｐ２Ｐプログラム」という。また、ルータＲｍは、常駐ノードとしてオーバーレイネットワークＯＮに定常的に参加する。ここで、「定常的に参加」とは、例えば、常駐ノードが故障時又はメンテナンス時以外の時には、オーバーレイネットワークＯＮから離脱せず参加していることを意味する。なお、各拠点ＰｍのルータＲｍ以外にも、例えば、各家庭で常時ネットワークＮＷに接続される機器に、ノードＮｎとして制御処理を実行させるＰ２Ｐプログラムがインストールされても良い。また、ユーザ端末ＵＴにＰ２Ｐプログラムをインストールすれば、ユーザ端末ＵＴはノードＮｎとしてオーバーレイネットワークＯＮに参加することが可能となる。この場合、ユーザ端末ＵＴは、オーバーレイネットワークＯＮに必ずしも定常的に参加するとは限らない一般ノードとなる。例えば、ユーザ端末ＵＴは、ユーザがユーザ端末ＵＴを使用する時等の所定時間だけオーバーレイネットワークＯＮに参加する。
【００３１】
また、オーバーレイネットワークＯＮに参加している各ノードＮｎにはノードＩＤが付与されている。このノードＩＤは、ノードＮｎを、オーバーレイネットワークＯＮに参加しているノードＮｎの中から識別する固有の識別情報である。また、オーバーレイネットワークＯＮに参加している複数のノードＮｎには、内容の異なる様々なコンテンツが分散保存されている。また、ノードＮｎに保存されているコンテンツには、コンテンツＩＤが付与されている。コンテンツＩＤは、コンテンツを、オーバーレイネットワークＯＮでノードＮｎに保存される複数のコンテンツの中から識別する固有の識別情報である。なお、ノードＩＤ及びコンテンツＩＤは、例えば、オーバーレイネットワークＯＮで共通のハッシュ関数により生成される。
【００３２】
ここで、コンテンツを保存しているノードＮｎを、以下、「コンテンツ保持ノード」という。また、コンテンツの所在は、インデックス情報として、このコンテンツの所在を管理しているノードＮｎに記憶される。コンテンツの所在を管理しているノードＮｎを、以下、「ルートノード」という。インデックス情報には、コンテンツを保存しているコンテンツ保持ノードのノード情報と、コンテンツのコンテンツＩＤとの組が含まれる。ノード情報には、例えば、コンテンツ保持ノードのＩＰアドレス、ポート番号、及びノードＩＤが含まれる。ここで、コンテンツ保持ノードのＩＰアドレスは、コンテンツ保持ノードの所在を示す所在情報の一例である。なお、ルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤが割り当てられたノードＮｎであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。
【００３３】
そして、あるノードＮｎが、オーバーレイネットワークＯＮを介してコンテンツ保持ノードから所定のコンテンツを取得する場合がある。この場合、このノードＮｎは、所定のコンテンツを保存するコンテンツ保持ノードの所在をオーバーレイネットワークＯＮで検索する処理を行う。この処理を、以下、「コンテンツの検索処理」という。ここで、所定のコンテンツとは、例えば、ノードＮｎにより取得対象として選択されたコンテンツである。また、コンテンツの検索処理を行うノードＮｎを、以下、「ユーザノード」という。また、コンテンツの検索処理は、コンテンツのコンテンツＩＤに基づいて行われる。具体的には、ユーザノードは、コンテンツの検索処理において、コンテンツ所在問合せメッセージを生成する。コンテンツ所在問合せメッセージは、コンテンツの所在をルートノードに問い合わせるためのメッセージである。また、コンテンツ所在問合せメッセージには、このメッセージを送信するユーザノードのＩＰアドレス及びポート番号、並びにコンテンツのコンテンツＩＤが含まれる。そして、ユーザノードは、生成したコンテンツ所在問合せメッセージを、ＤＨＴルーティングによりルートノード宛に送信する。なお、ＤＨＴルーティングは、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。コンテンツ所在問合せメッセージを受信したルートノードは、コンテンツ所在問合せメッセージに含まれるコンテンツＩＤに対応するインデックス情報を取得する。そして、ルートノードは、取得したインデックス情報を、ユーザノードへ返信する。このように返信されたインデックス情報には、コンテンツを保存している１以上のコンテンツ保持ノードのＩＰアドレス等が含まれている。こうして、ユーザノードは、ルートノードからのインデックス情報を受信する。このインデックス情報により、ユーザノードは、取得対象のコンテンツを発見することができる。そして、ユーザノードは、受信したインデックス情報に含まれるコンテンツ保持ノードのＩＰアドレス等に基づいてコンテンツ保持ノードにアクセスする。そして、ユーザノードは、コンテンツ保持ノードにコンテンツを要求しこのコンテンツをコンテンツ保持ノードから取得する。
【００３４】
ところで、上述したように、ユーザ端末ＵＴにＰ２Ｐプログラムをインストールすれば、ユーザ端末ＵＴはノードＮｎとしてオーバーレイネットワークＯＮに参加することが可能となる。この場合、ユーザ端末ＵＴは、例えば特開２００７−０３４６３０号公報に開示されるように、所定のＷｅｂサイトから提供されたＷｅｂページに記述されたコンテンツＩＤを用いてコンテンツを取得することができる。しかし、ユーザ端末ＵＴを使用するユーザの中には、Ｐ２Ｐプログラムをユーザ端末ＵＴにインストールしてオーバーレイネットワークＯＮに参加することを望まないユーザも存在する。この理由としては、例えばＰ２Ｐプログラムをインストールする手間や、Ｐ２Ｐプログラム自体の挙動が見えないなどの不安等からインストールに抵抗があること等が挙げられる。そのため、ユーザ端末ＵＴがオーバーレイネットワークＯＮに参加することなく、オーバーレイネットワークＯＮで配信されるコンテンツを取得する方法について以下に説明する。
【００３５】
この方法の一つの例として、ＤＮＳ（Domain Name System）を利用する方法が考えられる。この方法では、所定のＷｅｂサイトからユーザ端末ＵＴに提供されるＷｅｂページには、オーバーレイネットワークＯＮで配信されるコンテンツのＵＲＬ（Uniform Resource Locator）が記述される。また、ＤＮＳサーバ（図示せず）には、コンテンツのＵＲＬに含まれるドメイン名と、このコンテンツを保存しているコンテンツ保持ノードのＩＰアドレスとを対応付けた対応情報が登録される。この対応情報は、所定時間毎に更新される。そして、ユーザ端末ＵＴのＷｅｂブラウザは、ＷｅｂサイトからＷｅｂページを受信すると、Ｗｅｂページに記述されたＵＲＬに含まれるドメイン名に対応するＩＰアドレスをＤＮＳサーバへ問い合わせる。その結果、ユーザ端末ＵＴのＷｅｂブラウザは、オーバーレイネットワークＯＮでコンテンツを保存するコンテンツ保持ノードのＩＰアドレスを取得する。つまり、ドメイン名からＩＰアドレスに変換される。そして、ユーザ端末ＵＴのＷｅｂブラウザは、取得したＩＰアドレスに対応するコンテンツ保持ノードへアクセスしてコンテンツを取得することができる。しかし、ＤＮＳを利用する方法では、多くのユーザ端末ＵＴから短時間に一斉にＤＮＳサーバに問い合わせがあることが想定される。この場合、ＤＮＳサーバから紹介されたコンテンツ保持ノードへ複数のユーザ端末ＵＴからアクセスが集中し、レスポンスが遅延するなどの問題がある。
【００３６】
そこで、以下に説明する方法では、ＤＮＳサーバからＩＰアドレスを得ることなくＷｅｂサーバＷＳからユーザ端末ＵＴへ、ユーザ端末ＵＴがコンテンツの取得先となるノードＮｎを紹介するように構成した。この方法では、ＷｅｂサーバＷＳからユーザ端末ＵＴに提供されるＷｅｂページには、ノードＮｎのＩＰアドレスが記述される。そのため、ＷｅｂサーバＷＳは、ユーザ端末ＵＴから所定のコンテンツのリクエストを受信すると、このリクエストに対応するコンテンツの検索処理を行う。そして、ＷｅｂサーバＷＳは、コンテンツの検索処理による検索結果に基づいてＷｅｂページに記述するノードＮｎのＩＰアドレスを決定するようになっている。
【００３７】
［２．ＷｅｂサーバＷＳの構成及び機能］
次に、図２（Ａ）を参照して、ＷｅｂサーバＷＳの構成及び機能について説明する。図２（Ａ）は、ＷｅｂサーバＷＳの概要構成例を示すブロック図である。ＷｅｂサーバＷＳは、図２（Ａ）に示すように、制御部１１、記憶部１２、及び通信部１３等を備えて構成される。制御部１１、記憶部１２、及び通信部１３はバス１４を介して相互に接続されている。ＷｅｂサーバＷＳは、アプリケーションサーバ、及びデータベースサーバ等の複数のサーバから構成されてもよい。
【００３８】
記憶部１２は、例えばハードディスクドライブ等から構成される。記憶部１２には、オペレーティングシステム、ＨＴＴＰ（HyperText Transfer Protocol）サーバプログラム、及びＰ２Ｐプログラム等が記憶されている。ＨＴＴＰサーバプログラム及びＰ２Ｐプログラムは、本発明のページ送信プログラムの一例である。なお、ＨＴＴＰサーバプログラム及びＰ２Ｐプログラム等は、例えば、ネットワークＮＷに接続された所定のサーバからダウンロードされるようにしてもよい。或いは、ＨＴＴＰサーバプログラム及びＰ２Ｐプログラム等は、例えば、記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。
【００３９】
また、記憶部１２には、Ｗｅｂページが記憶されている。Ｗｅｂページは、ＨＴＭＬ（Hyper Text Markup Language）やＸＭＬ（Extensible Markup Language）等により記述された構造化文書ファイルからなる。更に、記憶部１２には、オーバーレイネットワークＯＮで使用されるＤＨＴを用いたルーティングテーブル等が記憶される。なお、ＤＨＴを用いたルーティングテーブルは、オーバーレイネットワークＯＮへの参加により生成される。通信部１３は、ネットワークＮＷを通じて管理サーバＭＳ、ユーザ端末ＵＴ、又はルータＲｍ等との間の通信制御を行う。
【００４０】
制御部１１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部１１は、本発明における受信手段、検索手段、決定手段、生成手段、送信手段、第１及び第２判定手段、及び第１〜８取得手段の一例である。また、制御部１１は時計機能及びタイマ機能を備える。そして、制御部１１は、ＣＰＵが記憶部１２等に記憶されたＨＴＴＰサーバプログラムの実行によりＨＴＴＰサーバ部１１ａとして動作する。このＨＴＴＰサーバ部１１ａにより、ＷｅｂサーバＷＳは、ＨＴＴＰサーバとして機能する。また、制御部１１は、ＣＰＵが記憶部１２等に記憶されたＰ２Ｐプログラムの実行により、ノード処理部１１ｂとして動作する。このノード処理部１１ｂにより、ＷｅｂサーバＷＳは、ノードＮｎとしても機能する。なお、ＨＴＴＰサーバ部１１ａとノード処理部１１ｂの処理は、１つのＣＰＵがマルチタスク又はマルチコアにより実行される。或いは、ＨＴＴＰサーバ部１１ａとノード処理部１１ｂの処理は、２つのＣＰＵで夫々のＣＰＵにより実行されるように構成してもよい。
【００４１】
［３．管理サーバＭＳの構成及び機能］
次に、図２（Ｂ）を参照して、管理サーバＭＳの構成及び機能について説明する。図２（Ｂ）は、管理サーバＭＳの概要構成例を示すブロック図である。管理サーバＭＳは、図２（Ｂ）に示すように、制御部２１、記憶部２２、及び通信部２３等を備えて構成される。制御部２１、記憶部２２、及び通信部２３はバス２４を介して相互に接続されている。管理サーバＭＳは、アプリケーションサーバ、及びデータベースサーバ等の複数のサーバから構成されてもよい。
【００４２】
記憶部２２は、例えばハードディスクドライブ等から構成される。記憶部２２には、オペレーティングシステム、及びサーバプログラム等が記憶されている。また、記憶部２２には、管理データベースが構築されている。管理データベースには、ノード情報、地域情報、ＩＳＰ情報、動作情報、及びコンテンツ保持数情報等がノードＮｎ毎に登録されている。管理データベースに登録された情報を、以下、「登録情報」という。この管理データベースに登録情報が登録されるノードＮｎは、例えば常駐ノードである。ただし、常駐ノード以外のノードＮｎの登録情報が管理データベースに登録されても構わない。
【００４３】
ここで、地域情報は、ノードＮｎが設置される地域を示す。地域は、言い換えれば、現実世界の位置を示す。また、地域情報は、例えば、大陸名、国名、都道府県名、市町村名、又はシステム運営者側が任意に決めたエリア名又は地点名等で表される。また、地域情報は、例えば、ノードＮｎの経度緯度、住所、又は郵便番号に基づき、ノードＮｎ又は管理サーバＭＳにより決定される。なお、経度緯度、住所、又は郵便番号は、ノードＮｎの設置時等のタイミングで例えばユーザによりノードＮｎに入力され記憶される。或いは、地域情報は、例えば、ノードＮｎ又は管理サーバＭＳがＤＮＳを利用することにより、ノードＮｎに割り当てられたＩＰアドレスに基づき決定される。この場合、地域情報は、ＤＮＳによりＩＰアドレスから変換されたドメイン名に含まれる英数字から決定することができる。また、例えば、ドメイン名に含まれる英数字に地域を示す情報が含まれていない場合など、ノードＮｎに割り当てられたＩＰアドレスから地域情報を決定できない場合がある。この場合、地域情報は、ノードＮｎに近いルータに割り当てられているＩＰアドレスから決定されるように構成してもよい。ノードＮｎに近いルータとは、例えば、ノードＮｎから他のノードＮｎにパケットを送信したときに最初に中継されるルータである。ノードＮｎに近いルータのＩＰアドレスは、ノードＮｎが公知のtracerouteを実行することで取得できる。また、地域情報は、例えばノードＮ１から他のノードＮｎへアクセスしたときのノードＮｎからの応答速度に基づいて決定されるように構成してもよい。この場合、応答速度が所定速度以上である他のノードＮｎの地域情報がノードＮ１の地域情報となる。
【００４４】
また、ＩＳＰ情報は、ノードＮｎがネットワークＮＷに接続するために利用されるＩＳＰを示す。ＩＳＰ情報は、地域情報と同様、例えば、ノードＮｎ又は管理サーバＭＳがＤＮＳを利用することにより、ノードＮｎに割り当てられたＩＰアドレスに基づき決定される。或いは、ＩＳＰ情報は、ノードＮｎの設置時等のタイミングで例えばユーザによりノードＮｎに入力され記憶される。
【００４５】
また、ノードＮｎのノード情報、地域情報、及びＩＳＰ情報は、例えばノードＮｎがオーバーレイネットワークＯＮへ参加した時にノードＮｎから送信され管理データベースに登録される。或いは、ノードＮｎがシステム運営者により設置されるノードＮｎである場合がある。この場合、ノードＮｎのノード情報、地域情報、及びＩＳＰ情報は、例えばシステム運営者の端末から管理データベースに登録される。
【００４６】
また、動作情報は、ノードＮｎがルータＲｍである場合において、このルータＲｍと同じ拠点ネットワークＮＬｍに接続されている拠点端末Ｔｍ−ｌへコンテンツを提供するための動作が実行中であるか否かを示す。拠点端末Ｔｍ−ｌへコンテンツを提供するための動作を、以下、「拠点動作」という。拠点動作には、ノードＮｎが拠点端末Ｔｍ−ｌに送信するコンテンツをオーバーレイネットワークＯＮを介してコンテンツ保持ノードから取得する動作が含まれる。この拠点動作には、上述したコンテンツの検索処理を含めてもよい。また、拠点動作には、ノードＮｎが拠点ネットワークＮＬｍを介してコンテンツを拠点端末Ｔｍ−ｌへ送信する動作が含まれる。動作情報には、ノードＮｎの負荷情報や帯域情報等の情報が含まれる。負荷情報は、ノードＮｎのＣＰＵ負荷率やメモリ負荷率（％）等を示す。また、帯域情報は、ノードＮｎがユーザ端末ＵＴ等からのコンテンツの要求に応じてコンテンツを送信するために割り当て可能な帯域（ｂｐｓ）を示す。割り当て可能な帯域は、言い換えれば、ノードＮｎの通信部に接続されている通信回線の有効帯域である。この有効帯域は、ノードＮｎが速度測定用のサーバ（図示せず）又は所定のノードＮｎへアクセスしてデータ通信速度を計測することにより算出することができる。また、有効帯域は、通信している通信相手とのセッション数をカウントすることにより算出してもよい。また、コンテンツ保持数情報は、ノードＮｎが保存しているコンテンツの数を示す。また、ノードＮｎの動作情報、及びコンテンツ保持数情報は、例えばノードＮｎがオーバーレイネットワークＯＮへ参加した時、及び、その後所定時間間隔で、ノードＮｎから送信され管理データベースに登録される。所定時間間隔でノードＮｎから送信される動作情報、及びコンテンツ保持数情報により、管理データベースに既に登録されている登録情報が更新される。ここで、所定時間間隔とは、例えば数秒間隔である。
【００４７】
なお、ノードＮｎがオーバーレイネットワークＯＮから脱退した場合、脱退を示す情報がノードＮｎから管理サーバＭＳに送信される。その結果、脱退したノードＮｎのノード情報等は管理データベースから削除される。或いは、脱退したノードＮｎのノード情報等に対応付けられて脱退を示す情報が管理データベースに登録されるように構成してもよい。
【００４８】
通信部２３は、ネットワークＮＷを通じてＷｅｂサーバＷＳ、ユーザ端末ＵＴ、又はルータＲｍ等との間の通信制御を行う。
【００４９】
制御部２１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。また、制御部２１は、時計機能及びタイマ機能を備える。そして、制御部２１は、ＣＰＵが記憶部２２等に記憶されたサーバプログラムの実行により、ノードＮｎから動作情報、負荷情報、帯域情報、及びコンテンツ保持数情報等を収集する処理を行う。また、制御部２１は、収集した情報を管理データベースへ登録する処理を行う。さらに、制御部２１は、管理データベースに登録された登録情報をＷｅｂサーバＷＳへ送信する処理を行う。なお、管理データベースに登録された登録情報は、例えば、定期的、又はＷｅｂサーバＷＳから要求があった時にＷｅｂサーバＷＳへ送信される。
【００５０】
［４．ルータＲｍの構成及び機能］
次に、図２（Ｃ）を参照して、ルータＲｍの構成及び機能について説明する。図２（Ｃ）は、ルータＲｍの概要構成例を示すブロック図である。ルータＲｍは、図２（Ｃ）に示すように、制御部３１、バッファメモリ３２、記憶部３３、通信部３４ａ、及び通信部３４ｂ等を備えて構成される。制御部３１、バッファメモリ３２、記憶部３３、通信部３４ａ、及び通信部３４ｂはバス３５を介して相互に接続されている。
【００５１】
バッファメモリ３２は、通信部３４ａを介して受信されたコンテンツを一時的に蓄積する。
【００５２】
記憶部３３は、例えばハードディスクドライブ等から構成される。記憶部３３には、オペレーティングシステム、ＩＰパケット中継処理プログラム、ＨＴＴＰサーバプログラム、及びＰ２Ｐプログラム等が記憶されている。また、記憶部３３には、オーバーレイネットワークＯＮで使用されるＤＨＴを用いたルーティングテーブル等が記憶される。なお、ＤＨＴを用いたルーティングテーブルは、オーバーレイネットワークＯＮへの参加により生成される。また、記憶部３３に設けられたコンテンツ保存領域には、コンテンツが記憶される。また、コンテンツが複数のファイルから構成される場合がある。この場合、例えば、各ファイルが一つのコンテンツとしてオーバーレイネットワークＯＮに参加している複数のノードＮｎに分散保存される。そのため、一つのノードＮｎの記憶部３３には、コンテンツを構成する複数のファイルの中の一つのファイルが記憶される場合もある。例えば、コンテンツが、第１の動画ファイル、第２の動画ファイル、及び制御ファイルから構成されるとする。この場合、第１の動画ファイルは、例えばノードＮ１の記憶部３３に保存される。また、第２の動画ファイルは、例えばノードＮ２の記憶部３３に保存される。また、制御ファイルは、例えばノードＮ３の記憶部３３に保存される。なお、このようにコンテンツとして分散保存された各ファイルには、夫々固有のコンテンツＩＤが付与されている。
【００５３】
通信部３４ａは、ネットワークＮＷを通じて他のルータＲｍ、ＷｅｂサーバＷＳ、管理サーバＭＳ、又はユーザ端末ＵＴ等との間の通信制御を行う。通信部３４ｂは、拠点ネットワークＮＬｍを通じて視聴端末Ｔｍ−ｌとの間の通信制御を行う。
【００５４】
制御部３１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部３１は、上述した拠点動作を制御する制御手段の一例である。また、制御部３１は、ＣＰＵが記憶部３３等に記憶されたＩＰパケット中継処理プログラムの実行により、ＩＰパケット中継処理部３１ａとして動作する。ＩＰパケット中継処理部３１ａは、ＯＳＩ（Open Systems Interconnection）参照モデルの第３層であるネットワーク層において、他のルータ又はホストからのＩＰパケットを中継する処理を行う。なお、ＩＰパケット中継処理部３１ａの機能は、公知のルータ又はＬ３スイッチングハブ等と同様であるので、詳しい説明を省略する。また、制御部３１は、ＣＰＵが記憶部３３等に記憶されたＨＴＴＰサーバプログラムの実行によりＨＴＴＰサーバ部３１ｂとして動作する。このＨＴＴＰサーバ部３１ｂにより、ルータＲｍは、ＨＴＴＰサーバとして機能する。また、制御部３１は、ＣＰＵが記憶部３３等に記憶されたＰ２Ｐプログラムの実行により、ノード処理部３１ｃとして動作する。このノード処理部３１ｃにより、ルータＲｍは、ノードＮｎとしても機能する。なお、ＩＰパケット中継処理部３１ａ、ＨＴＴＰサーバ部３１ｂ、及びノード処理部３１ｃの処理は、１つのＣＰＵがマルチタスク又はマルチコアにより実行される。或いは、ＩＰパケット中継処理部３１ａ、ＨＴＴＰサーバ部３１ｂ、及びノード処理部３１ｃの処理は、２以上のＣＰＵで夫々のＣＰＵにより実行されるように構成してもよい。
［５．コンテンツ配信システムＳの動作］
次に、図３を参照して、本実施形態に係るコンテンツ配信システムＳの動作について説明する。図３は、コンテンツのリクエストを行ったユーザ端末ＵＴへコンテンツが提供されるまでの各装置の処理等を示すシーケンス図である。なお、以下に説明する動作において、ＷｅｂサーバＷＳではＨＴＴＰサーバプログラム及びＰ２Ｐプログラムが起動されているものとする。また、ＷｅｂサーバＷＳのＰ２Ｐプログラムの起動により、ＷｅｂサーバＷＳはノードＮｎとしてオーバーレイネットワークＯＮに参加する。また、ルータＲｍではＨＴＴＰサーバプログラム及びＰ２Ｐプログラムが起動されているものとする。また、ＷｅｂサーバＷＳのＰ２Ｐプログラムの起動により、ルータＲｍはノードＮｎとしてオーバーレイネットワークＯＮに参加する。
【００５５】
図３において、ユーザ端末ＵＴのＷｅｂブラウザは、ＷｅｂサーバＷＳにＨＴＴＰプロトコルを利用してアクセスする。そして、ユーザ端末ＵＴのＷｅｂブラウザは、例えばユーザにより指定されたコンテンツＸのリクエストをＷｅｂサーバＷＳへ送信する（ステップＳ１）。このリクエストは、例えばコンテンツ視聴用のＷｅｂページの要求を示すＨＴＴＰリクエストである。
【００５６】
一方、ＷｅｂサーバＷＳのＨＴＴＰサーバ部１１ａは、ユーザ端末ＵＴからのリクエストを受信すると、このリクエストに対応するコンテンツＸのＵＲＬが記述されたＷｅｂページを記憶部１２から取得する（ステップＳ２）。次いで、ＨＴＴＰサーバ部１１ａは、取得したＷｅｂページに含まれるコンテンツＸのＵＲＬを抽出する（ステップＳ３）。次いで、ＨＴＴＰサーバ部１１ａは、コンテンツＸの取得先をノード処理部１１ｂに問い合わせる（ステップＳ４）。具体的には、ＨＴＴＰサーバ部１１ａは、ノード処理部１１ｂがアクセス可能なＲＡＭの所定の記憶領域に、問い合わせコマンドを記憶する。この問い合わせコマンドには、ステップＳ４で抽出されたＵＲＬが付加されている。
【００５７】
次いで、ＷｅｂサーバＷＳのノード処理部１１ｂは、ＨＴＴＰサーバ部１１ａからの問い合わせを受けると、コンテンツＸの検索処理を行う（ステップＳ５）。このコンテンツＸの検索処理は、受信されたリクエストに対応するコンテンツＸの検索処理である。このコンテンツＸの検索処理において、ノード処理部１１ｂは、問い合わせコマンドに付加されたＵＲＬに対応するコンテンツＩＤを取得する。コンテンツＩＤは、例えばオーバーレイネットワークＯＮで配信されるコンテンツＸのＵＲＬとコンテンツＩＤとを対応付けた対応付けテーブルから取得できる。この場合、対応付けテーブルは記憶部１２に予め記憶される。或いは、コンテンツＩＤは、オーバーレイネットワークＯＮで共通のハッシュ関数でコンテンツＸのＵＲＬをハッシュ化することにより取得されてもよい。そして、ノード処理部１１ｂは、取得したコンテンツＩＤを含むコンテンツ所在問合せメッセージを、ＤＨＴルーティングによりルートノード宛に送信する。その結果、ノード処理部１１ｂは、上述したように、コンテンツＸのルートノードからインデックス情報を検索結果として取得する。つまり、ノード処理部１１ｂは、コンテンツＸの検索処理により、リクエストに対応するコンテンツＸを保存するコンテンツ保持ノードをオーバーレイネットワークＯＮから発見する。
【００５８】
また、本実施形態では、インデックス情報には、検索されたコンテンツ保持ノードのノード情報に対応する最終提供日付情報が含まれている。最終提供日付情報は、本発明における提供情報とアクセス情報の一例である。この最終提供日付情報は、コンテンツ保持ノードがユーザ端末ＵＴへコンテンツＸを提供した直近の日付を示す。ここで、コンテンツＸの提供は、（１）コンテンツ保持ノードがユーザ端末ＵＴへコンテンツＸをアップロードすること、及び、（２）ユーザ端末ＵＴが、コンテンツ保持ノードからコンテンツＸをダウンロードすること、を含む。或いは、この最終提供日付情報は、コンテンツＸのコンテンツ保持ノードのノード情報を含むインデックス情報がルートノードからユーザ端末ＵＴへ提供された直近の日付を示すものであってもよい。或いは、この最終提供日付情報は、コンテンツ保持ノードがユーザ端末ＵＴからアクセスされた直近の日付を示すものであってもよい。なお、本実施形態において、最終提供日付には年月日及び時刻が含まれるが、時刻のみであってもよい。そして、例えば、コンテンツ保持ノードがユーザ端末ＵＴへコンテンツＸをアップロードした場合、アップロードメッセージがそのコンテンツＸのルートノード宛に送信される。アップロードメッセージとは、ユーザ端末ＵＴへコンテンツＸをアップロードしたことを示すメッセージである。このアップロードメッセージには、コンテンツ保持ノードのノード情報、及びコンテンツＸがアップロードされた日付を示す日付情報が含まれる。これにより、アップロードメッセージを受信したルートノードは、このメッセージに含まれる日付情報を、このメッセージの送信元であるコンテンツ保持ノードのノード情報に対応付けて最終提供日付情報として記憶する。また、既に同じコンテンツ保持ノードの最終提供日付情報が記憶されている場合がある。この場合、アップロードメッセージに含まれる日付情報により最終提供日付情報が更新される。なお、日付情報に示される日付は、ルートノードがアップロードメッセージを受信した日付であってもよい。
【００５９】
また、最終提供日付情報は、ルートノードに記憶されるのではなく、ＷｅｂサーバＷＳに記憶されるように構成してもよい。例えば、ＷｅｂサーバＷＳは、後述するステップＳ１０で、ユーザ端末ＵＴに紹介するコンテンツ保持ノードのＩＰアドレスが記述されたＷｅｂページをユーザ端末ＵＴへ送信する。このとき、ＷｅｂサーバＷＳは、Ｗｅｂページを送信した日付を示す日付情報を最終提供日付情報として、ユーザ端末ＵＴからのリクエストに対応するコンテンツＸのコンテンツＩＤ、及びユーザ端末ＵＴに紹介するコンテンツ保持ノードのノード情報の組に対応付けて記憶する。これにより、ＷｅｂサーバＷＳのノード処理部１１ｂは、コンテンツＸの検索処理により検索されたコンテンツ保持ノードのノード情報に対応する最終提供日付情報を取得することができる。この場合、最終提供日付情報は、ユーザ端末ＵＴに紹介するコンテンツ保持ノードがユーザ端末ＵＴへコンテンツＸをアップロードすると看做した日付のうち直近の日付を示す。
【００６０】
次いで、ノード処理部１１ｂは、コンテンツＸの検索処理による検索結果に基づいて、Ｗｅｂページに記述するノードＮｎのＩＰアドレスを決定する決定処理を行う（ステップＳ６）。図４（Ａ）は、ＩＰアドレスの決定処理の一例を示すフローチャートである。図５は、コンテンツＸの検索処理による検索結果の一例を示す図である。また、図５では、発見されたコンテンツ保持ノードの数が互いに異なる３つの検索結果が（Ａ）〜（Ｃ）に示されている。また、図５（Ａ）〜（Ｃ）に示す各検索結果には、発見されたコンテンツ保持ノードのノード情報と最終提供日付情報が、最終提供日付情報に示される日付の新しい順に並べられている。このような検索結果は、ノード処理部１１ｂにより、ＲＡＭの所定の記憶領域に記憶される。なお、検索結果に示されるコンテンツ保持ノードの中には、未だユーザ端末ＵＴへコンテンツＸをアップロードしてないコンテンツ保持ノードが含まれる場合がある。このようなコンテンツ保持ノードのノード情報には、最終提供日付情報が対応付けられていない。
【００６１】
図４（Ａ）に示すＩＰアドレスの決定処理では、適正キャッシュ数、適正キャッシュ保持時間、及び適正キャッシュ紹介時間というパラメータが用いられる。ここで、適正キャッシュ数とは、オーバーレイネットワークＯＮで、１つのコンテンツに対して保持すべきコンテンツ保持ノードの数をいう。また、適正キャッシュ保持時間とは、オーバーレイネットワークＯＮで、１つのコンテンツを保存したコンテンツ保持ノードがそのコンテンツを最低限保持すべき時間をいう。つまり、適正キャッシュ保持時間は、コンテンツのリクエストの数がピークを超えた後、このコンテンツを保存するコンテンツ保持ノードの数を急激に減らさないために最低限保持すべき時間である。また、適正キャッシュ紹介時間とは、オーバーレイネットワークＯＮで、１つのコンテンツを保存するコンテンツ保持ノードが紹介されてから、そのコンテンツを保存するコンテンツ保持ノードが次に紹介されるまでに最低限経過すべき時間をいう。なお、適正キャッシュ数、適正キャッシュ保持時間、及び適正キャッシュ紹介時間の各パラメータは、Ｐ２Ｐプログラム用の設定ファイルに格納され記憶部１２に記憶される。そして、Ｐ２Ｐプログラムの起動時に、ノード処理部１１ｂにより、設定ファイルから各パラメータがＲＡＭの所定の記憶領域に読み込まれて設定される。
【００６２】
図４（Ａ）に示すＩＰアドレスの決定処理において、ノード処理部１１ｂは、インデックス情報に示される検索結果数と上記適正キャッシュ数とを比較し、適正キャッシュ数より検索結果数が少ないか否かを判定する（ステップＳ６１）。この判定は、所在情報の数が所定数以下であるか否かの判定の一例である。ここで、検索結果数は、インデックス情報に示されるコンテンツ保持ノードの数である。そして、ノード処理部１１ｂは、適正キャッシュ数より検索結果数が少なくないと判定した場合には（ステップＳ６１：ＮＯ）、ステップＳ６２に進む。図５（Ｂ），（Ｃ）に示す検索結果例では、適正キャッシュ数より検索結果数が多いので、ステップＳ６２に進む。一方、ノード処理部１１ｂは、適正キャッシュ数より検索結果数が少ないと判定した場合には（ステップＳ６１：ＹＥＳ）、ステップＳ６４に進む。図５（Ａ）に示す検索結果例では、適正キャッシュ数より検索結果数が少ないので、ステップＳ６４に進む。適正キャッシュ数より検索結果数が少ない場合、コンテンツＸが不足しているのでコンテンツ保持ノードの数を増やす必要がある。そのため、後述するステップＳ６５で、ユーザ端末ＵＴへ紹介するノードＮｎのＩＰアドレスとして、コンテンツＸを保存していないノードＮｎのＩＰアドレスが決定される。
【００６３】
ステップＳ６２では、ノード処理部１１ｂは、検索結果中に示される最終提供日付のうちで最も古い最終提供日付から、時計機能により取得された現在日付までの経過時間を算出する。図５に示す例では、日付は年月日及び時刻も含むが、時刻のみであってもよい。この場合、検索結果中に示される最終提供時刻のうちで最も古い最終提供時刻から、時計機能により取得された現在時刻までの経過時間が算出される。次いで、ノード処理部１１ｂは、ステップＳ６２で算出された経過時間と上記適正キャッシュ紹介時間とを比較し、適正キャッシュ紹介時間より経過時間が短いか否かを判定する（ステップＳ６３）。そして、ノード処理部１１ｂは、適正キャッシュ紹介時間より経過時間が短いと判定した場合には（ステップＳ６３：ＹＥＳ）、ステップＳ６４に進む。図５（Ｂ）に示す検索結果例では、適正キャッシュ紹介時間より経過時間が短いので、ステップＳ６４に進む。適正キャッシュ紹介時間より経過時間が短い場合、コンテンツＸのリクエストが短時間に急増していると考えられる。この場合、コンテンツＸが不足しているのでコンテンツ保持ノードの数を増やす必要がある。そのため、後述するステップＳ６５で、ユーザ端末ＵＴへ紹介するノードＮｎのＩＰアドレスとして、コンテンツＸを保存していないノードＮｎのＩＰアドレスが決定される。
【００６４】
なお、上記ステップＳ６３で、ノード処理部１１ｂは、所定期間内に最終提供日付または時刻が含まれているコンテンツ保持ノードの数が所定数以上であるか否かを判定するように構成してもよい。ここで、所定期間は、例えば、現在日時から適正キャッシュ紹介時間遡った期間である。また、所定数は、例えば、適正キャッシュ数である。そして、ノード処理部１１ｂは、所定期間内に最終提供日付または時刻が含まれているコンテンツ保持ノードの数が所定数以上であると判定した場合には、ステップＳ６４に進む。この場合、コンテンツＸのリクエストが短時間に急増していると考えられるためである。一方、ノード処理部１１ｂは、所定期間内に最終提供日付または時刻が含まれているコンテンツ保持ノードの数が所定数以上でないと判定した場合には、ステップＳ６６に進む。
【００６５】
一方、ノード処理部１１ｂは、適正キャッシュ紹介時間より経過時間が短くないと判定した場合には（ステップＳ６３：ＮＯ）、ステップＳ６６に進む。図５（Ｂ）に示す検索結果例では、適正キャッシュ紹介時間より経過時間が長いので、ステップＳ６６に進む。なお、検索結果に示されるコンテンツ保持ノードの中には、最終提供日付情報が対応付けられていないコンテンツ保持ノードが含まれている場合がある。この場合、上記ステップＳ６３の処理が行われずに処理はステップＳ６６に進む。
【００６６】
ステップＳ６４では、ノード処理部１１ｂは、管理サーバＭＳから管理データベースに登録された登録情報を取得しＲＡＭの所定の記憶領域に記憶する。
【００６７】
次いで、ノード処理部１１ｂは、管理サーバＭＳから取得された登録情報の中から、リクエストに対応するコンテンツＸを保存していないノードＮｎの登録情報を抽出する。例えば、コンテンツＸの検索処理による検索結果に示されるコンテンツ保持ノード以外の複数のノードＮｎの登録情報が抽出される。図５（Ｄ）は、検索結果に示されるコンテンツ保持ノード以外の複数のノードＮｎの登録情報の一例を示す図である。そして、ノード処理部１１ｂは、抽出した各ノードＮｎの登録情報に含まれるＩＰアドレスのうち、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを、Ｗｅｂページに記述するＩＰアドレスとして１つ決定する（ステップＳ６５）。ここで、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定する方法の例としては、以下の（ａ）〜（ｇ）の方法が挙げられる。
【００６８】
（ａ）地域情報を用いた決定
地域情報を用いた決定方法の場合、ノード処理部１１ｂは、ユーザ端末ＵＴが設置される地域を示す地域情報を取得する。ユーザ端末ＵＴの地域情報を、以下、「第１地域情報」という。また、ノード処理部１１ｂは、ノードＮｎが設置される地域を示す地域情報を取得する。ノードＮｎの地域情報を、以下、「第２地域情報」という。この場合、第２地域情報は、管理サーバＭＳから取得された登録情報の中から抽出された登録情報であって、コンテンツＸを保存していない各ノードＮｎの登録情報の中から取得される。この登録情報の中でコンテンツＸを保存していないノードＮｎのノードＩＤは、コンテンツＸの検索処理による検索結果中に示されていない。一方、第１地域情報は、例えば、ユーザ端末ＵＴに割り当てられたＩＰアドレスに基づき決定される。このＩＰアドレスは、ユーザ端末ＵＴから受信されたリクエスト中に含まれる。また、ユーザ端末ＵＴに割り当てられたＩＰアドレスから第１地域情報を決定できない場合がある。この場合、第１地域情報は、ユーザ端末ＵＴに近いルータに割り当てられているＩＰアドレスから決定されるように構成してもよい。ユーザ端末ＵＴに近いルータとは、例えば、ユーザ端末ＵＴからＷｅｂサーバＷＳ等にパケットを送信したときに最初に中継されるルータである。ユーザ端末ＵＴに近いルータのＩＰアドレスは、ユーザ端末ＵＴが公知のtracerouteを実行することで取得できる。また、ノード処理部１１ｂがユーザ端末ＵＴから経度緯度、住所、又は郵便番号の情報を取得できる場合がある。この場合、第１地域情報は、経度緯度、住所、又は郵便番号に基づき決定されてもよい。第１地域情報は、例えばユーザ端末ＵＴからノードＮｎへアクセスしたときのノードＮｎからの応答速度に基づいて決定されるように構成してもよい。この場合、応答速度が所定速度以上であるノードＮｎの第２地域情報がユーザ端末ＵＴの第１地域情報となる。
【００６９】
そして、ノード処理部１１ｂは、取得された第１地域情報と第２地域情報に基づいて、コンテンツＸを保存していない各ノードＮｎのＩＰアドレスの中から、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定する。具体的には、ノード処理部１１ｂは、ユーザ端末ＵＴが設置される地域と、コンテンツＸを保存していない各ノードＮｎが設置される地域とを比較する。そして、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。つまり、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎのＩＰアドレスが、その他のノードＮｎのＩＰアドレスよりも優先的に決定される。言い換えれば、ユーザ端末ＵＴが設置される地点からの距離が最も近い地点に設置されるノードＮｎのＩＰアドレスが、ユーザ端末ＵＴへ紹介する条件を満たすＩＰアドレスとして優先的に決定される。その結果、ユーザ端末ＵＴからの距離が近いノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介することができる。そのため、ユーザ端末ＵＴとノードＮｎとの間でデータの送受信に要する時間を短縮することができる。したがって、ユーザ端末ＵＴは、紹介されたノードＮｎから迅速にコンテンツＸを取得することが可能となる。なお、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎがない場合も想定される。この場合、ノード処理部１１ｂは、ユーザ端末ＵＴが設置される地域と最も近い地域に設置されるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定してもよい。
【００７０】
（ｂ）ＩＳＰ情報を用いた決定
ＩＳＰ情報を用いた決定方法の場合、ノード処理部１１ｂは、ユーザ端末ＵＴがネットワークＮＷに接続するために利用されるＩＳＰを示すＩＳＰ情報を取得する。ユーザ端末ＵＴのＩＳＰ情報を、以下、「第１ＩＳＰ情報」という。また、ノード処理部１１ｂは、ノードＮｎがネットワークＮＷに接続するために利用されるＩＳＰを示すＩＳＰ情報を取得する。ノードＮｎのＩＳＰ情報を、以下、「第２ＩＳＰ情報」という。この場合、第２ＩＳＰ情報は、管理サーバＭＳから取得された登録情報の中から抽出された登録情報であって、コンテンツＸを保存していない各ノードＮｎの登録情報の中から取得される。一方、第１ＩＳＰ情報は、例えば、第１地域情報と同様、ユーザ端末ＵＴに割り当てられたＩＰアドレスに基づき決定される。
【００７１】
そして、ノード処理部１１ｂは、取得された第１ＩＳＰ情報と第２ＩＳＰ情報に基づいて、コンテンツＸを保存していない各ノードＮｎのＩＰアドレスの中から、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定する。具体的には、ノード処理部１１ｂは、ユーザ端末ＵＴがネットワークＮＷに接続するために利用されるＩＳＰと、コンテンツＸを保存していない各ノードＮｎがネットワークＮＷに接続するために利用されるＩＳＰとを比較する。そして、ノード処理部１１ｂは、ユーザ端末ＵＴと同じＩＳＰを利用するノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。つまり、ユーザ端末ＵＴと同じＩＳＰを利用するノードＮｎのＩＰアドレスが、その他のノードＮｎのＩＰアドレスよりも優先的に決定される。その結果、ユーザ端末ＵＴと同じＩＳＰを利用するノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介することができる。そのため、ユーザ端末ＵＴとノードＮｎとの間のデータ通信において、また、異なるＩＳＰ間を跨ることによる利用の発生を抑えることができる。また、ユーザ端末ＵＴは、紹介されたノードＮｎから迅速にコンテンツＸを取得することが可能となる。なお、ユーザ端末ＵＴと同じＩＳＰを利用するノードＮｎがない場合も想定される。この場合、ノード処理部１１ｂは、ユーザ端末ＵＴが利用するＩＳＰのサービスエリアと重複又は近いサービスエリアのＩＳＰを利用するノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定してもよい。
【００７２】
（ｃ）地域情報及びＩＳＰ情報を用いた決定
地域情報及びＩＳＰ情報を用いた決定方法の場合、上記（ａ）及び（ｂ）の方法と同様に、ノード処理部１１ｂは、第１地域情報、第２地域情報、第１ＩＳＰ情報、及び第２ＩＳＰ情報を取得する。そして、ノード処理部１１ｂは、地域情報及びＩＳＰ情報を用いた処理を行う。図４（Ｂ）は、地域情報及びＩＳＰ情報を用いた処理の一例を示すフローチャートである。
【００７３】
図４（Ｂ）に示す処理において、ノード処理部１１ｂは、ユーザ端末ＵＴと同じＩＳＰを利用するノードＮｎを、コンテンツＸを保存していない各ノードＮｎの中から検索する（ステップＳ６５１）。そして、ノード処理部１１ｂは、ユーザ端末ＵＴと同じＩＳＰを利用するノードＮｎを発見できない場合には（ステップＳ６５１：発見無）、ステップＳ６５２に進む。一方、ノード処理部１１ｂは、ユーザ端末ＵＴと同じＩＳＰを利用するノードＮｎを発見できた場合には（ステップＳ６５１：発見有）、ステップＳ６５３に進む。
【００７４】
ステップＳ６５２では、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎを、コンテンツＸを保存していない各ノードＮｎの中から検索する。そして、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎを発見できない場合には（ステップＳ６５２：発見無）、ステップＳ６５４に進む。一方、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎを発見できた場合には（ステップＳ６５２：発見有）、ステップＳ６５５に進む。
【００７５】
ステップＳ６５４では、ノード処理部１１ｂは、ユーザ端末ＵＴが設置される地域と最も近い地域に設置されるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。
【００７６】
ステップＳ６５５では、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。
【００７７】
ステップＳ６５３では、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎを、上記ステップＳ６５１で発見されたノードＮｎの中から検索する。そして、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎを発見できない場合には（ステップＳ６５３：発見無）、ステップＳ６５６に進む。一方、ノード処理部１１ｂは、ユーザ端末ＵＴと同じ地域に設置されるノードＮｎを発見できた場合には（ステップＳ６５３：発見有）、ステップＳ６５７に進む。
【００７８】
ステップＳ６５６では、ノード処理部１１ｂは、ユーザ端末ＵＴと同じＩＳＰのノードＮｎで、且つユーザ端末ＵＴが設置される地域と最も近い地域に設置されるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。
【００７９】
ステップＳ６５７では、ノード処理部１１ｂは、ユーザ端末ＵＴと同じＩＳＰのノードＮｎで、且つユーザ端末ＵＴと同じ地域に設置されるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。これにより、ユーザ端末ＵＴとノードＮｎとの間でデータの送受信に要する時間を短縮し、且つ、異なるＩＳＰを跨ることによる料金の発生を抑えることができる。
【００８０】
（ｄ）動作情報を用いた決定
動作情報を用いた決定方法の場合、ノード処理部１１ｂは、管理サーバＭＳから取得された登録情報の中からコンテンツＸを保存していない各ノードＮｎの登録情報を抽出する。そして、ノード処理部１１ｂは、抽出した登録情報の中から動作情報を取得する。そして、ノード処理部１１ｂは、取得された動作情報に基づいて、拠点動作が実行中でないノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。ここで、拠点動作が実行中であるか否かは、例えば、動作情報に含まれる負荷情報に示される負荷率に基づき決定される。例えば、負荷率が所定値以下であるノードＮｎが、拠点動作を実行中でないノードＮｎとして決定される。なお、負荷率は、状況によりある程度の精度で丸めてもよい。例えば、負荷率が５０％未満は０％として扱うなどが挙げられる。また、拠点動作が実行中であるか否かは、例えば、動作情報に含まれる帯域情報に示される割り当て可能な帯域が所定値以上であるノードＮｎが、拠点動作を実行中でないノードＮｎとして決定される。なお、拠点動作が実行中であるか否かは、負荷情報及び帯域情報以外の情報により判定されるように構成してもよい。
以上のように、拠点動作が実行中でないノードＮｎのＩＰアドレスが、その他のノードＮｎのＩＰアドレスよりも優先的に決定される。その結果、拠点動作を現在行っていないノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介することができる。そのため、各拠点Ｐｍにおいて例えばカラオケデータ等のコンテンツをルータＲｍから拠点端末Ｔｍ−ｌへ提供するための拠点動作の実行が妨げられることを回避することができる。そして、ユーザ端末ＵＴは紹介されたノードＮｎからコンテンツＸを迅速に取得するこができる。
【００８１】
（ｅ）コンテンツ保持数情報を用いた決定
コンテンツ保持数情報を用いた決定方法の場合、ノード処理部１１ｂは、管理サーバＭＳから取得された登録情報の中からコンテンツＸを保存していない各ノードＮｎの登録情報を抽出する。そして、ノード処理部１１ｂは、抽出した各ノードＮｎの登録情報の中からコンテンツ保持数情報を取得する。そして、ノード処理部１１ｂは、取得されたコンテンツ保持数情報に示されるコンテンツの保存数が所定値以下であるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。つまり、コンテンツの保存数が所定値以下であるノードＮｎのＩＰアドレスが、その他のノードＮｎのＩＰアドレスよりも優先的に決定される。その結果、コンテンツの保存数が相対的に少ないノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介することができる。コンテンツの保存数が少ないノードＮｎは、他のユーザ端末ＵＴ等からコンテンツを要求される可能性が低くなる。そのため、ユーザ端末ＵＴは紹介されたノードＮｎからコンテンツを迅速に取得するこができる。
【００８２】
なお、ノード処理部１１ｂは、動作情報またはコンテンツ保持数情報と共に、地域情報とＩＳＰ情報の少なくとも何れか一方の情報を用いてユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定するように構成してもよい。この場合、ノード処理部１１ｂは、コンテンツＸを保存していないノードＮｎの中から、動作情報に基づいて拠点動作が実行中でないノードＮｎを特定する。或いは、ノード処理部１１ｂは、コンテンツＸを保存していないノードＮｎの中から、コンテンツ保持数情報に示されるコンテンツの保存数が所定値以下であるノードＮｎを特定する。そして、ノード処理部１１ｂは、特定したノードＮｎの中から、（ａ）〜（ｃ）の何れかの方法により、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定する。
【００８３】
また、上記（ａ）〜（ｃ）の何れかの方法により、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスが複数決定される場合がある。この場合、ノード処理部１１ｂは、上記（ａ）〜（ｃ）の何れかの方法により決定されたノードＮｎのＩＰアドレスの中から、動作情報に基づいて拠点動作が実行中でないノードＮｎのＩＰアドレスを決定するように構成してもよい。ここで、動作情報に基づいて拠点動作が実行中でないノードＮｎの例としては、負荷率が最も低いノードＮｎ、または割り当て可能な帯域が最も広いノードＮｎが挙げられる。或いは、上記（ａ）〜（ｃ）の何れかの方法により決定されたノードＮｎのＩＰアドレスの中から、コンテンツ保持数情報に示されるコンテンツの保存数が所定値以下であるノードＮｎのＩＰアドレスを決定するように構成してもよい。ここで、コンテンツの保存数が所定値以下であるノードＮｎの例としては、コンテンツの保存数が最も少ないノードＮｎが挙げられる。
【００８４】
また、ノード処理部１１ｂは、動作情報とコンテンツ保持数情報を用いてユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定するように構成してもよい。この場合、ノード処理部１１ｂは、コンテンツＸを保存していないノードＮｎの中から、動作情報に基づいて拠点動作が実行中でないノードＮｎを特定する。続いて、ノード処理部１１ｂは、特定したノードＮｎの中から、コンテンツ保持数情報に示されるコンテンツの保存数が所定値以下であるノードＮｎをさらに特定する。そして、ノード処理部１１ｂは、さらに特定したノードＮｎの中から、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定する。この決定においても、上記（ａ）〜（ｃ）の何れかの方法により、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定するように構成してもよい。
【００８５】
（ｆ）その他の情報を用いた決定
上記（ａ）〜（ｅ）の何れかの方法において用いられる情報の他にも、例えばコンテンツのファイルサイズ、ユーザ端末ＵＴのユーザのランク、ノードＮｎからアップロードしたデータ量、又はノードＮｎが利用している回線数等を用いるように構成しても良い。
【００８６】
例えば、ユーザ端末ＵＴからリクエストされたコンテンツのファイルサイズが所定サイズ以上と大きいサイズの場合がある。この場合、ノード処理部１１ｂは、コンテンツＸを保存していない各ノードＮｎの中でコンテンツ保存領域の保存容量が所定容量以上であるノードＮｎのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。この場合、各ノードＮｎのコンテンツ保存領域の保存容量を示す情報は、例えばノードＮｎがオーバーレイネットワークＯＮへ参加した時にノードＮｎから管理サーバＭＳに送信され管理データベースに登録される。
【００８７】
また、例えばユーザのランク毎にサービスレベルを変えたい場合がある。この場合、ノード処理部１１ｂは、コンテンツＸを保存していない各ノードＮｎの中で、安定したノードＮｎのＩＰアドレスを、ランクが高いユーザのユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。ここで、安定したノードＮｎとしては、常駐ノードであり、且つ、負荷情報に示される負荷率負荷率が所定値以下であるノードＮｎ又は割り当て可能な帯域が所定値以上であるノードＮｎ等が挙げられる。ユーザのランクは、例えば料金支払有無やその額、或いは商品の購入履歴等により決定される。例えばユーザが無料会員の場合はユーザのランクが低い。一方、ユーザが有料会員の場合はユーザのランクが高い。
【００８８】
また、ＩＳＰによっては、ノードＮｎからのコンテンツのアップロード制限がある場合がある。この場合、ノード処理部１１ｂは、コンテンツＸを保存していない各ノードＮｎの中で、実際にアップロードしたデータ量が、利用されるＩＳＰの予め設定されたアップロード制限量より小さいノードＮｎを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。ここで、実際にアップロードしたデータ量を示す情報は、例えばノードＮｎがオーバーレイネットワークＯＮへ参加した時、及び、その後所定時間間隔で、ノードＮｎから送信され管理データベースに登録される。
【００８９】
また、ノードＮｎが同時に利用できる回線数に上限がある場合がある。この場合、ノード処理部１１ｂは、コンテンツＸを保存していない各ノードＮｎの中で、同時に利用している回線数が所定数以下であるノードＮｎを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。ここで、ノードＮｎが利用している回線数を示す情報は、例えばノードＮｎがオーバーレイネットワークＯＮへ参加した時、及び、その後所定時間間隔で、ノードＮｎから送信され管理データベースに登録される。
【００９０】
なお、上記（ａ）〜（ｅ）の何れかの方法で、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎを１つに絞れない場合がある。この場合、ランダムまたはその他の情報を用いて１つのノードＮｎのＩＰアドレスが決定されるように構成してもよい。その他の情報の例としては、上述した、コンテンツのファイルサイズ、ユーザ端末ＵＴのユーザのランク、ノードＮｎからアップロードしたデータ量、ノードＮｎが利用している回線数等が挙げられる。
【００９１】
次に、ステップＳ６６では、ノード処理部１１ｂは、現在日時から適正キャッシュ保持時間遡った期間内に最終提供日付が含まれているコンテンツ保持ノードの数が適正キャッシュ数以上であるか否かを判定する。つまり、適正キャッシュ保持時間内にアクセスされた検索結果数が適正キャッシュ数以上であるか否かが判定される。そして、ノード処理部１１ｂは、適正キャッシュ数以上であると判定した場合には（ステップＳ６６：ＹＥＳ）、ステップＳ６７に進む。図５（Ｃ）に示す検索結果例では、適正キャッシュ数以上であるので、ステップＳ６７に進む。一方、ノード処理部１１ｂは、適正キャッシュ数以上でないと判定した場合には（ステップＳ６６：ＮＯ）、ステップＳ６８に進む。
【００９２】
ステップＳ６７では、ノード処理部１１ｂは、現在日時から適正キャッシュ保持時間遡った期間内に最終提供日付が含まれているコンテンツ保持ノードの中で、最終提供日付が最も古いコンテンツ保持ノードのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。図５（Ｃ）に示す検索結果例では、Ｎｏ．１２のノードＮ１６のＩＰアドレスが決定されることになる。その結果、複数のユーザ端末ＵＴからのコンテンツ保持ノードへのアクセスを分散させ、特定のコンテンツ保持ノードにユーザ端末ＵＴからのアクセスが集中することを回避することができる。
【００９３】
一方、ステップＳ６８では、ノード処理部１１ｂは、例えば、検索結果に示されるコンテンツ保持ノードのノード情報を、最終提供日付で降順にソートする。つまり、日付が新しい順に並べ替えられる。そして、ノード処理部１１ｂは、降順にソートされた上位から適正キャッシュ数番目のコンテンツ保持ノードのＩＰアドレスを、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスとして決定する。
【００９４】
なお、ステップＳ６７，ステップＳ６８において、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定する前に、上記（ａ）〜（ｆ）の何れかの方法を行うように構成してもよい。この場合、ノード処理部１１ｂは、管理サーバＭＳから登録情報を取得する。そして、ノード処理部１１ｂは、管理サーバＭＳから取得された登録情報から、コンテンツＸを保存している各ノードＮｎの登録情報を抽出する。例えば、コンテンツＸの検索処理による検索結果に示されるコンテンツ保持ノードの登録情報が抽出される。つまり、この場合、抽出される対象がステップＳ６５の場合とは異なる。そして、ノード処理部１１ｂは、上記抽出した各コンテンツ保持ノードの中から、上記（ａ）〜（ｆ）の何れかの方法を用いて複数のコンテンツ保持ノードを特定する。こうして特定された複数のコンテンツ保持ノードに対して、上記ステップＳ６７又はステップＳ６８の処理が行われる。その結果、ユーザ端末ＵＴへ紹介する条件を満たすコンテンツ保持ノードのＩＰアドレスが決定される。
【００９５】
そして、ノード処理部１１ｂは、上記ステップＳ６で決定されたノードＮｎのＩＰアドレスをＨＴＴＰサーバ部１１ａへ応答する（ステップＳ７）。具体的には、ノード処理部１１ｂは、ＨＴＴＰサーバ部１１ａがアクセス可能なＲＡＭの所定の記憶領域に、決定されたノードＮｎのＩＰアドレスを記憶する。
【００９６】
次に、ＨＴＴＰサーバ部１１ａは、ノード処理部１１ｂから応答されたＩＰアドレスを取得すると、上記ステップＳ３で抽出されたＵＲＬが未だあるか否かを判定する（ステップＳ８）。例えば、コンテンツＸが複数のファイルから構成される場合、コンテンツＸを構成する各ファイルのＵＲＬがＷｅｂページから抽出されている。そして、ＨＴＴＰサーバ部１１ａは、上記ステップＳ３で抽出されたＵＲＬが未だあると判定した場合には（ステップＳ８：ＹＥＳ）、ステップＳ４に戻り、上記と同様の処理を行う。一方、ＨＴＴＰサーバ部１１ａは、上記ステップＳ３で抽出されたＵＲＬがないと判定した場合には（ステップＳ８：ＮＯ）、ステップＳ９に進む。
【００９７】
ステップＳ９では、ＨＴＴＰサーバ部１１ａは、上記ステップＳ２で取得されたＷｅｂページに記述されたコンテンツＸのＵＲＬに含まれるドメイン名を、ノード処理部１１ｂから取得されたＩＰアドレスに置換することでＷｅｂページを生成する。図５（Ｅ）は、上記ステップＳ２で取得されたＷｅｂページを構成するＨＴＭＬの記述例を示す図である。図５（Ｅ）に示す例では、ステップＳ１１の処理により、コンテンツＸのＵＲＬ“http://imagesv.jp/image01.jpg”の中の、ドメイン名“imagesv.jp”が、ノード処理部１１ｂから取得されたＩＰアドレス“192.168.90.・・・”に置換されている。こうして、IPアドレスが記述されたＷｅｂページが生成される。ここで、“image01.jpg”は、コンテンツＸのファイル名を示す。なお、コンテンツＸが複数のファイルから構成される場合、各ファイルに対応するＵＲＬに含まれるドメイン名が、夫々に対応するＩＰアドレスに置換される。
【００９８】
次いで、ＷｅｂサーバＷＳのＨＴＴＰサーバ部１１ａは、上記ステップＳ９で生成されたＷｅｂページをレスポンスとしてユーザ端末ＵＴへ送信する（ステップＳ１０）。
【００９９】
次いで、ユーザ端末ＵＴのＷｅｂブラウザは、ＷｅｂサーバＷＳからのＷｅｂページを受信する。そして、ユーザ端末ＵＴのＷｅｂブラウザは、Ｗｅｂページに記述されたＩＰアドレスにしたがって、ノードＮｎのＨＴＴＰサーバ部３１ｂにＨＴＴＰプロトコルを利用してアクセスする。そして、ユーザ端末ＵＴのＷｅｂブラウザは、コンテンツＸのリクエストをノードＮｎのＨＴＴＰサーバ部３１ｂへ送信する（ステップＳ１１）。このリクエストには、ドメイン名がＩＰアドレスに置換されたＵＲＬが含まれる。このＵＲＬは、図５（Ｅ）の例では、“http:// 192.168.90.・・・/image01.jpg”である。
【０１００】
次いで、ノードＮｎのＨＴＴＰサーバ部３１ｂは、ユーザ端末ＵＴのＷｅｂブラウザからのリクエストを受信すると、ノードＮｎのノード処理部３１ｃに対して、このリクエストに対応するコンテンツＸを要求する（ステップＳ１２）。
【０１０１】
次いで、ノード処理部３１ｃは、ＨＴＴＰサーバ部３１ｂは、要求されたコンテンツＸが記憶部３１のコンテンツ保存領域に保存されているか否かを判定する（ステップＳ１３）。そして、ノード処理部３１ｃは、コンテンツＸがコンテンツ保存領域に保存されていないと判定した場合には（ステップＳ１３：ＮＯ）、ステップＳ１４に進む。一方、ノード処理部３１ｃは、コンテンツＸがコンテンツ保存領域に保存されていると判定した場合には（ステップＳ１３：ＹＥＳ）、ステップＳ１６に進む。
【０１０２】
ステップＳ１４では、ノード処理部３１ｃは、コンテンツＸの検索処理を行う。その結果、ノード処理部３１ｃは、コンテンツＸのルートノードからインデックス情報を取得する。このコンテンツＸの検索処理は、上記ステップＳ５と同様であるので説明を省略する。なお、コンテンツＸの検索処理で用いられるコンテンツＩＤは、例えばノード処理部３１ｃがＷｅｂサーバＷＳに問い合わせることにより取得される。または、コンテンツＩＤは、コンテンツＩＤ自体をＵＲＬのハッシュ値にしておくことにより、検索処理の前にＵＲＬのハッシュを計算することにより取得される。或いは、ＷｅｂブラウザからノードＮｎのＨＴＴＰサーバ部３１ｂへ送信されるリクエスト中に含まれてもよい。
【０１０３】
次いで、ノード処理部３１ｃは、上記ステップＳ１４で取得したインデックス情報に含まれるコンテンツ保持ノードのＩＰアドレスにしたがって、コンテンツ保持ノードにアクセスする。そして、ノード処理部３１ｃは、コンテンツ保持ノードからコンテンツＸを取得し（ステップＳ１５）、ステップＳ１６に進む。なお、コンテンツ保持ノードから取得されたコンテンツＸは、記憶部３１に設けられたコンテンツ保存領域に記憶される。こうしてコンテンツＸを保存したノード処理部３１ｃは、パブリッシュ処理を行う。このパブリッシュ処理は、コンテンツを保存していることを他のノードＮｎに公開するための処理である。このパブリッシュ処理において、ノード処理部３１ｃは、パブリッシュメッセージを生成する。パブリッシュメッセージには、コンテンツＸのコンテンツＩＤ、及びコンテンツを保存したノードＮｎのノード情報が含まれる。そして、ノード処理部３１ｃは、生成したパブリッシュメッセージを、ＤＨＴルーティングにより、コンテンツのルートノード宛に送信する。パブリッシュメッセージを受信したルートノードは、コンテンツＸのコンテンツＩＤとノードＮｎのＩＰアドレス等との組を、インデックス情報として記憶する。これにより、オーバーレイネットワークＯＮにおいて、コンテンツＸを保存するコンテンツ保持ノードが１つ増えることになる。
【０１０４】
ステップＳ１６では、ノード処理部３１ｃは、要求されたコンテンツＸをＨＴＴＰサーバ部３１ｂに転送する。具体的には、ノード処理部３１ｃは、ＨＴＴＰサーバ部３１ｂがアクセス可能なＲＡＭの所定の記憶領域に、コンテンツＸを記憶する。
【０１０５】
次いで、ＨＴＴＰサーバ部３１ｂは、コンテンツＸをレスポンスとしてユーザ端末ＵＴへ送信する（ステップＳ１７）。
【０１０６】
次いで、ユーザ端末ＵＴのＷｅｂブラウザは、ノードＮｎのＨＴＴＰサーバ部３１ｂノード処理部３１ｃからのコンテンツＸを受信する。そして、ユーザ端末ＵＴのＷｅｂブラウザは、受信されたコンテンツＸを表示又は音声出力する処理を行う（ステップＳ１８）。
【０１０７】
以上説明したように、上記実施形態によれば、ＷｅｂサーバＷＳは、ユーザ端末ＵＴからリクエストされたコンテンツの検索結果に基づいて、ユーザ端末ＵＴへ紹介する条件を満たすノードＮｎのＩＰアドレスを決定する。そして、ＷｅｂサーバＷＳは、決定したＩＰアドレスが記述されるＷｅｂページをユーザ端末ＵＴへ送信する。そのため、ユーザ端末ＵＴは、Ｐ２Ｐプログラムをインストールすることなく、ＷｅｂサーバＷＳから送信されたＷｅｂページに記述されたＩＰアドレスを用いて、オーバーレイネットワークＯＮで配信されるコンテンツを効率良く取得することができる。
【０１０８】
また、ユーザ端末ＵＴからのリクエストがある毎にコンテンツの検索処理が行われ、その検索結果に基づいて、Ｗｅｂページに記述されるＩＰアドレスが決定される。そのため、特定のノードＮｎへのアクセス集中を低減することができる。
【０１０９】
また、あるコンテンツがオーバーレイネットワークＯＮにおいて不足しているような場合がある。この場合、リクエストされたコンテンツを保存していないノードＮｎのＩＰアドレスが記述されるＷｅｂページをユーザ端末ＵＴへ送信するように構成した。そのため、リクエストされたコンテンツを保存していないノードＮｎは、ユーザ端末ＵＴへコンテンツを提供するために、オーバーレイネットワークＯＮを介してコンテンツ保持ノードからこのコンテンツを取得する。その結果、このコンテンツを保存するコンテンツ保持ノードの数を増やすことができる。
【０１１０】
ところで、従来のクライアント−サーバ方式において、Ｗｅｂサーバからユーザ端末へ送信されるＷｅｂページは、ベースとなるページに、画像や音、映像等のコンテンツが埋め込まれている。そして、Ｗｅｂサーバは、ベースなるページに埋め込まれた画像や音、映像等のコンテンツもユーザ端末へ送信する。ベースとなるページは、ＨＴＭＬ等からなるテキストのページであるため、映像等のコンテンツよりもデータ量が大きい。本実施形態においては、ＷｅｂサーバＷＳはベースなるページをユーザ端末ＵＴに送信する。しかし、Ｗｅｂページ上で提供されるコンテンツは、ＷｅｂサーバＷＳでなくノードＮｎがユーザ端末ＵＴへ提供する。そのため、本実施形態では、ＷｅｂサーバＷＳの負荷を低減することができる。
【０１１１】
なお、上記実施形態においては、ＷｅｂサーバＷＳが、ＨＴＴＰサーバ部１１ａとノード処理部１１ｂとを備えるように構成した。別の例として、ＷｅｂサーバＷＳはノード処理部１１ｂを備えずに、ノードＮｎ等の装置にノード処理部１１ｂを備えさせるように構成してもよい。この場合、ＷｅｂサーバＷＳはオーバーレイネットワークＯＮには参加しない。なお、この場合、ＷｅｂサーバＷＳのＨＴＴＰサーバ部１１ａと、他の装置に備えられたノード処理部１１ｂとの間の情報のやり取りは図３に示す処理と同様である。
【０１１２】
また、上記実施形態において、本発明における情報処理装置としてルータＲｍを例にとって説明したが、情報処理装置はネットワークＮＷに接続されているサーバ等であってもよい。また、情報処理装置は、基本的にネットワークＮＷに定常的に接続されているゲートウェイ等の機器であっても良い。
【０１１３】
また、上記実施形態においては、オーバーレイネットワークＯＮに、ＤＨＴを利用したピアツーピアネットワークを適用したが、これに限られるものではない。例えば、他のオーバーレイネットワークを用いたシステムが適用されてもよい。ＤＨＴを利用しないピアツーピアシステムとしては、例えば、ハイブリッド型のピアツーピアシステムがある。
【符号の説明】
【０１１４】
１１，２１，３１  制御部
１２，２２，３３  記憶部
１３，２３，３４ａ，３４ｂ  通信部
３２  バッファメモリ
ＷＳ  Ｗｅｂサーバ
ＭＳ  管理サーバ
Ｒｍ  ルータ
ＵＴ  ユーザ端末
Ｎｎ  ノード
ＮＷ  ネットワーク
ＯＮ  オーバーレイネットワーク
Ｓ  コンテンツ配信システム
【図１】
2012078901.tif 000003
【図２】
2012078901.tif 000004
【図３】
2012078901.tif 000005
【図４】
2012078901.tif 000006
【図５】
2012078901.tif 000007