JP2015049634A - コンテンツ配信システム、配信支援サーバ、p2p端末、及びコンテンツ配信方法 - Google Patents

コンテンツ配信システム、配信支援サーバ、p2p端末、及びコンテンツ配信方法 Download PDF

Info

Publication number
JP2015049634A
JP2015049634A JP2013180152A JP2013180152A JP2015049634A JP 2015049634 A JP2015049634 A JP 2015049634A JP 2013180152 A JP2013180152 A JP 2013180152A JP 2013180152 A JP2013180152 A JP 2013180152A JP 2015049634 A JP2015049634 A JP 2015049634A
Authority
JP
Japan
Prior art keywords
terminal
request
distribution
transfer
support server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013180152A
Other languages
English (en)
Other versions
JP6155142B2 (ja
Inventor
敏 西村
Satoshi Nishimura
敏 西村
壮 田中
So Tanaka
壮 田中
遠藤 洋介
Yosuke Endo
洋介 遠藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Hoso Kyokai NHK, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP2013180152A priority Critical patent/JP6155142B2/ja
Publication of JP2015049634A publication Critical patent/JP2015049634A/ja
Application granted granted Critical
Publication of JP6155142B2 publication Critical patent/JP6155142B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】P2P非対応端末に対して、P2Pネットワークで中継されているコンテンツを安定かつ効率的に配信可能とする。【解決手段】P2P非対応端末7は、セグメント化データのリクエストを配信支援サーバ3に送信する。配信支援サーバ3は、到達可否情報及び分配余力情報を基に、リクエストの転送先候補端末となるP2P端末6を選択し、転送受付要求を送信する。P2P端末6は転送受付要求を受信すると、セグメント化データを保有し且つ余剰分配数が1以上の場合に転送受付可能応答を配信支援サーバ3に送信する。配信支援サーバ3は転送受付可能応答を受信した場合、セグメント化データのURLを含むレスポンスをP2P非対応端末7に送信し、P2P非対応端末7はレスポンスを受信すると、レスポンスから抽出したURLにリクエストを送信する。P2P端末6はリクエストを受信すると、セグメント化データをP2P非対応端末7に送信する。【選択図】図7

Description

本発明は、コンテンツ配信システム、配信支援サーバ、P2P端末、及びコンテンツ配信方法に関するものである。
近年インターネットにおいては、ストリーミングによる動画配信サービスが普及している。また、受信端末において視聴したいコンテンツを選択し、配信サーバより選択したコンテンツを受信するVOD(Video On Demand)のような一対一の配信サービスに加え、同一のコンテンツを多数の受信端末に同時に伝送する一対多(放送型)の配信サービスが知られている。
さらに、IPネットワークにおいて、放送型の動画配信サービスを効率よく行う方式として、IPマルチキャストが知られている。しかし、このIPマルチキャスト方式では、通信事業者の専用ネットワークが必要であり、複数事業者を跨いだサービスが困難であった。
こうした背景から、通信事業者の専用のネットワークを必要とせずに、複数事業者を跨いだ放送型の動画配信サービスを可能とするため、ピアツーピア技術を用いたコンテンツの分散配信技術が考案された。こうした技術は、コンテンツを要求する端末同士で論理的なツリーを作り、端末上で動作するアプリケーションソフトが相互にデータ転送を行うことによりマルチキャスト(一対多通信)を実現する(例えば、特許文献1参照)。
特許文献1に記載のストリームデータ分散配信方法では、インターネット等のネットワーク環境において、各ノード間でストリームデータの送受信を行うために、各ノードは、上流ノードと下流ノードとの接続関係を示すトポロジ情報を交換して、上流ノードから下流ノードへストリームデータを中継している。このストリームデータ分散配信方法では、各ノード間でトポロジ情報を交換するために、各ノードが自律的にトポロジ情報を記憶及び更新し、さらに提供する等の管理を行う機能を備えている。
また、このようなコンテンツ配信方式の別の例として、配信サーバにおいて、ストリーミングメディアを複数のデータパケットに断片化し(断片化されたデータをチャンクと呼ぶ)、各端末は必要なチャンクを持つ端末を動的に検出し、検出した端末から、プル型でチャンクを受信し、受信したチャンクを再構成することにより、所望のストリーミングメディアを得る技術が知られている(例えば、非特許文献1参照)。
図9は、コンテンツ配信システムの一例を示す図である。図9に示す例では、配信サーバによって1〜6の6個に断片化したチャンクのうち、奇数番号のチャンクが実線に沿って、偶数番号のチャンクが破線に沿ってそれぞれ転送されることで、図示する6台の各端末(利用者端末)に対して、全てのチャンクが行き届いている様子を示している。このようなP2Pネットワークによるコンテンツ配信システムは、配信サーバから送出されるコンテンツを端末(P2P端末)が次々と中継していくことによって、配信サーバの負荷を軽減することが可能となり、低コストで大規模な配信を実現する方式として期待されている(以後、「P2P配信」と呼ぶ)。
ところが、このようなP2Pネットワークに参加するためには、端末においてピアツーピア機能を実装したアプリケーションソフトを動作させる必要がある。そのため、アプリケーションソフトを動作させることが困難な端末(スマートフォンやタブレット端末、スマートテレビなど)や、このようなソフトを利用したくないユーザの端末は、P2Pネットワークに参加してコンテンツを受信することができなかった。
ところで、昨今の動画配信では、専用のサーバと専用のプロトコルによるストリーミング配信方式から、汎用的なWebサーバによりHTTPプロトコルを用いてストリーミング配信する方式への移行が進んでおり、多くのデバイス向けの配信において主流となっている。このようなHTTPプロトコルによるストリーミング配信方式(アダプティブストリーミング)としては、ITベンダによる独自技術が普及している他、これらストリーミング方式の統一を意図した国際標準規格の策定が進んでいる(例えば、非特許文献2参照)。いずれの技術も基本的なコンセプトは同様であり、Webサーバには動画コンテンツを数秒から数十秒程度のファイルに分割したもの(セグメント化データ)と、それらの動画コンテンツの属性やURLを記述したマニフェストファイルを用意し、端末はマニフェストファイルのURLに従って次々とセグメント化データを受信し、1本の動画コンテンツにつなぎ合わせて再生するものである。
HTTPプロトコルによるストリーミング配信方式では、セグメント化データが順次生成される(例えば、非特許文献3参照)。図10は、HTTPプロトコルによるストリーミング配信方式の概念を示す図である。図10では、ライブエンコーダでエンコードされたコンテンツが時間の進行に合わせて分割され1〜6のセグメント化データが順次生成されている。マニフェストも同様に、セグメント化データが生成されるのに合わせて内容が更新されている(一番左のマニフェストファイルには1〜3のセグメント化データのURLが登録されており、次のマニフェストファイルには2〜4のセグメント化データのURLが登録されているように、順次登録されているセグメント化データのURLが一定個数ずつスライドしている)。セグメント化データ及びマニフェストは順次Webサーバに供給されている。受信端末は、Webサーバからマニフェストファイルを受信し、マニフェストファイルに登録されているセグメント化データを順次HTTPプロトコルにより受信する。また、更新されたマニフェストファイルを受信し、新規に登録されたセグメント化データを受信する処理を繰り返すことにより一連のコンテンツを受信することができる(以後、「HTTP配信」と呼ぶ)。
こうした状況から、P2P配信とHTTP配信を併用し、P2Pネットワークに参加可能な端末(P2P端末)へはP2P配信を行い、P2Pネットワークに参加不可能な端末(P2P非対応端末)に対しては、コンテンツ配信網(CDN:Contents Delivery Network)を利用してHTTP配信を行っていた。図11に、このような配信方式の一例を示す。
HTTP配信は、多くの端末やネットワーク環境において受信が可能である一方で、各端末がコンテンツ配信網に設置されたWebサーバから個別にコンテンツを受信するため、端末数に応じて配信コストが増大するといった問題があった。そこで、こうした問題に対して、端末装置がオーバーレイネットワークに参加することなく、オーバーレイネットワークで配信されるコンテンツを効率良く取得することを可能としたサーバ装置、ページ送信プログラム、及びページ送信方法が開示されている(例えば、特許文献2参照)。
特開2003−169089号公報 特開2012−78901号公報
CoolStreaming/DoNet: A Data-Driven Overlay Network for Efficient Live Media Streaming"、In Proc. Of the 24thIEEE INFOCO, March 2005,p.2102-2111 XinyanZhang, Jiangchuan Liu, Bo Li and Tak-ShingPeter Yum "次世代動画配信技術「MPEG−DASH」技術概要と標準化・関連技術動向"、映像情報メディア学会誌、Vol.67、No.2、2013、p.109−115
特許文献2に記載の技術によれば、サーバ装置は、第1の端末装置(P2P非対応端末)からリクエストされたコンテンツの検索結果に基づいて、Webページに記述する所在情報であって、オーバーレイネットワーク(P2Pネットワーク)を構成する情報処理装置(P2P端末)の所在を示す前記所在情報を決定する。そして、サーバ装置は、決定した所在情報が記述されるWebページを第1の端末装置へ送信することにより、端末装置がオーバーレイネットワークに参加することなく、オーバーレイネットワークで配信されるコンテンツを取得することを可能としている。
しかしながら、オーバーレイネットワークに参加する情報処理装置が一般利用者の端末であった場合、情報処理装置がいつ視聴を終了してオーバーレイネットワークから離脱するかは分からない。そのため第1の端末装置が、サーバ装置から受信したWebページに記載されている所在情報に基づいてコンテンツのリクエストをおこなっても、当該所在情報に該当する情報処理装置が既にオーバーレイネットワークから離脱してしまった場合、コンテンツを取得できず安定に視聴できないという問題があった。
また、一般家庭や企業のPC(情報処理装置/P2P端末)は、NAT(Network Address Translation)ルータを介してインターネットに接続していることが多い。このような情報処理装置は、自身から接続要求を行ってインターネット上の他のPCやサーバと接続を確立して通信を行うことができる一方で、インターネット上の他のPCやサーバからの接続要求はNATルータで遮られてしまうため、受付けることができず接続が確立できない。特許文献2はこの点を考慮していない。そのため仮に、情報処理装置がNATルータを介してインターネットに接続しており、接続要求を受付けることができない場合、第1の端末装置からコンテンツのリクエストを受け付けることができない。その結果、第1の端末装置はコンテンツを取得できず、安定に視聴することができないといった問題があった。
かかる事情に鑑みてなされた本発明の目的は、P2P非対応端末に対して、P2Pネットワークで中継されているコンテンツを安定かつ効率的に配信可能とするコンテンツ配信システム、P2P端末、配信支援サーバ、及びコンテンツ配信方法を提供することにある。
上記課題を解決するため、本発明に係るコンテンツ配信システム装置は、P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムであって、前記P2P非対応端末は、コンテンツを分割したセグメント化データのリクエストを前記配信支援サーバに送信するHTTPリクエスト送信部を備え、前記配信支援サーバは、P2P端末が他の端末からの接続要求を受付けることが可能か否かを示す到達可否情報、及びP2P端末のデータの分配余力を示す分配余力情報を基に、複数のP2P端末から前記リクエストの転送先候補端末となるP2P端末を選択し、該P2P端末に前記リクエストの転送が可能か否かを確認する転送受付要求を送信するリクエスト転送部を備え、前記P2P端末は、前記転送受付要求を受信すると、前記セグメント化データを保有しており、且つデータの分配余力が所定の閾値以上である場合に、転送受付可能応答を前記配信支援サーバに送信する転送受付要求処理部を備え、前記配信支援サーバは、前記転送先候補端末となるP2P端末から転送受付可能応答を受信した場合は、該P2P端末におけるセグメント化データのURLを含むレスポンスを前記P2P非対応端末に送信するHTTPレスポンス送信部を備え、前記P2P非対応端末のHTTPリクエスト送信部は、前記配信支援サーバから前記レスポンスを受信すると、前記レスポンスに含まれるURLに前記リクエストを送信する手段を有し、前記P2P端末は、前記P2P非対応端末から前記リクエストを受信すると、前記セグメント化データを前記P2P非対応端末に送信するHTTP送受信部を備えることを特徴とする。
また、上記課題を解決するため、本発明に係る配信支援サーバは、P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムにおける配信支援サーバであって、P2P非対応端末からコンテンツを分割したセグメント化データのリクエストを受信すると、P2P端末が他の端末からの接続要求を受付けることが可能か否かを示す到達可否情報、及びP2P端末のデータの分配余力を示す分配余力情報を基に、複数のP2P端末から前記リクエストの転送先候補端末となるP2P端末を選択し、該P2P端末に前記リクエストの転送が可能か否かを確認する転送受付要求を送信するリクエスト転送部と、前記転送先候補端末となるP2P端末から転送受付可能応答を受信した場合は、該P2P端末におけるセグメント化データのURLを含むレスポンスを前記P2P非対応端末に送信するHTTPレスポンス送信部と、を備えることを特徴とする。
さらに、本発明に係るコンテンツ配信支援サーバにおいて、前記リクエスト転送部は、前記到達可否情報が他の端末からの接続要求を受付けることが可能であることを示しているP2P端末のうち、前記分配余力が大きいものから優先して、前記リクエストの転送先候補端末となるP2P端末を選択することを特徴とする。
さらに、本発明に係るコンテンツ配信支援サーバにおいて、前記リクエスト転送部は、前記転送先候補端末が存在しない場合、又は前記転送先候補端末の全てから転送受付不可応答を受信した場合は、転送不可情報を前記HTTPレスポンス送信部に出力し、前記HTTPレスポンス送信部は、前記リクエスト転送部から前記転送不可情報が入力されると、前記セグメント化データを前記P2P非対応端末に直接送信することを特徴とする。
また、上記課題を解決するため、本発明に係るP2P端末は、P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムにおけるP2P端末であって、P2P非対応端末からコンテンツを分割したセグメント化データのリクエストを受信した配信支援サーバから、前記リクエストの転送が可能か否かを確認する転送受付要求を受信すると、前記セグメント化データを保有しており、且つデータの分配余力が所定の閾値以上である場合に、転送受付可能応答を前記配信支援サーバに送信する転送受付要求処理部と、前記P2P非対応端末から前記リクエストを受信すると、前記セグメント化データを前記P2P非対応端末に送信するHTTP送受信部と、を備えることを特徴とする。
さらに、本発明に係るコンテンツP2P端末において、前記転送受付可能応答を送信してから所定の時間、アプリケーションの終了処理を停止させるアプリケーション終了制御部を更に備えることを特徴とする。
また、上記課題を解決するため、本発明に係るコンテンツ配信方法は、P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムにおけるコンテンツ配信方法であって、前記P2P非対応端末により、コンテンツを分割したセグメント化データのリクエストを前記配信支援サーバに送信するステップと、前記配信支援サーバにより、P2P端末が他の端末からの接続要求を受付けることが可能か否かを示す到達可否情報、及びP2P端末のデータの分配余力を示す分配余力情報を基に、複数のP2P端末から前記リクエストの転送先候補端末となるP2P端末を選択し、該P2P端末に前記リクエストの転送が可能か否かを確認する転送受付要求を送信するステップと、前記P2P端末により、前記転送受付要求を受信すると、前記セグメント化データを保有しており、且つデータの分配余力が所定の閾値以上である場合に、転送受付可能応答を前記配信支援サーバに送信するステップと、前記配信支援サーバにより、前記転送先候補端末となるP2P端末から転送受付可能応答を受信した場合は、該P2P端末におけるセグメント化データのURLを含むレスポンスを前記P2P非対応端末に送信するステップと、前記P2P非対応端末により、前記配信支援サーバから前記レスポンスを受信すると、前記レスポンスに含まれるURLに前記リクエストを送信するステップと、前記P2P端末により、前記P2P非対応端末から前記リクエストを受信すると、前記セグメント化データを前記P2P非対応端末に送信するステップと、を含むことを特徴とする。
本発明によれば、コンテンツ配信システムのP2Pネットワークに参加していない受信端末が、P2Pネットワークで中継されているコンテンツを受信できるようになるため、コストを削減しつつ、安定かつ効率的なコンテンツ配信が可能となる。
本発明の一実施形態に係るコンテンツ配信システムの構成例を示すブロック図である。 コンテンツ、セグメント化データ、及びデータチャンクの関係の一例を示す図である。 本発明の一実施形態に係るコンテンツ配信システムにおけるP2P端末の構成例を示すブロック図である。 本発明の一実施形態に係るコンテンツ配信システムにおける配信支援サーバの構成例を示すブロック図である。 マニフェストファイルの一例を示す図である。 本発明の一実施形態に係るコンテンツ配信システムにおけるP2P非対応端末の構成例を示すブロック図である。 本発明の一実施形態に係るコンテンツ配信方法の動作を示すシーケンス図である。 HTTPリクエスト/HTTPレスポンスのメッセージフォーマットの一例を示す図である。 従来のコンテンツ配信システムの一例を示す図である。 従来のHTTPプロトコルによるストリーミング配信方式の概念を示す図である。 従来のP2P配信とHTTP配信を併用した配信方式の一例を示す図である。
以下、本発明の一実施形態について、図面を参照して詳細に説明する。
図1は、本発明の一実施形態に係るコンテンツ配信システムの構成例を示すブロック図である。この例では、コンテンツ配信システムは、オリジンサーバ1と、配信サーバ2と、配信支援サーバ3と、複数のP2P端末6と、P2P非対応端末7とを備え、それぞれインターネットに接続される。P2P端末6−1はポート開放可能NATルータ4とのローカルネットワークを介してインターネットに接続され、P2P端末6−2はポート開放不可NATルータ5とのローカルネットワークを介してインターネットに接続され、P2P端末6−3は直接インターネットに接続される。
なお、図1においては、オリジンサーバ1、配信サーバ2、及び配信支援サーバ3を個別のサーバとして表記しているが、一つのサーバに全ての機能を具備してもよい。また、P2P非対応端末7はインターネットに直接接続する例を示しているが、ポート開放可能NATルータ4又はポート開放不可NATルータ5を介してインターネットに接続してもよい。また、説明の便宜上、P2P端末6を3つのみとし、P2P非対応端末7を1つのみとしている。
ポート開放可能NATルータ4は、例えばUPnP(Universal Plug and Play)によるポート開放機能に対応しており、ルータの外部(インターネット)からの接続要求をローカルネットワーク内のP2P端末6−1に転送することができるルータである。よって、ポート開放可能NATルータ4にローカルネットワークを介して接続しているP2P端末6−1は、インターネットを介して配信サーバ2、配信支援サーバ3、他のP2P端末6−1と、TCP/IPなどの通信プロトコルにより相互に接続要求・接続要求の受付けが可能であるとともに(到達可であり)、P2P端末6−2及びP2P非対応端末7からの接続要求の受付けが可能であり、接続を確立したうえで、データを送受信することが可能であるものとする。
一方、ポート開放不可NATルータ5は、例えばUPnPによるポート開放機能などに対応していないか、対応していても当該機能を無効にしていることにより、ルータの外部からの接続要求をローカルネットワーク内のP2P端末6−2に転送することができないルータである。よってポート開放不可NATルータ5にローカルネットワークを介して接続しているP2P端末6−2は、インターネットを介して配信サーバ2、配信支援サーバ3、及びP2P端末6−1に対して、自身が接続要求行うことで接続を確立し、データを送受信することは可能であるが、それら機器、及びP2P非対応端末7、他のP2P端末6−2からの接続要求を受け付けることはできないものとする。
オリジンサーバ1は、コンテンツの配信元となるサーバであり、コンテンツをセグメント化データに分割するとともに、マニフェストファイルを生成し、配信サーバ2及び配信支援サーバ3に送信する。
配信支援サーバ3は、P2P非対応端末7に対してHTTP配信によりコンテンツを配信するWebサーバとして振る舞う。配信支援サーバ3は、オリジンサーバ1からセグメント化データ及びマニフェストファイルを受信し、P2P非対応端末7のリクエストに対してマニフェストファイルを送信するとともに、セグメント化データの配信先を転送する。セグメント化データを転送可能なP2P端末6が存在する場合には、P2P端末6を介してP2P非対応端末7にセグメント化データを配信し、セグメント化データを転送可能なP2P端末6が存在しない場合には、P2P非対応端末7に直接セグメント化データをHTTP配信する。
配信サーバ2は、オリジンサーバ1から受信したセグメント化データをデータチャンクに分割し、配信サーバ2を頂点としてP2P端末が階層的に接続して構成されるP2Pネットワークに参加するP2P端末6に対し順次P2P配信する。
ここで、P2P配信におけるコンテンツの配信単位であるデータチャンクと、HTTP配信におけるコンテンツの配信単位であるセグメント化データの関係について説明する。P2P配信では、複数端末からのデータの並行受信やデータ受信先端末の切替えなど、端末間の配信制御をきめ細かく行うため、コンテンツは短い時間間隔(たとえば1秒以下)で分割され配信される。一方で、HTTP配信では、頻繁なマニフェストファイルの更新を避けるため、コンテンツは数秒〜数十秒といった比較的長い時間間隔で分割され配信される。以上から、データチャンクはセグメント化データをさらに分割したデータとする。なお、データチャンクをセグメント化データと同一サイズとしてもよい。
図2は、コンテンツ、セグメント化データ、及びデータチャンクの関係の一例を示す図である。図2では、コンテンツデータが、一定間隔あるいは任意の間隔でセグメント化データに分割され、それぞれのセグメント化データにセグメントIdが付与されている。なお、セグメント化データは例えば、「コンテンツ名+セグメントId+拡張子」などセグメント化データを一意に特定できる識別子でファイルとして保存されていてもよい。
次に、それぞれのセグメント化データは、データチャンクに分割され、それぞれのデータチャンクにはチャンク番号が付与されている。また、データチャンクが格納しているセグメント化データを識別するため、データチャンクには、格納しているセグメントのセグメントId、そのセグメントがいくつに分割されているかを示す分割数、分割されたセグメントの何番目に相当するかを示す分割番号が付与されている。図2の例では、セグメントId=1のセグメント化データが3つに分割され、チャンク番号=1のデータチャンクがセグメント化データの最初の分割データを格納し、チャンク番号=2のデータチャンクが2番目の分割データを格納していることを示している。
P2P端末6は、配信サーバ2や他のP2P端末6と接続してデータチャンクを受信・転送するとともに、P2P非対応端末7にコンテンツのセグメント化データを送信する。
[P2P端末]
次に、P2P端末6の詳細について説明する。図3は、本発明のP2P端末の構成例を示すブロック図である。この例では、各P2P端末6は、P2P配信制御部11と、HTTP配信制御部12と、記憶部13と、アプリケーション起動制御I/F14と、通信I/F15とを備える。
記憶部13は、端末情報記憶部131と、コンテンツバッファ132とを備える。
端末情報記憶部131は、自端末(自身のP2P端末)の端末情報及びP2Pネットワークに参加している他のP2P端末6及び配信サーバ2の端末情報を格納する。表1に、端末情報記憶部131に格納されている端末情報の一例を示す。
表1の例では、各P2P端末の端末情報をデータベース化した端末情報データベースの項目として、端末IDにそれぞれ関連付けられた、接続待受けアドレスと、HTTP通信ポートと、到達可否情報と、分配余力情報とを含んでいる。
端末IDは、配信サーバ2及びP2P端末6を一意に識別する識別子である。
接続待受けアドレスは、他端末から接続要求を受け付けることができるIPアドレスとポート番号の組を示している。ただし、到達可否の情報が「到達不可」の場合(表1の例では「否」)は、他のP2P端末6からの接続受付けが不可能なため、表1ではポート番号を“−−−−”と示している。
HTTP通信ポートは、P2P非対応端末7からのHTTP通信を待ち受けるポート番号を示している。ただし、到達可否情報が「到達不可」の場合は、P2P非対応端末7からのHTTP通信の接続受付けが不可能なため、表1では”−−−−”と示している。
到達可否情報は、自端末がインターネットを介して他の端末からの接続要求を受付けることが可能か否かを示す情報である。例えば、接続要求を受付けることが可能な場合に到達可否情報の値を「到達可」とし、接続要求を受付けることできない場合に到達可否情報の値を「到達不可」とする。到達可否情報が「到達可」である端末は、インターネット上の他の端末からの接続要求はNATルータ(ポート開放可能NATルータ4)で遮られず、接続要求を受け付けることができる。到達可否情報が「到達不可」である端末は、インターネット上の他の端末からの接続要求はNATルータ(ポート開放不可NATルータ5)で遮られる。
分配余力情報は、他の端末に対するデータチャンクの分配余力を示す情報であり、例えば余剰分配数とすることができる。余剰分配数は、データチャンクの送受信に係る伝送能力から算出される、データチャンクを同時に分配可能な端末数から、現在データチャンクを分配している端末数を差し引いた余剰の分配可能端末数を示す。余剰分配数が大きいほど余裕があることを意味する。本実施形態では、分配余力情報を余剰分配数として、以下説明する。
コンテンツバッファ132は、配信サーバ2や他のP2P端末6から受信したデータチャンク番号順に順次蓄積し、再生時間になってから一定時間(例えば5秒)経過した後に先頭のデータチャンクから順次削除するバッファである。
P2P配信制御部11は、接続制御部111と、端末情報管理部112と、通信環境計測部113と、コンテンツ再生部114と、データチャンク中継部115とを備える。
接続制御部111は、端末情報記憶部131から端末情報のリストを読み出し、自端末の接続相手(接続先)となる配信サーバ2又は他のP2P端末6を所定の処理により選択し、選択した配信サーバ2又は他のP2P端末6へ通信I/F15を介して接続要求を行う。また、他のP2P端末6から通信I/F15を介して接続要求を受付ける。また、現在の接続端末数を端末情報管理部112に出力する。
端末情報管理部112は、自端末の端末IDと、到達可否判定部1131から入力される到達可否情報と、余剰分配数とを含む端末情報を生成し、端末情報記憶部131に記憶する。余剰分配数は、帯域計測部1132から入力される分配可能数及び接続制御部111から入力される現在の接続端末数から算出される。また、端末情報管理部112は、端末情報を通信I/F15を介して配信支援サーバ3や、端末情報記憶部131に記憶されている他のP2P端末6へ送信する。さらに、端末情報管理部112は、他のP2P端末6から通信I/F15を介して端末IDを含む端末情報を受信し、端末情報記憶部131に端末IDに関連付けて端末情報を記憶するとともに、端末情報記憶部131に記憶されている別のP2P端末6に対して、例えばゴシップ型マルチキャストなどを用いて転送してもよい。
通信環境計測部113は、到達可否判定部1131と、帯域計測部1132とを備える。
到達可否判定部1131は、自端末が他のP2P端末6から接続要求を受付けることができるか否かを判断することにより、到達可又は到達不可を判定し、その判定結果を到達可否情報として端末情報管理部112に出力する。「到達可」は、当該P2P端末6が外部からの接続要求を受付けることができることを意味する。また、「到達不可」は、当該P2P端末が外部からの接続要求を受付けることができないことを意味する。図1に示したP2P端末6−1及び6−3は「到達可」のP2P端末であり、P2P端末6−2は「到達不可」のP2P端末である。
具体的には、到達可否判定部1131は、自端末がインターネットに直接接続しているか否かを判断する。また、到達可否判定部1131は、インターネットに直接接続しておらず、ローカルネットワークを介してポート開放可能NATルータ4又はポート開放不可NATルータ5に接続していると判断した場合は、当該ルータが外部からの接続要求を自端末へ転送できるか否かを判断する。
例えば、到達可否判定部1131は、自端末のIPアドレスを送信元アドレスとし、当該送信元アドレスを折り返すように設定したデータを、通信I/F15を介してインターネットに直接接続している所定のサーバへ送信する。そして、到達可否判定部1131は、通信I/F15を介して受信した送り返しのデータから、送り返しの送信元アドレスと自端末のIPアドレスとが一致する場合、自端末はインターネットに直接接続していると判断し、自端末は到達可のP2P端末であると判定する。一方、到達可否判定部1131は、送り返しの送信元アドレスと自端末のIPアドレスとが一致しない場合、自端末はインターネットに直接接続していないと判断し、ローカルネットワークを介してポート開放可能NATルータ4又はポート開放不可NATルータ5に接続していると判断する。そして、到達可否判定部1131は、接続しているポート開放可能NATルータ4又はポート開放不可NATルータ5に対してポート開放要求を行い、その結果、ポート開放可能の応答がある場合、当該ルータが外部からの接続要求を自端末へ転送できると判断し、自端末は到達可のP2P端末であると判定する。一方、到達可否判定部1131は、ポート開放不可能の応答がある場合、又は応答がない場合(ポート開放が無効の場合)に、当該ルータが外部からの接続要求を自端末へ転送できないと判断し、自端末は到達不可のP2P端末であると判定する。
帯域計測部1132は、自端末のデータチャンクの送受信に係る帯域の伝送能力を計測し、計測した伝送能力を基に分配可能数を算出し、端末情報管理部112に出力する。例えば、単位時間において大容量のデータを送受信できる場合は、高い伝送能力の値が計測され、小容量のデータしか送受信できない場合は、低い伝送能力の値が計測される。具体的には、帯域計測部1132は、ネットワークのスループット(Mbit/sec)を過去の通信履歴から又は事前に計測し、計測したスループットを伝送能力とする。分配可能数は、例えば、伝送能力とコンテンツのビットレートの比率とすることができる。あるいは、自端末が接続している契約回線種別の情報に応じて予め設定された規定値(例えば、契約回線種別がFTTH、ADSL又は携帯回線の場合、FTTH=8、ADSL=4、携帯回線=1)を分配可能数とすることができる。
コンテンツ再生部114は、コンテンツバッファ132に蓄積されたデータチャンクを再生する。
データチャンク中継部115は、コンテンツバッファ132からデータチャンクを取得し、通信I/F15を介して他のP2P端末6に送信する。また、データチャンク中継部115は、他のP2P端末6から通信I/F15を介してデータチャンクを取得し、コンテンツバッファ132に蓄積する。
HTTP配信制御部12は、転送受付要求処理部121と、HTTP送受信部122と、セグメント化データ再構成部123と、アプリケーション終了制御部124とを備える。
転送受付要求処理部121は、配信支援サーバ3から通信I/F15を介してセグメント化データの識別子であるセグメントIdを含む転送受付要求を受信する。そして、コンテンツバッファ132に当該セグメントIdを構成するデータチャンクが格納されており、且つ自端末の余剰分配数が所定の閾値以上(例えば、1以上)である場合に、配信支援サーバ3に転送受付が可能であることを示す転送受付可能応答を送信する。また、転送受付要求処理部121は、転送受付可能応答を送信する際に、アプリケーション終了制御部124の終了停止タイマを所定の時間(例えば、3秒)セットし、カウントダウンを開始する。一方、転送受付要求処理部121は、いずれかの条件が満たされない場合は、転送受付が不可能であることを示す転送受付不可応答を配信支援サーバ3に送信する。
HTTP送受信部122は、P2P非対応端末7からHTTPプロトコルによるセグメント化データのセグメントIdを含むHTTPリクエストを受信し、アプリケーション終了制御部124の終了停止タイマのカウントダウンを停止する。次に、HTTPリクエストからセグメントIdを抽出し、セグメント化データ再構成部123に出力する。
セグメント化データ再構成部123は、コンテンツバッファ132から、HTTP送受信部122により抽出されたセグメントIdを構成するデータチャンクを抽出し、セグメント化データを再構成し、HTTP送受信部122に出力する。
HTTP送受信部122は、セグメント化データ再構成部123により再構成されたセグメント化データを入力し、当該セグメント化データを含むHTTPレスポンスをP2P非対応端末7へ送信する。セグメント化データの送信が終了するか、あるいはP2P非対応端末7が何らかの理由によりHTTPコネクションの切断を行った場合は、アプリケーション終了制御部124の終了停止タイマをクリアする。
アプリケーション終了制御部124は、終了停止タイマを保持し、終了停止タイマは転送受付要求処理部121又はHTTP送受信部122により設定され、0になるまでカウントダウンする。アプリケーション起動制御I/F14からアプリケーション終了命令が入力された場合、アプリケーション終了制御部124は、終了停止タイマが0になるまでの間、アプリケーションの終了処理を停止する。これにより、P2P非対応端末7からセグメント化データのリクエストを受信してセグメント化データを送信し終えるまでの間、アプリケーションの終了処理を停止させる。
アプリケーション起動制御I/F14は、ユーザによる端末操作などによるアプリケーションの開始や終了命令を受付け、アプリケーション終了命令をアプリケーション終了制御部124に出力するインタフェースである。
[配信支援サーバ]
次に、配信支援サーバ3の詳細について説明する。図4は、配信支援サーバ3の構成例を示すブロック図である。この例では、配信支援サーバ3は、P2P端末情報受信部21と、配信素材受信部22と、HTTPリクエスト受信部23と、リクエスト解析部24と、リクエスト転送部25と、記憶部26と、HTTPレスポンス送信部27と、通信I/F28とを備える。
P2P端末情報受信部21は、P2P端末6から端末情報を受信し、P2P端末情報記憶部261に格納する。P2P端末情報記憶部261に格納される端末情報は、表1に示すものと同様である。
配信素材受信部22は、オリジンサーバ1からセグメント化データを受信し、セグメントバッファ262に順次格納するとともに、セグメント化データのURLを記載したマニフェストファイルを受信し、マニフェストファイル記憶部263に格納する。
図5は、マニフェストファイルの一例を示す図であり、IETFのインターネットドラフトである“HTTP Live Streaming”の仕様に従ったマニフェストファイルの例を示している。“HTTP Live Streaming”の詳細については、例えば、インターネット<URL:http://tools.ietf.org/html/draft-pantos-http-live-streaming-11>を参照されたい。
図5は、シーケンス番号(セグメントId)=457846934を先頭として、3秒の3つのセグメント化データ(tsファイル)のURLが存在する例である。セグメント化データのファイル名は、「コンテンツ名」(content_)、「セグメントId」(例えば457846934)、「拡張子」(.ts)を連結させた文字列となっている。マニフェストに記載されるセグメントは一定数(例えば5)として、新たなセグメント化データを受信する度に、最上段のセグメント化データの情報が削除され、最新のセグメント化データが末尾に追加される。
HTTPリクエスト受信部23は、通信I/F28を介してP2P非対応端末7からHTTPプロトコルによるリクエストを受信し、受信したHTTPリクエストをリクエスト解析部24に出力する。
リクエスト解析部24は、HTTPリクエスト受信部23により受信したHTTPリクエストを解析し、リクエスト内容がマニフェストファイルである場合は、マニフェストファイルを送信するようにHTTPレスポンス送信部27に指示する。一方で、リクエスト内容がセグメント化データ(tsファイル)であった場合は、当該セグメント化データのセグメントIdをリクエスト転送部25に出力する。
リクエスト転送部25は、転送先端末選択部251と、転送受付要求部252とを備える。
転送先端末選択部251は、P2P端末情報記憶部261から端末情報を取得し、端末情報の到達可否情報及び余剰分配数を基にHTTPリクエストの転送先端末の候補となるP2P端末6(転送先候補端末6)を選択し、転送先候補端末6の端末情報を転送受付要求部252に出力する。具体的には、転送先端末選択部251は、到達可否情報が「到達可」であるP2P端末6のうちから、余剰分配数が大きいものを優先して転送先候補端末6とする。
転送受付要求部252は、HTTPリクエストの転送が可能か否かを確認する転送受付要求を転送先候補端末6に送信する。転送受付要求はセグメントIdを含む。その後、転送先候補端末6から、転送受付可能応答を受信した場合は、転送先端末として端末Id及びセグメントIdをHTTPレスポンス送信部27に出力する。一方、転送受付不可応答を受信した場合は、転送先端末選択部251に戻り、転送先候補端末6の選択処理を繰り返すが、転送先候補端末6が存在しない場合、又は全ての転送先候補端末6から転送受付不可応答を受信した場合は、転送不可情報及びセグメントIdをHTTPレスポンス送信部27に出力する。
HTTPレスポンス送信部27は、リクエスト解析部24によりマニフェストファイルを送信するように指示された場合は、マニフェストファイル記憶部263からマニフェストファイルを入力し、P2P非対応端末7に送信する。
また、HTTPレスポンス送信部27は、リクエスト転送部25から転送先端末の端末Id及びセグメントIdを入力した場合は、HTTPヘッダのステータスコードを”302 Found”に設定するとともに、転送先端末の端末情報に含まれるIPアドレス、HTTP通信ポートを基に、当該セグメントIdのセグメント化データの転送先URLを生成し、”Location”ヘッダに記述し、P2P非対応端末7に送信する。例えば”Location”ヘッダに、Location: http://192.168.0.1:8081/content_457846934.tsと記述する。
さらに、HTTPレスポンス送信部27は、リクエスト転送部25から転送不可情報及びセグメントIdが入力された場合は、セグメントバッファ262から当該セグメントIdのセグメント化データを入力し、該セグメント化データをP2P非対応端末7に直接送信する。
[P2P非対応端末]
次に、P2P非対応端末7の詳細について説明する。図6は、P2P非対応端末7の構成例を示すブロック図である。この例では、P2P非対応端末7は、マニフェストファイル受信部71と、マニフェストファイル解析部72と、HTTPリクエスト送信部73と、HTTPレスポンス受信部74と、コンテンツバッファ75と、コンテンツ再生部76と、通信I/F77とを備える。
マニフェストファイル受信部71は、通信I/F77を介して、配信支援サーバ3にマニフェストファイルをリクエストし、マニフェストファイルを受信する。マニフェストファイルの一例は図5に示した通りである。なお、マニフェストファイルのリクエストは、一定時間毎に定期的に行ってもよいし、マニフェストファイルに記載されている全てのセグメント化データを受信し終える直前に行ってもよい。
マニフェストファイル解析部72は、マニフェストファイル受信部71により受信したマニフェストファイルを解析し、セグメント化データのURLを取得する。
HTTPリクエスト送信部73は、マニフェストファイル解析部72により取得したURLの配信支援サーバ3に対し、通信I/F75を介してセグメント化データのリクエストを送信する。また、HTTPリクエスト送信部73は、配信支援サーバ3から受信したHTTPレスポンスにリクエストを転送可能なP2P端末6のURL(転送先URL)が記載されている場合には、該転送先URLにセグメント化データのリクエストを送信する。
HTTPレスポンス受信部74は、通信I/F77を介してP2P端末6又は配信支援サーバ3から、HTTPレスポンスを受信し、セグメント化データをコンテンツバッファ75に蓄積する。
コンテンツ再生部76は、コンテンツバッファ75からセグメント化データを取得して再生する。
[コンテンツ配信方法]
次に、本発明の一実施形態に係るコンテンツ配信方法について説明する。特に、P2P非対応端末7に対してHTTP配信を行うコンテンツ配信方法について説明する。図7は、P2P非対応端末7に対するコンテンツ配信方法を示すシーケンス図である。図8は、説明で使用するHTTPリクエスト/HTTPレスポンスのメッセージフォーマットの一例を示す図である。HTTPリクエスト/HTTPレスポンスは、改行コードの上下でヘッダ部とボディ部に分かれており、ヘッダの最上位行はステータスコードが含まれている。ボディ部は存在しない場合もある。
P2P非対応端末7は、マニフェストファイル受信部71によりマニフェストファイルを受信し、マニフェストファイル解析部72によりマニフェストファイルから取得対象のセグメント化データを決定し、HTTPリクエスト送信部73によりセグメント化データのURLに対するHTTPリクエストを送信する(ステップS001)。図8(a)に、このときのHTTPリクエストのメッセージフォーマットの一例を示す。
配信支援サーバ3は、HTTPリクエスト受信部23によりP2P非対応端末7からのHTTPリクエストを受信し(ステップS002)、リクエスト解析部24によりリクエストを解析してセグメントIdを抽出する(ステップS003)。
リクエスト転送部25は、P2P端末情報記憶部261から到達可否情報が「到達可」である端末を抽出する(ステップS004)。ここでの抽出数をNとする。そして、抽出した端末情報を余剰分配数が大きい順にソートし、転送先端末候補リストを生成する(ステップS005)。次に、ループカウンタIを0に設定し(ステップS006)、ループ処理に入る。I<Nであれば(ステップS007−YES)、転送先端末候補リストからI番目のP2P端末6の端末情報を取得し(ステップS008)、取得した端末情報の接続待受けアドレスを基に、セグメントIdを含む転送受付要求をI番目のP2P端末6に送信する(ステップS009)。
I番目のP2P端末6は、転送受付要求処理部121により配信支援サーバ3から転送受付要求を受信し(ステップS010)、転送受付要求からセグメントIdを抽出する(ステップS011)。次に、コンテンツバッファ132にセグメントIdのセグメント化データを構成するデータチャンクを保有しており、且つ端末情報の余剰分配数が所定の閾値以上(例えば、1以上)である場合は(ステップS012−YES)、アプリケーション終了制御部124の終了停止タイマをT(例えば、3秒)にセットしてカウントダウンを開始し(ステップS013)、転送受付可能応答を配信支援サーバ3に送信する(ステップS014)。
配信支援サーバ3は、I番目のP2P端末6から転送受付可能応答を受信すると(ステップS015)、HTTPレスポンス送信部27により、I番目のP2P端末6の端末情報から取得したIPアドレス及びHTTP通信ポートと、セグメントIdとを基に転送先URLを生成し、HTTPレスポンスヘッダの”Location”に設定する(ステップS016)。次に、HTTPレスポンスヘッダのステータスコードを”302 Found”に設定し(ステップS017)、HTTPレスポンスをP2P非対応端末7に送信する(ステップS018)。図8(c)に、このときのHTTPレスポンスのメッセージフォーマットの一例を示す。
P2P非対応端末7は、配信支援サーバ3からHTTPレスポンスを受信し(ステップS019)、ステータスコードが200でなかった場合(つまり、302であった場合)(ステップS020−NO)は、HTTPレスポンスヘッダの”Location”から転送先URLを抽出する(ステップS021)。次に、該抽出した転送先URLへHTTPリクエストを送信する(ステップS022)。図8(b)に、このときのHTTPリクエストのメッセージフォーマットの一例を示す。
P2P端末6は、HTTP送受信部122によりP2P非対応端末7からのHTTPリクエストを受信すると(ステップS023)、アプリケーション終了制御部124により終了停止タイマのカウントダウンを停止し(ステップS024)、受信したHTTPリクエストからセグメントIdを抽出する(ステップS025)。次に、セグメント化データ再構成部123により、コンテンツバッファ132からセグメントIdを構成するデータチャンクを抽出し、セグメント化データを再構成し、HTTP送受信部122により、セグメント化データをHTTPレスポンスのボディ部に設定する(ステップS026)。次に、HTTPレスポンスヘッダのステータスコードを”200 OK”に設定し(ステップS027)、HTTPレスポンスをP2P非対応端末7に送信する(ステップS028)。図8(d)に、このときのHTTPレスポンスのメッセージフォーマットの一例を示す。そして、HTTP送受信部122は、終了停止タイマをクリアする(ステップS029)。
P2P非対応端末7は、HTTPレスポンスを受信し(ステップS019)、ステータスコードが200であった場合は(ステップS020−YES)、HTTPレスポンスのボディ部からセグメント化データを抽出し(ステップS035)、セグメント化データの受信処理を終了する。
ここで、P2P端末6のステップS012の処理に戻り、コンテンツバッファ132にセグメントIdのセグメント化データを構成するデータチャンクを保有していないか、又は端末情報の余剰分配数が所定の閾値より小さい(例えば、0)である場合は(ステップS012−NO)、転送要求不可応答を配信支援サーバ3に送信する(ステップS030)。
配信支援サーバ3は、P2P端末6から転送要求不可応答を受信した場合には(ステップステップS031)、ループカウンタIをインクリメントし(ステップS032)、ステップS007の処理に戻る。ステップS007でNOとなった場合、すなわち転送可能なP2P端末が存在しない場合は、セグメントバッファ262から当該セグメントIdのセグメント化データを抽出する。そして、HTTPレスポンス送信部27により、セグメント化データをHTTPレスポンスのボディ部に設定し(ステップS033)、HTTPレスポンスヘッダのステータスコードを“200 OK”に設定し、HTTPレスポンスをP2P非対応端末7に送信する(ステップS018)。ステップS019以降の処理は前述の通りである。
このように、本発明では、P2P非対応端末7がコンテンツを分割したセグメント化データのHTTPリクエストを配信支援サーバ3に送信すると、配信支援サーバ3は到達可否情報及び分配余力情報を基に、複数のP2P端末6からHTTPリクエストの転送先候補端末となるP2P端末6を選択し、該P2P端末6に転送受付要求を送信する。P2P端末6は転送受付要求を受信すると、セグメント化データを保有しており、且つデータの分配余力が所定の閾値以上である場合に、転送受付可能応答を配信支援サーバ3に送信し、配信支援サーバ3はP2P端末6から転送受付可能応答を受信した場合は、該P2P端末6におけるセグメント化データのURLを含むHTTPレスポンスをP2P非対応端末7に送信する。P2P非対応端末7は配信支援サーバ3からHTTPレスポンスを受信すると、HTTPレスポンスに含まれるURLにHTTPリクエストを送信し、P2P端末6はP2P非対応端末7からHTTPリクエストを受信すると、セグメント化データをP2P非対応端末7に送信する。配信支援サーバ3は、転送先候補端末6が存在しない場合、又は転送先候補端末6の全てから転送受付不可応答を受信した場合は、セグメント化データをP2P非対応端末7に直接送信する。以上の処理により、P2P非対応端末7は、P2P端末6からコンテンツを受信することができ、HTTP配信を行うWebサーバとして振る舞う配信支援サーバ3の配信コストを削減することができる。
また、配信支援サーバ3は到達可否情報を考慮して転送先候補端末を決定しているため、コンテンツを安定かつ効率的に配信可能となる。具体的には、到達可否情報が「到達不可」の(つまり、接続要求を受付けることができない)P2P端末6にHTTPリクエストを送信することを回避でき、受信の安定性を向上させることが可能となる。また、配信支援サーバ3は分配余力情報も考慮して転送先候補端末を決定しているため、分配余力が大きいP2P端末6から優先してコンテンツを受信することにより、P2P端末のコンテンツ配信の負荷を分散できるようになり、コンテンツ配信を効率的に行うことが可能となる。
また、P2P端末6は、転送受付可能応答を送信してから所定の時間、アプリケーションの終了処理を停止させるのが好適である。これにより、P2P非対応端末7がP2P端末6にリクエストを転送してからリクエストを完了するまでの間、P2P端末6のアプリケーションの終了(離脱)を停止させることができる。かくして、P2P非対応端末7がリクエストを送信した時に既にP2P端末6が離脱してしまっている、又はリクエストの完了前にP2P端末6が離脱してしまうといったことを禁止できるため、更に安定したコンテンツ配信が可能となる。
上述の実施形態は、代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の複数の構成ブロックを1つに組み合わせたり、あるいは1つの構成ブロックを分割したりすることが可能である。
1 オリジンサーバ
2 配信サーバ
3 配信支援サーバ
4 ポート開放可能NATルータ
5 ポート開放不可NATルータ
6 P2P端末
7 P2P非対応端末
11 P2P配信制御部
12 HTTP配信制御部
13 記憶部
14 アプリケーション起動制御I/F
15 通信I/F
21 端末情報受信部
22 配信素材受信部
23 HTTPリクエスト受信部
24 リクエスト解析部
25 リクエスト転送部
26 記憶部
27 HTTPレスポンス送信部
28 通信I/F
71 マニフェストファイル受信部
72 マニフェストファイル解析部
73 HTTPリクエスト送信部
74 HTTPレスポンス受信部
75 コンテンツバッファ
76 コンテンツ再生部
77 通信I/F
111 接続制御部
112 端末情報管理部
113 通信環境計測部
114 コンテンツ再生部
115 データチャンク中継部
121 転送受付要求処理部
122 HTTP送受信部
123 セグメント化データ再構成部
124 アプリケーション終了制御部
131 端末情報記憶部
132 コンテンツバッファ
251 転送先端末選択部
252 転送受付要求部
261 端末情報記憶部
262 セグメントバッファ
263 マニフェストファイル記憶部
1131 到達可否判定部
1132 帯域計測部

Claims (7)

  1. P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムであって、
    前記P2P非対応端末は、コンテンツを分割したセグメント化データのリクエストを前記配信支援サーバに送信するHTTPリクエスト送信部を備え、
    前記配信支援サーバは、P2P端末が他の端末からの接続要求を受付けることが可能か否かを示す到達可否情報、及びP2P端末のデータの分配余力を示す分配余力情報を基に、複数のP2P端末から前記リクエストの転送先候補端末となるP2P端末を選択し、該P2P端末に前記リクエストの転送が可能か否かを確認する転送受付要求を送信するリクエスト転送部を備え
    前記P2P端末は、前記転送受付要求を受信すると、前記セグメント化データを保有しており、且つデータの分配余力が所定の閾値以上である場合に、転送受付可能応答を前記配信支援サーバに送信する転送受付要求処理部を備え、
    前記配信支援サーバは、前記転送先候補端末となるP2P端末から転送受付可能応答を受信した場合は、該P2P端末におけるセグメント化データのURLを含むレスポンスを前記P2P非対応端末に送信するHTTPレスポンス送信部を備え、
    前記P2P非対応端末のHTTPリクエスト送信部は、前記配信支援サーバから前記レスポンスを受信すると、前記レスポンスに含まれるURLに前記リクエストを送信する手段を有し、
    前記P2P端末は、前記P2P非対応端末から前記リクエストを受信すると、前記セグメント化データを前記P2P非対応端末に送信するHTTP送受信部を備える
    ことを特徴とするコンテンツ配信システム。
  2. P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムにおける配信支援サーバであって、
    P2P非対応端末からコンテンツを分割したセグメント化データのリクエストを受信すると、P2P端末が他の端末からの接続要求を受付けることが可能か否かを示す到達可否情報、及びP2P端末のデータの分配余力を示す分配余力情報を基に、複数のP2P端末から前記リクエストの転送先候補端末となるP2P端末を選択し、該P2P端末に前記リクエストの転送が可能か否かを確認する転送受付要求を送信するリクエスト転送部と、
    前記転送先候補端末となるP2P端末から転送受付可能応答を受信した場合は、該P2P端末におけるセグメント化データのURLを含むレスポンスを前記P2P非対応端末に送信するHTTPレスポンス送信部と、
    を備えることを特徴とする配信支援サーバ。
  3. 前記リクエスト転送部は、前記到達可否情報が他の端末からの接続要求を受付けることが可能であることを示しているP2P端末のうち、前記分配余力が大きいものから優先して、前記リクエストの転送先候補端末となるP2P端末を選択することを特徴とする、請求項2に記載の配信支援サーバ。
  4. 前記リクエスト転送部は、前記転送先候補端末が存在しない場合、又は前記転送先候補端末の全てから転送受付不可応答を受信した場合は、転送不可情報を前記HTTPレスポンス送信部に出力し、
    前記HTTPレスポンス送信部は、前記リクエスト転送部から前記転送不可情報が入力されると、前記セグメント化データを前記P2P非対応端末に直接送信する
    ことを特徴とする、請求項2又は3に記載の配信支援サーバ。
  5. P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムにおけるP2P端末であって、
    P2P非対応端末からコンテンツを分割したセグメント化データのリクエストを受信した配信支援サーバから、前記リクエストの転送が可能か否かを確認する転送受付要求を受信すると、前記セグメント化データを保有しており、且つデータの分配余力が所定の閾値以上である場合に、転送受付可能応答を前記配信支援サーバに送信する転送受付要求処理部と、
    前記P2P非対応端末から前記リクエストを受信すると、前記セグメント化データを前記P2P非対応端末に送信するHTTP送受信部と、
    を備えることを特徴とするP2P端末。
  6. 前記転送受付可能応答を送信してから所定の時間、アプリケーションの終了処理を停止させるアプリケーション終了制御部を更に備えることを特徴とする、請求項5に記載のP2P端末。
  7. P2Pネットワークに参加可能な複数のP2P端末と、P2Pネットワークに参加不可能なP2P非対応端末と、HTTP配信のWebサーバとして振る舞う配信支援サーバとを備えるコンテンツ配信システムにおけるコンテンツ配信方法であって、
    前記P2P非対応端末により、コンテンツを分割したセグメント化データのリクエストを前記配信支援サーバに送信するステップと、
    前記配信支援サーバにより、P2P端末が他の端末からの接続要求を受付けることが可能か否かを示す到達可否情報、及びP2P端末のデータの分配余力を示す分配余力情報を基に、複数のP2P端末から前記リクエストの転送先候補端末となるP2P端末を選択し、該P2P端末に前記リクエストの転送が可能か否かを確認する転送受付要求を送信するステップと、
    前記P2P端末により、前記転送受付要求を受信すると、前記セグメント化データを保有しており、且つデータの分配余力が所定の閾値以上である場合に、転送受付可能応答を前記配信支援サーバに送信するステップと、
    前記配信支援サーバにより、前記転送先候補端末となるP2P端末から転送受付可能応答を受信した場合は、該P2P端末におけるセグメント化データのURLを含むレスポンスを前記P2P非対応端末に送信するステップと、
    前記P2P非対応端末により、前記配信支援サーバから前記レスポンスを受信すると、前記レスポンスに含まれるURLに前記リクエストを送信するステップと、
    前記P2P端末により、前記P2P非対応端末から前記リクエストを受信すると、前記セグメント化データを前記P2P非対応端末に送信するステップと、
    を含むことを特徴とするコンテンツ配信方法。
JP2013180152A 2013-08-30 2013-08-30 配信支援サーバ Active JP6155142B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013180152A JP6155142B2 (ja) 2013-08-30 2013-08-30 配信支援サーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013180152A JP6155142B2 (ja) 2013-08-30 2013-08-30 配信支援サーバ

Publications (2)

Publication Number Publication Date
JP2015049634A true JP2015049634A (ja) 2015-03-16
JP6155142B2 JP6155142B2 (ja) 2017-06-28

Family

ID=52699618

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013180152A Active JP6155142B2 (ja) 2013-08-30 2013-08-30 配信支援サーバ

Country Status (1)

Country Link
JP (1) JP6155142B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018523336A (ja) * 2015-05-01 2018-08-16 アマゾン テクノロジーズ インコーポレイテッド 適応型ビットレートマニフェスト処理によるコンテンツ配信ネットワークのビデオコンテンツの無効化

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007102557A (ja) * 2005-10-05 2007-04-19 Mitsubishi Electric Corp コンテンツ配信サーバ、プログラムおよびコンテンツ配信方法
JP2009042944A (ja) * 2007-08-07 2009-02-26 Grid Solutions Inc ファイル配信システム
JP2010170176A (ja) * 2009-01-20 2010-08-05 Konami Digital Entertainment Co Ltd ゲーム用のネットワークシステム、ネットワーク用のプログラム、サーバ用のコンピュータ
JP2012078901A (ja) * 2010-09-30 2012-04-19 Brother Ind Ltd サーバ装置、ページ送信プログラム、及びページ送信方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007102557A (ja) * 2005-10-05 2007-04-19 Mitsubishi Electric Corp コンテンツ配信サーバ、プログラムおよびコンテンツ配信方法
JP2009042944A (ja) * 2007-08-07 2009-02-26 Grid Solutions Inc ファイル配信システム
JP2010170176A (ja) * 2009-01-20 2010-08-05 Konami Digital Entertainment Co Ltd ゲーム用のネットワークシステム、ネットワーク用のプログラム、サーバ用のコンピュータ
JP2012078901A (ja) * 2010-09-30 2012-04-19 Brother Ind Ltd サーバ装置、ページ送信プログラム、及びページ送信方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018523336A (ja) * 2015-05-01 2018-08-16 アマゾン テクノロジーズ インコーポレイテッド 適応型ビットレートマニフェスト処理によるコンテンツ配信ネットワークのビデオコンテンツの無効化

Also Published As

Publication number Publication date
JP6155142B2 (ja) 2017-06-28

Similar Documents

Publication Publication Date Title
CN113612726B (zh) 用于直播自适应比特率(abr)媒体的优化传递的方法
CN107431704B (zh) 用于使用多播机制的直播自适应比特率(abr)媒体的优化传递的系统和方法
US9450818B2 (en) Method and system for utilizing a gateway to enable peer-to-peer communications in service provider networks
JP4655903B2 (ja) パケット転送装置
MX2011000476A (es) Metodo y aparato para flujo par a par.
CN113301096A (zh) 内容分发网络中节点间数据传输方法、系统及节点设备
JP2017510157A (ja) 無線ネットワーク中のデータ処理装置および無線ネットワークシステム
US10425458B2 (en) Adaptive bit rate streaming with multi-interface reception
WO2014090794A1 (en) System, method and live streaming optimizer server for live media content distribution optimization from a content delivery network
WO2017128902A1 (zh) 一种基于most的多环网流媒体多播系统和方法
KR101767704B1 (ko) 멀티캐스트 커넥션들에 의한 p2p 기반 구조에서의 콘텐츠 분배
US20180323989A1 (en) Methods, apparatuses and computer-readable mediums for managing multicast channels in access networks
JP2014096803A (ja) 非ipトランスポート上にipフローを迂回させる機構
US20130275602A1 (en) Hop-By-Hop Bandwidth Consumption Measurements Control Cooperation Between Clients on a Data Network
US20120023239A1 (en) Creation Method of Multimedia Service and System Thereof
JPWO2008035398A1 (ja) コンテンツ配信システム、帯域制御仲介装置、及び帯域制御方法
CN107659853B (zh) 一种自适应流媒体直播控制系统
CN101668027B (zh) 多媒体内容的提供方法、系统和客户端
WO2019034591A1 (en) FLOW CONTROL SYSTEM FOR USE IN A NETWORK
JP6155142B2 (ja) 配信支援サーバ
WO2019232680A1 (en) Method and device for providing load balancing
JP2009118361A (ja) 通信制御装置ならびに通信制御方法
Zink et al. Scalable TCP-friendly video distribution for heterogeneous clients
Duraisamy et al. Mesh based peer to peer live video streaming using ant algorithm
Makris et al. Daedalus: A media agnostic peer-to-peer architecture for IPTV distribution

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170407

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170509

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170605

R150 Certificate of patent or registration of utility model

Ref document number: 6155142

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250