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