JP4821499B2 - Content distributed storage system, frame acquisition method, node device, etc. - Google Patents

Content distributed storage system, frame acquisition method, node device, etc. Download PDF

Info

Publication number
JP4821499B2
JP4821499B2 JP2006224485A JP2006224485A JP4821499B2 JP 4821499 B2 JP4821499 B2 JP 4821499B2 JP 2006224485 A JP2006224485 A JP 2006224485A JP 2006224485 A JP2006224485 A JP 2006224485A JP 4821499 B2 JP4821499 B2 JP 4821499B2
Authority
JP
Japan
Prior art keywords
information
content data
content
key frame
divided
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.)
Expired - Fee Related
Application number
JP2006224485A
Other languages
Japanese (ja)
Other versions
JP2008048350A (en
Inventor
宏一 林
建太郎 牛山
英輝 松尾
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2006224485A priority Critical patent/JP4821499B2/en
Priority to PCT/JP2007/064687 priority patent/WO2008023531A1/en
Publication of JP2008048350A publication Critical patent/JP2008048350A/en
Priority to US12/292,144 priority patent/US8738685B2/en
Application granted granted Critical
Publication of JP4821499B2 publication Critical patent/JP4821499B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムの技術分野に関する。   The present invention relates to a technical field of a peer-to-peer (P2P) type communication system including a plurality of node devices that can communicate with each other via a network.

この種のピアツーピア型の通信システムにおいて、コンテンツデータを複数のノード装置に分散配置(分散保存)させておくコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性を高められている。このように分散保存されたコンテンツデータの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。当該DHTは、各ノード装置に記憶されており、当該DHTには、各種メッセージの転送先となるべき複数のノード装置を示すノード情報(例えば、IPアドレス及びポート番号を含む)が登録されている。   In this kind of peer-to-peer communication system, there is known a distributed content storage system that distributes content data to multiple node devices (distributed storage), thereby improving fault tolerance and access dispersibility. It has been. The location of the content data distributed and stored in this way can be efficiently searched using a distributed hash table (hereinafter referred to as DHT (Distributed Hash Table)) as disclosed in Patent Document 1, for example. The DHT is stored in each node device, and node information (for example, including IP addresses and port numbers) indicating a plurality of node devices to which various messages are to be transferred is registered in the DHT. .

そして、コンテンツ分散保存システムに参加しているノード装置は、所望のコンテンツデータの取得を望む場合、当該コンテンツデータの所在を検索(発見)するためのメッセージ(クエリ)を他のノード装置に送出することにより、当該メッセージは、上記DHTにしたがって、複数の中継のノード装置により当該コンテンツデータの所在の管理元のノード装置に向かって転送され、最終的に当該メッセージが辿り着く上記管理元のノード装置からノード情報を取得することになる。これにより、当該メッセージを送出したノード装置は、上記検索に係るコンテンツデータを保存しているノード装置に対して、当該コンテンツデータを要求し、当該コンテンツデータの提供を受けることができる。
特開2006−197400号公報
When a node device participating in the distributed content storage system desires to acquire desired content data, the node device transmits a message (query) for searching (discovering) the location of the content data to other node devices. Thus, according to the DHT, the message is transferred to the managing node device where the content data is located by a plurality of relay node devices, and finally the message arrives at the managing node device. Node information is acquired from the node. Accordingly, the node device that has transmitted the message can request the content data from the node device that stores the content data related to the search, and can receive the content data.
JP 2006-197400 A

ところで、今後、一単位のコンテンツデータが、複数に分割され、その分割された分割コンテンツデータが複数のノード装置に跨って分散保存される場合が考えられる。しかしながら、分割されたコンテンツデータに対して早送り再生、巻き戻し再生、及びシーク再生等の特殊再生を行う場合、順次再生すべきフレーム画像データが含まれる分割コンテンツデータは複数のノード装置に跨る場合があるので、スムーズな特殊再生を実現することが困難になる可能性がある。   By the way, a case where one unit of content data is divided into a plurality of pieces and the divided divided content data is distributed and stored across a plurality of node devices in the future can be considered. However, when special playback such as fast-forward playback, rewind playback, and seek playback is performed on the divided content data, the divided content data including frame image data to be sequentially played may extend over a plurality of node devices. As a result, it may be difficult to achieve smooth special playback.

本発明は、以上の点等に鑑みてなされたものであり、一単位のコンテンツデータが、複数に分割され、その分割された分割コンテンツデータが複数のノード装置に跨って分散保存される場合であっても、特殊再生をスムーズに実行することが可能なコンテンツ分散保存システム、フレーム取得方法、及びノード装置等を提供することを課題とする。 The present invention has been made in view of the above points and the like, and is a case where one unit of content data is divided into a plurality of pieces, and the divided divided content data is distributed and stored across a plurality of node devices. even, and to provide a trick play to be able to run smoothly distributed storage system, frame acquisition process, and the node device or the like.

上記課題を解決するために、請求項1に記載の発明は、複数の画像フレームを含むコンテンツデータを複数に分割した分割コンテンツデータが、複数のノード装置に分散保存されたコンテンツ分散保存システムであって、各前記分割コンテンツデータには、固有の識別情報が割り当てられており、前記ノード装置は、前記識別情報に基づいて前記分割コンテンツデータを取得可能としたコンテンツ分散保存システムに含まれる前記ノード装置であって、前記分割コンテンツデータは、前記画像フレーム内で圧縮が完結しているキーフレームと、前記画像フレーム間の差分情報が圧縮された差分データとを含み、前記ノード装置は、少なくとも一つの前記分割コンテンツデータの前記識別情報と、前記分割コンテンツデータ中の前記キーフレームの前記分割コンテンツデータ内の先頭からの位置を示す情報を含むキーフレーム情報と、が記述されるコンテンツカタログ情報をあらかじめ記憶する記憶手段と、記コンテンツデータの特殊再生を示す指示を受け付ける指示受付手段と、前記指示に応じて再生すべき前記キーフレーム前記キーフレーム情報と、前キーフレームが含まれる前記分割コンテンツデータの前記識別情報と、を前記コンテンツカタログ情報から取得する情報取得手段と、前記取得された前記キーフレーム情報及び前記識別情報に対応する前記キーフレームを取得するフレーム取得手段と、を備えることを特徴とする。 In order to solve the above problems, the invention described in claim 1 is a content distribution storage system in which divided content data obtained by dividing content data including a plurality of image frames into a plurality of nodes is distributed and stored in a plurality of node devices. Te, said node to each of the divided content data is assigned a unique identifier, before Symbol node device included in the divided distributed storage system content data was obtainable on the basis of the identification information The divided content data includes a key frame that has been compressed within the image frame, and difference data in which difference information between the image frames is compressed. One of said identification information of said contents data segments, the key frame in the prior SL divided content data Instructions for accepting the key frame information including information indicating a position from the beginning of said divided content data, storage means for previously storing the content catalog information is described, an indication of special playback before Symbol content data a reception unit, and said key frame information of said key frame to be reproduced in accordance with the instruction, before Symbol information acquisition for acquiring said identification information of said divided content data including key frame, from the content catalog information means, characterized in that it comprises a frame acquisition means for acquiring the key frames corresponding to the acquired said key frame information and the identification information.

この発明によれば、上記ノード装置が、コンテンツデータの特殊再生を示す指示に応じて再生すべき前記キーフレームキーフレーム情報と、当該再生すべきキーフレームが含まれる分割コンテンツデータの識別情報と、をコンテンツカタログ情報から取得し、前記取得された前記キーフレーム情報及び前記識別情報に対応する前記キーフレームを取得するように構成したので、ンテンツデータが、複数に分割され、その分割された分割コンテンツデータが複数のノード装置に跨って分散保存される場合であっても、例えば早送り再生、巻き戻し再生、及びシーク再生等の特殊再生をスムーズに実行することができる。また、コンテンツカタログ情報は、コンテンツデータの再生以前に予め各ノード装置に配信されるようにしておけば、キーフレーム情報等を直ぐに取り出すことができ、分割されたコンテンツデータに対して、当該特殊再生をより効率良く実行することができる。 According to the present invention, the node device, content and key frame information of said key frame to be reproduced in accordance with the indication of special playback data, the identification information of the divided content data including the key frames should be the reproduction Gets the, from the content catalog information, since it is configured to acquire the key frames corresponding to the acquired said key frame information and the identification information, content data is divided into a plurality of the division Even when the divided content data is distributed and stored across a plurality of node devices, special playback such as fast-forward playback, rewind playback, and seek playback can be executed smoothly. In addition, if the content catalog information is distributed to each node device in advance before the reproduction of the content data, the key frame information and the like can be extracted immediately, and the special reproduction is performed on the divided content data. Can be executed more efficiently.

請求項2に記載の発明は、請求項1に記載のノード装置において、前記特殊再生を示す指示は、早送り再生、巻き戻し再生、及びシーク再生のうちの何れかを含む再生指示であることを特徴とする。 According to a second aspect of the present invention, in the node device according to the first aspect, the instruction indicating the special reproduction is a reproduction instruction including any one of fast-forward reproduction, rewind reproduction, and seek reproduction. Features.

請求項3に記載の発明は、請求項1又は2に記載のノード装置において、前記コンテンツカタログ情報、さらに前記分割コンテンツデータのデータサイズを示す情報が記述されており、前記キーフレーム情報には、さらに前記キーフレームのデータサイズを示す情報が含まれており、前記情報取得手段は、記分割コンテンツデータのデータサイズを示す情報と、前記キーフレーム情報とに基づいて、前記再生すべき前記キーフレームが含まれる分割コンテンツデータを特定することを特徴とする。 The invention according to claim 3, in the node device according to claim 1 or 2, in the content catalog information is described information indicating the data size of the divided content data to the al, the keyframe the information includes information further indicates the data size of the key frame, the information acquisition unit includes information indicating data size before Symbol divided content data, based on said key frame information, the reproduction and identifies the divided content data that contains should do the key frame.

この発明によれば、キーフレームのキーフレーム情報と、当該キーフレームが含まれる分割コンテンツデータの識別情報と、の対応関係を当該コンテンツカタログ情報中に規定しなくても再生すべきキーフレームが含まれる分割コンテンツデータを判別することができる。 According to the present invention, includes a key frame information of key frames, the identification information of the divided content data containing the keyframes, the keyframe relationship to be reproduced without defined in the content catalog information It is possible to determine divided content data.

請求項4に記載の発明は、請求項1又は2に記載のノード装置において、前記コンテンツカタログ情報は、前記分割コンテンツデータの前記識別情報と前記キーフレーム情報とは対応付けられていることを特徴とする。 According to a fourth aspect of the present invention, in the node device according to the first or second aspect, in the content catalog information , the identification information of the divided content data and the key frame information are associated with each other. Features.

この発明によれば、各キーフレームがどの分割コンテンツデータに含まれるかを、ノード装置が計算により判別する必要が無く、より迅速に特定することができる。 According to the present invention, it is not necessary for the node device to determine which divided content data each key frame is included in by calculation, and it can be identified more quickly.

請求項5に記載の発明は、請求項1又は2に記載のノード装置において、前記識別情報は、所定の規則に従って前記分割コンテンツデータに割り当てられ、前記コンテンツカタログ情報は、先頭の前記分割コンテンツデータの前記識別情報を有しており、前記情報取得手段は、前記先頭の分割コンテンツデータ以外の分割コンテンツデータの前記識別情報を、前記所定の規則にしたがって前記先頭の分割コンテンツデータの前記識別情報から算出することを特徴とする。 According to a fifth aspect of the present invention, in the node device according to the first or second aspect, the identification information is assigned to the divided content data according to a predetermined rule, and the content catalog information includes the first divided content data. wherein has the identification information, the information acquisition means, the identification information of the contents data segments other than the beginning of the divided content data, the identification information of the contents data segments of the head according to the predetermined rule of It is characterized by calculating from.

この発明によれば、全ての分割コンテンツデータの識別情報がコンテンツカタログ情報中に含まれなくとも良いので、コンテンツカタログ情報のデータ量を削減することができる。   According to the present invention, since the identification information of all the divided content data does not have to be included in the content catalog information, the data amount of the content catalog information can be reduced.

請求項6に記載のノード処理プログラムは、コンピュータを、請求項1乃至5の何れか一項に記載のノード装置として機能させることを特徴とする。   A node processing program according to a sixth aspect causes a computer to function as the node device according to any one of the first to fifth aspects.

請求項7に記載の発明は、複数の画像フレームを含むコンテンツデータを複数に分割した分割コンテンツデータが、複数のノード装置に分散保存されたコンテンツ分散保存システムであって、各前記分割コンテンツデータには、固有の識別情報が割り当てられており、前記ノード装置は、前記識別情報に基づいて前記分割コンテンツデータを取得可能としたコンテンツ分散保存システムにおけるフレーム取得方法であって、前記分割コンテンツデータは、前記画像フレーム内で圧縮が完結しているキーフレームと、前記画像フレーム間の差分情報が圧縮された差分データとを含み、前記ノード装置は、少なくとも一つの前記分割コンテンツデータの前記識別情報と、前記分割コンテンツデータ中の前記キーフレームの前記分割コンテンツデータ内の先頭からの位置を示す情報を含むキーフレーム情報と、が記述されるコンテンツカタログ情報をあらかじめ記憶する記憶手段を備え、前記フレーム取得方法は、前記ノード装置が、前記コンテンツデータの特殊再生を示す指示を受け付ける工程と、前記ノード装置が、前記指示に応じて再生すべき前記キーフレーム前記キーフレーム情報と、前記キーフレームが含まれる前記分割コンテンツデータの前記識別情報と、を前記コンテンツカタログ情報から取得する工程と、前記ノード装置が、前記取得された前記キーフレーム情報及び前記識別情報に対応する前記キーフレームを取得する工程と、を含むことを特徴とする。 The invention according to claim 7 is a content distributed storage system in which divided content data obtained by dividing content data including a plurality of image frames into a plurality of nodes is distributed and stored in a plurality of node devices. It is assigned a unique identifier, before Symbol node apparatus, a frame acquisition method in can and the content distributed storage system obtains the divided content data on the basis of the identification information, the divided content The data includes a key frame that is completely compressed in the image frame and difference data in which difference information between the image frames is compressed, and the node device identifies the at least one piece of divided content data. information and, the divided content data of the key frame in the previous Symbol divided content data And key frame information including information indicating a position from the beginning of the inner, comprising a storage unit for previously storing a content catalog information described is, the frame acquisition method, the node device, special playback before Symbol content data a step of receiving an indication of the node device, wherein said key frame information of said key frame to be reproduced in response to the instruction, and the identification information of the divided content data including said key frame, the a step of acquiring from the content catalog information, the node device, characterized in that it comprises a, a step of acquiring the key frames corresponding to the acquired said key frame information and the identification information.

請求項8に記載の発明は、複数の画像フレームを含むコンテンツデータを複数に分割した分割コンテンツデータが、複数のノード装置に分散保存されたコンテンツ分散保存システムであって、各前記分割コンテンツデータには、固有の識別情報が割り当てられており、前記ノード装置は、前記識別情報に基づいて前記分割コンテンツデータを取得可能としたコンテンツ分散保存システムであって、前記分割コンテンツデータは、前記画像フレーム内で圧縮が完結しているキーフレームと、前記画像フレーム間の差分情報が圧縮された差分データとを含み、前記ノード装置は、少なくとも一つの前記分割コンテンツデータの前記識別情報と、前記分割コンテンツデータ中の前記キーフレームの前記分割コンテンツデータ内の先頭からの位置を示す情報を含むキーフレーム情報と、が記述されるコンテンツカタログ情報をあらかじめ記憶する記憶手段と、記コンテンツデータの特殊再生を示す指示を受け付ける指示受付手段と、前記指示に応じて再生すべき前記キーフレーム前記キーフレーム情報と、前記キーフレームが含まれる前記分割コンテンツデータの前記識別情報と、を前記コンテンツカタログ情報から取得する情報取得手段と、前記取得された前記キーフレーム情報及び前記識別情報に対応する前記キーフレームを取得するフレーム取得手段と、を備えることを特徴とする。 According to an eighth aspect of the present invention, there is provided a distributed content storage system in which content data including a plurality of image frames is divided and stored in a plurality of node devices. is assigned a unique identifier, before Symbol node device, the divided content data a distributed storage system which enables acquires based on the identification information, the divided content data, the image frame includes a key frame compression is completed at the inner, and the difference data difference information is compressed between said image frame, said node device includes: the identification information of at least one of the divided content data, before Symbol divided shows the position from the beginning of said divided content data of the key frames in the content data Storage means for storing the key frame information, the content catalog information is written in advance containing information, an instruction receiving means for receiving an instruction indicating the special playback of the previous SL content data, said to be reproduced in accordance with the instruction and said key frame information of key frames, and information obtaining means for obtaining said identification information of said divided content data containing the key frame, from the content catalog information, the obtained said key frame information and the identification a frame acquisition means for acquiring the key frames corresponding to the information, characterized in that it comprises a.

本発明によれば、一単位のコンテンツデータが、複数に分割され、その分割された分割コンテンツデータが複数のノード装置に跨って分散保存される場合であっても、例えば早送り再生、巻き戻し再生、及びシーク再生等の特殊再生をスムーズに実行することができる。また、コンテンツカタログ情報は、コンテンツデータの再生以前に予め各ノード装置に配信されるようにしておけば、キーフレーム情報等を直ぐに取り出すことができ、分割されたコンテンツデータに対して、当該特殊再生をより効率良く実行することができる。   According to the present invention, even when one unit of content data is divided into a plurality of pieces and the divided divided content data is distributed and stored across a plurality of node devices, for example, fast-forward playback and rewind playback are performed. And special playback such as seek playback can be executed smoothly. In addition, if the content catalog information is distributed to each node device in advance before the reproduction of the content data, the key frame information and the like can be extracted immediately, and the special reproduction is performed on the divided content data. Can be executed more efficiently.

以下、本発明の最良の実施形態を図面に基づいて説明する。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, the best embodiment of the invention will be described with reference to the drawings.

1.コンテンツ分散保存システムの構成等
始めに、図1等を参照して、本発明の一実施形態に係るコンテンツ分散保存システム通信システムの概要構成等について説明する。
[ 1. Configuration of distributed content storage system ]
First, with reference to FIG. 1 and the like, a schematic configuration and the like of a content distributed storage system communication system according to an embodiment of the present invention will be described.

図1は、本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。   FIG. 1 is a diagram illustrating an example of a connection mode of each node device in the distributed content storage system according to the present embodiment.

図1の下部枠101内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4a,4b、DSL(Digital Subscriber Line)回線事業者(の装置)5a,5b、FTTH(Fiber To The Home)回線事業者(の装置)6、及び通信回線(例えば、電話回線や光ケーブル等)7等によって、インターネット等のネットワーク(現実世界の通信ネットワークであり)8が構築されている。なお、図1の例におけるネットワーク(通信ネットワーク)8には、データ(パケット)を転送するためのルータが、適宜挿入されているが図示を省略している。   As shown in the lower frame 101 of FIG. 1, IX (Internet eXchange) 3, ISP (Internet Service Provider) 4a, 4b, DSL (Digital Subscriber Line) line operators (devices) 5a, 5b, FTTH (Fiber To A network (which is a real-world communication network) 8 such as the Internet is constructed by a line provider (device) 6 and a communication line (for example, a telephone line or an optical cable) 7. A router for transferring data (packets) is appropriately inserted in the network (communication network) 8 in the example of FIG.

このようなネットワーク8には、複数のノード装置(以下、「ノード」という)Nn(n=1,2,3・・・)が接続されている。また、各ノードNnには、固有の製造番号およびIP(Internet Protocol)アドレスが割り当てられている。このような製造番号およびIPアドレスは、複数のノード間で重複しないものである。   A plurality of node devices (hereinafter referred to as “nodes”) Nn (n = 1, 2, 3,...) Are connected to such a network 8. Each node Nn is assigned a unique manufacturing number and an IP (Internet Protocol) address. Such serial numbers and IP addresses are not duplicated among a plurality of nodes.

そして、本実施形態に係るコンテンツ分散保存システムSは、これらのノードNnのうち、図1の上部枠100内に示すように、何れか複数のノードNnの参加により形成されるピアツーピア方式のネットワークシステムとなっている。なお、図1の上部枠100内に示すネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク9(論理的なネットワーク)である。   The content distributed storage system S according to the present embodiment is a peer-to-peer network system formed by participation of any of a plurality of nodes Nn, as shown in the upper frame 100 of FIG. It has become. A network 9 shown in the upper frame 100 of FIG. 1 is an overlay network 9 (logical network) that forms a virtual link formed using the existing network 8.

このようなコンテンツ分散保存システムSは、特定のアルゴリズム、例えば、DHT(Distributed Hash Table)を利用したアルゴリズムにより実現される。そして、コンテンツ分散保存システムSに参加している各ノードNnには、固有のノード識別情報であるノードIDが割り当てられており、当該ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、一つのID空間に偏りなく分散して配置されることになる。   Such a content distributed storage system S is realized by a specific algorithm, for example, an algorithm using DHT (Distributed Hash Table). Each node Nn participating in the distributed content storage system S is assigned a node ID, which is unique node identification information. The node ID is, for example, an IP assigned individually to each node Nn. It is a value (for example, the bit length is 160 bits) obtained by hashing the address or serial number with a common hash function (for example, SHA-1), and is distributed and distributed in one ID space without any deviation.

なお、コンテンツ分散保存システムSへの参加は、参加していないノードNn(例えば、ノードN8)が、参加している任意のノードNn(例えば、当該システムSに常時参加しているコンタクトノード)に対して参加要求を示す参加メッセージを送信することによって行われる。   In addition, participation in the content distributed storage system S is performed by any node Nn (for example, the node N8) that has not participated in any node Nn (for example, a contact node that always participates in the system S) that has not participated. This is done by sending a participation message indicating a participation request.

上記のように共通のハッシュ関数により求められた(ハッシュ化された)ノードIDは、当該IPアドレス或いは製造番号が異なれば、同じ値になる確率が極めて低いものである。また、このノードIDは、ノードの最大運用台数を収容できるだけのbit数を持たせる必要がある。例えば、128bitの番号とすれば、2^128=340×10^36台のノードを運用できる。なお、ハッシュ関数については公知であるので詳しい説明を省略する。   As described above, the node ID obtained (hashed) by the common hash function has a very low probability of having the same value if the IP address or the manufacturing number is different. The node ID needs to have a number of bits that can accommodate the maximum number of nodes that can be operated. For example, if a 128-bit number is used, 2 ^ 128 = 340 × 10 ^ 36 nodes can be operated. Since the hash function is publicly known, detailed description thereof is omitted.

また、各ノードNnは、夫々、DHTを保持している。このDHTは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定しており、具体的には、ID空間内で適度に離れたノードNnのノードID、IPアドレス及びポート番号を含むノード情報(転送先ノード情報)が複数登録されている。   Each node Nn holds a DHT. This DHT defines the transfer destinations of various messages on the content distributed storage system S. Specifically, the node information includes the node ID, IP address, and port number of the node Nn that is moderately separated in the ID space. A plurality of (destination node information) are registered.

コンテンツ分散保存システムSに参加している1台のノードNnは、該システムSに参加している全てのノードNnのうち、必要最低限のノードNnのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない(記憶していない)ノードNnについては、各ノードNn間で互いに各種メッセージを転送し合って届けてもらうようになっている。   One node Nn participating in the content distributed storage system S registers the minimum necessary node information of the nodes Nn among all the nodes Nn participating in the system S in the routing table, With respect to the node Nn that does not know (store) the node information, various messages are transferred between the nodes Nn to be delivered.

1.1 DHTを用いたルーティングテーブル
ここで、図2及び図3を参照して、DHTを用いたルーティングテーブルについて詳しく説明する。
[ 1.1 Routing table using DHT ]
Here, the routing table using DHT will be described in detail with reference to FIGS.

図2は、ノードN2が保持するDHTを用いたルーティングテーブルの一例を示す図であり、図3は、DHTのID空間の一例を示す概念図である。   FIG. 2 is a diagram illustrating an example of a routing table using the DHT held by the node N2, and FIG. 3 is a conceptual diagram illustrating an example of an ID space of the DHT.

なお、図2及び図3の例においては、説明の便宜上、ノードIDのbit長を2bit×3桁=6bitとし、各桁を4進数(0〜3の整数)で表している(実際には、もっと長いbit長を用い、各桁も例えば4bitに区切って0〜fの16進数で表現する)。   2 and 3, for convenience of explanation, the bit length of the node ID is 2 bits × 3 digits = 6 bits, and each digit is represented by a quaternary number (an integer from 0 to 3) (actually, A longer bit length is used, and each digit is also divided into, for example, 4 bits and expressed by a hexadecimal number of 0 to f).

図2の例において、DHTを用いたルーティングテーブルは、レベル1〜レベル3のテーブルからなり(複数のレベルに区分されており)、各レベルのテーブルエントリーには、エリア毎に、ノード情報として、ノードIDとこれに対応するノードNnのIPアドレス及びポート番号が対応付けられて登録されている。各レベルのテーブルにおける各エリアは、DHTのノードID空間を分割することにより得られるエリアである。例えば、図3に示すように、レベル1では、DHTのID空間全体が4分割され、“000”〜“033”のノードIDが存在するエリアを0XXのエリア、“100”〜“133” のノードIDが存在するエリアを1XXのエリア、“200”〜“233” のノードIDが存在するエリアを2XXのエリア、“300”〜“333” のノードIDが存在するエリアを3XXのエリアとする。また、レベル2では、レベル1のエリア(つまり、0XX〜3XXのエリア)が更に4分割、例えば1XXのエリアが4分割され、“100”〜“103” のノードIDが存在するエリアを10Xのエリア、“110”〜“113” のノードIDが存在するエリアを11Xのエリア、“120”〜“123” のノードIDが存在するエリアを12Xのエリア、“130”〜“133” のノードIDが存在するエリアを13Xのエリアとする。   In the example of FIG. 2, the routing table using DHT is composed of level 1 to level 3 tables (divided into a plurality of levels), and each level table entry includes node information for each area. The node ID is registered in association with the IP address and port number of the node Nn corresponding to the node ID. Each area in the table of each level is an area obtained by dividing the DHT node ID space. For example, as shown in FIG. 3, in the level 1, the entire ID space of the DHT is divided into four, and the area where the node IDs “000” to “033” are present is the 0XX area, “100” to “133” The area where the node ID exists is the 1XX area, the area where the node IDs "200" to "233" exist is the 2XX area, and the area where the node ID "300" to "333" exists is the 3XX area. . In level 2, the area of level 1 (that is, the area from 0XX to 3XX) is further divided into four, for example, the area of 1XX is divided into four, and the area where the node IDs “100” to “103” exist is 10X. Area, an area where node IDs “110” to “113” exist are 11X areas, an area where node IDs “120” to “123” exist are 12X areas, and node IDs “130” to “133” exist The area in which is present is defined as a 13X area.

そして、例えば、ノードN2のノードIDが“122”とすると、図2に示すように、かかるノードN2のレベル1における1XXのエリア(自己(つまり、自ノード)が存在するエリア)のテーブルには、自己のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録され、自己が存在しないエリア(つまり、0XXのエリア、2XXのエリア、及び3XXのエリア)には、夫々、他の任意のノードNnのノードID及びIPアドレス等が登録されている。   For example, if the node ID of the node N2 is “122”, as shown in FIG. 2, the table of the 1XX area at the level 1 of the node N2 (the area where the self (that is, the own node) exists) The area where the self node ID and IP address (the IP address is own, so it is not necessary to register it in the routing table) etc. is registered and does not exist (that is, 0XX area, 2XX area) , And 3XX area), node IDs and IP addresses of other arbitrary nodes Nn are registered.

また、かかるノードN1のレベル2における12Xのエリア(自己が存在するエリア)のテーブルには、図2に示すように、自己のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録され、自己が存在しないエリア(つまり、10Xのエリア、11Xのエリア、及び13Xのエリア)等には、夫々、他の任意のノードNnのノードID及びIPアドレス等が登録されている。   Further, in the table of the 12X area (the area where the self exists) in the level 2 of the node N1, as shown in FIG. 2, the own node ID and the IP address (the IP address is own) In the areas where the self does not exist (that is, the 10X area, the 11X area, and the 13X area), etc., nodes of other arbitrary nodes Nn, respectively, are registered. ID, IP address, etc. are registered.

更に、かかるノードN2のレベル3には、図2に示すように、ノードIDが“120”〜“122”のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録されている。   Further, in the level 3 of the node N2, as shown in FIG. 2, the node IDs and IP addresses having node IDs “120” to “122” are registered in the routing table. Is not necessary).

なお、図2及び図3の例では、ノードIDのbit長を3桁×2bitとしたので、レベル1〜3の3レベル分のテーブルで網羅できるが、ノードIDのbit長が増せば、その分のテーブルが必要となる(例えば、ノードIDのbit長を16桁×4bitとした場合、16レベル分のテーブルが必要となる)。   In the example of FIGS. 2 and 3, since the bit length of the node ID is 3 digits × 2 bits, it can be covered by a table of three levels of levels 1 to 3, but if the bit length of the node ID increases, (For example, if the bit length of the node ID is 16 digits × 4 bits, a table for 16 levels is required).

このように、本実施形態におけるDHTを用いたルーティングテーブルでは、レベルが上がるほど、エリアが狭まっていくようになっている。   Thus, in the routing table using DHT in the present embodiment, the area becomes narrower as the level increases.

また、このようなDHTは、例えば、未参加のノードがコンテンツ分散保存システムSに参加する際に与えられることになる。   In addition, such DHT is given, for example, when a non-participating node participates in the content distributed storage system S.

1.2 コンテンツデータの保存及び発見方法
次に、コンテンツ分散保存システムSにおいて取得可能なコンテンツデータの保存及び発見方法について説明する。
[ 1.2 Content data storage and discovery method ]
Next, a method for storing and finding content data that can be acquired in the content distributed storage system S will be described.

