(57)【要約】【課題】上流端末が離脱した際に、再接続先として、再接続の直後に離脱する可能性の低い端末を選択する。【解決手段】Ｐ２Ｐ端末１は、コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類する視聴形態判定部１０５と、Ｐ２Ｐ端末の上流側に接続されていたＰ２Ｐ端末が離脱した場合に、再接続先を選択する際に、コンテンツの視聴形態がイベント視聴形態であるＰ２Ｐ端末よりも通常視聴形態であるＰ２Ｐ端末を優先して選択する再接続先端末選択部１７２とを備える。端末管理サーバ２は、イベントが終了したか否かを判定するイベント終了判定部２８と、イベント終了判定部２８によりイベントが終了したと判定されると、イベントクリア情報をＰ２Ｐ端末に送信するイベントクリア情報送信部２９とを備える。【選択図】図１
2015198437.tif 000002
【特許請求の範囲】
【請求項１】
複数のＰ２Ｐ端末と、コンテンツの配信元である配信サーバと、配信サーバ及び複数のＰ２Ｐ端末を管理する端末管理サーバとを備え、配信サーバを頂点として複数のＰ２Ｐ端末が階層的に接続されたツリー構造のＰ２Ｐネットワークを構築してコンテンツを配信するコンテンツ配信システムであって、
前記Ｐ２Ｐ端末は、
コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類する視聴形態判定部と、
当該Ｐ２Ｐ端末の上流側に接続されていたＰ２Ｐ端末が離脱した場合に、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末よりも前記通常視聴形態であるＰ２Ｐ端末を優先して選択する再接続先端末選択部と、を備え、
前記端末管理サーバは、
イベントが終了したか否かを判定するイベント終了判定部と、
前記イベント終了判定部によりイベントが終了したと判定されると、イベントクリア情報を前記Ｐ２Ｐ端末に送信するイベントクリア情報送信部と、を備え、
前記視聴形態判定部は、前記イベントクリア情報を受信すると、該イベントに係るコンテンツの視聴を継続している場合に、前記視聴形態を前記通常視聴形態に分類することを特徴とするコンテンツ配信システム。
【請求項２】
コンテンツの配信元である配信サーバを頂点としてツリー構造のＰ２Ｐネットワークを構築するＰ２Ｐ端末であって、
コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類する視聴形態判定部と、
当該Ｐ２Ｐ端末の上流側に接続されていたＰ２Ｐ端末が離脱して離脱端末になった場合に、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末よりも前記通常視聴形態であるＰ２Ｐ端末を優先して選択する再接続先端末選択部と、
を備えることを特徴とするＰ２Ｐ端末。
【請求項３】
前記再接続先端末選択部は、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末について、前記離脱端末と同一のイベント告知により視聴を開始したＰ２Ｐ端末よりも、前記離脱端末と異なるイベント告知により視聴を開始したＰ２Ｐ端末を優先して選択することを特徴とする、請求項２に記載のＰ２Ｐ端末。
【請求項４】
前記視聴形態判定部は、イベントが終了すると、該イベントに係るコンテンツの視聴を継続している場合に、前記視聴形態を前記通常視聴形態に分類することを特徴とする、請求項２又は３に記載のＰ２Ｐ端末。
【請求項５】
請求項２から４のいずれか一項に記載のＰ２Ｐ端末を管理する端末管理サーバであって、
イベントが終了したか否かを判定するイベント終了判定部と、
前記イベント終了判定部によりイベントが終了したと判定されると、イベントクリア情報を前記Ｐ２Ｐ端末に送信し、イベントの終了を通知するイベントクリア情報送信部と、を備えることを特徴とする端末管理サーバ。
【請求項６】
前記イベント終了判定部は、イベント告知からの誘導によりＰ２Ｐネットワークに接続されたＰ２Ｐ端末数の減少度合いに基づき、該イベントが終了したか否かを判定することを特徴とする、請求項５に記載の端末管理サーバ。
【請求項７】
コンテンツの配信元である配信サーバを頂点としてツリー構造のＰ２Ｐネットワークを構築するＰ２Ｐ端末における配信ツリー再構築方法であって、
コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類するステップと、
当該Ｐ２Ｐ端末の上流側に接続されていたＰ２Ｐ端末が離脱した場合に、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末よりも前記通常視聴形態であるＰ２Ｐ端末を優先して選択するステップと、
を含むことを特徴とする配信ツリー再構築方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｐ２Ｐ端末、端末管理サーバ、コンテンツの配信元であるコンテンツ配信サーバ（以下、「配信サーバ」という）を頂点として、複数のＰ２Ｐ端末が階層的に接続された配信ツリー（ツリー構造のＰ２Ｐネットワーク）を構築してコンテンツを配信するコンテンツ配信システム、及び配信ツリー再構築方法に関する。
【背景技術】
【０００２】
近年インターネットにおいては、ストリーミングによる動画配信サービスが普及している。動画配信サービスの形態としては、受信端末において視聴したいコンテンツを選択し、配信サーバより選択したコンテンツを受信するＶＯＤ（Video On Demand）のような一対一の配信サービスに加え、同一のコンテンツを多数の受信端末に同時に伝送する一対多（放送型）の配信サービスが知られている。
【０００３】
ＩＰネットワークにおいて一対多の放送型の動画配信サービスを効率よく行う方式として、ＩＰマルチキャストが知られている。しかし、このＩＰマルチキャスト方式では、対象となるネットワーク内の全ルータにマルチキャスト機能が必要となり、現状では限られたネットワークのみでしか利用できない。
【０００４】
こうした背景から、一般に普及しているインターネット上で一対多の放送型配信を実現する有効な方法として、Ｐ２Ｐ（ピアツーピア）技術を用いたコンテンツの分散配信技術が開発されている。この技術は、コンテンツを要求するＰ２Ｐ端末同士で論理的なツリーを作り、Ｐ２Ｐ端末上で動作するアプリケーションソフトが相互にデータ転送を行うことによりマルチキャスト（一対多通信）を実現する。
【０００５】
例えば、特許文献１に記載されたストリームデータ分散配信方法では、インターネットなどのネットワーク環境において、各ノード間でストリームデータの送受信を行うため、各ノードは上流ノードと下流ノードとの接続関係を示すトポロジ情報を交換して、上流ノードから下流ノードへストリームデータを中継している。このストリームデータ分散配信方法では、各ノード間でトポロジ情報を交換するため、各ノードが自律的にトポロジ情報を記憶・更新し、提供するなどの管理を行う機能を備えている。
【０００６】
また、このようなコンテンツ配信方式の別の例として、非特許文献１に開示された技術では、配信サーバにおいてストリーミングメディアを複数のデータパケットに断片化する（断片化されたデータをチャンクと呼ぶ）。そして、各端末は必要なチャンクを持つ端末を動的に検出し、検出した端末から、プル型でチャンクを受信し、受信したチャンクを再構成することにより、所望のストリーミングメディアを得ることができる。図１１にこのような従来のコンテンツ配信システムの一例を示す。図１１に示したコンテンツ配信システムの例では、配信サーバによって１〜６の６個に断片化したチャンクのうち、奇数番号のチャンクが実線に沿って転送され、偶数番号のチャンクが破線に沿って転送されることで、図示する６台の各Ｐ２Ｐ端末に対して、全てのチャンクが行き届いている様子を示している。
【０００７】
Ｐ２Ｐ技術によるコンテンツ配信方式では、一般利用者の利用者端末（Ｐ２Ｐ端末）が、自端末から他のＰ２Ｐ端末へ中継を行う機能を担うことになり、配信ツリーの上流に位置するＰ２Ｐ端末（上流端末）がコンテンツ視聴を中止した際には、そのＰ２Ｐ端末から下流に位置するＰ２Ｐ端末（下流端末）への配信が停止することになる。このため、Ｐ２Ｐ技術によるコンテンツ配信を安定的に実現するには、Ｐ２Ｐ端末の突発的な離脱に対処する必要がある。
【０００８】
ところで、このようなインターネットでのライブコンテンツ配信では、テレビのチャンネルのようにスケジュールに従うか、あるいは任意のコンテンツが常に配信される視聴ページを開き続けることによりコンテンツを視聴する受動的な視聴形態や、キーワード等の検索により当該視聴ページを発見することによりコンテンツを視聴する能動的な視聴形態がある。さらに、Twitter（登録商標）等の外部ソーシャルメディアにより、コンテンツの進行状況をリアルタイムに実況することにより、当該コンテンツの視聴へと呼び込むイベント的な視聴形態がとられる。例えば、「今から○○選手の出番です」というイベント告知とともに当該視聴ページのＵＲＬを投稿し、興味を持ったユーザがＵＲＬをクリックすることで視聴ページに誘導するような例が挙げられる。このようなイベント的な視聴形態においては、ユーザはコンテンツ全体よりもそのシーンのみに興味がある可能性が高いため、シーンの終了とともに一斉に視聴を止めてしまう（離脱）ことが考えられる。そのような場合、短時間に集中してＰ２Ｐ端末の大量離脱が発生する。
【０００９】
このようなＰ２Ｐ端末の離脱の問題を解決する一般的な方法として、各Ｐ２Ｐ端末に受信データを蓄積するための受信メモリ（受信バッファ）を備えさせ、上流端末が急に離脱したとしても、受信バッファに蓄積したデータを再生している間に、他の上流端末に再接続することで、コンテンツ配信サービスによるストリーミング受信を継続することが考えられる。
【００１０】
しかしながら、この方法では、コンテンツ配信の安定性を確保するために、各Ｐ２Ｐ端末が大容量の受信メモリを備える必要があると共に、再生前に受信データを受信メモリに蓄える必要があり、遅延時間が大きくなってしまうという問題があった。また、この受信メモリ内のデータが枯渇した際には、映像が停止してしまうという問題もあった。
【００１１】
これらの問題を解決するために、例えば特許文献２では、相対的に離脱し難いと想定されるＰ２Ｐ端末を上流に配置するＰ２Ｐネットワークの構築方法が提案されている。
【００１２】
また、図１１に示したコンテンツ配信システムのように、複数のＰ２Ｐ端末がメッシュ状に接続したメッシュ構造のＰ２Ｐネットワークを構築する場合には、一部の上流端末からデータ受信が途絶えたとしても、他の上流端末からデータを受信することにより、コンテンツ配信サービスによるストリーミング受信を継続することができる。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００３−１６９０８９号公報
【特許文献２】特開２００９−１３０６６７号公報
【非特許文献】
【００１４】
【非特許文献１】CoolStreaming/DoNet: A Data-Driven Overlay Network for Efficient Live Media Streaming”，In Proc． Of the 24th IEEE INFOCO， March 2005， ｐ．2102-2111 Xinyan Zhang， Jiangchuan Liu， Bo Li and Tak-Shing Peter Yum
【発明の概要】
【発明が解決しようとする課題】
【００１５】
特許文献２に記載されたＰ２Ｐネットワークによりコンテンツ配信サービスを実現する場合、上流端末は離脱し難いから、大規模な受信状況の劣化を避けることができる。しかしながら、ネットワークの末端部に離脱し易いＰ２Ｐ端末が多く配置されることから、局所的な受信状況の劣化までは避けることはできないという問題がある。
【００１６】
また、図１１のメッシュ構造のＰ２Ｐネットワークによるコンテンツ配信サービスを実現する場合、一部の上流端末からのデータ受信が途絶えたとしても、残りの上流端末からデータを受信することができるため、ツリー構造のＰ２Ｐネットワークと比較して、Ｐ２Ｐネットワーク全体の安定性は高くなる。しかしながら、上流の接続相手として離脱の可能性の高いＰ２Ｐ端末が多い場合には、コンテンツ配信サービスによるストリーミング受信を安定的に継続することができないという問題がある。
【００１７】
かかる事情に鑑みてなされた本発明の目的は、上流端末が離脱した際に、再接続先として、再接続の直後に離脱する可能性の低いＰ２Ｐ端末を選択することが可能なコンテンツ配信システム、Ｐ２Ｐ端末、端末管理サーバ、及び配信ツリー再構築方法を提供することにある。
【課題を解決するための手段】
【００１８】
上記課題を解決するため、本発明に係るコンテンツ配信システムは、複数のＰ２Ｐ端末と、コンテンツの配信元である配信サーバと、配信サーバ及び複数のＰ２Ｐ端末を管理する端末管理サーバとを備え、配信サーバを頂点として複数のＰ２Ｐ端末が階層的に接続されたツリー構造のＰ２Ｐネットワークを構築してコンテンツを配信するコンテンツ配信システムであって、前記Ｐ２Ｐ端末は、コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類する視聴形態判定部と、当該Ｐ２Ｐ端末の上流側に接続されていたＰ２Ｐ端末が離脱した場合に、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末よりも前記通常視聴形態であるＰ２Ｐ端末を優先して選択する再接続先端末選択部と、を備え、前記端末管理サーバは、イベントが終了したか否かを判定するイベント終了判定部と、前記イベント終了判定部によりイベントが終了したと判定されると、イベントクリア情報を前記Ｐ２Ｐ端末に送信するイベントクリア情報送信部と、を備え、前記視聴形態判定部は、前記イベントクリア情報を受信すると、該イベントに係るコンテンツの視聴を継続している場合に、前記視聴形態を前記通常視聴形態に分類することを特徴とする。
【００１９】
また、上記課題を解決するため、本発明に係るＰ２Ｐ端末は、コンテンツの配信元である配信サーバを頂点としてツリー構造のＰ２Ｐネットワークを構築するＰ２Ｐ端末であって、コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類する視聴形態判定部と、当該Ｐ２Ｐ端末の上流側に接続されていたＰ２Ｐ端末が離脱して離脱端末になった場合に、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末よりも前記通常視聴形態であるＰ２Ｐ端末を優先して選択する再接続先端末選択部と、を備えることを特徴とする。
【００２０】
さらに、本発明に係るＰ２Ｐ端末において、前記再接続先端末選択部は、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末について、前記離脱端末と同一のイベント告知により視聴を開始したＰ２Ｐ端末よりも、前記離脱端末と異なるイベント告知により視聴を開始したＰ２Ｐ端末を優先して選択することを特徴とする。
【００２１】
さらに、本発明に係るＰ２Ｐ端末において、前記視聴形態判定部は、イベントが終了すると、該イベントに係るコンテンツの視聴を継続している場合に、前記視聴形態を前記通常視聴形態に分類することを特徴とする。
【００２２】
また、上記課題を解決するため、本発明に係る端末管理サーバは、上記Ｐ２Ｐ端末を管理する端末管理サーバであって、イベントが終了したか否かを判定するイベント終了判定部と、前記イベント終了判定部によりイベントが終了したと判定されると、イベントクリア情報を前記Ｐ２Ｐ端末に送信し、イベントの終了を通知するイベントクリア情報送信部と、を備えることを特徴とする。
【００２３】
さらに、本発明に係る端末管理サーバにおいて、前記イベント終了判定部は、イベント告知からの誘導によりＰ２Ｐネットワークに接続されたＰ２Ｐ端末数の減少度合いに基づき、該イベントが終了したか否かを判定することを特徴とする。
【００２４】
また、上記課題を解決するため、配信ツリー再構築方法は、コンテンツの配信元である配信サーバを頂点としてツリー構造のＰ２Ｐネットワークを構築するＰ２Ｐ端末における配信ツリー再構築方法であって、コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類するステップと、当該Ｐ２Ｐ端末の上流側に接続されていたＰ２Ｐ端末が離脱した場合に、再接続先を選択する際に、コンテンツの視聴形態が前記イベント視聴形態であるＰ２Ｐ端末よりも前記通常視聴形態であるＰ２Ｐ端末を優先して選択するステップと、を含むことを特徴とする。
【発明の効果】
【００２５】
本発明によれば、上流端末が離脱した際に、再接続先として、再接続の直後に離脱する可能性の低いＰ２Ｐ端末を選択することができる。そのため、Ｐ２Ｐネットワークを構築してコンテンツを配信するコンテンツ配信システムにおいて、安定した配信を実現することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施形態に係るコンテンツ配信システムの構成例を示す概略図である。
【図２】本発明の一実施形態に係るイベント告知管理サーバの構成例を示すブロック図である。
【図３】本発明の一実施形態に係る端末管理サーバの構成例を示すブロック図である。
【図４】本発明の一実施形態に係る端末管理サーバによるイベント継続時間カウントアップ処理の動作を示すフローチャートである。
【図５】本発明の一実施形態に係る端末管理サーバによる最大接続端末数の更新処理の動作を示すフローチャートである。
【図６】本発明の一実施形態に係る端末管理サーバによる第１のイベント終了判定処理の動作を示すフローチャートである。
【図７】本発明の一実施形態に係る端末管理サーバによる第２のイベント終了判定処理の動作を示すフローチャートである。
【図８】本発明の一実施形態に係るＰ２Ｐ端末の構成例を示すブロック図である。
【図９】本発明の一実施形態に係るＰ２Ｐ端末による新規接続先選択処理の動作を示すフローチャートである。
【図１０】本発明の一実施形態に係るＰ２Ｐ端末による配信ツリー再構築方法の動作を示すフローチャートである。
【図１１】従来のコンテンツ配信システムの一例を示す概略図である。
【発明を実施するための形態】
【００２７】
以下、本発明の一実施形態について、図面を参照して詳細に説明する。
【００２８】
図１は、本発明の一実施形態に係るコンテンツ配信システムの構成例を示す概略図である。コンテンツ配信システムは、複数のＰ２Ｐ端末１と、端末管理サーバ２と、イベント告知管理サーバ３と、配信サーバ４と、Ｗｅｂサーバ５とを備えており、これらはインターネットを介して接続されている。コンテンツ配信システムは、コンテンツの配信元である配信サーバ４を頂点として複数のＰ２Ｐ端末１が階層的に接続された配信ツリー（ツリー構造のＰ２Ｐネットワーク）を構築して、Ｐ２Ｐ方式によりコンテンツを配信する。以下の説明において、自身のＰ２Ｐ端末（自端末）と他のＰ２Ｐ端末（他端末）とを特に区別する場合には、他端末の符号を１’と表記する。
【００２９】
イベント告知管理サーバ３は、コンテンツの進行状況に合わせた実況やイベントの告知に関する情報であるイベント告知情報をTwitter（登録商標）等の外部ソーシャルメディアに投稿するとともに、当該イベントの終了を示すイベント終了情報を配信サーバ４に送信するサーバである。イベントはコンテンツの一部であり、イベントの内容によってはイベントの終了時刻は厳密に定まるものではないため、イベント終了情報を送信するタイミングは、イベント終了の目安時刻であってもよい。
【００３０】
Ｗｅｂサーバ５は、コンテンツアクセス情報を含む視聴ページをＰ２Ｐ端末１に配信するサーバである。
【００３１】
ここで、コンテンツアクセス情報とは、コンテンツ配信システムに参加する際に最初にアクセスする端末管理サーバ２のアドレス、コンテンツを一意に特定するための識別子、及びイベント告知情報を一意に特定する識別子であるイベントＩＤを含む情報である。
【００３２】
Ｐ２Ｐ端末１は、ユーザから視聴ページへのアクセスが指示されると、視聴ページに含まれるコンテンツアクセス情報を基にコンテンツ配信システムに参加し、配信サーバ４や他のＰ２Ｐ端末１’と接続してコンテンツデータを受信・転送する。ユーザは視聴ページのＵＲＬを、直接入力したり、ブックマーク等から選択して入力したり、キーワード検索等により発見して入力したりするか、あるいは外部ソーシャルメディア等に投稿されたイベント告知からの誘導により入力することにより、視聴ページへのアクセスを指示する。
【００３３】
配信サーバ４は、コンテンツの配信元となってコンテンツ配信サービスを提供するサーバであり、Ｐ２Ｐネットワークに参加するＰ２Ｐ端末１に対し、コンテンツのデータパケット（以下、「コンテンツデータ」という）を順次配信する。
【００３４】
端末管理サーバ２は、コンテンツ配信システムに参加している配信サーバ４及びＰ２Ｐ端末１を管理するサーバである。
【００３５】
［イベント告知管理サーバ］
次に、イベント告知管理サーバ３について、図２を参照して説明する。図２は、本発明に係るイベント告知管理サーバ３の構成例を示すブロック図である。
【００３６】
イベント告知管理サーバ３は、通信Ｉ／Ｆ３１と、入力Ｉ／Ｆ３２と、イベントＩＤ管理部３３と、イベント告知情報生成部３４と、外部ソーシャルメディア投稿部３５と、イベント開始情報生成部３６と、イベント終了情報生成部３７とを備える。
【００３７】
入力Ｉ／Ｆ３２は、ＧＵＩ等の直接ユーザが操作するインタフェースであってもよいし、別のプログラムや外部のサーバからネットワーク経由で呼び出して利用するための手順やデータ形式を規定したＡＰＩ（Application Programming Interface）であってもよい。
【００３８】
イベントＩＤ管理部３３は、イベント告知情報を一意に特定するための識別子であるイベントＩＤを生成し、管理する。
【００３９】
イベント告知情報生成部３４は、入力Ｉ／Ｆ３２からコンテンツの進行状況に合わせた実況やイベントの告知に関する情報（テキスト、画像など）をイベントＩＤに対応付けて入力し、Ｗｅｂサーバ５が配信する視聴ページのＵＲＬを付加したイベント告知情報を生成し、外部ソーシャルメディア投稿部３５に出力する。
【００４０】
外部ソーシャルメディア投稿部３５は、ソーシャルメディアのＡＰＩの仕様に従ってイベント告知情報を変換し、通信Ｉ／Ｆ３１を介して当該ソーシャルメディアのサーバ（図示せず）に送信する。
【００４１】
イベント開始情報生成部３６は、イベント告知情報生成部３４よりイベントＩＤを入力し、当該イベントＩＤに対応付いたイベントが開始したことを示す情報をイベント開始情報として端末管理サーバ２に出力する。
【００４２】
イベント終了情報生成部３７は、イベントＩＤに対応付いたイベントが終了したことを示す情報を入力Ｉ／Ｆ３２より入力し、イベント終了情報として通信Ｉ／Ｆ３１を介して端末管理サーバ２に出力する。
【００４３】
［端末管理サーバ］
次に、端末管理サーバ２について、図３を参照して説明する。図３は、本発明に係る端末管理サーバ２の構成例を示すブロック図である。
【００４４】
端末管理サーバ２は、通信Ｉ／Ｆ２１と、記憶部２２と、接続先紹介要求受信部２３と、端末情報更新部２４と、視聴終了情報受信部２５と、イベント開始情報受信部２６と、イベント終了情報受信部２７と、イベント終了判定部２８と、イベントクリア情報送信部２９とを備える。
【００４５】
記憶部２２は、本発明のコンテンツ配信システムに参加しているＰ２Ｐ端末１及び配信サーバ４の端末情報を格納する。記憶部２２は、端末情報記憶部２２１と、イベント管理情報記憶部２２２とを備える。
【００４６】
表１に、端末情報記憶部２２１に格納されている端末情報のリストの一例を示す。表１の例では、端末情報は、端末ＩＤにそれぞれ関連付けられた、接続待受けアドレス、接続可能数、現在接続数、イベントＩＤ、及び視聴形態を含む。
【００４７】
【表１】
2015198437.tif 000003
【００４８】
ここで、端末ＩＤは、配信サーバ４及びＰ２Ｐ端末１を一意に識別する識別子である。接続待受けアドレスは、他のＰ２Ｐ端末１’から接続要求を受け付けることができるＩＰアドレスとポート番号の組を示している。
【００４９】
接続可能数は、Ｐ２Ｐ端末が配信サーバ４や他のＰ２Ｐ端末１’と同時に接続可能な最大端末数を示す。予め規定値を設定してもよいし、自端末１の通信状態に合わせて順次更新してもよい。
【００５０】
現在接続数は、Ｐ２Ｐ端末１が、現在接続中の配信サーバ４や他のＰ２Ｐ端末１’の総数を示す。
【００５１】
イベントＩＤは、視聴ページに含まれるコンテンツアクセス情報から抽出される。なお、アクセス情報にイベントＩＤが含まれていない場合は、イベントＩＤを“−−−”（無し）としている。
【００５２】
視聴形態は、「通常視聴形態」か「イベント視聴形態」かを示すフラグである。「通常視聴形態」とは、既知のＵＲＬを直接入力したりブックマーク等から選択したりするか、キーワード検索等により発見した視聴ページにアクセスしてコンテンツを視聴する形態のことをいう。「イベント視聴形態」とは、外部ソーシャルメディア等に投稿されたイベント告知から誘導された視聴ページにアクセスしてコンテンツを視聴する形態のことをいう。
【００５３】
表２に、イベント管理情報記憶部２２２に格納されているイベント管理情報のリストの一例を示す。表２の例では、イベント管理情報は、イベントＩＤにそれぞれ対応付けられた、イベント継続時間、接続端末数、及び最大接続端末数を含む。
【００５４】
【表２】
2015198437.tif 000004
【００５５】
ここで、イベント継続時間は、イベント開始情報を受信後、イベントＩＤに対応するイベントの継続時間を示す。
【００５６】
接続端末数は、イベントＩＤに対応する視聴ページにアクセスしてＰ２Ｐネットワークに現在接続されているＰ２Ｐ端末１の数を示す。接続端末数は、イベント開始情報を受信後、急激に増加し、その後時間の経過とともに減少していくと考えられる。
【００５７】
最大接続端末数は、イベント継続時間が所定の閾値（例えば３０秒）（この所定の閾値を「最大値更新規定値」と称する）を超えた時点までのＰ２Ｐ端末１の接続数の最大値を示す値である。イベントが開始されると、最大値更新規定値を経過するまでにＰ２Ｐ端末１によるイベントの視聴が開始されると考えられるため、最大接続端末数は暫定的に決定され、この最大接続端末数は後述するように更新してもよい。
【００５８】
接続先紹介要求受信部２３は、Ｐ２Ｐ端末１から接続先紹介要求を受信し、該受信した接続先紹介要求から端末情報を抽出し、端末情報記憶部２２１に端末ＩＤと対応付けて格納するとともに、Ｐ２Ｐ端末１の接続先の候補となる配信サーバ４及び他のＰ２Ｐ端末１’の端末情報を一つ以上含む接続先候補リストを抽出し、Ｐ２Ｐ端末１に返信する。また、接続先紹介要求受信部２３は、接続先紹介要求から抽出したイベントＩＤをイベント終了判定部２８に出力する。
【００５９】
端末情報更新部２４は、Ｐ２Ｐ端末１から端末情報を受信し、端末情報記憶部２２１に格納されている端末情報を更新する。
【００６０】
視聴終了情報受信部２５は、Ｐ２Ｐ端末１から端末ＩＤ及びイベントＩＤを含む視聴終了情報を受信し、端末情報記憶部２２１から、視聴終了情報に含まれる端末ＩＤに対応付けられた端末情報を削除する。また、視聴終了情報をイベント終了判定部２８に出力する。
【００６１】
イベント開始情報受信部２６は、イベント告知管理サーバ３からイベントＩＤを含むイベント開始情報を受信し、イベント終了判定部２８に出力する。
【００６２】
イベント終了情報受信部２７は、イベント告知管理サーバ３からイベントＩＤを含むイベント終了情報を受信し、イベント終了判定部２８に出力する。
【００６３】
イベント終了判定部２８は、イベント管理情報記憶部２２２を更新するとともに、イベント終了情報受信部２７からイベント終了情報が入力されるか、視聴終了情報受信部２５から視聴終了情報が入力されると、イベントが終了したか否かを判定する。イベントが終了したと判定した場合には、イベントＩＤ（このイベントＩＤを「終了イベントＩＤ」と称する）を含むイベントクリア情報をイベントクリア情報送信部２９に出力する。処理内容の詳細については、図４〜７のフローチャートを用いて後述する。
【００６４】
イベントクリア情報送信部２９は、イベント終了判定部２８からイベントＩＤを含むイベントクリア情報が入力されると、イベントクリア情報を端末情報記憶部２２１に格納されている全てのＰ２Ｐ端末１に（又は、端末情報のイベントＩＤが当該イベントＩＤと一致するＰ２Ｐ端末１を抽出して）送信し、イベントの終了を通知する。
【００６５】
図４は、イベント終了判定部２８によるイベント継続時間カウントアップ処理の動作を示すフローチャートである。イベント終了判定部２８は、イベント開始情報受信部２６から、イベントＩＤを含むイベント開始情報が入力されると（ステップＳ００１）、イベント管理情報記憶部２２２に当該イベントＩＤのイベント管理情報を登録する（ステップＳ００２）。そして、イベント継続時間を“００：００：００”に、接続端末数を０に、最大接続端末数を０にそれぞれ初期化する（ステップＳ００３）。次に、イベント継続時間のカウントアップを開始して（ステップＳ００４）、イベント継続時間カウントアップ処理を終了する。
【００６６】
図５は、イベント終了判定部２８による最大接続端末数の更新処理の動作を示すフローチャートである。イベント終了判定部２８は、接続先紹介要求受信部２３からイベントＩＤが入力されると（ステップＳ０１１）、イベント管理情報記憶部２２２に当該イベントＩＤを有するイベント管理情報が存在するか否か確認する（ステップＳ０１２）。存在する場合は（ステップＳ０１２−ＹＥＳ）、当該イベントＩＤを有するイベント管理情報を抽出し（ステップＳ０１３）、抽出したイベント管理情報の接続端末数をインクリメントする（ステップＳ０１４）。
【００６７】
次に、イベント継続時間が最大値更新規定値以下であるか否か確認し（ステップＳ０１５）、最大値更新規定値以下である場合は（ステップＳ０１５−ＹＥＳ）、接続端末数が最大接続端末数より大きいか否か確認し（ステップＳ０１６）、接続端末数の方が大きい場合は（ステップＳ０１６−ＹＥＳ）、最大接続端末数を接続端末数の値に更新して（ステップＳ０１７）、処理を終了する。また、ステップＳ０１２，０１５，０１６それぞれにおいてＮＯと判定された場合は、その時点で処理を終了する。
【００６８】
図６は、イベント終了判定部２８による第１のイベント終了判定処理の動作を示すフローチャートである。イベント終了判定部２８は、イベント終了情報受信部２７からイベントＩＤを含むイベント終了情報が入力されると（ステップＳ０２１）、イベント管理情報記憶部２２２に当該イベントＩＤを有するイベント管理情報が存在するか否かを確認する（ステップＳ０２２）。イベント管理情報が存在する場合は（ステップＳ０２２−ＹＥＳ）、イベントが終了したと判定し、当該イベントＩＤを含むイベントクリア情報をイベントクリア情報送信部２９に出力する（ステップＳ０２３）。次に、当該イベントＩＤを有するイベント管理情報を削除して（ステップＳ０２４）、処理を終了する。また、ステップＳ０２２でＮＯと判定された場合は、その時点で処理を終了する。
【００６９】
図７は、イベント終了判定部２８による第２のイベント終了判定処理の動作を示すフローチャートである。イベントはコンテンツの一部であり、イベントの内容によってはイベントの終了時刻は厳密に定まるものではなく、イベントの終了は目安の場合もある。また、イベントが終了するとコンテンツの視聴を終了するＰ２Ｐ端末１は増加する。そこで、第２のイベント終了判定処理では、イベント告知からの誘導によりＰ２Ｐネットワークに接続されたＰ２Ｐ端末１の数の減少度合いに基づき、該イベントが終了したか否かを判定する。
【００７０】
イベント終了判定部２８は、視聴終了情報受信部２５からイベントＩＤを含む視聴終了情報が入力されると（ステップＳ０３１）、イベント管理情報記憶部２２２に当該イベントＩＤを有するイベント管理情報が存在するか否かを確認する（ステップＳ０３２）。存在する場合は（ステップＳ０３２−ＹＥＳ）、当該イベントＩＤを有するイベント管理情報を抽出する（ステップＳ０３３）。そして、抽出したイベント管理情報の接続端末数をデクリメントする（ステップＳ０３４）。
【００７１】
次に、イベント継続時間が最大値更新規定値より大きいか否かを確認し（ステップＳ０３５）、イベント継続時間の方が大きい場合は（ステップＳ０３５−ＹＥＳ）、接続端末数が最大接続端末数×α（例えば、α＝０．２）より小さいか否かを判定する（ステップＳ０３６）。最大接続端末数は、図５を参照して説明した処理により求められる。接続端末数の方が小さい場合は（ステップＳ０３６−ＹＥＳ）、イベントが終了したと判定し、当該イベントＩＤを含むイベントクリア情報をイベントクリア情報送信部２９に出力する（ステップＳ０３７）。次に、当該イベントＩＤを有するイベント管理情報を削除して（ステップＳ０３８）、処理を終了する。また、ステップＳ０３２，０３５，０３６それぞれにおいてＮＯと判定された場合は、その時点で処理を終了する。
【００７２】
［Ｐ２Ｐ端末］
次に、Ｐ２Ｐ端末１について、図８を参照して説明する。図８は、本発明に係るＰ２Ｐ端末１の構成例を示すブロック図である。
【００７３】
Ｐ２Ｐ端末１は、通信Ｉ／Ｆ１０１と、記憶部１０２と、アクセス情報受信部１０３と、イベントクリア情報受信部１０４と、視聴形態判定部１０５と、接続先紹介要求部１０６と、接続先端末選択部１０７と、接続制御部１０８と、端末情報管理部１０９と、コンテンツデータ中継部１１０と、コンテンツ再生部１１１と、視聴終了情報送信部１１２とを備える。記憶部１０２は、端末情報記憶部１２１と、トポロジ情報記憶部１２２と、コンテンツバッファ１２３とを備える。
【００７４】
端末情報記憶部１２１は、自身のＰ２Ｐ端末（自端末）１の端末情報及びＰ２Ｐネットワークに参加している他のＰ２Ｐ端末（他端末）１’、及び配信サーバ４の端末情報を格納する。格納されている端末情報の一例は、上述した表１と同様である。
【００７５】
トポロジ情報記憶部１２２は、自端末１と直接接続している配信サーバ４又は他端末１’の端末ＩＤを、自端末１から見て上流側に位置するか下流側に位置するかの情報と対応付けて、トポロジ情報として格納する。
【００７６】
アクセス情報受信部１０３は、Ｗｅｂサーバ５から視聴ページを受信し、視聴ページに含まれるコンテンツアクセス情報からイベントＩＤを抽出して視聴形態判定部１０５に出力する。コンテンツアクセス情報にイベントＩＤが含まれていない場合は、イベントＩＤが存在しないことを示す情報を視聴形態判定部１０５に出力する。
【００７７】
イベントクリア情報受信部１０４は、端末管理サーバ２から受信したイベントクリア情報から終了イベントＩＤを抽出し、視聴形態判定部１０５に出力する。
【００７８】
視聴形態判定部１０５は、コンテンツの視聴形態を、イベント告知からの誘導により視聴が開始されたイベント視聴形態か、イベント告知からの誘導によらず視聴が開始された通常視聴形態かに分類する。アクセス情報受信部１０３からイベントＩＤを入力した場合は視聴形態を「イベント視聴形態」と判定し、端末情報記憶部１２１の自端末の端末情報の視聴形態を「イベント視聴形態」に設定・更新する。一方で、アクセス情報受信部１０３からイベントＩＤが存在しないことを示す情報を入力した場合は、視聴形態を「通常視聴形態」と判定し、自端末の端末情報のイベントＩＤを“−−−”（無し）に、視聴形態を「通常視聴形態」に設定・更新する。
【００７９】
また、視聴形態判定部１０５は、イベントクリア情報受信部１０４から終了イベントＩＤを入力すると、端末情報記憶部１２１から該終了イベントＩＤを有する端末情報を抽出し、この端末情報についてイベントＩＤを“−−−”（無し）に、視聴形態を「通常視聴形態」に設定・更新する。
【００８０】
接続先紹介要求部１０６は、端末情報を含む接続先紹介要求を、通信Ｉ／Ｆ１０１を介して端末管理サーバ２へ送信する。そして、端末管理サーバ２から通信Ｉ／Ｆ１０１を介して接続先候補リストを受信し、端末情報を端末情報記憶部１２１に格納する。
【００８１】
接続先端末選択部１０７は、端末情報記憶部１２１に格納されている端末情報のリスト及びトポロジ情報記憶部１２２に格納されているトポロジ情報を読み出し、トポロジ情報に格納されておらず端末情報のリストに格納されている配信サーバ４又は他端末１’の中から、自端末１の接続先となる配信サーバ４又は他端末１’の候補（接続先端末）を選択し、接続先端末の端末情報を接続先端末情報として接続制御部１０８に出力し接続を指示する。
【００８２】
接続先端末選択部１０７は、新規接続先端末選択部１７１と、再接続先端末選択部１７２とを備える。新規接続先端末選択部１７１は、コンテンツ配信システムに参加し、新規に接続処理を行う。新規接続先選択方法の詳細は図９を参照して後述する。
【００８３】
再接続先端末選択部１７２は、上流端末の離脱を契機に配信ツリーの再構築を行う。Ｐ２Ｐ端末１の上流側に接続されていたＰ２Ｐ端末１’が離脱して離脱端末になった場合に、接続先のＰ２Ｐ端末１’となる再接続先端末を選択する際に、コンテンツの視聴形態がイベント視聴形態である端末よりも通常視聴形態である端末を優先して選択する。また、離脱端末がイベントの終了前に視聴を終了していることも想定されるため、接続先のＰ２Ｐ端末１’となる再接続先端末を選択する際に、コンテンツの視聴形態がイベント視聴形態である端末については、離脱端末と同一のイベント告知により視聴を開始したＰ２Ｐ端末よりも、離脱端末と異なるイベント告知により視聴を開始したＰ２Ｐ端末を優先して選択するのが好適である。配信ツリー再構築方法の詳細は図１０を参照して後述する。
【００８４】
接続制御部１０８は、接続先端末選択部１０７から接続先端末情報を入力し、接続先端末１’に接続要求を送信する。また、他のＰ２Ｐ端末１’から接続要求・切断要求を受け付ける。接続制御部１０８は、接続・切断の結果とともに端末情報を端末情報管理部１０９に出力する。
【００８５】
端末情報管理部１０９は、接続制御部１０８から入力する接続・切断の結果及び端末情報をもとに、端末情報の「現在接続数」の値を更新し、自端末１の端末ＩＤに対応付けて端末情報記憶部１２１に格納する。また、トポロジ情報記憶部１２２から切断した端末のトポロジ情報を削除し、新たに接続した端末のトポロジ情報を格納する。
【００８６】
また、端末情報管理部１０９は、自端末１の端末情報を通信Ｉ／Ｆ１０１を介して、端末情報記憶部１２１に記憶されている他のＰ２Ｐ端末１’及び端末管理サーバ２に送信する。自端末１の端末情報をいずれかの情報が更新される度に送信してもよいし、定期的に送信してもよい。さらに、他のＰ２Ｐ端末１’から通信Ｉ／Ｆ１０１を介して端末情報を受信し、端末情報記憶部１２１に記憶するとともに、端末情報記憶部１２１に格納されている端末ＩＤを有する他のＰ２Ｐ端末１’に対して、例えばゴシップ型マルチキャストなどを用いて転送してもよい。
【００８７】
コンテンツデータ中継部１１０は、上流側に接続された接続先端末１’から通信Ｉ／Ｆ１０１を介してコンテンツデータを順次受信し、受信したコンテンツデータを下流側に接続された接続先端末１’へ中継するとともに、受信したコンテンツデータをコンテンツバッファ１２３に格納する。
【００８８】
コンテンツ再生部１１１は、コンテンツバッファ１２３からコンテンツデータを取り出し、順次デコードして再生する。
【００８９】
視聴終了情報送信部１１２は、コンテンツの視聴が終了すると、端末情報記憶部２２１から取得した端末ＩＤ及びイベントＩＤを含む視聴終了情報を端末管理サーバ２に送信する。
【００９０】
［新規接続先選択方法］
次に、新規に接続処理を行う新規接続先選択方法について説明する。図９は、コンテンツ配信システムに参加し、新規接続先選択処理の動作を示すフローチャートである。
【００９１】
Ｐ２Ｐ端末１は、自端末の端末情報を含む接続先紹介要求を端末管理サーバ２に送信する（ステップＳ１０１）。端末管理サーバ２は、接続先紹介要求を受信すると端末情報を抽出し（ステップＳ１０２）、抽出した端末情報により端末情報記憶部２２１を更新する（ステップＳ１０３）。次に、端末情報記憶部２２１より、現在接続数が接続可能数よりも小さい端末情報を複数抽出し（抽出数をＮとする）接続先候補リストを作成し（ステップＳ１０４）、Ｐ２Ｐ端末１へ送信する（ステップＳ１０５）。Ｐ２Ｐ端末１は、接続先候補リストを受信すると（ステップＳ１０６）、接続先候補リストの端末情報を端末情報記憶部１２１に格納する（ステップＳ１０７）。
【００９２】
次にループカウンタｉを０に初期化し（ステップＳ１０８）、ループ処理に入る。ｉ＜Ｎである場合は（ステップＳ１０９−ＹＥＳ）、接続先候補リストからｉ番目の端末情報を抽出し（ステップＳ１１０）、抽出した端末情報に対応するＰ２Ｐ端末（以下、「接続先端末」と称し、符号を１−１とする）に接続要求を送信する（ステップＳ１１１）。
【００９３】
接続先端末１−１は、接続要求を受信すると（ステップＳ１１２）、接続受付けが可能か否か判定し（ステップＳ１１３）、接続受付けが不可能な場合は（ステップＳ１１３−ＮＯ）、接続拒否応答をＰ２Ｐ端末１に送信し（ステップＳ１１４）、接続受付けが可能である場合は（ステップＳ１１３−ＹＥＳ）、接続応答をＰ２Ｐ端末１に送信（ステップＳ１１７）する。
【００９４】
Ｐ２Ｐ端末１は、接続先端末１−１から接続拒否応答を受信すると（ステップＳ１１５）、ループカウンタｉをインクリメントして（ステップＳ１１６）、ステップＳ１０９に戻る。また、Ｐ２Ｐ端末１は、接続先端末１−１から接続応答を受信すると（ステップＳ１１８）、トポロジ情報に接続先端末１−１を上流端末として登録し（ステップＳ１１９）、自端末１の端末情報の接続端末数を更新して（ステップＳ１２０）、処理を終了する。ステップＳ１０９において、ｉ＜Ｎでない場合は（ステップＳ１０９−ＮＯ）、ステップＳ１０１に戻る。
【００９５】
［配信ツリー再構築方法］
次に、配信ツリー再構築方法について説明する。図１０は、配信ツリー再構築方法の動作を示すフローチャートである。
【００９６】
Ｐ２Ｐ端末１は、上流側に接続されたＰ２Ｐ端末の離脱を検知し（以下、離脱したＰ２Ｐ端末を「離脱端末」と称する）（ステップＳ２０１）、トポロジ情報から離脱端末を削除し（ステップＳ２０２）、自端末１の端末情報の接続端末数を更新する（ステップＳ２０３）。次に端末情報記憶部１２１から、離脱端末の端末情報を後に利用するために抽出する（ステップＳ２０４）。次に、端末情報記憶部１２１から、トポロジ情報記憶部１２２に格納されておらず、現在接続数が接続可能数よりも小さいＰ２Ｐ端末１’の端末情報を抽出し（抽出数をＮとする）、再接続先候補リストを作成する（ステップＳ２０５）。
【００９７】
次に、再接続先候補リストから、視聴形態が通常視聴形態であるＰ２Ｐ端末１’の端末情報を抽出し、接続可能数が大きい順にソートし、ソート済み再接続先リストを作成する（ステップＳ２０６）。そして、ステップＳ２０４にて抽出した離脱端末の視聴形態がイベント視聴形態か否かを確認し（ステップＳ２０７）、イベント視聴形態である場合は（ステップＳ２０７−ＹＥＳ）、再接続先候補リストから視聴形態がイベント視聴形態であり、イベントＩＤが離脱端末のイベントＩＤと異なるＰ２Ｐ端末１’の端末情報を抽出し、接続可能数が大きい順にソートし、ソート済み再接続先候補リストの末尾に追加する（ステップＳ２０８）。
【００９８】
次に、再接続先候補リストから、視聴形態がイベント視聴形態であり、イベントＩＤが離脱端末のイベントＩＤと等しいＰ２Ｐ端末１’の端末情報を抽出し、接続可能数が大きい順にソートし、ソート済み再接続先候補リストの末尾に追加する（ステップＳ２０９）。ステップＳ２０７に戻って離脱端末の視聴形態が通常視聴形態であった場合は（ステップＳ２０９−ＮＯ）、再接続先候補リストから、視聴形態がイベント視聴形態であるＰ２Ｐ端末１’の端末情報を抽出し、接続可能数が大きい順にソートし、ソート済み再接続先候補リストの末尾に追加する（ステップＳ２１０）。
【００９９】
次にループカウンタｉを０に初期化し（ステップＳ２１１）、ループ処理に入る。ｉ＜Ｎである場合は（ステップＳ２１２−ＹＥＳ）、ソート済み再接続先候補リストからｉ番目の端末情報を抽出し（ステップＳ２１３）、抽出した端末情報に対応するＰ２Ｐ端末（以下、「再接続先端末」と称し、符号を１−２とする）に接続要求を送信する（ステップＳ２１４）。
【０１００】
再接続先端末１−２は、接続要求を受信すると（ステップＳ２１５）、接続受付けが可能か否か判定し（ステップＳ２１６）、接続受付けが不可能な場合は（ステップＳ２１６−ＮＯ）、接続拒否応答をＰ２Ｐ端末１に送信し（ステップＳ２１７）、接続受付けが可能である場合は（ステップＳ２１６−ＹＥＳ）、接続応答をＰ２Ｐ端末１に送信（ステップＳ２２０）する。
【０１０１】
Ｐ２Ｐ端末１は、再接続先端末１−２から接続拒否応答を受信すると（ステップＳ２１８）、ループカウンタｉをインクリメントして（ステップＳ２１９）、ステップＳ２１２に戻る。また、Ｐ２Ｐ端末１は、再接続先端末１−２から接続応答を受信すると（ステップＳ２２１）、トポロジ情報に再接続先端末１−２を上流端末として登録し（ステップＳ２２２）、自端末１の端末情報の接続端末数を更新して（ステップＳ２２３）処理を終了する。ステップＳ２１２において、ｉ＜Ｎでない場合は（ステップＳ２１２−ＮＯ）、図９に示した新規接続先選択処理を実行する（ステップＳ２２４）。
【０１０２】
なお、本実施形態では、端末管理サーバ２の負荷を軽減させるために、各Ｐ２Ｐ端末１でも端末情報を管理する構成としているが、Ｐ２Ｐ端末１が端末情報を管理せず、配信ツリー再構築時にも、新規接続先選択時と同様に、端末管理サーバ２から接続先候補リストを受信するようにしてもよい。
【０１０３】
上述したように、本発明に係るＰ２Ｐ端末１は、コンテンツの視聴形態を、イベント視聴形態か通常視聴形態かに分類する視聴形態判定部１０５と、当該Ｐ２Ｐ端末１の上流側に接続されていたＰ２Ｐ端末が離脱した場合に、再接続先端末１−２を選択する際に、コンテンツの視聴形態がイベント視聴形態であるＰ２Ｐ端末１’よりも通常視聴形態であるＰ２Ｐ端末１’を優先して選択する再接続先端末選択部１７２とを備える。同様に、本発明に係る配信ツリー再構築方法は、コンテンツの視聴形態をイベント視聴形態か通常視聴形態かに分類するステップと、当該Ｐ２Ｐ端末１の上流側に接続されていたＰ２Ｐ端末が離脱した場合に、再接続先端末１−２を選択する際に、コンテンツの視聴形態がイベント視聴形態であるＰ２Ｐ端末１’よりも通常視聴形態であるＰ２Ｐ端末１’を優先して選択するステップとを含む。これにより、上流端末が離脱した際に、再接続の直後に離脱する可能性の低いＰ２Ｐ端末１’を再接続先端末１−２として選択することができ、安定した配信を実現することができる。
【０１０４】
さらに、再接続先端末選択部１７２は、再接続先端末１−２を選択する際に、コンテンツの視聴形態がイベント視聴形態であるＰ２Ｐ端末１’について、離脱端末と同一のイベント告知により視聴を開始したＰ２Ｐ端末１’よりも、離脱端末と異なるイベント告知により視聴を開始したＰ２Ｐ端末１’を優先して選択するようにしてもよい。これにより、離脱端末がイベントの終了前に視聴を終了した場合に、離脱端末と同一のイベント告知により視聴を開始したＰ２Ｐ端末１’と再接続する可能性を低くすることができる。
【０１０５】
視聴形態判定部１０５は、イベントが終了すると（端末管理サーバ２からイベントクリア情報を受信すると）、該イベントに係るコンテンツの視聴を継続している場合に、視聴形態を通常視聴形態に分類するようにしてもよい。これにより、イベントが終了してもそのまま視聴を続けるＰ２Ｐ端末を通常端末に分類して、再接続先端末１−２の候補としての優先度を上げることができるようになる。
【０１０６】
また、本発明に係る端末管理サーバ２は、イベントが終了したか否かを判定するイベント終了判定部２８と、イベント終了判定部２８によりイベントが終了したと判定されると、イベントクリア情報をＰ２Ｐ端末１に送信し、イベントの終了を通知するイベントクリア情報送信部２９とを備える。イベント終了判定部２８は、イベント告知からの誘導によりＰ２Ｐネットワークに接続されたＰ２Ｐ端末１の数の減少度合いに基づき、該イベントが終了したか否かを判定するようにしてもよい。これにより、イベントの終了判定の推定精度を高めることができる。
【０１０７】
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の複数の構成ブロックを１つに組み合わせたり、あるいは１つの構成ブロックを分割したりすることが可能である。
【符号の説明】
【０１０８】
１      Ｐ２Ｐ端末
２      端末管理サーバ
３      イベント告知管理サーバ
４      配信サーバ
５      Ｗｅｂサーバ
２１    通信Ｉ／Ｆ
２２    記憶部
２３    接続先紹介要求受信部
２４    端末情報更新部
２５    視聴終了情報受信部
２６    イベント開始情報受信部
２７    イベント終了情報受信部
２８    イベント終了判定部
２９    イベントクリア情報送信部
３１    通信Ｉ／Ｆ
３２    入力Ｉ／Ｆ
３３    イベントＩＤ管理部
３４    イベント告知情報生成部
３５    外部ソーシャルメディア投稿部
３６    イベント開始情報生成部
３７    イベント終了情報生成部
１０１  通信Ｉ／Ｆ
１０２  記憶部
１０３  アクセス情報受信部
１０４  イベントクリア情報受信部
１０５  視聴形態判定部
１０６  接続先紹介要求部
１０７  接続先端末選択部
１０８  接続制御部
１０９  端末情報管理部
１１０  コンテンツデータ中継部
１１１  コンテンツ再生部
１１２  視聴終了情報送信部
１２１  端末情報記憶部
１２２  トポロジ情報記憶部
１２３  コンテンツバッファ
２２１  端末情報記憶部
２２２  イベント管理情報記憶部
【図１】
2015198437.tif 000005
【図２】
2015198437.tif 000006
【図３】
2015198437.tif 000007
【図４】
2015198437.tif 000008
【図５】
2015198437.tif 000009
【図６】
2015198437.tif 000010
【図７】
2015198437.tif 000011
【図８】
2015198437.tif 000012
【図９】
2015198437.tif 000013
【図１０】
2015198437.tif 000014
【図１１】
2015198437.tif 000015