JP2009302955A - コンテンツ配信方法及び通信端末装置 - Google Patents

コンテンツ配信方法及び通信端末装置 Download PDF

Info

Publication number
JP2009302955A
JP2009302955A JP2008155761A JP2008155761A JP2009302955A JP 2009302955 A JP2009302955 A JP 2009302955A JP 2008155761 A JP2008155761 A JP 2008155761A JP 2008155761 A JP2008155761 A JP 2008155761A JP 2009302955 A JP2009302955 A JP 2009302955A
Authority
JP
Japan
Prior art keywords
distribution
node
reservation
receiving
block
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
JP2008155761A
Other languages
English (en)
Other versions
JP5223480B2 (ja
Inventor
Takuya Sakamoto
拓也 坂本
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008155761A priority Critical patent/JP5223480B2/ja
Priority to US12/382,620 priority patent/US7865611B2/en
Publication of JP2009302955A publication Critical patent/JP2009302955A/ja
Application granted granted Critical
Publication of JP5223480B2 publication Critical patent/JP5223480B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6547Transmission by server directed to the client comprising parameters, e.g. for client setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】コンテンツをブロックに分割し、複数のノードに分散することで、効率的にデータ交換を行うシステムにおいて、安定的なストリーミングを実現することができるコンテンツ配信方法及びその装置を提供する。
【解決手段】受信ノード130は、各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードノード120A,120B,120Cに送信する。各配信ノード120A,120B,120Cは、受信ノードから該配信予約要求情報を受信し、少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定し、該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信する。受信ノード130は、各配信ノードから該配信予約結果情報を受信し、該配信予約結果情報に応じて各配信ノードにブロックを要求して受信する。
【選択図】図1

Description

本開示技術は、ピアツーピア(peer to peer)システム(以下、P2Pシステムともいう。)等の利用者ノード間でデータ交換を行うコンピュータネットワークにおいて、各々割当てられたコンテンツブロックを保持する少なくとも一つの配信ノードから受信ノードへコンテンツを配信する方法、及びその配信ノード又は受信ノードとして機能する通信端末装置に関する。
コンテンツ配信サービスが普及してきている。それらのサービスの多くは、サーバが直接クライアントから要求を受けて配信する仕組みで実現されている。一方、この方式では、クライアント(ユーザ)が増えるに従って、サーバの負荷が非常に高くなるという問題がある。そこで、ファイル共有システムのプロトコルである BitTorrent(ビットトレント・インコーポレイテッドの登録商標)等では、コンテンツを複数のブロックに分割し、そのブロックを利用者ノード上に分散して配置することで、サーバの負荷を減らす又は無くす仕組みが実現されている。
この方式では、クライアント(受信ノード)は、他の複数の利用者ノード(配信ノード)に対して、あるブロックを持っているかどうかを確認して、そのブロックを取得する、というプロセスを全てのブロックに対して行うことで、ダウンロードを実現している。そして、複数のノードから同時に別のブロックを受信することにより、高速化が図られる。また、よくダウンロードされるコンテンツのブロックを多くの利用者ノードに重複して持たせる等、利用者ノードに分散する方法を工夫することで、効率よくダウンロードすることを可能にする方法が実現されている(例えば、下記特許文献1参照)。
この方法は、ダウンロードを効率的かつ高速に行うことを可能にする一方で、一時期に大きなネットワーク帯域を使用することになる。これに対して、ストリーミングでは、ダウンロードと異なり、コンテンツを受信しながら再生を行うという動作をするため、受信ノードは、再生中にその時点で必要なデータ(現在再生中の部分)を持っている必要がある。しかし、一方で、早ければ早いほどいいというわけではなく、再生しようとしたときにデータがあれば十分である。ダウンロードの仕組みをそのままストリーミングに応用すると、受信が間に合わず再生が途切れてしまう場合や、不要に早く取得することで配信ノードが帯域を使用してしまって他のノードへの配信が非効率になる場合がある。
特開2006−025408号公報
本開示技術は、上述した問題点に鑑みてなされたものであり、その目的は、コンテンツをブロックに分割し、複数のノードに分散することで、効率的にデータ交換を行うシステムにおいて、安定的なストリーミングを実現することができるコンテンツ配信方法及びその装置を提供することにある。
上記目的を達成するために、本開示技術の一つの面によれば、コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードから受信ノードへコンテンツを配信するコンテンツ配信方法であって、受信ノードが、各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信するステップと、各配信ノードが、受信ノードから該配信予約要求情報を受信するステップと、各配信ノードが、少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定するステップと、各配信ノードが、該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信するステップと、受信ノードが、各配信ノードから該配信予約結果情報を受信するステップと、受信ノードが、該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するステップと、を具備するコンテンツ配信方法が提供される。
さらに、本開示技術の他の面によれば、上述の方法において当該配信ノード又は受信ノードとして機能する通信端末装置と、コンピュータをその通信端末装置として機能させるためのプログラムと、が提供される。
開示の方法及び装置によれば、予約に関する処理により、ストリーミングの最中に、途切れたり、コンテンツの一部を取得することができなくなったりすることが減らされて、ストリーミングを安定化することができる。また、かかる安定化のための従来からの方法として、全てのコンテンツブロックを一旦キャッシュしてから再生するという方法や、複数の配信ノードから同時にブロックを受信することで出来る限り早くブロックを取得しキャッシュして再生するという方法もある。それらと比較して、開示の方法及び装置では、必要な時刻にブロックを取得することが実現される。したがって、複数の受信ノードが存在する場合に、ネットワーク帯域の利用が分散し、ネットワークの輻輳を避けることができる。
以下、添付図面を参照して実施形態について説明する。図1は、本コンテンツ配信方法が実行されるコンピュータネットワーク上の通信システムの例を示すブロック図である。このシステムは、ピアツーピア(P2P)通信を行う。P2Pシステムでは、クライアントサーバシステム(client server system)と異なり、通常、あるノードすなわち通信端末装置がコンテンツを受信する側にも配信する側にもなる。便宜上、コンテンツを配信する側を配信ノード、コンテンツを受信する側を受信ノードと呼ぶ。
図1において、符号110はメタデータサーバ、符号120A、120B及び120Cはそれぞれ第一、第二及び第三の配信ノード(任意の配信ノードを符号120で表す。)、符号130は受信ノード、をそれぞれ示す。これらの機器は、通常のパーソナルコンピュータ(以下、「PC」ともいう。)であり、ネットワーク100を介して相互に結合されている。ネットワーク100は、例えば、インターネットである。なお、これらの機器は、PCに限られず、ネットワークに接続可能な家電機器であってもよい。
図2は、メタデータサーバ110、配信ノード120、又は受信ノード130としてのパーソナルコンピュータ(PC)の概略的ハードウェア構成を示す図である。同図に示されるように、PCは、中央処理装置(CPU:central processing unit)202、主記憶装置204、補助(外部)記憶装置206、ネットワークインタフェース部208、等を備える。CPU 202は、バス200を介して他の構成要素と接続され、主記憶装置204にロードされたプログラムを実行することにより、受信ノードや配信ノードとしての機能を実現する。
図3は、受信ノード130が配信ノード120A、120B及び120Cからコンテンツブロックを取得して再生する時間経過を例示する図である。この例では、コンテンツが5個のブロックから形成される。そして、受信ノード130に対し、配信ノード120Aはブロック3を配信し、配信ノード120Bはブロック2及びブロック4を配信し、配信ノード120Cはブロック1及びブロック5を配信する。
図3に示されるように、ブロック1〜5の各々は、受信ノード130における再生時点に必要となるデータが受信されていれば十分であることを考慮したタイミングで、配信ノード120A、120B及び120Cから受信ノード130に配信されている。すなわち、再生時点より少し前に対応するデータが受信される。したがって、受信ノード130においてデータが再生前にキャッシュされている時間は短くなる。そして、配信ノード側の能力やネットワーク帯域に基づいて予測される配信所要時間(配信に要する時間)や通信遅延時間を考慮して、ブロック再生開始の一定時間前にブロックの取得が開始される。
図3に示される例では、ブロック1について、受信ノード130における再生所要時間と配信ノード120Cからの配信所要時間とは同一である。ブロック3については、再生所要時間よりも配信所要時間が短くなっている。ブロック5については、再生所要時間よりも配信所要時間が長くなっている。以上のようにネットワーク帯域の使用を一定化し且つストリーミングを安定化させるための実現方法について、以下、説明する。
図4は、配信ノード120及び受信ノード130の機能的構成を示す図である。同図に示されるように、受信ノード130は、その補助記憶装置内に、コンテンツメタデータ情報402、配信ノード情報404、ブロック再生時刻情報406、予約結果情報408、及びコンテンツバッファ410を持つ。更に、受信ノード130は、その処理機能として、情報管理部420、コンテンツ再生部422、配信予約部424、コンテンツ要求部426、コンテンツ受信部428、及びネットワーク送受信部430を持つ。
一方、配信ノード120は、その補助記憶装置内に、予約状況情報452、受信ノード優先度情報454、ブロック情報456、ネットワーク帯域情報458、及びコンテンツブロック460を持つ。更に、配信ノード120は、その処理機能として、情報管理部470、予約受信部472、コンテンツ配信部474、及びネットワーク送受信部476を持つ。
本実施形態では、コンテンツは、複数のブロックに分割され、複数のノードに分けて置かれている。そのため、一つのノードがコンテンツの全てを持っている場合に比較して、アクセスが集中しないという利点がある。配信ノードは、コンテンツのブロックを一部もっているだけの場合もあれば、全て持っている場合もありうる。受信ノードは、コンテンツ全体を再生しようとする場合、複数の配信ノードに分散されたブロックを集める必要がある。
受信ノード130内のコンテンツメタデータ情報402の例が図5に示される。受信ノード130は、同図に示されるように、コンテンツを構成するブロック単位に、ブロックを一意に識別するための情報(ブロックID)と、そのブロックがそのコンテンツ内でのどの部分に当たるか、つまりコンテンツのどの時点(コンテンツの最初からの相対時間で表される。)からどの時点までの部分にあたるかの情報と、をメタデータ402として持つ。そして、受信ノード130は、そのコンテンツメタデータ情報402と、各配信ノードのIPアドレスの情報である配信ノード情報404と、を持つ。
受信ノード130は、この配信ノード情報404を取得するために、メタデータ用のサーバすなわち図1に示されるメタデータサーバ110にアクセスする。配信ノード情報404は、例えば、XML(Extensible Markup Language)文書による、以下のような情報の通信により取得される。
<?xml version=“1.0”?>
<block id=“abc00001”>
<ip>192.168.100.1</ip>
<ip>192.168.100.2</ip>
</block>
<block id=“abc00002”>
<ip>192.168.100.2</ip> (以下省略)
上記の例は、abc00001 なるIDを持つブロックが、192.168.100.1 なるIPアドレスを持つノードと、192.168.100.2 なるIPアドレスを持つノードとに保持されていることを表している。もちろん、情報の通信内容としては、上記に限られず、IPアドレスだけでなくポートの情報を含めたり、暗号化して通信したりするなど、様々な方式を利用することができる。
受信ノード130は、また、コンテンツメタデータ情報402についても、通信により、メタデータサーバ110から取得する。例えば、前述の配信ノード情報404についての通信を拡張した、以下の通信が行われる。
<?xml version=“1.0”?>
<block id=“abc00001” starttime=“00:00:00” endtime=“00:01:00”>
<ip>192.168.100.1</ip>
<ip>192.168.100.2</ip>
</block>
<block id=“abc00002” starttime=“00:01:00” endtime=“00:02:00”>
<ip>192.168.100.2</ip> (以下省略)
上記の例は、abc00001 なるIDを持つブロックがコンテンツ再生開始時から再生開始後1分経過時までのデータであり、abc00002 なるIDを持つブロックがコンテンツ再生開始後1分経過時から2分経過時までのデータであることを表している。本実施形態では、受信ノード130は、このようにメタデータ情報402及び配信ノード情報404を予め保持した状態で、ユーザからのコンテンツ再生要求を受ける。しかし、受信ノード130は、ユーザからの要求を受けた時点にこれらの情報を獲得するようにしてもよい。
図6は、受信ノード130内の配信予約部424の処理動作を示すフローチャートである。まず、配信予約部424は、ユーザからの指示を受けて、あるコンテンツを再生することを決定する(ステップ602)。ユーザからの指示ではなく、自動再生のような仕組みでもかまわない。
次いで、配信予約部424は、補助記憶装置から、情報管理部420を介して、当該コンテンツに係るメタデータ情報402及び配信ノード情報404を主記憶装置へと取り込む(ステップ604)。
次いで、配信予約部424は、コンテンツ再生開始時刻を決定する(ステップ606)。この時刻は、ユーザがコンテンツを再生しようとボタン等を押した時刻に、コンテンツのブロック数と配信ノード数とに応じた一定時間を加えることで算出される。かかる一定時間は、“予約に必要な時間×配信ノード数×ブロック数”によって算出される。ここで、予約に必要な時間は推測値とされ、他の値はメタデータ情報402及び配信ノード情報404から取得される。例えば、予約にかかる時間が0.1秒で、配信ノード数が10、コンテンツのブロック数が60とすると、0.1×10×60=60 秒となる。したがって、ボタン等が押された時刻が 2007/10/29 10:00:00 とすると、再生開始時刻は 2007/10/29 10:01:00 となる。
次いで、配信予約部424は、メタデータ情報402と決定されたコンテンツ再生開始時刻とに基づいて、ブロックごとに必要となる時刻(ブロック再生開始時刻及びブロック再生終了時刻)を算出し、ブロック再生時刻情報406として記憶する(ステップ608)。そのブロック再生時刻情報406の例が図7に示される。
これ以降、配信予約部424は、配信ノード120に対する配信予約処理を行う。まず、配信予約部424は、全てのブロックについて配信ノードが確定したか否かを判定し(ステップ610)、確定した場合には処理を終了する。当初は次のステップに進むこととなる。
配信ノードが確定していないブロックがある場合、配信予約部424は、未だ配信ノードが確定していないブロックIDを一つ選択する(ステップ612)。
次いで、配信予約部424は、選択されたブロックIDを配信することができる配信ノードのIPアドレスから一つを選択する(ステップ614)。例えば、前述の例のように、192.168.0.1 と 192.168.0.2 との二つの配信ノードが abc00001 ブロックを持つ場合、abc00001 について、まず、192.168.0.1 のノードが選択される。192.168.0.1 のノードについて既に予約要求が行われ不成功になっている場合には、192.168.0.2 のノードが選択される。
次いで、配信予約部424は、ネットワーク送受信部430を介し、選択された配信ノードのIPアドレスに対して配信についての予約の要求を行う(ステップ616)。予約要求は、ブロック再生時刻情報406に基づいて、ブロックIDとブロック再生開始時刻とブロック再生終了時刻とを通知することで行われる。例えば、192.168.0.1 の配信ノードに対する予約要求の通信データは、次のとおりである。
<?xml version=“1.0”?>
<block action=“reserve” id=“abc00001” playstarttime=“2007/10/29 10:01:00” playendtime=“2007/10/29 10:02:00”/>
次いで、配信予約部424は、予約要求先の配信ノードから、予約結果として、配信開始時刻、又は、予約ができなかった旨のエラーを受信する(ステップ618)。例えば、ブロック abc00001 についての配信開始時刻を 2007/10/29 10:00:30 とする予約結果の返答データは、次のとおりである。
<?xml version=“1.0”?>
<block action=“reserved” id=“abc00001” sendstarttime=“2007/10/29 10:00:30”/>
次いで、配信予約部424は、予約要求先の配信ノードから、配信開始時刻が返却されたか、又はエラーが返却されたか、を判定する(ステップ620)。エラーが返却された場合、配信予約部424は、ステップ610に戻る。
一方、配信開始時刻が返却された場合、配信予約部424は、配信開始時刻と配信ノードIPアドレスとブロックIDとのセットを予約結果情報408として記憶する(ステップ622)。予約結果情報408の例が図8に示される。そして、配信予約部424の処理は、ステップ610に戻る。
かくして、配信予約部424は、全てのブロックの各々について、配信可能なノードが見つかるか又はなくなるまで、配信予約要求処理を繰り返す。全てのブロックについて予約が成功した場合、配信予約部424は予約を終了する。もし、予約が失敗した場合、すなわち、あるブロックについて全ての配信ノードかエラーを返却した場合、現在は再生が難しいということになる。そのため、配信予約部424は、しばらく待つ旨を示すメッセージを表示し、ユーザにやり直してもらうか、一定時間、待ってからやり直す。
図9は、配信ノード120内の予約受信部472の処理動作を示すフローチャートである。まず、予約受信部472は、ネットワーク送受信部476を介して、受信ノード130から、ブロックの配信についての予約の要求(ブロックID、ブロック再生開始時刻及びブロック再生終了時刻)を受信する(ステップ902)。
次いで、予約受信部472は、ブロックの配信に要する時間(配信所要時間)を算出する(ステップ904)。この算出は、次の式、
配信所要時間=ブロックサイズ/ネットワーク帯域
に示されるように、ブロックのサイズをネットワーク帯域で除すことにより行われる。ブロックサイズ及びネットワーク帯域は、情報管理部470を介して、それぞれ、ブロック情報456及びネットワーク帯域情報458にアクセスすることで取得される。なお、ネットワーク帯域は、例えば、一定のデータをインターネット上のサーバとやりとりすることで調べる方法等の一般的な方法で測定される。ブロックのサイズは、配信ノード自身がブロックを所有しているため、容易に求められる。
次いで、予約受信部472は、配信ノード120と受信ノード130との間の通信遅延時間を計測する(ステップ906)。この計測は、例えば、“ping”(パケットが正しく届いて返答が行われるかの確認をする一般的なコマンド)を配信ノード側から受信ノード側に行い、それに要する時間を測定することで行われる。
次いで、予約受信部472は、ブロックの配信開始時刻及び配信終了時刻を算出する(ステップ908)。“再生終了時刻−配信所要時間−通信遅延時間≦再生開始時刻”が成立する場合、配信開始時刻は、
配信開始時刻=再生終了時刻−配信所要時間−通信遅延時間
として求められ、一方、“再生終了時刻−配信所要時間−通信遅延時間>再生開始時刻”が成立する場合、配信開始時刻は、
配信開始時刻=再生開始時刻−通信遅延時間
として求められる。また、配信終了時刻は、
配信終了時刻=配信開始時刻+配信所要時間
として求められる。なお、配信所要時間又は通信遅延時間のいずれか一方のみに基づいてブロックの配信開始時刻及び配信終了時刻を決定するようにしてもよい。
次いで、予約受信部472は、情報管理部470を介して、現時点での最新の予約状況情報452を確認する(ステップ910)。予約状況情報452は、図10に示されるように、配信開始時刻と配信終了時刻と受信ノードIPアドレスとからなる記録を集めたものである。
予約受信部472は、算出された配信時間に、既に予約が入っている場合、受信ノード優先度情報454を参照することにより、予約済みの受信ノードの優先度と今回の予約要求に係る受信ノードの優先度とを比較する(ステップ912)。受信ノード優先度情報454は、図11に示されるように、IPアドレス毎に優先順位を規定する情報である。P2Pシステムでは、配信するデータが多いノードほど受信時に優遇されるような実装がなされることが多い。本実施形態では、それを考慮して、ノードに優先度が付けられており、優先度が高いノードから予約要求がなされたときに、既に入っている予約は無効にされ、新たな予約要求が受け付けられる。
次いで、予約受信部472は、ステップ910及び912の結果、予約状況や受信ノード優先度に照らし、処理対象の予約要求に対して予約可能か否かを判断する(ステップ914)。予約可能な場合、予約受信部472は、予約結果として配信開始時刻を受信ノード130に返答する(ステップ916)とともに、その新しい予約情報を予約状況情報452に登録して(ステップ918)、処理を終了する。
一方、ステップ914において予約不能と判断される場合、予約受信部472は、配信開始時刻及び配信終了時刻を前倒しすることで予約が入っていない時間帯に配信することが可能か否かについての検討、すなわち配信可能な時間についての探索を行う(ステップ920)。配信可能な時間が存在する場合、予約受信部472は、ステップ916へと進む。一方、配信可能な時間が存在しない場合、予約受信部472は、受信ノード130にエラーを返答して(ステップ924)、処理を終了する。
図12は、受信ノード130内のコンテンツ要求部426の処理動作を示すフローチャートである。まず、コンテンツ要求部426は、情報管理部420を介して補助記憶装置から予約結果情報408を主記憶装置へと取り込む(ステップ1202)。
次いで、コンテンツ要求部426は、現在時刻が、予約結果情報408に示される、いずれかの配信開始時刻になったか否かを判定する(ステップ1204)。現在時刻が配信開始時刻になっている場合、コンテンツ要求部426は、対応する配信ノードIPアドレスに対してブロックを要求し(ステップ1206)、ブロックの要求をしたことをコンテンツ受信部428に通知する(ステップ1208)。
また、コンテンツ要求部426は、現在時刻が、いずれかの配信開始時刻より一定時間前(例えば、1分前)の時刻になったか否かを判定する(ステップ1210)。その判定結果がYESの場合、コンテンツ要求部426は、該当する配信ノード120に対し、配信開始時刻に予約通りに配信可能かどうかの確認を行う(ステップ1212)。これは、配信開始時刻が返答されたにもかかわらず、その後、配信ノードの電源がオフされること等により、配信の開始ができなくなる場合があるためである。この確認については、例えば、以下のようなデータを通信し、返答を確認すればいい。
<?xml version=“1.0”?>
<block action=“confirm” id=“abc00001” sendtime=“2007/10/29 10:00:30”/>
エラーが返答された場合や通信できなかった場合、コンテンツ要求部426は、その旨を配信予約部424に通知する(ステップ1214及び1216)。配信予約部424は、ステップ612(図6)からの処理を再度行うことで、そのブロックのみ予約をやり直す。
コンテンツ要求部426は、全てのブロックについての配信要求を完了するまで、以上のステップを繰り返す(ステップ1218)。なお、配信ノードが予約通りに配信可能か否かの確認は、配信開始時刻まで一定の時間となった時刻に行うのではなく、一定時間間隔で定期的に行うようにしてもよい。
図13は、受信ノード130内のコンテンツ受信部428の処理動作を示すフローチャートである。まず、コンテンツ要求部426からの通知を受けて、コンテンツ受信部428は、ネットワーク送受信部430を介して配信ノード120からブロックを受信し、コンテンツバッファ410に記録する処理を開始する(ステップ1302)。なお、記録されたコンテンツブロックは、コンテンツ再生部422による通常のストリーミング再生処理によって再生される。
次いで、コンテンツ受信部428は、情報管理部420を介して、当該ブロックに関するブロック再生時刻情報406(ブロック再生開始時刻及びブロック再生終了時刻)を取得する(ステップ1304)。そして、コンテンツ受信部428は、再生開始時刻までにブロックの受信を開始することができたか否かを判定する(ステップ1306)。予定通りブロック受信を開始することができた場合、コンテンツ受信部428は、ブロックの受信及びバッファへの記録を終了した(ステップ1308)後に、再生終了時刻までにブロックの受信を終了することができたか否かを判定する(ステップ1310)。
再生開始時刻までにブロックの受信を開始することができなかった場合、又は、再生終了時刻までにブロックの受信を終了することができなかった場合、コンテンツ受信部428は、その旨を配信予約部424に通知する(ステップ1312)。配信予約部424は、ステップ612(図6)からの処理を再度行うことで、未だ取得されていないブロックについて予約をやり直す。
例えば、別のノードがデータのやりとりを行った結果、通信しにくい状態になった場合等、ネットワーク帯域が何らかの原因で不足した場合、ブロックの受信が再生に間に合わない場合がある。その結果として、再生が遅れ、後続のブロックが予約された時刻より受信するのが遅くてもよくなったり、逆にネットワーク環境次第ではより早く受信する必要が発生したりすることが考えられる。本実施形態では、予定とのずれが起こった場合、再度、予約処理がやり直されて、そのような状態から抜け出すことができる。
図14は、開示のコンテンツ配信方法によるネットワーク使用帯域の時間的変化を従来例と比較しつつ説明する図である。ライン1402は、コンテンツの複数ブロックを同時に迅速にダウンロードしてキャッシュするという第一の従来例の場合のネットワーク使用帯域の時間的変化である。この従来例では、迅速にコンテンツを取得しようとするため、ネットワーク使用帯域に偏りが生ずる。
また、ライン1404は、再生時刻に合わせて配信ノードに問い合わせてブロックを取得するという第二の従来例の場合のネットワーク使用帯域の時間的変化である。この従来例では、そのブロックを保持する配信ノードが他のノードに配信している等により配信不能となる場合があり、その場合には再生が途切れることとなる。
一方、ライン1406は、本開示技術の場合のネットワーク使用帯域の時間的変化である。本開示技術では、配信予約部424により、ストリーミングが可能かどうかについて事前に判定がなされる。さらに、予約受信部472により、配信時刻をずらすことが可能である。結果として、必要な時刻に安定的にブロックを取得することが実現される。また、複数の受信ノードが存在する場合に、ネットワーク帯域の利用が分散し、ネットワークの輻輳を避けることができる。
以上の実施形態に関し、以下の付記を開示する。
(付記1) コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードから受信ノードへコンテンツを配信するコンテンツ配信方法であって、
受信ノードが、各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信するステップと、
各配信ノードが、受信ノードから該配信予約要求情報を受信するステップと、
各配信ノードが、少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定するステップと、
各配信ノードが、該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信するステップと、
受信ノードが、各配信ノードから該配信予約結果情報を受信するステップと、
受信ノードが、該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するステップと、
を具備するコンテンツ配信方法。
このような構成によれば、配信予約要求情報にしたがって事前に配信開始時刻と配信終了時刻を決定することができることで、受信ノードが要求するタイミングにあわせてブロックを供給することができ、受信ノードが必要以上に早くブロックを受信することがなくなり、ネットワークを流れるデータの平準化や受信ノード側のキャッシュ容量を小さくすることが可能となるなどの効果が期待される。
(付記2) コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードと、コンテンツを受信する受信ノードと、を含むコンピュータネットワーク上の通信システムであって、受信ノードが、
各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信する予約要求送信手段、
を具備し、各配信ノードが、
受信ノードから該配信予約要求情報を受信する予約要求受信手段と、
少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定する配信時刻決定手段と、
該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信する予約結果送信手段と、
を具備し、受信ノードが、更に、
各配信ノードから該配信予約結果情報を受信する予約結果受信手段と、
該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するブロック受信手段と、
を具備する通信システム。
このような構成によれば、配信予約要求情報にしたがって事前に配信開始時刻と配信終了時刻を決定することができることで、受信ノードが要求するタイミングにあわせてブロックを供給することができ、受信ノードが必要以上に早くブロックを受信することがなくなり、ネットワークを流れるデータの平準化や受信ノード側のキャッシュ容量を小さくすることが可能となるなどの効果が期待される。
(付記3) コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードからコンテンツを受信する受信ノードとして機能する通信端末装置であって、
各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信する予約要求送信手段と、
少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づき各配信ノードにおいて決定された配信開始時刻と配信終了時刻とを配信予約結果情報として各配信ノードから受信する予約結果受信手段と、
該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するブロック受信手段と、
を具備する通信端末装置。
このような構成によれば、配信予約要求情報にしたがって事前に配信開始時刻と配信終了時刻を決定することができることで、受信ノードが要求するタイミングにあわせてブロックを供給することができ、受信ノードが必要以上に早くブロックを受信することがなくなり、ネットワークを流れるデータの平準化や受信ノード側のキャッシュ容量を小さくすることが可能となるなどの効果が期待される。
(付記4) 一定時間間隔で定期的に、又は、該配信開始時刻まで一定の時間となったときに、各配信ノードに対して予約通りに配信可能かの確認要求を行い、配信可能である旨の返答が得られなかった場合に、再度、他の配信ノードに対して、前記予約要求送信手段、前記予約結果受信手段及び前記ブロック受信手段を機能させる、付記3に記載の通信端末装置。
このような構成によれば、確認要求を行い、確認の結果に基づいて予約要求送信を再度行うことにより、配信ノード側の状況変化等の要因により配信できなくなる場合にも対応することが可能となるなどの効果が期待される。
(付記5) 実際にブロックの受信が開始又は終了した時刻が該配信開始時刻又は該配信終了時刻よりも遅れた場合に、まだ受信されていないブロックについて、前記予約要求送信手段、前記予約結果受信手段及び前記ブロック受信手段を機能させる、付記3に記載の通信端末装置。
このような構成によれば、ブロックの受信が開始された時刻又は終了した時刻が、配信開始時刻又は配信終了時刻よりも遅れた場合は、ネットワーク等に状況の変化があったと推測し、予約要求をサイド送信することにより状況の変化が生じた場合にも柔軟に対応することが可能となるなどの効果が期待される。
(付記6) コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち割当てられたブロックを保持して受信ノードに配信する配信ノードとして機能する通信端末装置であって、
受信ノードからブロックの再生開始時刻を配信予約要求情報として受信する予約要求受信手段と、
少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定する配信時刻決定手段と、
該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信する予約結果送信手段と、
を具備する通信端末装置。
このような構成によれば、配信ノードにおいて、配信予約要求情報にしたがって事前に配信開始時刻と配信終了時刻を決定することができることで、受信ノードが要求するタイミングにあわせてブロックを供給することができ、受信ノードが必要以上に早くブロックを受信することがなくなり、ネットワークを流れるデータの平準化や受信ノード側のキャッシュ容量を小さくすることが可能となるなどの効果が期待される。
(付記7) 前記配信時刻決定手段は、ブロックサイズをネットワーク帯域で除すことにより配信所要時間を算出するとともに通信遅延時間を測定し、該配信所要時間と該通信遅延時間と該再生開始時刻とに基づき算出される配信開始時刻及び配信終了時刻を該予約状況と照らし合わせ、最終的な配信開始時刻及び配信終了時刻又は配信不可を決定する、付記6に記載の通信端末装置。
このような構成によれば、配信所要時間と通信遅延時間を使用することで、配信開始時刻をより正確に算出することができ、配信が間に合わなくなりストリーミングが途切れるという可能性を低減させ、結果として、ストリーミングを途切れさせることなく最後まで安定して配信させることが可能となるなどの効果が期待される。
(付記8) 前記配信時刻決定手段は、更に、受信ノードの優先順位表を備え、既に入っている予約に対応する受信ノードの優先順位と新たな予約要求に対応する受信ノードの優先順位とを比較し、後者の優先順位が高い場合、後者の受信ノードの予約要求を優先して受け付け、前者の受信ノードの予約を取り消す、付記7に記載の通信端末装置。
このような構成によれば、優先順位表にしたがって複数の受信ノード間で予約を変更することにより、重要な受信ノードが途中でストリーミングが受けられなくなる可能性を低減し、結果として、ストリーミングを途切れさせること無く最後まで安定して配信させることが可能となるなどの効果が期待される。
(付記9) コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードからコンテンツを受信するために、コンピュータを、
各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信する予約要求送信手段と、
少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づき各配信ノードにおいて決定された配信開始時刻と配信終了時刻とを配信予約結果情報として各配信ノードから受信する予約結果受信手段と、
該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するブロック受信手段と、
として機能させるプログラム。
このような構成によれば、配信予約要求情報にしたがって事前に配信開始時刻と配信終了時刻を決定することができることで、受信ノードが要求するタイミングにあわせてブロックを供給することができ、受信ノードが必要以上に早くブロックを受信することがなくなり、ネットワークを流れるデータの平準化や受信ノード側のキャッシュ容量を小さくすることが可能となるなどの効果が期待される。
(付記10) コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち割当てられたブロックを保持して受信ノードに配信するために、コンピュータを、
受信ノードからブロックの再生開始時刻を配信予約要求情報として受信する予約要求受信手段と、
少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定する配信時刻決定手段と、
該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信する予約結果送信手段と、
として機能させるプログラム。
このような構成によれば、配信予約要求情報にしたがって事前に配信開始時刻と配信終了時刻を決定することができることで、受信ノードが要求するタイミングにあわせてブロックを供給することができ、受信ノードが必要以上に早くブロックを受信することがなくなり、ネットワークを流れるデータの平準化や受信ノード側のキャッシュ容量を小さくすることが可能となるなどの効果が期待される。
本コンテンツ配信方法が適用されるコンピュータネットワーク上の通信システムの例を示すブロック図である。 メタデータサーバ、配信ノード又は受信ノードとしてのパーソナルコンピュータの概略的ハードウェア構成を示す図である。 受信ノードが配信ノードからコンテンツブロックを取得して再生する時間経過を例示する図である。 配信ノード及び受信ノードの機能的構成を示す図である。 受信ノード内のコンテンツメタデータ情報を例示する図である。 受信ノード内の配信予約部の処理動作を示すフローチャートである。 受信ノード内のブロック再生時刻情報を例示する図である。 受信ノード内の予約結果情報を例示する図である。 配信ノード内の予約受信部の処理動作を示すフローチャートである。 配信ノード内の予約状況情報を例示する図である。 配信ノード内の受信ノード優先度情報を例示する図である。 受信ノード内のコンテンツ要求部の処理動作を示すフローチャートである。 受信ノード内のコンテンツ受信部の処理動作を示すフローチャートである。 開示のコンテンツ配信方法によるネットワーク使用帯域の時間的変化を従来例と比較しつつ説明する図である。
符号の説明
100 ネットワーク
110 メタデータサーバ
120(120A,120B,120C) 配信ノード
130 受信ノード
200 バス
202 中央処理装置(CPU)
204 主記憶装置
206 補助(外部)記憶装置
208 ネットワークインタフェース部
402 コンテンツメタデータ情報
404 配信ノード情報
406 ブロック再生時刻情報
408 予約結果情報
410 コンテンツバッファ
420 情報管理部
422 コンテンツ再生部
424 配信予約部
426 コンテンツ要求部
428 コンテンツ受信部
430 ネットワーク送受信部
452 予約状況情報
454 受信ノード優先度情報
456 ブロック情報
458 ネットワーク帯域情報
460 コンテンツブロック
470 情報管理部
472 予約受信部
474 コンテンツ配信部
476 ネットワーク送受信部

Claims (8)

  1. コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードから受信ノードへコンテンツを配信するコンテンツ配信方法であって、
    受信ノードが、各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信するステップと、
    各配信ノードが、受信ノードから該配信予約要求情報を受信するステップと、
    各配信ノードが、少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定するステップと、
    各配信ノードが、該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信するステップと、
    受信ノードが、各配信ノードから該配信予約結果情報を受信するステップと、
    受信ノードが、該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するステップと、
    を具備するコンテンツ配信方法。
  2. コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードからコンテンツを受信する受信ノードとして機能する通信端末装置であって、
    各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信する予約要求送信手段と、
    少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づき各配信ノードにおいて決定された配信開始時刻と配信終了時刻とを配信予約結果情報として各配信ノードから受信する予約結果受信手段と、
    該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するブロック受信手段と、
    を具備する通信端末装置。
  3. 一定時間間隔で定期的に、又は、該配信開始時刻まで一定の時間となったときに、各配信ノードに対して予約通りに配信可能かの確認要求を行い、配信可能である旨の返答が得られなかった場合に、再度、他の配信ノードに対して、前記予約要求送信手段、前記予約結果受信手段及び前記ブロック受信手段を機能させる、請求項2に記載の通信端末装置。
  4. 実際にブロックの受信が開始又は終了した時刻が該配信開始時刻又は該配信終了時刻よりも遅れた場合に、まだ受信されていないブロックについて、前記予約要求送信手段、前記予約結果受信手段及び前記ブロック受信手段を機能させる、請求項2に記載の通信端末装置。
  5. コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち割当てられたブロックを保持して受信ノードに配信する配信ノードとして機能する通信端末装置であって、
    受信ノードからブロックの再生開始時刻を配信予約要求情報として受信する予約要求受信手段と、
    少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づいて配信開始時刻と配信終了時刻とを決定する配信時刻決定手段と、
    該配信開始時刻と該配信終了時刻とを配信予約結果情報として受信ノードに送信する予約結果送信手段と、
    を具備する通信端末装置。
  6. 前記配信時刻決定手段は、ブロックサイズをネットワーク帯域で除すことにより配信所要時間を算出するとともに通信遅延時間を測定し、該配信所要時間と該通信遅延時間と該再生開始時刻とに基づき算出される配信開始時刻及び配信終了時刻を該予約状況と照らし合わせ、最終的な配信開始時刻及び配信終了時刻又は配信不可を決定する、請求項5に記載の通信端末装置。
  7. 前記配信時刻決定手段は、更に、受信ノードの優先順位表を備え、既に入っている予約に対応する受信ノードの優先順位と新たな予約要求に対応する受信ノードの優先順位とを比較し、後者の優先順位が高い場合、後者の受信ノードの予約要求を優先して受け付け、前者の受信ノードの予約を取り消す、請求項6に記載の通信端末装置。
  8. コンピュータネットワークにおいて、コンテンツを形成する複数のブロックのうち各々割当てられたブロックを保持する少なくとも一つの配信ノードからコンテンツを受信するために、コンピュータを、
    各ブロックの再生開始時刻を配信予約要求情報として対応する各配信ノードに送信する予約要求送信手段と、
    少なくとも該配信予約要求情報と予約状況とネットワーク帯域情報とに基づき各配信ノードにおいて決定された配信開始時刻と配信終了時刻とを配信予約結果情報として各配信ノードから受信する予約結果受信手段と、
    該配信予約結果情報に応じて各配信ノードにブロックを要求して受信するブロック受信手段と、
    として機能させるプログラム。
JP2008155761A 2008-06-13 2008-06-13 コンテンツ配信方法及び通信端末装置 Expired - Fee Related JP5223480B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008155761A JP5223480B2 (ja) 2008-06-13 2008-06-13 コンテンツ配信方法及び通信端末装置
US12/382,620 US7865611B2 (en) 2008-06-13 2009-03-19 Content delivery method and communication terminal apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008155761A JP5223480B2 (ja) 2008-06-13 2008-06-13 コンテンツ配信方法及び通信端末装置

Publications (2)

Publication Number Publication Date
JP2009302955A true JP2009302955A (ja) 2009-12-24
JP5223480B2 JP5223480B2 (ja) 2013-06-26

Family

ID=41415764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008155761A Expired - Fee Related JP5223480B2 (ja) 2008-06-13 2008-06-13 コンテンツ配信方法及び通信端末装置

Country Status (2)

Country Link
US (1) US7865611B2 (ja)
JP (1) JP5223480B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011160052A (ja) * 2010-01-29 2011-08-18 Brother Industries Ltd 情報通信システム、ノード装置、情報通信方法、及び情報通信プログラム
JP2013167956A (ja) * 2012-02-14 2013-08-29 Kddi Corp 通信システム、通信方法、通信プログラムおよび通信装置
JP2013254311A (ja) * 2012-06-06 2013-12-19 Fujitsu Ltd コンテンツ配信のための情報処理方法及び装置
JP2016533062A (ja) * 2013-07-03 2016-10-20 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ セグメント化コンテンツのストリーミング

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20115141A0 (fi) * 2011-02-15 2011-02-15 P2S Media Group Oy Käyttäjien rekisteröintimenetelmä ja -järjestelmä
CA2839436C (en) * 2011-06-15 2015-08-04 Allot Communications Ltd Method and apparatus for session bandwidth estimation and rate control
JP6023213B2 (ja) 2011-12-29 2016-11-09 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ セグメント化されたコンテンツについての制御されたストリーミング
WO2014134135A1 (en) * 2013-02-26 2014-09-04 Fastly Inc. Enhanced acknowledgement handling in communication packet transfer
US9467369B2 (en) * 2013-08-02 2016-10-11 Time Warner Cable Enterprises Llc Packetized content delivery apparatus and methods
CN104427620B (zh) * 2013-09-10 2018-12-28 富士通株式会社 时隙分配方法和装置
WO2015121342A1 (en) 2014-02-13 2015-08-20 Koninklijke Kpn N.V. Requesting multiple chunks from a network node on the basis of a single request message
US10111099B2 (en) * 2014-05-12 2018-10-23 Microsoft Technology Licensing, Llc Distributing content in managed wireless distribution networks
US9384335B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content delivery prioritization in managed wireless distribution networks
US9384334B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content discovery in managed wireless distribution networks
US9430667B2 (en) 2014-05-12 2016-08-30 Microsoft Technology Licensing, Llc Managed wireless distribution network
US9874914B2 (en) 2014-05-19 2018-01-23 Microsoft Technology Licensing, Llc Power management contracts for accessory devices
US10037202B2 (en) 2014-06-03 2018-07-31 Microsoft Technology Licensing, Llc Techniques to isolating a portion of an online computing service
US10523723B2 (en) 2014-06-06 2019-12-31 Koninklijke Kpn N.V. Method, system and various components of such a system for selecting a chunk identifier
US9367490B2 (en) 2014-06-13 2016-06-14 Microsoft Technology Licensing, Llc Reversible connector for accessory devices
US9548915B2 (en) 2014-07-31 2017-01-17 The Nielsen Company (Us), Llc Methods and apparatus to determine an end time of streaming media
US9948539B2 (en) 2014-08-29 2018-04-17 The Nielsen Company (Us), Llc Methods and apparatus to predict end of streaming media using a prediction model
US10070155B2 (en) 2014-11-10 2018-09-04 Time Warner Cable Enterprises Llc Packetized content delivery apparatus and methods
US9743151B2 (en) 2015-06-24 2017-08-22 Time Warner Cable Enterprises Llc Multicast video program switching architecture
US10341379B2 (en) 2016-02-12 2019-07-02 Time Warner Cable Enterprises Llc Apparatus and methods for mitigation of network attacks via dynamic re-routing
CN108933798B (zh) 2017-05-23 2022-02-18 杭州海康威视数字技术股份有限公司 数据存储方法、存储服务器及系统
CA3101926A1 (en) 2018-02-26 2019-08-29 Charter Communications Operating, Llc Apparatus and methods for packetized content routing and delivery
US10887647B2 (en) 2019-04-24 2021-01-05 Charter Communications Operating, Llc Apparatus and methods for personalized content synchronization and delivery in a content distribution network
US11743308B1 (en) * 2022-07-18 2023-08-29 Audacy Operations, Inc. Efficient media storage for use in media streaming

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002049766A (ja) * 2000-08-03 2002-02-15 Kddi Corp コンテンツ提供方法
JP2003022232A (ja) * 2001-07-06 2003-01-24 Fujitsu Ltd コンテンツデータ転送システム
JP2004080145A (ja) * 2002-08-12 2004-03-11 Canon Inc 映像サーバシステム及びその映像再生方法
JP2006074744A (ja) * 2004-09-03 2006-03-16 Microsoft Corp 拡張可能なメディアの分散ストリーミングのシステムおよび方法
JP2006074781A (ja) * 2004-09-03 2006-03-16 Microsoft Corp ストリーミングメディアの消去符号化のシステム及び方法
JP2006079606A (ja) * 2004-09-03 2006-03-23 Microsoft Corp ピアツーピアネットワークでの受信側主導のシステム及び方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07336375A (ja) * 1994-06-14 1995-12-22 Hitachi Ltd データ転送システム
US6003045A (en) * 1997-09-17 1999-12-14 International Business Machines Corporation Accessing stored files from multiple storage devices
US6105029A (en) * 1997-09-17 2000-08-15 International Business Machines Corporation Retrieving network files through parallel channels
US6018780A (en) * 1998-05-19 2000-01-25 Lucent Technologies Inc. Method and apparatus for downloading a file to a remote unit
US20020059167A1 (en) * 2000-07-25 2002-05-16 Makoto Sunada Apparatus for saving files into a plurality of holders
JP4120461B2 (ja) * 2002-07-12 2008-07-16 住友電気工業株式会社 伝送データ生成方法及び伝送データ生成装置
US20050091395A1 (en) * 2003-10-08 2005-04-28 Jason Harris Method and system for transferring data files
US7593333B2 (en) 2004-07-07 2009-09-22 Microsoft Corporation Efficient one-to-many content distribution in a peer-to-peer computer network
US20060064386A1 (en) * 2004-09-20 2006-03-23 Aaron Marking Media on demand via peering
US7165050B2 (en) * 2004-09-20 2007-01-16 Aaron Marking Media on demand via peering
JP5140952B2 (ja) * 2006-07-10 2013-02-13 日本電気株式会社 コンテンツ配信システム、コンテンツ配信サーバ、コンテンツ再生端末、プログラム、コンテンツ配信方法
CN101174955B (zh) * 2006-10-30 2010-04-21 华为技术有限公司 共享内容传输方法和系统以及内容源端、内容接收端

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002049766A (ja) * 2000-08-03 2002-02-15 Kddi Corp コンテンツ提供方法
JP2003022232A (ja) * 2001-07-06 2003-01-24 Fujitsu Ltd コンテンツデータ転送システム
JP2004080145A (ja) * 2002-08-12 2004-03-11 Canon Inc 映像サーバシステム及びその映像再生方法
JP2006074744A (ja) * 2004-09-03 2006-03-16 Microsoft Corp 拡張可能なメディアの分散ストリーミングのシステムおよび方法
JP2006074781A (ja) * 2004-09-03 2006-03-16 Microsoft Corp ストリーミングメディアの消去符号化のシステム及び方法
JP2006079606A (ja) * 2004-09-03 2006-03-23 Microsoft Corp ピアツーピアネットワークでの受信側主導のシステム及び方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011160052A (ja) * 2010-01-29 2011-08-18 Brother Industries Ltd 情報通信システム、ノード装置、情報通信方法、及び情報通信プログラム
JP2013167956A (ja) * 2012-02-14 2013-08-29 Kddi Corp 通信システム、通信方法、通信プログラムおよび通信装置
JP2013254311A (ja) * 2012-06-06 2013-12-19 Fujitsu Ltd コンテンツ配信のための情報処理方法及び装置
JP2016533062A (ja) * 2013-07-03 2016-10-20 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ セグメント化コンテンツのストリーミング
JP2018196123A (ja) * 2013-07-03 2018-12-06 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ セグメント化コンテンツのストリーミング

Also Published As

Publication number Publication date
US20090313330A1 (en) 2009-12-17
US7865611B2 (en) 2011-01-04
JP5223480B2 (ja) 2013-06-26

Similar Documents

Publication Publication Date Title
JP5223480B2 (ja) コンテンツ配信方法及び通信端末装置
JP6937918B2 (ja) ビデオライブブロードキャスト方法及び装置
US7379967B2 (en) Download method for file by bit torrent protocol
EP1427170B1 (en) Peer-to-Peer content broadcast method
JP5951071B2 (ja) プル・モード及びプッシュ・モードを組み合わせるシステム及び方法
JP5580302B2 (ja) ピアツーピアネットワークのための放送シーディング
US20160028646A1 (en) Push-based transmission of resources and correlated network quality estimation
US20080016201A1 (en) Methods and apparatus for transferring data
US11916743B2 (en) Profile generation for bandwidth management
JP2015179551A (ja) メタデータファイルを更新する方法、装置、およびシステム
US20110126256A1 (en) Method for live broadcasting in a distributed network and apparatus for the same
EP1796010A2 (en) Receiving and transmitting distributed content
WO2010101496A9 (en) Methods and arrangements for prioritization in a peer-to-peer network
US20090222890A1 (en) Method and apparatus for providing streaming service based on p2p and streaming service system using the same
JP2006515966A (ja) ビデオ・オンデマンド用のチャネル・マージ
JP2009188981A (ja) コンテンツ配信方法及び受信装置
EP2252057A1 (en) Method and system for storing and distributing electronic content
JP2005244605A (ja) ストリーミングコンテンツ配信制御システム、プログラム及び該プログラムを格納した記録媒体
JP2018511209A (ja) ネットワークにおける帯域幅の分配のための方法および装置
JP7220880B1 (ja) データアクセスのためのシステム、方法、及びコンピュータ可読媒体
JP4203528B1 (ja) 映像データ取得方法、映像データ取得システム、映像受信装置及び映像配信装置
WO2011009362A1 (zh) 下载数据的方法、装置和系统及节点
JP5093274B2 (ja) 端末装置及びファイル送信システム
KR100835528B1 (ko) 구간정보를 이용한 멀티미디어 콘텐츠의 스트리밍 방법 및그 스트리밍 단말기
JP5229287B2 (ja) カラオケネットワークシステム、集中管理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120814

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121012

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130225

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160322

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees