JP2010109976A - セッション数によりp2pのツリー構造を形成するp2p方式のインターネットライブ放送サービスシステム及び方法 - Google Patents

セッション数によりp2pのツリー構造を形成するp2p方式のインターネットライブ放送サービスシステム及び方法 Download PDF

Info

Publication number
JP2010109976A
JP2010109976A JP2009234305A JP2009234305A JP2010109976A JP 2010109976 A JP2010109976 A JP 2010109976A JP 2009234305 A JP2009234305 A JP 2009234305A JP 2009234305 A JP2009234305 A JP 2009234305A JP 2010109976 A JP2010109976 A JP 2010109976A
Authority
JP
Japan
Prior art keywords
peer
streaming
sessions
peers
content
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
JP2009234305A
Other languages
English (en)
Other versions
JP5724139B2 (ja
Inventor
Yong Cheol Cho
チョー、ヨング−チェオル
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.)
KAMUSE Inc
Original Assignee
KAMUSE Inc
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 KAMUSE Inc filed Critical KAMUSE Inc
Publication of JP2010109976A publication Critical patent/JP2010109976A/ja
Application granted granted Critical
Publication of JP5724139B2 publication Critical patent/JP5724139B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1042Peer-to-peer [P2P] networks using topology management mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2225Local VOD servers

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】セッション数によりP2Pのツリー構造を形成するP2P方式のインターネットライブ放送サービスシステム及び方法を提供する。
【解決手段】インターネット上でコンテンツをストリーミングするストリーミングサーバと、前記コンテンツのストリーミングをツリー構造のP2P方式により受信または中継する多数のピアとを備え、前記ピアは、自分の下位ピアへの伝送速度を前記コンテンツの時間当たりのストリーミングの量で割ってセッション数を求め、セッション数の多いピアがセッション数の少ないピアの上位ピアになるように前記ツリー構造を形成するインターネット放送サービスシステム及び方法を提供する。このシステム及び方法により、前記ツリー構造の深さをできる限り短くしてストリーミングの伝送時間を短縮させ、特に、ピア間の遅延時間を最小化させることができる。
【選択図】図2

Description