コンテンツ分散保存システムSにおいては、様々なコンテンツ(例えば、映画や音楽等)データが複数のノードNnに分散して保存(格納)されている(言い換えれば、コンテンツデータが複製されその複製情報であるレプリカが分散保存されている)。   In the content distributed storage system S, various content (for example, movies, music, etc.) data is distributed and stored (stored) in a plurality of nodes Nn (in other words, the content data is duplicated and the duplicate information thereof). Replicas are distributed).

また、本実施形態においては、複数のフレーム画像データ(映像データ)を有する一単位のコンテンツデータ(例えば、映画やテレビ番組等のデータサイズ(データ容量)の大きいコンテンツデータ)は、複数に分割(例えば、数Mbyte)され、その分割された分割コンテンツデータ(同じデータサイズずつ分割されても良いし、異なるデータサイズずつ分割されても良い)が複数のノードNn(以下、「コンテンツ保持ノード」という)に分散して保存(格納)されるようになっている。   In the present embodiment, one unit of content data having a plurality of frame image data (video data) (for example, content data having a large data size (data capacity) such as a movie or a TV program) is divided into a plurality of pieces ( For example, the divided content data (which may be divided by the same data size or may be divided by different data sizes) is divided into a plurality of nodes Nn (hereinafter referred to as “content holding nodes”). ) Are distributed and stored (stored).

例えば、タイトルがXXXの映画のコンテンツデータAが、分割コンテンツデータA1〜A4の4つに分割されたとすると、分割コンテンツデータA1はノードN1及びN5に保存され、分割コンテンツデータA2はノードN3に保存され、分割コンテンツデータA3はノードN7に保存され、分割コンテンツデータA4はノードN8及びN10に保存される。なお、タイトルが異なる他の映画のコンテンツデータについても同様に分割され、複数のノードNnに保存されることになる。   For example, if the content data A of a movie whose title is XXX is divided into four pieces of divided content data A1 to A4, the divided content data A1 is stored in the nodes N1 and N5, and the divided content data A2 is stored in the node N3. Thus, the divided content data A3 is stored in the node N7, and the divided content data A4 is stored in the nodes N8 and N10. Note that content data of other movies with different titles are similarly divided and stored in a plurality of nodes Nn.

そして、これらの分割コンテンツデータA1〜A4には、夫々、コンテンツID(CID)(分割コンテンツデータ毎に固有の識別情報)が割り当てられている。このコンテンツIDは、例えば、コンテンツ名(コンテンツデータ毎に互いに異なる)+任意の値(或いは、分割コンテンツデータの先頭数バイトでも良い)が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。なお、上記任意の値は、分割コンテンツデータA1〜A4の間で互いに異なる値とするが、例えば、A1が“1”、A2が“2”、A3“3”、A4が“4というように規則性を有する値とする。また、システム運営者が、コンテンツ毎に一意のID値(ノードIDと同一ビット長)を付与しても良い。   Each of these divided content data A1 to A4 is assigned a content ID (CID) (identification information unique to each divided content data). This content ID is, for example, a content name (different for each content data) + an arbitrary value (or may be the first few bytes of the divided content data) hashed with a hash function common to the node ID To be generated (arranged in the same ID space as the node ID). The arbitrary value is a value that is different between the divided content data A1 to A4. For example, A1 is “1”, A2 is “2”, A3 “3”, and A4 is “4”. The system operator may give a unique ID value (same bit length as the node ID) for each content.

また、このように分散保存されている例えば分割コンテンツデータA1の所在、つまり、分割コンテンツデータA1を保存したノードNnのノード情報(例えば、IPアドレス及びポート番号等を含む)と当該分割コンテンツデータA1に対応するコンテンツID等の組が含まれるインデックス情報が、当該分割コンテンツデータA1の所在の管理元としてのノードNn(以下、「ルートノード」、又は「コンテンツ(コンテンツID)のルートノード」という)等により記憶(インデックスキャッシュに記憶)、管理されるようになっている(分割コンテンツデータA2〜A4についても同様)。   Further, the location of the divided content data A1 that is distributed and stored in this way, that is, the node information (for example, including the IP address and port number) of the node Nn that stores the divided content data A1, and the divided content data A1. Index information including a set of content IDs corresponding to the node Nn (hereinafter referred to as “root node” or “root node of content (content ID)”) as the management source of the location of the divided content data A1 Or the like (stored in the index cache) and managed (the same applies to the divided content data A2 to A4).

例えば、分割コンテンツデータA1のインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN4により管理され、分割コンテンツデータA2のインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN6により管理される。   For example, the index information of the divided content data A1 is managed by the node N4 that is the root node of the content (content ID), and the index information of the divided content data A2 is the node N6 that is the root node of the content (content ID). It is managed by.

つまり、分割コンテンツデータ毎にルートノードが分けられるので負荷分散が図らており、しかも、同一の分割コンテンツデータA1(コンテンツIDが同一)が、夫々、複数のコンテンツ保持ノードに保存されている場合であっても、かかる分割コンテンツデータA1のインデックス情報は、一つのルートノードで管理することができる。また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNnであるように定められる。   In other words, since the root node is divided for each divided content data, the load is distributed, and the same divided content data A1 (content ID is the same) is stored in a plurality of content holding nodes. Even in such a case, the index information of the divided content data A1 can be managed by one root node. Further, such a root node is determined to be, for example, a node Nn having a node ID closest to the content ID (for example, the higher-order digits match more).

そして、あるノードNnのユーザが、所望するコンテンツデータを取得したい場合、当該コンテンツデータの取得を望むノードNn(以下、「ユーザノード」という)は、当該ユーザにより選択(例えば、全てのノードNnに配信されているコンテンツカタログ情報(コンテンツリストともいう)から選択)されたコンテンツデータAを構成する例えば分割コンテンツデータA1のコンテンツID及び自己のノード情報を含むコンテンツ所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ(検索)メッセージを、ルートノードに向けて送出する。これにより、コンテンツ所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着することになる。   When a user of a certain node Nn wants to acquire desired content data, a node Nn (hereinafter referred to as a “user node”) from which the content data is desired to be acquired is selected by the user (for example, to all the nodes Nn). A content location inquiry (search) message (query) including, for example, the content ID of the divided content data A1 and its own node information constituting the content data A selected from the distributed content catalog information (also referred to as a content list). It is generated and sent to other nodes Nn according to the routing table using its own DHT. That is, the user node sends a content location inquiry (search) message toward the root node. As a result, the content location inquiry (search) message finally arrives at the root node by DHT routing using the content ID as a key.

なお、上記コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。   The content ID included in the content location inquiry (search) message may be generated by the user node by hashing the content name with the common hash function.

図4は、ユーザノードから送出されたコンテンツ所在問合せ(検索)メッセージの流れの一例を、DHTのID空間にて示した概念図である。   FIG. 4 is a conceptual diagram showing an example of the flow of a content location inquiry (search) message sent from a user node in the ID space of the DHT.

図4の例において、例えば、ユーザノードであるノードN2は、自己のDHTのレベル1のテーブル(図2に示すDHTを用いたルーティングテーブルとは無関係)を参照して、コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードN3のノード情報に含まれるIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記コンテンツ所在問合せ(検索)メッセージを送信する。   In the example of FIG. 4, for example, the node N2, which is a user node, refers to a DHT level 1 table (regardless of the routing table using the DHT shown in FIG. 2), and a content location inquiry (search) Obtain the IP address and port number included in the node information of, for example, the node N3 having the node ID closest to the content ID included in the message (for example, the higher digit matches more), and address the IP address and port number. The content location inquiry (search) message is transmitted.

これに対して、ノードN3は、当該コンテンツ所在問合せ(検索)メッセージを受信し、自己のDHTのレベル2のテーブルを参照して、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードN4のノード情報に含まれるIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記コンテンツ所在問合せ(検索)メッセージを転送する。   On the other hand, the node N3 receives the content location inquiry (search) message, refers to the DHT level 2 table, and is closest to the content ID included in the content location inquiry (search) message. The IP address and port number included in the node information of, for example, the node N4 having a node ID (for example, the higher digit matches more) are acquired, and the content location inquiry (search) message is addressed to the IP address and port number. Forward.

これに対して、ノードN4は、当該コンテンツ所在問合せ(検索)メッセージを受信し、自己のDHTのレベル3のテーブルを参照して、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDが自分である、つまり、自分がそのコンテンツIDのルートノードであることを認識すると、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。これにより、ユーザノードは、所望のコンテンツデータAを構成する分割コンテンツデータA1を保存している上記コンテンツ保持ノードである例えばノードN5に対して、コンテンツ送信要求メッセージを送信し、そこから当該分割コンテンツデータA1の提供を受けることとなる(つまり、ユーザノードは、上記コンテンツIDに基づいて、その分割コンテンツデータA1を取得することができる)。例えば、コンテンツ保持ノードはユーザノードからの要求に応じて分割コンテンツデータA1のパケットデータをストリーミング配信し、ユーザノードは配信されてきた分割コンテンツデータA1のパケットデータを受信し再生(通常再生)することになる。   On the other hand, the node N4 receives the content location inquiry (search) message, refers to the table of the level 3 of its own DHT, and is closest to the content ID included in the content location inquiry (search) message. If the node ID (for example, the higher-order digits match more) is itself, that is, if it recognizes that it is the root node of the content ID, it corresponds to the content ID included in the content location inquiry (search) message The index information to be acquired is acquired from the index cache, and the index information is returned to the user node that is the transmission source of the content location inquiry message. As a result, the user node transmits a content transmission request message to, for example, the node N5 that is the content holding node storing the divided content data A1 constituting the desired content data A, and the divided content is transmitted therefrom. The data A1 is provided (that is, the user node can acquire the divided content data A1 based on the content ID). For example, the content holding node performs streaming distribution of the packet data of the divided content data A1 in response to a request from the user node, and the user node receives and reproduces (normal reproduction) the distributed packet data of the divided content data A1. become.

或いは、ルートノードであるノードN4は、当該インデックス情報に含まれるノード情報に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージ(ユーザノードのノード情報を含み、当該ユーザノードに対して分割コンテンツデータA1の送信要求を示す要求情報)を送信する。これにより、ユーザノードは、上記コンテンツ保持ノードである例えばノードN5から分割コンテンツデータA1の提供を受けることとなる。なお、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしている中継ノード(例えば、ノードN3のキャッシュノード)から当該インデックス情報を取得(受信)することもできる。   Alternatively, the node N4, which is the root node, sends a content transmission request message (including node information of the user node to the content holding node indicated in the node information included in the index information, and the divided content data to the user node. Request information indicating a transmission request of A1). As a result, the user node receives provision of the divided content data A1 from, for example, the node N5 that is the content holding node. The user node obtains the index information from the relay node that caches the same index information as the root node (for example, the cache node of the node N3) until the content location inquiry message reaches the root node. It can also be acquired (received).

