JP5269208B2 - データ配信方法及び装置 - Google Patents

データ配信方法及び装置 Download PDF

Info

Publication number
JP5269208B2
JP5269208B2 JP2011549442A JP2011549442A JP5269208B2 JP 5269208 B2 JP5269208 B2 JP 5269208B2 JP 2011549442 A JP2011549442 A JP 2011549442A JP 2011549442 A JP2011549442 A JP 2011549442A JP 5269208 B2 JP5269208 B2 JP 5269208B2
Authority
JP
Japan
Prior art keywords
data
peer
stored
tracker
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.)
Active
Application number
JP2011549442A
Other languages
English (en)
Other versions
JP2012518299A (ja
Inventor
ヴィクター スザ,
ケント ボゲスタム,
アヨデレ ダモラ,
Original Assignee
テレフオンアクチーボラゲット エル エム エリクソン(パブル)
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 テレフオンアクチーボラゲット エル エム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Publication of JP2012518299A publication Critical patent/JP2012518299A/ja
Application granted granted Critical
Publication of JP5269208B2 publication Critical patent/JP5269208B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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
    • 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/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities
    • 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
    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23113Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving housekeeping operations for stored content, e.g. prioritizing content for deletion because of storage space restrictions
    • 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/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/835Generation of protective data, e.g. certificates
    • H04N21/8355Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends

Description

本発明はデータ配信方法及び装置、特にデータ配信制御方法及び装置に関する。
ビデオ・オン・デマンド(VoD)サービスは、ユーザがビデオ・コンテンツを選択して視聴することを可能にする。VoDシステムは、セット・トップ・ボックス(STB)、ディジタル・ビデオ・レコーダ、パーソナル・ビデオ・レコーダ、ポータブル・メディア・プレイヤ、コンピュータ、移動電話機又はVoDクライアントを有するPDAの様なデバイスへ、リアルタイムで見るストリーム・コンテンツ又は任意の時間に見るダウンロード・コンテンツの何れかを送信する。ビデオ・オン・デマンド・ダウンロード及びストリーミングは、ユーザが、その都合の良い時にビデオ・コンテンツを視聴することを可能にするが、VCR、DVDレコーダ又はDVRを使用して以前に記録した伝送情報を再生する場合には、従来から利用可能な機能(即ち停止、早送り、巻き戻し)もユーザに提供する。
VoDコンテンツは、ヘッド・エンド・システムとして参照する、幾つかの中央サーバからユーザに配信することができる。マルチキャストは、複数のユーザにコンテンツを配信するのに非常に効率的であるが、マルチキャスト配信は、オン・デマンドでの相互作用をユーザに提供しないので、VoDサービスは、通常、コンテンツを配信するために、ユニキャスト機構(例えばHTTP)に依存する。しかしながら、多数のユーザに多量のコンテンツを同時に配信する場合、これらユニキャスト配信機構は、非効率的であり、よって、限られたCPU能力及び保存容量しか持たないヘッド・エンド・システムには課題であり得る。
これらの課題を克服するために、ピア・ツー・ピア(P2P)機構が、VoDコンテンツを配信するために利用され得る。P2Pシステムでは、ネットワークのピア数が大きければ大きいほど、利用可能である保存容量及びCPU能力は大きくなる。この様に、ネットワークに十分なピア数があると、P2P機構は非常に効率的であり得る。P2PによるVoDシステムでは、ヘッド・エンドVoDサーバから、複数のユーザのVoDクライアント・デバイスに、コンテンツは“プル”又は“プッシュ”される。これらVoDクライアントは、所望のビデオ・コンテンツを取得するために、他のピアVoDクライアント・デバイスによりアクセスされ得る。
プル機構を使用する場合、VoDコンテンツは、ヘッド・エンドからの初期送信中に、“ライブ”にそのコンテンツにアクセスするVoDクライアントにより取得される。これらVoDクライアントは、他のユーザがこのコンテンツを見る場合、他のVoDクライアントによりアクセスされ、コンテンツのソースとして利用され、それにより時間シフト・サービスを可能にする。図1は、コンテンツが、ヘッド・エンドからピアによりプルされるP2PのVoDシステムの例を示している。実行するステップは以下の通りである。
A1.複数のVoDクライアント1は、各々独立にサービス・プロバイダのVoDサーバ2からのコンテンツの“ライブ”ストリームへの参加を選択する。例えば、これは視聴者がTV番組の送信時に視聴する番組を選択することに相当する。
A2.これらVoDクライアント1は、マルチキャスト・グループに参加し、VoDサーバ2から所望のコンテンツの受信を開始する。VoDサーバ2は、映画の様な事前に記録したコンテンツを配信することができ、ライブ・スポーツ・イベントの様なライブ・コンテンツをストリーミングすることができる。
A3.コンテンツを受信すると、各VoDクライアント1は、コンテンツをそのメモリに保存する。VoDクライアント1がコンテンツの保存に成功すると、VoDクライアント1は、このことをトラッカ3に報告する。トラッカ3は、どのコンテンツがどこに保存されているかを追跡する機能ブロックである。このトラッカ3は、ヘッド・エンド・システムに統合することもでき、ヘッド・エンド・システムから分離して配置することもでき、例えばDHTに基づく分散システムであり得る。
A4.ある時間の後に、別のVoDクライアント4は、このコンテンツを要求する。トラッカ3は、現在オンラインであり、かつ、そのコンテンツを所有し、よって、要求されたコンテンツのソースとして動作できるVoDクライアント又はVoDクライアントのセットを通知することで、その様な要求に応える。
A5.コンテンツは、要求したVoDクライアント4により、ソースとなるVoDクライアント1からP2P様式でダウンロードされる。要求したVoDクライアント4のユーザは、この場合、時間シフト様式でコンテンツを視聴することができる。
プッシュ機構は、VoDクライアントがコンテンツを要求してない場合でさえ、ヘッド・エンドにおいて、VoDサーバが、VoDクライアントにコンテンツを配信することを可能にする。ここでは、保存デバイスは常に1つ以上のマルチキャスト・グループを聴取しており、保存デバイスは、ヘッド・エンドのVoDサーバがこれらのグループにプッシュするあらゆるコンテンツを受信することを想定している。図2は、ヘッド・エンドからVoDクライアントへコンテンツをプッシュするP2PのVoDシステムの例を示している。実行するステップは以下の通りである。
B1.VoDサーバ2は、複数のVoDクライアント1に亘り保存されるコンテンツを準備する。コンテンツは、複数のVoDクライアントに送信され、保存されるのに適した“ブロック”に分割され得る。ヘッド・エンド・システムの論理では、次いで、このコンテンツを保存すべき1つ以上のVoDクライアント1を選択する。選択されるVoDクライアント1は、オンラインでなければならない。
B2.マルチキャスト・ストリーミングが、選択されたVoDクライアント1に対して開始され、選択されたVoDクライアント1のそれぞれは、ある信号プロトコルによりストリーミングに参加する。このコンテンツ配信に使用できるマルチキャス・トプロトコルの例は、FLUTE(File Delivery over Uni−directional Transport)(非特許文献1を参照)又は実時間伝送プロトコル(RTP)(非特許文献2を参照)である。
B3.コンテンツの受信に成功して保存した各VoDクライアント1は、このことをトラッカ3に報告する。この報告は、VoDクライアントのID(例えばIPアドレス)及び受け入れたコンテンツの表示を含む。
B4.ある時間後、別のVoDクライアント4が、そのコンテンツを要求する。トラッカ3は、現在オンラインであり、そのコンテンツを所有し、よって、要求されたコンテンツのソースとして動作できるVoDクライアント又はVoDクライアントのセットの(例えばそのIPアドレス)を通知して、その様な要求に応える。
B5.要求したVoDクライアント4は、ソースであるVoDクライアント1とP2Pセッションを開始する。要求されたコンテンツ・ブロックのセットは、要求したVoDクライアント4により取得され、再構成され、描画される。要求したVoDクライアント4のユーザは、よって、時間シフト様式でコンテンツを視聴することができる。
RFC3926 RFC3550
本発明の第1の態様によれば、ピア・ツー・ピア・ネットワークのピアが他のピアにデータを提供することを可能にするために、ピアにデータを配信する方法が提供される。本方法は、データ項目を保存するために必要なピアの最小数を事前に規定するステップと、1つ以上のデータ・サーバから、複数のデータ受信ピアにデータ項目を送信するステップと、データ項目を保存するために利用可能な十分な保存容量を有するデータ受信ピアの数が、事前に規定した最小数未満であるかを判定するステップと、最小数未満であれば、十分な保存容量を利用可能にするために、保存済データを削除するステップと、を含んでいる。
データ項目を保存するために利用可能な十分な保存容量を有するデータ受信ピアの数が、事前に規定した最小数未満であるかを判定するステップは、各データ受信ピアで、十分な保存容量を利用可能であれば、データ項目を保存して、データ項目の保存をトラッカに報告するステップと、トラッカにおいて、ピアが保存しているデータのレコードを維持し、データ項目が、事前に規定された最小数のピアで保存されているかを判定するステップと、を含むことができる。
十分な保存容量を利用可能にするために、保存済データを削除するステップは、トラッカにおいて、データ項目を保存していないデータ受信ピアを特定し、これらデータ受信ピアから削除できる保存済データを特定するために、ピアが保存しているデータのレコードを使用し、特定された保存済データを削除するために、データ項目を保存していないこれらデータ受信ピアに命令を送信するステップを含むことができる。データ項目を保存しないこれらデータ受信ピアにおいては、トラッカからの命令を受信すると、特定された保存済データを削除する。
本方法は、さらに、データ項目を保存していないこれらデータ受信ピアにおいて、保存済データの削除の後に、保存済データの削除をトラッカに報告するステップを含むことができる。トラッカでは、保存済データを削除したことの報告を受信し、ピアで保存されているデータのレコードを更新し、データ項目を保存していないこれらデータ受信ピアにデータ項目を再送信する命令をデータ・サーバに送信する。データ・サーバでは、データ項目を保存していないこれらデータ受信ピアにデータ項目を再送信する。
あるいは、データ項目を保存するために利用可能な十分な保存容量を有するデータ受信ピアの数が、事前に規定した最小数未満であるかを判定するステップは、データ・サーバにおいて、データ受信ピアに送信するデータ項目にメタデータ含めるステップを、含むことができ、メタデータは、少なくとも、ピアがデータ項目を保存しなければならないか否かを示している。データ受信ピアでは、データ項目を保存することが要求されているかを判定するためにメタデータを評価し、要求されていれば、十分な保存容量を利用可能であるかを判定する。
十分な保存容量を利用可能にするために、保存済データを削除するステップは、利用可能な十分な保存容量を持たないデータ受信ピアにおいて、削除できる保存済データを選択するステップと、選択したデータを削除するステップを含むことができる。
十分な保存容量を利用可能にするために、保存済データを削除するステップは、データ受信ピアにおいて、保存済データを選択するステップと、選択したデータの削除許可を要求するメッセージをトラッカに送信するステップと、許可を与えるか否かの応答をトラッカから受信するステップと、を含むことができる。
トラッカからの応答が許可を与えないものであれば、データ受信ピアにおいて、削除できる代わりの保存済データを選択し、代わりの保存済データの削除許可をトラッカに要求し、許可を与えるか否かの応答をトラッカから受信する。トラッカからの応答が許可を与えるものであれば、データ受信ピアにおいて、選択したデータを削除する。
あるいは、トラッカから応答が許可を与えないものであれば、データ受信ピアにおいて、削除できる代わりの保存済データを応答が特定しているかを判定する。トラッカからの応答が代わりの保存済データを特定していなければ、削除できる代わりの保存済データを選択し、代わりの保存済データの削除許可をトラッカに要求する。トラッカからの応答が、代わりの保存済データを特定していれば、代わりの保存済データを削除する。
本方法は、保存済データを削除したデータ受信ピアにおいて、データ項目を保存するステップと、保存済データの削除及びデータ項目の保存をトラッカに報告するステップと、をさらに含むことができる。
本発明の第2の態様によれば、ピア・ツー・ピア・ネットワークのピアを動作させる方法が提供される。本方法は、1つ以上のデータ・サーバからデータ項目を受信するステップと、データ項目を保存するために十分な保存容量を利用可能であるかを判定するステップと、を含んでいる。十分な保存容量が利用可能であれば、データ項目を保存し、データ項目の保存をトラッカに報告し、十分な保存容量が利用可能でなければ、トラッカから命令を受信すると、保存済データを削除する。本方法は、さらに、保存済データの削除の後に、保存済データの削除をトラッカに報告するステップと、1つ以上のデータ・サーバからデータ項目を受信するステップと、データ項目を保存するステップと、データ項目の保存をトラッカに報告するステップをさらに含むことができる。
本発明の第3の態様によれば、ピア・ツー・ピア・ネットワークのトラッカを動作させる方法が提供される。本方法は、ピアが保存したデータ項目の報告をこれらピアから受信するステップと、ピアが保存しているデータのレコードを維持するステップと、データ項目が、事前に規定した最小数のピアで保存されているかを判定するステップと、保存されていなければ、データ項目を保存していないピアを特定するステップと、データ項目を保存していないピアから削除できる保存済データを特定するステップと、選択したデータの削除を、データ項目を保存していない1つ以上のピアに命令するステップと、を含んでいる。本方法は、さらに、保存済データの削除の確認を受信すると、ピアが保存しているデータのレコードを更新するステップと、データ項目のそれらピアへの再送信を、1つ以上のデータ配信サーバに命令するステップと、を含むことができる。
本発明の第4の態様によれば、ピア・ツー・ピア・ネットワークのデータ・サーバを動作させる方法が提供される。本方法は、メタデータを含むデータ項目を1つ以上のピアに送信するステップを含み、メタデータは、少なくとも、ピアがデータ項目を保存しなければならないか否かをピアに示すものである。
本発明の第5の態様によれば、ピア・ツー・ピア・ネットワークのピアを動作させる方法が提供される。本方法は、1つ以上のデータ・サーバから、メタデータを含むデータ項目を受信するステップと、新たな項目を保存することを、ピアが要求されているかを判定するためにメタデータを評価するステップと、要求されていれば、データ項目を保存するために十分な保存容量を利用可能であるかを判定するステップと、を含んでいる。
データ項目を保存するために十分な保存容量を利用可能であれば、データ項目を保存し、トラッカにデータ項目の保存を報告する。データ項目を保存するために十分な保存容量を利用可能でなければ、削除できる保存済データを選択し、選択したデータを削除する。また、データ項目を保存するために十分な保存容量を利用可能でなければ、削除できる保存済データを選択し、選択したデータの削除の許可を要求するメッセージをトラッカに送信し、トラッカから応答を受信する。
トラッカからの応答が許可を与えるものであれば、保存済データを削除し、データ項目を保存し、トラッカにデータ項目の保存を報告する。トラッカからの応答が許可を与えないものであれば、削除できる代わりの保存済データを応答が特定しているかを判定する。トラッカからの応答が、代わりの保存済データを特定していれば、代わりの保存済データを削除し、データ項目を保存し、トラッカにデータ項目の保存を報告する。トラッカからの応答が、代わりの保存済データを特定していなければ、削除できる代わりの保存済データを選択し、代わりの保存済データの削除許可を要求するメッセージをトラッカに送信する。
本方法は、さらに、代わりの保存済データの削除の後に、データ項目を保存するステップと、代わりの保存済データの削除及びデータ項目の保存をトラッカに報告するステップと、を含むことができる。
本発明の第6の態様によれば、ピア・ツー・ピア・ネットワークのトラッカを動作させる方法が提供される。本方法は、ピアが保存しているデータの報告をピアから受信するステップと、ピアが保存しているデータのレコードを維持するステップと、幾つかの選択データの削除許可の要求をピアから受信するステップと、保存しているデータのレコードを使用して、選択データを削除できるかを判定するステップと、選択データの削除許可を与えるか否かを示す応答を要求を行ったピアに送信するステップと、を含んでいる。選択データを削除できないと判定すると、削除できる代わりのデータを特定するために、保存しているデータのレコードを使用し、選択データの削除許可は与えられないことを示し、かつ、代わりのデータを特定する応答を要求を行ったピアに送信する。
データは、ビデオを含むことができ、ピアは、ビデオ・オン・デマンド・システムにおけるクライアントを含むことができる。
本発明の第7の態様によれば、ピア・ツー・ピア・ネットワークにおけるピアとして動作する様に構成された装置が提供される。本装置は、データを保存するメモリ・ユニットと、データ・サーバからデータ項目を受信する受信機と、トラッカにメッセージを送信する送信機と、トラッカからメッセージを受信する受信機と、プロセッサ・ユニットと、を備えている。プロセッサ・ユニットは、データ項目を保存するために十分なメモリが利用可能であるかを判定し、十分なメモリが利用可能であれば、データ項目の保存を実行し、データ項目の保存成功をトラッカに報告するメッセージを生成し、十分なメモリが利用可能でなければ、トラッカからの命令を含むメッセージを受信すると、命令に従い保存済データの削除を実行し、保存済データの削除をトラッカに報告するメッセージを生成する。
本発明の第8の態様によれば、ピア・ツー・ピア・ネットワークにおけるトラッカとして動作する様に構成された装置が提供される。本装置は、ピアからメッセージを受信する受信機と、ピアにメッセージを送信する送信機と、データ・サーバにメッセージを送信する送信機と、ピアが保存しているデータのレコードを維持するメモリ・ユニットと、プロセッサ・ユニットと、を備えている。プロセッサ・ユニットは、データ項目の保存を報告するピアから、事前に規定した最小数のメッセージを、トラッカが受信したかを判定し、受信していなければ、削除できる保存済データを選択し、データ項目を保存していない1つ以上のピアに、保存済データの削除を命令するメッセージを生成し、保存済データの削除確認を受信すると、保存済データの削除が確認されたピアへのデータ項目の再送信を1つ以上のデータ・サーバに命令するメッセージを生成する。
本発明の第9の態様によれば、ピア・ツー・ピア・ネットワークにおけるデータ・サーバとして動作する様に構成された装置が提供される。本装置は、データを保存するメモリ・ユニットと、データ項目に含まれ、少なくとも、ピアがデータ項目を保存しなければならないか否かをピアに指示するメタデータを生成するプロセッサ・ユニットと、メタデータを含むデータ項目を1つ以上のピアに送信する送信機と、を備えている。
本発明の第10の態様によれば、ピア・ツー・ピア・ネットワークにおけるピアとして動作する様に構成された装置が提供される。本装置は、データを保存するメモリ・ユニットと、1つ以上のデータ・サーバからメタデータを含むデータ項目を受信する受信機と、データ項目をピアで保存することが要求されているかを判定するために、メタデータを評価するプロセッサ・ユニットと、を備えている。データ項目の保存が意図されていれば、プロセッサ・ユニットは、データ項目を保存するために十分な保存容量を利用可能であるかを判定する。
十分な保存容量を利用可能であれば、プロセッサ・ユニットは、データ項目の保存を実行し、データ項目の保存をトラッカに報告するメッセージを生成することができる。十分な保存容量を利用可能でなければ、プロセッサ・ユニットは、削除できる保存済データを選択し、保存済データの削除を実行し、データ項目の保存を実行し、保存済データの削除及びデータ項目の保存をトラッカに報告するメッセージを生成することができる。装置は、トラッカにメッセージを送信する送信機をさらに備えることができる。
あるいは、十分な保存容量を利用可能でなければ、プロセッサ・ユニットは、削除できる保存済データを選択し、保存済データの削除許可を要求するトラッカへのメッセージを生成することができる。装置は、トラッカにメッセージを送信する送信機と、トラッカからメッセージを受信する受信機と、をさらに備えることができる。
トラッカの応答が、許可を与えるものであれば、プロセッサ・ユニットは、保存済データの削除を実行し、データ項目の保存を実行し、保存済データの削除及びデータ項目の保存をトラッカに報告するメッセージを生成することができる。トラッカからの応答が許可を与えるものでなければ、プロセッサ・ユニットは、削除できる代わりの保存済データを、応答が特定するかを判定する。トラッカからの応答が、代わりの保存済データを特定していれば、プロセッサ・ユニットは、代わりの保存済データの削除を実行し、データ項目の保存を実行し、代わりの保存済データの削除及びデータ項目の保存をトラッカに報告するメッセージを生成することができる。トラッカからの応答が、代わりの保存済データを特定していなければ、プロセッサ・ユニットは、削除できる代わりの保存済データを選択し、代わりの保存済データの削除許可を要求するトラッカへのメッセージを生成することができる。
本発明の第11の態様によれば、ピア・ツー・ピア・ネットワークにおけるトラッカとして動作する様に構成された装置が提供される。本装置は、ピアからメッセージを受信する受信機と、ピアにメッセージを送信する送信機と、データ・サーバにメッセージを送信する送信機と、ピアが保存しているデータのレコードを維持するメモリ・ユニットと、プロセッサ・ユニットと、を備えており、プロセッサ・ユニットは、ピアからある保存済データの削除の許可要求を受信すると、保存済データを削除できるかを判定するために、保存しているデータのレコードを使用し、選択データの削除の許可を与えるか否かを示す、要求ピアへのメッセージを生成する。
保存済データを削除できないと判定すれば、プロセッサ・ユニットは、削除できる代わりの保存済データを特定するために、保存しているデータのレコードを使用することができ、保存済データの削除許可は与えられないこと、かつ、代わりの保存済データを特定する、要求ピアへのメッセージを生成することができる。
データはビデオを含むことができ、ピアはビデオ・オン・デマンド・システムにおけるクライアントを含むことができる。
コンテンツが、ヘッド・エンドからピアによりプルされるP2PのVoDシステム例を示す図。 コンテンツが、ヘッド・エンドからピアにプッシュされるP2PのVoDシステム例を示す図。 本発明の一実施形態によるデータ保存制御の方法例を示すフロー図。 本発明の一実施形態によるアクティブ・トラッカによるコンテンツ保存制御の簡略化した信号フロー例を示す図。 本発明の一実施形態によるアクティブ・トラッカが実行する処理例を示すフロー図。 本発明の一実施形態によるコンテンツ保存制御を行うVoDクライアントの簡略化した信号フロー例を示す図。 本発明の一実施形態によるVoDクライアントにより実行される処理例を示すフロー図。 本発明の一実施形態によるアクティブ・トラッカと協働するVoDクライアントの簡略化した信号フロー例を示す図。 本発明の一実施形態によるアクティブ・トラッカと協働するVoDクライアントが実行する処理例を示すフロー図。 本発明の一実施形態によるVoDシステム例を概略的に示す図。
既存ピア・ツー・ピア技術の問題点は、集中システムにより選択されたピアへの特定データ項目の保存が保証されないことであると認識される。上記のビデオ・オン・デマンド・システムに関して、トラッカ機能は、どのピアがどのデータ項目を保持しているかを単に追跡するのみである。例えば、選択ピアの何れかが、さらなるデータ保存には、空き容量が不十分な場合がある。これは、データ保存に成功したピア数が、P2Pネットワークの適切なサービスには不十分である状況に繋がり得る。この問題を解決するために、データ保存制御の導入を提案し、運用会社のポリシーの要求により、十分な数のピアがデータを保存することを保証する。
ピアにおけるデータ保存を制御し得る方法を以下に説明する。本方法は、データ項目の保存に必要なピアの最小数を事前に規定するステップと、データ項目を複数のピアに送信するステップと、データが送信され、データ項目の保存に利用可能な保存容量を十分に有するピア数を判定するステップと、を含む。この数が事前に規定した最小数より小さいと判定されれば、少なくとも事前に規定したピアの最小数で、データ項目の保存に利用できる十分な保存容量を確保するために、以前に保存したデータが削除される。
図3はデータ保存制御の方法例を示すフロー図である。実行するステップは以下の通りである。
C1.データ配信サービス運用会社に属する集中システムは、配信すべきデータ項目の保存に必要なピアの最小数を判定するためのロジック又はポリシーを含んでいる。
C2.データ項目は、データ配信サービスのデータ・サーバから、複数のピアに送信される。このピア数は、少なくとも事前に規定したピアの最小数でなければならない。
C3.そのデータを送信したピアであって、データ項目の保存に利用できる十分な保存容量を有するピアの数を判定する。
C4.この数が事前に規定した最小数未満であるかが判定される。
C5.事前に規定した最小数未満ではない、つまり、ピア数が最小数以上であると判定されれば、さらなる動作を行わない。
C6.事前に規定した最小数未満であると判定されれば、少なくとも事前に規定した最小数のピアでデータ項目を保存するために利用できる十分な保存容量を確保するために、以前に保存したデータが削除される。
このデータ保存制御方法は、複数の方法で達成できる。例えば、1つの可能な解決策は、一旦、1つ以上のデータ配信サーバからデータを受信したとピアが報告した場合、データ保存をピアに明確に指令するための、アクティブ・トラッカの導入を含む。アクティブ・トラッカは、データ配信システムの運用会社が設定する保存要求の実施に責任を負う。
アクティブ・トラッカを使用する場合、ピア・ツー・ピア・データ配信システムの運用会社は、システムに見出さねばならないデータを特定するポリシー・セットを実施することができよう。例えばビデオ・オン・デマンド・システムで、これらポリシーは、10,000の映画がシステムのエンド・ユーザに常に利用可能でなければならない、最近の3週間に送信されたTVコンテンツがエンド・ユーザに利用可能でなければならない、といったことを特定できる。さらに、VoDシステムの運用会社は、P2Pネットワークの他のVoDクライアントにコンテンツを提供するのに十分な数のソース数が存在することを確実にするために、最小数のVoDクライアントがコンテンツを保存(例えば、所望の複製係数)することを要求するであろう。よって、アクティブ・トラッカが受信する、データ項目の保存を報告するピアからのメッセージ数がこの要求条件を満たさない場合、アクティブ・トラッカは、十分なメモリを空きにするために、他のコンテンツを削除することを命令し、あるVoDクライアントにコンテンツの保存を“強いる”であろう。各VoDクライアントが保存しているコンテンツに関するアクティブ・トラッカの知見を、削除するコンテンツの適切な選択に使用し、対応するVoDクライアントにそれを命令するアクティブ・トラッカによりこれを達成することができる。ヘッド・エンドのVoDサーバから再送信する場合、これらVoDクライアントは、十分なコンテンツを削除し、新たなコンテンツを保存するであろう。
図4はVoDシステムにおけるアクティブ・トラッカによるコンテンツ保存制御の簡略化した信号フロー例を示している。実行するステップは以下の通りである。
D1.VoDクライアント1は、マルチキャストのプッシュ/プル・イベントによりヘッド・エンドのVoDサーバ2からコンテンツを受信する。VoDサーバ2は、映画の様な事前に記録されたコンテンツを配信することや、ライブ・スポーツ・イベントの様なライブ・コンテンツをストリーミングすることができる。受信コンテンツは、VoDクライアント1に保存される。
D2.VoDクライアント1は、受信して保存したコンテンツを特定するための報告をアクティブ・トラッカ3に送信する。アクティブ・トラッカ3は、VoDクライアントから受信する報告を使用して、VoDクライアントに配信され保存されているコンテンツの完全な絵を描く。この情報は、総てのVoDクライアントのコンテンツを管理するために使用される。
D3.報告数が、サービス運用会社が規定する要求数未満であれば、アクティブ・トラッカ3は、この問題の修正に必要なあらゆるアクションを取り、VoDクライアントにコンテンツを保存するための別の試みが行われることを保証するであろう。例えば、これらクライアントにコンテンツを保存する別の試行を行う前に、スペースを空けるために、あるコンテンツを削除することを、アクティブ・トラッカ3は、複数のVoDクライアントに命令することができる。オプションとして、アクティブ・トラッカ3は、各VoDクライアントに保存されるコンテンツのさらなる管理法を決定することができる。例えば、アクティブ・トラッカは、クライアントにコンテンツの削除、コンテンツ有効日時の設定と、その後のコンテンツの削除若しくはコンテンツの別のクライアントへの移動を行わせるための命令を送信することができる。
D4.VoDクライアント1は、その後、アクティブ・トラッカ3からのあらゆる指令の受信を承認する。加えて、クライアントは、これら命令の動作結果をアクティブ・トラッカ3に報告することができる。
図5は、VoDシステムのアクティブ・トラッカが実行する処理例を示すフロー図である。実行するステップは以下の通りである。
E1.アクティブ・トラッカ3は、ヘッド・エンドのVoDサーバ2が配信するコンテンツ項目に関係する複数の報告を受信する。
E2.一旦、ヘッド・エンドのVoDサーバ2がコンテンツ配信を完了すると、アクティブ・トラッカ3は、VoDクライアント1から受信した保存成功報告の数が、VoDサービス運用会社により設定された要求条件(つまり、最小数/複製係数)を満たすか否かを判定する。
E3.アクティブ・トラッカ3が、十分な数の保存成功報告を受信したと判定すれば、アクティブ・トラッカ3はさらなる動作を行わない。
E4.アクティブ・トラッカ3が、受信した保存成功報告の数が不十分であると判定すれば、P2Pネットワークを形成するクライアントが保存するコンテンツに関するアクティブ・トラッカの知見を使用し、アクティブ・トラッカ3は、十分な保存容量を可能にするために、VoDクライアントから削除できるコンテンツを特定する。
E5.アクティブ・トラッカ3は、その後、適切なVoDクライアントに選択したコンテンツを削除することを命令する。
E6.アクティブ・トラッカ3は、その後、命令した通り、コンテンツの削除が成功したことを確認する確認報告をVoDクライアントから受信する。
E7.アクティブ・トラッカ3は、その後、ヘッド・エンドのVoDサーバ2に、関連するVoDクライアントにコンテンツを再送する様に命令する。
E8.アクティブ・トラッカ3は、その後、命令されたVoDクライアントから、再送されたコンテンツの保存の保存成功報告を受信する。
既に概説した問題の代替解決策として、コンテンツ保存制御は、VoDクライアント自体により実行することができ、コンテンツが、P2Pネットワークに最初に配信されるときに、VoDクライアントは、ヘッド・エンドのVoDサーバ2から受信する保存指令をアクティブに実行する。図6は、コンテンツ保存制御を行うVoDクライアントの簡略化した信号フロー例を示している。実行するステップは以下の通りである。
F1.VoDクライアント1は、マルチキャストのプッシュ/プル・イベントによりヘッド・エンドのVoDサーバ2からコンテンツを受信する。ヘッド・エンドのVoDサーバ2は、コンテンツにメタデータも含め、このメタデータは、このコンテンツを保存すべきクライアントを表示する。受信メタデータは、コンテンツをクライアント・デバイスの一時的又は永久保存セグメントのいずれに保存すべきか、保存期間又はコンテンツの優先度等の、他の要求条件も表示することができる。
F2.VoDクライアント1は、このメタデータを評価し、コンテンツが、このクライアントによる保存を意図していることを判定する。例えば、各VoDクライアントは、VoDクライアントのグループのメンバであり、各グループは、特定コンテンツのセットを保存する責任を負う。その様に、グループの各VoDクライアントには、保存すべきコンテンツの判定に使用すべき規則セットが提供され、グループの要求条件を確認することができる。VoDクライアントは、その後、これらの規則に従い、このコンテンツを保存すべきかを判定するために、メタデータを評価することができる。グループのクライアントが、グループの要求条件に適合するコンテンツのみを保存する、このVoDクライアント・グループ構成は、P2Pネットワークを形成するクライアントに亘るコンテンツの複製制御機構を提供する。
F3.VoDクライアント1が、このコンテンツの保存を意図するが、十分なメモリを持たなければ、VoDクライアント1は、以前に保存したどのコンテンツを削除すべきかを決定する。この決定は、以前に保存したコンテンツのメタデータで提供される情報を考慮し、VoDクライアントにプログラムされているロジックを使用して行うことができる。VoDクライアント1は、その後、特定したコンテンツを削除し、新たに受信したコンテンツを保存する。
F4.VoDクライアント1は、その後、クライアントがコンテンツの一部を現在有することを示す報告を、クライアントがそのコンテンツを保存する期間の様な、任意の他の関連する情報と共に、トラッカ3に送信する。以前に保存したコンテンツを削除した場合、VoDクライアント1は、この詳細もトラッカに報告する。
あるいは、VoDクライアントは、十分なメモリ容量が無くなるまで、VoDサーバから受信する総てのコンテンツの保存を試みるかもしれず、十分なメモリが無くなった場合、VoDクライアントは、コンテンツの保存が必要かを判定し、必要であれば、削除できる以前に保存したコンテンツを判定する。
図7は、コンテンツ項目と共に受信する保存命令をアクティブに実行する場合に、VoDクライアントが実行する処理例を示すフロー図である。実行するステップは以下の通りである。
G1.VoDクライアント1は、幾つかのコンテンツ及び関連するメタデータを受信する。
G2.VoDクライアント1は、その後、メタデータがこのコンテンツを保存すべきことを指示するか否かを判定する。これは、VoDクライアントの規則セットによるメタデータの評価を含み得る。
G3.このコンテンツの保存を必要でないと判定すると、その後、VoDクライアント1は、任意の必要な処理を継続するが、コンテンツは保存しない。
G4.このコンテンツの保存を必要と判定すると、その後、VoDクライアント1は、利用可能な十分な保存容量を有するか否かを判定する。VoDクライアント1が十分な保存容量を有すれば、処理はステップG7に進む。
G5.VoDクライアント1が、利用可能な十分な保存容量を持たなければ、その後、十分な保存容量を空けるために、以前に保存したコンテンツのどれを削除すべきか特定する。
G6.VoDクライアント1は、その後、特定したコンテンツを削除する。
G7.十分な保存容量が利用可能であるか、十分な保存容量を利用可能にしたならば、VoDクライアント1は、コンテンツを保存し、保存成功をトラッカ3に報告する。VoDクライアント1は、任意の削除コンテンツの詳細もトラッカ3に報告する。
再度、この処理の代替法として、VoDクライアントは、十分なメモリ容量が無くなるまで、VoDサーバから受信する総てのコンテンツの保存を試み、十分なメモリが無くなった場合、VoDクライアントは、その後、コンテンツの保存が必要かを判定し、必要であれば、削除できる以前に保存したコンテンツを判定する。
コンテンツにメタデータを含めることは、特定のVoDクライアントが、受信するコンテンツを保存しなければならないか否かを、ヘッド・エンドのVoDサーバが指定することを可能にする。典型的なシナリオでは、コンテンツのメタデータに優先度フラグを含めることで実行できる。イネイブルされている優先度フラグを有するコンテンツをVoDクライアントが受信すると、VoDクライアントは、例えば、クライアントの現在の保存容量が一杯であれば、既存コンテンツを削除することにより、このコンテンツの保存に努力しなければならない。以前に保存したどのコンテンツを削除すべきかについての決定は、以前保存したコンテンツと共に受信したメタデータで提供される他の情報と組み合わせて、幾つかのプログラムされたロジックに基づきVoDクライアントが行う。
問題の第3の代替解決策として、VoDクライアントにおけるコンテンツの保存は、クライアントとアクティブ・トラッカ間の協働によりを制御され得る。図8は、コンテンツ保存の制御のために、トラッカと協働するVoDクライアントの簡略化した信号フロー例を示している。実行するステップは以下の通りである。
H1.VoDクライアント1は、マルチキャストのプッシュ/プル・イベントによりヘッド・エンドのVoDサーバ2からコンテンツを受信する。ヘッド・エンドのVoDサーバ2は、コンテンツにメタデータを含め、このメタデータは、コンテンツを保存すべきクライアントを表示する。受信メタデータは、コンテンツをクライアント・デバイスの一時的又は永久保存セグメントのいずれに保存すべきか、保存期間又はコンテンツの優先度等の、他の要求条件も表示することができる。
H2.VoDクライアント1は、コンテンツがクライアントでの保存を意図されているかを判定する。これは、VoDクライアントの規則セットによるメタデータの評価を含むであろう。
H3.VoDクライアント1は、コンテンツの受信をアクティブ・トラッカ3に報告する。
H4.VoDクライアント1はコンテンツの保存を要求されているが、そのために保存スペースを空ける必要があると判定すれば、クライアントのロジック又は規則により、削除する保存済みコンテンツの特定項目を選択できる。この場合、VoDクライアント1は、その後、選択したコンテンツの削除の許可を求めるメッセージをアクティブ・トラッカ3に送信する。
H5.運用会社の要求条件及び総ての他のクライアントに亘るVoDクライアント1が選択したコンテンツの利用可能性に応じて、アクティブ・トラッカ3は、選択されたコンテンツの削除をクライアントに許可するか否かを判定し、判定に応じてクライアントに命令する。アクティブ・トラッカ3がVoDクライアント1は選択コンテンツを削除すべきでないと判定すれば、アクティブ・トラッカ3は、クライアントが既に保存しているコンテンツに関するその知見を使用して、削除できるコンテンツを判定することができる。この場合、これらの命令は、VoDクライアント1にも返送される。
H6.クライアントは、アクティブ・トラッカ3の命令を確認する。アクティブ・トラッカ3が、クライアントにより選択されたコンテンツの削除許可要求を拒否し、削除できるコンテンツに関し何ら命令を発出しなければ、VoDクライアント1は、代替のコンテンツ項目を選択し、この代替のコンテンツの削除許可を求めるさらなるメッセージをアクティブ・トラッカ3に送信する。この処理は、クライアントが十分なコンテンツの削除を許可されるまで継続し得る。
図9はアクティブ・トラッカと協働し、コンテンツ項目と共に受信する保存命令をアクティブに実行するときの、VoDクライアントが実行する処理例を示すフロー図である。実行するステップは以下の通りである。
I1.VoDクライアント1は、幾つかのコンテンツ及び関連するメタデータを受信する。
I2.VoDクライアント1は、その後、メタデータを評価し、メタデータがこのコンテンツを保存すべきことを表示しているか否かを判定する。これは、VoDクライアントの規則セットによるメタデータの評価を含み得る。
I3.このコンテンツの保存が必要でないと判定すれば、その後、VoDクライアント1は、任意のコンテンツに必要な処理を継続するが、コンテンツは保存しない。
I4.このコンテンツの保存が必要であると判定すれば、その後、VoDクライアント1は、利用可能な十分な保存容量を有するか否かを判定する。十分な保存容量が利用可能であれば、処理はステップI11に進む。
I5.VoDクライアント1が利用可能な十分な保存容量を持たなければ、その後、VoDクライアント1は、十分な保存容量を空けるために、以前に保存したどのコンテンツを特定する。
I6.VoDクライアント1は、その後、特定したコンテンツの削除の許可を求めるメッセージをアクティブ・トラッカ3に送信する。
I7.VoDクライアント1は、その後、VoDクライアントが特定したコンテンツを削除できるか否かを示す命令をアクティブ・トラッカ3から受信する。アクティブ・トラッカ3が、VoDクライアント1に特定したコンテンツの削除の許可を授与すれば、処理はステップI10に進む。
I8.アクティブ・トラッカ3が、VoDクライアント1に特定したコンテンツの削除の許可を授与しなければ、VoDクライアント1は、アクティブ・トラッカ3からの、削除する代わりのコンテンツを特定する命令があるかを特定する。
I9.アクティブ・トラッカ3からの命令が、代わりに削除するコンテンツを特定しなければ、VoDクライアント1は、代わりのコンテンツを特定し、このコンテンツの削除の許可をアクティブ・トラッカ3に再度求める。処理はその後ステップI7に戻る。
I10.アクティブ・トラッカ3が、VoDクライアント1が特定したコンテンツの削除の許可を授与するか、アクティブ・トラッカ3の命令が、代わりに削除するコンテンツを特定していれば、VoDクライアント1は、特定したコンテンツを削除する。
I11.十分な保存容量が利用可能であるか、十分な保存容量を利用可能にしていれば、VoDクライアント1はコンテンツを保存し、保存成功をトラッカ3に報告する。
この処理の代わりに、VoDクライアントは、十分なメモリ容量が無くなるまで、VoDサーバから受信する総てのコンテンツの保存を試み、十分なメモリが無くなった場合、VoDクライアントは、コンテンツ保存の必要性を判定するであろう。コンテンツの保存が必要であれば、VoDクライアントは、その後、トラッカがVoDクライアントに削除を許可する可能性のある保存済みコンテンツを判定する。
さらなる代替法として、提供されるメタデータは、保存が必要なことの簡単な指示ではなく、保存優先度を指示する。この場合、VoDクライアントにプログラムされるロジックは、このコンテンツの優先度を判定して、より低い優先度のコンテンツを削除することによりこのコンテンツの保存を必要とするかを判定する。さらに、メタデータは、それぞれが、保存期間又は有効日時に関連すする複数の優先度を含むことができ、コンテンツ項目の優先度は、例えばコンテンツの年数に応じて変化し得る。
上記方法は、データ配信サービスの運用会社に、クライアントが形成するP2Pネットワークでのデータ配信を制御し、それにより提供するP2P配信機構及び利点を使用する効果的なサービスを提供する。これらの方法は、データが、運用会社の要求条件及びサービスのユーザによるデータ要求の両方に十分に適合する様に利用可能であり、データ保存を複数クライアントに亘り制御できる様な柔軟性をも提供することを保証する。
図10は、上記方法を実行することができるデータ配信システム例を概略的に示している。本システムは、複数のピア/クライアント1と、1つ以上のデータ・サーバ2と、1つ以上のトラッカ3と、を備えている。
ピア1は、上記方法の実行に適している。ピア1は、コンピュータのハードウェア及びソフトウェアの組み合わせとして実行することができる。ピア1は、データを保存するメモリ・ユニット4と、1つ以上のデータ・サーバから新しいデータを受信し、トラッカからメッセージを受信する受信機5と、トラッカにメッセージを送信する送信機6と、プロセッサ・ユニット7と、を備えている。データ・サーバから受信するデータは、メタデータも含むことができる。プロセッサ・ユニット7は、上述した解決策の幾つか又は総ての実行に適している。
プロセッサ・ユニット7は、新たなデータの保存に十分なメモリが利用可能であるかを判定し、十分なメモリが利用可能であれば、新たなデータの保存を実行し、新たなデータの保存が成功したことをトラッカ3に報告するメッセージを生成し得る。十分なメモリが利用可能でない場合、トラッカの命令を含むメッセージを受信すると、プロセッサ・ユニット7は、トラッカ3の命令に従い、保存済データの削除を実行し、保存済データの削除をトラッカ3に報告するメッセージを生成し得る。
あるいは、プロセッサ・ユニット7は、任意の受信データに含まれる任意のメタデータを評価し、このデータのピア1での保存が意図されているかを判定することができる。新たなデータの保存が意図されていれば、その後、プロセッサ・ユニット7は、新たなデータを保存するために、十分なメモリを利用可能であるかを判定することができる。十分なメモリを利用可能であれば、プロセッサ・ユニット7は、新たなデータの保存を実行し、新たなデータの保存をトラッカ3に報告するメッセージを生成することができる。
十分なメモリを利用可能でなければ、プロセッサ・ユニット7は、削除できる保存済データを選択し、選択したデータの削除を実行し、新たなデータの保存を実行し、新たなデータの保存をトラッカ3に報告するメッセージを生成することができる。あるいは、十分なメモリを利用可能でなければ、プロセッサ・ユニット7は、削除できる保存済データを選択し、選択したデータの削除の許可を求めるトラッカ3へのメッセージを生成することができる。
トラッカ3の応答を受信し、トラッカ3の応答が許可を与えるものであれば、プロセッサ・ユニット7は、選択したデータの削除を実行し、新たなデータの保存を実行し、新たなデータの保存をトラッカ3に報告するメッセージを生成することができる。トラッカ3の応答が許可を与えるものでなければ、プロセッサ・ユニット7は、代わりに削除できる保存済データを特定しているかを判定することができる。
トラッカ3の応答が、代わりの保存済データを特定していれば、プロセッサ・ユニット7は、代わりの保存済データの削除を実行し、新たなデータの保存を実行し、新たなデータの保存をトラッカ3に報告するメッセージを生成することができる。トラッカ3の応答が、代わりの保存済データを特定していなければ、プロセッサ・ユニット7は、代わりに削除できる保存済データを選択し、代わりの保存済データの削除の許可を求めるトラッカ3へのメッセージを生成することができる。
データ・サーバ2は、上記方法の実行に適している。データ・サーバ2は、コンピュータのハードウェア及びソフトウェアの組み合わせとして実行することができる。データ・サーバ2は、データを保存するメモリ・ユニット8と、メタデータを含むデータを1つ以上のピアに送信する送信機9と、を備えている。データ・サーバ2は、データに含めるメタデータを生成するプロセッサ・ユニット10を含むことができ、メタデータは、ピアがデータ保存の意図を判定するために、ピアにより評価され得る。データ・サーバ2は、トラッカ3からの命令を受信する受信機11も含むことができる。
トラッカ3は、上記方法の実行に適している。トラッカ3は、コンピュータのハードウェア及びソフトウェアの組み合わせとして実行することができる。トラッカ3は、ピアからメッセージを受信する受信機12と、ピアにメッセージを送信し、データ・サーバにメッセージを送信する送信機13と、ピアが保存する総てのコンテンツのレコードを維持するメモリ・ユニット14と、プロセッサ・ユニット15と、を備えている。プロセッサ・ユニット15は、上述した解決策の幾つか又は総ての実行に適している。
プロセッサ・ユニット15は、ピア1から新たなデータの保存成功を報告する最小数のメッセージを、トラッカが受信したかを判定することができ、受信していなければ、保存の成功を報告しないピアから削除できる保存済データを選択し、選択したデータの削除を関係するピアに命令するメッセージを生成し、選択したデータの削除の確認を受信すると、1つ以上のデータ・サーバに、関係するピアへの新たなデータの再送信を命令するメッセージを生成することができる。
あるいは、プロセッサ・ユニット15は、ピア1から、選択された幾つかのデータの削除許可の要求を受信すると、保存データのレコードを使用して、選択されたデータを削除できるかを判定し、選択されたデータの削除許可を与えるか否かを示す、要求ピアへのメッセージを生成することができる。選択されたデータは削除できないと判定すれば、プロセッサ・ユニット15は、保存データのレコードを使用して削除できる代わりのデータを特定し、選択されたデータの削除許可を拒否することを示し、代わりのデータを特定する、要求ピアへのメッセージを生成することができる。
本発明の範囲を逸脱することなく上記実施形態には種々の修正を行うことができることは当業者により理解されよう。例えば、本発明をビデオ・オン・デマンド・サービスに関して説明したが、あらゆるデータの配信に等しく本発明を使用することができよう。加えて上述した通り、トラッカ機能はヘッド・エンド・システムに集中させることも、分離して配置することも、DHTの様な分散システムをベースにすることもできる。さらに、単一トラッカの使用ではなく、複数のトラッカを使用して論理的に単一であるトラッカを形成し、トラッカ機能をネットワークに比例する規模にすることを可能にする様に、トラッカ機能を実装することができる。

Claims (7)

  1. ピア・ツー・ピア・ネットワークのピアが他のピアにデータを提供することを可能にするために、ピアにデータを配信する方法であって、
    つ以上のデータ・サーバから、複数のデータ受信ピアにデータ項目を送信するステップと、
    前記データ項目を保存するために利用可能な十分な保存容量を有するデータ受信ピアの数が、事前に規定した最小数未満であるかを判定するステップと、
    前記最小数未満であれば、十分な保存容量を利用可能にするために、保存済データを削除するステップと、
    を含み、
    前記データ項目を保存するために利用可能な十分な保存容量を有するデータ受信ピアの数が、事前に規定した最小数未満であるかを判定する前記ステップは、
    各データ受信ピアで、十分な保存容量を利用可能であれば、前記データ項目を保存して、前記データ項目の保存をトラッカに報告するステップと、
    前記トラッカにおいて、前記ピアが保存しているデータのレコードを維持し、前記データ項目が、前記事前に規定された最小数のピアで保存されているかを判定するステップと、
    を含み、
    十分な保存容量を利用可能にするために、保存済データを削除する前記ステップは、
    前記トラッカにおいて、前記データ項目を保存していないデータ受信ピアを特定し、該データ受信ピアから削除できる保存済データを特定するために、前記ピアが保存しているデータの前記レコードを使用し、前記特定した保存済データを削除するために、前記データ項目を保存していないデータ受信ピアに命令を送信するステップと、
    前記データ項目を保存していないデータ受信ピアにおいて、前記トラッカからの命令を受信すると、前記特定した保存済データを削除するステップと、
    を含むことを特徴とする方法。
  2. 前記データ項目を保存していないデータ受信ピアにおいて、前記保存済データの削除の後に、前記保存済データの削除を前記トラッカに報告するステップと、
    前記トラッカにおいて、前記保存済データを削除したことの報告を受信し、前記ピアが保存しているデータの前記レコードを更新し、前記データ項目を保存していないデータ受信ピアに前記データ項目を再送信させる命令を前記データ・サーバに送信するステップと、
    前記データ・サーバにおいて、前記データ項目を保存していないデータ受信ピアに前記データ項目を再送信するステップと、
    をさらに含むことを特徴とする請求項に記載の方法。
  3. ピア・ツー・ピア・ネットワークのトラッカを動作させる方法であって、
    ピアが保存したデータ項目の報告を前記ピアから受信するステップと、
    前記ピアが保存しているデータのレコードを維持するステップと、
    前記データ項目が、事前に規定した最小数のピアで保存されているかを判定するステップと、
    保存されていなければ、前記データ項目を保存していないピアを特定し、前記データ項目を保存していないピアから削除できる保存済データを特定し、前記特定した保存済データの削除を、前記データ項目を保存していない1つ以上のピアに命令するステップと、
    を含むことを特徴とする方法。
  4. 前記保存済データの削除の確認を受信すると、前記ピアが保存しているデータの前記レコードを更新し、前記保存済データの削除を行ったピアへの前記データ項目の再送信を、1つ以上のデータ配信サーバに命令するステップをさらに含む、
    ことを特徴とする請求項に記載の方法。
  5. 前記データ項目はビデオであり、前記ピアは、ビデオ・オン・デマンド・システムにおけるクライアントである、
    ことを特徴とする請求項1から4のいずれか1項に記載の方法。
  6. ピア・ツー・ピア・ネットワークにおけるトラッカとして動作する様に構成された装置であって、
    ピアからメッセージを受信する受信機と、
    前記ピアにメッセージを送信する送信機と、
    データ・サーバにメッセージを送信する送信機と、
    前記ピアが保存しているデータのレコードを維持するメモリ・ユニットと、
    プロセッサ・ユニットと、
    を備えており、
    前記プロセッサ・ユニットは、データ項目の保存を報告するピアから、事前に規定した最小数のメッセージを、前記トラッカが受信したかを判定し、受信していなければ、削除できる保存済データを選択し、前記データ項目を保存していない1つ以上のピアに、前記保存済データの削除を命令するメッセージを生成し、前記保存済データの削除確認を受信すると、前記保存済データの削除が確認されたピアへの前記データ項目の再送信を1つ以上のデータ・サーバに命令するメッセージを生成する、
    ことを特徴とする装置。
  7. 前記データ項目は、ビデオであり、前記ピアは、ビデオ・オン・デマンド・システムにおけるクライアントである、
    ことを特徴とする請求項に記載の装置。
JP2011549442A 2009-02-17 2009-02-17 データ配信方法及び装置 Active JP5269208B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2009/051860 WO2010094322A1 (en) 2009-02-17 2009-02-17 Method and apparatus for distributing data in a peer-to- peer network

Publications (2)

Publication Number Publication Date
JP2012518299A JP2012518299A (ja) 2012-08-09
JP5269208B2 true JP5269208B2 (ja) 2013-08-21

Family

ID=40524879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011549442A Active JP5269208B2 (ja) 2009-02-17 2009-02-17 データ配信方法及び装置

Country Status (4)

Country Link
US (1) US20120036105A1 (ja)
EP (1) EP2399390A1 (ja)
JP (1) JP5269208B2 (ja)
WO (1) WO2010094322A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2387177A1 (en) * 2010-05-11 2011-11-16 Thomson Licensing Content distribution in a P2P infrastructure by means of multicast connections
US10108500B2 (en) 2010-11-30 2018-10-23 Red Hat, Inc. Replicating a group of data objects within a storage network
US9311374B2 (en) * 2010-11-30 2016-04-12 Red Hat, Inc. Replicating data objects within a storage network based on resource attributes
US9210451B2 (en) * 2011-05-19 2015-12-08 The Chinese University Of Hong Kong Replication decision in P2P VoD systems
US9699592B2 (en) 2011-05-20 2017-07-04 Telefonaktiebolaget Lm Ericsson (Publ) Methods and devices for content distribution
US9766906B2 (en) 2011-12-29 2017-09-19 International Business Machines Corporation Efficient sharing of artifacts between collaboration applications
JP5743333B2 (ja) * 2012-08-02 2015-07-01 京セラドキュメントソリューションズ株式会社 画像形成システム及び画像形成システム用プログラム
US8923880B2 (en) 2012-09-28 2014-12-30 Intel Corporation Selective joinder of user equipment with wireless cell
WO2014107147A1 (en) * 2013-01-03 2014-07-10 Hewlett-Packard Development Company, L.P. Identifying an analysis reporting message in network traffic
US9160515B2 (en) 2013-04-04 2015-10-13 Intel IP Corporation User equipment and methods for handover enhancement using scaled time-to-trigger and time-of-stay
US20180062935A1 (en) * 2016-08-25 2018-03-01 Futurewei Technologies, Inc. Hybrid approach with classification for name resolution and producer selection in icn
CN107846429B (zh) * 2016-09-18 2021-01-29 华为技术有限公司 一种文件备份方法、装置和系统
CN111614978B (zh) 2018-08-24 2022-04-29 创新先进技术有限公司 一种多媒体物料的处理方法、装置及多媒体播放设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020055972A1 (en) * 2000-05-08 2002-05-09 Weinman Joseph Bernard Dynamic content distribution and data continuity architecture
US20020131428A1 (en) * 2001-03-13 2002-09-19 Vivian Pecus Large edge node for simultaneous video on demand and live streaming of satellite delivered content
US20040187159A1 (en) * 2003-03-19 2004-09-23 Concurrent Computer Corporation, A Delaware Corporation Multi-tiered content management system
US7986686B2 (en) * 2005-11-25 2011-07-26 Cisco Technology, Inc. Techniques for distributing network provider digital content to customer premises nodes
US8707375B2 (en) * 2006-04-05 2014-04-22 At&T Intellectual Property I, L.P. Peer-to-peer video on demand techniques
US20080059631A1 (en) * 2006-07-07 2008-03-06 Voddler, Inc. Push-Pull Based Content Delivery System
JP2008035337A (ja) * 2006-07-31 2008-02-14 Brother Ind Ltd ノード装置、配信装置、管理装置、情報処理プログラム、コンテンツ配信方法及びコンテンツ配信システム
US8260881B1 (en) * 2006-09-06 2012-09-04 Amazon Technologies, Inc. Remote download of content
US7849139B2 (en) * 2007-05-02 2010-12-07 Ouri Wolfson Adaptive search in mobile peer-to-peer databases
US8078729B2 (en) * 2007-08-21 2011-12-13 Ntt Docomo, Inc. Media streaming with online caching and peer-to-peer forwarding

Also Published As

Publication number Publication date
US20120036105A1 (en) 2012-02-09
JP2012518299A (ja) 2012-08-09
EP2399390A1 (en) 2011-12-28
WO2010094322A1 (en) 2010-08-26

Similar Documents

Publication Publication Date Title
JP5269208B2 (ja) データ配信方法及び装置
US10085063B2 (en) Peer-to-peer video on demand techniques
US8726327B2 (en) System and method for peer-to-peer live streaming
JP5580302B2 (ja) ピアツーピアネットワークのための放送シーディング
US9301000B2 (en) Method for providing a content-sharing service, and a device therefor
EP2346250B1 (en) Method and system for downloading internet TV media content using a peer-to-peer exchange area at the server side and a peer-to-peer exchange area at the terminal side
KR102472155B1 (ko) 피어 투 피어(Peer to peer, P2P) 네트워크에서 스트리밍 콘텐츠를 방송하는 방법
US9118814B2 (en) Set-top box peer-assisted video-on-demand
US9106943B2 (en) Sharing of subscriber-recorded digital video recorder content
EP1635574A2 (en) Method for redirection of streaming content
WO2015050651A1 (en) Downloading media objects
WO2015094955A1 (en) System and method of adaptive bit-rate streaming
US9083934B2 (en) Systems and methods for controlling media recording devices via a media recorder proxy device
US20080240670A1 (en) Picture recording system and picture recording and reproducing method
US20120023529A1 (en) Virtual content store in interactive services architecture
US20100293172A1 (en) Method and system for storing and distributing electronic content
US20070169142A1 (en) Using a presence status in a media-on-demand system
US20230096176A1 (en) Methods and systems for separate delivery of segments of content items
KR101383910B1 (ko) 비연결형 스트리밍 서비스에서의 세션 유지 방법 및 그 장치
Ketmaneechairat et al. Smart buffer management for different start video broadcasting
JP2010074709A (ja) 放送番組配信システムと放送番組配信サーバ及びユーザ端末装置
WO2011118498A1 (ja) コンテンツ配信システム、コンテンツ配信方法及びコンテンツ配信プログラム
JP2016046598A (ja) 通信装置、通信方法、及び、プログラム
KR20100048491A (ko) 이동 에이전트를 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
JP2008252199A (ja) コンテンツ配信方法及びコンテンツ受信端末

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130401

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130507

R150 Certificate of patent or registration of utility model

Ref document number: 5269208

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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