本発明は、ストリーミングサーバが多数のピアにコンテンツをピア・ツー・ピア(P2P)方式によりストリーミングするが、前記P2P方式のストリーミングをツリー構造に形成するP2P方式のインターネットライブ放送サービスシステム及び方法に関する。
特に、本発明は、コンテンツのストリーミングをツリー構造のP2P方式により多数のピアに放送するが、前記ストリーミングのツリー構造に参加するピアをその伝送速度(または、帯域幅)が高いほどストリーミングサーバに近く配置するP2P方式のインターネットライブ放送サービスシステム及び方法に関する。
一般に、インターネットライブ放送は、放送サーバが放送コンテンツをネットワークに伝送すると、多数のクライアントがこのコンテンツを受信すると同時に再生するような方式により実現される。通常、かような伝送方式をライブストリーミング方式と呼ぶ。
ビデオ・オン・デマンド (VOD:Video on demand)サービスは、一つのクライアントが希望するコンテンツをリアルタイムに送信してこのクライアントが受信と同時に再生できるように支援するサービスである。すなわち、VODサービスは各クライアントにそれぞれ異なるコンテンツをストリーミングする。これに対し、ライブストリーミングは、一つのコンテンツを同一に多数のクライアントに同時に提供する特徴がある。
このため、インターネットライブ放送サーバは、大容量のコンテンツデータを多数のクライアントにリアルタイムに同時に伝送する必要がある。最も簡単なライブストリーミング方式は、放送サーバが各クライアントと1:1でコンテンツデータを伝送する方式である。この方式は、放送サーバが同時に多数のクライアントに個別的にコンテンツデータを伝送しなければならないため、放送サーバ側の負荷が大きくなるという問題点がある。放送コンテンツをリクエストするクライアントが多いほど、このような問題点は一層顕在化するであろう。
このため、上記のような放送サーバが個別的にクライアントにストリーミングをする方式を改善して、コンテンツを受信したクライアントがさらに他のクライアントに再伝送するP2P基盤のインターネットライブ放送サービスが提案されている。
P2P基盤のインターネットライブ放送サービスの一例が、下記の特許文献1(公開日:2008年6月3日)に「リアルタイムインターネット放送サービスシステム及びその管理方法」という表題にて開示されている。
図1Aに示すように、前記特許文献1に記載のリアルタイムインターネット放送サービスシステムは、放送社から放送コンテンツを供給されて対応する放送データを伝送する放送サーバとしてのグループマスターピア200と、前記グループマスターピアにより管理され、前記受信される放送データを従属的に結合される1以上のシンプルピアにP2P方式により伝送するローカルマスターピア210、212、214、216と、を備える。すなわち、ローカルマスターピアに従属的に結合される多数のシンプルピア213はツリー構造に階層化され、P2P方式により放送データを受け渡す。ローカルマスターピアは、前記多数のシンプルピアが構成したツリーにおいて最上位階層のシンプルピアとなる。ローカルマスターピアとここに従属的に結合された多数のシンプルピアは一つのグループとなる。なお、ローカルマスターピアもツリー構造を形成する。
例えば、図1Aに示すように、グループマスターピア200は、最初に放送コンテンツを放送社(図示せず)から供給される。グループマスターピア200は、直結されたローカルマスターピア210に供給されたコンテンツを伝送する。ローカルマスターピア210は、さらに自分の下位に直結された2つのローカルマスターピア212、214に同時に伝送する。ローカルマスターピア212、214はそれぞれ自分に従属的に結合された多数のシンプルピア213にコンテンツを伝送する。
また、図1Bに示すように、ツリー構造を有するシンプルピアが所定の条件を満たすと、グループから分離されて独自的なグループを形成することができる。図1Bを参照すると、ローカルマスターピア214に従属するシンプルピアが8個であったが、これらの中で3個が分離されて独自的なグループとして形成可能である。独自的に分離されたグループにおいて最上位階層にあるシンプルピア215がローカルマスターピアとなる。
特に、前記特許文献1は、前記ツリー構造が2分木を条件としているため、ローカルマスターピアに連結された従属シンプルピアの数は2個に制限される。図1Bにおいて、ローカルマスターピア214には3個の従属シンプルピアがあるため、これらの中で一つを分離したのである。逆に、ローカルマスターピアに直結されるシンプルピアが一つさえあれば、他のグループを持ってきて直結して2つの下位シンプルピアを生成する。
前記特許文献1は、コンテンツサーバ(または、グループマスターピア)が直接的に全てのクライアント(または、シンプルピア)に放送コンテンツを伝送する代わりに、クライアントをツリー構造に形成し、直結されたクライアントにのみ放送コンテンツを伝送する。そして、各クライアントは、伝送された放送コンテンツをさらに自分に直結された他のクライアントに伝送する。これにより、コンテンツサーバの負担を軽減することができる。また、特許文献1は、複数のクライアントをグループとして管理することにより、より効率よく運営することができる。
しかしながら、前記特許文献1は、クライアントの性能など個別的な特徴を全く考慮していない。すなわち、前記特許文献1は、単にグループマスターピアを基準としてツリー構造のサイズを決定する(特許文献1において、グループに所属するピアの数はグループマスターピアのサーバ容量、所属するグループツリー構造の深さ及び放送データを提供するネットワーク帯域幅により調節される技術を提示している)。ツリー構造の好適な実施形態において2分木を構成したことから、クライアントの下位に直結されたクライアントの数は一定数(例えば、2個)と定めていることが分かる。すなわち、クライアントの伝送性能が一定していることを前提にしたことが分かる。
しかしながら、インターネットなどオープンされたネットワークの場合、各クライアントの伝送能力は一般的にそれぞれ異なる。すなわち、あるクライアントは他のクライアントにデータを伝送する速度が極めて遅いのに対し、他のクライアントは極めて速いことがある。その差も数倍、数十倍など顕著になることがある。
また、前記特許文献1におけるクライアントは、ツリーでの位置に応じて、放送コンテンツを供給される時間が異なる場合がある。例えば、図1Aに示すように、記号210のクライアントと記号213のクライアントはそれぞれコンテンツを供給される時間が異なる。これは、213のクライアントが、210のクライアントに比べて、210→212への伝送と212→213への伝送など2回の伝送をさらに行うため、その分時間が遅延することに起因する。
ところが、前記特許文献1は、下位に直結可能なクライアントの数を2個に制限しているため、ツリーの深さが大きくなってしまう。このため、相対的に各クライアント間の遅延時間にかなりのバラツキが発生するという問題点がある。特に、前記特許文献1は、全てのクライアントに同じ時間に同じ放送コンテンツを閲覧させるための技術を提示していない。
本発明は上記事情に鑑みてなされたものであり、その目的は、ストリーミングサーバが多数のピアにコンテンツをP2P方式によりストリーミングするが、前記P2P方式のストリーミングをツリー構造に形成するP2P方式のインターネットライブ放送サービスシステム及び方法を提供するところにある。
本発明の他の目的は、コンテンツのストリーミングをツリー構造のP2P方式により多数のピアに放送するが、前記ストリーミングのツリー構造に参加するピアをその伝送速度(または、帯域幅)が高いほどストリーミングサーバに近く配置するP2P方式のインターネットライブ放送サービスシステム及び方法を提供することである。
上記の目的を達成するために、本発明は、インターネット上でコンテンツをストリーミングするストリーミングサーバと、前記コンテンツのストリーミングをツリー構造のP2P方式により受信または中継する多数のピアと、を備え、前記ピアは、自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割ってセッション数を求め、セッション数の多いピアがセッション数の少ないピアの上位ピアになるように前記ツリー構造を形成することを特徴とするP2P方式のインターネットライブ放送サービスシステムを提供する。
また、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ピアは、周期的に、自分の上位ピアと自分とのセッション数を比較して、自分のセッション数の方がさらに多ければ自分の上位ピアの上位ピアを自分の上位ピアとして再連結し、自分の下位ピア間のセッション数を比較して、セッション数の少ない下位ピアにセッション数の多い下位ピアを上位ピアとして連結するように指令することを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ピアは、自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割り、前記割った値以上の最小整数をセッション数として定めることを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ストリーミングのツリー構造に参加するピアを参加一覧として保存して管理する管理サーバをさらに備え、前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバに参加一覧をリクエストして受信し、前記参加一覧に属する一つのピアを自分の上位ピアとして連結し、自分を参加一覧に登録するように管理サーバにリクエストすることを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ストリーミングのツリー構造に参加しないピアは、受信した前記参加一覧に属する全てのピアにコンテンツ・リクエスト・メッセージを送信し、最初に応答するピアを自分の上位ピアとして定めるか、あるいは、前記参加一覧において上位ピアを定めることができなければ、前記ストリーミングサーバを上位ピアとして定めることを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ピアは、自分のセッション数、下位ピアの連結情報を自分の上位ピアに伝送し、前記下位ピアの連結情報は連結された下位ピアの連結一覧と、連結された各下位ピアのセッション数及び各下位ピアの下位ピアの連結情報を含み、前記ツリー構造の最上段に位置するピアは、自分のセッション数、下位ピアの連結情報を前記管理サーバに伝送することを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ピアは、最大下位ピア数よりも多い下位ピアを連結しないことを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ピアは、自分のツリーの深さと最大のツリーの深さが等しければ下位ピアを連結しないことを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ピアは、将来的に再生するコンテンツがバッファにないか、あるいは、最小バッファリングの量よりも少量であれば下位ピアを連結しないことを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記管理サーバは、最大遅延時間を入力されて保存し、前記ピアは、前記管理サーバから前記最大遅延時間を受信して、受信された前記コンテンツのプレイをコンテンツストリーミング時刻に比べて前記最大遅延時間後に行うことを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記ストリーミングのツリー構造において、最大のツリーの深さに位置しないつつ最下段にあるピアは、自分のセッション数を1と定めることを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービスシステムにおいて、前記管理サーバは、ツリー構造の最上段にあるピアの全ての下位ノードの数が最小ノード数以下であれば、前記ピアに前記ストリーミングサーバに直結された他のピアの下位ピアとして再連結するように指令することを特徴とする。
また、本発明は、上記の目的を達成するために、インターネット上でコンテンツをストリーミングするストリーミングサーバと、前記コンテンツのストリーミングをツリー構造のP2P方式により受信または中継する多数のピア、及び前記ストリーミングのツリー構造に参加するピアを参加一覧として保存して管理する管理サーバを用いたP2P方式のインターネットライブ放送サービス方法において、(a)前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバに参加一覧をリクエストして受信し、前記参加一覧に属する一つのピアを自分の上位ピアとして連結するステップと、(b)前記ピアは、受信されたコンテンツを再生するステップと、(c)前記ストリーミングのツリー構造に参加するピアは、自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割ってセッション数を求めるステップと、(d)周期的に、各ピアは上位ピアまたは下位ピアのセッション数を比較して、セッション数の多いピアがセッション数の少ないピアの上位ピアになるように部分的に再連結するステップと、を含むことを特徴とするP2P方式のインターネットライブ放送サービス方法を提供する。
さらに、本発明は、P2P方式のインターネットライブ放送サービス方法において、前記(a)ステップは、(a1)前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバに参加一覧をリクエストして受信するステップと、(a2)前記参加しないピアは、受信した前記参加一覧に属する全てのピアにコンテンツ・リクエスト・メッセージを送信するステップと、(a3)前記参加しないピアは、最初に応答するピアを自分の上位ピアとして連結するステップと、(a4)前記参加一覧において上位ピアを定めることができなければ、前記ストリーミングサーバを上位ピアとして定めるステップと、を含むことを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービス方法において、前記(c)ステップは、自分の上位ピアと自分とのセッション数を比較して、自分のセッション数の方がさらに多ければ自分の上位ピアの上位ピアを自分の上位ピアとして再連結し、自分の下位ピア間のセッション数を比較して、セッション数の少ない下位ピアにセッション数の多い下位ピアを上位ピアとして連結するように指令することを特徴とする。
さらに、本発明は、P2P方式のインターネットライブ放送サービス方法において、前記(b)ステップは、前記ピアは前記管理サーバから前記最大遅延時間を受信して、受信された前記コンテンツのプレイをコンテンツストリーミング時刻に比べて前記遅延時間後に行うことを特徴とする。
さらに、本発明は、上記の目的を達成するために、P2P方式のインターネットライブ放送サービス方法において、前記P2P方式のインターネットライブ放送サービス方法を記録したコンピュータにて読取り可能な記録媒体を提供する。
本発明によるP2P方式のインターネットライブ放送サービスシステム及び方法によれば、ストリーミング可能なセッション数(または、下位ピアの数)の多いピアをストリーミングのツリー構造の上段に位置させることにより前記ツリー構造の深さをできる限り短くして、ストリーミングの伝送時間を短縮させ、特に、ピア間の遅延時間を最小化させることができるという効果が得られる。
従来の技術によるリアルタイムインターネット放送サービスシステムの構成を示す図である。 従来の技術によるリアルタイムインターネット放送サービスシステムの構成を示す図である。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービスシステムの構成を示す図である。 セッション数による多様なストリーミングのツリー構造を比較する図である。 セッション数による多様なストリーミングのツリー構造を比較する図である。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービスシステムにおいて、セッション数により各ピアが再連結を行うステップを説明する図である。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービスシステムにおいて、セッション数により各ピアが再連結を行うステップを説明する図である。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービスシステムにおいて、セッション数により各ピアが再連結を行うステップを説明する図である。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービスシステムにおいて、セッション数により各ピアが再連結を行うステップを説明する図である。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービスシステムにおいて、バッファリングの量を用いてツリーのサイズを制限する方式を説明する図である。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービス方法を説明するフローチャートである。 本発明の一実施形態によるP2P方式のインターネットライブ放送サービス方法を説明するフローチャートである。
以下、添付図面に基づき、本発明の実施のための具体的な内容を説明する。
また、本発明を説明するに当たって、同じ部分には同じ符号を付し、その反復説明は省略する。
先ず、図2に基づき、本発明の一実施形態によるP2P方式のインターネットライブ放送サービスシステムの構成を説明する。
図2に示すように、インターネットライブ放送サービスシステムは、ストリーミングサーバ30と、多数のピア51、52、53と、を備えてなる。なお、インターネットライブ放送サービスシステムは、管理サーバ40をさらに備えていてもよい。
前記ストリーミングサーバ30は、インターネット上でコンテンツをストリーミングする。
ストリーミングサーバ30は、放送コンテンツをクライアント(または、ピア)にリアルタイムに伝送するサーバである。クライアント(または、ピア)51は、コンテンツをリアルタイムに受信して直ちにコンテンツを再生する。コンテンツの全体を先に伝送されて再生することに比べて、「ストリーミング」という用語を使用する。
特に、以下において、ストリーミングはライブストリーミングを意味することもある。上述したように、VODなどにおけるストリーミングは、サーバが各クライアントにそれぞれ異なるコンテンツを伝送することを意味する。しかしながら、本発明はライブで行われるリアルタイムインターネット放送に適用しようとするものであるため、以下、ストリーミングはライブストリーミングであると狭く解釈することができる。このとき、ライブストリーミングとは、一つのコンテンツを同一に、多数のクライアントに、同時に、リアルタイムに提供する特徴を有するストリーミングのことを言う。
ストリーミングサーバ30は、自分が直接的にコンテンツを保存していてストリーミングをすることもできれば、別途のコンテンツサーバ(図示せず)からコンテンツを受信して再伝送することもできる。特に、種々のコンテンツサーバからコンテンツを受信してストリーミングだけを専門的に行うサーバとして実現されてもよい。コンテンツをストリーミングするサーバに関する技術はこの分野における公知技術であるため、その具体的な説明は省略する。
前記ピア51は、前記コンテンツのストリーミングをツリー構造のP2P方式により受信または中継する。
前記ピア51は、前記ストリーミングサーバ30においてストリーミングするコンテンツを受信または中継する一種のクライアントである。但し、前記ピア51は前記コンテンツを他のピア51からも受信することができる。
ピア51は、PCなどコンピュータ機能を有する装置により実現される。前記ピア51は、前記ストリーミングサーバ30や他のピア51と通信を行うための通信装置、特に、P2P通信装置、受信したコンテンツを再生するためのプレイヤーなどを備えたコンピュータ装置である。
前記ピア51は少なくとも1以上存在し、多数のピア51とストリーミングサーバ30とはネットワークにより結ばれている。ネットワークは、好ましくは、インターネットや、P2P通信が行えるネットワークであれば、いずれも適用可能である。
前記多数のピア51は、コンテンツのストリーミングをするために、ツリー構造50を形成する。前記ストリーミングのツリー構造50は、コンテンツをストリーミングするコンテンツ伝送の論理的な連結構造である。インターネット上で物理的に互いに連結されるピア51の物理的なネットワーク連結構造とは区別される。
図2に基づき、例えば、ストリーミングのツリー構造50において最上段に位置するピアB51はストリーミングサーバ30からコンテンツを受信し、コンテンツを受信した前記ピアB51は自分に直接的に従属されて(または、連結されて)いる他のピアC51に前記コンテンツを再伝送する。
このとき、ツリー構造50において、ピアの親ノードにあるピアを上位ピアと呼び、ピアの子ノードにあるピアを下位ピアと称する。一つのピアの下位にある全てのピアを全体の下位ピアまたは下位の全体ピアと称する。また、ツリー構造50のルートノードは最上段に位置するピアまたは最上段ピアと表記し、ツリー構造のリーフノードは最下段に位置するピアまたは最下段ピアと表記する。すなわち、最上段ピアB51はストリーミングサーバ30と直結され、最下段ピアC51は下位に直結されるピアを有さない。
前記ピア51は、受信した前記コンテンツを一時的に保存するバッファを備える。前記ピアはバッファを利用することにより、上述したようにインターネットライブ放送中に途切れることなく上下位ピアの移動が可能になる。これは、現在視聴中の映像の前後の指定部分ずつをバッファに保有しているためである。
次に、ピア51のセッション数を説明する。
前記ピア51は、自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割ってセッション数を求める。好ましくは、前記ピア51は自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割り、前記割った値以上の最小整数をセッション数として定める。すなわち、下記式1によって求める。
Figure 2010109976
ピアの伝送速度は、自分から直結された下位ピアへとコンテンツを伝送するときのデータ伝送速度である。例えば、ピアの伝送速度が1,024kbpsであれば、前記ピア51は1秒当たりに1,024kビット(約1M)を伝送することができる。ピアの伝送速度はピアが伝送可能な一種の帯域幅であると言える。ピアの伝送速度は、下位ピアにコンテンツを伝送する速度であるため、通常、最大アップロード速度を意味する。
ストリーミング速度は、コンテンツをストリーミングする速度を言う。例えば、コンテンツの伝送速度を300kbpsとするとき、前記コンテンツは1秒当たりに300kビットを伝送する。一般的に、コンテンツが映像である場合、画質が高いほどコンテンツの伝送速度は高い。通常、MP3の伝送速度は128kbpsであり、AMラジオレベルは28kbps程度である。
このため、コンテンツ毎にストリーミングの伝送速度は異なりうる。この理由から、コンテンツの伝送速度でセッション数を求めると、毎回コンテンツによってセッション数が変わりうる。好ましくは、ストリーミングサーバは、基準となるコンテンツの伝送速度を定めることができる。これをストリーミングサーバのストリーミング速度と呼ぶ。
上記の例においてセッション数を求めると、セッション数=[1,024/300] =3である。このため、セッション数は3である。セッション数は、同時にコンテンツをストリーミング可能な数を意味する。伝送速度が300kbpsのコンテンツを同時に3個伝送すれば、300kbps×3=900kbpsを伝送するのと同様である。このため、伝送速度が最大1,024kbpsのピアは300kbpsのコンテンツを同時に3個伝送することができる。これに対し、前記ピアが同時に4個を伝送すれば、300kbps×4=1,200kbpsを伝送するのと同様である。この場合には、伝送するデータの総量は1,200kbpであるが、最大帯域幅は1,024kbpsにしかならないため、176kbpsの量を伝送することができない。結果的に、下位ピアの少なくとも一つは正常にコンテンツを伝送されて再生することができなくなる。
一方、ピアの伝送速度は他のピアにコンテンツを伝送しながら測定可能である。好ましくは、ピアは、自分の下位ピアにコンテンツを伝送しながら伝送速度を測定する。しかしながら、下位ピアを有さないピアは伝送速度を測定することができない。好ましくは、ピアが下位ピアを有さない場合には、セッション数を1と設定する。このピアは、換言すれば、ストリーミングのツリー構造において最下段にあるピアである。
また、ピアは、PCなどコンピュータであって一つのクライアントであるため、一般的なアップロード速度などを測定して保有することができる。また、ストリーミングのツリー構造に参加してから脱退した後にさらに連結された場合、下位ピアを有していてツリー構造が変更されて下位ピアを有していない場合などには、ピアは伝送速度を予測することができる。このため、好ましくは、ピアがアップロード速度など基礎伝送速度を保有していれば、下位ピアを有していない場合にも基礎伝送速度を自分の伝送速度と仮定してセッション数を求める。前記セッション数は、ユーザ環境が随時変わるため、所定の時間毎に算定して変更適用する。
次に、図3に基づき、ピアのセッション数による好適なツリー構造を説明する。本発明によるストリーミングのツリー構造においては、セッション数の多いピアをツリーの上段に配置している。
図3A及び図3Bは、両方とも10個のピアを配置してツリーを構成したものである。そして、2個のツリーの両方が、セッション数が4のものが一つ、セッション数が3のものが一つ、セッション数が2のものが2つであり、残りはセッション数がいずれも1のピアを有している。図3中、ピアの(S:4)、(S:2)などは、現在当該ピアのセッション数が4または2であることを表示する。
図3Aにおいては、セッション数が最大のピアを最上段に置いているのに対し、図3Bにおいては、ツリーの最上段ノードにセッション数が2のピアを配置している。このように構成することにより、2個のツリーの両方がその構成は同一であるにも拘らず、図3Aのツリーの深さは3であるのに対し、図3Bにおけるツリーの深さは4となった。
すなわち、セッション数の多いピアをツリー構造の上段に置くことにより、多数のピアを上段に連結することができ、上段に連結されたピアが多ければ、その分、次段において連結されるピアも増加する。すなわち、ツリー構造の上段に多数のピアを置くことにより、ツリー構造は横方向に増大され(すなわち、ツリーの兄弟ノードが多くなる)、高さが減ることになる。
上述した背景技術の欄において説明したように、上位ピアから下位ピアまでコンテンツを伝送するときに所定の時間を要するため、上位ピアがコンテンツのストリーミングを受け取る時間と下位ピアがコンテンツを受け取る時間は互いに異なる。ストリーミングサーバにおいてコンテンツを伝送した時刻とピアにおいて前記コンテンツを受信する時刻とのずれを「遅延時間」と呼ぶ。
仮にピア間の伝送時間が同じであるとすれば、各ピアの遅延時間はピアが位置するノードの深さに比例する。このため、図3Bに比べて、図3Aのツリーの高さが低いため、各ピア間の遅延時間のバラツキが低減する。すなわち、セッション数の多いピアをツリー構造の上段に置くことによりピア間の遅延時間のバラツキを縮める。
次に、図4に基づき、ピアのセッション数によってストリーミングのツリー構造を変更する方式を説明する。
前記ピア51は、自分の下位ピアへの伝送速度をストリーミングサーバ30のストリーミング速度で割ってセッション数を求め、セッション数の多いピア51がセッション数の少ないピアの上位ピア51になるように前記ツリー構造を形成する。
後述するように、ストリーミングのツリー構造に参加しないピアが最初に連結するときにはストリーミングのツリー構造の任意の位置に連結される。このため、ストリーミングのツリー構造は、最初から、図3Aに示すように、セッション数の多いピアがツリーの上段に位置しない。これは、ストリーミングに参加するピアが自分の支援可能なセッション数を判断して適切な位置に潜り込むことにより発生する開始時の応答遅延を無くすために最も早い応答を示す接続可能なピアに優先的に接続されるためである。
この代わりに、各ピアは、自分と直結されたピアとのセッション数を比較することにより、セッション数の多いピアをツリーの上段に向かってさらに移動させる。すなわち、部分的にセッション数によってピアの位置を調整する。上述したように、部分的にピアの位置を調整し続けると、最終的には、図3Aに示すように、全体的にセッション数の多いピアがツリーの上段に位置するツリー構造に変更される。
部分的なピアの位置調整は、各ピアが下記の2種類の方法により行う。第一は、自分の上位ピアと自分とのセッション数を比較することであり、第二は、自分の下位ピア間のセッション数を比較することである。すなわち、好ましくは、前記ピアは、周期的に、(1)自分の上位ピアと自分とのセッション数を比較して、自分のセッション数の方がさらに多ければ自分の上位ピアの上位ピアを自分の上位ピアとして再連結し、(2)自分の下位ピア間のセッション数を比較して、セッション数の少ない下位ピアにセッション数の多い下位ピアを上位ピアとして連結するように指令する。
図4に基づいてさらに詳述する。図4は、ストリーミングのツリー構造に参加した4個のピアがセッション数によって順序が変更されることを説明する図である。図4中、Aピアの(S:3)は、現在、当該ピアのセッション数が3であることを示す。
先ず、図4Aに示すように、最初には、ピアA、B、Cは、それぞれピアB、C、Dにコンテンツを伝送することによりピアの伝送速度を測定し、これによりセッション数を算定する。これに対し、ピアDは、伝送対象がなく、予め指定された値(または、デフォルト値)としての1を有する。すなわち、ピアA、B、C、Dのセッション数はそれぞれ3、2、3、1である。
上述した部分的なセッション数比較の最初の規則によって、ピアCは自分の上位ピアBと自分とのセッション数を比較する。すなわち、B(S:2)とC(S:3)のセッション数を比較する。比較結果、ピアCのセッション数の方がさらに多い。このため、最初の規則によって、ピアCは自分の上位ピアの上位ピアであるAを自分の上位ピアとして再連結する。
このようにして再連結すれば、図4Bに示すように、ツリー構造が変更される。すなわち、ピアCはピアAの下位ピアとして連結され、このとき、もともとCの下位ピアに連結されていたDはそのままついてくる。
次に、ピアAは、部分的なセッション数比較の2番目の規則によって、自分の下位ピアであるBとCのセッション数を比較する。すなわち、B(S:2)とC(S:3)のセッション数を比較する。比較結果、ピアCのセッション数の方がさらに多い。このため、2番目の規則によって、ピアCはセッション数の少ない下位ピアBにセッション数の多い下位ピアCを上位ピアとして連結するように指令する。図4Cに示すように、下位ピアBは自分の上位ピアAから前記指令を受け付けてピアCを自分の上位ピアとして再連結する。
次に、ピアCは、部分的なセッション数比較の2番目の規則によって、自分の下位ピアであるBとDのセッション数を比較する。すなわち、B(S:2)とD(S:1)のセッション数を比較し、ピアBのセッション数の方がさらに多いため、ピアCはセッション数の少ない下位ピアDにセッション数の多い下位ピアBを上位ピアとして連結するように指令する。図4Dに示すように、下位ピアDは自分の上位ピアCから前記指令を受け付けてピアBを自分の上位ピアとして再連結する。
好ましくは、上述した如き変更は、所定の時間おきに1回ずつ比較を行って、変更条件が満たされると行われ、それ以上変更が必要ないときにはツリー構造は同一に維持される。
次に、上述した図2のインターネットライブ放送サービスシステムにおいて、管理サーバ40と管理サーバ40を用いてツリー構造に参加しないピアがツリー構造に参加することについて説明する。
前記管理サーバ40は、前記ストリーミングのツリー構造に参加するピアを参加一覧として保存して管理する。参加一覧は、ピアの識別情報を保存して、どのピアがツリー構造に参加するかが記録される。ピアの識別情報はネットワーク上でピアを識別可能な情報であり、ネットワーク規格によって異なって表現可能である。インターネットを例に取ると、ピアの識別情報はIPアドレスにより定められる。
前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバ40に参加一覧をリクエストして受信し、前記参加一覧に属する一つのピアを自分の上位ピアとして連結し、自分を参加一覧に登録するように管理サーバ40にリクエストする。
好ましくは、前記ストリーミングのツリー構造に参加しないピアは、受信した前記参加一覧に属する全てのピアにコンテンツ・リクエスト・メッセージを送信し、最初に応答するピアを自分の上位ピアとして定めるか、あるいは、前記参加一覧において上位ピアを定めることができなければ、前記ストリーミングサーバを上位ピアとして定める。
最初に応答するピアを上位ピアとして定める理由の一つは、最初に応答するピアがその分伝送速度の速いピアであることを示し、その方法が簡単であり、放送を速やかに始めることができるためである。上記の方法の他にも、リクエストメッセージを送受信しながら参加一覧のピアとのホップの数を計算して、ホップが最も少ないピアを選定することもできる。すなわち、自分に送る伝送速度が速いピアを見出す方法であれば、いかなる方法も適用可能である。
次に、ピアに連結する下位ピアの数とツリーの深さに対する制限方式を説明する。
一つのピアに直結する下位ピアの数を所定数(以下、最大下位ピアの数)に限定することが好ましい。その理由は、たとえ特定のピアの回線が良好であるとしても、あまりにも多数のユーザが連結されていると、システムの性能が低下する恐れがあるためである。さらに重要なのは、このピアがコンテンツのストリーミングを中継することを中断すると、このピアに連結されていた下位ピアがいずれも他のピアに再連結しなければならないということである。連結された下位ピアが多いほど、再連結するための作業が増大するため、全体のサービスシステムに多大な負荷がかかり、コンテンツの視聴が中断されるピアが増大する。好ましくは、最大下位ピアの数を5から10の範囲内に限定する。
一方、上述したように、ストリーミングのツリー構造のツリーの深さは、各ピア間の遅延時間のバラツキと関係がある。すなわち、ツリーの深さが大きくなるほど最上段のピアと最下段のピアとの間の遅延時間のずれが増大する。このため、この遅延時間を減らすためにツリーの深さを減らす必要がある。
特に、全てのピアが同じ時間にストリーミングされるコンテンツを視聴(または、聴取)するためには、ストリーミングサーバからコンテンツを送り出す時刻から所定の時間(以下、最大遅延時間)が経過した後に再生しなければならない。各ピアは、この最大遅延時間内にコンテンツをストリーミングされる必要がある。できる限り、最大遅延時間を減らすことが好ましい。このため、ストリーミングのツリー構造のツリーの深さを所定のツリーの深さ(以下、最大ツリーの深さ)に制限し、このツリーの深さまでストリーミングする時間を最大遅延時間と定めることが好ましい。
上述した如き下位ピアの数またはツリーの深さを管理することは、インターネットライブ放送のサービスの品質を一定のレベルに維持する上で有効である。下位ピアの数だけを管理したり、ツリーの深さだけを管理したり、または、両方とも管理する方式がいずれも適用可能である。
上述の如き下位ピアの数またはツリーの深さを管理するために、各ピアはセッション数と共に自分の連結情報を管理する。連結情報は、自分に直結された下位ピアに対する一覧、各下位ピアのセッション数及び連結情報を含む。下位ピアに対する一覧は、下位ピアの数を含む。また、下位ピアに対する一覧は、下位ピアの識別情報を含むことができる。各下位ピアの連結情報は、自分の連結情報と同じ形式の情報である。すなわち、下位ピアの連結情報はさらに下位ピアの下位ピアの連結情報を有している。連結情報は再帰的に構成されるため、連結情報は自分の下位にある全てのピアの情報を含む。
一方、各ピアは上位ピアに上位ピアのツリーの深さをリクエストして受信することにより、自分のツリーの深さを知ることができる。すなわち、自分のツリーの深さは、上位ピアのツリーの深さに1を加えることにより求められる。
また、各ピアは、下位ピアの連結情報を通して、下位にある全てのピアのツリーの深さを計算することができる。すなわち、下位にあるピアが自分よりも何段下であるかを把握して相対的なツリーの深さを求め、前記相対的なツリーの深さに自分のツリーの深さを加えると、下位にあるピアのツリーの深さを求めることができる。
全てのピアは、自分のセッション数、下位ピアの連結情報を自分の上位ピアに伝送し、前記下位ピアの連結情報は、連結された下位ピアの連結一覧と、連結された各下位ピアのセッション数及び各下位ピアの下位ピアの連結情報を含む。なお、前記ツリー構造の最上段に位置するピアは、自分のセッション数、下位ピアの連結情報を前記管理サーバ40に伝送する。
このため、管理サーバ40は、ストリーミングのツリー構造に含まれる全てのピアの連結情報を有している。また、各ピアは、自分の下位に連結された全てのピアの情報を有している。
上記の如きセッション数と連結情報を用いて、各ピアは最大下位ピアの数よりも多数の下位ピアを連結しない。また、ピアは、自分のツリーの深さと最大のツリーの深さが等しければ、下位ピアを連結しない。
次に、ピアが新たに連結されたり変更されることによりツリー構造が変更され、連結情報が変更されることを説明する。
もし、特定のツリーにおいて特定のピアが非正常的に終了したり、あるいは、上位ピアのセッションの数の大小によって順序が変更または移動される場合、このときに変更されるツリーの最上段のピアが連結情報を全ての下位のツリー(下位にある全てのピア)に受け渡して本人の連結情報を知らせ、ピアは連結情報の相対位置情報(上位ピア+1)を有することになる。
下位のピアを有するツリーが移動する場合、管理サーバ40は、ピアの現在の深さを考慮して、最大のツリーの深さを超えない連結可能なピアの情報だけを与えて連結できるようにする。すなわち、連結されるピアは連結されるツリーの深さを知っており、連結後に直ちにその下段の全てのピアに自分のツリーの深さを受け渡させる。
このため、最初に連結するピアの場合には最下段のピアを除くどこにも連結可能になる。
具体的に、下位ピアの数またはツリーの深さを制限する方法は、下記の通りである。
先ず、ストリーミングのツリー構造に参加しないピアがツリー構造に参加しようとして管理サーバ40に参加一覧をリクエストする場合を説明する。この場合、管理サーバ40は、参加一覧にあるピアの中でそのピアの下位ピアの数またはツリーの深さが最大下位ピアの数または最大のツリーの深さに等しければ、そのピアを除く残りのピアだけを参加しないピアに伝送する。
ツリー構造を周期的に変更する場合を説明する。
先ず、自分の上位ピアと自分とのセッション数を比較する場合(最初の場合)について説明する。このとき、自分の上位ピアの上位ピアが最大下位ピアの数に等しい下位ピアの数を有すると、再連結しない。自分の上位ピアの上位ピアに連結すれば、下位ピアの数が最大下位ピアの数を超えるためである。
そして、自分の下位ピア間のセッション数を比較する場合(2番目の場合)について説明する。このとき、セッション数の少ない下位ピアのツリーの深さと最大ツリーの深さが等しければ、再連結しない。セッション数の少ない下位ピアにセッション数の多い下位ピアを連結すれば、ツリーの深さが最大ツリーの深さよりも大きくなるためである。
次に、コンテンツを受信する全てのピアが同じ時間にコンテンツを視聴(または、聴取)する方式を説明する。
上述したように、P2P方式のライブ放送(または、グリッド放送)は、ユーザ(または、ピア)間の再伝送により遅延が発生する。このため、全てのピアが上位ピアから伝送されてから直ちに再生(視聴または聴取)を開始すると、ツリー構造において上段と下段にあるピアは同じ内容をそれぞれ再生する時間が異なってくる。すなわち、ツリー構造の上段にあるピアが、ツリー構造の下段にあるピアに比べて、同じ時間帯のコンテンツ内容を先に再生する。
上述した如きタイプのライブインターネット放送は簡単に実現可能であるため、TV放送を再伝送する場合、または放送が遅延されても大きな支障がない単純放送の場合などに使用可能である。なお、ツリー構造が大きくなると、最上段のピアと最下段のピアとの間にツリーの深さ差が大幅に出るため、両ピア間の遅延時間が極めて大きくなる。
より好ましくは、全てのピアがストリーミングサーバにおいて伝送する時刻から所定時間の遅延をおいて再生して、同じ時刻に同じコンテンツ内容を再生することができる。具体的に、前記管理サーバ40は最大遅延時間を入力されて保存し、前記ピア51は前記管理サーバ40から前記最大遅延時間を受信して、受信された前記コンテンツのプレイをコンテンツストリーミング時刻に比べて前記最大遅延時間後に行う。すなわち、ストリーミングサーバ30と各ピア51との間には最大遅延時間に見合う分だけの遅延が起こるが、各ピア51間には遅延差がなくなる。
上述したように、各ピアが同時に再生するライブインターネット放送は、ユーザ間同一画面を視聴させることにより、同時間チャットや教育などの目的に使用して好適である。この方式は、ピア間の伝送遅延によりツリー構造が所定の深さ以上に大きくなり得ない。遅延許容の時間はサービス事業者の政策によって決定され、指定された遅延許容時間が増大するに伴い、ツリーの段も増大する。この方式は、全てのピアが同じ映像を眺めることによりインタラクティブ放送が可能である。
上述したように、ツリーが大きくなると、最上段ピアと最下段ピアとの間の遅延時間が延びるため、ツリーが所定のサイズに制限される必要がある。すなわち、全てのピアは最大遅延時間前にコンテンツを伝送される必要がある。
これを実現する方式には、最大ツリーの深さを制限する方式と、各ピアにおけるコンテンツのバッファリング量を検査する方式がある。最大ツリーの深さを制限する方式は、上述した通りである。後者の方式は、図5に基づいて説明する。
図5に示すように、仮にストリーミングサーバ30に3個のピア51がそれぞれ連続して連結されているとする。また、サーバにおいて、ピアをAとし、各ピア間のストリーミング時間をΔtとする。また、最大遅延時間を3Δtとする。
ストリーミングサーバ30が時間tにコンテンツのT部分から伝送すると、時間t+ΔtのときにピアAはコンテンツのT部分を受信する。しかしながら、遅延時間が3Δtであるため、ピアAは時間t+3Δtまで待つ。この間に、ピアAはサーバ30から伝送するコンテンツを受信し続けてバッファに保存する。例えば、ピアAは、サーバ30から時間t+Δtに送られてくるコンテンツのT+Δt部分を時間t+2Δtに受け取り、サーバ30から時間t+2Δtに送られてくるコンテンツのT+2Δt部分を時間t+3Δtに受け取る。このため、ピアAは、時間t+3ΔtにコンテンツのT部分を再生するとき、コンテンツのT+2Δt部分まで受信してバッファに保存する。
同様に、ピアBは、時間t+2ΔtにコンテンツのT部分を最初に受信し、時間t+3ΔtにコンテンツのT部分を再生するとき、コンテンツのT+Δt部分まで受信してバッファに保存する。
ピアCは、時間t+3ΔtにコンテンツのT部分を受信してから直ちに再生する。すなわち、図5の例題に示すように、あるピア51が将来的に再生するコンテンツがバッファにあれば、このピア51は最大遅延時間前にストリーミングを受信するため、下位ピアを有することができる。しかしながら、ピアが再生するコンテンツがバッファになければ、このピアはそれ以上下位ピアを連結してはいけない。
このため、好ましくは、ピアは将来的に再生するコンテンツがバッファにないか、あるいは、最小バッファリングの量よりも少量であれば、下位ピアを連結しない。より好ましくは、最小バッファリングの量は下位ピアへの伝送速度によって定まる。すなわち、下位ピアに伝送して下位ピアが再生するまでの時間、すなわち、下位ピアまでの遅延時間Δt分の量をバッファに有している必要がある。
しかしながら、実際に下位ピアまでの遅延時間Δt(または、下位ピアへの伝送速度)はネットワークの状況などによって変わるため、管理者の入力により任意に定まった遅延時間を使用することが好ましい。
次に、ツリー構造に参加していたピアが途中で脱退または脱落する場合、ピアが再連結する過程とツリー間の併合方法を説明する。
あるピアが脱退すれば、前記ピアに直結されたピアはツリー構造から離脱する。離脱したピアは上位ピアとして連結する他のピアを探さなければならない。好ましくは、離脱したピアは管理サーバに参加一覧をリクエストして参加一覧に属するピアのうち自分と自分の下位に位置するピアを除くピアの中より一つを上位ピアとして選定する。このとき、選定方法は、上述した参加しないピアが参加するときに上位ピアを選定する方法と同様である。
一方、ストリーミングサーバに直結されたピアは、自分の下位にあるピアと共に一つのツリー構造を形成する。このため、ストリーミングサーバに直結されたピアの数に見合う分だけツリー構造が形成される。ところが、途中で脱落または脱退するピアが増大すると、ツリー構造内に含まれているピアの数が所定数(以下、最小ノード数)以下に減って他のツリーと併合する。
すなわち、前記管理サーバ40は、ツリー構造の最上段にあるピアの全ての下位ノードの数が最小ノード数以下であれば、前記ピアに前記ストリーミングサーバに直結された他のピアの下位ピアとして再連結するように指令する。このとき、管理サーバ40は、連結する他のピアの情報も一緒に伝送する。指令を受け付けた最上段にあるピアは、管理サーバ40から受信したピアに再連結する。
次に、図6に基づき、本発明の一実施形態によるP2P方式のインターネットライブ放送サービス方法を説明する。
前記インターネットライブ放送サービス方法は、インターネット上でコンテンツをストリーミングするストリーミングサーバ30と、前記コンテンツのストリーミングをツリー構造50のP2P方式により受信または中継する多数のピア51と、前記ストリーミングのツリー構造に参加するピアを参加一覧として保存して管理する管理サーバ40と、を用いて行う。
図6Aに示すように、前記インターネットライブ放送サービス方法は、(a)前記ストリーミングのツリー構造に参加しないピアは前記管理サーバに参加一覧をリクエストして受信し、前記参加一覧に属する一つのピアを自分の上位ピアとして連結するステップ(S10)と、(b)前記ピアは、受信されたコンテンツを再生するステップ(S20)と、(c)前記ストリーミングのツリー構造に参加するピアは、自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割ってセッション数を求めるステップ(S30)と、(d)周期的に、各ピアは、上位ピアまたは下位ピアのセッション数を比較して、セッション数の多いピアがセッション数の少ないピアの上位ピアになるように部分的に再連結するステップ(S40)と、を含む。
コンテンツ再生は、(a)ステップ後にコンテンツバッファリングされると直ちに行われる。
特に、図6Bに示すように、前記(a)ステップは、(a1)前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバに参加一覧をリクエストして受信するステップ(S11)と、(a2)前記参加しないピアは、受信した前記参加一覧に属する全てのピアにコンテンツ・リクエスト・メッセージを送信するステップ(S12)と、(a3)前記参加しないピアは、最初に応答するピアを自分の上位ピアとして連結するステップ(S13)と、(a4)前記参加一覧において上位ピアを定めることができなければ、前記ストリーミングサーバを上位ピアとして定めるステップ(S14)と、を含む。
また、前記(c)ステップは、自分の上位ピアと自分とのセッション数を比較して、自分のセッション数の方がさらに多ければ自分の上位ピアの上位ピアを自分の上位ピアとして再連結し、自分の下位ピア間のセッション数を比較して、セッション数の少ない下位ピアにセッション数の多い下位ピアを上位ピアとして連結するように指令する。
前記(b)ステップは、前記ピアは、前記管理サーバから前記最大遅延時間を受信して、受信された前記コンテンツのプレイ(または、再生)をコンテンツストリーミング時刻に比べて前記遅延時間後に行う。
前記P2P方式のインターネットライブ放送サービス方法における未説明部分については、上述したP2P方式のインターネットライブ放送サービスシステムについての説明を参照されたい。
以上、本発明者により案出された発明を前記実施形態に基づいて具体的に説明したが、本発明は前記実施形態に限定されるものではなく、その要旨を逸脱しない範囲内において種々に変更可能であることは言うまでもない。
本発明は、多数のピアにコンテンツをP2P方式によりストリーミングするが、前記P2P方式のストリーミングをツリー構造に形成するP2P方式のインターネットライブ放送サービスシステムを開発する分野に適用可能である。特に、本発明は、サーバが映像を伝送し始めてから、所定時間の遅延をおいて全てのピアが同じ画面を視聴しなければならない同時間チャットや教育などの目的で使用するシステムに適用して好適である。
30:ストリーミングサーバ、
40:管理サーバ、
50:ストリーミングのツリー構造、
51:ピア。
大韓民国特許第10−2008−0048835号公報