そして当該分割コンテンツデータA1の配信終了が近くなってきた所定のタイミングで、ユーザノードは、分割コンテンツデータA1に続く分割コンテンツデータA2のコンテンツID及び自己のノード情報を含むコンテンツ所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。これにより、ユーザノードは、分割コンテンツデータA1と同様、コンテンツ保持ノードから分割コンテンツデータA2の提供を受けることとなる(分割コンテンツデータA3及びA4も同様)。   Then, at a predetermined timing when the distribution of the divided content data A1 is almost finished, the user node sends a content location inquiry (search) message including the content ID of the divided content data A2 following the divided content data A1 and its own node information. (Query) is generated and sent to another node Nn according to the routing table using its own DHT. As a result, the user node receives the provision of the divided content data A2 from the content holding node similarly to the divided content data A1 (the same applies to the divided content data A3 and A4).

1.3 コンテンツデータの特殊再生(トリックプレイ)方法
次に、コンテンツ分散保存システムSにおいて取得可能なコンテンツデータの特殊再生(トリックプレイ)方法について説明する。
[ 1.3 Content data special playback (trick play) method ]
Next, a special reproduction (trick play) method of content data that can be acquired in the content distributed storage system S will be described.

本実施形態においては、上述したように複数に分割され異なるノードNnに保存されたコンテンツデータについて、例えば早送り再生、巻戻し再生、又はシーク(ジャンプ)再生等の特殊再生(トリックプレイ)をスムーズに行うため、再生すべきフレーム画像データ(以下、「キーフレーム」という)がどの分割コンテンツデータに含まれるかを、ノードNnが迅速に特定できるように、少なくとも一つの分割コンテンツデータのコンテンツIDと、各分割コンテンツデータ中の各キーフレームのオフセット位置(例えば、先頭からの位置)及びデータサイズを示すキーフレーム情報と、がコンテンツカタログ情報中に記述されるようになっている。   In the present embodiment, special playback (trick play) such as fast-forward playback, rewind playback, or seek (jump) playback is smoothly performed on the content data divided into a plurality of pieces and stored in different nodes Nn as described above. In order to do so, the content ID of at least one divided content data, so that the node Nn can quickly identify which divided content data includes frame image data to be reproduced (hereinafter referred to as “key frame”), The offset position (for example, the position from the head) of each key frame in each divided content data and key frame information indicating the data size are described in the content catalog information.

ここで、MPEGなどの画像圧縮方式では、例えば1/30秒ごとのフレーム情報を圧縮するようになっているが、1秒おきのフレーム画像は、その1枚のフレーム情報のみを使って圧縮しており、これをキーフレームという(フレーム内で圧縮が完結している)。この他の1/30秒おきのフレームは、キーフレームや前後のフレームとの差分情報のみを圧縮して記録する。特殊再生を行うには、例えば1秒おきのフレームを1/10秒間隔で表示すると、10倍速の早送り再生となるのだが、前記のような圧縮方式の場合には、ここでキーフレームを使わなければいけない。なぜならば、差分情報のフレームをデコーダに渡しても、そのフレームだけでは伸張ができないからである。そこで、早送り再生、巻き戻し再生をするためには、圧縮後のデータ中のキーフレームの位置とサイズを正確に知っておくことが重要になる。シーク再生の場合も、再生開始時から即座にフレームを表示するためには、デコーダにキーフレームからデータを渡し始めるのが良いので、キーフレームの位置を知っておくと良い。   Here, in the image compression method such as MPEG, for example, the frame information is compressed every 1/30 seconds, but the frame image every second is compressed using only the frame information of one frame. This is called a key frame (compression is completed within the frame). In the other frames every 1/30 seconds, only the difference information from the key frame and the previous and subsequent frames is compressed and recorded. To perform special playback, for example, if every second frame is displayed at 1/10 second intervals, fast-forward playback at 10 times speed will be used. However, in the case of the compression method as described above, key frames are used here. Must be. This is because even if a frame of difference information is passed to the decoder, it cannot be decompressed with that frame alone. Therefore, in order to perform fast forward playback and rewind playback, it is important to accurately know the position and size of the key frame in the compressed data. In the case of seek reproduction, in order to display a frame immediately from the start of reproduction, it is preferable to start passing data from the key frame to the decoder, so it is good to know the position of the key frame.

なお、コンテンツカタログ情報は、コンテンツカタログ情報を管理するノードNn、或いはサーバにより管理(更新等)されており、当該ノードNn或いはサーバから、コンテンツ分散保存システムSに参加している各ノードNnに配信されるようになっている。   The content catalog information is managed (updated, etc.) by the node Nn or the server that manages the content catalog information, and distributed from the node Nn or the server to each node Nn that participates in the content distributed storage system S. It has come to be.

図5(A)乃至(C)は、夫々、コンテンツデータが分割され、各分割コンテンツデータ中の各キーフレームのキーフレーム情報等がコンテンツカタログ情報に記述される様子を示す概念図である。   FIGS. 5A to 5C are conceptual diagrams illustrating how content data is divided and key frame information of each key frame in each divided content data is described in the content catalog information.

図5(A)の例では、各分割コンテンツデータのコンテンツIDと、各分割コンテンツデータ中の各キーフレームに対応するキーフレーム情報(オフセット位置(Offset)及びデータサイズ(Size)を示す)とが、別々にコンテンツカタログ情報に記述されるようになっている。この図5(A)の例の場合のコンテンツカタログ情報(構造例1)におけるデータ構造例を図6に示す。   In the example of FIG. 5A, the content ID of each divided content data and key frame information (indicating an offset position (Offset) and a data size (Size)) corresponding to each key frame in each divided content data. Are described separately in the content catalog information. FIG. 6 shows a data structure example in the content catalog information (structure example 1) in the case of the example of FIG.

図6に示すコンテンツカタログ情報(構造例1)は、コンテンツ分散保存システムSにおいて各ノードNnが取得可能(利用可能)な各コンテンツデータ(A,B、C・・・)の固有情報を有する。各コンテンツデータ(A,B、C・・・)の固有情報には、コンテンツタイトル(コンテンツ名)、分割コンテンツ情報、及びキーフレーム情報が含まれている。そして、分割コンテンツ情報には、コンテンツデータの分割数、及び分割された1番目(先頭)〜m(mは自然数)番目までの各分割コンテンツデータのコンテンツID及びデータサイズが含まれている。また、キーフレーム情報には、キーフレームの数(当該コンテンツデータにおけるキーフレームの数)、及び1番目(先頭)〜j(jは自然数)番目までの各キーフレーム情報が含まれ、各キーフレーム情報には、当該キーフレームのオフセット位置(コンテンツデータの先頭からのオフセット位置)及び当該キーフレームのデータサイズが含まれている。なお、コンテンツカタログ情報(構造例1)によれば、各キーフレームがどの分割コンテンツデータに含まれるかを、ノードNnが計算により判別することになる。このコンテンツカタログ情報(構造例1)によれば、キーフレームのオフセット位置及びデータサイズと、当該キーフレームが含まれる分割コンテンツデータのコンテンツIDと、の対応関係を当該コンテンツカタログ情報中に規定しなくても、計算によって求めることができる。   The content catalog information (structure example 1) shown in FIG. 6 has unique information of each content data (A, B, C...) That can be acquired (available) by each node Nn in the content distributed storage system S. The unique information of each content data (A, B, C...) Includes a content title (content name), divided content information, and key frame information. The divided content information includes the number of content data divisions, and the content ID and data size of each divided content data from the first (first) to m (m is a natural number) divided. The key frame information includes the number of key frames (the number of key frames in the content data) and each key frame information from the first (first) to j (j is a natural number). The information includes the offset position of the key frame (the offset position from the beginning of the content data) and the data size of the key frame. According to the content catalog information (Structure Example 1), the node Nn determines which divided content data each key frame is included in by calculation. According to the content catalog information (Structure Example 1), the correspondence between the offset position and data size of the key frame and the content ID of the divided content data including the key frame is not defined in the content catalog information. However, it can be obtained by calculation.

図5(B)の例では、各分割コンテンツデータのコンテンツIDは、各分割コンテンツデータ中の各キーフレームに対応するキーフレーム情報(オフセット位置(Offset)及びデータサイズ(Size)を示す)中に含まれ、且つ、オフセット位置等に対応付けられてコンテンツカタログ情報に記述されるようになっている。この図5(B)の例の場合のコンテンツカタログ情報(構造例2)におけるデータ構造例を図7に示す。   In the example of FIG. 5B, the content ID of each divided content data is in key frame information (indicating offset position (Offset) and data size (Size)) corresponding to each key frame in each divided content data. It is included and described in the content catalog information in association with the offset position. FIG. 7 shows an example of the data structure in the content catalog information (structure example 2) in the case of the example of FIG.

図7に示すコンテンツカタログ情報(構造例2)は、図6に示すコンテンツカタログ情報(構造例1)と基本的な構造は同様であるが、分割コンテンツ情報には、コンテンツデータの分割数、及び分割された1番目(先頭)〜m(mは自然数)番目までの各分割コンテンツデータのコンテンツIDが含まれている(データサイズは含まれていない)。また、各キーフレーム情報には、キーフレームのオフセット位置(各分割コンテンツデータの先頭からのオフセット位置)及びデータサイズに対応付けられて、当該キーフレームが含まれる分割コンテンツデータのコンテンツIDが含まれている。このコンテンツカタログ情報(構造例2)によれば、各キーフレームがどの分割コンテンツデータに含まれるかを、ノードNnが計算により判別する必要が無く、より迅速に特定することができる。   The content catalog information (structure example 2) shown in FIG. 7 has the same basic structure as the content catalog information (structure example 1) shown in FIG. 6, but the divided content information includes the number of divisions of content data, and The content ID of each divided content data from the first (first) to m (m is a natural number) divided is included (data size is not included). Each key frame information includes the content ID of the divided content data including the key frame in association with the offset position of the key frame (offset position from the head of each divided content data) and the data size. ing. According to this content catalog information (structure example 2), it is not necessary for the node Nn to determine which divided content data each key frame is included in by calculation, and it is possible to specify more quickly.

図5(C)の例では、1番目(先頭)の分割コンテンツデータのコンテンツIDのみと、各分割コンテンツデータ中の各キーフレームに対応するキーフレーム情報(オフセット位置(Offset)及びデータサイズ(Size)を示す)とが、コンテンツカタログ情報に記述されるようになっている。この図5(C)の例の場合のコンテンツカタログ情報(構造例3)におけるデータ構造例を図8に示す。   In the example of FIG. 5C, only the content ID of the first (first) divided content data and key frame information (offset position (Offset) and data size (Size) corresponding to each key frame in each divided content data) ) Is described in the content catalog information. FIG. 8 shows an example of the data structure in the content catalog information (structure example 3) in the case of the example of FIG.

図8に示すコンテンツカタログ情報(構造例3)は、図6に示すコンテンツカタログ情報(構造例1)と基本的な構造は同様であるが、分割コンテンツ情報には、コンテンツデータの分割数、1番目(先頭)の分割コンテンツデータのコンテンツID、及び分割データサイズが含まれている。つまり、コンテンツカタログ情報(構造例3)では、全ての分割コンテンツデータのコンテンツIDが含まれるのではなく、1番目(先頭)の分割コンテンツデータのコンテンツIDのみが含まれる。1番目(先頭)の分割コンテンツデータ以外のコンテンツIDについては、1番目(先頭)の分割コンテンツデータのコンテンツIDから計算によって求められる。分割データサイズは、コンテンツデータがどのようなデータサイズで分割されたかを示す情報である(各分割コンテンツデータのデータサイズは同一となる)。コンテンツカタログ情報(構造例3)によれば、全ての分割コンテンツデータのコンテンツIDが含まれなくとも良いのでデータ量を削減することができる。   The content catalog information (structure example 3) shown in FIG. 8 has the same basic structure as the content catalog information (structure example 1) shown in FIG. 6, but the divided content information includes the number of divisions of content data, 1 The content ID of the second (first) divided content data and the divided data size are included. That is, the content catalog information (structure example 3) does not include the content IDs of all the divided content data, but includes only the content ID of the first (first) divided content data. Content IDs other than the first (first) divided content data are obtained by calculation from the content ID of the first (first) divided content data. The divided data size is information indicating in what data size the content data is divided (the data size of each divided content data is the same). According to the content catalog information (structure example 3), it is not necessary to include the content IDs of all the divided content data, so that the data amount can be reduced.

ここで、コンテンツカタログ情報を用いて、早送り再生が行われる場合の概要について、図9乃至図11を用いて説明する。   Here, an outline when fast-forward playback is performed using content catalog information will be described with reference to FIGS. 9 to 11.

図9は、上記図6に示すコンテンツカタログ情報(構造例1)を用いて、早送り再生が行われる場合の様子を示す図であり、図10は、上記図7に示すコンテンツカタログ情報(構造例2)を用いて、早送り再生が行われる場合の様子を示す図であり、図11は、上記図8に示すコンテンツカタログ情報(構造例3)を用いて、早送り再生が行われる場合の様子を示す図である。   FIG. 9 is a diagram showing a state in which fast-forward playback is performed using the content catalog information (structure example 1) shown in FIG. 6, and FIG. 10 is the content catalog information (structure example) shown in FIG. 2) is a diagram showing a situation when fast-forward playback is performed, and FIG. 11 shows a situation when fast-forward playback is performed using the content catalog information (structure example 3) shown in FIG. FIG.

図9乃至図11の何れの例でも、ユーザノードは、ユーザからのコンテンツデータの早送り再生指示(再生に関する指示の一例)に応じて再生すべきキーフレームに対応するキーフレーム情報と、当該再生すべきキーフレームが含まれる分割コンテンツデータのコンテンツIDと、をコンテンツカタログ情報に基づいて特定し、当該特定したキーフレーム情報及びコンテンツIDに対応するキーフレームを、コンテンツ保持ノード(当該コンテンツ保持ノードは、当該ユーザノードが上記特定したコンテンツIDに対応する分割コンテンツデータを保存しており、当該コンテンツIDをキーとするDHTルーティングによってルートノードに問い合わされて特定される)から取得して再生(早送り再生)するようになっている。   In any of the examples of FIGS. 9 to 11, the user node performs key frame information corresponding to a key frame to be reproduced according to a fast-forward reproduction instruction (an example of an instruction for reproduction) of content data from the user, and the reproduction. The content ID of the divided content data including the key frame to be determined is specified based on the content catalog information, and the key frame corresponding to the specified key frame information and the content ID is set to the content holding node (the content holding node is The user node stores the divided content data corresponding to the specified content ID, and is obtained from the root node by DHT routing using the content ID as a key) and reproduced (fast forward reproduction) It is supposed to be.

