(57)【要約】【課題】  コンテンツ受信端末間におけるコンテンツの再配信を効率的に行う。【解決手段】  コンテンツ受信端末３ａがコンテンツ配信サーバに対してコンテンツの配信要求を行う。コンテンツ配信サーバ２は、複数のコンテンツ受信端末から配信要求のあったコンテンツを蓄積しているコンテンツ受信端末３ｂ、３ｄを探し出す。そして、コンテンツ配信サーバ２は、コンテンツ受信端末３ａとコンテンツ受信端末３ｂ、３ｄとの間のルータの経由数を検出し、ルータの経由数が少ない方のコンテンツ受信端末３ｂを最適配信端末とし、コンテンツ受信端末３ｂをコンテンツ受信端末３ａに通知する。コンテンツ受信端末３ａはコンテンツ受信端末３ｂからコンテンツ受信端末３ａへコンテンツの再配信が行われる。【選択図】    図２
2006285387.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツを蓄積する複数のコンテンツ受信端末にネットワークを介して接続されたコンテンツ配信サーバにおいて、
各前記コンテンツ受信端末についてコンテンツ受信端末を示す端末情報と当該コンテンツ受信端末のネットワークに接続される設置位置を示す設置位置情報とを対応付けて記憶する端末情報記憶手段と、
コンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とを対応付けて記憶する蓄積端末情報記憶手段と、
前記コンテンツ受信端末から受信するコンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記蓄積端末情報記憶手段に記憶されている各端末情報を取り出す蓄積端末取出手段と、
前記蓄積端末取出手段により取り出された端末情報の夫々について端末情報に対応付けて前記端末情報記憶手段に記憶されている設置位置情報を取り出す設置位置情報取出手段と、
前記配信要求を行ったコンテンツ受信端末の設置位置情報と前記設置位置情報取出手段により取り出される各前記設置位置情報とを利用して、前記蓄積端末取出手段により端末情報が取り出されたコンテンツ受信端末の中から前記配信要求を行ったコンテンツ受信端末の設置位置に対して最短の設置位置にあるコンテンツ受信端末を検出して最適配信端末とする最適配信端末検出手段と、
前記最適配信端末検出手段により最適配信端末として検出されるコンテンツ受信端末の端末情報を前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信する端末情報送信手段と、
を備えたことを特徴とするコンテンツ配信サーバ。
【請求項２】
前記端末情報記憶手段は、前記コンテンツ受信端末を示す端末情報に当該コンテンツ受信端末が接続されているネットワークの回線速度を対応づけてさらに記憶しており、
前記最適配信端末検出手段は、検出したコンテンツ受信端末の数が複数の場合検出した複数の各コンテンツ受信端末について当該コンテンツ受信端末の端末情報に対応付けて前記端末情報記憶手段に記憶されている回線速度を取り出し、取り出した回線速度が最大のコンテンツ受信端末を最適配信端末とすることを特徴とする請求項１に記載のコンテンツ配信サーバ。
【請求項３】
前記蓄積端末情報記憶手段は、さらにコンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とに対応付けて当該コンテンツ受信端末がコンテンツの送受信中であるか否かを示す配信状態情報を記憶しており、
前記蓄積端末取出手段により取り出された端末情報の夫々について前記蓄積端末情報記憶手段に記憶されている配信状態情報がコンテンツの送受信中でないことを示しているか否かを判断する配信状態判断手段をさらに備え、
前記最適配信端末検出手段は、前記配信状態判断手段により前記配信状態情報がコンテンツの送受信中でないことを示していると判断された端末情報のコンテンツ受信端末を検出対象とすることを特徴とする請求項１または請求項２に記載のコンテンツ配信サーバ。
【請求項４】
前記蓄積端末情報記憶手段は、さらにコンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とに対応付けて当該コンテンツ受信端末に蓄積されている当該コンテンツの利用が可能か否かを示す利用可否情報を記憶しており、
前記蓄積端末取出手段により取り出された端末情報の夫々について前記蓄積端末情報記憶手段に記憶されている利用可否情報がコンテンツの利用が可能であることを示しているか否かを判断する利用可否判断手段をさらに備え、
前記最適配信端末検出手段は、前記利用可否判断手段により前記利用可否情報がコンテンツの利用が可能であることを示していると判断された端末情報のコンテンツ受信端末を検出対象とすることを特徴とする請求項１から請求項３の何れか１項に記載のコンテンツ配信サーバ。
【請求項５】
前記端末情報送信手段は、前記最適配信端末検出手段により複数のコンテンツ受信端末が最適配信端末とされた場合最適配信端末とされた全てのコンテンツ受信端末の端末情報を送信することを特徴とする請求項１から請求項４の何れか１項に記載のコンテンツ配信サーバ。
【請求項６】
コンテンツを識別するためのコンテンツ識別情報と当該コンテンツとを対応付けて記憶するコンテンツ記憶手段と、
前記コンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて記憶されている端末情報が前記蓄積端末情報記憶手段にない場合に、当該コンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記コンテンツ記憶手段に記憶されているコンテンツを取り出すコンテンツ取出手段と、
前記コンテンツ取出手段により取り出されたコンテンツを前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信するコンテンツ送信手段と、
をさらに備えたことを特徴とする請求項１から請求項５の何れか１項に記載のコンテンツ配信サーバ。
【請求項７】
前記コンテンツ受信端末が蓄積するコンテンツは暗号化されたものであって、
コンテンツを識別するためのコンテンツ識別情報と当該コンテンツが暗号化された暗号化コンテンツを復号するための復号鍵とを対応付けて記憶する復号鍵記憶手段と、
前記コンテンツ受信端末から受信する復号鍵要求に含まれるコンテンツ識別情報に対応付けて前記復号鍵記憶手段に記憶されている復号鍵を取り出す復号鍵取出手段と、
前記復号鍵取出手段により取り出された復号鍵を前記復号鍵要求を行ったコンテンツ受信端末に対して送信する復号鍵送信手段と、
をさらに備えたことを特徴とする請求項１から請求項６の何れか１項に記載のコンテンツ配信サーバ。
【請求項８】
コンテンツを蓄積する複数のコンテンツ受信端末にネットワークを介して接続されたコンテンツ配信サーバによって行われるコンテンツ配信方法において、
コンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とを対応付けて記憶する蓄積端末情報記憶手段を照会して、前記コンテンツ受信端末から受信するコンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記蓄積端末情報記憶手段に記憶されている各端末情報を取り出す蓄積端末取出手順と、
各前記コンテンツ受信端末についてコンテンツ受信端末を示す端末情報と当該コンテンツ受信端末のネットワークに接続される設置位置を示す設置位置情報とを対応付けて記憶する端末情報記憶手段を照会して、前記蓄積端末取出手順において取り出された端末情報の夫々について端末情報に対応付けて前記端末情報記憶手段に記憶されている設置位置情報を取り出す設置位置情報取出手順と、
前記配信要求を行ったコンテンツ受信端末の設置位置情報と前記設置位置情報取出手順において取り出された各前記設置位置情報とを利用して、前記蓄積端末取出手順において端末情報が取り出されたコンテンツ受信端末の中から前記配信要求を行ったコンテンツ受信端末の設置位置に対して最短の設置位置にあるコンテンツ受信端末を検出して最適配信端末とする最適配信端末検出手順と、
前記最適配信端末検出手順において最適配信端末として検出されたコンテンツ受信端末の端末情報を前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信する端末情報送信手順と、
を有することを特徴とするコンテンツ配信方法。
【請求項９】
コンテンツを蓄積する複数のコンテンツ受信端末にネットワークを介して接続されたコンテンツ配信サーバとしてのコンピュータに、
コンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とを対応付けて記憶する蓄積端末情報記憶手段を照会して、前記コンテンツ受信端末から受信するコンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記蓄積端末情報記憶手段に記憶されている各端末情報を取り出す蓄積端末取出手順と、
各前記コンテンツ受信端末についてコンテンツ受信端末を示す端末情報と当該コンテンツ受信端末のネットワークに接続される設置位置を示す設置位置情報とを対応付けて記憶する端末情報記憶手段を照会して、前記蓄積端末取出手順において取り出された端末情報の夫々について端末情報に対応付けて前記端末情報記憶手段に記憶されている設置位置情報を取り出す設置位置情報取出手順と、
前記配信要求を行ったコンテンツ受信端末の設置位置情報と前記設置位置情報取出手順において取り出された各前記設置位置情報とを利用して、前記蓄積端末取出手順において端末情報が取り出されたコンテンツ受信端末の中から前記配信要求を行ったコンテンツ受信端末の設置位置に対して最短の設置位置にあるコンテンツ受信端末を検出して最適配信端末とする最適配信端末検出手順と、
前記最適配信端末検出手順において最適配信端末として検出されたコンテンツ受信端末の端末情報を前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信する端末情報送信手順と、
を実行させることを特徴とするコンテンツ配信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツの配信要求を行ったコンテンツ受信端末に対して当該コンテンツを蓄積しているコンテンツ受信端末を通知するコンテンツ配信サーバ、コンテンツ配信方法、およびコンテンツ配信プログラムに関する。
【背景技術】
【０００２】
コンテンツの配信要求を行ったコンテンツ受信端末に対してコンテンツを配信する形態として、コンテンツ配信サーバから配信要求元のコンテンツ受信端末に対してコンテンツを配信する形態、コンテンツ受信端末間においてコンテンツを再配信する形態などが実用化され或いは提案されている。
【０００３】
例えば、コンテンツを蓄積しているコンテンツ受信端末の情報を保持するコンテンツ配信サーバがネットワーク上に存在し、コンテンツ配信サーバは配信要求されたコンテンツを蓄積しているコンテンツ受信端末の検索を行う。そして、コンテンツ配信サーバは、コンテンツの配信要求元のコンテンツ受信端末に対して、検索の結果見つかったコンテンツ受信端末を通知する。そして、配信要求元のコンテンツ受信端末は、通知されたコンテンツ受信端末に対してコンテンツの配信要求を行い、これにより配信要求元のコンテンツ受信端末にコンテンツが配信される。
【特許文献１】特表２００４−５０２９８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のコンテンツ配信システムにおいて、コンテンツ配信サーバはコンテンツを蓄積しているコンテンツ受信端末の情報を保持しているが、コンテンツ受信端末のネットワーク上の位置の情報やコンテンツ受信端末の配信状態の情報（例えば、待機中、配信中）などを保持していなかった。このため、配信要求元のコンテンツ受信端末はネットワーク上の最も配信に適したコンテンツ受信端末からコンテンツの再配信を受けるといった効率的なコンテンツの再配信を行うことができなかった。
【０００５】
そこで、本発明は、コンテンツ受信端末間におけるコンテンツの再配信を効率的に行うことを可能にするコンテンツ配信サーバ、コンテンツ配信方法、およびコンテンツ配信プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のコンテンツ配信サーバは、コンテンツを蓄積する複数のコンテンツ受信端末にネットワークを介して接続されたコンテンツ配信サーバにおいて、各前記コンテンツ受信端末についてコンテンツ受信端末を示す端末情報と当該コンテンツ受信端末のネットワークに接続される設置位置を示す設置位置情報とを対応付けて記憶する端末情報記憶手段と、コンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とを対応付けて記憶する蓄積端末情報記憶手段と、前記コンテンツ受信端末から受信するコンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記蓄積端末情報記憶手段に記憶されている各端末情報を取り出す蓄積端末取出手段と、前記蓄積端末取出手段により取り出された端末情報の夫々について端末情報に対応付けて前記端末情報記憶手段に記憶されている設置位置情報を取り出す設置位置情報取出手段と、前記配信要求を行ったコンテンツ受信端末の設置位置情報と前記設置位置情報取出手段により取り出される各前記設置位置情報とを利用して、前記蓄積端末取出手段により端末情報が取り出されたコンテンツ受信端末の中から前記配信要求を行ったコンテンツ受信端末の設置位置に対して最短の設置位置にあるコンテンツ受信端末を検出して最適配信端末とする最適配信端末検出手段と、前記最適配信端末検出手段により最適配信端末として検出されるコンテンツ受信端末の端末情報を前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信する端末情報送信手段と、を備えたものである。
【０００７】
上記コンテンツ配信サーバにおいて、前記端末情報記憶手段は、前記コンテンツ受信端末を示す端末情報に当該コンテンツ受信端末が接続されているネットワークの回線速度を対応づけてさらに記憶しており、前記最適配信端末検出手段は、検出したコンテンツ受信端末の数が複数の場合検出した複数の各コンテンツ受信端末について当該コンテンツ受信端末の端末情報に対応付けて前記端末情報記憶手段に記憶されている回線速度を取り出し、取り出した回線速度が最大のコンテンツ受信端末を最適配信端末とするものである。
【０００８】
上記コンテンツ配信サーバにおいて、前記蓄積端末情報記憶手段は、さらにコンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とに対応付けて当該コンテンツ受信端末がコンテンツの送受信中であるか否かを示す配信状態情報を記憶しており、前記蓄積端末取出手段により取り出された端末情報の夫々について前記蓄積端末情報記憶手段に記憶されている配信状態情報がコンテンツの送受信中でないことを示しているか否かを判断する配信状態判断手段をさらに備え、前記最適配信端末検出手段は、前記配信状態判断手段により前記配信状態情報がコンテンツの送受信中でないことを示していると判断された端末情報のコンテンツ受信端末を検出対象とするものである。
【０００９】
上記コンテンツ配信サーバにおいて、前記蓄積端末情報記憶手段は、さらにコンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とに対応付けて当該コンテンツ受信端末に蓄積されている当該コンテンツの利用が可能か否かを示す利用可否情報を記憶しており、前記蓄積端末取出手段により取り出された端末情報の夫々について前記蓄積端末情報記憶手段に記憶されている利用可否情報がコンテンツの利用が可能であることを示しているか否かを判断する利用可否判断手段をさらに備え、前記最適配信端末検出手段は、前記利用可否判断手段により前記利用可否情報がコンテンツの利用が可能であることを示していると判断された端末情報のコンテンツ受信端末を検出対象とするものである。
【００１０】
上記コンテンツ配信サーバにおいて、前記端末情報送信手段は、前記最適配信端末検出手段により複数のコンテンツ受信端末が最適配信端末とされた場合最適配信端末とされた全てのコンテンツ受信端末の端末情報を送信するものである。
【００１１】
上記コンテンツ配信サーバにおいて、コンテンツを識別するためのコンテンツ識別情報と当該コンテンツとを対応付けて記憶するコンテンツ記憶手段と、前記コンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて記憶されている端末情報が前記蓄積端末情報記憶手段にない場合に、当該コンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記コンテンツ記憶手段に記憶されているコンテンツを取り出すコンテンツ取出手段と、前記コンテンツ取出手段により取り出されたコンテンツを前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信するコンテンツ送信手段と、をさらに備えたものである。
【００１２】
上記コンテンツ配信サーバにおいて、前記コンテンツ受信端末が蓄積するコンテンツは暗号化されたものであって、コンテンツを識別するためのコンテンツ識別情報と当該コンテンツが暗号化された暗号化コンテンツを復号するための復号鍵とを対応付けて記憶する復号鍵記憶手段と、前記コンテンツ受信端末から受信する復号鍵要求に含まれるコンテンツ識別情報に対応付けて前記復号鍵記憶手段に記憶されている復号鍵を取り出す復号鍵取出手段と、前記復号鍵取出手段により取り出された復号鍵を前記復号鍵要求を行ったコンテンツ受信端末に対して送信する復号鍵送信手段と、をさらに備えたものである。
【００１３】
本発明のコンテンツ配信方法は、コンテンツを蓄積する複数のコンテンツ受信端末にネットワークを介して接続されたコンテンツ配信サーバによって行われるコンテンツ配信方法において、コンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とを対応付けて記憶する蓄積端末情報記憶手段を照会して、前記コンテンツ受信端末から受信するコンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記蓄積端末情報記憶手段に記憶されている各端末情報を取り出す蓄積端末取出手順と、各前記コンテンツ受信端末についてコンテンツ受信端末を示す端末情報と当該コンテンツ受信端末のネットワークに接続される設置位置を示す設置位置情報とを対応付けて記憶する端末情報記憶手段を照会して、前記蓄積端末取出手順において取り出された端末情報の夫々について端末情報に対応付けて前記端末情報記憶手段に記憶されている設置位置情報を取り出す設置位置情報取出手順と、前記配信要求を行ったコンテンツ受信端末の設置位置情報と前記設置位置情報取出手順において取り出された各前記設置位置情報とを利用して、前記蓄積端末取出手順において端末情報が取り出されたコンテンツ受信端末の中から前記配信要求を行ったコンテンツ受信端末の設置位置に対して最短の設置位置にあるコンテンツ受信端末を検出して最適配信端末とする最適配信端末検出手順と、前記最適配信端末検出手順において最適配信端末として検出されたコンテンツ受信端末の端末情報を前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信する端末情報送信手順と、を有するものである。
【００１４】
本発明のコンテンツ配信プログラムは、コンテンツを蓄積する複数のコンテンツ受信端末にネットワークを介して接続されたコンテンツ配信サーバとしてのコンピュータに、コンテンツを識別するためのコンテンツ識別情報と当該コンテンツを蓄積しているコンテンツ受信端末を示す端末情報とを対応付けて記憶する蓄積端末情報記憶手段を照会して、前記コンテンツ受信端末から受信するコンテンツの配信要求に含まれるコンテンツ識別情報に対応付けて前記蓄積端末情報記憶手段に記憶されている各端末情報を取り出す蓄積端末取出手順と、各前記コンテンツ受信端末についてコンテンツ受信端末を示す端末情報と当該コンテンツ受信端末のネットワークに接続される設置位置を示す設置位置情報とを対応付けて記憶する端末情報記憶手段を照会して、前記蓄積端末取出手順において取り出された端末情報の夫々について端末情報に対応付けて前記端末情報記憶手段に記憶されている設置位置情報を取り出す設置位置情報取出手順と、前記配信要求を行ったコンテンツ受信端末の設置位置情報と前記設置位置情報取出手順において取り出された各前記設置位置情報とを利用して、前記蓄積端末取出手順において端末情報が取り出されたコンテンツ受信端末の中から前記配信要求を行ったコンテンツ受信端末の設置位置に対して最短の設置位置にあるコンテンツ受信端末を検出して最適配信端末とする最適配信端末検出手順と、前記最適配信端末検出手順において最適配信端末として検出されたコンテンツ受信端末の端末情報を前記コンテンツの配信要求を行ったコンテンツ受信端末に対して送信する端末情報送信手順と、を実行させるものである。
【発明の効果】
【００１５】
本発明によれば、コンテンツ受信端末の夫々のネットワークに接続されている設置位置を記憶し、配信要求を行ったコンテンツ受信端末の設置位置と配信要求のあったコンテンツを蓄積している各コンテンツ受信端末の設置位置とを利用して、配信要求のあったコンテンツを蓄積している複数のコンテンツ受信端末の中から配信要求を行ったコンテンツ受信端末に通知するコンテンツ受信端末を決定するため、コンテンツ受信端末間におけるコンテンツの再配信を効率的に行うことが可能になる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の好適な実施の形態について図面を参照しつつ説明する。
まず、本発明の実施の形態におけるコンテンツ配信システムのシステム構成について図１を参照しつつ説明する。図１は本実施の形態におけるコンテンツ配信システムのシステム構成図である。ただし、本実施の形態においては、設置位置情報としてコンテンツ受信端末が接続されているルータのルータ名とし、コンテンツ受信端末に対して最短のコンテンツ受信端末はデータ通信の際に経由するルータの数が最も少ないものとする。なお、設置位置情報として設置されている住所（設置場所）として、コンテンツ受信端末に対して最短のコンテンツ受信端末は設置場所間の実際の距離が最も近いものとする、など様々な形態が考えられる。
【００１７】
図１に示すコンテンツ配信システム１は、コンテンツ配信サーバ２と複数のコンテンツ受信端末（図においては４台のコンテンツ受信端末３ａ、３ｂ、３ｃ、３ｄのみ図示）とを有している。コンテンツ配信サーバ２とコンテンツ受信端末３ａ〜３ｄとは、夫々、ネットワーク４に接続されており、これにより、コンテンツ配信サーバ２とコンテンツ受信端末３ａ〜３ｄとの間のデータ送受信、コンテンツ受信端末３ａ〜３ｄ間のデータ送受信が行われる。
【００１８】
次に、図１のネットワークの構成例について図２を参照しつつ説明する。図２はネットワークの構成例を示す図である。
図２に示すように、ネットワーク４は複数のネットワーク構成機器であるルータ（図においては９台のルータ４ａ〜４ｉのみ図示）によって構成されている。図２に示すネットワークの構成例において、コンテンツ受信端末３ａとコンテンツ受信端末３ｂとの間のルータの経由数は３（ルータ４ｄ、４ｂ、４ｆ）である。また、コンテンツ受信端末３ａとコンテンツ受信端末３ｄとの間のルータの経由数は５（ルータ４ｄ、４ｂ、４ａ、４ｃ、４ｉ）である。
【００１９】
ここで、コンテンツ配信システム１におけるコンテンツの再配信（コンテンツ受信端末から他のコンテンツ受信端末へのコンテンツの配信）の概要について図１および図２を利用して説明する。
【００２０】
一の例として、コンテンツ受信端末３ａがコンテンツの配信を要求するものとし、この要求されたコンテンツを蓄積しているコンテンツ受信端末としてコンテンツ受信端末３ｂ、３ｄとがあるものとする。なお、コンテンツ受信端末３ｂ、３ｄはともに配信可能である（他のコンテンツ受信端末との間でコンテンツの再配信をしておらず、コンテンツの保持期間を経過していない）とする。
【００２１】
コンテンツ受信端末３ａがコンテンツ配信サーバに対してコンテンツの配信要求を行う。コンテンツ配信サーバ２は、複数のコンテンツ受信端末から配信要求のあったコンテンツを蓄積しているコンテンツ受信端末３ｂ、３ｄを探し出す。そして、コンテンツ受信端末３ｂ、３ｄはコンテンツを配信可能であり、配信要求のあったコンテンツを蓄積しているコンテンツ受信端末が２台あるので、コンテンツ配信サーバ２は、コンテンツ受信端末３ａとコンテンツ受信端末３ｂとの間のルータの経由数「３」を検出し、コンテンツ受信端末３ａとコンテンツ受信端末３ｄとの間のルータの経由数「５」を検出する。そして、コンテンツ配信サーバ２は、ルータの経由数が少ない方のコンテンツ受信端末３ｂを最適配信端末とし、コンテンツ受信端末３ｂをコンテンツ受信端末３ａに通知する。コンテンツ受信端末３ａはコンテンツ配信サーバ２から通知されたコンテンツ受信端末３ｂに対してコンテンツの配信要求を行い、コンテンツ受信端末３ｂからコンテンツ受信端末３ａへコンテンツの再配信が行われる。
【００２２】
他の例として、コンテンツ受信端末３ａがコンテンツの配信を要求するものとし、この要求されたコンテンツを蓄積しているコンテンツ受信端末としてコンテンツ受信端末３ｂ、３ｃとがあり、コンテンツ受信端末３ｂの回線速度がコンテンツ受信端末３ｃの回線速度より速いものとする。なお、コンテンツ受信端末３ｂ、３ｃはともに配信可能であるとする。
【００２３】
コンテンツ受信端末３ａがコンテンツ配信サーバに対してコンテンツの配信要求を行う。コンテンツ配信サーバ２は、複数のコンテンツ受信端末から配信要求のあったコンテンツを蓄積しているコンテンツ受信端末３ｂ、３ｃを探し出す。そして、コンテンツ受信端末３ｂ、３ｃはコンテンツを配信可能であり、配信要求のあったコンテンツを蓄積しているコンテンツ受信端末が２台あるので、コンテンツ配信サーバ２は、コンテンツ受信端末３ａとコンテンツ受信端末３ｂとの間のルータの経由数「３」を検出し、コンテンツ受信端末３ａとコンテンツ受信端末３ｃとの間のルータの経由数「３」を検出し、ルータの経由数が同じである。さらに、コンテンツ配信サーバ２は、コンテンツ受信端末３ｂとコンテンツ受信端末３ｃとの回線速度を比較し、回線速度の速いコンテンツ受信端末３ｂを最適配信端末とし、コンテンツ受信端末３ａに通知する。コンテンツ受信端末３ａはコンテンツ配信サーバ２から通知されたコンテンツ受信端末３ｂに対してコンテンツの配信要求を行い、コンテンツ受信端末３ｂからコンテンツ受信端末３ａへコンテンツの再配信が行われる。
【００２４】
なお、コンテンツ受信端末３ａがコンテンツ配信サーバ２に対して配信要求をしたコンテンツを蓄積しているコンテンツ受信端末がない場合にはコンテンツ配信サーバ２がコンテンツ受信端末３ａへコンテンツの配信を行う。
【００２５】
次に、図１および図２に示したコンテンツ配信システム１を構成するコンテンツ配信サーバ２の機能構成について図３を参照しつつ説明する。図３はコンテンツ配信サーバ２の機能構成を示す機能ブロック図である。
図３に示すコンテンツ配信サーバ２は、コンテンツ記憶部２０１、ネットワーク構成記憶部２０２、端末情報記憶部２０３、蓄積端末情報記憶部２０４、配信要求受信部２０５、蓄積端末情報削除部２０６、蓄積端末情報取出部（蓄積端末取出手段）２０７、配信状態判断部２０８、利用可否判断部２０９、最適配信端末検出部２１０、端末情報送信部２１１、コンテンツ取出部２１２、コンテンツ送信部２１３、再配信情報受信部２１４、第１配信状態変更部２１５、再配信完了情報受信部２１６、第２配信状態変更部２１７、および蓄積端末情報追加部２１８として機能する各部を有している。
【００２６】
コンテンツ記憶部２０１は、コンテンツに一意に割り振られたコンテンツを識別するためのコンテンツ識別情報（コンテンツＩＤ）に対応付けてコンテンツを記憶する記憶装置である。
ネットワーク構成記憶部２０２は、例えば図２に概略を示すネットワークの構成、つまり、ネットワークを構成するルータの接続関係を記憶する記憶装置である。
【００２７】
端末情報記憶部２０３は、コンテンツ受信端末毎にコンテンツ受信端末の端末位置情報としてのＩＰアドレス（端末情報に相当）、コンテンツ受信端末が接続されているルータのルータ名（設置位置情報に相当）、コンテンツ受信端末が接続されている回線の回線速度を記憶する記憶装置である。その一例が図４に示されている。
図４は図３の端末情報記憶部２０３の記憶内容の一例を示す図である。図４に一例を示す端末情報記憶部２０３のテーブルには、フィールドとして「端末ＩＤ」、「端末位置情報」、「接続ルータ名」、および「回線速度」がある。
フィールド「端末ＩＤ」には、コンテンツ受信端末に一意に払い出されたコンテンツ受信端末を識別するための端末識別子（端末ＩＤ）が格納される。フィールド「端末位置情報」には、対応するフィールド「端末ＩＤ」のコンテンツ受信端末のＩＰアドレスが格納される。フィールド「接続ルータ名」には、対応するフィールド「端末ＩＤ」のコンテンツ受信端末が接続されているルータのルータ名が格納される。フィールド「回線速度」には、対応するフィールド「端末ＩＤ」のコンテンツ受信端末が接続されている回線の回線速度が格納される。
なお、コンテンツ配信サーバ２がコンテンツ受信端末３ａ〜３ｄから登録情報（ＩＰアドレス、ルータ名、回線速度）を受信した場合に、端末ＩＤが払いだされ、払い出された端末ＩＤと受信した登録情報（ＩＰアドレス、ルータ名、回線速度）とが端末情報記憶部２０３に格納される。
【００２８】
蓄積端末情報記憶部２０４は、コンテンツを蓄積しているコンテンツ受信端末の端末位置情報としてのＩＰアドレス（端末情報に相当）、コンテンツ受信端末がコンテンツを蓄積している期間を示すコンテンツ保持期間（コンテンツ保持期間内のみコンテンツの利用が可能；利用可否情報に相当）、コンテンツ受信端末がコンテンツの送受信中であるか否かを示す配信状態情報を記憶する記憶装置である。その一例が図５に示されている。
図５は図３の蓄積端末情報記憶部２０４の記憶内容の一例を示す図である。図５に一例を示すコンテンツ蓄積情報記憶部２０４のテーブルには、フィールドとして「コンテンツＩＤ」、「端末位置情報」、「コンテンツ保持期間」、および「配信状態」とがある。
フィールド「コンテンツＩＤ」には、コンテンツＩＤが格納される。フィールド「端末位置情報」には、対応するフィールド「コンテンツＩＤ」のコンテンツを蓄積しているコンテンツ受信端末のＩＰアドレスが格納される。フィールド「コンテンツ保持期間」には、対応するフィールド「端末位置情報」のコンテンツ受信端末が対応するフィールド「コンテンツＩＤ」のコンテンツを蓄積している最終年月日（コンテンツ保持期間）が格納される。フィールド「配信状態」には、対応するフィールド「端末位置情報」のコンテンツ受信端末がコンテンツの送受信中であるか否かを示す配信状態情報が格納され、格納される配信状態情報はコンテンツの送受信中であれば「配信中」、コンテンツの送受信中でなければ「待機中」である。
【００２９】
配信要求受信部２０５は、コンテンツ受信端末３ａ〜３ｄからコンテンツの配信要求を受信し、受信したコンテンツの配信要求を蓄積端末情報削除部２０６へ出力する。コンテンツ配信サーバ２がコンテンツ受信端末３ａ〜３ｄから受信するコンテンツの配信要求として、最初のコンテンツの配信要求、および２回目以降のコンテンツの配信要求（コンテンツ受信端末がＩＰアドレスが通知された他のコンテンツ受信端末からコンテンツのデータ全てを受信できなかった場合の配信要求）があり、両者のデータ構造は同じであるとする。
【００３０】
配信要求には、配信要求元のコンテンツ受信端末のＩＰアドレス（配信要求元ＩＰアドレス）、配信希望のコンテンツのコンテンツＩＤ、コンテンツの配信を受けることができなかったコンテンツ受信端末のＩＰアドレス（以下、不可ＩＰアドレスという。）、およびこれまでに蓄積できたコンテンツのデータサイズ（以下、蓄積データサイズという。）が含まれている。最初のコンテンツの配信要求の場合には不可ＩＰアドレスは「ブランク」になっている。また、最初のコンテンツの配信要求の場合には蓄積データサイズは「０」となっており、２回目以降のコンテンツの配信要求の場合であってもそれまでに全くコンテンツの蓄積ができなかった場合にも蓄積データサイズは「０」となる。
【００３１】
蓄積端末情報削除部２０６は、配信要求受信部２０５から入力されるコンテンツの配信要求に含まれる不可ＩＰアドレスが「ブランク」であるか否かを判断する。蓄積端末情報削除部２０６は、「ブランク」でなければ蓄積端末情報記憶部２０４内をＩＰアドレスをキーとしてコンテンツの配信要求に含まれる不可ＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致するレコードを検索し、検索の結果見つかったレコードに記憶されている情報を削除する。また、蓄積端末情報削除部２０６は、配信要求受信部２０５から入力されるコンテンツの配信要求に含まれる配信要求元ＩＰアドレス、コンテンツＩＤ、および蓄積データサイズを蓄積端末情報取出部２０７へ出力する。
【００３２】
蓄積端末情報取出部２０７は、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末を蓄積端末情報記憶部２０４内において検索し、検索の結果見つかったコンテンツ受信端末のＩＰアドレス、コンテンツ保持期間、および配信状態情報を蓄積端末情報記憶部２０４から取り出す。具体的には、蓄積端末情報取出部２０７は、蓄積端末情報記憶部２０４内をコンテンツＩＤをキーとして蓄積端末情報削除部２０６から入力されるコンテンツＩＤにフィールド「コンテンツＩＤ」の値が一致するレコードを検索する。そして、蓄積端末情報取出部２０７は、一致するレコードが見つかれば、検索の結果見つかった夫々のレコードからフィールド「端末位置情報」のＩＰアドレス、フィールド「コンテンツ保持期間」のコンテンツ保持期間、およびフィールド「配信状態」の配信状態情報を取り出す。なお、取り出したＩＰアドレスを蓄積済みＩＰアドレスという。そして、蓄積端末情報取出部２０７は、取り出した蓄積済みＩＰアドレス、コンテンツ保持期間、および配信状態情報の組、並びに蓄積端末情報削除部２０６から入力される配信要求元ＩＰアドレス、コンテンツＩＤ、および蓄積データサイズを配信状態判断部２０８へ出力する。一方、蓄積端末情報取出部２０７は、一致するレコードが見つからなければ、蓄積端末情報削除部２０６から入力されるコンテンツＩＤおよび蓄積データサイズをコンテンツ取出部２１２へ出力する。
【００３３】
配信状態判断部２０８は、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末の配信状態情報を確認し、そのコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末の中から配信状態情報の内容が「待機中」のコンテンツ受信端末をコンテンツの再配信元のコンテンツ受信端末の候補とするものである。具体的には、配信状態判断部２０８は、蓄積端末情報取出部２０７から入力される蓄積済みＩＰアドレス、コンテンツ保持期間、および配信状態情報の組の夫々について、配信状態情報が「待機中」であるか否かを判断する。そして、配信状態判断部２０８は、「待機中」のものがあれば、配信状態情報が「待機中」であった夫々の組の蓄積済みＩＰアドレス、およびコンテンツ保持期間の組、並びに、蓄積端末情報取出部２０７から入力される配信要求元ＩＰアドレス、コンテンツＩＤ、および蓄積データサイズを利用可否判断部２０９へ出力する。一方、配信状態判断部２０８は、「待機中」のものがなければ、蓄積端末情報取出部２０７から入力されるコンテンツＩＤおよび蓄積データサイズをコンテンツ取出部２１２へ出力する。
【００３４】
利用可否判断部２０９は、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している「待機中」のコンテンツ受信端末のコンテンツ保持期間を確認し、そのコンテンツＩＤのコンテンツを蓄積している「待機中」のコンテンツ受信端末の中からコンテンツ保持期間内のコンテンツ受信端末をコンテンツの再配信元のコンテンツ受信端末の候補とするものである。具体的には、利用可否判断部２０９は、配信状態判断部２０８から入力される蓄積済みＩＰアドレス、およびコンテンツ保持期間の組の夫々について、現在時刻がコンテンツ保持期間が示す最終年月日を経過していないか否か（保持期間内か否か）を判断する。そして、利用可否判断部２０９は、保持期間内のものが複数あれば、保持期間内であった夫々の組の蓄積済みＩＰアドレスを最適配信端末検出部２１０の端末情報取出部２１０ａへ出力する。また、利用可否判断部２０９は、保持期間内のものが１つのみであれば、保持期間内であった組の蓄積済みＩＰアドレスを端末情報送信部２１１へ出力する。さらに、利用可否判断部２０９は、保持期間内のものがなければ、配信状態判断部２０８から入力されるコンテンツＩＤおよび蓄積データサイズをコンテンツ取出部２１２へ出力する。
【００３５】
最適配信端末検出部２１０は、端末情報取出部２１０ａ、最小経由数端末特定部２１０ｂ、および最大回線速度端末特定部２１０ｃとして機能する各部を有している。
端末情報取出部２１０ａは配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している待機中の保持期間内のコンテンツ受信端末を端末情報記憶部２０３内において検索し、検索の結果見つかったコンテンツ受信端末が接続されているルータのルータ名、および接続されている回線の回線速度を端末情報記憶部２０３から取り出す。また、端末情報取出部２１０ａは配信要求を行ったコンテンツ受信端末が接続されているルータのルータ名を端末情報記憶部２０３から取り出す。具体的には、端末情報取出部２１０ａは、利用可否判断部２０９から入力される夫々の蓄積済みＩＰアドレスについて、端末情報記憶部２０３内をＩＰアドレスをキーとして蓄積済みＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致するレコードを検索し、検索の結果見つかったレコードのフィールド「接続ルータ名」のルータ名とフィールド「回線速度」の回線速度とを取り出す。端末情報取出部２１０ａは、蓄積済みＩＰアドレス、取り出したルータ名、および取り出した回線速度の組の夫々を最小経由数端末特定部２１０ｂへ出力する。また、端末情報取出部２１０ａは、利用可否判断部２０９から入力される配信要求元ＩＰアドレスについて、端末情報記憶部２０３内をＩＰアドレスをキーとして配信要求元ＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致するレコードを検索し、検索の結果見つかったレコードのフィールド「接続ルータ名」のルータ名を取り出す。端末情報取出部２１０ａは、配信要求元ＩＰアドレス、および取り出したルータ名の組を最小経由数端末特定部２１０ｂへ出力する。
【００３６】
最小経由数端末特定部２１０ｂは、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している待機中の保持期間内の各コンテンツ受信端末と、配信要求を行ったコンテンツ受信端末との間のデータ通信においてデータが経由するルータの数を検出する。そして、最小経由数端末特定部２１０ｂは、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している待機中の保持期間内のコンテンツ受信端末の中から、配信要求を行ったコンテンツ受信端末とルータの経由数が最小のコンテンツ受信端末を検出する。具体的には、最小経由数端末特定部２１０ｂは、端末情報取出部２１０ａから入力される蓄積済みＩＰアドレス、ルータ名、および回線速度の組の夫々について、組に含まれるルータ名のルータと、配信要求元ＩＰアドレスに対応したルータ名のルータとを利用し、ネットワーク構成記憶部２０２に記憶されているネットワークの構成から、蓄積済みＩＰアドレスのコンテンツ受信端末と配信要求元ＩＰアドレスのコンテンツ受信端末との間のルータの経由数を検出し、検出結果を基に経由数の最小のコンテンツ受信端末を特定する。最小経由数端末特定部２１０ｂは、経由数の最小のコンテンツ受信端末が１つであれば、最小のコンテンツ受信端末の蓄積済みＩＰアドレスを端末情報送信部２１１へ出力する。一方、最小経由数端末特定部２１０ｂは、経由数の最小のコンテンツ受信端末が複数あれば、経由数の最小のコンテンツ受信端末の蓄積済みＩＰアドレス、および回線速度の組の夫々を最大回線速度端末特定部２１０ｃへ出力する。
【００３７】
最大回線速度端末特定部２１０ｃは、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している待機中の保持期間内のコンテンツ受信端末のうちルータの経由数の最小のコンテンツ受信端末の中から、接続されている回線速度が最大のコンテンツ受信端末を検出する。具体的には、最大回線速度端末特定部２１０ｃは、最小経由数端末特定部２１０ｂから入力される蓄積済みＩＰアドレス、および回線速度の組の夫々を利用して、回線速度が最大の組に含まれる蓄積済みＩＰアドレス（１または複数）を端末情報送信部２１１へ出力する。
【００３８】
端末情報送信部２１１は、利用可否判断部２０９から入力される蓄積済みＩＰアドレス、最小経由数端末特定部２１０ｂから入力される蓄積済みＩＰアドレス、または最大回線速度端末特定部２１０ｃから入力される蓄積済みＩＰアドレス（１又は複数）をコンテンツの配信要求元のコンテンツ受信端末に対して送信する。
【００３９】
コンテンツ取出部２１２は、コンテンツ記憶部２０１内をコンテンツＩＤをキーとして配信要求のあったコンテンツＩＤ（蓄積端末情報取出部２０７から入力されるコンテンツＩＤ、配信状態判断部２０８から入力されるコンテンツＩＤ、利用可否判断部２０９から入力されるコンテンツＩＤ）にフィールド「コンテンツＩＤ」の値が一致するコンテンツを検索してコンテンツを取り出す。そして、コンテンツ取出部２１２は、取り出したコンテンツにおいて蓄積データサイズ（蓄積端末情報取出部２０７から入力される蓄積データサイズ、配信状態判断部２０８から入力される蓄積データサイズ、利用可否判断部２０９から入力される蓄積データサイズ）を利用してコンテンツの配信要求を行ったコンテンツ受信端末が蓄積済みでないコンテンツのデータをコンテンツ送信部２１３へ出力する。
【００４０】
コンテンツ送信部２１３は、コンテンツ取出部２１２から入力されるコンテンツのデータをコンテンツの配信要求元のコンテンツ受信端末に対して送信する。なお、コンテンツ送信部２１３は、コンテンツの送信完了後、送信したコンテンツのコンテンツＩＤおよびコンテンツの送信先のコンテンツ受信端末のＩＰアドレスを蓄積端末情報記憶部２０４のフィールド「コンテンツＩＤ」およびフィールド「端末位置情報」に新規に格納し、対応するフィールド「コンテンツ保持期間」に現在時刻に予め定められた期間を加算して得られる年月日（コンテンツ保持期間）を格納し、対応するフィールド「配信状態」に「待機中」を格納する。
【００４１】
再配信情報受信部２１４は、コンテンツ受信端末３ａ〜３ｄからコンテンツの再配信元のコンテンツ受信端末のＩＰアドレス（以下、再配信元ＩＰアドレスという。）を含む再配信情報を受信し、受信した再配信情報を第１配信状態変更部２１５へ出力する。
【００４２】
第１配信状態変更部２１５は、再配信情報受信部２１４から入力される再配信元ＩＰアドレスについて、蓄積端末情報記憶部２０４内をＩＰアドレスをキーとして再配信元ＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致するレコードを検索する。そして、第１配信状態変更部２１５は、検索の結果見つかった各レコードの「配信状態」を「待機中」から「配信中」に変更する。
【００４３】
再配信完了情報受信部２１６は、コンテンツ受信端末３ａ〜３ｄから再配信完了情報を受信し、受信した再配信完了情報を第２配信状態変更部２１７および蓄積端末情報追加２１８へ出力する。再配信完了情報には、再配信先のコンテンツ受信端末において蓄積されたコンテンツのコンテンツＩＤ（蓄積コンテンツＩＤ）、コンテンツの再配信先のコンテンツ受信端末のＩＰアドレス（以下、再配信先ＩＰアドレスという。）、コンテンツの再配信元のコンテンツ受信端末のＩＰアドレス（再配信元ＩＰアドレス）が含まれている。
【００４４】
第２配信状態変更部２１７は、再配信完了情報受信部２１６から入力される再配信元ＩＰアドレスについて、蓄積端末情報記憶部２０４内をＩＰアドレスをキーとして再配信元ＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致するレコードを検索する。そして、第２配信状態変更部２１７は、検索の結果見つかった各レコードの「配信状態」を「配信中」から「待機中」に変更する。
【００４５】
蓄積端末情報追加部２１８は、再配信完了情報受信部２１６から入力される蓄積コンテンツＩＤおよび再配信先ＩＰアドレスを蓄積端末情報記憶部２０４のフィールド「コンテンツＩＤ」およびフィールド「端末位置情報」に新規に格納する。そして、蓄積端末情報追加部２１８は、対応するフィールド「コンテンツ保持期間」に現在時刻に予め定められた期間を加算して得られる年月日（コンテンツ保持期間）を格納し、対応するフィールド「配信状態」に「待機中」を格納する。
【００４６】
次に、図１および図２に示したコンテンツ配信システム１を構成するコンテンツ受信端末３ａ〜３ｄの機能構成について図６を参照しつつ説明する。図６はコンテンツ受信端末３ａ〜３ｄの機能構成を示す機能ブロック図である。
図６に示すように、コンテンツ受信端末３ａ〜３ｄは、コンテンツ記憶部３０１、蓄積コンテンツ情報記憶部３０２、蓄積データサイズ記憶部３０３、コンテンツＩＤ入力部３０４、第１配信要求部３０５、配信コンテンツ受信部３０６、第１コンテンツ登録部３０７、端末情報受信部３０８、再配信要求部３０９、応答受信部３１０、再配信情報送信部３１１、再配信コンテンツ受信部３１２、第２コンテンツ登録部３１３、再配信監視部３１４、第２配信要求部３１５、再配信完了情報送信部３１６、再配信要求受信部３１７、再配信要求応答部３１８、コンテンツ取出部３１９、およびコンテンツ送信部３２０として機能する各部を有している。
【００４７】
コンテンツ記憶部３０１は、コンテンツＩＤに対応付けて当該コンテンツＩＤのコンテンツを記憶する記憶装置である。
蓄積コンテンツ情報記憶部３０２は、コンテンツ記憶部３０１に記憶されているコンテンツ毎にコンテンツＩＤに対応付けてこのコンテンツを保持している最終年月日を示すコンテンツ保持期間を記憶する記憶装置である。なお、コンテンツ保持期間は、コンテンツ配信サーバ２において新たにコンテンツを蓄積したコンテンツ受信端末の情報（ＩＰアドレスなど）が蓄積端末情報記憶部２０４に記憶された後にコンテンツ配信サーバ２からコンテンツ保持期間がコンテンツ受信端末３ａ〜３ｄに送信されることによって蓄積コンテンツ情報記憶部３０２に記憶される。
蓄積データサイズ記憶部３０３は、再配信されて受信するコンテンツの既に蓄積しているコンテンツのデータサイズ（蓄積データサイズ）を記憶する記憶装置である。
【００４８】
コンテンツＩＤ入力部３０４は、コンテンツ受信端末３ａ〜３ｄのユーザが希望するコンテンツのコンテンツＩＤを当該ユーザが入力する際に用いられる入力装置であり、必要に応じて各部へ入力されたコンテンツＩＤを出力する。
第１配信要求部３０５は、自コンテンツ受信端末のＩＰアドレス（配信要求元ＩＰアドレス）およびコンテンツＩＤ入力部３０４から入力されるコンテンツＩＤを含めたコンテンツの配信要求であって、不可ＩＰアドレスが「ブランク」で蓄積データサイズが「０」であるコンテンツの配信要求（最初の配信要求）を作成する。そして、第１配信要求部３０５は、作成したコンテンツの配信要求をコンテンツ配信サーバ２へ送信する。
【００４９】
配信コンテンツ受信部３０６は、コンテンツ配信サーバ２によって送信されるコンテンツＩＤとそのコンテンツを受信し、第１コンテンツ登録部３０７へ出力する。
第１コンテンツ登録部３０７は、配信コンテンツ受信部３０６から入力されるコンテンツを当該コンテンツのコンテンツＩＤに対応付けてコンテンツ記憶部３０１に格納する。
【００５０】
端末情報受信部３０８は、コンテンツ配信サーバ２の端末情報送信部２１１によって送信されるコンテンツの再配信元となるコンテンツ受信端末のＩＰアドレス（１又は複数）を受信し、受信したＩＰアドレスを再配信要求部３０９へ出力する。
再配信要求部３０９は、コンテンツＩＤ入力部３０４から入力されるコンテンツＩＤおよび蓄積データサイズ記憶部３０３に記憶されている蓄積データサイズを含む再配信要求を作成し、作成した再配信要求を端末情報受信部３０８から入力される夫々のＩＰアドレスのコンテンツ受信端末に対して送信する。
【００５１】
応答受信部３１０は、再配信要求を送信したコンテンツ受信端末から応答を受け、応答が配信を行わない旨を示す配信拒否応答であるか否かを判断し、応答が配信拒否応答でなければ応答（配信応答）をしてきたコンテンツ受信端末のＩＰアドレスを再配信情報送信部３１１へ出力する。応答受信部３１０は、配信拒否応答でない応答があった後は他のコンテンツ受信端末からの応答を受け付けずに当該他のコンテンツ受信端末からコンテンツを受信することを行わない。
【００５２】
再配信情報送信部３１１は、配信応答をしてきたコンテンツ受信端末（コンテンツの再配信元となるコンテンツ受信端末）のＩＰアドレス（再配信元ＩＰアドレス）を含めた再配信情報を作成し、作成した再配信情報をコンテンツ配信サーバ２に対して送信する。
【００５３】
再配信コンテンツ受信部３１２は、再配信元のコンテンツ受信端末によって送信されるコンテンツＩＤとそのコンテンツを受信し、第２コンテンツ登録部３１３へ出力する。
第２コンテンツ登録部３１３は、再配信コンテンツ受信部３１２から入力されるコンテンツを当該コンテンツのコンテンツＩＤに対応付けてコンテンツ記憶部３０１に格納し、コンテンツ記憶部３０１に記憶したコンテンツのデータサイズを蓄積データサイズ記憶部３０３に格納する。
【００５４】
再配信監視部３１４は、応答受信部３１０によって所定期間内にコンテンツ受信端末から再配信要求に対する応答を受信できなかった場合、配信拒否応答しか受信できなかった場合に第２配信要求部３１５にコンテンツ配信サーバ２に対して再度の配信要求を行うように第１再要求指示データを出力する。また、再配信監視部３１４は、再配信コンテンツ受信部３１２によってコンテンツを継続して受信することができなくなった場合、第２配信要求部３１５にコンテンツ配信サーバ２に対して再度の配信要求を行うように第２再要求指示データを出力する。なお、コンテンツの再配信元のコンテンツ受信端末がユーザの意図によりネットワークから切断された場合にはコンテンツ受信端末間でデータ通信が行えず、或いは、継続して行えなくなる。また、通信断などのネットワークの障害によりコンテンツ受信端末間でデータ通信が行えず、或いは、継続して行えなくなる。コンテンツの配信元のコンテンツ受信端末においてユーザの意図によりコンテンツ保持期間内にコンテンツが消去された場合にはコンテンツの配信先のコンテンツ受信端末はコンテンツを受信できない。
【００５５】
第２配信要求部３１５は、再配信監視部３１４から第１再要求指示データが入力されると、自コンテンツ受信端末のＩＰアドレス（配信要求元ＩＰアドレス）、コンテンツＩＤ入力部３０４から入力されるコンテンツＩＤ、蓄積データサイズ記憶部３０３に記憶されている蓄積データサイズを含めたコンテンツの配信要求であって、不可ＩＰアドレスが「ブランク」であるコンテンツの配信要求を作成する。そして、第２配信要求部３１５は、作成したコンテンツの配信要求をコンテンツ配信サーバ２へ送信する。ただし、配信要求に含まれる蓄積データサイズは、これまでにコンテンツの受信ができていない場合には「０」、これまでにコンテンツの一部を受信できている場合にはその一部のデータサイズになる。なお、後者は、例えば、最初の配信要求において一部のデータを入手できたが、２回目の配信要求では再配信要求に対して応答がなかった場合、３回目の配信要求では最初の配信要求において受信されたコンテンツのデータサイズになる。
【００５６】
第２配信要求部３１５は、再配信監視部３１４から第２再要求指示データが入力されると、自コンテンツ受信端末のＩＰアドレス（配信要求元ＩＰアドレス）、コンテンツＩＤ入力部３０４から入力されるコンテンツＩＤ、コンテンツの再配信元であったコンテンツ受信端末のＩＰアドレス（不可ＩＰアドレス）、蓄積データサイズ記憶部３０３に記憶されている蓄積データサイズを含めたコンテンツの配信要求を作成する。そして、第２配信要求部３１５は、作成したコンテンツの配信要求をコンテンツ配信サーバ２へ送信する。
【００５７】
再配信完了情報送信部３１６は、再配信元のコンテンツ受信端末から再配信コンテンツ受信部３１２によってコンテンツ全体のデータを受信すると、受信したコンテンツのコンテンツＩＤ（蓄積コンテンツＩＤ）、自コンテンツ受信端末のＩＰアドレス（再配信先ＩＰアドレス）、およびコンテンツの再配信元のコンテンツ受信端末のＩＰアドレス（再配信元ＩＰアドレス）を含む再配信完了情報を作成する。そして、再配信完了情報送信部３１６は作成した再配信完了情報をコンテンツ配信サーバ２に対して送信する。
【００５８】
再配信要求受信部３１７は、他のコンテンツ受信端末からコンテンツの再配信要求を受信し、再配信要求応答部３１８へ出力する。
再配信要求応答部３１８は、コンテンツ受信端末が他のコンテンツ受信端末との間でコンテンツの送受信を行っているか、再配信要求に含まれているコンテンツＩＤのコンテンツがコンテンツ記憶部３０１に記憶されているかを判断する。再配信要求応答部３１８は、コンテンツの送受信を行っている場合や要求されたコンテンツを記憶していない場合には配信拒否を示す配信拒否応答を行う。コンテンツの送受信を行っていない場合や要求されたコンテンツを記憶している場合には配信応答を行い、コンテンツ取出部３１９へ再配信要求に含まれるコンテンツＩＤおよび蓄積データサイズを出力する。
【００５９】
コンテンツ取出部３１９は、コンテンツ記憶部３０１内をコンテンツＩＤをキーとして再配信要求応答部３１８から入力されるコンテンツＩＤにフィールド「コンテンツＩＤ」の値が一致するコンテンツを検索してコンテンツを取り出す。そして、コンテンツ取出部３１９は、取り出したコンテンツにおいて配信要求に含まれる蓄積データサイズを利用して蓄積済みでないコンテンツのデータをコンテンツ送信部３２０へ出力する。
コンテンツ送信部３２０はコンテンツ取出部３１９から入力されるコンテンツのデータを再配信要求元のコンテンツ受信端末へ送信する。
【００６０】
次に、図１のコンテンツ配信サーバ２によって行われるコンテンツ配信処理について図７を参照しつつ説明する。図７はコンテンツ配信サーバ２によって行われるコンテンツ配信処理の流れを示すフローチャートである。ただし、図７はコンテンツの配信要求を受信してから配信要求元のコンテンツ受信端末に再配信元のコンテンツ受信端末を通知するまでの処理の流れを示している。
【００６１】
配信要求受信部２０５は、コンテンツ受信端末３ａ〜３ｄからコンテンツの配信要求を受信するのを待ち（ステップＳ１０１）、コンテンツの配信要求を受信すると、蓄積端末情報削除部２０６は、コンテンツの配信要求に含まれる不可ＩＰアドレスが「ブランク」であるか否かを判断し、「ブランク」でなければ蓄積端末情報記憶部２０４内をＩＰアドレスをキーとしてコンテンツの配信要求に含まれる不可ＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致するレコードを検索し、検索の結果見つかったレコードに記憶されている情報を削除する（ステップＳ１０２）。
【００６２】
蓄積端末情報取出部２０７は、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末を蓄積端末情報記憶部２０４内において検索する（ステップＳ１０３）。蓄積しているコンテンツ受信端末があれば（Ｓ１０３：ＹＥＳ）ステップＳ１０４の処理へ進み、蓄積しているコンテンツ受信端末がなければ（Ｓ１０３：ＮＯ）ステップＳ１０７の処理へ進む。
【００６３】
蓄積端末情報取出部２０７は、ステップＳ１０３における検索の結果見つけた配信要求されたコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末のＩＰアドレス、コンテンツ保持期間、および配信状態情報を、蓄積端末情報記憶部２０４内の配信要求に含まれるコンテンツＩＤにフィールド「コンテンツＩＤ」の値が一致するレコードのフィールド「端末位置情報」、「コンテンツ保持期間」、および「配信状態」から取り出す（ステップＳ１０４）。
【００６４】
配信状態判断部２０８は、配信要求されたコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末のステップＳ１０４において取り出された「配信状態」に格納されている情報を確認し、配信要求されたコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末の中に「配信状態」が「待機中」であるコンテンツ受信端末があるか否かを判断する（ステップＳ１０５）。「待機中」のコンテンツ受信端末があれば（Ｓ１０５：ＹＥＳ）ステップＳ１０６の処理へ進み、「待機中」のコンテンツ受信端末がなければ（Ｓ１０５：ＮＯ）ステップＳ１０７の処理へ進む。
【００６５】
利用可否判断部２０９は、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している「待機中」のコンテンツ受信端末のステップＳ１０４において取り出された「コンテンツ保持期間」に格納されている情報を確認し、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している「待機中」のコンテンツ受信端末の中に現在時刻がコンテンツ保持期間内であるコンテンツ受信端末があるか否かを判断する（ステップＳ１０６）。コンテンツ保持期間内のコンテンツ受信端末があれば（Ｓ１０６：ＹＥＳ）ステップＳ１０９の処理へ進み、コンテンツ保持期間内のコンテンツ受信端末がなければ（Ｓ１０６：ＮＯ）ステップＳ１０７の処理へ進む。
【００６６】
コンテンツ取出部２１２は、配信要求に含まれるコンテンツＩＤのコンテンツをコンテンツ記憶部３０１から取出し、配信要求に含まれた蓄積データサイズを利用して送信するコンテンツのデータの部分を特定し（ステップＳ１０７）、コンテンツ送信部２１３は配信要求元のコンテンツ受信端末に対して特定したコンテンツのデータ部分を送信する（ステップＳ１０８）。
【００６７】
利用可否判断部２０９は、配信要求されたコンテンツＩＤのコンテンツを蓄積している待機中でコンテンツ保持期間内のコンテンツ受信端末が１台であるか２台以上であるかを判断し（ステップＳ１０９）、1台であれば（Ｓ１０９：1台）ステップＳ１１０の処理へ進み、２台以上であれば（Ｓ１０９：２台以上）ステップＳ１１１処理へ進む。
【００６８】
端末情報送信部２１１は、配信要求されたコンテンツＩＤのコンテンツを蓄積している待機中でコンテンツ保持期間内のコンテンツ受信端末のＩＰアドレスをコンテンツの配信要求元のコンテンツ受信端末に対して送信する（ステップＳ１１０）。
【００６９】
最適配信端末検出部２１０の端末情報取出部２１０ａは、配信要求されたコンテンツＩＤのコンテンツを蓄積している待機中でコンテンツ保持期間内の各コンテンツ受信端末について、そのＩＰアドレスを基づいてそのコンテンツ受信端末が接続されているルータのルータ名、および接続されている回線の回線速度を端末情報記憶部２０３から取り出すとともに、コンテンツの配信要求を行ったコンテンツ受信端末について、そのＩＰアドレスを利用してそのコンテンツ受信端末が接続されているルータのルータ名を端末情報記憶部２０３から取り出す。最小経由数端末特定部２１０ｂは、端末情報取出部２１０ａによって取り出された配信要求されたコンテンツＩＤのコンテンツを蓄積している待機中でコンテンツ保持期間内の各コンテンツ受信端末が接続されているルータ名のルータと、コンテンツの配信要求を行ったコンテンツ受信端末接続されているルータ名のルータと、を利用して、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している待機中のコンテンツ保持期間内の各コンテンツ受信端末と、配信要求を行ったコンテンツ受信端末との間のデータ通信においてデータが経由するルータの数を検出する。そして、最小経由数端末特定部２１０ｂは、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している待機中の保持期間内のコンテンツ受信端末の中から、配信要求を行ったコンテンツ受信端末とルータの経由数が最小のコンテンツ受信端末を検出する（ステップＳ１１１）。
【００７０】
最小経由数端末特定部２１０ｂは、ステップＳ１１１において検出したルータの経由数が最小のコンテンツ受信端末が１台であるか否かを判断する（ステップＳ１１２）。ルータの経由数が最小のコンテンツ受信端末が１台であれば（Ｓ１１２：ＹＥＳ）ステップＳ１１３の処理へ進み、ルータの経由数が最小のコンテンツ受信端末が１台でなければ、すなわち複数であれば（Ｓ１１２：ＮＯ）ステップＳ１１４の処理へ進む。
【００７１】
端末情報送信部２１１は、配信要求されたコンテンツＩＤのコンテンツを蓄積している待機中でコンテンツ保持期間内のコンテンツ受信端末であってステップＳ１１１においてルータの経由数が最小であるコンテンツ受信端末のＩＰアドレスをコンテンツの配信要求元のコンテンツ受信端末に対して送信する（ステップＳ１１３）。
【００７２】
最大回線速度端末特定部２１０ｃは、配信要求に含まれるコンテンツＩＤのコンテンツを蓄積している待機中の保持期間内のコンテンツ受信端末のうちルータの経由数の最小のコンテンツ受信端末の中から、接続されている回線速度が最大のコンテンツ受信端末を検出する（ステップＳ１１４）。
端末情報送信部２１１は、配信要求されたコンテンツＩＤのコンテンツを蓄積している待機中でコンテンツ保持期間内のルータの経由数が最小のコンテンツ受信端末であってステップＳ１１４において回線速度が最大であるとして検出された全てのコンテンツ受信端末のＩＰアドレスをコンテンツの配信要求元のコンテンツ受信端末（１または複数）に対して送信する（ステップＳ１１５）。
【００７３】
次に、図１のコンテンツ受信端末３ａ〜３ｄによって行われるコンテンツ配信処理について図８を参照しつつ説明する。図８はコンテンツ受信端末３ａ〜３ｄによって行われるコンテンツ配信処理の流れを示すフローチャートである。図８はコンテンツの配信要求元及び再配信要求元のコンテンツ受信端末における処理の流れを示している。
【００７４】
第１配信要求部３０５は、自コンテンツ受信端末のＩＰアドレス、およびコンテンツＩＤ入力部３０４から入力されるコンテンツＩＤを含み、不可ＩＰアドレスが「ブランク」、蓄積データサイズが「０」であるコンテンツの配信要求を作成し、作成したコンテンツの配信要求を送信する（ステップＳ２０１）。その後、コンテンツ受信端末はコンテンツ配信サーバ２からコンテンツおよびコンテンツを蓄積しているコンテンツ受信端末のＩＰアドレスの何れかを受信するのを待ち、受信した情報がコンテンツであるか否かを判断する（ステップＳ２０２）。コンテンツ受信端末が配信コンテンツ受信部３０６によってコンテンツを受信している場合には（Ｓ２０２：ＹＥＳ）ステップＳ２０３の処理へ進み、第１コンテンツ登録部３０７は、配信コンテンツ受信部３０６によって受信されているコンテンツをそのコンテンツＩＤに対応付けてコンテンツ記憶部３０１に格納する（ステップＳ２０３）。一方、コンテンツ受信端末が端末情報受信部３０８によってコンテンツを蓄積しているコンテンツ受信端末のＩＰアドレスを受信した場合には（Ｓ２０２：ＮＯ）ステップＳ２０４の処理へ進む。
【００７５】
再配信要求部３０９は、コンテンツＩＤ入力部３０４から入力されるコンテンツＩＤおよび蓄積データサイズ記憶部３０３に記憶されている蓄積データサイズを含む再配信要求を作成し、作成した再配信要求を端末情報受信部３０８によって受信されたＩＰアドレスのコンテンツ受信端末（１または複数）に対して送信する（ステップＳ２０４）。なお、再配信要求を行った後に再配信要求先のコンテンツ受信端末から配信応答を受信すると、コンテンツ受信端末の再配信情報送信部３１１は、配信応答をしてきたコンテンツ受信端末のＩＰアドレス（再配信元ＩＰアドレス）を含む再配信情報を作成し、作成した再配信情報をコンテンツ配信サーバ２に対して送信する。
【００７６】
再配信監視部３１４は、再配信要求先のコンテンツ受信端末からコンテンツを受信することができない（再配信元のコンテンツ受信端末からの応答がない、再配信元のコンテンツ受信端末からの応答が配信拒否応答、ネットワークの問題による通信断、など）かを判断する（ステップＳ２０５）。再配信要求先のコンテンツ受信端末からコンテンツを受信することができない場合には（Ｓ２０５：ＹＥＳ）ステップＳ２０６の処理へ進み、再配信要求先のコンテンツ受信端末からコンテンツを受信することができる場合には（Ｓ２０５：ＮＯ）ステップＳ２０８の処理へ進む。
【００７７】
第２配信要求部３１５は、蓄積データサイズ記憶部３０３に記憶されている蓄積データサイズを取り出し（ステップＳ２０６）、取り出した蓄積データサイズ、およびコンテンツを送信する或いは送信していたコンテンツ受信端末のＩＰアドレスなどを含む上述したコンテンツの配信要求を作成し、作成したコンテンツの配信要求をコンテンツ配信サーバ２へ送信する（ステップＳ２０７）。
【００７８】
第２コンテンツ登録部３１３は、再配信コンテンツ受信部３１２によって受信されているコンテンツをそのコンテンツＩＤに対応付けてコンテンツ記憶部３０１に格納する（ステップＳ２０８）。
【００７９】
次に、図１のコンテンツ受信端末３ａ〜３ｄによって行われるコンテンツ配信処理について図９を参照しつつ説明する。図９はコンテンツ受信端末３ａ〜３ｄによって行われるコンテンツ配信処理の流れを示すフローチャートである。図９はコンテンツの再配信要求先のコンテンツ受信端末における処理の流れを示している。
【００８０】
再配信要求受信部３１７がコンテンツ受信端末からコンテンツの再配信要求を受信するのを待ち（ステップＳ３０１）、再配信要求受信部３１７が再配信要求を受信すると、再配信要求応答部３１８は、再配信が可能であるか（コンテンツ受信端末が他のコンテンツ受信端末との間でコンテンツの送受信を行っていないか、要求されたコンテンツを記憶しているか）を判断する（ステップＳ３０２）。再配信が可能でない場合には（Ｓ３０２：ＮＯ）再配信要求応答部３１８は配信拒否を示す応答を行う（ステップＳ３０３）。再配信が可能である場合には（Ｓ３０２：ＹＥＳ）再配信要求応答部３１８は配信応答を行う。コンテンツ取出部３１９は再配信要求に含まれるコンテンツＩＤを利用してコンテンツ記憶部３０１からコンテンツを取り出し、再配信要求に含まれる蓄積データサイズを利用して再配信するコンテンツのデータ部分を特定し、コンテンツ送信部３２０はその特定されたデータ部分のコンテンツを再配信要求元のコンテンツ受信端末へ送信する（ステップＳ３０４）。
【００８１】
次に、図１のコンテンツ配信システム１において行われるコンテンツの配信処理について図１０を参照しつつ説明する。図１０はコンテンツ配信システム１において行われるコンテンツの配信処理の流れの一例を示すシーケンス図である。
コンテンツ受信端末３ａの第１配信要求部３０５はコンテンツ配信サーバ２に対してコンテンツの配信要求を送信し、送信された配信要求はコンテンツ配信サーバ２の配信要求受信部２０５によって受信される（ステップＳ４０１）。コンテンツ配信サーバ２は上述した図７の処理を行って最適なコンテンツ受信端末３ｂを検出する（ステップＳ４０２）。コンテンツ配信サーバ２の端末情報送信部２１１は最適なコンテンツ受信端末３ｂのＩＰアドレスを配信要求元のコンテンツ受信端末３ａに対して送信し、送信されたコンテンツ受信端末３ｂのＩＰアドレスがコンテンツ受信端末３ａの端末情報受信部３０８によって受信される（ステップＳ４０３）。
【００８２】
コンテンツ受信端末３ａの再配信要求部３０９は再配信要求をステップＳ４０３において受信したＩＰアドレスのコンテンツ受信端末３ｂに対して送信し、送信された再配信要求がコンテンツ受信端末３ｂの再配信要求受信部３１７によって受信される（ステップＳ４０４）。コンテンツ受信端末３ｂの再配信要求応答部３１８は再配信要求に対する配信を行う応答（配信応答）を行い、コンテンツ受信端末３ａの応答受信部３１０は配信応答を受信する（ステップＳ４０５）。コンテンツ受信端末３ａの再配信情報送信部３１１はコンテンツ配信サーバ２に対して再配信元となるコンテンツ受信端末３ｂのＩＰアドレスを含む再配信情報を送信し、送信された再配信情報がコンテンツ配信サーバ２の再配信情報受信部２１４によって受信される（ステップＳ４０６）。コンテンツ配信サーバ２の第１配信状態変更部２１５は蓄積端末情報記憶部２０４に記憶されている再配信情報に含まれるコンテンツ受信端末３ｂのＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致する各レコードのフィールド「配信状態」を「待機中」から「配信中」に変更する。
【００８３】
コンテンツ受信端末３ｂのコンテンツ取出部３１９はコンテンツ記憶部３０１から再配信要求に含まれるコンテンツＩＤのコンテンツを取り出す。そして、コンテンツ送信部３２０は取り出したコンテンツをコンテンツ受信端末３ａへ送信し、送信されたコンテンツがコンテンツ受信端末３ａの再配信コンテンツ受信部３１２によって受信される（ステップＳ４０７）。そして、コンテンツ受信端末３ａにおいて受信されたコンテンツが第２コンテンツ登録部３１３によってコンテンツ記憶部３０１に記憶される。
【００８４】
コンテンツ受信端末３ａがコンテンツの全てを受信した後、コンテンツ受信端末３ａの再配信完了情報送信部３１６は、受信したコンテンツのコンテンツＩＤ、自コンテンツ受信端末３ａのＩＰアドレス、およびコンテンツの再配信元のコンテンツ受信端末３ｂのＩＰアドレスを含む再配信完了情報をコンテンツ配信サーバ２に対して送信する。そして、送信された再配信完了情報がコンテンツ配信サーバ２の再配信完了情報受信部２１６によって受信される（ステップＳ４０８）。コンテンツ配信サーバ２の第２配信状態変更部２１７は蓄積端末情報記憶部２０４に記憶されている再配信完了情報に含まれるコンテンツ受信端末３ｂのＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致する各レコードのフィールド「配信状態」を「配信中」から「待機中」に変更する。そして、蓄積端末情報追加部２１８は、再配信完了情報に含まれるコンテンツＩＤおよびコンテンツ受信端末３ａのＩＰアドレスを蓄積端末情報記憶部２０４のフィールド「コンテンツＩＤ」およびフィールド「端末位置情報」に新規に格納するとともに、対応するフィールド「コンテンツ保持期間」に現在時刻に予め定められた期間を加算して得られる年月日（コンテンツ保持期間）を格納し、対応するフィールド「配信状態」に「待機中」を格納する。
【００８５】
次に、図１のコンテンツ配信システム１において行われるコンテンツの配信処理について図１１を参照しつつ説明する。図１１はコンテンツ配信システム１において行われるコンテンツの配信処理の流れの一例を示すシーケンス図である。
コンテンツ受信端末３ａの第１配信要求部３０５はコンテンツ配信サーバ２に対してコンテンツの配信要求を送信し、送信された配信要求はコンテンツ配信サーバ２の配信要求受信部２０５によって受信される（ステップＳ５０１）。コンテンツ配信サーバ２は上述した図７の処理を行って最適なコンテンツ受信端末３ｂを検出する（ステップＳ５０２）。コンテンツ配信サーバ２の端末情報送信部２１１は最適なコンテンツ受信端末３ｂのＩＰアドレスを配信要求元のコンテンツ受信端末３ａに対して送信し、送信されたコンテンツ受信端末３ｂのＩＰアドレスがコンテンツ受信端末３ａの端末情報受信部３０８によって受信される（ステップＳ５０３）。
【００８６】
コンテンツ受信端末３ａの再配信要求部３０９は再配信要求をステップＳ５０３において受信したＩＰアドレスのコンテンツ受信端末３ｂに対して送信される（ステップＳ５０４）。コンテンツ受信部３ａの応答受信部３１０はコンテンツ受信端末３ｂから応答を受けることができなかった（ステップＳ５０５）ので、第２配信要求部３１５は、自コンテンツ受信端末３ａのＩＰアドレスとコンテンツＩＤとを含み、不可ＩＰアドレスがコンテンツ受信端末３ｂのＩＰアドレスであり、蓄積データサイズが「０」である配信要求をコンテンツ配信サーバ２に対して送信し、送信された配信要求はコンテンツ配信サーバ２の配信要求受信部２０５によって受信される（ステップＳ５０６）。コンテンツ配信サーバ２は上述した図７の処理を行って不可ＩＰアドレスのコンテンツ受信端末３ｂを蓄積端末情報記憶部２０４から削除するとともに最適なコンテンツ受信端末３ｃを検出する（ステップＳ５０７）。コンテンツ配信サーバ２の端末情報送信部２１１は最適なコンテンツ受信端末３ｃのＩＰアドレスを配信要求元のコンテンツ受信端末３ａに対して送信し、送信されたコンテンツ受信端末３ｃのＩＰアドレスがコンテンツ受信端末３ａの端末情報受信部３０８によって受信される（ステップＳ５０８）。
【００８７】
コンテンツ受信端末３ａの再配信要求部３０９は再配信要求をステップＳ５０８において受信したＩＰアドレスのコンテンツ受信端末３ｃに対して送信し、送信された再配信要求がコンテンツ受信端末３ｃの再配信要求受信部３１７によって受信される（ステップＳ５０９）。コンテンツ受信端末３ｃの再配信要求応答部３１８は再配信要求に対する配信を行う応答（配信応答）を行い、コンテンツ受信端末３ａの応答受信部３１０は配信応答を受信する（ステップＳ５１０）。コンテンツ受信端末３ａの再配信情報送信部３１１はコンテンツ配信サーバ２に対して再配信元となるコンテンツ受信端末３ｃのＩＰアドレスを含む再配信情報を送信し、送信された再配信情報がコンテンツ配信サーバ２の再配信情報受信部２１４によって受信される（ステップＳ５１１）。コンテンツ配信サーバ２の第１配信状態変更部２１５は蓄積端末情報記憶部２０４に記憶されている再配信情報に含まれるコンテンツ受信端末３ｃのＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致する各レコードのフィールド「配信状態」を「待機中」から「配信中」に変更する。
【００８８】
コンテンツ受信端末３ｃのコンテンツ取出部３１９は再配信要求に含まれるコンテンツＩＤのコンテンツを取り出す。そして、コンテンツ送信部３２０は取り出したコンテンツをコンテンツ受信端末３ａへ送信し、送信されたコンテンツがコンテンツ受信端末３ａの再配信コンテンツ受信部３１２によって受信される（ステップＳ５１２）。そして、コンテンツ受信端末３ａにおいて受信されたコンテンツが第２コンテンツ登録部３１３によってコンテンツ記憶部３０１に記憶される。
【００８９】
コンテンツ受信端末３ａがコンテンツの全てを受信した後、コンテンツ受信端末３ａの再配信完了情報送信部３１６は、受信したコンテンツのコンテンツＩＤ、自コンテンツ受信端末３ａのＩＰアドレス、およびコンテンツの再配信元のコンテンツ受信端末３ｃのＩＰアドレスを含む再配信完了情報をコンテンツ配信サーバ２に対して送信し、送信された再配信完了情報がコンテンツ配信サーバ２の再配信完了情報受信部２１６によって受信される（ステップＳ５１３）。コンテンツ配信サーバ２の第２配信状態変更部２１７は蓄積端末情報記憶部２０４に記憶されている再配信完了情報に含まれるコンテンツ受信端末３ｃのＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致する各レコードのフィールド「配信状態」を「配信中」から「待機中」に変更する。そして、蓄積端末情報追加部２１８は、再配信完了情報に含まれるコンテンツＩＤおよびコンテンツ受信端末３ａのＩＰアドレスを蓄積端末情報記憶部２０４のフィールド「コンテンツＩＤ」およびフィールド「端末位置情報」に新規に格納するとともに、対応するフィールド「コンテンツ保持期間」に現在時刻に予め定められた期間を加算して得られる年月日（コンテンツ保持期間）を格納し、対応するフィールド「配信状態」に「待機中」を格納する。
【００９０】
次に、図１のコンテンツ配信システム１において行われるコンテンツの配信処理について図１２を参照しつつ説明する。図１２はコンテンツ配信システム１において行われるコンテンツの配信処理の流れの一例を示すシーケンス図である。
コンテンツ受信端末３ａの第１配信要求部３０５はコンテンツ配信サーバ２に対してコンテンツの配信要求を送信し、送信された配信要求はコンテンツ配信サーバ２の配信要求受信部２０５によって受信される（ステップＳ６０１）。コンテンツ配信サーバ２は上述した図７の処理を行って最適なコンテンツ受信端末３ｂを検出する（ステップＳ６０２）。コンテンツ配信サーバ２の端末情報送信部２１１は最適なコンテンツ受信端末３ｂのＩＰアドレスを配信要求元のコンテンツ受信端末３ａに対して送信し、送信されたコンテンツ受信端末３ｂのＩＰアドレスがコンテンツ受信端末３ａの端末情報受信部３０８によって受信される（ステップＳ６０３）。
【００９１】
コンテンツ受信端末３ａの再配信要求部３０９は再配信要求をステップＳ５０３において受信したＩＰアドレスのコンテンツ受信端末３ｂに対して送信し、送信された再配信要求がコンテンツ受信端末３ｂの再配信要求受信部３１７によって受信される（ステップＳ６０４）。コンテンツ受信端末３ｂの再配信要求応答部３１８は再配信要求に対する配信を行う応答（配信応答）を行い、コンテンツ受信端末３ａの応答受信部３１０は配信応答を受信する（ステップＳ６０５）。コンテンツ受信端末３ａの再配信情報送信部３１１はコンテンツ配信サーバ２に対して再配信元となるコンテンツ受信端末３ｂのＩＰアドレスを含む再配信情報を送信し、送信された再配信情報がコンテンツ配信サーバ２の再配信情報受信部２１４によって受信される（ステップＳ６０６）。コンテンツ配信サーバ２の第１配信状態変更部２１５は蓄積端末情報記憶部２０４に記憶されている再配信情報に含まれるコンテンツ受信端末３ｂのＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致する各レコードのフィールド「配信状態」を「待機中」から「配信中」に変更する。
【００９２】
コンテンツ受信端末３ｂのコンテンツ取出部３１９は再配信要求に含まれるコンテンツＩＤのコンテンツを取り出す。そして、コンテンツ送信部３２０は取り出したコンテンツをコンテンツ受信端末３ａへ送信し、送信されたコンテンツがコンテンツ受信端末３ａの再配信コンテンツ受信部３１２によって受信される（ステップＳ６０７）。そして、コンテンツ受信端末３ａにおいて受信されたコンテンツが第２コンテンツ登録部３１３によってコンテンツ記憶部３０１に記憶される。この途中で通信断によりコンテンツ受信端末３ａがコンテンツ受信端末３ｂからコンテンツを受信することができなくなる（ステップＳ６０８）と、第２コンテンツ受信端末３ａはコンテンツ記憶部３０１にこれまでに記憶されたコンテンツのデータサイズを算出して蓄積データサイズ記憶部３０３に格納する。そして、第２配信要求部３１５は、自コンテンツ受信端末３ａのＩＰアドレスとコンテンツＩＤとを含み、不可ＩＰアドレスがコンテンツ受信端末３ｂのＩＰアドレスであり、蓄積データサイズがコンテンツ受信端末３ｂから受信できたデータサイズである配信要求をコンテンツ配信サーバ２に対して送信し、送信された配信要求はコンテンツ配信サーバ２の配信要求受信部２０５によって受信される（ステップＳ６０９）。コンテンツ配信サーバ２は上述した図７の処理を行って不可ＩＰアドレスのコンテンツ受信端末３ｂを蓄積端末情報記憶部２０４から削除するとともに最適なコンテンツ受信端末３ｃを検出する（ステップＳ６１０）。コンテンツ配信サーバ２の端末情報送信部２１１は最適なコンテンツ受信端末３ｃのＩＰアドレスを配信要求元のコンテンツ受信端末３ａに対して送信し、送信されたコンテンツ受信端末３ｃのＩＰアドレスがコンテンツ受信端末３ａの端末情報受信部３０８によって受信される（ステップＳ６１１）。
【００９３】
コンテンツ受信端末３ａの再配信要求部３０９はコンテンツＩＤおよびコンテンツ受信端末３ｂから受信したコンテンツのデータサイズ（蓄積データサイズ）を含む再配信要求をステップＳ６１１において受信したＩＰアドレスのコンテンツ受信端末３ｃに対して送信し、送信された再配信要求がコンテンツ受信端末３ｂの再配信要求受信部３１７によって受信される（ステップＳ６１２）。コンテンツ受信端末３ｃの再配信要求応答部３１８は再配信要求に対する配信を行う応答（配信応答）を行い、コンテンツ受信端末３ａの応答受信部３１０は配信応答を受信する（ステップＳ６１３）。コンテンツ受信端末３ａの再配信情報送信部３１１は再配信元となるコンテンツ受信端末３ｃのＩＰアドレスを含む再配信情報をコンテンツ配信サーバ２に対して送信し、送信された再配信情報がコンテンツ配信サーバ２の再配信情報受信部２１４によって受信される（ステップＳ６１４）。コンテンツ配信サーバ２の第１配信状態変更部２１５は蓄積端末情報記憶部２０４に記憶されている再配信情報に含まれるコンテンツ受信端末３ｃのＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致する各レコードのフィールド「配信状態」を「待機中」から「配信中」に変更する。
【００９４】
コンテンツ受信端末３ｃのコンテンツ取出部３１９は再配信要求に含まれるコンテンツＩＤのコンテンツを取り出し、再配信要求に含まれる蓄積データサイズを利用してコンテンツ受信端末３ａが蓄積していないコンテンツのデータ部分を特定する。そして、コンテンツ送信部３２０は特定したデータ部分のコンテンツをコンテンツ受信端末３ａへ送信し、送信されたコンテンツがコンテンツ受信端末３ａの再配信コンテンツ受信部３１２によって受信される（ステップＳ６１５）。そして、コンテンツ受信端末３ａにおいて受信されたコンテンツが第２コンテンツ登録部３１３によってコンテンツ記憶部３０１に記憶される。
【００９５】
コンテンツ受信端末３ａがコンテンツの全てを受信した後、コンテンツ受信端末３ａの再配信完了情報送信部３１６は、受信したコンテンツのコンテンツＩＤ、自コンテンツ受信端末３ａのＩＰアドレス、およびコンテンツの再配信元のコンテンツ受信端末３ｃのＩＰアドレスを含む再配信完了情報をコンテンツ配信サーバ２に対して送信し、送信された再配信完了情報がコンテンツ配信サーバ２の再配信完了情報受信部２１６によって受信される（ステップＳ６１６）。コンテンツ配信サーバ２の第２配信状態変更部２１７は蓄積端末情報記憶部２０４に記憶されている再配信完了情報に含まれるコンテンツ受信端末３ｃのＩＰアドレスにフィールド「端末位置情報」のＩＰアドレスが一致するレコードのフィールド「配信状態」を「配信中」から「待機中」に変更する。そして、蓄積端末情報追加部２１８は、再配信完了情報に含まれるコンテンツＩＤおよびコンテンツ受信端末３ａのＩＰアドレスを蓄積端末情報記憶部２０４のフィールド「コンテンツＩＤ」およびフィールド「端末位置情報」に新規に格納するとともに、対応するフィールド「コンテンツ保持期間」に現在時刻に予め定められた期間を加算して得られる年月日（コンテンツ保持期間）を格納し、対応するフィールド「配信状態」に「待機中」を格納する。
【００９６】
以上説明した本発明の実施の形態によれば、要求されたコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末の中から、要求してきたコンテンツ受信端末とルータの経由数が最小のコンテンツ受信端末が通知される。このため、コンテンツ受信端末間のコンテンツの再配信の際に経由するルータの数が少なくなり、ネットワーク全体の負荷を下げながら効率的なコンテンツの再配信が可能になる。また、要求されたコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末の中から、回線速度の最大のコンテンツ受信端末が通知されるため、コンテンツ受信端末間のコンテンツの再配信に要する時間を短くすることができる。
【００９７】
さらに、要求されたコンテンツＩＤのコンテンツを蓄積しているコンテンツ受信端末の中から、配信中のコンテンツ受信端末やコンテンツ保持期間が過ぎたコンテンツ受信端末を除いて、通知するコンテンツ受信端末を検出している。このため、再配信要求元のコンテンツ受信端末が配信中やコンテンツを既に保持していないというような事態を回避することができる。
【００９８】
さらに、コンテンツの一部を受信した後に通信断などが生じた場合には蓄積できたコンテンツのデータサイズを含めてコンテンツ配信サーバや他のコンテンツ受信端末にコンテンツの要求を行うため、コンテンツの既に受信していた部分が再度送受信されることがなくなり、データの通信量を減らすことができる。
【００９９】
以下、上記実施の形態の変形例について説明する。変形例は暗号化したコンテンツ（暗号化コンテンツ）をコンテンツ配信サーバからコンテンツ受信端末へ、コンテンツ受信端末から他のコンテンツ受信端末へ送信されるものである。なお、コンテンツの暗号および復号に関する部分以外は上記実施の形態と実質的に同じである。
【０１００】
コンテンツ配信サーバ２はコンテンツを暗号化鍵を使用して暗号化する暗号化部を備え、コンテンツ記憶部２０１には暗号化部によって暗号化されたコンテンツ（暗号化コンテンツ）がコンテンツＩＤに対応付けられて記憶されている。そして、コンテンツ配信サーバ２はコンテンツＩＤに対応付けて暗号化コンテンツを復号するための復号鍵を記憶する復号鍵記憶部を備える。
【０１０１】
上記実施の形態と同様にしてコンテンツの配信要求元のコンテンツ受信端末に暗号化コンテンツが蓄積される。その後暗号化コンテンツを記憶したコンテンツ受信端末はコンテンツ配信サーバ２に対してコンテンツＩＤを含む復号鍵要求を送信し（復号鍵要求手段）、コンテンツ配信サーバ２は復号鍵要求を受信する（復号鍵要求受信手段）。コンテンツ配信サーバが復号鍵要求を受信すると、コンテンツ配信サーバ２は復号鍵要求に含まれるコンテンツＩＤを利用して当該コンテンツＩＤに対応付けて復号鍵記憶部に記憶されている復号鍵を取り出す（復号鍵取出手段）。そして、コンテンツ配信サーバ２は取り出した復号鍵を復号鍵要求元のコンテンツ受信端末に対して送信し（復号鍵送信手段）、復号鍵要求元のコンテンツ受信端末は送信された復号鍵を受信する（復号鍵受信手段）。復号鍵要求元のコンテンツ受信端末は受信した復号鍵を利用して暗号化コンテンツを復号して（コンテンツ復号手段）、復号されたコンテンツを再生し、例えばディスプレイに表示する。
【０１０２】
上記変形例によれば、暗号化されたコンテンツの閲覧などをする場合コンテンツ配信サーバから復号鍵を得る仕組みになっているので、コンテンツに対する課金などをコンテンツ配信サーバにおいて行うことが可能になり、コンテンツの著作権管理が可能になる。
【０１０３】
以上、本発明の好適な実施の形態について説明したが、本発明は上述の実施の形態に限られるものではなく、特許請求の範囲に記載した限りにおいて様々な設計変更が可能なものになっている。
例えば、上記実施の形態においては、コンテンツを蓄積している「待機中」のコンテンツ保持期間内のコンテンツ受信端末が複数ある場合は、ルータの経由数の最小のコンテンツ受信端末を通知するコンテンツ受信端末とし、さらにルータの経由数の最小のコンテンツ受信端末が複数ある場合には回線速度の最大のコンテンツ受信端末を通知するコンテンツ受信端末としている。これに限らず、例えば、ルータの経由数に第１重み付け値を乗算した値と回線速度に第２重み付け値を乗算した値とを加算した値を利用し、その加算した値が最大のコンテンツ受信端末を通知するコンテンツ受信端末とするなどであってもよい。
【０１０４】
また、コンテンツの蓄積しているコンテンツ受信端末の「配信状態」には配信中か待機中かを記憶するようにしているが、「配信状態」に配信元のコンテンツ受信端末としての候補としない期間を格納するようにし、「配信状態」を利用してコンテンツ受信端末を選定する際には現在時刻がその期間内であるか否かを判断して期間外のものを選定するようにする。例えば、その仕組みとして、再配信情報をコンテンツ受信端末から受信した場合にそれに含まれるＩＰアドレス（再配信元ＩＰアドレス）にフィールド「端末位置情報」のＩＰアドレスが一致する各レコードの「配信状態」に現在時刻に予め決められた時間を加算した値を格納するようにする。
【０１０５】
なお、上述したシステムの各処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述の処理を行ってもよい。尚、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１０６】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【図面の簡単な説明】
【０１０７】
【図１】本発明の実施の形態におけるコンテンツ配信システムのシステム構成図。
【図２】図１のネットワークの構成例を示す図。
【図３】図１のコンテンツ配信サーバの機能構成を示す機能ブロック図。
【図４】図３の端末情報記憶部の記憶内容の一例を示す図。
【図５】図３の蓄積端末情報記憶部の記憶内容の一例を示す図。
【図６】図１のコンテンツ受信端末の機能構成を示す機能ブロック図。
【図７】図１のコンテンツ配信サーバが行うコンテンツ配信処理の流れを示すフローチャート。
【図８】図１のコンテンツ受信端末が行うコンテンツ配信処理の流れを示すフローチャート。
【図９】図１のコンテンツ受信端末が行うコンテンツ配信処理の流れを示すフローチャート。
【図１０】図１のコンテンツ配信システムが行うコンテンツの配信処理の流れの一例を示すシーケンス図。
【図１１】図１のコンテンツ配信システムが行うコンテンツの配信処理の流れの一例を示すシーケンス図。
【図１２】図１のコンテンツ配信システムが行うコンテンツの配信処理の流れの一例を示すシーケンス図。
【符号の説明】
【０１０８】
１  コンテンツ配信システム
２  コンテンツ配信サーバ
３ａ〜３ｄ  コンテンツ受信端末
【図１】
2006285387.tif 000003
【図２】
2006285387.tif 000004
【図３】
2006285387.tif 000005
【図４】
2006285387.tif 000006
【図５】
2006285387.tif 000007
【図６】
2006285387.tif 000008
【図７】
2006285387.tif 000009
【図８】
2006285387.tif 000010
【図９】
2006285387.tif 000011
【図１０】
2006285387.tif 000012
【図１１】
2006285387.tif 000013
【図１２】
2006285387.tif 000014