Claims (17)

  1. インターネット上でコンテンツをストリーミングするストリーミングサーバと、
    前記コンテンツのストリーミングをツリー構造のP2P方式により受信または中継する多数のピアと、
    を備え、
    前記ピアは、自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割ってセッション数を求め、セッション数の多いピアがセッション数の少ないピアの上位ピアになるように前記ツリー構造を形成することを特徴とするP2P方式のインターネットライブ放送サービスシステム。
  2. 前記ピアは、周期的に、
    自分の上位ピアと自分とのセッション数を比較して、自分のセッション数の方がさらに多ければ自分の上位ピアの上位ピアを自分の上位ピアとして再連結し、
    自分の下位ピア間のセッション数を比較して、セッション数の少ない下位ピアにセッション数の多い下位ピアを上位ピアとして連結するように指令することを特徴とする請求項1に記載のP2P方式のインターネットライブ放送サービスシステム。
  3. 前記ピアは、
    自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割り、前記割った値以上の最小整数をセッション数として定めることを特徴とする請求項1に記載のP2P方式のインターネットライブ放送サービスシステム。
  4. 前記ストリーミングのツリー構造に参加するピアを参加一覧として保存して管理する管理サーバをさらに備え、
    前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバに参加一覧をリクエストして受信し、前記参加一覧に属する一つのピアを自分の上位ピアとして連結し、自分を参加一覧に登録するように管理サーバにリクエストすることを特徴とする請求項2に記載のP2P方式のインターネットライブ放送サービスシステム。
  5. 前記ストリーミングのツリー構造に参加しないピアは、
    受信した前記参加一覧に属する全てのピアにコンテンツ・リクエスト・メッセージを送信し、最初に応答するピアを自分の上位ピアとして定めるか、あるいは、前記参加一覧において上位ピアを定めることができなければ、前記ストリーミングサーバを上位ピアとして定めることを特徴とする請求項4に記載のP2P方式のインターネットライブ放送サービスシステム。
  6. 前記ピアは、自分のセッション数、下位ピアの連結情報を自分の上位ピアに伝送し、前記下位ピアの連結情報は連結された下位ピアの連結一覧と、連結された各下位ピアのセッション数及び各下位ピアの下位ピアの連結情報を含み、
    前記ツリー構造の最上段に位置するピアは、自分のセッション数、下位ピアの連結情報を前記管理サーバに伝送することを特徴とする請求項4に記載のP2P方式のインターネットライブ放送サービスシステム。
  7. 前記ピアは、
    最大下位ピア数よりも多い下位ピアを連結しないことを特徴とする請求項6に記載のP2P方式のインターネットライブ放送サービスシステム。
  8. 前記ピアは、
    自分のツリーの深さと最大のツリーの深さが等しければ下位ピアを連結しないことを特徴とする請求項6に記載のP2P方式のインターネットライブ放送サービスシステム。
  9. 前記ピアは、
    将来的に再生するコンテンツがバッファにないか、あるいは、最小バッファリングの量よりも少量であれば下位ピアを連結しないことを特徴とする請求項6に記載のP2P方式のインターネットライブ放送サービスシステム。
  10. 前記管理サーバは、最大遅延時間を入力されて保存し、
    前記ピアは、前記管理サーバから前記最大遅延時間を受信して、受信された前記コンテンツのプレイをコンテンツストリーミング時刻に比べて前記最大遅延時間後に行うことを特徴とする請求項8または請求項9に記載のP2P方式のインターネットライブ放送サービスシステム。
  11. 前記ストリーミングのツリー構造において、最大のツリーの深さに位置しないつつ最下段にあるピアは、自分のセッション数を1と定めることを特徴とする請求項1に記載のP2P方式のインターネットライブ放送サービスシステム。
  12. 前記管理サーバは、
    ツリー構造の最上段にあるピアの全ての下位ノードの数が最小ノード数以下であれば、前記ピアに前記ストリーミングサーバに直結された他のピアの下位ピアとして再連結するように指令することを特徴とする請求項1に記載のP2P方式のインターネットライブ放送サービスシステム。
  13. インターネット上でコンテンツをストリーミングするストリーミングサーバと、前記コンテンツのストリーミングをツリー構造のP2P方式により受信または中継する多数のピア、及び前記ストリーミングのツリー構造に参加するピアを参加一覧として保存して管理する管理サーバを用いたP2P方式のインターネットライブ放送サービス方法において、
    (a)前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバに参加一覧をリクエストして受信し、前記参加一覧に属する一つのピアを自分の上位ピアとして連結するステップと、
    (b)前記ピアは、受信されたコンテンツを再生するステップと、
    (c)前記ストリーミングのツリー構造に参加するピアは、自分の下位ピアへの伝送速度を前記ストリーミングサーバのストリーミング速度で割ってセッションを求めるステップと、
    (d)周期的に、各ピアは上位ピアまたは下位ピアのセッション数を比較して、セッション数の多いピアがセッション数の少ないピアの上位ピアになるように部分的に再連結するステップと、
    を含むことを特徴とするP2P方式のインターネットライブ放送サービス方法。
  14. 前記(a)ステップは、
    (a1)前記ストリーミングのツリー構造に参加しないピアは、前記管理サーバに参加一覧をリクエストして受信するステップと、
    (a2)前記参加しないピアは、受信した前記参加一覧に属する全てのピアにコンテンツ・リクエスト・メッセージを送信するステップと、
    (a3)前記参加しないピアは、最初に応答するピアを自分の上位ピアとして連結するステップと、
    (a4)前記参加一覧において上位ピアを定めることができなければ、前記ストリーミングサーバを上位ピアとして定めるステップと、
    を含むことを特徴とする請求項13に記載のP2P方式のインターネットライブ放送サービス方法。
  15. 前記(c)ステップは、
    自分の上位ピアと自分とのセッション数を比較して、自分のセッション数の方がさらに多ければ自分の上位ピアの上位ピアを自分の上位ピアとして再連結し、
    自分の下位ピア間のセッション数を比較して、セッション数の少ない下位ピアにセッション数の多い下位ピアを上位ピアとして連結するように指令することを特徴とする請求項13に記載のP2P方式のインターネットライブ放送サービス方法。
  16. 前記(b)ステップは、
    前記ピアは前記管理サーバから前記最大遅延時間を受信して、受信された前記コンテンツのプレイをコンテンツストリーミング時刻に比べて前記遅延時間後に行うことを特徴とする請求項13に記載のP2P方式のインターネットライブ放送サービス方法。
  17. 請求項13から請求項16のいずれかに記載のP2P方式のインターネットライブ放送サービス方法を記録したコンピュータにて読取り可能な記録媒体。
JP2009234305A 2008-10-30 2009-10-08 セッション数によりp2pのツリー構造を形成するp2p方式のインターネットライブ放送サービスシステム及び方法 Active JP5724139B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20080107058A KR101027500B1 (ko) 2008-10-30 2008-10-30 세션수에 의해 p2p의 트리구조를 형성하는 p2p방식 인터넷 라이브 방송 서비스 시스템 및 방법
KR10-2008-0107058 2008-10-30

Publications (2)

Publication Number Publication Date
JP2010109976A true JP2010109976A (ja) 2010-05-13
JP5724139B2 JP5724139B2 (ja) 2015-05-27

Family

ID=42274887

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009234305A Active JP5724139B2 (ja) 2008-10-30 2009-10-08 セッション数によりp2pのツリー構造を形成するp2p方式のインターネットライブ放送サービスシステム及び方法

Country Status (2)

Country Link
JP (1) JP5724139B2 (ja)
KR (1) KR101027500B1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013187638A (ja) * 2012-03-06 2013-09-19 Nippon Hoso Kyokai <Nhk> P2pネットワークサービスに用いる端末装置及びプログラム
JPWO2012169175A1 (ja) * 2011-06-09 2015-02-23 パナソニック株式会社 通信端末、通信制御方法及びプログラム
JP2015133529A (ja) * 2014-01-09 2015-07-23 富士通株式会社 映像配信システム及び映像配信システムにおいて使用されるノード装置
KR20180044747A (ko) * 2016-10-24 2018-05-03 (주)헤리트 스트리밍 미디어 중계 장치 및 그 방법

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107295037B (zh) * 2016-03-31 2021-06-01 中移(苏州)软件技术有限公司 一种基于软件定义网络的直播对等网络构建方法和装置
KR102579413B1 (ko) * 2017-10-23 2023-09-18 한국전자통신연구원 다수의 디스플레이 기기에 신속한 데이터 전달을 위한 디스플레이 기기의 연결 방법
CN108768680B (zh) * 2018-05-31 2020-12-01 东莞市华睿电子科技有限公司 一种赛事直播时的主播用户即时图像的推送方法
CN108768681B (zh) * 2018-05-31 2021-01-01 东莞市华睿电子科技有限公司 一种虚拟资源赠送引起的主播用户即时图像的显示方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007065975A (ja) * 2005-08-31 2007-03-15 Brother Ind Ltd コンテンツデータ配信システム、及び、同システムにおける端末装置、及び、同システムにおける接続管理装置、及び、端末装置のプログラム、及び接続管理装置のプログラム
JP2007086484A (ja) * 2005-09-22 2007-04-05 Brother Ind Ltd コンテンツ配信システム及びコンテンツ配信方法並びにそれに用いる配信装置、端末装置及びそのプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4370995B2 (ja) * 2004-07-26 2009-11-25 ブラザー工業株式会社 接続態様設定装置及び接続態様設定方法、並びに接続態様制御装置及び接続態様制御方法等

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007065975A (ja) * 2005-08-31 2007-03-15 Brother Ind Ltd コンテンツデータ配信システム、及び、同システムにおける端末装置、及び、同システムにおける接続管理装置、及び、端末装置のプログラム、及び接続管理装置のプログラム
JP2007086484A (ja) * 2005-09-22 2007-04-05 Brother Ind Ltd コンテンツ配信システム及びコンテンツ配信方法並びにそれに用いる配信装置、端末装置及びそのプログラム

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CSND200200314007; 安東 一真: 'PtoP型の動画配信サービスを日本のベンチャー2社が開発' 日経インターネットテクノロジー 第56号, 20020222, p.23 *
CSNG200501084005; 岡田 陽平 他: '階層符号化を用いたALMにおけるツリー構成法' 電子情報通信学会技術研究報告 第104巻,第514号, 20041210, p.25〜30 *
CSNG200600800001; 堀内 英斗 他: '多人数参加型P2Pテレビ会議システムにおける論理網構築手法の提案と評価' 電子情報通信学会技術研究報告 第106巻,第151号, 20060706, p.1〜6 *
JPN6013064352; 岡田 陽平 他: '階層符号化を用いたALMにおけるツリー構成法' 電子情報通信学会技術研究報告 第104巻,第514号, 20041210, p.25〜30 *
JPN6013064353; 安東 一真: 'PtoP型の動画配信サービスを日本のベンチャー2社が開発' 日経インターネットテクノロジー 第56号, 20020222, p.23 *
JPN6014037316; 堀内 英斗 他: '多人数参加型P2Pテレビ会議システムにおける論理網構築手法の提案と評価' 電子情報通信学会技術研究報告 第106巻,第151号, 20060706, p.1〜6 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2012169175A1 (ja) * 2011-06-09 2015-02-23 パナソニック株式会社 通信端末、通信制御方法及びプログラム
US9456034B2 (en) 2011-06-09 2016-09-27 Panasonic Intellectual Property Management Co., Ltd. Communication terminal, communication control method, and program
JP2013187638A (ja) * 2012-03-06 2013-09-19 Nippon Hoso Kyokai <Nhk> P2pネットワークサービスに用いる端末装置及びプログラム
JP2015133529A (ja) * 2014-01-09 2015-07-23 富士通株式会社 映像配信システム及び映像配信システムにおいて使用されるノード装置
KR20180044747A (ko) * 2016-10-24 2018-05-03 (주)헤리트 스트리밍 미디어 중계 장치 및 그 방법
KR101866964B1 (ko) * 2016-10-24 2018-07-23 주식회사 헤리트 스트리밍 미디어 중계 장치 및 그 방법