ここで、図9に示すように、コンテンツカタログ情報(構造例1)を用いる場合、再生すべきキーフレームが含まれる分割コンテンツデータ(コンテンツID)は、当該分割コンテンツデータのデータサイズと、再生すべきキーフレームのキーフレーム情報(オフセット位置及びデータサイズを示す)とに基づいて計算により判別される。一方、図10に示すように、コンテンツカタログ情報(構造例2)を用いる場合、再生すべきキーフレームが含まれる分割コンテンツデータ(コンテンツID)は、キーフレーム情報から特定される。また、図11に示すように、コンテンツカタログ情報(構造例3)を用いる場合、1番目(先頭)の分割コンテンツデータ以外のコンテンツIDは、1番目(先頭)の分割コンテンツデータのコンテンツIDから計算によって求められる。   Here, as shown in FIG. 9, when the content catalog information (Structure Example 1) is used, the divided content data (content ID) including the key frame to be reproduced includes the data size of the divided content data and the reproduced content data. It is determined by calculation based on the key frame information (indicating the offset position and data size) of the power key frame. On the other hand, as shown in FIG. 10, when content catalog information (structure example 2) is used, divided content data (content ID) including a key frame to be reproduced is specified from the key frame information. As shown in FIG. 11, when content catalog information (structure example 3) is used, content IDs other than the first (first) divided content data are calculated from the content IDs of the first (first) divided content data. Sought by.

2.ノードNnの構成及び機能等
次に、図12を参照して、ノードNnの構成及び機能について説明する。
[ 2. Configuration and function of node Nn ]
Next, the configuration and function of the node Nn will be described with reference to FIG.

図12は、ノードNnの概要構成例を示す図である。   FIG. 12 is a diagram illustrating a schematic configuration example of the node Nn.

各ノードNnは、図12に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラムを記憶するROM等から構成されたコンピュータとしての制御部11と、各種データ(例えば、分割コンテンツデータ、インデックス情報、DHT等)及び各種プログラム等を記憶保存(格納)するためのHD等から構成された記憶手段としての記憶部12と、受信された分割コンテンツデータ等を一時蓄積するバッファメモリ13と、分割コンテンツデータに含まれるエンコードされたビデオデータ(映像情報)およびオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部14と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部15と、当該映像処理部15から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部16と、上記デコードされたオーディオデータをアナログオーディオ信号にD (Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部17と、当該音声処理部17から出力されたオーディオ信号を音波として出力するスピーカ18と、ネットワーク8を通じて他のノードNn等との間の情報の通信制御を行うための通信部20と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス、或いは、操作パネル等)21と、を備えて構成され、制御部11、記憶部12、バッファメモリ13、デコーダ部14および通信部20はバス22を介して相互に接続されている。なお、ノードNnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。   As shown in FIG. 12, each node Nn includes a control unit 11 as a computer including a CPU having a calculation function, a working RAM, a ROM for storing various data and programs, and various data (for example, divided contents). Data, index information, DHT, etc.) and various programs, etc., and a storage unit 12 as storage means configured to store (store) a buffer, and a buffer memory 13 for temporarily storing the received divided content data and the like A decoder unit 14 for decoding (data expansion, decoding, etc.) encoded video data (video information) and audio data (audio information) included in the divided content data, and for the decoded video data, etc. A video processing unit 15 that performs a predetermined drawing process and outputs a video signal; After a display unit 16 such as a CRT or a liquid crystal display for displaying video based on the video signal output from the video processing unit 15 and D (Digital) / A (Analog) conversion of the decoded audio data into an analog audio signal Communication of information between the audio processing unit 17 that amplifies this with an amplifier and outputs it, the speaker 18 that outputs the audio signal output from the audio processing unit 17 as a sound wave, and other nodes Nn and the like through the network 8 A communication unit 20 for performing control, and an input unit 21 (for example, a keyboard, a mouse, or an operation panel) that receives an instruction from a user and provides an instruction signal corresponding to the instruction to the control unit 11; The control unit 11, the storage unit 12, the buffer memory 13, the decoder unit 14, and the communication unit 20 are connected via a bus 22. Are connected to each other. As the node Nn, a personal computer, an STB (Set Top Box), a TV receiver, or the like can be applied.

このような構成において、制御部11は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、全体を統括制御すると共に、コンテンツ分散保存システムSへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及びコンテンツ保持ノードの少なくとも何れか一つのノードとしての処理を行うようになっている。   In such a configuration, the control unit 11 performs overall control by reading and executing a program stored in the storage unit 12 or the like by the CPU, and the above-described user node by participating in the content distributed storage system S. The relay node, the root node, the cache node, and the content holding node are processed as at least one of the nodes.

そして更に、コンテンツ分散保存システムSに参加しているノードNnにおける制御部11は、CPUが記憶部12等に記憶されたプログラム(本発明のノード処理プログラムを含む)を読み出して実行することにより、本発明の指示受付手段、特定手段、及びフレーム取得手段等として機能し、後述する処理を行うようになっている。なお、上記ノード処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。   Further, the control unit 11 in the node Nn participating in the content distributed storage system S reads and executes a program (including the node processing program of the present invention) stored in the storage unit 12 or the like by the CPU. It functions as an instruction receiving means, a specifying means, a frame acquisition means, etc. according to the present invention, and performs the processing described later. The node processing program may be downloaded from a predetermined server on the network 8, for example, or recorded on a recording medium such as a CD-ROM and read via the drive of the recording medium. You may be made to do.

3.ノードNnにおける特殊再生時の処理
次に、図13乃至図17等を参照して、ノードNnにおける特殊再生処理について説明する。
[ 3. Processing during special playback at node Nn ]
Next, the special reproduction process at the node Nn will be described with reference to FIGS.

図13は、ノードNnの制御部11における早送り再生又は巻戻し再生処理を示すフローチャートである。図14は、ノードNnの制御部11におけるシーク(ジャンプ)再生処理を示すフローチャートである。また、図15は、上記図6に示すコンテンツカタログ情報(構造例1)を用いた場合における、キーフレーム情報及びコンテンツID特定処理を示すフローチャートであり、図16は、上記図7に示すコンテンツカタログ情報(構造例2)を用いた場合における、キーフレーム情報及びコンテンツID特定処理を示すフローチャートであり、図17は、上記図8に示すコンテンツカタログ情報(構造例3)を用いた場合における、キーフレーム情報及びコンテンツID特定処理を示すフローチャートである。   FIG. 13 is a flowchart showing fast forward playback or rewind playback processing in the control unit 11 of the node Nn. FIG. 14 is a flowchart showing seek (jump) reproduction processing in the control unit 11 of the node Nn. FIG. 15 is a flowchart showing key frame information and content ID specifying processing when the content catalog information (structure example 1) shown in FIG. 6 is used, and FIG. 16 is a content catalog shown in FIG. FIG. 17 is a flowchart showing key frame information and content ID identification processing when information (structure example 2) is used, and FIG. 17 shows a key when content catalog information (structure example 3) shown in FIG. 8 is used. It is a flowchart which shows frame information and content ID specific processing.

先ず、コンテンツ分散保存システムSに参加しているノードNn(ユーザノード)において、制御部11は、ユーザからの入力部21を介したコンテンツリスト表示指示を受け付けた場合、上述したコンテンツカタログ情報を記憶部12からRAMに読み込み、当該コンテンツカタログ情報に含まれる複数のコンテンツ名(コンテンツタイトル)が記述されたコンテンツリストを表示部16に表示させる。そして、当該表示されたコンテンツリストにおけるコンテンツ名のうちから、ユーザにより入力部21を介して一つのコンテンツ名が選択された場合、制御部11は、当該コンテンツ名に対応するコンテンツデータAを構成する分割コンテンツデータA1のコンテンツID及び自己のノード情報を含むコンテンツ所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。これにより、コンテンツ所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着し、当該ユーザノードは、当該ルートノードからコンテンツ保持ノードのノード情報を取得する。そして、ユーザノードの制御部11は、取得したノード情報にしたがって分割コンテンツデータA1を保存しているコンテンツ保持ノードに対して、コンテンツ送信要求をし、例えばストリーミング配信された分割コンテンツデータA1のパケットデータを受信し、デコーダ部14、映像処理部15、及び音声処理部17等を通じて再生(通常再生)する。こうして、上述したように、分割コンテンツデータA1→分割コンテンツデータA2→分割コンテンツデータA3・・・の順にストリーミング配信される対象が切り替わっていくことになる。   First, in the node Nn (user node) participating in the distributed content storage system S, the control unit 11 stores the above-described content catalog information when receiving a content list display instruction from the user via the input unit 21. The content is read from the unit 12 into the RAM, and a content list in which a plurality of content names (content titles) included in the content catalog information is described is displayed on the display unit 16. When one content name is selected by the user via the input unit 21 from the content names in the displayed content list, the control unit 11 configures content data A corresponding to the content name. A content location inquiry (search) message (query) including the content ID of the divided content data A1 and its own node information is generated and sent to other nodes Nn according to the routing table using its own DHT. Thereby, the content location inquiry (search) message finally arrives at the root node by DHT routing using the content ID as a key, and the user node acquires node information of the content holding node from the root node. Then, the control unit 11 of the user node makes a content transmission request to the content holding node that stores the divided content data A1 according to the acquired node information, and for example, packet data of the divided content data A1 that has been distributed by streaming. And is reproduced (normally reproduced) through the decoder unit 14, the video processing unit 15, the audio processing unit 17, and the like. Thus, as described above, the target of streaming distribution is switched in the order of the divided content data A1, the divided content data A2, the divided content data A3, and so on.

また、図8に示すコンテンツカタログ情報(構造例3)を用いる場合、先頭の分割コンテンツデータのコンテンツIDしか含まれていないので、他の分割コンテンツデータのコンテンツIDは、例えば、その分割コンテンツデータの先頭からの順番と、先頭の分割コンテンツデータのコンテンツIDと、を所定の関数に代入することによって算出することになる。   Further, when the content catalog information (structure example 3) shown in FIG. 8 is used, since only the content ID of the first divided content data is included, the content ID of the other divided content data is, for example, the divided content data. The calculation is performed by substituting the order from the head and the content ID of the head divided content data into a predetermined function.

(早送り再生又は巻戻し再生)
このような通常再生中に、制御部11は、ユーザからの入力部21を介した早送り再生又は巻戻し再生(コンテンツデータの再生に関する指示の一例)開始指示を受け付けた場合、図13に示す処理を開始し、先ず、現在の分割コンテンツデータの再生位置に対応するキーフレームの番号(先頭からの順番)を取得し、これを“J”とする(ステップS1)。
(Fast forward playback or rewind playback)
When such a normal reproduction, the control unit 11 receives a start instruction from the user via the input unit 21 for fast-forward reproduction or rewind reproduction (an example of an instruction related to reproduction of content data), the process illustrated in FIG. First, the key frame number (in order from the top) corresponding to the reproduction position of the current divided content data is acquired, and this is set to “J” (step S1).

次いで、制御部11は、早送り再生の場合Jを1増加させ、一方、巻戻し再生の場合Jを1減少させる(ステップS2)。   Next, the control unit 11 increases J by 1 in the case of fast-forward playback, and decreases J by 1 in the case of rewind playback (step S2).

