(57)【特許請求の範囲】
【請求項１】
ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムにおいて、
前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、
前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツとがあり、
前記第２の情報処理装置は、  
前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得する取得手段と、
前記取得手段により取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定する判定手段と、
前記判定手段により前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行する制御手段と、
を備えることを特徴とする配信システム。
【請求項２】
前記配信システムは、前記第１のコンテンツを前記オーバーレイネットワークへ投入する投入サーバを備え、
前記投入サーバは、前記第１のコンテンツを前記第１の情報処理装置へ送信する送信手段を備え、
前記第１の情報処理装置は、前記投入サーバから送信された前記第１のコンテンツを受信する受信手段と、
前記受信された前記第１のコンテンツを前記オーバーレイネットワークで取得可能なコンテンツとして保存する保存手段と、
を備えることを特徴とする請求項１に記載の配信システム。
【請求項３】
前記第２の情報処理装置は、前記オーバーレイネットワークで前記第２のコンテンツの所在を検索する検索手段を更に備え、
前記取得手段は、前記検索手段により前記第２のコンテンツを発見できなかった場合に、前記配信装置から前記第２のコンテンツを取得することを特徴とする請求項１又は２に記載の配信システム。
【請求項４】
前記第２の情報処理装置は、前記第２のコンテンツの人気度を示す情報を取得する第２取得手段を更に備え、
前記判定手段は、前記第２のコンテンツの人気度が、所定の人気度以上である場合、前記投入条件を満たすと判定することを特徴とする請求項１乃至３の何れか一項に記載の配信システム。
【請求項５】
前記配信装置は、
前記オーバーレイネットワークに参加する情報処理装置または前記オーバーレイネットワークに参加しない他の情報処理装置から送信された前記第２のコンテンツを受信する第２受信手段と、
前記受信された第２のコンテンツが、前記配信装置から配信するための検閲基準を満たす場合に、前記第２のコンテンツを前記配信装置から配信可能なコンテンツとして保存する第２保存手段と、
を備えることを特徴とする請求項１乃至４の何れか一項に記載の配信システム。
【請求項６】
前記第１のコンテンツと前記第２のコンテンツを保存する情報処理装置は、前記第１のコンテンツより前記第２コンテンツを優先して削除する削除手段を備えることを特徴とする請求項１乃至５の何れか一項に記載の配信システム。
【請求項７】
前記配信システムは、前記コンテンツの投入を管理する管理サーバを備え、
前記第２の情報処理装置は、
Ｗｅｂサーバから送信されたＷｅｂページから抽出された所在情報であって、前記配信装置に保存されている前記第２のコンテンツの所在を示す所在情報を含むリクエストをＷｅｂブラウザから受信する受信手段を更に備え、
前記制御手段は、前記受信されたリクエストに含まれる所在情報を前記管理サーバに送信し、
前記管理サーバは、
前記情報処理装置から送信された所在情報を受信した場合に、前記所在情報に基づいて前記第２のコンテンツを前記配信装置から取得する第３取得手段と、
前記取得された前記第２のコンテンツを、前記オーバーレイネットワークへ投入する投入手段と、
を備えることを特徴とする請求項１乃至６の何れか一項に記載の配信システム。
【請求項８】
前記第２コンテンツは、前記オーバーレイネットワークに参加する情報処理装置または前記オーバーレイネットワークに参加しない他の情報処理装置から投入、または、投稿されるコンテンツであることを特徴とする請求項１乃至７の何れか一項に記載の配信システム。
【請求項９】
ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムに含まれる前記情報処理装置であって、
前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、
前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツと、があり、
前記第２の情報処理装置は、  
前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得する取得手段と、
前記取得手段により取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定する判定手段と、
前記判定手段により前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行する制御手段と、
を備えることを特徴とする情報処理装置。
【請求項１０】
ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムにおいて、
前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、
前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツと、があり、
前記第２の情報処理装置に含まれるコンピュータに、  
前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得するステップと、
前記取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定するステップと、
前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行するステップと、
を実行させるための情報処理プログラム。
【請求項１１】
ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムにおけるコンテンツ投入方法であって、
前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、
前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツと、があり、
前記コンテンツ投入方法は、
前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得するステップと、
前記取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定するステップと、
前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行するステップと、
を含むことを特徴とするコンテンツ投入方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））型の配信システムの技術分野に関する。
【背景技術】
【０００２】
近年、ピアツーピア型の配信システムが知られている。ピアツーピア型の配信システムでは、複数のノード装置により構成されるオーバーレイネットワークに参加している複数のノード装置に複数のコンテンツデータが分散保存されている。そして、オーバーレイネットワークでノード装置は他のノード装置からコンテンツデータを取得することが可能になっている。コンテンツデータを、以下、「コンテンツ」という。また、ノード装置を、以下、「ノード」という。このようなピアツーピア型の配信システムでは、クライアント・サーバ型の配信システムのようなサーバへの負荷集中を軽減することができる。また、オーバーレイネットワーク内に分散保存されたコンテンツの所在は、例えば特許文献１に開示されるような分散ハッシュテーブルを利用して効率良く検索可能になっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１９７４００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、例えばクライアント・サーバ型の配信システム等で配信されるコンテンツが、ピアツーピア型の配信システムにおけるオーバーレイネットワークに新たに投入される場合がある。ここで、「コンテンツの投入」とは、オーバーレイネットワークで取得可能なコンテンツとして新たなコンテンツをノードに保存させることをいう。また、投入対象となるコンテンツは、例えば、このコンテンツの提供者又は閲覧者等から要求により決定される。しかしながら、投入対象となる全てのコンテンツがオーバーレイネットワークに投入されると、これらのコンテンツを保存するノードのストレージに収まりきらなくなってしまう。そのため、配信システムで定常的に利用される例えばカラオケデータのようなコンテンツの保存や配信に支障をきたしてしまう可能性がある。
【０００５】
また、例えば、オーバーレイネットワークへのノードの参加又は脱退の頻度が高いピアツーピア型の配信システムの場合、オーバーレイネットワークでコンテンツを保存するノードの数が少なくなることがある。この場合、全ノードのストレージ容量を合計した総ストレージ容量が減少してしまう。そのため、全てのコンテンツを分散保存して効率的にピアツーピア型の配信システムを運用することが難しい場合があった。
【０００６】
そこで、本発明は、以上の点等に鑑みてなされたものであり、配信装置から配信されるコンテンツを、オーバーレイネットワークで分散保存して効率的に運用することが可能な配信システム、情報処理装置、情報処理プログラム、及びコンテンツ投入方法を提供すること等を課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムにおいて、前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツと、があり、前記第２の情報処理装置は、前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得する取得手段と、前記取得手段により取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定する判定手段と、前記判定手段により前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行する制御手段と、を備えることを特徴とする。
【０００８】
請求項２に記載の発明は、請求項１に記載の配信システムにおいて、前記配信システムは、前記第１のコンテンツを前記オーバーレイネットワークへ投入する投入サーバを備え、前記投入サーバは、前記第１のコンテンツを前記第１の情報処理装置へ送信する送信手段を備え、前記第１の情報処理装置は、前記投入サーバから送信された前記第１のコンテンツを受信する受信手段と、前記受信された前記第１のコンテンツを前記オーバーレイネットワークで取得可能なコンテンツとして保存する保存手段と、を備えることを特徴とする。
【０００９】
請求項３に記載の発明は、請求項１又は２に記載の配信システムにおいて、前記第２の情報処理装置は、前記オーバーレイネットワークで情報処理装置に保存される前記第２のコンテンツの所在を検索する検索手段を更に備え、前記取得手段は、前記検索手段により前記第２のコンテンツを発見できなかった場合に、前記配信装置から前記第２のコンテンツを取得することを特徴とする。
【００１０】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載の配信システムにおいて、前記第２の情報処理装置は、前記第２のコンテンツの人気度を示す情報を取得する第２取得手段を更に備え、前記判定手段は、前記第２のコンテンツの人気度が、所定の人気度以上である場合、前記投入条件を満たすと判定することを特徴とする。
【００１１】
請求項５に記載の発明は、請求項１乃至４の何れか一項に記載の配信システムにおいて、前記配信装置は、前記オーバーレイネットワークに参加する情報処理装置または前記オーバーレイネットワークに参加しない他の情報処理装置から送信された前記第２のコンテンツを受信する第２受信手段と、前記受信された第２のコンテンツが、前記配信装置から配信するための検閲基準を満たす場合に、前記第２のコンテンツを前記配信装置から配信可能なコンテンツとして保存する第２保存手段と、を備えることを特徴とする。
【００１２】
請求項６に記載の発明は、請求項１乃至５の何れか一項に記載の配信システムにおいて、前記第１のコンテンツと前記第２のコンテンツを保存する情報処理装置は、前記第１のコンテンツより前記第２コンテンツを優先して削除する削除手段を備えることを特徴とする。
【００１３】
請求項７に記載の発明は、請求項１乃至６の何れか一項に記載の配信システムにおいて、前記配信システムは、前記コンテンツの投入を管理する管理サーバを備え、前記第２の情報処理装置は、Ｗｅｂサーバから送信されたＷｅｂページから抽出された所在情報であって、前記配信装置に保存されている前記第２のコンテンツの所在を示す所在情報を含むリクエストをＷｅｂブラウザから受信する受信手段を更に備え、前記制御手段は、前記受信されたリクエストに含まれる所在情報を前記管理サーバに送信し、前記管理サーバは、前記情報処理装置から送信された所在情報を受信した場合に、前記所在情報に基づいて前記第２のコンテンツを前記配信装置から取得する第３取得手段と、前記取得された前記第２のコンテンツを、前記オーバーレイネットワークへ投入する投入手段と、を備えることを特徴とする。
【００１４】
請求項８に記載の発明は、請求項１乃至７の何れか一項に記載の配信システムにおいて、前記第２コンテンツは、前記オーバーレイネットワークに参加する情報処理装置または前記オーバーレイネットワークに参加しない他の情報処理装置から投入、または、投稿されるコンテンツであることを特徴とする。
【００１５】
請求項９に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムに含まれる前記情報処理装置であって、前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツと、があり、前記第２の情報処理装置は、前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得する取得手段と、前記取得手段により取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定する判定手段と、前記判定手段により前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行する制御手段と、を備えることを特徴とする。
【００１６】
請求項１０に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムにおいて、前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツと、があり、前記第２の情報処理装置に含まれるコンピュータに、前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得するステップと、前記取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定するステップと、前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行するステップと、を実行させるための情報処理プログラムである。
【００１７】
請求項１１に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置により構成されるオーバーレイネットワークで情報処理装置が他の情報処理装置からコンテンツを取得するように構成された配信システムにおけるコンテンツ投入方法であって、前記情報処理装置は、前記オーバーレイネットワークに定常的に参加する第１の情報処理装置と、前記第１情報処理装置とは異なる第２の情報処理装置とを含み、前記コンテンツには、前記配信システムにより定常的に配信される第１のコンテンツと、前記第1コンテンツとは異なる第２のコンテンツと、があり、前記コンテンツ投入方法は、前記第２のコンテンツを保存している配信装置から、前記第２のコンテンツを取得するステップと、前記取得された第２のコンテンツが、前記オーバーレイネットワークに投入する投入条件を満たすか否かを判定するステップと、前記投入条件を満たすと判定された場合には、前記第２のコンテンツを、前記オーバーレイネットワークで取得可能なコンテンツとして前記オーバーレイネットワークへ投入するための制御を実行するステップと、を含むことを特徴とする。
【発明の効果】
【００１８】
請求項１、８乃至１１に記載の発明によれば、配信装置から配信される第２のコンテンツをオーバーレイネットワークに投入する場合、この第２のコンテンツが投入条件を満たす場合に限りオーバーレイネットワークへ投入される。従って、第１のコンテンツが定常的に配信されるオーバーレイネットワークで、第２のコンテンツを分散保存して効率的に配信システムを運用することができる。
【００１９】
請求項２に記載の発明によれば、第２のコンテンツとは別に第１のコンテンツをオーバーレイネットワークへ効率良く投入することができる。
【００２０】
請求項３に記載の発明によれば、オーバーレイネットワークで情報処理装置に保存されていない第２のコンテンツをオーバーレイネットワークへ効率良く投入することができる。
【００２１】
請求項４に記載の発明によれば、配信装置から配信可能な人気度の高い第２のコンテンツをオーバーレイネットワークで配信させるので、配信装置の処理負荷を低減することができる。
【００２２】
請求項５に記載の発明によれば、オーバーレイネットワークに不適切な第２のコンテンツが投入されることを防止することもできる。
【００２３】
請求項６に記載の発明によれば、第２のコンテンツの存在により、オーバーレイネットワークで第１のコンテンツの利用が妨げられることを回避することができる。
【００２４】
請求項７に記載の発明によれば、管理サーバが第２のコンテンツの投入を行うことで第２の情報処理装置の処理負荷を低減することができる。
【図面の簡単な説明】
【００２５】
【図１】本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。
【図２】（Ａ）は、ＷｅｂサーバＷＳの概要構成例を示すブロック図である。（Ｂ）は、管理サーバＭＳの概要構成例を示すブロック図である。（Ｃ）は、ルータＲｍの概要構成例を示す図である。（Ｄ）は、ユーザ端末ＵＴの概要構成例を示すブロック図である。
【図３】サブコンテンツが投入される場合のコンテンツ配信システムＳにおける各装置の処理等を示すシーケンス図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ配信システムに本発明を適用した場合の実施形態である。
【００２７】
［１．コンテンツ配信システムの構成及び動作概要］
始めに、図１を参照して、本実施形態に係るコンテンツ配信システムの構成及び動作概要について説明する。図１は、本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。図１に示すように、本実施形態に係るコンテンツ配信システムＳは、ＷｅｂサーバＷＳ、管理サーバＭＳ、投入サーバＤＳ、ユーザ端末ＵＴ、及びルータＲｍ（ｍ＝１，２，３・・・ｊ）等により構成されている。ＷｅｂサーバＷＳ、管理サーバＭＳ、投入サーバＤＳ、ユーザ端末ＵＴ、及びルータＲｍはネットワークＮＷに接続されている。ネットワークＮＷは、インターネット等からなる。ＷｅｂサーバＷＳは、投稿者により投稿された動画ファイルをネットワークＮＷ上で公開する動画配信サイトを構成するためのサーバである。また、ＷｅｂサーバＷＳは、本発明における配信装置の一例である。また、管理サーバＭＳは、動画配信サイトに登録されている動画ファイルへのアクセス状況やＷｅｂサーバＷＳの負荷状況を監視するためのサーバである。また、投入サーバＤＳは、カラオケデータを、後述するオーバーレイネットワークＯＮに投入するサーバである。ユーザ端末ＵＴは、例えば、ユーザにより使用されるパーソナルコンピュータ又は携帯機器である。ユーザ端末ＵＴは、例えば、インターネットサービスプロバイタのサーバ（図示せず）により割り当てられたＩＰアドレスを用いてネットワークＮＷに接続可能になっている。なお、図１の例では、一つのユーザ端末ＵＴを示しているが、実際には複数のユーザ毎に存在する。
【００２８】
また、図１に示すように、コンテンツ配信システムＳには、複数の拠点Ｐｍ毎に拠点ネットワークＮＬｍが構築されている。この拠点の例としては、例えばカラオケ店舗が挙げられる。拠点ネットワークＮＬｍは、例えば、ＬＡＮ（Local Area Network）等のプライベートネットワークである。また、各拠点ネットワークＮＬｍには、ルータＲｍと複数の拠点端末Ｔｍ−ｌ（ｌ＝１，２，３）とが接続されている。ルータＲｍは、ネットワークＮＷと拠点ネットワークＮＬｍとの間でＩＰ（Internet Protocol）パケットを中継する中継機器である。拠点端末Ｔｍ−ｌは、例えばカラオケ店舗に設置されており、カラオケデータを再生することができる。
【００２９】
なお、各拠点Ｐｍにおける視聴端末Ｔｍ−ｌは、同じ拠点ネットワークＮＬｍに接続されているルータＲｍだけと通信を行うことに限定されるものではない。例えば、拠点Ｐ１における視聴端末Ｔ１−１は、同じ拠点ネットワークＮＬ１に接続されているルータＲ１だけでなく、他の拠点Ｐ２等におけるルータＲ２等やＷｅｂサーバＷＳとも通信を行うことができる。
【００３０】
また、図１に示すように、コンテンツ配信システムＳには、ネットワークＮＷを介して互いに通信可能な複数のノードＮｎ（ｎ＝１，２，３・・・ｋ）の参加によりオーバーレイネットワークＯＮが構成されている。オーバーレイネットワークＯＮは、仮想的なリンクを構成する論理的なネットワークである。オーバーレイネットワークＯＮは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。なお、分散ハッシュテーブルを、以下、「ＤＨＴ（Distributed Hash Table）」という。ここで、オーバーレイネットワークＯＮに参加するとは、ＤＨＴを用いたルーティングテーブルに基づいてオーバーレイネットワークＯＮを介して他のノードＮｎとの間で各種メッセージを送受信できる状態に稼動することをいう。なお、ＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００３１】
そして、本実施形態においては、ルータＲｍとユーザ端末ＵＴがノードＮｎとしてオーバーレイネットワークＯＮに参加可能になっている。ルータＲｍは、オーバーレイネットワークＯＮに定常的に参加するノードＮｎである。オーバーレイネットワークＯＮに定常的に参加するノードＮｎを、以下、「常駐ノード」という。常駐ノードは、本発明における第１の情報処理装置の一例である。ここで、「定常的に参加」とは、例えば、ノードＮｎが故障時又はメンテナンス時以外の時には、オーバーレイネットワークＯＮから脱退せず参加していることを意味する。本実施形態では、ルータＲｍに、ノードＮｎとして制御処理を実行させるプログラムがインストールされる。各拠点Ｐｍ以外にも、各家庭で常時ネットワークに接続される機器に、ノードＮｎとして制御処理を実行させるプログラムがインストールされても良い。一方、ユーザ端末ＵＴは、オーバーレイネットワークＯＮに必ずしも定常的に参加するとは限らないノードＮｎである。オーバーレイネットワークＯＮに必ずしも定常的に参加するとは限らないノードＮｎを、以下、「一般ノード」という。一般ノードは、本発明における「第１情報処理装置とは異なる第２の情報処理装置」の一例である。ここで、ユーザ端末ＵＴは、例えば、ユーザがユーザ端末ＵＴを使用する時等の所定時間だけオーバーレイネットワークＯＮに参加する。
【００３２】
また、オーバーレイネットワークＯＮに参加している各ノードＮｎにはノードＩＤが付与されている。このノードＩＤは、ノードＮｎを、オーバーレイネットワークＯＮに参加しているノードＮｎの中から識別する固有の識別情報である。また、オーバーレイネットワークＯＮに参加している複数のノードＮｎには、内容の異なる様々なコンテンツが分散保存されている。コンテンツには、コンテンツ配信システムＳにより定常的に配信される第１のコンテンツと、第１コンテンツとは異なる第２のコンテンツと、がある。第２コンテンツは、オーバーレイネットワークＯＮに参加するノードＮｎまたはオーバーレイネットワークＯＮに参加しない他の情報処理装置から投入、または、投稿されるコンテンツである。以下の説明において、「第１のコンテンツ」を、メインコンテンツという。また、「第２のコンテンツ」を、サブコンテンツという。メインコンテンツの例としては、カラオケデータが挙げられる。カラオケデータは、各拠点Ｐｍの拠点端末Ｔｍ−ｌで利用される。サブコンテンツの例としては、動画配信サイトに登録された動画ファイルが挙げられる。この動画ファイルは、主として、ＷｅｂサーバＷＳから配信される。本実施形態においては、ＷｅｂサーバＷＳはオーバーレイネットワークＯＮに属していない。なお、属しているとは、ＷｅｂサーバＷＳがオーバーレイネットワークＯＮに参加していることを示す。しかし、例えば人気度の高い動画ファイルは、オーバーレイネットワークＯＮを利用して常駐ノードからも配信されるようになっている。これは、ＷｅｂサーバＷＳの処理負荷を低減するためである。この場合、常駐ノードは、エッジサーバとして機能する。なお、サブコンテンツの別の例としては、例えばユーザ端末ＵＴ等によりアップロードされた所定のデータファイルが挙げられる。
【００３３】
また、オーバーレイネットワークＯＮで各ノードＮｎに保存されている各コンテンツには、コンテンツＩＤが付与されている。コンテンツＩＤは、コンテンツを、オーバーレイネットワークＯＮでノードＮｎに保存されるコンテンツの中から識別する固有の識別情報である。なお、ノードＩＤ及びコンテンツＩＤは、例えば、オーバーレイネットワークＯＮで共通のハッシュ関数により生成される。
【００３４】
ここで、コンテンツを保存しているノードＮｎを、以下、「コンテンツ保持ノード」という。また、コンテンツの所在を示す情報は、インデックス情報として、コンテンツの所在を管理しているノードＮｎに記憶される。コンテンツの所在を管理しているノードＮｎを、以下、「ルートノード」という。インデックス情報には、コンテンツを保存しているコンテンツ保持ノードのノード情報と、コンテンツのコンテンツＩＤとの組が含まれる。ノード情報には、例えば、コンテンツ保持ノードのＩＰアドレス、ポート番号、及びノードＩＤが含まれる。ルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤが割り当てられたノードＮｎであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。
【００３５】
そして、あるノードＮｎが、オーバーレイネットワークＯＮを介してコンテンツ保持ノードから所定のコンテンツを取得する場合がある。この場合の例としては、拠点端末Ｔ１−１から所定のメインコンテンツの要求を受けたノードＮ１が、このメインコンテンツを保存していなかった場合が挙げられる。なお、図１の例では、ノードＮ１はルータＲ１である。この場合、ノードＮ１は、先ず、オーバーレイネットワークＯＮでコンテンツ保持ノードに保存される所定のメインコンテンツの所在を検索する検索処理を行う。ここで、所定のメインコンテンツとは、例えば、拠点端末Ｔ１−１のユーザにより取得対象として選択されたカラオケデータである。この所定のメインコンテンツを、以下、「取得対象のメインコンテンツ」という。また、検索処理を行うノードＮ１を、以下、「ユーザノード」という。検索処理は、取得対象のメインコンテンツのコンテンツＩＤに基づいて行われる。具体的には、ユーザノードは、検索処理において、コンテンツ所在問合せメッセージを生成する。コンテンツ所在問合せメッセージは、取得対象のメインコンテンツの所在をルートノードに問い合わせるためのメッセージである。また、コンテンツ所在問合せメッセージには、このメッセージを送信するユーザノードのＩＰアドレス及びポート番号、並びに取得対象のメインコンテンツのコンテンツＩＤが含まれる。そして、ユーザノードは、生成したコンテンツ所在問合せメッセージを、ＤＨＴルーティングによりルートノード宛に送信する。なお、ＤＨＴルーティングは、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。コンテンツ所在問合せメッセージを受信したルートノードは、コンテンツ所在問合せメッセージに含まれるコンテンツＩＤに対応するインデックス情報を取得する。そして、ルートノードは、取得したインデックス情報を、ユーザノードへ返信する。このように返信されたインデックス情報には、取得対象のメインコンテンツを保存している１以上のコンテンツ保持ノードのＩＰアドレス等が含まれている。こうして、ユーザノードは、ルートノードからのインデックス情報を受信する。このインデックス情報により、ユーザノードは、取得対象のメインコンテンツを発見することができる。そして、ユーザノードは、受信したインデックス情報に含まれるコンテンツ保持ノードのＩＰアドレス等に基づいてコンテンツ保持ノードにアクセスする。そして、ユーザノードは、コンテンツ保持ノードに取得対象のメインコンテンツを要求しこのメインコンテンツをコンテンツ保持ノードから取得する。そして、ユーザノードは、取得したメインコンテンツを拠点端末Ｔ１−１へ送信する。
【００３６】
また、ユーザノードが所定のコンテンツを取得する場合の別の例としては、ユーザ端末ＵＴから所定のサブコンテンツの要求を受けたノードＮｎが、このサブコンテンツを保存していなかった場合が挙げられる。この場合、ノードＮｎは、先ず、オーバーレイネットワークＯＮでコンテンツ保持ノードに保存される所定のサブコンテンツの所在を検索する検索処理を行う。ここで、所定のサブコンテンツとは、例えば、ユーザ端末ＵＴのユーザにより取得対象として選択された動画ファイルである。この所定のサブコンテンツを、以下、「取得対象のサブコンテンツ」という。この場合も、ユーザノードは、上述したメインコンテンツの場合と同様、オーバーレイネットワークＯＮから取得対象のサブコンテンツの所在を検索する検索処理を行う。そして、ユーザノードは、ルートノードからインデックス情報を取得することで発見されたサブコンテンツをコンテンツ保持ノードから取得する。ユーザノードは、コンテンツ保持ノードから取得したサブコンテンツをユーザ端末ＵＴへ送信する。
【００３７】
ところで、ユーザノードは、検索処理により、オーバーレイネットワークＯＮから取得対象のサブコンテンツを発見することができない場合がある。この場合の例としては、取得対象のサブコンテンツがオーバーレイネットワークＯＮに投入されていない場合が挙げられる。この場合、上記コンテンツ所在問合せメッセージを受信したルートノードには、取得対象のサブコンテンツのコンテンツ保持ノードのノード情報が記憶されていない。そのため、ルートノードは、コンテンツ無メッセージをユーザノードへ返信することになる。このコンテンツ無メッセージは、取得対象のサブコンテンツを保存しているコンテンツ保持ノードが無いことを示すメッセージである。このコンテンツ無メッセージは、ユーザノードからユーザ端末ＵＴへ送信される。ユーザ端末ＵＴは、取得対象のサブコンテンツをオーバーレイネットワークＯＮから発見できなかった場合、このサブコンテンツを保存しているＷｅｂサーバＷＳから取得する。このようにＷｅｂサーバＷＳから取得されたサブコンテンツが、オーバーレイネットワークＯＮに投入する投入条件を満たす場合、このサブコンテンツはオーバーレイネットワークＯＮへ投入される。これにより、ＷｅｂサーバＷＳから取得されたサブコンテンツは、オーバーレイネットワークＯＮで取得可能なコンテンツとなる。なお、上記投入条件については後述する。
【００３８】
［２．ＷｅｂサーバＷＳの構成及び機能］
次に、図２（Ａ）を参照して、ＷｅｂサーバＷＳの構成及び機能について説明する。図２（Ａ）は、ＷｅｂサーバＷＳの概要構成例を示すブロック図である。ＷｅｂサーバＷＳは、図２（Ａ）に示すように、制御部１、記憶部２、及び通信部３等を備えて構成される。制御部１、記憶部２、及び通信部３はバス４を介して相互に接続されている。なお、ＷｅｂサーバＷＳには、ＩＰアドレスが割り当てられている。ＷｅｂサーバＷＳは、アプリケーションサーバ、及びデータベースサーバ等の複数のサーバから構成されてもよい。
【００３９】
記憶部２は、例えばハードディスクドライブ等から構成される。記憶部２には、オペレーティングシステム、及びサーバプログラム等が記憶されている。また、記憶部２に設けられたコンテンツ保存領域には、動画配信サイトに登録された動画ファイルが所定のファイル形式で記憶されている。なお、動画ファイルには、例えば、動画データだけでなく、音声データが含まれる場合もある。動画ファイルの例としては、ｗｍａファイル、ｗｍｖファイル、ａｓｆファイル等が挙げられる。
【００４０】
また、記憶部２には、ユーザ端末ＵＴ等に提供可能なＷｅｂページが記憶されている。Ｗｅｂページは、ＨＴＭＬ（Hyper Text Markup Language)やＸＭＬ等により記述された構造化文書ファイルからなる。また、Ｗｅｂページには、動画ファイルを再生するソフトウェアであるプレイヤーの識別子が記述される。更に、Ｗｅｂページには、ユーザ端末ＵＴ等に提供可能な動画ファイルの所在を示す所在情報が記述される。この所在情報の例としては、動画ファイルのＵＲＬ（Uniform Resource Locator）が挙げられる。このＵＲＬには、動画ファイルのファイルパスが含まれる。動画ファイルのファイルパスは、コンテンツ保存領域の位置を特定するための情報である。なお、Ｗｅｂページには、所在情報として、動画ファイルのメタファイルのＵＲＬが記述されるように構成してもよい。動画ファイルのメタファイルは、ＷｅｂブラウザがＷｅｂページから動画ファイルへアクセスするためのテキストファイルである。そのため、動画ファイルのメタファイルには、動画ファイルのＵＲＬが記述される。動画ファイルのメタファイルの例としては、ｗａｘファイル、ｗｖｘファイル、ａｓｘファイル等が挙げられる。このような動画ファイルのメタファイルを利用することで、ＷｅｂブラウザがＷｅｂページに示されるプレイヤーを起動させ動画ファイルのストリーミング再生が可能になる。
【００４１】
通信部３は、ネットワークＮＷを通じてルータＲｍ、ユーザ端末ＵＴ又は管理サーバＭＳ等との間の通信制御を行う。
【００４２】
制御部１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部１は、本発明における第２受信手段、及び第２保存手段の一例である。制御部１は、ＣＰＵが記憶部２等に記憶されたプログラムを読み出して実行することにより、ＷｅｂサーバＷＳとしての処理を行う。
【００４３】
なお、投稿者により投稿された動画ファイルは、制御部１による検閲後に動画配信サイトで公開されるようになっている。具体的には、制御部１は、動画配信サイトにアクセスした例えばユーザ端末ＵＴからネットワークＮＷを介して送信された動画ファイルを受信する。つまり、動画ファイルがユーザ端末ＵＴからＷｅｂサーバＷＳへアップロードされる。そして、制御部１は、受信された動画ファイルが、動画配信サイトで公開するために必要な公開基準を満たす場合に、動画配信サイトで公開されるコンテンツとして登録する。なお、公開基準は、ＷｅｂサーバＷＳから配信するための検閲基準の一例である。ここで、公開することが不適切な内容を含む動画ファイルは、公開基準を満たさないとされる。公開基準を満たすかどうかの検閲は、制御部１が予め設定された公開基準データを参照することにより行う。なお、この検閲は、管理者が目視で行うように構成してもよい。
【００４４】
［３．管理サーバＭＳの構成及び機能］
次に、図２（Ｂ）を参照して、管理サーバＭＳの構成及び機能について説明する。図２（Ｂ）は、管理サーバＭＳの概要構成例を示すブロック図である。管理サーバＭＳは、図２（Ｂ）に示すように、制御部１１、記憶部１２、及び通信部１３等を備えて構成される。制御部１１、記憶部１２、及び通信部１３はバス１４を介して相互に接続されている。なお、管理サーバＭＳには、ＩＰアドレスが割り当てられている。
【００４５】
記憶部１２は、例えばハードディスクドライブ等から構成される。記憶部１２には、オペレーティングシステム、及びサーバプログラム等が記憶されている。また、記憶部１２には、ＷｅｂサーバＷＳのＩＰアドレス及びポート番号、及びオーバーレイネットワークＯＮに参加している所定数の常駐ノードのノード情報が記憶されている。この常駐ノードのノード情報は、ユーザ端末ＵＴからの要求に応じてユーザ端末ＵＴに提供される。
【００４６】
通信部１３は、ネットワークＮＷを通じてユーザ端末ＵＴ又はＷｅｂサーバＷＳ等との間の通信制御を行う。
【００４７】
制御部１１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部１１は、本発明における第３取得手段、及び投入手段の一例である。制御部１１は、ＣＰＵが記憶部１２等に記憶されたプログラムを読み出して実行することにより、管理サーバＭＳとしての処理を行う。
【００４８】
［４．ルータＲｍの構成及び機能等］
次に、図２（Ｃ）を参照して、ルータＲｍの構成及び機能について説明する。図２（Ｃ）は、ルータＲｍの概要構成例を示す図である。ルータＲｍは、図２（Ｃ）に示すように、制御部２１、記憶部２２、通信部２３ａ，及び通信部２３ｂ等を備えて構成される。制御部２１、記憶部２２、通信部２３ａ，及び通信部２３ｂはバス２４を介して相互に接続されている。なお、各ルータＲｍには、ＩＰアドレスが割り当てられている。
【００４９】
記憶部２２は、例えばハードディスクドライブ等から構成される。記憶部２２には、オペレーティングシステム、ＩＰパケット中継処理プログラム、及びノード処理プログラム等が記憶されている。なお、ノード処理プログラム等は、例えば、ネットワークＮＷに接続された所定のサーバからダウンロードされるようにしてもよい。或いは、ノード処理プログラム等は、例えば、記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。
【００５０】
また、記憶部２２には、オーバーレイネットワークＯＮで使用されるＤＨＴを用いたルーティングテーブル等が記憶されている。また、記憶部２２に設けられたコンテンツ保存領域には、メインコンテンツとしてカラオケデータが記憶されている。カラオケデータは、例えば曲番に相当するファイル名が付与されたファイルとして保存される。また、カラオケデータには、音声データ、字幕データ、及び映像データが含まれる。さらに、記憶部２２に設けられたコンテンツ保存領域には、ＷｅｂサーバＷＳから配信される動画ファイルがサブコンテンツとして記憶される場合もある。なお、記憶部２２に記憶されているコンテンツには、記憶された日付を示す日付情報が付与されている。なお、日付には、時刻が含まれてもよい。
【００５１】
通信部２３ａは、ネットワークＮＷを通じて他のルータＲｍ、ユーザ端末ＵＴ又は管理サーバＭＳ等との間の通信制御を行う。通信部２３ｂは、拠点ネットワークＮＬｍを通じて拠点端末Ｔｍ−ｌとの間の通信制御を行う。
【００５２】
制御部２１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部２１は、本発明における受信手段、保存手段、及び削除手段の一例である。制御部２１は、ＣＰＵが記憶部２２等に記憶されたＩＰパケット中継処理プログラムの実行により、ＩＰパケット中継処理部２１ａとして動作する。ＩＰパケット中継処理部２１ａは、ＯＳＩ（Open Systems Interconnection）参照モデルの第３層であるネットワーク層において、他のルータ又はホストからのＩＰパケットを中継する処理を行う。なお、ＩＰパケット中継処理部２１ａの機能は、公知のルータ又はＬ３スイッチングハブ等と同様であるので、詳しい説明を省略する。また、制御部２１は、ＣＰＵが記憶部２２等に記憶されたノード処理プログラムの実行により、ノード処理部２１ｂとして動作する。なお、ＩＰパケット中継処理部２１ａとノード処理部２１ｂの処理は、１つのＣＰＵがマルチタスク又はマルチコアにより実行される。或いは、ＩＰパケット中継処理部２１ａとノード処理部２１ｂの処理は、２つのＣＰＵで夫々のＣＰＵにより実行されるように構成してもよい。
【００５３】
［５．ユーザ端末ＵＴの構成及び機能等］
次に、図２（Ｄ）を参照して、ユーザ端末ＵＴの構成及び機能について説明する。図２（Ｄ）は、ユーザ端末ＵＴの概要構成例を示すブロック図である。ユーザ端末ＵＴは、図２（Ｄ）に示すように、制御部３１、記憶部３２、バッファメモリ３３、デコーダ部３４、映像処理部３５、表示部３６、音声処理部３７、スピーカ３８、通信部３９、及び入力部３９ａ等を備えて構成される。制御部３１、記憶部３２、バッファメモリ３３、デコーダ部３４、映像処理部３５、表示部３６、音声処理部３７、通信部３９、及び入力部３９ａは、バス３９ｂを介して相互に接続されている。
【００５４】
記憶部３２は、例えばハードディスクドライブ等から構成される。記憶部３２には、オペレーティングシステム、Ｗｅｂブラウザのプログラム、プレイヤーのプログラム、及びノード処理プログラム等が記憶されている。なお、ノード処理プログラム等は、例えば、ネットワークＮＷに接続された所定のサーバからダウンロードされるようにしてもよい。或いは、ノード処理プログラム等は、例えば、記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。
【００５５】
また、記憶部３２には、ＷｅｂサーバＷＳのＩＰアドレス及びポート番号、及び管理サーバＭＳのＩＰアドレス及びポート番号が記憶されている。更に、オーバーレイネットワークＯＮに参加しているユーザ端末ＵＴの記憶部３２には、ＤＨＴを用いたルーティングテーブル等が記憶されている。
【００５６】
バッファメモリ３３は、受信されたコンテンツをバッファリングする。デコーダ部３４は、コンテンツに含まれる映像データ及び音声データ等のデータ伸張や復号化等のデコード処理を行う。映像処理部３５は、デコーダ部３４によりデコードされた映像データ等に対して所定の描画処理を施し映像信号として再生出力する。表示部３６は、映像処理部３５から再生出力された映像信号に基づきディスプレイに映像等を表示する。また、表示部３６は、デコーダ部３４によりデコードされた画像を表示する。音声処理部３７は、デコーダ部３４によりデコードされた音声データをアナログ音声信号にＤ（Digital）／Ａ（Analog）変換した後これをアンプにより増幅して再生出力する。スピーカ３８は、音声処理部３７から再生出力された音声信号を音波として出力する。
【００５７】
通信部３９は、ネットワークＮＷを通じてＷｅｂサーバＷＳ、管理サーバＭＳ、又はルータＲｍ等との間の通信制御を行う。
【００５８】
制御部３１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部３１は、本発明における検索手段、取得手段、第２取得手段、受信手段、判定手段、削除手段及び制御手段の一例である。また、制御部３１は、時計機能及びタイマ機能を有する。また、制御部３１は、ＣＰＵが記憶部３２等に記憶されたＷｅｂブラウザのプログラムの実行により、Ｗｅｂブラウザ３１ａとして動作する。このＷｅｂブラウザ３１ａによりＷｅｂサーバＷＳから取得されたＷｅｂページがディスプレイに表示される。また、制御部３１は、ＣＰＵが記憶部３２等に記憶されたプレイヤーのプログラムの実行により、プレイヤー３１ｂとして動作する。このプレイヤー３１ｂによりデコーダ部３４等が制御されてコンテンツが再生される。また、制御部３１は、ＣＰＵが記憶部３２等に記憶されたノード処理プログラムの実行により、ノード処理部３１ｃとして動作する。更に、ノード処理部３１ｃは、Ｗｅｂブラウザ３１ａとＷｅｂサーバＷＳを中継する中継機能を有している。この中継機能によって、Ｗｅｂブラウザ３１ａからのリクエストは、ノード処理部３１ｃを経由してＷｅｂサーバＷＳに転送される。また、この中継機能によって、ＷｅｂサーバＷＳからのレスポンスは、ノード処理部３１ｃを経由してＷｅｂブラウザ３１ａに転送される。
【００５９】
なお、Ｗｅｂブラウザ３１ａとノード処理部３１ｃの処理は、１つのＣＰＵがマルチタスク又はマルチコアにより実行される。或いは、Ｗｅｂブラウザ３１ａとノード処理部３１ｃの処理は、２つのＣＰＵで夫々のＣＰＵにより実行されるように構成してもよい。
【００６０】
［６．コンテンツ配信システムＳの動作］
次に、本実施形態に係るコンテンツ配信システムＳの動作について説明する。
【００６１】
（６．１  カラオケデータの投入動作）
先ず、カラオケデータがメインコンテンツとしてオーバーレイネットワークＯＮへ投入される場合のコンテンツ配信システムＳの動作について説明する。
【００６２】
例えば、システム運営者の端末から新たなカラオケデータが投入サーバＤＳにアップロードされると、投入サーバＤＳは、管理サーバＭＳから常駐ノードのノード情報を取得する。そして、投入サーバＤＳは、取得したノード情報に含まれるＩＰアドレス及びポート番号に基づいて常駐ノードへアクセスし、コンテンツ保存依頼メッセージを送信する。このコンテンツ保存依頼メッセージは、カラオケデータの保存を依頼するメッセージである。なお、投入サーバＤＳは、管理サーバＭＳから複数の常駐ノードのノード情報を取得してもよい。この場合、投入サーバＤＳは、各常駐ノードへコンテンツ保存依頼メッセージを送信する。
【００６３】
そして、このコンテンツ保存依頼メッセージを受信した常駐ノードのノード処理部２１ｂは、例えば、この常駐ノードの記憶部２２にカラオケデータを保存するための空き領域がある場合、コンテンツ保存許可メッセージを返信する。このコンテンツ保存許可メッセージは、カラオケデータの保存を許可するメッセージである。一方、コンテンツ保存依頼メッセージを受信した常駐ノードの記憶部２２にカラオケデータを保存するための空き領域がない場合がある。この場合、常駐ノードのノード処理部２１ｂは、記憶部２２に記憶されている複数のコンテンツの中から選択したコンテンツを削除する。例えば、最も古いコンテンツから選択されて削除される。最も古いコンテンツとは、記憶された日付が最も過去のコンテンツを意味する。ここで、複数のコンテンツの中にメインコンテンツとサブコンテンツが含まれている場合には、常駐ノードのノード処理部２１ｂは、メインコンテンツよりサブコンテンツを優先して削除する。これにより、サブコンテンツの存在により、オーバーレイネットワークＯＮでメインコンテンツの利用が妨げられることを回避することができる。なお、このように空き領域がない場合のコンテンツの削除は、常駐ノードがオーバーレイネットワークＯＮを介して他のノードＮｎから新たなコンテンツを取得する場合も同様に行われる。こうして、コンテンツの削除によりカラオケデータを保存するための空き領域が確保された場合、常駐ノードのノード処理部２１ｂは、コンテンツ保存許可メッセージを投入サーバＤＳへ返信する。そして、投入サーバＤＳは、常駐ノードからのコンテンツ保存許可メッセージを受信すると、この常駐ノードへカラオケデータを送信する。
【００６４】
こうして、カラオケデータを受信した常駐ノードは、このカラオケデータをメインコンテンツとして保存しコンテンツ保持ノードとなる。また、メインコンテンツを保存した常駐ノードは、このメインコンテンツのパブリッシュ処理を行う。このパブリッシュ処理は、このコンテンツを保存していることを他のノードＮｎに公開するための処理である。このパブリッシュ処理において、常駐ノードのノード処理部２１ｂは、パブリッシュメッセージを生成する。パブリッシュメッセージには、メインコンテンツのコンテンツＩＤ、及びメインコンテンツを保存した常駐ノードのノード情報が含まれる。そして、常駐ノードは、生成したパブリッシュメッセージを、ＤＨＴルーティングにより、メインコンテンツのルートノード宛に送信する。パブリッシュメッセージを受信したルートノードは、メインコンテンツのコンテンツＩＤと常駐ノードのＩＰアドレス等との組を、インデックス情報として記憶する。
【００６５】
以上のように、カラオケデータは、オーバーレイネットワークＯＮで取得可能なメインコンテンツとしてオーバーレイネットワークＯＮへ投入される。
【００６６】
（６．２  動画ファイルの投入動作）
次に、図３を参照して、動画ファイルがサブコンテンツとしてオーバーレイネットワークＯＮへ投入される場合のコンテンツ配信システムＳの動作について説明する。図３は、サブコンテンツが投入される場合のコンテンツ配信システムＳにおける各装置の処理等を示すシーケンス図である。
【００６７】
なお、動画ファイルの投入動作の前提として、ユーザ端末ＵＴのノード処理部３１ｃは、管理サーバＭＳから常駐ノードのノード情報を取得しているものとする。また、ユーザ端末ＵＴの表示部３６には、Ｗｅｂブラウザ３１ａによりＷｅｂサーバＷＳから受信されたＷｅｂページが表示されているものとする。このＷｅｂページは、動画配信サイトで公開された動画ファイルの視聴用のページである。また、このＷｅｂページには、例えば動画ファイルのＵＲＬ又は動画ファイルのメタファイルのＵＲＬが含まれている。
【００６８】
Ｗｅｂページが表示されている状態において、例えば、ユーザ端末ＵＴのユーザにより入力部１９ａを介して動画ファイルの再生指示があった場合、ユーザ端末ＵＴのＷｅｂブラウザ３１ａは、取得対象の動画ファイルのリクエストをノード処理部３１ｃに送信する（ステップＳ１）。或いは、Ｗｅｂブラウザ３１ａがＷｅｂページを受信したことを条件として、取得対象の動画ファイルのリクエストがノード処理部３１ｃに送信されるように構成してもよい。このリクエストは、例えばＨＴＴＰ（HyperText Transfer Protocol）リクエストである。また、動画ファイルのリクエストには、Ｗｅｂページから抽出された動画ファイルのＵＲＬが含まれている。なお、Ｗｅｂページに動画ファイルのメタファイルのＵＲＬが含まれる場合がある。この場合、Ｗｅｂブラウザ３１ａは、先ず、動画ファイルのメタファイルを取得してこのメタファイルから動画ファイルのＵＲＬを抽出する。そして、Ｗｅｂブラウザ３１ａは、抽出した動画ファイルのＵＲＬを含むリクエストをノード処理部３１ｃに送信する。
【００６９】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、Ｗｅｂブラウザ３１ａからのリクエストを受信すると、リクエストに含まれる動画ファイルのＵＲＬに基づいてサブコンテンツのコンテンツＩＤを生成する（ステップＳ２）。ここで、コンテンツＩＤは、例えば、ノードＩＤを生成するハッシュ関数と同じハッシュ関数により動画ファイルのＵＲＬがハッシュ化されて生成される。この場合、動画ファイルのＵＲＬのハッシュ値がコンテンツＩＤとなる。なお、コンテンツＩＤは、動画ファイルのＵＲＬと動画ファイルのキーワード等の情報との組合せが上記ハッシュ関数によりハッシュ化されて生成されるように構成してもよい。このように動画ファイルのＵＲＬに基づきコンテンツＩＤが生成されるので、オーバーレイネットワークＯＮへ投入されるサブコンテンツのコンテンツＩＤを記述するためにＷｅｂページの記述を変更しなくてもよい。つまり、動画ファイルの投稿者等は、クライアント・サーバ型の配信システムで動画ファイルを配信することだけを想定してＷｅｂページを作成すればよい。そのため、オーバーレイネットワークＯＮで動画ファイルを公開するための専門知識を必要としない。
【００７０】
なお、ユーザ端末ＵＴのノード処理部３１ｃが例えば管理サーバＭＳ等の所定のサーバから、動画ファイルのＵＲＬに対応するコンテンツＩＤを取得するように構成してもよい。この場合、ユーザ端末ＵＴのノード処理部３１ｃは、例えば管理サーバＭＳに動画ファイルのＵＲＬを送信する。そして、管理サーバＭＳは、ユーザ端末ＵＴから受信したＵＲＬに基づきコンテンツＩＤを生成してユーザ端末ＵＴへ返信する。或いは、管理サーバＭＳは、ユーザ端末ＵＴから受信したＵＲＬに対応付けられて記憶されているコンテンツＩＤを取得してユーザ端末ＵＴへ返信する。また、ユーザ端末ＵＴのノード処理部３１ｃは、受信されたリクエストに動画ファイルのメタファイルのＵＲＬが含まれる場合がある。この場合、動画ファイルのメタファイルのＵＲＬに基づいてサブコンテンツのコンテンツＩＤを生成するように構成してもよい。
【００７１】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、管理サーバＭＳから取得した常駐ノードのノード情報に含まれるＩＰアドレス及びポート番号に基づいて常駐ノードへアクセスし、コンテンツ要求メッセージを送信する（ステップＳ３）。このコンテンツ要求メッセージは、常駐ノードにサブコンテンツを要求するメッセージである。また、このコンテンツ要求メッセージには、上記ステップＳ２で生成されたコンテンツＩＤが含まれる。
【００７２】
なお、コンテンツ要求メッセージには、コンテンツＩＤに代えて動画ファイルのＵＲＬが含まれるように構成してもよい。この場合、常駐ノードのノード処理部２１ｂが、動画ファイルのＵＲＬに基づいてサブコンテンツのコンテンツＩＤを生成することになる。
【００７３】
次いで、常駐ノードのノード処理部２１ｂは、ユーザ端末ＵＴからのコンテンツ要求メッセージを受信する。そして、常駐ノードのノード処理部２１ｂは、受信されたコンテンツ要求メッセージに含まれるコンテンツＩＤに基づいて、取得対象のサブコンテンツの所在を検索する検索処理を実行する（ステップＳ４）。
【００７４】
次いで、常駐ノードのノード処理部２１ｂは、上記ステップＳ４の検索処理により、オーバーレイネットワークＯＮから取得対象のサブコンテンツを発見できたか否かを判定する（ステップＳ５）。そして、常駐ノードのノード処理部２１ｂは、取得対象のサブコンテンツを発見できた場合には（ステップＳ５：ＹＥＳ）、ステップＳ６に進む。なお、上記ステップＳ４の検索処理を行った常駐ノードの記憶部２２から取得対象のサブコンテンツが発見される場合もある。一方、常駐ノードのノード処理部２１ｂは、取得対象のサブコンテンツを発見できなかった場合には（ステップＳ５：ＮＯ）、ステップＳ９に進む。
【００７５】
ステップＳ６では、常駐ノードのノード処理部２１ｂは、上記検索処理によりルートノードから受信されたインデックス情報に示されるコンテンツ保持ノードから取得対象のサブコンテンツを取得する。或いは、常駐ノードのノード処理部２１ｂは、記憶部２２から取得対象のサブコンテンツを取得する。そして、常駐ノードのノード処理部２１ｂは、取得したサブコンテンツをユーザ端末ＵＴへ送信する（ステップＳ７）。
【００７６】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、常駐ノードからのサブコンテンツを受信すると、このサブコンテンツをＷｅｂブラウザ３１ａへ転送する（ステップＳ８）。ここで、Ｗｅｂブラウザ３１ａは、Ｗｅｂページに記述されたプレイヤーの識別子に対応するプレイヤー３１ｂを起動する。そして、ノード処理部３１ｃから転送されたサブコンテンツは、プレイヤー３１ｂにより再生される。
【００７７】
一方、ステップＳ９では、常駐ノードのノード処理部２１ｂは、コンテンツ無メッセージをユーザ端末ＵＴへ送信する。
【００７８】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、常駐ノードからのコンテンツ無メッセージを受信すると、上記ステップＳ２でＷｅｂブラウザ３１ａから受信したリクエストをＷｅｂサーバＷＳへ転送する（ステップＳ１０）。これにより、ユーザ端末ＵＴのノード処理部３１ｃは、ＷｅｂサーバＷＳから動画ファイルを取得する（ステップＳ１１）。そして、ノード処理部３１ｃは、ＷｅｂサーバＷＳから取得した動画ファイルをＷｅｂブラウザ３１ａへ転送する（ステップＳ１２）。
【００７９】
ところで、上記ステップＳ１０及びＳ１１の別の例として、ユーザ端末ＵＴのノード処理部３１ｃは、オーバーレイネットワークＯＮとは異なる他のオーバーレイネットワークを構成するノードから動画ファイルを取得するように構成してもよい。他のオーバーレイネットワークは、例えば複数のユーザ端末ＵＴにより構成される。この場合、ユーザ端末ＵＴのノード処理部３１ｃは、他のオーバーレイネットワークに参加しているノードのＩＰアドレス及びポート番号を事前に記憶しておく。或いは、他のオーバーレイネットワークを参加している何れかのノードのＩＰアドレス及びポート番号を所定のサーバから取得する構成してもよい。そして、ユーザ端末ＵＴのノード処理部３１ｃは、他のオーバーレイネットワークを参加しているノードから動画ファイルを取得する。
【００８０】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、管理サーバＭＳへアクセス状況問合せメッセージを送信する（ステップＳ１３）。このアクセス状況問合せメッセージは、管理サーバＭＳに、動画ファイルへのアクセス状況を問い合わせるためのメッセージである。また、このアクセス状況問合せメッセージには、例えば、動画ファイルのＵＲＬが含まれる。なお、ユーザ端末ＵＴのノード処理部３１ｃは、管理サーバＭＳへ負荷状況問合せメッセージを送信するように構成してもよい。この負荷状況問合せメッセージは、管理サーバＭＳに、ＷｅｂサーバＷＳの負荷状況を問い合わせるメッセージである。
【００８１】
次いで、管理サーバＭＳの制御部１１は、ユーザ端末ＵＴからのアクセス状況問合せメッセージを受信する。そして、管理サーバＭＳの制御部１１は、動画ファイルへのアクセス状況を示す情報をＷｅｂサーバＷＳから取得する（ステップＳ１４）。この動画ファイルは、受信されたアクセス状況問合せメッセージに含まれるＵＲＬから特定される。ここで、アクセス状況を示す情報には、特定された動画ファイルの人気度を示す情報が含まれる。動画ファイルの人気度は、例えば、所定期間における動画ファイルへのアクセス数に基づき算出される。例えば、所定期間における動画ファイルへのアクセス数が、動画ファイルの人気度として算出される。或いは、所定期間における動画ファイルへのアクセス数に所定の係数を乗算した値が、動画ファイルの人気度として算出される。所定期間における動画ファイルへのアクセス数は、例えばＷｅｂサーバＷＳがユーザ端末ＵＴ等からの動画ファイルのリクエスト数をカウントすることにより得られる。なお、動画ファイルの人気度は、例えば、所定期間における動画ファイルの配信数に基づき算出されるように構成してもよい。所定期間における動画ファイルの配信数は、例えばＷｅｂサーバＷＳが、ユーザ端末ＵＴ等への動画ファイルの配信数をカウントすることにより得られる。また、動画ファイルの人気度は、例えば、動画ファイルに対して閲覧者により付けられた評価点数の合計、又は閲覧者による動画ファイルのお気に入り登録の総数などに基づき算出されるように構成してもよい。評価点数及びお気に入り登録の情報は、ＷｅｂサーバＷＳに記憶されている。
【００８２】
なお、管理サーバＭＳの制御部１１が、ユーザ端末ＵＴから負荷状況問合せメッセージを受信する場合がある。この場合、管理サーバＭＳの制御部１１は、ＷｅｂサーバＷＳの負荷状況を示す情報をＷｅｂサーバＷＳから取得する。ここで、負荷状況を示す情報には、ＷｅｂサーバＷＳの負荷率を示す情報が含まれる。ＷｅｂサーバＷＳの負荷率は、例えば所定期間におけるＣＰＵ使用率として得られる。また、負荷状況を示す情報には、ＷｅｂサーバＷＳが接続される通信回線の帯域の占有率を示す情報が含まれるように構成してもよい。
【００８３】
次いで、管理サーバＭＳの制御部１１は、ユーザ端末ＵＴへ回答メッセージを送信する（ステップＳ１５）。この回答メッセージは、アクセス状況問合せメッセージに対する回答を示すメッセージである。また、この回答メッセージには、ＷｅｂサーバＷＳから取得されたアクセス状況を示す情報又は負荷状況を示す情報が含まれる。
【００８４】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、管理サーバＭＳからの回答メッセージを受信すると、上記ステップＳ１１で取得された動画ファイルが、オーバーレイネットワークＯＮに投入する投入条件を満たすか否かを判定する（ステップＳ１６）。例えば、回答メッセージにアクセス状況を示す情報が含まれている場合、このアクセス状況を示す情報から動画ファイルの人気度を示す情報が取得される。この場合、ノード処理部３１ｃは、取得された動画ファイルの人気度が、所定の人気度以上である場合、投入条件を満たすと判定する。これにより、人気度の高い動画ファイルをサブコンテンツとしてオーバーレイネットワークＯＮへ投入することができる。そのため、例えばＷｅｂサーバＷＳの処理負荷を低減することができる。ここで、「所定の人気度」は、例えばノード処理プログラムで予め規定される。また、例えば、回答メッセージに負荷状況を示す情報が含まれている場合、この負荷状況を示す情報からＷｅｂサーバＷＳの負荷率又は通信回線の帯域の占有率を示す情報が取得される。この場合、ノード処理部３１ｃは、取得されたＷｅｂサーバＷＳの負荷率が、所定の負荷率以上である場合、投入条件を満たすと判定する。或いは、ノード処理部３１ｃは、通信回線の帯域の占有率が、所定の占有率以上である場合、投入条件を満たすと判定する。これにより、例えばＷｅｂサーバＷＳの処理負荷を低減することができる。ここで、「所定の負荷率」又は「所定の占有率」は、例えばノード処理プログラムで予め規定される。また、ノード処理部３１ｃは、動画ファイルの人気度が所定の人気度以上であり、且つ、ＷｅｂサーバＷＳの負荷率が所定の負荷率以上である場合に投入条件を満たすと判定するように構成してもよい。或いは、ノード処理部３１ｃは、動画ファイルの人気度が所定の人気度以上であり、且つ、通信回線の帯域の占有率が所定の占有率以上である場合に投入条件を満たすと判定するように構成してもよい。これらの構成によれば、より一層、例えばＷｅｂサーバＷＳの処理負荷を低減することができる。
【００８５】
なお、動画ファイルの人気度が所定の人気度以上であるか否かの判定、ＷｅｂサーバＷＳの負荷率が所定の負荷率以上であるか否かの判定、又は通信回線の帯域の占有率が所定の占有率以上であるか否かの判定は、管理サーバＭＳの制御部１１が行うように構成してもよい。この場合、管理サーバＭＳの制御部１１からユーザ端末ＵＴへ送信される回答メッセージには、人気度等の判定結果を示す情報が含まれる。そして、ユーザ端末ＵＴのノード処理部３１ｃは、人気度等の判定結果を示す情報に基づき、上記ステップＳ１１で取得された動画ファイルが、オーバーレイネットワークＯＮに投入する投入条件を満たすか否かを判定する。例えば、回答メッセージに、動画ファイルの人気度が所定の人気度以上であることを示す情報が含まれていた場合、ノード処理部３１ｃは、投入条件を満たすと判定する。
【００８６】
なお、上述した投入条件に、「動画ファイルのファイルサイズが所定のファイルサイズ以上であること」を加えるように構成してもよい。この場合、ユーザ端末ＵＴのノード処理部３１ｃは、上記ステップＳ１１で取得された動画ファイルのファイルサイズを示す情報を例えばオペレーティングシステムから取得する。そして、ノード処理部３１ｃは、動画ファイルのファイルサイズが所定のファイルサイズ以上であり、且つ、動画ファイルの人気度が所定の人気度以上である場合に投入条件を満たすと判定する。この構成によれば、ファイルサイズが大きく、なおかつ人気度の高い動画ファイルをオーバーレイネットワークＯＮへ投入することができる。そのため、より一層、例えばＷｅｂサーバＷＳの処理負荷を低減することができる。ここで、「所定のファイルサイズ」は、例えばノード処理プログラムで予め規定される。この投入条件を用いることで、ファイルサイズが所定の大きさ以上の動画ファイルをオーバーレイネットワークＯＮへ投入することができる。そのため、例えばＷｅｂサーバＷＳの処理負荷を低減することができる。或いは、ノード処理部３１ｃは、動画ファイルのファイルサイズが所定のファイルサイズ以上であり、且つ、ＷｅｂサーバＷＳの負荷率が所定の負荷率以上である場合に投入条件を満たすと判定するように構成してもよい。或いは、ノード処理部３１ｃは、動画ファイルのファイルサイズが所定のファイルサイズ以上であり、且つ、通信回線の帯域の占有率が所定の占有率以上である場合に投入条件を満たすと判定するように構成してもよい。これらの構成によっても、より一層、例えばＷｅｂサーバＷＳの処理負荷を低減することができる。
【００８７】
更に、上述した投入条件に、「検閲された動画ファイルであること」を加えるように構成してもよい。この場合、上記ステップＳ１１で取得された動画ファイルは、ＷｅｂサーバＷＳの制御部１により検閲された動画ファイルである。そのため、ノード処理部３１ｃは、動画ファイルがＷｅｂサーバＷＳから取得されたものであり、且つ、動画ファイルの人気度が所定の人気度以上である場合に投入条件を満たすと判定する。或いは、ノード処理部３１ｃは、動画ファイルがＷｅｂサーバＷＳから取得されたものであり、且つ、ＷｅｂサーバＷＳの負荷率が所定の負荷率以上である場合に投入条件を満たすと判定するように構成してもよい。或いは、ノード処理部３１ｃは、動画ファイルがＷｅｂサーバＷＳから取得されたものであり、且つ、通信回線の帯域の占有率が所定の占有率以上である場合に投入条件を満たすと判定するように構成してもよい。これらの構成によれば、オーバーレイネットワークＯＮに不適切な動画コンテンツが投入されることを防止することもできる。
【００８８】
そして、ユーザ端末ＵＴのノード処理部３１ｃは、投入条件を満たすと判定した場合には（ステップＳ１６：ＹＥＳ）、ステップＳ１７に進む。一方、ノード処理部３１ｃは、投入条件を満たさないと判定した場合には（ステップＳ１６：ＮＯ）、動画コンテンツの投入を行わない。
【００８９】
ステップＳ１７では、ユーザ端末ＵＴのノード処理部３１ｃは、常駐ノードへ参加メッセージを送信する。この常駐ノードは、上記ステップＳ９でコンテンツ無メッセージを送信したノードＮｎである。また、参加メッセージは、オーバーレイネットワークＯＮへの参加を要求するメッセージである。
【００９０】
次いで、常駐ノードのノード処理部２１ｂは、ユーザ端末ＵＴからの参加メッセージを受信する。そして、常駐ノードのノード処理部２１ｂは、記憶部２２に記憶されているＤＨＴを用いたルーティングテーブルから所定数のノード情報を取得する（ステップＳ１８）。常駐ノードのノード処理部２１ｂは、取得したノード情報をユーザ端末ＵＴへ送信する（ステップＳ１９）。なお、常駐ノードのノード処理部２１ｂは、受信した参加メッセージを他の常駐ノードへ転送する場合もある。この場合、ユーザ端末ＵＴには、複数の常駐ノードからノード情報が送信される。
【００９１】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、常駐ノードからのノード情報を受信すると、受信されたノード情報が登録されるＤＨＴを用いたルーティングテーブルを生成する（ステップＳ２０）。こうしてＤＨＴのルーティングテーブルを生成したユーザ端末ＵＴは、一般ノードとしてオーバーレイネットワークＯＮに参加することになる。なお、参加処理時におけるＤＨＴのルーティングテーブルの生成方法については公知であるため詳しい説明を省略する。
【００９２】
次いで、ユーザ端末ＵＴのノード処理部３１ｃは、ステップＳ１１で取得された動画ファイルをオーバーレイネットワークＯＮへ投入するための投入制御を実行する（ステップＳ２１）。この投入制御では、先ず、ノード処理部３１ｃは、動画ファイルの投入先となる所定数のノードＮｎのＩＰアドレス及びポート番号を記憶部３２に記憶されているＩＰアドレス及びポート番号の中から取得する。例えば、動画ファイルの投入先となるノードＮｎのＩＰアドレス及びポート番号は、ＤＨＴを用いたルーティングテーブルに登録されているＩＰアドレス及びポート番号の中から取得される。また、ノード処理部３１ｃがオーバーレイネットワークＯＮを介して他のノードＮｎとの間で行ったメッセージの送受信の履歴情報が記憶部３２に記憶されている場合がある。この履歴情報に他のノードＮｎのＩＰアドレス及びポート番号が含まれている場合、この中から動画ファイルの投入先となるノードＮｎのＩＰアドレス及びポート番号が取得されるように構成してもよい。そして、ユーザ端末ＵＴのノード処理部３１ｃは、取得した各ＩＰアドレス及びポート番号に基づいてノードＮｎへアクセスし、コンテンツ保存依頼メッセージを送信する。このコンテンツ保存依頼メッセージは、動画ファイルの保存を依頼するメッセージである。このコンテンツ保存依頼メッセージを受信したノードＮｎは、例えば、このノードＮｎの記憶部に動画ファイルを保存するための空き領域がある場合、コンテンツ保存許可メッセージを返信する。このコンテンツ保存許可メッセージは、動画ファイルの保存を許可するメッセージである。一方、コンテンツ保存依頼メッセージを受信したノードＮｎは、例えば、このノードＮｎの記憶部に動画ファイルを保存するための空き領域がない場合、コンテンツ保存拒否メッセージを返信する。このコンテンツ保存拒否メッセージは、動画ファイルの保存を拒否するメッセージである。そして、ユーザ端末ＵＴのノード処理部３１ｃが、コンテンツ保存許可メッセージを受信した場合、このコンテンツ保存許可メッセージを送信したノードＮｎへ動画ファイルを送信する。
【００９３】
こうして、動画ファイルを受信したノードＮｎは、この動画ファイルをサブコンテンツとして保存しコンテンツ保持ノードとなる。また、サブコンテンツを保存したノードＮｎは、このサブコンテンツのパブリッシュ処理を行う。なお、このパブリッシュ処理の流れは、メインコンテンツのパブリッシュ処理の場合と同様である。
【００９４】
以上のように動画ファイルの投入が行われると、ユーザ端末ＵＴのノード処理部３１ｃは、オーバーレイネットワークＯＮから脱退する脱退処理を実行する（ステップＳ２２）。この脱退処理では、ユーザ端末ＵＴのノード処理部３１ｃは、ステップＳ２０で生成したＤＨＴのルーティングテーブルを消去し、ノード処理プログラムの実行を終了する。つまり、ユーザ端末ＵＴは、取得した動画ファイルを投入するときだけオーバーレイネットワークＯＮへ参加する。このように、ユーザ端末ＵＴがオーバーレイネットワークＯＮに参加している時間は短いので、ユーザ端末ＵＴがコンテンツ保持ノードやルートノードになり難くすることができる。そのため、オーバーレイネットワークＯＮを安定的に運用することができる。
【００９５】
なお、ユーザ端末ＵＴのノード処理部３１ｃは、オーバーレイネットワークＯＮしている間に、コンテンツ保持ノードやルートノードにはならないように構成してもよい。例えば、ユーザ端末ＵＴのノード処理部３１ｃは、コンテンツを保存した場合であってもパブリッシュ処理を行わなければ、コンテンツ保持ノードとして機能しないようにすることができる。また、ユーザ端末ＵＴのノード処理部３１ｃは、他のノードＮｎから送信されたパブリッシュメッセージ及びコンテンツ所在問合せメッセージの受信を拒否すればルートノードとして機能しないようにすることができる。
【００９６】
以上説明したように、上記実施形態によれば、オーバーレイネットワークＯＮに属していない配信装置から配信される動画ファイルをサブコンテンツとしてオーバーレイネットワークＯＮに投入する場合、このサブコンテンツが投入条件を満たす場合に限りオーバーレイネットワークＯＮへ投入される。そのため、オーバーレイネットワークＯＮでメインとして利用されるメインコンテンツの保存や配信に支障をきたすことを回避することができる。また、オーバーレイネットワークＯＮに参加している常駐ノードのストレージ容量を合計した総ストレージ容量が、サブコンテンツの保存のために必要以上に減少されることを回避することができる。従って、メインコンテンツが定常的に配信されるオーバーレイネットワークＯＮで、サブコンテンツを分散保存して効率的にコンテンツ配信システムＳを運用することができる。
【００９７】
また、サブコンテンツがオーバーレイネットワークＯＮへ投入された後は、このコンテンツを配信するＷｅｂサーバＷＳ等の配信装置の処理負荷を低減することができる。更に、ＷｅｂサーバＷＳ等の配信装置をコンテンツプールとして効率良く利用することができる。ここで、コンテンツプールとは、例えば、オーバーレイネットワークＯＮにおいてコンテンツを取得するためのリクエストに対して、必ず応答できるようにする装置のことをいう。従来の方式によるオーバーレイネットワークでは、コンテンツプールとして専用の装置を設置する必要があったが、本実施形態では、ＷｅｂサーバＷＳ等の配信装置に、その役割を担わせることができる。そのため、本実施形態では、従来の方式ように専用の装置を設置する必要がないため、システムをより効率良くすることができる。
【００９８】
また、投入条件により例えば人気度が所定以上と高いサブコンテンツは、オーバーレイネットワークＯＮで配信されることになる。そのため、ＷｅｂサーバＷＳ等の配信装置の処理負荷を低減することができる。一方、人気度の低いサブコンテンツは、ＷｅｂサーバＷＳで配信されることになる。そのため、オーバーレイネットワークＯＮを安定的に運用することができる。
【００９９】
ここで、上記ステップＳ２１における投入制御の別の例として、ユーザ端末ＵＴのノード処理部３１ｃが管理サーバＭＳに動画ファイルを投入させる場合について説明する。この場合、上記ステップＳ１０において、ユーザ端末ＵＴのノード処理部３１ｃは、上記ステップＳ２で受信されたリクエストに含まれる動画ファイルのＵＲＬを管理サーバＭＳに送信する。そして、管理サーバＭＳの制御部１１は、ユーザ端末ＵＴから送信された動画ファイルのＵＲＬを受信した場合に、このＵＲＬに対応する動画ファイルをＷｅｂサーバＷＳから取得する。なお、管理サーバＭＳは、上記ステップＳ１１の別の例で説明した方法と同じように、他のオーバーレイネットワークを構成するノードから動画ファイルを取得するように構成してもよい。そして、管理サーバＭＳの制御部１１は、取得した動画ファイルをオーバーレイネットワークＯＮへ投入する。例えば、管理サーバＭＳの制御部１１は、動画ファイルの投入先となる所定数のノードＮｎのＩＰアドレス及びポート番号を記憶部１２に記憶されているＩＰアドレス及びポート番号の中から取得する。そして、管理サーバＭＳの制御部１１は、取得した各ＩＰアドレス及びポート番号に基づいてノードＮｎへアクセスし、コンテンツ保存依頼メッセージを送信する。その後の動作は、ユーザ端末ＵＴのノード処理部３１ｃがコンテンツ保存依頼メッセージを送信する場合と同様である。
【０１００】
このように、管理サーバＭＳが動画ファイルの投入を行うことで、ユーザ端末ＵＴは、オーバーレイネットワークＯＮに参加しなくてよい。そのため、ユーザ端末ＵＴのノード処理部３１ｃは、上記ステップＳ１３〜ステップＳ２２の処理を行わなくてよい。そして、管理サーバＭＳが動画ファイルの投入を行うことでユーザ端末ＵＴの処理負荷を低減することができる。また、管理サーバＭＳが動画ファイルの投入を行う場合、投入途中で電源がオフされる可能性がユーザ端末ＵＴより低い。そのため、ユーザ端末ＵＴが投入する場合よりも確実に動画ファイルをオーバーレイネットワークＯＮへ投入することができる。また、管理サーバＭＳが動画ファイルの投入を行うことで、投入される動画ファイルは管理サーバＭＳで一括管理することができる。そのため、重複した動画ファイルをオーバーレイネットワークＯＮへ投入することを回避することができる。また、ユーザ端末ＵＴが、ＷｅｂサーバＷＳから動画ファイルを取得しながらストリーミング再生を行っているときに、ユーザの指示により例えばシーク再生やスキップ再生等の特殊再生が行われる場合がある。この場合、シーク再生やスキップ再生等の期間中の動画ファイルのデータ部分はユーザ端末ＵＴに取得されない。つまり、ユーザ端末ＵＴは完全な動画ファイルをＷｅｂサーバＷＳから取得できない場合がある。一方、管理サーバＭＳでは動画ファイルの特殊再生が行われないので、完全な動画ファイルをＷｅｂサーバＷＳから取得することができる。そのため、管理サーバＭＳは、完全な動画ファイルをオーバーレイネットワークＯＮへ投入することができる。更に、管理サーバＭＳは、同時期に複数のユーザ端末ＵＴから動画ファイルのＵＲＬを受信した場合に、ネットワークＮＷやノードＮｎの負荷状況に応じて、動画ファイルの投入量を制御することができる。
【０１０１】
なお、上記ステップＳ２１における投入制御の更に別の例として、ユーザ端末ＵＴのノード処理部３１ｃが常時参加ノードに動画ファイルを投入させるように構成してもよい。この場合、上記ステップＳ２１において、ユーザ端末ＵＴのノード処理部３１ｃは、上記ステップＳ１１で取得された動画ファイルを常駐ノードへ送信する。この常駐ノードは、上記ステップＳ９でコンテンツ無メッセージを送信したノードＮｎである。そして、常駐ノードのノード処理部２１ｂは、動画ファイルの投入先となる所定数のノードＮｎのＩＰアドレス及びポート番号を記憶部２２に記憶されているＩＰアドレス及びポート番号の中から取得する。例えば、動画ファイルの投入先となるノードＮｎのＩＰアドレス及びポート番号は、ＤＨＴを用いたルーティングテーブルに登録されているＩＰアドレス及びポート番号の中から取得される。また、ユーザ端末ＵＴの場合と同様、履歴情報から動画ファイルの投入先となるノードＮｎのＩＰアドレス及びポート番号が取得されるように構成してもよい。そして、常駐ノードのノード処理部２１ｂは、取得した各ＩＰアドレス及びポート番号に基づいてノードＮｎへアクセスし、コンテンツ保存依頼メッセージを送信する。その後の動作は、ユーザ端末ＵＴのノード処理部３１ｃがコンテンツ保存依頼メッセージを送信する場合と同様である。
【０１０２】
このように、常時参加ノードが動画ファイルの投入を行うことで、ユーザ端末ＵＴは、オーバーレイネットワークＯＮに参加しなくてよい。そのため、ユーザ端末ＵＴのノード処理部３１ｃは、上記ステップＳ１７〜ステップＳ２２の処理を行わなくてよい。そして、常時参加ノードが動画ファイルの投入を行うことでユーザ端末ＵＴの処理負荷を低減することができる。また、常時参加ノードが動画ファイルの投入を行う場合、投入途中で電源がオフされる可能性がユーザ端末ＵＴより低い。そのため、ユーザ端末ＵＴが投入する場合よりも確実に動画ファイルをオーバーレイネットワークＯＮへ投入することができる。
【０１０３】
ただし、常駐ノードは、同一拠点Ｐｍにおける拠点ネットワークＮＬｍに接続された拠点端末Ｔｍ−ｌからの要求に応じてメインコンテンツを送信する役割を担う。更に、常駐ノードは、他の常駐ノードからの要求に応じてメインコンテンツ又はサブコンテンツを送信する役割を担う。このような役割を担う常駐ノードの処理負荷はできるだけ低減される必要がある。そのため、動画ファイルの投入は、ユーザ端末ＵＴ又は管理サーバＭＳが行うことが望ましい。ユーザ端末ＵＴ又は管理サーバＭＳが動画ファイルの投入を行うことで、オーバーレイネットワークＯＮを安定的に運用することができる。
【０１０４】
なお、上記実施形態においては、本発明の第２の情報処理装置としてユーザ端末ＵＴを例にとって説明したが、拠点端末Ｔｍ−ｌが第２の情報処理装置であってもよい。この場合、拠点端末Ｔｍ−ｌには、上述したＷｅｂブラウザ３１ａ、プレイヤー３１ｂ、及びノード処理部３１ｃが備えられる。そして、拠点端末Ｔｍ−ｌには、ルータＲｍを介してＷｅｂサーバＷＳに動画ファイルをアップロードすることができる。更に、拠点端末Ｔｍ−ｌは、上述したステップＳ１〜Ｓ３，Ｓ８，Ｓ１０，Ｓ１２，Ｓ１３，Ｓ１６，Ｓ１７，及びＳ２０〜Ｓ２２の処理を行うことができる。
【０１０５】
また、上記実施形態においては、本発明の第１の情報処理装置としてルータＲｍを例にとって説明したがこれに限定されるものではなく、第１の情報処理装置はネットワークＮＷに接続されているサーバ等であってもよい。また、第１の情報処理装置は、基本的にネットワークＮＷに定常的に接続されているゲートウェイ等の機器であっても良い。
【０１０６】
また、上記実施形態においては、拠点としてカラオケ店舗を例にとって説明したが、この他にも、この拠点は学校、会社、その他の施設であってもよい。例えば、拠点が学校であった場合、メインコンテンツの例としては、教室内に設置された拠点端末で利用される教材用のデータが挙げられる。また、例えば、拠点が会社であった場合、メインコンテンツの例としては、会社の室内に設置された拠点端末で利用される研修用のデータが挙げられる。
【０１０７】
また、上記実施形態においては、オーバーレイネットワークＯＮに、ＤＨＴを利用したピアツーピアネットワークを適用したが、これに限られるものではない。例えば、他のオーバーレイネットワークを用いたシステムが適用されてもよい。ＤＨＴを利用しないピアツーピアシステムとしては、例えば、ハイブリッド型のピアツーピアシステムがある。
【符号の説明】
【０１０８】
１，１１，２１，３１  制御部
２，１２，２２，３２  記憶部
３，１３，２３ａ，２３ｂ，３９  通信部
３３  バッファメモリ
ＷＳ  Ｗｅｂサーバ
ＭＳ  管理サーバ
ＤＳ  投入サーバ
Ｎｎ  ノード
ＮＷ  ネットワーク
ＯＮ  オーバーレイネットワーク
Ｓ  コンテンツ配信システム
【図１】
0005338774.tif 000002
【図２】
0005338774.tif 000003
【図３】
0005338774.tif 000004