Also Published As

Publication number Publication date
KR101027500B1 (ko) 2011-04-06
KR20100048059A (ko) 2010-05-11
JP5724139B2 (ja) 2015-05-27

Similar Documents

Publication Publication Date Title
JP5724139B2 (ja) セッション数によりp2pのツリー構造を形成するp2p方式のインターネットライブ放送サービスシステム及び方法
CN105723680B (zh) 用于音频分配的方法和计算机设备
EP2053859B1 (en) A method and apparatus for reducing delay of media play
US20080037527A1 (en) Peer-to-Peer Interactive Media-on-Demand
KR101089562B1 (ko) 고화질 미디어 방송을 위한 피투피 라이브 스트리밍 시스템 및 방법
KR20110026215A (ko) 스트리밍 서비스의 지연 감소를 위한 단말기, 시드 서버 및 트랙커 서버
JP6523447B2 (ja) 分散型コンテンツ配信ネットワークにおけるブロードキャスト送信中の適応ビットレート
JP4370995B2 (ja) 接続態様設定装置及び接続態様設定方法、並びに接続態様制御装置及び接続態様制御方法等
CN101651708B (zh) P2p流媒体网络的拓扑构建方法
US20110126256A1 (en) Method for live broadcasting in a distributed network and apparatus for the same
US9591069B2 (en) Peer-to-peer assist for live media streaming
CN101351990A (zh) 实现定位播放的对等网络内容传输方法及装置
JP2005244605A (ja) ストリーミングコンテンツ配信制御システム、プログラム及び該プログラムを格納した記録媒体
KR101252947B1 (ko) 비디오 청크 분포에 적응적인 푸쉬-풀 혼성 스트리밍 방법 및 장치
EP2656547A1 (en) Hop-by-hop bandwith consumption measurements control cooperation between clients on a data network
JP5157351B2 (ja) 動画配信システム、加入者回線終端装置、動画配信方法、動画配信プログラム、及び記憶媒体
KR20050115498A (ko) P2p 기반의 비디오 서비스 시스템 및 이를 이용한주문형 비디오 서비스 제공방법
Meskovic et al. Content delivery architectures for live video streaming: hybrid cdn-p2p as the best option
Muscat et al. A Hybrid CDN-P2P Architecture for Live Video Streaming
RU2465638C1 (ru) Способ распространения мультимедийной информации посредством развертывания децентрализованной сети типа peer-to-peer и децентрализованная сеть для осуществления способа
KR101030345B1 (ko) 실시간 방송 시스템 및 그 방법
Ha et al. Topology and architecture design for peer to peer video live streaming system on mobile broadcasting social media
JP2006080659A (ja) 情報配信システム、処理装置、処理方法及び処理プログラム等
Ketmaneechairat et al. Smart buffer management for different start video broadcasting
Ketmaneechairat et al. Buffer size estimation for different start video broadcasting

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140902

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141201

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: 20141216

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150312

R150 Certificate of patent or registration of utility model

Ref document number: 5724139

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