次いで、制御部11は、Jが所定値になったか否かを判別する(ステップS3)。具体的には、早送り再生の場合、制御部11は、コンテンツカタログ情報を参照して、Jがキーフレームの数になったか否かを判別し、キーフレームの数になった(J=キーフレームの数)場合には(ステップS3:Y)、当該再生位置に対応するキーフレームは最後のキーフレームであるので、当該処理を終了し、一方、キーフレームの数になっていない(J<キーフレームの数)場合には(ステップS3:N)には、ステップS4に移行する。   Next, the control unit 11 determines whether J has reached a predetermined value (step S3). Specifically, in the case of fast-forward playback, the control unit 11 refers to the content catalog information to determine whether J has reached the number of key frames, and has reached the number of key frames (J = key frame). (Step S3: Y), since the key frame corresponding to the reproduction position is the last key frame, the process is terminated, while the number of key frames is not reached (J <key In the case of (the number of frames) (step S3: N), the process proceeds to step S4.

一方、巻戻し再生の場合、制御部11は、コンテンツカタログ情報を参照して、Jが“1”になったか否かを判別し、“1”になった(J=1)場合には(ステップS3:Y)、当該再生位置に対応するキーフレームは最初のキーフレームであるので、当該処理を終了し、一方、“1”になっていない(J>1)場合には(ステップS3:N)には、ステップS4に移行する。   On the other hand, in the case of rewind playback, the control unit 11 refers to the content catalog information to determine whether J has become “1”, and when it has become “1” (J = 1) ( Step S3: Y) Since the key frame corresponding to the reproduction position is the first key frame, the process is terminated. On the other hand, if it is not “1” (J> 1) (Step S3: N), the process proceeds to step S4.

ステップS4では、制御部11は、J番目のキーフレームに対応するキーフレーム情報と、当該J番目のキーフレームに対応する分割コンテンツデータ(つまり、当該キーフレームが含まれる分割コンテンツデータ)のコンテンツIDと、を特定する。なお、当該コンテンツID及びキーフレーム情報の特定処理は、コンテンツカタログ情報の構造例1〜3に応じて異なり、詳細については後述する。   In step S4, the control unit 11 determines the key frame information corresponding to the J-th key frame and the content ID of the divided content data corresponding to the J-th key frame (that is, the divided content data including the key frame). And specify. Note that the identification processing of the content ID and key frame information differs depending on the structure examples 1 to 3 of the content catalog information, and details will be described later.

次いで、制御部11は、当該特定したコンテンツIDに対応する分割コンテンツデータに含まれるJ番目のキーフレームを取得する(ステップS5)。より具体的には、制御部11は、上記特定したコンテンツIDに対応する分割コンテンツデータを記憶しているか否かを判別し、記憶している場合には当該分割コンテンツデータから上記特定したキーフレーム情報に対応するキーフレームを取得する。一方、上記特定したコンテンツIDに対応する分割コンテンツデータを記憶していない場合には、制御部11は、当該コンテンツID及び自己のノード情報を含むキーフレーム所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。これにより、キーフレーム所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着し、当該ユーザノードの制御部11は、当該ルートノードからコンテンツ保持ノードのノード情報を取得する。そして、当該制御部11は、取得したノード情報にしたがって当該分割コンテンツデータを保存しているコンテンツ保持ノードに対して、上記特定したキーフレーム情報を指定してキーフレーム送信要求をし、これに応じて送信されたキーフレームを取得する。   Next, the control unit 11 acquires a J-th key frame included in the divided content data corresponding to the specified content ID (step S5). More specifically, the control unit 11 determines whether or not the divided content data corresponding to the specified content ID is stored, and if it is stored, the specified key frame is determined from the divided content data. Get keyframe corresponding to information. On the other hand, when the divided content data corresponding to the specified content ID is not stored, the control unit 11 generates a key frame location inquiry (search) message (query) including the content ID and its own node information. Then, this is transmitted to other nodes Nn according to the routing table using its own DHT. Thereby, the key frame location inquiry (search) message finally arrives at the root node by DHT routing using the content ID as a key, and the control unit 11 of the user node receives the node information of the content holding node from the root node. To get. Then, the control unit 11 makes a key frame transmission request by designating the specified key frame information to the content holding node that stores the divided content data in accordance with the acquired node information, and responds accordingly. To get the keyframe sent.

次いで、制御部11は、当該取得したキーフレームをデコーダ部14及び映像処理部15を通じて再生する(ステップS6)。   Next, the control unit 11 reproduces the acquired key frame through the decoder unit 14 and the video processing unit 15 (step S6).

次いで、制御部11は、ユーザからの入力部21を介した早送り再生又は巻戻し再生終了指示を受け付けたか否かを判別し(ステップS7)、受け付けた場合には(ステップS7:Y)、当該処理を終了し、受け付けていない場合には(ステップS7:N)、ステップS2に戻り、上記と同様の処理を行う。こうして、Jが所定値になるか、或いは、早送り再生又は巻戻し再生終了指示が受け付けられるまで、早送り再生又は巻戻し再生が行われることになる。   Next, the control unit 11 determines whether or not a fast forward playback or rewind playback end instruction is received from the user via the input unit 21 (step S7), and if received (step S7: Y), When the process is completed and not accepted (step S7: N), the process returns to step S2 and the same process as described above is performed. Thus, fast forward playback or rewind playback is performed until J reaches a predetermined value or a fast forward playback or rewind playback end instruction is accepted.

(シーク(ジャンプ)再生)
一方、通常再生中に、制御部11は、ユーザからの入力部21を介したシーク(ジャンプ)再生(コンテンツデータの再生に関する指示の一例)開始指示を受け付けた場合、図14に示す処理を開始し、先ず、シーク(ジャンプ)しようとする分割コンテンツデータの再生位置に対応するキーフレームの番号(先頭からの順番)を取得し、これを“J”とする(ステップS11)。
(Seek (jump) playback)
On the other hand, if the control unit 11 receives a start instruction for seek (jump) playback (an example of an instruction related to playback of content data) via the input unit 21 during normal playback, the control unit 11 starts the process illustrated in FIG. First, the key frame number (in order from the top) corresponding to the reproduction position of the divided content data to be seeked (jumped) is acquired, and this is set to “J” (step S11).

次いで、制御部11は、J番目のキーフレームに対応するキーフレーム情報と、当該J番目のキーフレームに対応する分割コンテンツデータのコンテンツIDと、を特定する(ステップS12)。なお、当該コンテンツID及びキーフレーム情報の特定処理は、早送り再生又は巻戻し再生処理におけるステップS4と同様であり、詳細については後述する。   Next, the control unit 11 specifies the key frame information corresponding to the Jth key frame and the content ID of the divided content data corresponding to the Jth key frame (step S12). Note that the content ID and key frame information specifying process is the same as step S4 in the fast forward playback or rewind playback process, and details will be described later.

次いで、制御部11は、当該特定したコンテンツIDに対応する分割コンテンツデータに含まれるJ番目のキーフレームを取得し(ステップS13)、当該キーフレームから再生(ジャンプ再生)を開始し(ステップ14)、当該処理を終了する(これ以降は通常再生に戻る)。   Next, the control unit 11 acquires the J-th key frame included in the divided content data corresponding to the specified content ID (step S13), and starts reproduction (jump reproduction) from the key frame (step 14). Then, the process ends (returns to normal playback thereafter).

より具体的には、制御部11は、上記特定したコンテンツIDに対応する分割コンテンツデータを記憶しているか否かを判別し、記憶している場合には当該分割コンテンツデータから上記特定したキーフレーム情報に対応するキーフレームを取得し、当該キーフレームから再生を開始する。一方、上記特定したコンテンツIDに対応する分割コンテンツデータを記憶していない場合には、制御部11は、当該コンテンツID及び自己のノード情報を含むキーフレーム所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。これにより、キーフレーム所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着し、当該ユーザノードの制御部11は、当該ルートノードからコンテンツ保持ノードのノード情報を取得する。そして、当該制御部11は、取得したノード情報にしたがって当該分割コンテンツデータを保存しているコンテンツ保持ノードに対して、上記特定したキーフレーム情報を指定してキーフレームからの送信要求をし、これに応じて送信されたキーフレームを取得し、当該キーフレームから再生を開始し、以降は、キーフレームに続くデータのストリーミング配信を受け通常再生が行われる。   More specifically, the control unit 11 determines whether or not the divided content data corresponding to the specified content ID is stored, and if it is stored, the specified key frame is determined from the divided content data. A key frame corresponding to the information is acquired, and reproduction is started from the key frame. On the other hand, when the divided content data corresponding to the specified content ID is not stored, the control unit 11 generates a key frame location inquiry (search) message (query) including the content ID and its own node information. Then, this is transmitted to other nodes Nn according to the routing table using its own DHT. Thereby, the key frame location inquiry (search) message finally arrives at the root node by DHT routing using the content ID as a key, and the control unit 11 of the user node receives the node information of the content holding node from the root node. To get. Then, the control unit 11 makes a transmission request from the key frame by designating the specified key frame information to the content holding node storing the divided content data according to the acquired node information. The key frame transmitted in response to the key frame is acquired, and playback is started from the key frame. Thereafter, normal playback is performed in response to streaming distribution of data following the key frame.

次に、上記構造例1〜3の夫々のコンテンツカタログ情報を用いた場合の、上記ステップS4及びステップS12における当該コンテンツID及びキーフレーム情報の特定処理の詳細を説明する。   Next, the details of the identification processing of the content ID and key frame information in step S4 and step S12 when each content catalog information of the structural examples 1 to 3 is used will be described.

(構造例1のコンテンツカタログ情報を用いた場合)
この場合、図15に示すように、先ず、制御部11は、図6に示すコンテンツカタログ情報を参照して、J番目のキーフレーム情報から、J番目のキーフレームのオフセット位置F0_OFFSET(コンテンツデータの先頭からのオフセット位置)及び当該キーフレームのデータサイズF_SIZEを取得する(ステップS51)。
(When the content catalog information of Structure Example 1 is used)
In this case, as shown in FIG. 15, first, the control unit 11 refers to the content catalog information shown in FIG. 6 and determines the offset position F0_OFFSET (content data of the J-th key frame from the J-th key frame information). The offset position from the head) and the data size F_SIZE of the key frame are acquired (step S51).

次いで、制御部11は、変数“M”を“1”とし(ステップS52)、図6に示すコンテンツカタログ情報を参照して、分割コンテンツ情報から、M番目(M=1の場合、先頭)の分割コンテンツデータのデータサイズC_SIZE及びコンテンツIDを取得し、当該M番目の分割コンテンツデータのオフセット位置C_OFFSET(M=1の場合、“0”)を算出する(ステップS53)。   Next, the control unit 11 sets the variable “M” to “1” (step S52), refers to the content catalog information shown in FIG. 6, and is the Mth (first in the case of M = 1) from the divided content information. The data size C_SIZE and content ID of the divided content data are acquired, and the offset position C_OFFSET (“0” when M = 1) of the M-th divided content data is calculated (step S53).

次いで、制御部11は、上記J番目のキーフレームが、M番目の分割コンテンツデータに含まれるか否かを判別する(ステップS54)。具体的には、F0_OFFSET<C_OFFSET+C_SIZEを満たすか(つまり、上記C_OFFSET+C_SIZEで示される位置(M番目の分割コンテンツデータの終了位置)が、J番目のキーフレームのオフセット位置F0_OFFSETより大きいか(後にあるか))否かが判別される。   Next, the control unit 11 determines whether or not the J-th key frame is included in the M-th divided content data (step S54). Specifically, whether F0_OFFSET <C_OFFSET + C_SIZE is satisfied (that is, the position indicated by C_OFFSET + C_SIZE (the end position of the M-th divided content data) is larger than the offset position F0_OFFSET of the J-th key frame ( Whether it is later)) or not is determined.

上記J番目のキーフレームが、M番目の分割コンテンツデータに含まれない場合(つまり、F0_OFFSET<C_OFFSET+C_SIZEを満たさない場合)には(ステップS54:N)、制御部11は、“M”に“1”を加算し(ステップS55)、ステップS53に戻り、当該M番目の分割コンテンツデータのオフセット位置C_OFFSETを算出、M番目の分割コンテンツデータのデータサイズC_SIZE及びコンテンツIDを取得し、上記と同様の処理を行う。このように、分割コンテンツデータのデータサイズC_SIZE、J番目のキーフレームのオフセット位置F0_OFFSET等に基づいて、J番目のキーフレームが含まれる分割コンテンツデータが判別されることになる。   When the J-th key frame is not included in the M-th divided content data (that is, when F0_OFFSET <C_OFFSET + C_SIZE is not satisfied) (step S54: N), the control unit 11 sets “M”. "1" is added (step S55), the process returns to step S53, the offset position C_OFFSET of the Mth divided content data is calculated, the data size C_SIZE and the content ID of the Mth divided content data are obtained, and the same as above Perform the process. Thus, the divided content data including the Jth key frame is determined based on the data size C_SIZE of the divided content data, the offset position F0_OFFSET of the Jth key frame, and the like.

そして、上記J番目のキーフレームが、M番目の分割コンテンツデータに含まれる場合(つまり、F0_OFFSET<C_OFFSET+C_SIZEを満たす場合)には(ステップS54:Y)、制御部11は、M番目の分割コンテンツデータのコンテンツID(最後に取得したコンテンツID)を、上記J番目のキーフレームに対応する分割コンテンツデータのコンテンツIDとして特定する(ステップS56)。   When the J-th key frame is included in the M-th divided content data (that is, when F0_OFFSET <C_OFFSET + C_SIZE is satisfied) (step S54: Y), the control unit 11 performs the M-th division. The content ID of the content data (the content ID acquired last) is specified as the content ID of the divided content data corresponding to the J-th key frame (step S56).

次いで、制御部11は、上記J番目のキーフレームのオフセット位置F_OFFSET(当該M番目の分割コンテンツデータの先頭からのオフセット位置)を算出(つまり、F_OFFSET=F0_OFFSET−C_OFFSETとなる)し(ステップS57)、当該算出したオフセット位置F_OFFSETと、上記ステップS51で取得したJ番目のキーフレームのデータサイズF_SIZEと、を当該J番目のキーフレームに対応するキーフレーム情報として特定する(ステップS58)。   Next, the control unit 11 calculates the offset position F_OFFSET (offset position from the beginning of the Mth divided content data) of the Jth key frame (that is, F_OFFSET = F0_OFFSET−C_OFFSET) (step S57). Then, the calculated offset position F_OFFSET and the data size F_SIZE of the J-th key frame acquired in step S51 are specified as key frame information corresponding to the J-th key frame (step S58).

(構造例2のコンテンツカタログ情報を用いた場合)
この場合、図16に示すように、先ず、制御部11は、図7に示すコンテンツカタログ情報を参照して、J番目のキーフレーム情報から、分割コンテンツデータのコンテンツID、J番目のキーフレームのオフセット位置F_OFFSET(分割コンテンツデータの先頭からのオフセット位置)及びデータサイズF_SIZEを取得し(ステップS61)、当該取得したコンテンツIDをJ番目のキーフレームに対応する分割コンテンツデータのコンテンツIDとして特定し、当該取得したJ番目のキーフレームのオフセット位置F_OFFSET及びデータサイズF_SIZEをJ番目のキーフレームに対応するキーフレーム情報として特定する(ステップS62)。
(When the content catalog information of Structure Example 2 is used)
In this case, as shown in FIG. 16, first, the control unit 11 refers to the content catalog information shown in FIG. 7 and determines the content ID of the divided content data, the J-th key frame from the J-th key frame information. Get the offset position F_OFFSET (offset position from the beginning of the divided content data) and the data size F_SIZE (step S61), specify the acquired content ID as the content ID of the divided content data corresponding to the Jth key frame, The offset position F_OFFSET and data size F_SIZE of the acquired Jth key frame are specified as key frame information corresponding to the Jth key frame (step S62).

(構造例3のコンテンツカタログ情報を用いた場合)
この場合、図17に示すように、先ず、制御部11は、図8に示すコンテンツカタログ情報を参照して、J番目のキーフレーム情報から、J番目のキーフレームのオフセット位置F0_OFFSET(コンテンツデータの先頭からのオフセット位置)及び当該キーフレームのデータサイズF_SIZEを取得する(ステップS71)。
(When using the content catalog information of Structure Example 3)
In this case, as shown in FIG. 17, first, the control unit 11 refers to the content catalog information shown in FIG. 8 and determines the offset position F0_OFFSET (content data of the J-th key frame from the J-th key frame information). The offset position from the head) and the data size F_SIZE of the key frame are acquired (step S71).

次いで、制御部11は、変数“M”を“1”とした後、図8に示すコンテンツカタログ情報を参照して、分割コンテンツ情報から、分割データサイズC_SIZE及び先頭の分割コンテンツデータのコンテンツIDを取得する(ステップS72)。   Next, after setting the variable “M” to “1”, the control unit 11 refers to the content catalog information shown in FIG. 8 and determines the divided data size C_SIZE and the content ID of the first divided content data from the divided content information. Obtain (step S72).

次いで、制御部11は、M番目(M=1の場合、先頭)の分割コンテンツデータのオフセット位置C_OFFSET(M=1の場合、“0”)を算出する(ステップS73)。   Next, the control unit 11 calculates an offset position C_OFFSET (“0” when M = 1) of the M-th (first when M = 1) divided content data (step S73).

次いで、制御部11は、上記J番目のキーフレームが、M番目の分割コンテンツデータに含まれるか否かを判別する(ステップS74)。上記ステップS54と同様、具体的には、F0_OFFSET<C_OFFSET+C_SIZEを満たすか否かが判別される。   Next, the control unit 11 determines whether or not the J-th key frame is included in the M-th divided content data (step S74). As in step S54, specifically, it is determined whether or not F0_OFFSET <C_OFFSET + C_SIZE is satisfied.

上記J番目のキーフレームが、M番目の分割コンテンツデータに含まれない場合(つまり、F0_OFFSET<C_OFFSET+C_SIZEを満たさない場合)には(ステップS74:N)、制御部11は、“M”に“1”を加算した後、M番目の分割コンテンツデータのコンテンツIDを、所定の規則にしたがって先頭の分割コンテンツデータのコンテンツIDから算出し、(ステップS75)、ステップS73に戻る。   When the J-th key frame is not included in the M-th divided content data (that is, when F0_OFFSET <C_OFFSET + C_SIZE is not satisfied) (step S74: N), the control unit 11 sets “M”. After adding “1”, the content ID of the Mth divided content data is calculated from the content ID of the first divided content data according to a predetermined rule (step S75), and the process returns to step S73.

ここで、一単位のコンテンツデータを構成する複数の分割コンテンツデータのコンテンツIDを互いに規則性を持つように定めておけば、先頭の分割コンテンツデータ以外のコンテンツIDは、その分割コンテンツデータの先頭からの順番Mと、先頭の分割コンテンツデータのコンテンツIDと、を所定の関数に代入することによって算出することができる(簡単な例で言えば、先頭(M=1)のコンテンツIDに、M×A(Aは任意の値)を加算した値が、M番目(M≧2)の分割コンテンツデータのコンテンツIDとなる)。   Here, if the content IDs of a plurality of pieces of divided content data constituting one unit of content data are determined to have regularity, content IDs other than the first piece of divided content data are assigned from the beginning of the divided content data. Can be calculated by substituting the order M and the content ID of the first divided content data into a predetermined function (in a simple example, M × A value obtained by adding A (A is an arbitrary value) is the content ID of the Mth (M ≧ 2) divided content data).

そして、上記J番目のキーフレームが、M番目の分割コンテンツデータに含まれる場合(つまり、F0_OFFSET<C_OFFSET+C_SIZEを満たす場合)には(ステップS74:Y)、制御部11は、M番目の分割コンテンツデータのコンテンツID(最後に取得又は算出したコンテンツID)を、上記J番目のキーフレームに対応する分割コンテンツデータのコンテンツIDとして特定する(ステップS76)。   When the J-th key frame is included in the M-th divided content data (that is, when F0_OFFSET <C_OFFSET + C_SIZE is satisfied) (step S74: Y), the control unit 11 determines that the M-th divided content data. The content ID of the content data (the content ID acquired or calculated last) is specified as the content ID of the divided content data corresponding to the J-th key frame (step S76).

次いで、制御部11は、上記J番目のキーフレームのオフセット位置F_OFFSET(当該M番目の分割コンテンツデータの先頭からのオフセット位置)を算出(つまり、F_OFFSET=F0_OFFSET−C_OFFSETとなる)し(ステップS77)、当該算出したオフセット位置F_OFFSETと、上記ステップS71で取得したJ番目のキーフレームのデータサイズF_SIZEと、を当該J番目のキーフレームに対応するキーフレーム情報として特定する(ステップS78)。   Next, the control unit 11 calculates the offset position F_OFFSET (offset position from the beginning of the Mth divided content data) of the Jth key frame (that is, F_OFFSET = F0_OFFSET−C_OFFSET) (step S77). Then, the calculated offset position F_OFFSET and the data size F_SIZE of the J-th key frame acquired in step S71 are specified as key frame information corresponding to the J-th key frame (step S78).

以上説明したように、上記実施形態によれば、ユーザノードがユーザからのコンテンツデータの特殊再生指示に応じて、再生すべきキーフレームに対応するキーフレーム情報と、当該キーフレームが含まれる分割コンテンツデータのコンテンツIDと、をコンテンツカタログ情報に基づいて特定し、当該特定したキーフレーム情報及びコンテンツIDに基づいて当該キーフレームを、これを保存しているコンテンツ保持ノードから取得し、再生するようにしたので、一単位のコンテンツデータが、複数に分割され、その分割された分割コンテンツデータが複数のノードNnに跨って分散保存される場合であっても、特殊再生をスムーズに実行することができる。   As described above, according to the above-described embodiment, in response to a special reproduction instruction for content data from a user, a user node and key frame information corresponding to a key frame to be reproduced, and divided content including the key frame The content ID of the data is specified based on the content catalog information, and the key frame is acquired from the content holding node storing the key frame based on the specified key frame information and the content ID, and played back. Therefore, even when one unit of content data is divided into a plurality of pieces and the divided divided content data is distributed and stored across a plurality of nodes Nn, special playback can be executed smoothly. .

また、コンテンツカタログ情報は、コンテンツデータの再生以前に予め各ノードNnに配信されるので、キーフレーム情報等を直ぐに取り出すことができ、分割されたコンテンツデータに対して、特殊再生をより効率良く実行することができる。   In addition, since the content catalog information is distributed to each node Nn in advance before the reproduction of the content data, the key frame information and the like can be extracted immediately, and the special reproduction is more efficiently performed on the divided content data. can do.

なお、上記実施形態におけるコンテンツ分散保存システムSは、DHTを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。例えば、各ノードNnは特殊再生する際に、全ての分割コンテンツデータのコンテンツID(上述したようにハッシュ関数により求めるかどうかは問わない)及び当該コンテンツIDに対応するノード情報(つまり、当該コンテンツIDに対応するコンテンツデータを保存するコンテンツ保持ノードのIPアドレス及びポート番号)を管理する管理サーバに対して、コンテンツカタログ情報から特定したコンテンツIDを送信し、これに応じて当該管理サーバから当該コンテンツIDに対応するノード情報を取得し、そのコンテンツ保持ノードに対してキーフレームを要求するように構成しても良い。   In addition, although the content distributed storage system S in the said embodiment was demonstrated on the assumption that it was formed by the algorithm using DHT, this invention is not limited to this. For example, when special reproduction is performed, each node Nn has content IDs of all divided content data (whether or not it is determined by a hash function as described above) and node information corresponding to the content ID (that is, the content ID) The content ID specified from the content catalog information is transmitted to the management server that manages the IP address and port number of the content holding node that stores the content data corresponding to the content data, and the content ID is sent from the management server accordingly. It is also possible to obtain node information corresponding to, and to request a key frame from the content holding node.

本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。It is a figure which shows an example of the connection aspect of each node apparatus in the content distributed storage system which concerns on this embodiment. ノードN2が保持するDHTを用いたルーティングテーブルの一例を示す図である。It is a figure which shows an example of the routing table using DHT which node N2 hold | maintains. DHTのID空間の一例を示す概念図である。It is a conceptual diagram which shows an example of ID space of DHT. ユーザノードから送出されたコンテンツ所在問合せ(検索)メッセージの流れの一例を、DHTのID空間にて示した概念図である。It is the conceptual diagram which showed an example of the flow of the content location inquiry (search) message sent from the user node in ID space of DHT. コンテンツデータが分割され、各分割コンテンツデータ中の各キーフレームのキーフレーム情報等がコンテンツカタログ情報に記述される様子を示す概念図である。It is a conceptual diagram which shows a mode that content data is divided | segmented and the key frame information etc. of each key frame in each division | segmentation content data are described by content catalog information. 図5(A)の例の場合のコンテンツカタログ情報(構造例1)におけるデータ構造例を示す図である。FIG. 6 is a diagram illustrating a data structure example in content catalog information (structure example 1) in the case of the example of FIG. 図5(B)の例の場合のコンテンツカタログ情報(構造例2)におけるデータ構造例を示す図である。It is a figure which shows the data structural example in the content catalog information (structure example 2) in the case of the example of FIG. 5 (B). 図5(C)の例の場合のコンテンツカタログ情報(構造例3)におけるデータ構造例を示す図である。It is a figure which shows the example of a data structure in the content catalog information (structure example 3) in the case of the example of FIG.5 (C). 図6に示すコンテンツカタログ情報(構造例1)を用いて、早送り再生が行われる場合の様子を示す図である。It is a figure which shows a mode in case fast-forward reproduction | regeneration is performed using the content catalog information (structure example 1) shown in FIG. 図7に示すコンテンツカタログ情報(構造例2)を用いて、早送り再生が行われる場合の様子を示す図である。It is a figure which shows a mode in the case of fast-forward reproduction | regeneration using the content catalog information (structure example 2) shown in FIG. 図8に示すコンテンツカタログ情報(構造例3)を用いて、早送り再生が行われる場合の様子を示す図である。It is a figure which shows a mode in the case of fast-forward reproduction | regeneration using the content catalog information (structure example 3) shown in FIG. ノードNnの概要構成例を示す図である。It is a figure which shows the example of an outline structure of the node Nn. ノードNnの制御部11における早送り再生又は巻戻し再生処理を示すフローチャートである。It is a flowchart which shows the fast forward reproduction | regeneration or the rewind reproduction | regeneration processing in the control part 11 of the node Nn. ノードNnの制御部11におけるシーク(ジャンプ)再生処理を示すフローチャートである。It is a flowchart which shows the seek (jump) reproduction | regeneration processing in the control part 11 of the node Nn. 図6に示すコンテンツカタログ情報(構造例1)を用いた場合における、キーフレーム情報及びコンテンツID特定処理を示すフローチャートである。FIG. 7 is a flowchart showing key frame information and content ID specifying processing when the content catalog information (structure example 1) shown in FIG. 6 is used. 図7に示すコンテンツカタログ情報(構造例2)を用いた場合における、キーフレーム情報及びコンテンツID特定処理を示すフローチャートである。FIG. 8 is a flowchart showing key frame information and content ID specifying processing when the content catalog information (structure example 2) shown in FIG. 7 is used. 図8に示すコンテンツカタログ情報(構造例3)を用いた場合における、キーフレーム情報及びコンテンツID特定処理を示すフローチャートである。FIG. 9 is a flowchart showing key frame information and content ID identification processing when the content catalog information (structure example 3) shown in FIG. 8 is used.

符号の説明Explanation of symbols

8 ネットワーク
9 オーバーレイネットワーク
10 放送局装置
11 制御部
12 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
20 通信部
21 入力部
22 バス
Nn ノード
S コンテンツ分散保存システム
DESCRIPTION OF SYMBOLS 8 Network 9 Overlay network 10 Broadcast station apparatus 11 Control part 12 Memory | storage part 13 Buffer memory 14 Decoder part 15 Image | video processing part 16 Display part 17 Audio | voice processing part 18 Speaker 20 Communication part 21 Input part 22 Bus Nn node S Content distribution preservation | save system

Claims (8)

複数の画像フレームを含むコンテンツデータを複数に分割した分割コンテンツデータが、複数のノード装置に分散保存されたコンテンツ分散保存システムであって、各前記分割コンテンツデータには、固有の識別情報が割り当てられており、前記ノード装置は、前記識別情報に基づいて前記分割コンテンツデータを取得可能としたコンテンツ分散保存システムに含まれる前記ノード装置であって、
前記分割コンテンツデータは、前記画像フレーム内で圧縮が完結しているキーフレームと、前記画像フレーム間の差分情報が圧縮された差分データとを含み、
前記ノード装置は、
少なくとも一つの前記分割コンテンツデータの前記識別情報と、前記分割コンテンツデータ中の前記キーフレームの前記分割コンテンツデータ内の先頭からの位置を示す情報を含むキーフレーム情報と、が記述されるコンテンツカタログ情報をあらかじめ記憶する記憶手段と、
記コンテンツデータの特殊再生を示す指示を受け付ける指示受付手段と、
前記指示に応じて再生すべき前記キーフレーム前記キーフレーム情報と、前キーフレームが含まれる前記分割コンテンツデータの前記識別情報と、を前記コンテンツカタログ情報から取得する情報取得手段と、
前記取得された前記キーフレーム情報及び前記識別情報に対応する前記キーフレームを取得するフレーム取得手段と、
を備えることを特徴とするノード装置。
A content distributed storage system in which content data including a plurality of image frames is divided and stored in a plurality of node devices, and unique identification information is assigned to each of the divided content data and, before Symbol node device, a said node device included in the divided content distributed storage system in which data was capable of acquiring, based on the identification information,
The divided content data includes a key frame that is completely compressed in the image frame, and difference data in which difference information between the image frames is compressed,
The node device is
And the identification information of at least one of the divided content data, the content catalog and the key frame information including information indicating a position from the beginning of said divided content data of the key frame before Symbol in divided content data, it is described Storage means for storing information in advance ;
An instruction receiving means for receiving an indication of a special playback of pre-Symbol content data,
And said key frame information of said key frame to be reproduced in response to the instruction, the information obtaining means and the identification information of the divided content data that contains the pre-Symbol key frame, to get from the content catalog information,
A frame acquisition means for acquiring the key frames corresponding to the acquired said key frame information and the identification information,
A node device comprising:
請求項1に記載のノード装置において、
前記特殊再生を示す指示は、早送り再生、巻き戻し再生、及びシーク再生のうちの何れかを含む再生指示であることを特徴とするノード装置。
The node device according to claim 1,
The node device according to claim 1, wherein the instruction indicating the special reproduction is a reproduction instruction including any one of fast forward reproduction, rewind reproduction, and seek reproduction.
請求項1又は2に記載のノード装置において、
前記コンテンツカタログ情報、さらに前記分割コンテンツデータのデータサイズを示す情報が記述されており
前記キーフレーム情報には、さらに前記キーフレームデータサイズを示す情報が含まれており、
前記情報取得手段は、前記分割コンテンツデータのデータサイズを示す情報と、前記キーフレーム情報とに基づいて、前記再生すべき前記キーフレームが含まれる分割コンテンツデータを特定することを特徴とするノード装置。
The node device according to claim 1 or 2,
Wherein the content catalog information is described information indicating the data size of the divided content data to the al,
The key frame information further includes information indicating the data size of the key frame,
The information acquisition unit includes information indicating the data size of the divided content data, based on said key frame information, node and identifies the divided content data included the Keyframe said to be reproduced apparatus.
請求項1又は2に記載のノード装置において、
前記コンテンツカタログ情報は、前記分割コンテンツデータの前記識別情報と前記キーフレーム情報とは対応付けられていることを特徴とするノード装置。
The node device according to claim 1 or 2,
In the content catalog information , the identification information of the divided content data and the key frame information are associated with each other.
請求項1又は2に記載のノード装置において、
前記識別情報は、所定の規則に従って前記分割コンテンツデータに割り当てられ、
前記コンテンツカタログ情報は、先頭の前記分割コンテンツデータの前記識別情報を有しており、
前記情報取得手段は、前記先頭の分割コンテンツデータ以外の分割コンテンツデータの前記識別情報を、前記所定の規則にしたがって前記先頭の分割コンテンツデータの前記識別情報から算出することを特徴とするノード装置。
The node device according to claim 1 or 2,
The identification information is assigned to the divided content data according to a predetermined rule,
The content catalog information has the identification information of the head the divided content data,
The node device characterized in that the information acquisition means calculates the identification information of divided content data other than the first divided content data from the identification information of the first divided content data according to the predetermined rule.
コンピュータを、請求項1乃至5の何れか一項に記載のノード装置として機能させることを特徴とするノード処理プログラム。   A node processing program for causing a computer to function as the node device according to any one of claims 1 to 5. 複数の画像フレームを含むコンテンツデータを複数に分割した分割コンテンツデータが、複数のノード装置に分散保存されたコンテンツ分散保存システムであって、各前記分割コンテンツデータには、固有の識別情報が割り当てられており、前記ノード装置は、前記識別情報に基づいて前記分割コンテンツデータを取得可能としたコンテンツ分散保存システムにおけるフレーム取得方法であって、
前記分割コンテンツデータは、前記画像フレーム内で圧縮が完結しているキーフレームと、前記画像フレーム間の差分情報が圧縮された差分データとを含み、
前記ノード装置は、
少なくとも一つの前記分割コンテンツデータの前記識別情報と、前記分割コンテンツデータ中の前記キーフレームの前記分割コンテンツデータ内の先頭からの位置を示す情報を含むキーフレーム情報と、が記述されるコンテンツカタログ情報をあらかじめ記憶する記憶手段を備え、
前記フレーム取得方法は、
前記ノード装置が、前記コンテンツデータの特殊再生を示す指示を受け付ける工程と、
前記ノード装置が、前記指示に応じて再生すべき前記キーフレーム前記キーフレーム情報と、前記キーフレームが含まれる前記分割コンテンツデータの前記識別情報と、を前記コンテンツカタログ情報から取得する工程と、
前記ノード装置が、前記取得された前記キーフレーム情報及び前記識別情報に対応する前記キーフレームを取得する工程と、
含むことを特徴とするフレーム取得方法。
A content distributed storage system in which content data including a plurality of image frames is divided and stored in a plurality of node devices, and unique identification information is assigned to each of the divided content data and, before Symbol node apparatus, a frame acquisition method in can and the content distributed storage system obtains the divided content data based on said identification information,
The divided content data includes a key frame that is completely compressed in the image frame, and difference data in which difference information between the image frames is compressed,
The node device is
And the identification information of at least one of the divided content data, the content catalog and the key frame information including information indicating a position from the beginning of said divided content data of the key frame before Symbol in divided content data, it is described Comprising storage means for storing information in advance ;
The frame acquisition method includes:
Said node apparatus, a step of receiving an indication of special playback before Symbol content data,
Said node apparatus, a step of acquiring and said key frame information of said key frame to be reproduced in response to the instruction, the identification information of the divided content data containing the key frame, from the content catalog information ,
A step of the node device acquires the key frames corresponding to the acquired said key frame information and the identification information,
Frame acquisition method characterized by comprising a.
複数の画像フレームを含むコンテンツデータを複数に分割した分割コンテンツデータが、複数のノード装置に分散保存されたコンテンツ分散保存システムであって、各前記分割コンテンツデータには、固有の識別情報が割り当てられており、前記ノード装置は、前記識別情報に基づいて前記分割コンテンツデータを取得可能としたコンテンツ分散保存システムであって、
前記分割コンテンツデータは、前記画像フレーム内で圧縮が完結しているキーフレームと、前記画像フレーム間の差分情報が圧縮された差分データとを含み、
前記ノード装置は、
少なくとも一つの前記分割コンテンツデータの前記識別情報と、前記分割コンテンツデータ中の前記キーフレームの前記分割コンテンツデータ内の先頭からの位置を示す情報を含むキーフレーム情報と、が記述されるコンテンツカタログ情報をあらかじめ記憶する記憶手段と、
記コンテンツデータの特殊再生を示す指示を受け付ける指示受付手段と、
前記指示に応じて再生すべき前記キーフレーム前記キーフレーム情報と、前記キーフレームが含まれる前記分割コンテンツデータの前記識別情報と、を前記コンテンツカタログ情報から取得する情報取得手段と、
前記取得された前記キーフレーム情報及び前記識別情報に対応する前記キーフレームを取得するフレーム取得手段と、
を備えることを特徴とするコンテンツ分散保存システム。
A content distributed storage system in which content data including a plurality of image frames is divided and stored in a plurality of node devices, and unique identification information is assigned to each of the divided content data and, before Symbol node device, the divided content data a distributed storage system which enables acquires based on the identification information,
The divided content data includes a key frame that is completely compressed in the image frame, and difference data in which difference information between the image frames is compressed,
The node device is
And the identification information of at least one of the divided content data, co and key frame information including information indicating a position from the beginning of said divided content data of the key frame in front Symbol divided content data, are described content Storage means for storing catalog information in advance ;
An instruction receiving means for receiving an indication of a special playback of pre-Symbol content data,
And said key frame information of said key frame to be reproduced in response to the instruction, the information acquiring means for acquiring said identification information of said divided content data containing the key frame, from the content catalog information,
A frame acquisition means for acquiring the key frames corresponding to the acquired said key frame information and the identification information,
A content distributed storage system comprising:
JP2006224485A 2006-08-21 2006-08-21 Content distributed storage system, frame acquisition method, node device, etc. Expired - Fee Related JP4821499B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006224485A JP4821499B2 (en) 2006-08-21 2006-08-21 Content distributed storage system, frame acquisition method, node device, etc.
PCT/JP2007/064687 WO2008023531A1 (en) 2006-08-21 2007-07-26 Contents dispersive-saving system, frame image acquiring method, node device, and memory medium including node processing program stored therein
US12/292,144 US8738685B2 (en) 2006-08-21 2008-11-12 Content distributed-storage system, frame image obtaining method, node device, and recording medium on which node processing program is recorded

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006224485A JP4821499B2 (en) 2006-08-21 2006-08-21 Content distributed storage system, frame acquisition method, node device, etc.

Publications (2)

Publication Number Publication Date
JP2008048350A JP2008048350A (en) 2008-02-28
JP4821499B2 true JP4821499B2 (en) 2011-11-24

Family

ID=39181617

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006224485A Expired - Fee Related JP4821499B2 (en) 2006-08-21 2006-08-21 Content distributed storage system, frame acquisition method, node device, etc.

Country Status (1)

Country Link
JP (1) JP4821499B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107835080A (en) * 2017-11-09 2018-03-23 成都国盛天丰网络科技有限公司 A kind of distributed system method of data capture and data signature generation method

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4821501B2 (en) * 2006-08-21 2011-11-24 ブラザー工業株式会社 Content distributed storage system, frame acquisition method, node device, etc.
JP4821500B2 (en) * 2006-08-21 2011-11-24 ブラザー工業株式会社 Content distributed storage system, frame acquisition method, node device, etc.
MX2011006973A (en) * 2008-12-31 2011-12-06 Apple Inc Method for streaming multimedia data over a non-streaming protocol.
JP5353567B2 (en) * 2009-08-31 2013-11-27 ブラザー工業株式会社 Information processing system, information processing apparatus, node apparatus, program, and information processing method
JP5293671B2 (en) * 2010-03-31 2013-09-18 ブラザー工業株式会社 Information communication system, node device, information processing method, and program
JP5234041B2 (en) * 2010-03-31 2013-07-10 ブラザー工業株式会社 Information communication system, node device, information processing method, and program for node device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4244492B2 (en) * 2000-03-24 2009-03-25 ソニー株式会社 Information processing apparatus, information distribution system, information processing method, and recording medium
US7552387B2 (en) * 2003-04-30 2009-06-23 Hewlett-Packard Development Company, L.P. Methods and systems for video content browsing
JP3847764B2 (en) * 2004-11-12 2006-11-22 オンキヨー株式会社 Network type content playback system
JP2006178782A (en) * 2004-12-22 2006-07-06 Fuji Xerox Co Ltd Information processing method, delivery information processing method, delivery information processing program and delivery processor
JP4821501B2 (en) * 2006-08-21 2011-11-24 ブラザー工業株式会社 Content distributed storage system, frame acquisition method, node device, etc.
JP4821500B2 (en) * 2006-08-21 2011-11-24 ブラザー工業株式会社 Content distributed storage system, frame acquisition method, node device, etc.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107835080A (en) * 2017-11-09 2018-03-23 成都国盛天丰网络科技有限公司 A kind of distributed system method of data capture and data signature generation method

Also Published As

Publication number Publication date
JP2008048350A (en) 2008-02-28

Similar Documents

Publication Publication Date Title
US8738685B2 (en) Content distributed-storage system, frame image obtaining method, node device, and recording medium on which node processing program is recorded
JP4821499B2 (en) Content distributed storage system, frame acquisition method, node device, etc.
US7882168B2 (en) Contents distribution system, node apparatus and information processing method thereof, as well as recording medium on which program thereof is recorded
US8134937B2 (en) Distributed content storage system, content storage method, node device, and node processing program
JP2008234445A (en) Content distributed storage system, duplicate data acquisition method, node device, and node processing program
JP2006191489A (en) Node device, network participation processing program, and network participation processing method or the like
JP2007200203A (en) Information distribution system, re-registration message transmission method, node device, and node processing program
JP4821500B2 (en) Content distributed storage system, frame acquisition method, node device, etc.
JP4821501B2 (en) Content distributed storage system, frame acquisition method, node device, etc.
JP4305717B2 (en) Information processing apparatus and method, recording medium, and program
JP2010113573A (en) Content distribution storage system, content storage method, server device, node device, server processing program and node processing program
JP2011124940A (en) Distribution system, node device, information processor, node program, and advertising content reproducing method
JP5375272B2 (en) Node device, node processing program, information communication system, and content data management method
JP4623030B2 (en) Tree-type broadcasting system, connection destination determination method, connection management device, connection management processing program, etc.
JP2009232272A (en) Content distributive storage system, content playback method, node device, management apparatus, node-processing program, and management processing program
JP4935734B2 (en) Content distributed storage system, node device, node processing program, and node processing method
JP2010108082A (en) Content distribution storage system, content storage method, node device, and node processing program
JP5359728B2 (en) Karaoke system, karaoke device, node device, karaoke program, node program, and karaoke data transmission method
JP5412924B2 (en) Node device, node processing program, and content data deletion method
JP2008135952A (en) Tree type content broadcasting system, content catalog information generation method, and node device or the like
JP2008236538A (en) Tree type broadcast system, method for broadcasting content, broadcast management apparatus, and broadcast management processing program
JP5007624B2 (en) Content distributed storage system, content data acquisition method, node device, and node processing program
JP2011160052A (en) Information communication system, node device, information communication method, and information communication program
JP2008310621A (en) Content distribution storage system, content data acquisition method, node device and node processing program
JP2010238160A (en) Node device, node processing program, and content data storage method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110517

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110713

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110822

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees