JP2011008657A - Content distribution system, node device, content distribution method, and node program - Google Patents
Content distribution system, node device, content distribution method, and node program Download PDFInfo
- Publication number
- JP2011008657A JP2011008657A JP2009153312A JP2009153312A JP2011008657A JP 2011008657 A JP2011008657 A JP 2011008657A JP 2009153312 A JP2009153312 A JP 2009153312A JP 2009153312 A JP2009153312 A JP 2009153312A JP 2011008657 A JP2011008657 A JP 2011008657A
- Authority
- JP
- Japan
- Prior art keywords
- content
- node
- node device
- time
- acquired
- 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.)
- Pending
Links
- 238000009826 distribution Methods 0.000 title claims abstract description 79
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000003860 storage Methods 0.000 claims description 107
- 230000005540 biological transmission Effects 0.000 claims description 54
- 238000012546 transfer Methods 0.000 claims description 9
- 230000006854 communication Effects 0.000 abstract description 28
- 238000004891 communication Methods 0.000 abstract description 26
- 238000004904 shortening Methods 0.000 abstract description 2
- 238000012217 deletion Methods 0.000 description 23
- 230000037430 deletion Effects 0.000 description 23
- 238000012545 processing Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】上位のノード装置への通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることを可能とする配信システム、ノード装置、配信方法及びプログラムを提供する。
【解決手段】ノード装置のいずれかからコンテンツを取得する時刻を示す時刻情報を取得し、時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索し、検索されたノード装置から所定のコンテンツを取得し、取得されたコンテンツを記憶し、記憶されたコンテンツが他のノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信し、コンテンツが送信されてから所定の条件を満たしたか否かを判定し、所定の条件が満たされたと判定されたとき、記憶されたコンテンツが他のノード装置により取得されることを禁止する。
【選択図】図3A distribution system, a node device, a distribution method, and a program capable of shortening the time required for content distribution as a whole without increasing a communication load on a higher-level node device.
Time information indicating a time at which content is acquired from any one of node devices is acquired, a node device storing predetermined content is searched according to the time indicated by the time information, and the searched node A predetermined content is acquired from the device, the acquired content is stored, and when the stored content is retrieved from another node device, the content is transmitted to the other node device, and the content is transmitted. It is determined whether or not a predetermined condition is satisfied, and when it is determined that the predetermined condition is satisfied, the stored content is prohibited from being acquired by another node device.
[Selection] Figure 3
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)という)を利用して効率良く検索可能になっている。
In recent years, a peer-to-peer communication system has attracted attention as a new form that replaces the server client system, which is the mainstream form of current content distribution. In this type of peer-to-peer communication system, replica data of a plurality of contents (hereinafter referred to as “replicas”) is distributed and stored (arranged) in a plurality of node devices so that replicas can be used between the node devices. A distributed content storage system is known. This improves fault tolerance and access dispersibility. The location of the replicas thus distributed and stored can be efficiently searched using a distributed hash table (hereinafter referred to as DHT (Distributed Hash Table)) as disclosed in, for example,
このようなコンテンツ分散保存システムにおいて、各ノード装置は、夫々DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システム上における各種メッセージの転送先を規定している。また、各ノード装置は、夫々コンテンツ分散保存システムに参加しているノーどのうち必要最低限のノードについての情報をルーティングテーブルに登録している。そして、ルーティングテーブルに情報が登録されていないノード装置にメッセージを送る際には、各ノード装置間でメッセージを転送して合って目的のノード装置に届けられるようになっている。 In such a distributed content storage system, each node device holds a routing table using DHT. This routing table defines various message transfer destinations on the distributed content storage system. In addition, each node device registers information on the minimum necessary nodes among the nodes participating in the distributed content storage system in the routing table. When a message is sent to a node device whose information is not registered in the routing table, the message is transferred between the node devices and delivered to the target node device.
特許文献1には、DHTを利用して、各ノード装置に対してコンテンツを(レプリカとして)効率的に配信する技術が開示されている。具体的に、或るノード装置が、自身で保持しているルーティングテーブルにネットワークアドレス等の情報が登録されている複数のノード装置に対してコンテンツを送信する。コンテンツを受信した各ノード装置は、同様に自身で保持しているルーティングテーブルに情報が登録されている複数のノード装置に対してコンテンツを転送する。このようにして、コンテンツが次々とプッシュ式に転送されていくことにより、最初にコンテンツを送信したノードを頂点として、ツリー上の配信経路を経て、コンテンツが各ノード装置にまんべんなく配信されるのである。また、この配信経路は各ノード装置のルーティングテーブルに登録されている情報により予め或る程度決まっているともいえる。
上述したコンテンツ配信では、図9に示すように、配信経路の上位に位置するノード装置から下位に位置するノード装置へ、各ノード装置N1〜ノード装置N7が受信したコンテンツを順次別のノード装置へ取得させるのが望ましい。ここで、上位に位置するノード装置とは、コンテンツを取得する時期が、配信経路上に位置するノード装置全体から見て相対的に早いノード装置をいう。図9の例では、ノード装置N2が受信したコンテンツαを、ノード装置N4へ取得させている。また、ノード装置N1が受信したコンテンツβを、ノード装置N2へ取得させている。図9のように、受信したコンテンツを順次別の端末へ取得させることで、理想的な階層型の配信形態を取ることができる。しかしながら、実際のピアツーピア型の通信システムでは、図9のノードN4から見ると、サーバSAとノード装置N1とノード装置N2とノード装置N3とが、コンテンツαの取得候補先である。この場合、取得先として、ノード装置N2又はノード装置N3が選択されることが望ましい。しかし、ノード装置N1が取得先として選択される可能性がある。ノード装置N1が取得先として選択された場合、ノード装置N1は、受信したコンテンツβをノード装置N2及びノード装置N3に取得させる処理も行っている。従って、ノード装置N1は、ノード装置N2及びノード装置N3にコンテンツを取得されるという従来の通信処理に加え、ノード装置N4へコンテンツを取得させる通信処理も担うこととなる。この結果、配信経路の上位に位置するノード装置への通信負荷が高くなることで、コンテンツの配信完了に必要な時間が大きく遅延する恐れがあった。 In the content distribution described above, as shown in FIG. 9, the content received by each of the node devices N1 to N7 is sequentially transferred from the node device positioned higher in the distribution path to the node device positioned lower than the node device. It is desirable to get it. Here, the node device located at the upper level refers to a node device whose content is acquired relatively early as viewed from the entire node device located on the distribution path. In the example of FIG. 9, the content α received by the node device N2 is acquired by the node device N4. Also, the content β received by the node device N1 is acquired by the node device N2. As shown in FIG. 9, an ideal hierarchical distribution form can be taken by sequentially acquiring the received content to another terminal. However, in the actual peer-to-peer communication system, when viewed from the node N4 in FIG. 9, the server SA, the node device N1, the node device N2, and the node device N3 are acquisition candidates for the content α. In this case, it is desirable to select the node device N2 or the node device N3 as the acquisition destination. However, there is a possibility that the node device N1 is selected as the acquisition destination. When the node device N1 is selected as an acquisition destination, the node device N1 also performs processing for causing the node device N2 and the node device N3 to acquire the received content β. Therefore, in addition to the conventional communication process in which the node device N2 and the node device N3 acquire content, the node device N1 is also responsible for a communication process that causes the node device N4 to acquire content. As a result, the communication load on the node device located at the upper level of the distribution route is increased, and there is a possibility that the time required for completing the distribution of the content is greatly delayed.
本発明は、以上の点に鑑みてなされたものである。本発明の目的は、上述した配信形態を用いる場合であっても、上位のノード装置への通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることを可能とする配信システム、ノード装置、配信方法及びプログラムを提供することである。 The present invention has been made in view of the above points. An object of the present invention is to provide a distribution system capable of shortening the time required for content distribution as a whole without increasing the communication load on a higher-level node device even when the distribution mode described above is used. It is to provide a node device, a distribution method, and a program.
上記課題を解決するために、請求項1に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置間でコンテンツの送受信が可能なコンテンツ配信システムにおけるノード装置のいずれかからコンテンツを取得する時刻を示す時刻情報を取得する取得手段と、前記取得手段により取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索手段と、前記検索手段により検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得手段と、前記コンテンツ取得手段により取得されたコンテンツを記憶する記憶手段と、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信手段と、前記コンテンツ送信手段により前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定手段と、前記判定手段により、前記所定の条件が満たされたと判定されたとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手段と、を備えることを特徴とする。 In order to solve the above-described problem, the invention according to claim 1 acquires content from one of node devices in a content distribution system capable of transmitting and receiving content between a plurality of node devices that can communicate with each other via a network. An acquisition unit that acquires time information indicating a time to perform, a search unit that searches for a node device that stores predetermined content according to the time indicated by the time information acquired by the acquisition unit, and the search unit A content acquisition unit that acquires the predetermined content from the searched node device, a storage unit that stores the content acquired by the content acquisition unit, and a content stored in the storage unit is another node device. Content searcher that transmits the content to the other node device when searched from And determining means for determining whether or not a predetermined condition is satisfied after the content is transmitted by the content transmitting means; and when the determining means determines that the predetermined condition is satisfied, And a prohibiting unit that prohibits the content stored in the unit from being acquired by another node device.
この発明によれば、所定の条件が満たされたときに、取得されたコンテンツが他のノード装置により取得されることが禁止される。よって、上位のノード装置への通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることができる。 According to the present invention, when a predetermined condition is satisfied, the acquired content is prohibited from being acquired by another node device. Therefore, the time required for content distribution as a whole can be shortened without increasing the communication load on the upper node device.
請求項2に記載の発明は、請求項1に記載のノード装置において、前記判定手段は、前記所定の条件として、コンテンツを送信した送信回数が所定の回数に達したか否かを判定し、前記禁止手段は、前記判定手段により、コンテンツを送信した送信回数が所定の回数に達したと判定されたとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置に取得されることを禁止することを特徴とする。 According to a second aspect of the present invention, in the node device according to the first aspect, the determination unit determines whether the number of transmissions of the content has reached a predetermined number as the predetermined condition, The prohibiting means determines that the content stored in the storage means is acquired by another node device when the determining means determines that the number of transmissions of the content has reached a predetermined number. It is characterized by prohibition.
この発明によれば、所定の回数を超えるコンテンツの送信は行われないので、多数のノード装置からコンテンツを要求されることにより上位のノード装置にコンテンツ送信の負荷が集中してしまうことを防止することができる。よって、全体としてのコンテンツ配信にかかる時間をより短くすることができる。 According to the present invention, content is not transmitted more than a predetermined number of times, so that content transmission load is not concentrated on a higher-level node device when content is requested from a large number of node devices. be able to. Therefore, the time required for content distribution as a whole can be further shortened.
請求項3に記載の発明は、請求項1に記載のノード装置において、前記判定手段は、前記所定の条件として、前記コンテンツ送信手段によりコンテンツが送信されてから、所定の時間が経過したか否かを判定し、前記禁止手段は、前記判定手段により、コンテンツが送信されてから所定の時間が経過したと判定したとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置に取得されることを禁止することを特徴とする。 According to a third aspect of the present invention, in the node device according to the first aspect, the determination unit determines whether or not a predetermined time has elapsed since the content transmission unit transmitted the content as the predetermined condition. When the determination unit determines that a predetermined time has elapsed since the content was transmitted, the content stored in the storage unit is acquired by the other node device. It is prohibited to do so.
この発明によれば、所定の時間が経過した後、コンテンツの送信は行われないので、上位のノード装置への通信負荷が高なることを確実に防止することができる。 According to the present invention, since the content is not transmitted after a predetermined time has elapsed, it is possible to reliably prevent an increase in the communication load on the higher-level node device.
請求項4に記載の発明は、請求項1から請求項3の何れか1項に記載のノード装置において、前記禁止手段により、他の前記ノード装置による取得を禁止されてから所定の時間か経過したか否かを判定する時間判定手段と、前記時間判定手段により、取得を禁止されてから所定の時間が経過したと判定されたとき、前記他のノード装置による取得の禁止を解除する解除手段と、を更に備えることを特徴とする。 According to a fourth aspect of the present invention, in the node device according to any one of the first to third aspects, a predetermined time elapses after the prohibition unit prohibits acquisition by another node device. A time determination unit that determines whether or not the acquisition has been performed, and a release unit that cancels the prohibition of acquisition by the other node device when the time determination unit determines that a predetermined time has elapsed since the acquisition was prohibited. And further comprising.
この発明によれば、コンテンツの取得が禁止された後、所定の時間が経過するとコンテンツの取得が可能となる。よって、コンテンツ配信時にコンテンツを取得していなかったノード装置が後でコンテンツを取得することができる。 According to the present invention, it is possible to acquire content when a predetermined time elapses after content acquisition is prohibited. Therefore, the node device that has not acquired the content at the time of distributing the content can acquire the content later.
請求項5に記載の発明は、請求項1から請求項4の何れか1項に記載のノード装置において、前記記憶手段にコンテンツが記憶されたことを示すパブリッシュメッセージを、前記記憶手段により前記コンテンツを記憶しているノード装置の所在を示す所在情報を記憶するノード装置へ、当該所在情報を含めて送信するメッセージ送信手段と、前記検索手段により検索されたノード装置の前記所在情報に基づいて、前記検索されたノード装置へコンテンツの送信を要求する要求手段と、を更に備え、前記検索手段は、前記所定のコンテンツを記憶しているノード装置の前記所在情報を記憶するノード装置から、当該所定のコンテンツを記憶しているノード装置を検索し、前記コンテンツ送信手段は、他の前記ノード装置から要求されたコンテンツを当該他のノード装置に送信し、前記禁止手段は、前記判定手段により、前記所定の条件が満たされたと判定されたとき、前記記憶手段により前記コンテンツを記憶しているノード装置の前記所在情報を記憶するノード装置へ、前記判定手段により前記所定の条件が満たされたと判定されたコンテンツが他の前記ノード装置により取得されることを禁止する指令を送信することを特徴とする。 According to a fifth aspect of the present invention, in the node device according to any one of the first to fourth aspects, a publish message indicating that the content is stored in the storage unit is sent to the content by the storage unit. Based on the location information of the node device searched by the search means, message transmitting means for transmitting the location information including the location information to the node device storing the location information indicating the location of the node device storing Requesting means for requesting transmission of content to the searched node device, wherein the searching means receives the predetermined information from the node device storing the location information of the node device storing the predetermined content. The content transmission means searches for the content requested by the other node device. To the other node device, and when the determination unit determines that the predetermined condition is satisfied by the determination unit, the location information of the node device storing the content by the storage unit An instruction for prohibiting the content that is determined by the determination means to satisfy the predetermined condition from being acquired by another node device is transmitted to the node device that stores the information.
この発明によれば、ノード装置がコンテンツを記憶しつつ当該コンテンツの取得が禁止されるので、その後必要なときにコンテンツを再度取得可能にすることができる。 According to the present invention, since the node device is prohibited from acquiring the content while storing the content, the content can be acquired again when necessary thereafter.
請求項6に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置間でコンテンツの送受信が可能なコンテンツ配信システムにおけるノード装置のいずれかからコンテンツを取得する時刻を示す時刻情報を取得する取得ステップと、前記取得ステップにおいて取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索ステップと、前記検索ステップにおいて検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得ステップと、前記コンテンツ取得ステップにおいて取得されたコンテンツを記憶する記憶ステップと、前記記憶ステップにおいて記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信ステップと、前記コンテンツ送信ステップにおいて前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定ステップと、前記判定ステップにおいて、前記所定の条件が満たされたと判定されたとき、前記記憶ステップにより記憶されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手ステップと、を含むことを特徴とする。
The invention according to
請求項7に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置間でコンテンツの送受信が可能なコンテンツ配信システムにおけるノード装置のいずれかからコンテンツを取得する時刻を示す時刻情報を取得する取得ステップと、前記取得ステップにおいて取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索ステップと、前記検索ステップにおいて検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得ステップと、前記コンテンツ取得ステップにおいて取得されたコンテンツを記憶する記憶ステップと、前記記憶ステップにおいて記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信ステップと、前記コンテンツ送信ステップにおいて前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定ステップと、前記判定ステップにより、前記所定の条件が満たされたと判定されたとき、前記コンテンツ送信ステップにおいて送信されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手ステップと、をコンピュータに実現させる。 The invention according to claim 7 acquires time information indicating a time at which content is acquired from one of node devices in a content distribution system capable of transmitting and receiving content between a plurality of node devices that can communicate with each other via a network. An acquisition step, a search step of searching for a node device storing predetermined content according to a time indicated by the time information acquired in the acquisition step, and the node device searched in the search step, A content acquisition step for acquiring predetermined content, a storage step for storing the content acquired in the content acquisition step, and the content stored in the storage step when the content is retrieved from another node device. To the other node device A content transmission step, a determination step for determining whether or not a predetermined condition is satisfied after the content was transmitted in the content transmission step, and when the determination step determines that the predetermined condition is satisfied The computer implements a prohibition step for prohibiting the content transmitted in the content transmission step from being acquired by another node device.
請求項8に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置間でコンテンツの送受信が可能なコンテンツ配信システムにおけるノード装置のいずれかからコンテンツを取得する時刻を示す時刻情報を取得する取得手段と、前記取得手段により取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索手段と、前記検索手段により検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得手段と、前記コンテンツ取得手段により取得されたコンテンツを記憶する記憶手段と、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信手段と、前記コンテンツ送信手段により前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定手段と、前記判定手段により、前記所定の条件が満たされたと判定されたとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手段と、を備えることを特徴とする。
The invention according to
本発明によれば、所定の条件が満たされたときに、取得されたコンテンツが他のノード装置により取得されることが禁止される。よって、上位のノード装置への通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることができる。 According to the present invention, when a predetermined condition is satisfied, the acquired content is prohibited from being acquired by another node device. Therefore, the time required for content distribution as a whole can be shortened without increasing the communication load on the upper node device.
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. The embodiment described below is an embodiment when the present invention is applied to a content distributed storage system.
[1.第1実施形態]
[1.1 コンテンツ分散保存システムの構成及び動作概要]
始めに、図1等を参照して、本発明の第1実施形態に係るコンテンツ分散保存システムの構成及び動作概要について説明する。
[1. First Embodiment]
[1.1 Configuration and operation overview of distributed content storage system]
First, with reference to FIG. 1 etc., the structure and the operation | movement outline | summary of the content distributed storage system which concern on 1st Embodiment of this invention are demonstrated.
図1は、本実施形態に係るコンテンツ分散保存システムSにおける各ノード装置の接続態様の一例を示す図である。 FIG. 1 is a diagram showing an example of a connection mode of each node device in the content distributed storage system S according to the present embodiment.
図1の下部枠101内に示すように、分散保存システムSは、複数のノード装置Nnがインターネットを介して接続されることで構成される。また、図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が構築されている。ネットワーク8は、現実世界の通信ネットワークである。なお、図1の例におけるネットワーク8には、データパケットを転送するためのルータが適宜挿入されているが、図1では図示を省略している。なお、通信回線7としては、例えば、電話回線や光ケーブル等が用いられる。
As shown in the
このようなネットワーク8には、複数のノード装置Nn(n=1,2,3・・・の何れか)が接続されている。以下、ノード装置は、「ノード」という。また、各ノードNnには、固有の製造番号及びIP(Internet Protocol)アドレスが割り当てられている。そして、本実施形態に係るコンテンツ分散保存システムSは、これらのノードNnのうち、図1の上部枠100内に示すように、何れか複数のノードNnの接続により形成されるピアツーピア方式のネットワークシステムとなっている。各ノードNnは、本実施形態においては複数の拠点に分散配置された拠点サーバである。
A plurality of node devices Nn (n = 1, 2, 3,...) Are connected to such a
なお、図1の上部枠100内に示すネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク9である。論理的なネットワークであるオーバーレイネットワーク9は、特定のアルゴリズム、例えば、DHTを利用したアルゴリズムにより実現される。そして、コンテンツ分散保存システムSに接続されている各ノードNnには、所定桁数からなる固有の識別情報であるノードIDが割り当てられている。
The network 9 shown in the upper frame 100 of FIG. 1 is an overlay network 9 that configures a virtual link formed using the existing
また、ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数によりハッシュ化した値である。ノードIDは、ID空間に偏りなく分散して配置されることになる。ハッシュ関数としては、例えば、SHA−1等が用いられる。また、ハッシュ化した値は、例えば、bit長が160bitとなる。そして、このノードIDは、ID空間に偏りなく分散して配置されることになる。 The node ID is, for example, a value obtained by hashing an IP address or manufacturing number individually assigned to each node Nn using a common hash function. The node IDs are arranged in a distributed manner in the ID space. For example, SHA-1 or the like is used as the hash function. The hashed value has a bit length of 160 bits, for example. The node IDs are distributed in the ID space without being distributed.
なお、コンテンツ分散保存システムSへの接続は、接続していないノードNn、例えば、ノードN8が、接続している任意のノードNnに対してコンテンツ分散保存システムへの参加要求を示す参加メッセージを送信することによって行われる。コンテンツ分散保存システムSへの参加とは、ノード装置Nnが分散保存システムSに接続され、分散保存システムSからコンテンツデータを取得可能になることである。任意のノードNnは、例えば、システムSに常時接続しているコンタクトノードである。 In connection with the content distributed storage system S, a node Nn that is not connected, for example, the node N8 transmits a participation message indicating a request to participate in the content distributed storage system to any connected node Nn. Is done by doing. The participation in the content distributed storage system S means that the node device Nn is connected to the distributed storage system S and content data can be acquired from the distributed storage system S. The arbitrary node Nn is, for example, a contact node that is always connected to the system S.
また、各ノードNnは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定している。具体的に、このルーティングテーブルには、ID空間内で適度に離れたノードNnのノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。なお、ノード情報は、本発明における所在情報の一例である。 Each node Nn holds a routing table using DHT. This routing table defines the transfer destinations of various messages on the content distributed storage system S. Specifically, a plurality of pieces of node information including node IDs, IP addresses, and port numbers of nodes Nn that are moderately separated in the ID space are registered in this routing table. The node information is an example of location information in the present invention.
コンテンツ分散保存システムSに接続している1台のノードは、必要最低限のノードNnのノード情報をルーティングテーブルとして記憶している。各ノードNn間で互いに各種メッセージが転送されることで、ノード情報を記憶していないノードNnについてのノード情報が取得される。 One node connected to the content distributed storage system S stores the minimum necessary node information of the node Nn as a routing table. By transferring various messages between the nodes Nn, node information about the node Nn that does not store node information is acquired.
このようなDHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。 Such a routing table using DHT is well known in Japanese Patent Application Laid-Open No. 2006-197400 and the like, and will not be described in detail.
コンテンツ分散保存システムSは、内容の異なる様々なコンテンツデータのレプリカを所定のファイル形式で複数のノードNnに分散して保存する。以下、コンテンツデータは、「コンテンツ」という。そして、各ノードNn間でレプリカが利用可能になっている。各コンテンツのオリジナルはセンターサーバSAに保存されている。例えば、ノードN5には、タイトルがXXXの映画のコンテンツのレプリカが保存されている。一方、ノードN3には、タイトルがYYYの映画のコンテンツのレプリカが保存される。このように、複数のノードNnに分散されて保存されている。以下、コンテンツのレプリカが保存されるノードNは、「コンテンツ保持ノード」という。 The content distributed storage system S stores various content data replicas having different contents in a predetermined file format in a distributed manner in a plurality of nodes Nn. Hereinafter, the content data is referred to as “content”. A replica can be used between the nodes Nn. The original of each content is stored in the center server SA. For example, a replica of the content of a movie with the title XXX is stored in the node N5. On the other hand, a replica of the movie content whose title is YYY is stored in the node N3. In this way, it is distributed and stored in a plurality of nodes Nn. Hereinafter, the node N in which the content replica is stored is referred to as a “content holding node”.
上述のコンテンツのレプリカには、夫々、コンテンツ名及びコンテンツ毎に固有の識別情報であるコンテンツID等の情報が付加されている。このコンテンツIDは、例えば、コンテンツ名+任意の数値が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される。或いは、システム管理者が、コンテンツ毎に一意のID値を付与しても良い。 Information such as a content name and content ID, which is unique identification information for each content, is added to each content replica described above. This content ID is generated, for example, by hashing the content name + an arbitrary numerical value with a hash function common to the case of obtaining the node ID. Alternatively, the system administrator may give a unique ID value for each content.
分散保存されているコンテンツのレプリカの所在は、インデックス情報として、コンテンツのレプリカの所在を管理(記憶)しているノードNn等により記憶される。以下、レプリカの所在を管理(記憶)しているノードNnは、「ルートノード」という。インデックス情報は、レプリカを保存したノードNnのノード情報と、コンテンツのコンテンツIDと等の組を含む。このようなルートノードは、例えば、コンテンツIDと最も近いノードIDを有するノードNnであるように定められる。コンテンツIDと最も近いノードIDとは、例えば、IDの上位桁が最も多く一致するノードIDである。 The location of the content replicas that are distributed and stored is stored as index information by the node Nn or the like that manages (stores) the location of the content replicas. Hereinafter, the node Nn that manages (stores) the location of the replica is referred to as a “root node”. The index information includes a set of node information of the node Nn that stores the replica, a content ID of the content, and the like. Such a root node is determined to be a node Nn having a node ID closest to the content ID, for example. The node ID closest to the content ID is, for example, the node ID with the highest number of upper digits that match.
例えば、タイトルがXXXの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツのルートノードであるノードN4により管理される。また、例えば、タイトルがYYYの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツのルートノードであるノードN7により管理される。また、このようなルートノードは、例えば、コンテンツIDと最も近いノードIDを有するノードNnであるように定められる。コンテンツIDと最も近いノードIDとは、例えば、コンテンツIDと上位桁がより多く一致するノードIDである。 For example, index information about a replica of a movie content whose title is XXX is managed by the node N4 which is the root node of the content. Further, for example, index information about a content replica of a movie whose title is YYY is managed by the node N7 which is the root node of the content. Further, such a root node is determined to be a node Nn having a node ID closest to the content ID, for example. The node ID closest to the content ID is, for example, a node ID that matches the content ID more frequently with the upper digits.
そして、或るノードNnのユーザが、所望するコンテンツのレプリカを取得したい場合、このレプリカの取得を望むノードNnは、メッセージを生成する。以下、ユーザによりレプリカの取得を望むノードNnは、「ユーザノード」という。このメッセージは、取得を望むコンテンツのコンテンツID及びユーザノードのIPアドレス等を含むコンテンツ所在問合せメッセージである。コンテンツ所在問合せメッセージは、コンテンツ保持ノードを検索するためのメッセージでもある。上述のコンテンツ所在問合せメッセージが、ユーザノードが取得するDHTのルーティングテーブルに従って、他のノードNnに対して送出される。つまり、ユーザノードは、コンテンツ所在問合せメッセージを、ルートノードに向けて送出する。これにより、コンテンツ所在問合せメッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着することになる。 When a user of a certain node Nn wants to obtain a replica of the desired content, the node Nn that desires to obtain this replica generates a message. Hereinafter, the node Nn that the user desires to acquire a replica is referred to as a “user node”. This message is a content location inquiry message including the content ID of the content desired to be acquired and the IP address of the user node. The content location inquiry message is also a message for searching for a content holding node. The above-described content location inquiry message is sent to another node Nn according to the DHT routing table acquired by the user node. That is, the user node sends a content location inquiry message toward the root node. As a result, the content location inquiry message finally arrives at the root node by DHT routing using the content ID as a key.
各ノードNnにおいて、コンテンツのコンテンツ名及びコンテンツID等の属性情報は、コンテンツカタログ情報に記述されている。このコンテンツカタログ情報は、例えばセンターサーバSAから全てのノードNnに配信される。 In each node Nn, attribute information such as content name and content ID of the content is described in the content catalog information. This content catalog information is distributed, for example, from the center server SA to all the nodes Nn.
また、上記コンテンツ所在問合せメッセージに含まれるコンテンツIDは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。なお、DHTルーティングについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。 The content ID included in the content location inquiry message may be generated by the user node by hashing the content name with the common hash function. The DHT routing is known in Japanese Patent Application Laid-Open No. 2006-197400 and the like, and thus detailed description thereof is omitted.
上記コンテンツ所在問合せメッセージを受信したルートノードは、これに含まれるコンテンツIDに対応するインデックス情報をインデックス情報キャッシュから取得する。取得されたインデックス情報は、コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信される。こうしてインデックス情報を取得したユーザノードは、インデックス情報に基づいてコンテンツのレプリカをダウンロード(取得)することができる。インデックス情報に含まれるコンテンツ保持ノードのIPアドレス等に基づいて、ユーザノードはコンテンツ保持ノードにアクセスする。アクセスしたコンテンツ保持ノードから、コンテンツのレプリカをダウンロードすることが可能になる。なお、インデックス情報には、例えば複数のコンテンツ保持ノードのノード情報が含まれていることもある。この場合、ユーザノードは、この複数のコンテンツ保持ノードのうち一つのコンテンツ保持ノードを選択する。そして、ユーザノードは、選択したコンテンツ保持ノードに接続してコンテンツのレプリカをダウンロードすることができる。 The root node that has received the content location inquiry message obtains index information corresponding to the content ID included therein from the index information cache. The acquired index information is returned to the user node that is the transmission source of the content location inquiry message. The user node that has acquired the index information in this way can download (acquire) a replica of the content based on the index information. The user node accesses the content holding node based on the IP address of the content holding node included in the index information. A content replica can be downloaded from the accessed content holding node. Note that the index information may include, for example, node information of a plurality of content holding nodes. In this case, the user node selects one content holding node from among the plurality of content holding nodes. The user node can then connect to the selected content holding node and download a replica of the content.
なお、ルートノードは、このインデックス情報に含まれるIPアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信し、これにより、ユーザノードは、上記コンテンツ保持ノードからそのレプリカをダウンロードすることもできる。また、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、このルートノードと同じインデックス情報をキャッシュしているキャッシュノードからこのインデックス情報を取得することもできる。 The root node transmits a content transmission request message to the content holding node indicated by the IP address or the like included in the index information, whereby the user node downloads the replica from the content holding node. You can also. In addition, the user node can obtain the index information from a cache node that caches the same index information as the root node until the content location inquiry message reaches the root node.
また、ユーザノードが、コンテンツ保持ノードからコンテンツのレプリカを取得して保存したとき、保存したユーザノードは、パブリッシュメッセージを生成する。パブリッシュメッセージは、レプリカを保存したことをルートノードへ知らせるためのメッセージである。パブリッシュメッセージは、レプリカのコンテンツID及びレプリカを保存したノード装置のノード情報を含む。パブリッシュメッセージは、ルートノードに向けて送出される。これにより、パブリッシュメッセージは、コンテンツ所在問合せメッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。そして、ルートノードは、パブリッシュメッセージを受信する。ルートノードは、パブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報をインデックス情報キャッシュ領域に記憶する。こうして、上記ユーザノードは、新たに、上記コンテンツのレプリカを保持するコンテンツ保持ノードとなる。 When the user node acquires and stores a content replica from the content holding node, the stored user node generates a publish message. The publish message is a message for informing the root node that the replica has been saved. The publish message includes the content ID of the replica and the node information of the node device that stores the replica. The publish message is sent toward the root node. As a result, the publish message arrives at the root node by DHT routing using the content ID as a key, like the content location inquiry message. Then, the root node receives the publish message. The root node stores index information including a set of node information and content ID included in the publish message in the index information cache area. In this way, the user node becomes a new content holding node that holds a replica of the content.
[1.2 各ノードNnへのコンテンツ配信]
[1.2.1 コンテンツ配信の概要]
次に、各ノードNnへのコンテンツ配信について、図2及び図3を用いて説明する。なお、ここからの説明においては、各ノードNnが保存しているレプリカも、コンテンツと称する。
[1.2 Content distribution to each node Nn]
[1.2.1 Overview of content distribution]
Next, content distribution to each node Nn will be described with reference to FIGS. In the following description, the replica stored in each node Nn is also referred to as content.
図2は、本実施形態に係るコンテンツ分散保存システムSにおける概要構成の一例を示す図である。 FIG. 2 is a diagram showing an example of a schematic configuration in the content distributed storage system S according to the present embodiment.
図2に示すように、コンテンツ分散保存システムSにおいては、各拠点に、拠点サーバとしてのノードNnが分散して設置されている。各ノードNnは、グリッド技術としてDHTを利用したオーバーレイネットワーク9により互いに接続されている。また、各拠点には、夫々配信サーバPn(n=1,2,3・・・の何れか)が設置されている。更に、各拠点には、夫々複数のユーザ端末Um(m=1,2,3・・・の何れか)が設置されている。 As shown in FIG. 2, in the content distributed storage system S, nodes Nn as base servers are distributed and installed at each base. The nodes Nn are connected to each other by an overlay network 9 using DHT as a grid technology. Each base is provided with a distribution server Pn (n = 1, 2, 3,...). Further, a plurality of user terminals Um (any of m = 1, 2, 3,...) Are installed at each base.
各拠点においては、例えば、LAN(Local Area Network)等のネットワークが構築されている。このLAN等のネットワークによって、各拠点におけるノードNnと配信サーバPnとは、互いに通信可能に接続されている。また、各拠点における配信サーバPnと複数のユーザ端末Umとも、互いに通信可能に接続されている。 At each base, for example, a network such as a LAN (Local Area Network) is constructed. The node Nn and the distribution server Pn at each base are connected so as to be able to communicate with each other by a network such as a LAN. In addition, the distribution server Pn and the plurality of user terminals Um at each site are connected to be communicable with each other.
オーバーレイネットワーク9を介してノードNnがダウンロードしたコンテンツは、ノードNnが設置されている拠点の配信サーバPnに転送される。転送されたコンテンツは、配信サーバPnにより保存される。拠点にいるユーザは、所望のコンテンツを利用したい場合には、ユーザ端末Umを操作する。この操作により、ユーザ端末Umからユーザ端末Umが設置されている拠点の配信サーバPnにコンテンツが要求される。コンテンツを要求された配信サーバPnは、要求されたコンテンツを保存している場合には、保存しているコンテンツをユーザ端末Umに送信する。一方、配信サーバPnは、要求されたコンテンツを保存していない場合には、配信サーバPnが設置されている拠点のノードNnにコンテンツを要求する。コンテンツを要求されたノードNnは、コンテンツを保存している別のノードNnから当該コンテンツをダウンロードする。そして、ノードNnは、ダウンロードしたコンテンツを配信サーバPnに転送する。 The content downloaded by the node Nn via the overlay network 9 is transferred to the distribution server Pn at the base where the node Nn is installed. The transferred content is stored by the distribution server Pn. The user at the base operates the user terminal Um when he wants to use desired content. By this operation, content is requested from the user terminal Um to the distribution server Pn at the site where the user terminal Um is installed. When the requested distribution server Pn stores the requested content, the distribution server Pn transmits the stored content to the user terminal Um. On the other hand, if the distribution server Pn does not store the requested content, the distribution server Pn requests the content from the node Nn at the site where the distribution server Pn is installed. The node Nn that has requested the content downloads the content from another node Nn that stores the content. Then, the node Nn transfers the downloaded content to the distribution server Pn.
特定のコンテンツについては、全てのノードNn又は特定の複数のノードNnに予め配信し、保存させておきたい場合がある。この場合、コンテンツ分散保存システムSにおいては、複数のノードNnでツリー状の配信経路を形成して、コンテンツが順次転送されるようになっている。配信対象たる特定のコンテンツは、更に複数のコンテンツ(例えば、コンテンツ1、コンテンツ2、コンテンツ3・・・・)に分割される。分割によってできた各コンテンツは、夫々コンテンツIDが付与されて、センターサーバSAに記憶される。各ノードNnは、コンテンツ1、コンテンツ2、コンテンツ3・・・、とコンテンツを次々に転送していく。例えば、ノードNnは、コンテンツ1をダウンロードすると、次は、コンテンツ2をダウンロードしながらコンテンツ1を他のノードNnにアップロードする。次に、ノードNnは、コンテンツ3をダウンロードしながらコンテンツ2を他のノードNnにアップロードする。これにより、ノードNnの処理能力及び通信回線を効率よく利用することができるので、全体としてコンテンツの配信に要する時間が短縮される。
In some cases, specific content may be distributed and stored in advance to all nodes Nn or a plurality of specific nodes Nn. In this case, in the content distributed storage system S, a plurality of nodes Nn form a tree-like distribution route, and the content is sequentially transferred. The specific content to be distributed is further divided into a plurality of contents (for example,
各ノードNnには、コンテンツ配信の際においてコンテンツを要求する順番が割り当てられている。以下、コンテンツを要求する順番を、「コンテンツ要求順」という。なお、コンテンツ要求順は、コンテンツの取得順と同義である。コンテンツ要求順の割り当て方法としては、例えば図9に示した例と同様に、ノードN1に対して1番、ノードN2及びN3に対して2番、ノードN4〜N7に対して3番・・・が割り当てられる。この場合、ノードN1は、センターサーバSAからコンテンツをダウンロードする。また、ノードN2及びN3は、夫々ノードN1からコンテンツをダウンロードする。また、ノードN4〜N7は、夫々ノードN2又はN3からコンテンツをダウンロードする。またこの場合、1台のノードNnは、2台のノードNnに対してコンテンツをアップロードする。1台のノードNnがコンテンツをダウンロードする台数を、「アップロード台数」という。このアップロード台数は、2台に限られるものではない。 Each node Nn is assigned an order in which content is requested in content distribution. Hereinafter, the order of requesting content is referred to as “content request order”. The content request order is synonymous with the content acquisition order. As the allocation method of the content request order, for example, as in the example shown in FIG. 9, No. 1 for the node N1, No. 2 for the nodes N2 and N3, No. 3 for the nodes N4 to N7,. Is assigned. In this case, the node N1 downloads content from the center server SA. Nodes N2 and N3 download contents from node N1, respectively. The nodes N4 to N7 download contents from the node N2 or N3, respectively. In this case, one node Nn uploads content to two nodes Nn. The number of contents downloaded by one node Nn is referred to as “number of uploads”. The number of uploads is not limited to two.
コンテンツ要求順がX番目(X=1,2,3・・・)のノードNnがコンテンツの取得を開始してから、所定時間だけ遅れて、コンテンツ要求順がX+1番目のノードNnがコンテンツの取得を開始する。以下、この所定時間を、「遅延時間」という。遅延時間は、例えば、ノードNnが1個のコンテンツをダウンロードするのに要する時間以上に設定される。コンテンツの取得を開始する時刻は、分割によってできたコンテンツのうち最初のコンテンツ、つまり、コンテンツ1を要求する時刻である。コンテンツ要求順が1番目のノードNnがコンテンツの取得を開始する時刻が、コンテンツ配信開始時刻である。各ノードNnは、コンテンツY(Y=1,2,3・・・)を要求してから遅延時間が経過すると、コンテンツY+1を要求する。
The node Nn whose content request order is Xth (X = 1, 2, 3...) Starts acquiring the content, and the node Nn whose content request order is X + 1 acquires content after a predetermined time delay. To start. Hereinafter, this predetermined time is referred to as “delay time”. For example, the delay time is set to be longer than the time required for the node Nn to download one content. The time at which content acquisition is started is the time at which the first content, that is,
[1.2.2 コンテンツ配信の具体例及びコンテンツのアップロードの禁止]
以上を踏まえて、コンテンツが配信されている様子を具体的に説明する。先ず、コンテンツ配信開始時刻である時刻T0において、コンテンツ要求順が1番である例えばノードN1がコンテンツ所在問合せメッセージを送信する。コンテンツ所在問合せメッセージの送信により、ノードN1は、コンテンツ1の所在を検索する。ただし、このときは、コンテンツ1を保存しているノードNnは存在していない。従ってこの場合、ノードN1は、コンテンツ1を予め記憶しているセンターサーバSAからコンテンツをダウンロードする。コンテンツ1をダウンロードしたノードN1が、コンテンツ1を保存しパブリッシュメッセージを送信する。これにより、コンテンツ1のルートノードが保持するインデックス情報にノードN1のノード情報が登録される。
[1.2.2 Specific examples of content distribution and prohibition of content upload]
Based on the above, the manner in which content is distributed will be specifically described. First, at time T0, which is the content distribution start time, for example, the node N1 whose content request order is No. 1 transmits a content location inquiry message. By transmitting the content location inquiry message, the node N1 searches for the location of the
時刻T0から、設定された遅延時間が経過した時刻T1において、ノードNnは、上記と同様にコンテンツ2をセンターサーバSAからダウンロードする。また、コンテンツ要求順が2番である例えばノードN2及びN3が、夫々コンテンツ1の所在を検索する。すると、ノードN1がコンテンツ保持ノードであることが判明するので、ノードN2及びN3は、夫々ノードN1からコンテンツ1をダウンロードする。
At time T1 when a set delay time has elapsed from time T0, the node Nn downloads the
時刻T1から遅延時間が経過した時刻T2において、ノードN1は、コンテンツ3をセンターサーバSAからダウンロードする。また、ノードN2及びN3が、夫々ノードN1からコンテンツ2をダウンロードする。
At time T2 when the delay time has elapsed from time T1, the node N1 downloads the
更に時刻T2において、コンテンツ要求順が3番である例えばノードN4〜N7が、夫々コンテンツ1の所在を検索する。このとき、コンテンツ1に対応するコンテンツ保持ノードは、本来であればノードN1〜N3である。そうすると、ノードN4〜N7は、夫々ノードN1〜N3の何れかからコンテンツ1をダウンロードすることになる。しかしながら、時刻T2においては、ノードN1は、コンテンツ2をアップロードする。従って、ノードN1が、コンテンツ2に加えて、コンテンツ1をアップロードすると、ノードN1の処理負荷やネットワーク負荷が高くなり、コンテンツの配信遅延が生じる。
Further, at time T2, for example, the nodes N4 to N7 whose content request order is No. 3 search for the location of the
そこで、ノードN1は、所定の条件が満たされた場合には、コンテンツ1が他のノードNnによりダウンロードされること、すなわち、コンテンツ1をノードN1がアップロードすることを禁止する。コンテンツのダウンロードを禁止する条件及び禁止方法の詳細は後述する。ノードN1からのコンテンツ1のアップロードが禁止されることで、ノードN4〜N7は、夫々ノードN2又はN3からコンテンツ1をダウンロードする。
Therefore, the node N1 prohibits the content N1 from being downloaded by another node Nn, that is, the node N1 from uploading the
時刻T2から遅延時間が経過した時刻T3において、ノードN1は、コンテンツ4をセンターサーバSAからダウンロードする。また、ノードN2及びN3が、夫々ノードN1からコンテンツ3をダウンロードする。また、ノードN4〜N7が、夫々ノードN2又はN3からコンテンツ2をダウンロードする。この場合にも、ノードN1からのコンテンツ2のアップロードが禁止される。更に、コンテンツ要求順が4番である例えばノードN8〜N15が、夫々コンテンツ1の所在を検索する。このとき、コンテンツ1に対応するコンテンツ保持ノードは、本来であればノードN1〜N7である。ノードN1からのコンテンツ1のアップロードは既に禁止される。ここでは更に、ノードN2及びN3からのコンテンツ1のアップロードも禁止される。従って、ノードN8〜N15は、夫々ノードN4〜N7の何れかからコンテンツ1をダウンロードする。
At time T3 when the delay time has elapsed from time T2, the node N1 downloads the
コンテンツ5以降も、上記と同様にして転送されていき、全てのコンテンツが各ノードNnに転送されたとき、コンテンツ配信が完了する。
[1.2.3 コンテンツのアップロードを禁止する条件]
コンテンツのアップロードを禁止する条件は、コンテンツ要求順がX番目のノードNnが、コンテンツ要求順がX+1番目のノードNnに対してはコンテンツのアップロードを可能とするが、コンテンツ要求順がX+2番目のノードNnに対してはコンテンツのアップロードができないように規定される。
[1.2.3 Conditions for prohibiting content upload]
The condition for prohibiting the uploading of content is that the node Nn whose content request order is Xth and the content request order can be uploaded to the node Nn whose content request order is X + 1, but the content request order is X + 2nd node Nn is defined so that content cannot be uploaded.
例えば、アップロードを禁止する条件としては、以下の条件が挙げられる。以下、コンテンツをアップロードを禁止する条件を、「アップロード禁止条件」という。なお、アップロード禁止条件は以下の3条件に限られるものではない。
条件1:アップロード可能な回数を制限
条件2:アップロード可能な時間を制限
条件3:外部からの指示
For example, conditions for prohibiting upload include the following conditions. Hereinafter, the condition for prohibiting uploading of content is referred to as “upload prohibition condition”. The upload prohibition conditions are not limited to the following three conditions.
Condition 1: Limit the number of times that upload is possible Condition 2: Limit the time that can be uploaded Condition 3: Instruction from the outside
アップロード禁止条件1においては、各ノードNnが、各コンテンツ(コンテンツ1、コンテンツ2、コンテンツ3・・・)毎に、他のノードNnにアップロードすることができる回数を制限する。以下、アップロードすることができる回数を、「アップロード可能回数」という。ここで、
X番目におけるアップロード可能回数=X+1番目のノードNnの台数/X番目のノードNnの台数
である。つまり、アップロード可能回数はアップロード台数と同数である。コンテンツ要求順がX番目の全ノードNnがアップロード台数分だけコンテンツYをアップロードすると、コンテンツ要求順がX+1番目の全ノードNnにコンテンツYが行き渡る。コンテンツ要求順がX+1番目の全ノードNnにコンテンツYが行き渡った後は、コンテンツ要求順がX番目の全ノードNnからコンテンツYをダウンロードすることはできない。
In the upload
Number of possible uploads at Xth = X + 1 number of nodes Nn / number of Xth nodes Nn. In other words, the number of uploadable times is the same as the number of uploads. When all the nodes Nn whose content request order is X upload the content Y by the number of uploads, the contents Y are distributed to all the nodes Nn whose content request order is X + 1. After the content Y reaches all the nodes Nn whose content request order is X + 1, the content Y cannot be downloaded from all the nodes Nn whose content request order is Xth.
なお、アップロード可能回数は、例えば、ノードNnにおいて上記式を用いて実際に計算されても良い。また、アップロード可能回数は、例えば、サーバSAにおいて上記式を用いて実際に計算され、後述する設定ファイルに含まれるなどして各ノードNnに配信されても良い。また、アップロード可能回数は、実際に計算される以外にも、例えば、アップロード可能回数として予め設定された設定値が、サーバSAから各ノードNnに配信されても良い。 Note that the number of times that upload is possible may be actually calculated using the above formula at the node Nn, for example. In addition, the uploadable number of times may be actually calculated using the above formula in the server SA, and distributed to each node Nn by being included in a setting file to be described later. In addition to the actual upload count, for example, a setting value set in advance as the upload count may be distributed from the server SA to each node Nn.
アップロード禁止条件2においては、例えば、コンテンツが公開されてから所定時間が経過するまでは、コンテンツのアップロードが許可され、所定時間が経過した後は、コンテンツのアップロードが禁止される。以下、コンテンツのアップロードが許可される時間を、「公開時間」という。ここで、コンテンツの公開とは、コンテンツをダウンロードしたノードNnが、パブリッシュメッセージを送信することにより、ダウンロードしたコンテンツを保持するコンテンツ保持ノードとして他のノードNnから検索可能にすること、つまり、ダウンロードを可能にすることをいう。
In the upload
公開時間は、例えば、次のようにして決められる。先ず、公開時間は、コンテンツ要求順がX番目のノードNnがパブリッシュメッセージを送信してから、X+1番目のノードNnがコンテンツのダウンロードを開始するまでに要する時間、つまり、X+1番目のノードNnから送信されたコンテンツ送信要求メッセージを受信するまでに要する時間以上とされる。更に、公開時間は、コンテンツ要求順がX番目のノードNnがパブリッシュメッセージを送信してから、X+2番目のノードNnから送信されたコンテンツ送信要求メッセージを受信するまでに要する時間未満とされる。これにより、コンテンツ要求順がX+1番目のノードNnは、X番目のノードNnからコンテンツYをダウンロードすることができるが、コンテンツ要求順がX+2番目のノードNnは、X番目のノードNnからコンテンツYをダウンロードすることはできない。 The release time is determined as follows, for example. First, the publication time is the time required for the X + 1th node Nn to start downloading the content after the Xth node Nn in the content request order transmits the publish message, that is, the transmission from the X + 1th node Nn. More than the time required for receiving the received content transmission request message. Furthermore, the publication time is set to be less than the time required for receiving the content transmission request message transmitted from the (X + 2) th node Nn after the Xth node Nn in the content request order transmits the publish message. Thereby, the node Nn whose content request order is X + 1 can download the content Y from the Xth node Nn, but the node Nn whose content request order is X + 2 is to download the content Y from the Xth node Nn. It cannot be downloaded.
なお、公開時間の計時の始点は、例えば、コンテンツをダウンロードした時点、ダウンロードしたコンテンツを記憶した時点、又は、パブリッシュメッセージを送信した時点の何れであっても良い。また、公開時間の計時は、例えば、公開されたコンテンツがユーザノードに対して初めてアップロードされた時点から開始されても良い。 It should be noted that the start point of the disclosure time may be, for example, any time when the content is downloaded, when the downloaded content is stored, or when a publish message is transmitted. Also, the counting of the publication time may be started, for example, from the time when the published content is first uploaded to the user node.
アップロード禁止条件3においては、例えば、センターサーバSAが、各ノードNnに対して公開停止指示メッセージを送信する。公開停止指示メッセージには、例えば、アップロードを禁止するコンテンツのコンテンツIDが含まれている。センターサーバSAは、例えば、コンテンツ要求順がX+2番目のノードNnによりコンテンツYが取得される時刻が到来する直前に、X番目の各ノードNnに対して、コンテンツYのアップロードを禁止させる公開停止指示メッセージを送信する。公開停止指示メッセージを受信したノードNnは、公開停止指示メッセージに含まれているコンテンツIDに対応するコンテンツのアップロードを禁止する。
In the upload
[1.2.4 コンテンツのアップロードを禁止する方法]
コンテンツのアップロードを禁止する方法としては、例えば、以下の方法が挙げられる。なお、アップロードを禁止する方法は以下の3方法に限られるものではない。
禁止方法1:コンテンツを非公開にする
禁止方法2:コンテンツを削除する
禁止方法3:コンテンツが要求されたときに他のノードNnを紹介する
[1.2.4 Prohibiting content upload]
Examples of a method for prohibiting content upload include the following methods. Note that the method of prohibiting uploading is not limited to the following three methods.
Prohibition method 1: Make content private Prohibition method 2: Delete content Prohibition method 3: Introduce another node Nn when content is requested
禁止方法1においては、コンテンツ保持ノードは、ダウンロードしたコンテンツを保持しつつも、このコンテンツのコンテンツ保持ノードとして他のノードNnに検索されないようにすることである。これを、コンテンツの非公開という。例えば、コンテンツ保持ノードは、コンテンツのアップロードを禁止する条件を満たした場合、コンテンツ削除メッセージを送信する。コンテンツ削除メッセージには、非公開にするコンテンツのコンテンツID及び非公開にするコンテンツを保存しているコンテンツ保持ノードのノード情報が含まれている。コンテンツ削除メッセージは、このコンテンツ削除メッセージに含まれているコンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。コンテンツ削除メッセージを受信したルートノードは、コンテンツ削除メッセージに含まれているコンテンツIDに対応するインデックス情報から、コンテンツ削除メッセージに含まれているノードIDが示すコンテンツ保持ノードのノード情報を削除する。これによって、コンテンツ削除メッセージを送信したコンテンツ保持ノードについては、コンテンツが非公開になる。
In the
図3(a)は、禁止方法1におけるセンターサーバSA及び各ノードNnのコンテンツのアップロード状態、ダウンロード状態及び保持状態を示す図である。具体的に、図3(a)においては、コンテンツ配信開始時刻である時刻T0から時刻T4までの各時刻において、センターサーバSA、コンテンツ要求順が1番目、2番目及び3番目の各ノードNnについての状態が示されている。そして、各欄には、アップロードするコンテンツ、ダウンロードするコンテンツ、保持しているコンテンツが示されている。また、保持しているコンテンツは、公開されているコンテンツと非公開にされているコンテンツとで分けて示されている。
FIG. 3A is a diagram illustrating the content upload state, download state, and holding state of the center server SA and each node Nn in the
図3(a)に示すように、センターサーバSAは、コンテンツ1〜5を保持している。時刻T0において、コンテンツ要求順が1番目のノードN1がコンテンツ1をセンターサーバSAからダウンロードする。
As shown in FIG. 3A, the center server SA holds contents 1-5. At time T0, the node N1 with the first content request order downloads the
時刻T1において、ノードN1は、ダウンロードしたコンテンツ1を保持している。また、ノードN1は、コンテンツ2をセンターサーバSAからダウンロードする。また、コンテンツ要求順が2番目のノードN2及びN3は、コンテンツ1をノードN1からダウンロードする。
At time T1, the node N1 holds the downloaded
時刻T2においては、ノードN1は、コンテンツ1及び2を保持している。ただし、コンテンツ1は時刻T2が経過する前に非公開とされる。また、ノードN1は、コンテンツ3をセンターサーバSAからダウンロードする。また、ノードN2及びN3は、コンテンツ2をノードN1からダウンロードする。また、ノードN4〜N7は、コンテンツ1を保持しているノードのうち、コンテンツ1を公開しているノードN2又はN3から、ダウンロードする。
At time T2, the node N1 holds the
時刻T3においては、ノードN1においてコンテンツ2が新たに非公開とされ、ノードN2及びN3においてコンテンツ1が非公開とされる。そして、ノードN1は、センターサーバSAからコンテンツ4をダウンロードする。また、ノードN2及びN3は、コンテンツ3をノードN1からダウンロードする。また、ノードN4〜N7は、コンテンツ2をノードN2又はN3からダウンロードする。
At time T3,
時刻T4においては、ノードN1においてコンテンツ3が新たに非公開とされ、ノードN2及びN3においてコンテンツ2が新たに非公開とされ、ノードN4〜N7においてコンテンツ1が非公開とされる。そして、ノードN1は、センターサーバSAからコンテンツ5をダウンロードする。また、ノードN2及びN3は、コンテンツ4をノードN1からダウンロードする。また、ノードN4〜N7は、コンテンツ3をノードN2又はN3から、コンテンツ1をダウンロードする。
At time T4,
禁止方法2においては、コンテンツ保持ノードは、コンテンツのアップロードを禁止する条件を満たした場合、該当するコンテンツをコンテンツ保持ノード自身のキャッシュから削除する。この場合、コンテンツ保持ノードは、コンテンツ削除メッセージを送信しても良いし、送信しなくても良い。
In the
配信サーバPnが存在しない場合、ダウンロードしたコンテンツをノードNnが削除してしまうと、ユーザ端末UmがノードNnからコンテンツをダウンロードすることができない。そこで、本実施形態においては、各拠点に、拠点サーバとしてのノードNnに加えて、配信サーバPnも設置している。そして、ノードNnは、コンテンツをダウンロードすると、そのコンテンツを配信サーバPnに転送する。ユーザ端末Umは、ノードNnからコンテンツが削除されても、配信サーバPnからコンテンツをダウンロードすることができる。なお、禁止方法1及び3においては、配信サーバPnを設置しなくても良い。この場合は、ノードNn自身がユーザ端末Umに対してコンテンツを配信することができるからである。
If the distribution server Pn does not exist and the node Nn deletes the downloaded content, the user terminal Um cannot download the content from the node Nn. Therefore, in this embodiment, in addition to the node Nn as a base server, a distribution server Pn is also installed at each base. Then, when the node Nn downloads the content, the node Nn transfers the content to the distribution server Pn. The user terminal Um can download the content from the distribution server Pn even if the content is deleted from the node Nn. In the
図3(b)は、禁止方法2におけるセンターサーバSA及び各ノードNnのコンテンツのアップロード状態、ダウンロード状態及び保持状態を示す図である。図3(b)に示すように、各ノードNnにおいて、コンテンツのアップロードを禁止するタイミングは、図3(a)と同様である。ノードN1においては、時刻T2の時点でコンテンツ1が、時刻T3の時点でコンテンツ2が、時刻T4の時点でコンテンツ3が、夫々削除されている。また、ノードN2及びN3においては、時刻T3の時点でコンテンツ1が、時刻T4の時点でコンテンツ2が、夫々削除されている。また、ノードN4〜N7においては、時刻T4の時点でコンテンツ1が削除されている。
FIG. 3B is a diagram illustrating the content upload state, download state, and holding state of the center server SA and each node Nn in the
禁止方法3においては、コンテンツのアップロードを禁止する条件を満たしているコンテンツ保持ノードに、ユーザノードからコンテンツ送信要求メッセージが送信された場合、ユーザノードに対して別のコンテンツ保持ノードが紹介される。例えば、コンテンツのアップロードを禁止する条件を満たしているコンテンツ保持ノードは、ユーザノードに対して、コンテンツ送信不可メッセージを送信する。コンテンツ送信不可メッセージは、コンテンツの送信することができないことを示すメッセージである。コンテンツ送信不可メッセージを受信したユーザノードは、再度コンテンツ所在問合せメッセージを送信してルートノードからインデックス情報を取得する。そして、ユーザノードは、取得したインデックス情報から別のコンテンツ保持ノードを選択して、再度コンテンツ送信要求メッセージを送信する。或いは、ユーザノードは、複数のコンテンツ保持ノードのノード情報が含まれているインデックス情報をルートノードから取得していた場合には、この取得していたインデックス情報に基づいて別のコンテンツ保持ノードを選択しても良い。
In the
[1.2.5 コンテンツのアップロードを再度許可する条件]
コンテンツのアップロードが禁止された後、コンテンツのアップロードを再度許可しても良い。例えば、各ノードNnへのコンテンツ配信が完了した後に、拠点の増加等によってコンテンツ分散保存システムSに新たなノードNnが参加してくる場合がある。また、電源がOFFされていたこと等によって、コンテンツ配信時にコンテンツを取得することができなかったノードNnが存在する場合がある。この場合、配信が完了したコンテンツをノードNnが取得する必要が生じる場合がある。そのような状況に備えて、コンテンツのアップロードを再度許可される。
[1.2.5 Conditions for re-enabling content upload]
After the content upload is prohibited, the content upload may be permitted again. For example, after content distribution to each node Nn is completed, a new node Nn may participate in the content distributed storage system S due to an increase in the number of locations. Further, there may be a node Nn in which content cannot be acquired at the time of content distribution because the power is turned off. In this case, it may be necessary for the node Nn to acquire content that has been distributed. In preparation for such a situation, uploading of content is permitted again.
コンテンツのアップロードを再度許可する条件としては、例えば、以下の条件が挙げられる。以下、コンテンツのアップロードを再度許可する条件を、「アップロード再許可条件」という。なお、アップロード再許可条件は以下の3条件に限られるものではない。
条件1:一定時間経過後
条件2:許可しない
条件3:外部からの指示
Examples of the condition for permitting content upload again include the following conditions. Hereinafter, a condition for permitting content upload again is referred to as an “upload re-permission condition”. The upload re-permission condition is not limited to the following three conditions.
Condition 1: After a certain period of time
Condition 2: Not permitted Condition 3: Instruction from outside
アップロード再許可条件1においては、例えば、コンテンツのアップロードが禁止されてから、所定時間が経過した後、コンテンツのアップロードを再度許可する。以下、コンテンツのアップロードが禁止されてから再度許可されるまでに要する時間を、「非公開時間」という。
In the upload
アップロード再許可条件2においては、コンテンツのアップロードは原則として二度と許可されない。
In the upload
アップロード再許可条件3においては、例えば、センターサーバSAが、各ノードNnに対して公開再開指示メッセージを送信する。公開再開指示メッセージには、例えば、アップロードを再許可するコンテンツのコンテンツIDが含まれている。センターサーバSAは、例えば、所定の時刻になったとき、全てのノードNnに対して公開再開指示メッセージを送信しても良い。公開再開指示メッセージを受信したノードNnは、公開再開指示メッセージに含まれているコンテンツIDに対応するコンテンツのアップロードを再度許可する。
In the upload
コンテンツのアップロードを再度許可する方法は、コンテンツのアップロードを禁止する方法によって異なる。例えば、禁止方法1の場合、コンテンツ保持ノードは、アップロードを再度許可するコンテンツについて、パブリッシュメッセージを送信する。つまり、コンテンツ保持ノードは、コンテンツを再公開する。また、禁止方法3の場合、コンテンツ保持ノードは、方法3によるコンテンツのアップロードの禁止を終了させる。つまり、コンテンツ保持ノードは、要求されたコンテンツをそのままユーザノードにアップロードすれば良い。
The method of permitting content upload again depends on the method of prohibiting content upload. For example, in the case of the
以上説明したアップロード禁止条件、禁止方法及びアップロード再許可条件について夫々どの条件及び方法を用いるかは、例えば、コンテンツ分散保存システムSにおいて予め定められる。 Which condition and method to use for the upload prohibition condition, prohibition method, and upload re-permission condition described above are determined in advance in the content distributed storage system S, for example.
[1.3 センターサーバSAの構成及び機能等]
次に、図4を参照して、センターサーバSAの構成及び機能について説明する。
[1.3 Configuration and functions of center server SA]
Next, the configuration and functions of the center server SA will be described with reference to FIG.
図4は、センターサーバSAの概要構成例を示す図である。 FIG. 4 is a diagram illustrating a schematic configuration example of the center server SA.
センターサーバSAは、図4に示すように、演算機能を有するCPU,作業用RAM,各種データ及びプログラムを記憶するROM等から構成されたコンピュータとしての制御部11を備えている。また、センターサーバSAは、各種データ及び各種プログラム等を記憶保存するためのHD等から構成された記憶部12を備えている。更に、センターサーバSAは、ネットワーク8等を通じてノードNnとの間の情報の通信制御を行うための通信部13を備えている。また更に、センターサーバSAは、各種情報を表示するCRT,液晶ディスプレイ等の表示部14を備えている。更にまた、センターサーバSAは、オペレータからの指示を受け付けこの指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス等)15と、を備えている。そして、制御部11、記憶部12、通信部13、表示部14、及び入力部15はバス16を介して相互に接続されている。
As shown in FIG. 4, the center server SA includes a
記憶部12には、各ノードNnのノードID、IPアドレス及びポート番号等が記憶されている。また、記憶部12には、配信対象となるコンテンツが記憶されている。
The
更に、記憶部12には、コンテンツ配信に用いられる設定ファイルが記憶されている。設定ファイルは、本発明における時刻情報の一例である。設定ファイルには、例えば、コンテンツ配信開始時刻、遅延時間、コンテンツが配信される各ノードNnのノードID及び各ノードNnのコンテンツ要求順が記載されている。或いは、コンテンツ配信開始時刻及び遅延時間に代えて、コンテンツ要求順毎に各コンテンツを要求する時刻が記載されても良い。また、設定ファイルには、例えば、配信対象となる複数のコンテンツのコンテンツID及びコンテンツの配信順が記載されている。
Furthermore, the
また、アップロード禁止条件が、上述したアップロード禁止条件1である場合、つまり、アップロード可能な回数を制限する場合、設定ファイルには、アップロード可能回数が記載される。また、アップロード禁止条件が、アップロード禁止条件2である場合、つまり、アップロード可能な時間を制限する場合、設定ファイルには、公開時間が記載される。また、アップロード再許可条件が、上述したアップロード再許可条件1である場合、つまり、一定時間経過後である場合、設定ファイルには、非公開時間が記載される。また、アップロード再許可条件が、上述したアップロード再許可条件3である場合、つまり、外部からの指示である場合、設定ファイルには、センターサーバSAが公開再開指示メッセージを送信する時刻が記載される。
Further, when the upload prohibition condition is the upload
このような内容の設定ファイルは、例えば、オペレータにより作成されても良いし、センターサーバSAにより自動的に作成されても良い。 The setting file having such contents may be created by an operator, for example, or may be automatically created by the center server SA.
制御部11は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、センターサーバSA全体を統括制御する。
The
例えば、制御部11は、記憶部12に記憶されている設定ファイルを各ノードNnに配信する。この設定ファイルの配信は、例えば、特開2007−053662号公報にて開示されたDHTマルチキャスト(マルチキャストメッセージ転送処理)によりコンテンツ分散保存システムSに参加している全てのノードNnに対して行っても良い。
For example, the
また、制御部11は、ノードNnからコンテンツ送信要求メッセージを受信したとき、コンテンツ送信要求メッセージに対応するコンテンツを要求元のノードNnに送信する。
Further, when receiving the content transmission request message from the node Nn, the
なお、上記プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしても良い。また、上記プログラムは、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
The above program may be downloaded from a predetermined server on the
[1.4 ノードNnの構成及び機能等]
次に、図5参照して、ノードNnの構成及び機能について説明する。
[1.4 Node Nn configuration and functions]
Next, the configuration and function of the node Nn will be described with reference to FIG.
図5は、ノードNnの概要構成例を示す図である。 FIG. 5 is a diagram illustrating a schematic configuration example of the node Nn.
各ノードNnは、図5に示すように、演算機能を有するCPU,作業用RAM,各種データ及びプログラムを記憶するROM等から構成されたコンピュータとしての制御部21を備えている。また、各ノードNnは、各種データ及び各種プログラム等を記憶保存するためのHD(ハードディスク)等から構成された記憶部22と、受信されたコンテンツのレプリカ等を一時蓄積するバッファメモリ23とを備えている。記憶部22は、本発明における記憶手段の一例である。更に、各ノードNnは、コンテンツのレプリカに含まれるエンコードされたビデオデータ(映像情報)及びオーディオデータ(音声情報)等をデコードするデコーダ部24を備えている。また更に、各ノードNnは、このデコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部25と、この映像処理部25から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部26と、を備えている。更にまた、各ノードNnは、上記デコードされたオーディオデータをアナログオーディオ信号にD (Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部27と、この音声処理部27から出力されたオーディオ信号を音波として出力するスピーカ28と、を備えている。また更に、各ノードNnは、ネットワーク8を通じて他のノードNn等間の情報の通信制御を行うための通信部29を備えている。更にまた、各ノードNnは、ユーザからの指示を受け付けこの指示に応じた指示信号を制御部21に対して与える入力部(例えば、キーボード、マウス、或いは、リモコンや操作パネル等)30を備えている。そして、制御部21、記憶部22、バッファメモリ23、デコーダ部24、通信部29、及び入力部30はバス31を介して相互に接続されている。なお、ノードNnとしては、専用のサーバ装置のほか、パーソナルコンピュータ、STB(Set Top Box)等を適用可能である。
As shown in FIG. 5, each node Nn includes a
記憶部22には、DHTを用いたルーティングテーブル、インデックス、並びに、コンテンツ分散保存システムSに参加する際のアクセス先となるコンタクトノードのIPアドレス及びポート番号、及びセンターサーバSAのIPアドレス及びポート番号等が記憶されている。また、記憶部22には、センターサーバSAから配信されてきたファイル情報が記憶される。更に、記憶部22には、ダウンロードされたコンテンツが記憶される。
The
制御部21は、CPUが記憶部22等に記憶されたプログラム(本発明のノードプログラムを含む)を読み出して実行することにより、本発明における取得手段、検索手段、コンテンツ取得手段、コンテンツ送信手段、判定手段、禁止手段、時間判定手段及び解除手段として機能する。
The
なお、上記ノードプログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしても良いし、例えば、CD−ROM等の記録媒体に記録されてこの記録媒体のドライブを介して読み込まれるようにしても良い。
The node program may be downloaded from a predetermined server on the
[1.5 コンテンツ分散保存システムSの動作]
次に、図6及び図7を参照して、本実施形態に係るコンテンツ分散保存システムSの動作について、実施例毎に説明する。
[1.5 Operation of Content Distributed Storage System S]
Next, with reference to FIGS. 6 and 7, the operation of the distributed content storage system S according to the present embodiment will be described for each example.
実施例1は、アップロード禁止条件として条件1、禁止方法として方法1、アップロード再許可条件として条件1を夫々適用した場合の実施例である。
In the first embodiment, the
図6は、本実施形態の実施例1に係るノードNnにおける制御部21の処理例を示すフローチャートである。
FIG. 6 is a flowchart illustrating a processing example of the
図6に示す処理は、例えば、ノードNnの電源がONとされたときに開始される。先ず、制御部21は、ノードNnの電源がOFFとされたか否かを判定する(ステップS1)。このとき、制御部21は、ノードNnの電源がOFFとされていない場合には(ステップS1:NO)、取得手段としてセンターサーバSAから設定ファイルを受信したか否かを判定する(ステップS2)。このとき、制御部21は、設定ファイルを受信した場合には(ステップS2:YES)、受信した設定ファイルを記憶部22に上書き記憶させる(ステップS3)。
The process illustrated in FIG. 6 is started, for example, when the node Nn is powered on. First, the
制御部21は、ステップS2において設定ファイルを受信していない場合、又は、ステップS3の処理を終えた場合には、他のノードNnからコンテンツが要求されたか否かを判定する(ステップS4)。つまり、制御部21は、コンテンツ送信要求メッセージを受信したか否かを判定する。
When the setting file is not received in step S2 or when the process of step S3 is finished, the
このとき、制御部21は、コンテンツが要求された場合には(ステップS4:YES)、コンテンツ送信手段として、コンテンツ送信要求メッセージに含まれるコンテンツIDに対応するコンテンツを、要求元のユーザノードにアップロードする(ステップS5)。次いで、制御部21は、アップロードしたコンテンツのアップロード回数を1増加させる(ステップS6)。次いで、制御部21は、判定手段として、設定ファイルに基づいてアップロード禁止条件が満たされたか否かを判定する(ステップS7)。具体的に、制御部21は、アップロード回数が、設定ファイルに記載されているアップロード可能回数に達したか否かを判定する。このとき、制御部21は、アップロード回数がアップロード可能回数に達していない場合には(ステップS7:NO)、ステップS1に移行する。
At this time, when the content is requested (step S4: YES), the
一方、制御部21は、アップロード回数がアップロード可能回数に達した場合には(ステップS7:YES)、禁止手段として、該当するコンテンツのアップロードを禁止する(ステップS8)。具体的に、制御部21は、コンテンツ削除メッセージをルートノードに向けて送信する。このとき、制御部21は、このコンテンツ削除メッセージに、アップロード回数がアップロード可能回数に達したコンテンツのコンテンツIDを設定する。次いで、制御部21は、コンテンツ削除メッセージ送信時刻を記憶部22に記憶させる(ステップS9)。このとき、制御部21は、アップロード回数がアップロード可能回数に達したコンテンツのコンテンツIDに対応付けて、コンテンツ削除メッセージ送信時刻を記憶させる。コンテンツ削除メッセージ送信時刻には、その時点での現在時刻が適用される。制御部21は、ステップS9の処理を終えると、ステップS1に移行する。
On the other hand, when the number of uploads reaches the number of uploadable times (step S7: YES), the
ステップS4において、制御部21は、他のノードNnからコンテンツが要求されていない場合には(ステップS4:NO)、非公開にされたコンテンツが存在するか否かを判定する(ステップS10)。非公開にされたコンテンツが存在するか否かは、例えば、記憶部22にコンテンツ削除メッセージ送信時刻が記憶されているか否かで判定することができる。そして、制御部21は、非公開にされたコンテンツが存在する場合には(ステップS10:YES)、時間判定手段として、非公開にされてから、設定ファイルに記載されている非公開時間が経過したか否かを判定する(ステップS11)。例えば、制御部21は、記憶部22に記憶されているコンテンツ削除メッセージ送信時刻をコンテンツの非公開開始時刻として、非公開時間が経過したか否かを判定する。そして、制御部21は、コンテンツが非公開にされてから非公開時間が経過した場合には(ステップS11:YES)、解除手段として、コンテンツのアップロードの禁止を解除する(ステップS12)。具体的に、制御部21は、パブリッシュメッセージをルートノードに向けて送信する。このとき、制御部21は、パブリッシュメッセージに、非公開時間が経過したコンテンツのコンテンツIDを設定する。また、制御部21は、非公開時間が経過したコンテンツのコンテンツIDに対応するコンテンツ削除メッセージ送信時刻を記憶部22から削除する。制御部21は、ステップS11において、コンテンツが非公開にされてから非公開時間が経過していない場合、又は、ステップS12の処理を終えた場合には、ステップS1に移行する。
In step S4, when the content is not requested from another node Nn (step S4: NO), the
ステップS10において、制御部21は、非公開にされたコンテンツが存在しない場合には(ステップS10:NO)、設定ファイルの記載内容に基づいて、コンテンツを要求する時刻が到来したか否かを判定する(ステップS13)。例えば、設定ファイルにコンテンツを要求する時刻そのものが記載されている場合には、記載されている時刻が到来したか否かを判定すればよい。或いは、設定ファイルにコンテンツ配信開始時刻及び遅延時間が記載されている場合、コンテンツ要求順がX番目であるノードNnがコンテンツYを要求する時刻T(X,Y)は、次の式により求めることができる。
T(X,Y)=コンテンツ配信開始時刻+(X−1)×遅延時間+(Y−1)×遅延時間
In step S10, when there is no non-disclosure content (step S10: NO), the
T (X, Y) = content distribution start time + (X−1) × delay time + (Y−1) × delay time
ステップS13の判定において、制御部21は、コンテンツを要求する時刻が到来した場合には(ステップS13:YES)、検索手段として、コンテンツ所在問合せメッセージをルートノードに向けて送信する(ステップS14)。このコンテンツ所在問合せメッセージには、設定ファイルに基づいて、要求する時刻が到来したコンテンツのコンテンツIDが設定される。その後、制御部21は、ルートノードから送信されてきたインデックス情報を取得する。これによってコンテンツ保持ノードが検索される。そして、制御部21は、コンテンツ取得手段として、インデックス情報に含まれるノード情報に基づいてコンテンツ保持ノードにコンテンツ送信要求メッセージを送信する。制御部21は、ステップS14の処理を終えると、ステップS1に移行する。
If it is determined in step S13 that the time for requesting content has arrived (step S13: YES), the
ステップS13において、制御部21は、コンテンツを要求する時刻が到来していない場合には(ステップS13:NO)、コンテンツ取得手段としてコンテンツ保持ノードからコンテンツを受信したか否かを判定する(ステップS15)。このとき、制御部21は、コンテンツを受信した場合には(ステップS15:YES)、受信したコンテンツを記憶部22に記憶させる(ステップS16)。次いで、制御部21は、パブリッシュメッセージをルートノードに向けて送信する(ステップS17)。このとき、制御部21は、パブリッシュメッセージに、記憶させたコンテンツのコンテンツIDを設定する。制御部21は、ステップS17の処理を終えると、ステップS1に移行する。
In step S13, when the time for requesting the content has not arrived (step S13: NO), the
ステップS1において、制御部21は、ノードNnの電源がOFFとされた場合には(ステップS1:YES)、図6に示す処理を終了させる。
In step S1, when the power of the node Nn is turned off (step S1: YES), the
実施例2は、アップロード禁止条件として条件2、禁止方法として方法2、アップロード再許可条件として条件2を夫々適用した場合の実施例である。
In the second embodiment, the
図7は、本実施形態の実施例2に係るノードNnにおける制御部21の処理例を示すフローチャートである。図7において、図6と同様の要素については同様に符号を付してある。
FIG. 7 is a flowchart illustrating a processing example of the
ステップS1〜S5の処理は、実施例1の処理と同様である。制御部21は、ステップS5においてコンテンツをアップロードすると、ステップS1に移行する。
The processing in steps S1 to S5 is the same as the processing in the first embodiment. When the content is uploaded in step S5, the
ステップS4において、制御部21は、他のノードNnからコンテンツが要求されていない場合には(ステップS4:NO)、公開されているコンテンツが存在するか否かを判定する(ステップS51)。公開されているコンテンツが存在するか否かは、例えば、記憶部22にパブリッシュメッセージ送信時刻が記憶されているか否かで判定することができる。そして、制御部21は、公開されているコンテンツが存在する場合には(ステップS51:YES)、判断手段として、コンテンツが公開されてから、設定ファイルに記載されている公開時間が経過したか否かを判定する(ステップS52)。例えば、制御部21は、記憶部22に記憶されているパブリッシュメッセージ送信時刻をコンテンツの公開開始時刻として、公開時間が経過したか否かを判定する。そして、制御部21は、コンテンツが公開されてから公開時間が経過した場合には(ステップS52:YES)、コンテンツ削除メッセージをルートノードに向けて送信する(ステップS53)。このとき、制御部21は、コンテンツ削除メッセージに、公開時間が経過したコンテンツのコンテンツIDを設定する。次いで、制御部21は、禁止手段として、公開時間が経過したコンテンツを記憶部22から削除する(ステップS54)。また制御部21は、公開時間が経過したコンテンツのコンテンツIDに対応するパブリッシュメッセージ送信時刻を記憶部22から削除する。制御部21は、ステップS52において、コンテンツが公開されてから公開時間が経過していない場合、又は、ステップS54の処理を終えた場合には、ステップS1に移行する。
In step S4, when no content is requested from another node Nn (step S4: NO), the
ステップS51において、制御部21は、公開されているコンテンツが存在しない場合には(ステップS51:NO)、ステップS13の判定を行う。ステップS13〜S17の処理は、実施例1の処理と同様である。制御部21は、ステップS17においてパブリッシュメッセージを送信すると、パブリッシュメッセージ送信時刻を記憶部22に記憶させる(ステップS55)。このとき、制御部21は、ステップS16において記憶されたコンテンツのコンテンツIDに対応付けて、パブリッシュメッセージ送信時刻を記憶させる。パブリッシュメッセージ送信時刻は、その時点での現在時刻が適用される。制御部21は、ステップS55の処理を終えると、ステップS1に移行する。
In step S51, when there is no published content (step S51: NO), the
実施例3は、アップロード禁止条件として条件3、禁止方法として方法1、アップロード再許可条件として条件3を夫々適用した場合の実施例である。
In the third embodiment, the
ノードNnの制御部21は、記憶部22に記憶されている設定ファイルに基づいてコンテンツを要求する時刻が到来したか否かを判定する。そして、制御部21は、コンテンツを要求する時刻が到来した場合には、コンテンツ所在問合せメッセージを送信する。これによって、制御部21は、コンテンツ保持ノードから送信されてきたコンテンツを受信し、記憶部22に記憶させる。
The
その後、制御部21は、記憶させたコンテンツについてセンターサーバSAから公開停止指示メッセージを受信すると、コンテンツ削除メッセージをルートノードに向けて送信する。このとき、制御部21は、コンテンツ削除メッセージに、公開停止指示メッセージに含まれるコンテンツIDを設定する。なお、制御部21は、対応するコンテンツについては記憶部22から削除しない。
Thereafter, when receiving a disclosure stop instruction message from the center server SA for the stored content, the
その後、制御部21は、コンテンツ削除メッセージを送信したコンテンツについてセンターサーバSAから公開再開指示メッセージを受信すると、パブリッシュメッセージをルートノードに向けて送信する。このとき、制御部21は、パブリッシュメッセージに、公開再開指示メッセージに含まれるコンテンツIDを設定する。
After that, when receiving a disclosure resumption instruction message from the center server SA for the content for which the content deletion message has been transmitted, the
以上説明したように、本実施形態によれば、ノードNnの制御部21が、センターサーバSAから送信されてきた設定ファイルを受信する。また、制御部21が、受信した設定ファイルに記載されたコンテンツを要求する時刻、又は、設定ファイルに記載されている情報に基づいて求められたコンテンツを要求する時刻が到来したときに、設定ファイルに記載されているコンテンツIDに対応するコンテンツのコンテンツ保持ノードを検索する。また、制御部21が、検索されたコンテンツ保持ノードからコンテンツをダウンロードする。また、制御部21が、ダウンロードしたコンテンツを記憶部22に記憶させる。また、制御部21が、コンテンツが記憶部22に記憶され公開されてから、アップロード禁止条件が満たされたか否かを判定する。また、制御部21が、アップロード禁止条件が満たされたと判定されたとき、記憶部22に記憶されているコンテンツを他のノードNnに対してアップロードすることを禁止する。
As described above, according to the present embodiment, the
従って、アップロード禁止条件が満たされたときに、ダウンロードされたコンテンツが他のノードNnによりダウンロードされることが禁止される。よって、コンテンツが配信されるノードNn全体から見てコンテンツ要求順が相対的に早いノードNnへの通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることができる。 Therefore, when the upload prohibition condition is satisfied, the downloaded content is prohibited from being downloaded by another node Nn. Therefore, the time required for content distribution as a whole can be shortened without increasing the communication load on the node Nn whose content request order is relatively fast when viewed from the entire node Nn to which the content is distributed.
また、制御部21が、アップロード禁止条件として、アップロード回数が、設定ファイルに記載されたアップロード可能回数に達したと判定した場合に、記憶部22に記憶されているコンテンツのアップロードを禁止する。
Further, when the
また、制御部21が、アップロード禁止条件として、コンテンツが公開されてから、設定ファイルに記載された公開時間が経過したと判定した場合に、記憶部22に記憶されているコンテンツのアップロードを禁止する。
Further, when the
従って、公開時間が経過した後、コンテンツのアップロードは行われないので、コンテンツ要求順が相対的に早いノード装置への通信負荷が高くなることを確実に防止することができる。 Therefore, since the content is not uploaded after the publishing time has elapsed, it is possible to reliably prevent an increase in the communication load on the node device having the relatively fast content request order.
また、制御部21が、アップロード禁止条件として、センターサーバSAから送信された公開停止指示メッセージを受信したと判定した場合に、記憶部22に記憶されているコンテンツのアップロードを禁止する。
Further, when the
従って、ノードNn自身が、コンテンツのアップロードを禁止するスケジュールを管理する必要がない。 Therefore, it is not necessary for the node Nn itself to manage a schedule for prohibiting content upload.
また、制御部21が、記憶部22に記憶されているコンテンツを他のノードNnに対してアップロードすることを禁止した後、設定ファイルに記載された非公開時間が経過したと判定した場合には、記憶部22に記憶されているコンテンツのアップロードの禁止を解除する。
When the
従って、コンテンツ配信時にコンテンツをダウンロードしていなかったノードNnが後でコンテンツをダウンロードすることができる。 Therefore, the node Nn that has not downloaded the content at the time of content distribution can download the content later.
また、制御部21が、記憶部22にコンテンツを記憶すると、制御部21自身のノードNnのノード情報を含むパブリッシュメッセージをルートノードに向けて送信する。また、制御部21が、コンテンツ問い合わせメッセージをルートノードに向けて送信し、ルートノードからインデックス情報を受信することで、コンテンツ保持ノードを検索する。また、制御部21が、受信したインデックス情報に含まれるノード情報に基づいて、検索されたコンテンツ保持ノードにコンテンツ送信要求メッセージを送信する。また、制御部21が、アップロード禁止条件が満たされたと判定すると、制御部21自身のノードNnのノード情報を含むコンテンツ削除メッセージをルートノードに向けて送信する。
When the
従って、ノードNnがコンテンツを記憶しつつコンテンツのアップロードが禁止されるので、その後必要なときにコンテンツを再度アップロードすることができる。 Accordingly, since the node Nn stores the content and uploading of the content is prohibited, the content can be uploaded again when necessary thereafter.
[2.第2実施形態]
次に、本発明の第2実施形態について、図8を用いて説明する。上記説明した第1実施形態においては、コンテンツ保持ノードがコンテンツのアップロードを禁止する制御を行っていた。これに対し、以下に説明する第2実施形態においては、ルートノードがコンテンツのアップロードを禁止する制御を行う。本実施形態においては、例えば、アップロード禁止条件として条件1が適用される。
[2. Second Embodiment]
Next, a second embodiment of the present invention will be described with reference to FIG. In the first embodiment described above, the content holding node performs control to prohibit uploading of content. On the other hand, in the second embodiment described below, the root node controls to prohibit uploading of content. In the present embodiment, for example,
なお、コンテンツ分散保存システムSの構成及び動作概要、コンテンツの配信方法、センターサーバSAの構成及びノードNnの構成は、第1実施形態の場合と同様である。従って、これらの説明は省略する。 The configuration and operation outline of the content distributed storage system S, the content distribution method, the configuration of the center server SA, and the configuration of the node Nn are the same as those in the first embodiment. Therefore, these descriptions are omitted.
ルートノードの記憶部22には、上述したようにインデックス情報が記憶されている。本実施形態において、ルートノードが記憶するインデックス情報には、ルートノードが所在を管理するコンテンツのコンテンツIDと、このコンテンツを保存しているコンテンツ保持ノードのノード情報と、このコンテンツ保持ノードがコンテンツをアップロードしたアップロード回数との組が含まれている。ルートノードは、コンテンツ保持ノードからパブリッシュメッセージを受信したとき、このコンテンツ保持ノードのノード情報を、記憶部22に記憶されているインデックス情報に登録する。このとき、ルートノードは、コンテンツ保持ノードのノード情報に対応付けて、アップロード回数として0回を設定する。
The root
図8は、本実施形態に係るコンテンツ分散保存システムSにおけるノードNnの処理例を示すフローチャートである。 FIG. 8 is a flowchart showing a processing example of the node Nn in the content distributed storage system S according to the present embodiment.
図8に示す処理は、ユーザノードが、設定ファイルの記載内容に基づいて、コンテンツを要求する時刻が到来したと判定した場合に開始される。先ず、ユーザノードは、コンテンツ所在問合せメッセージをルートノードに向けて送信する(ステップS101)。 The process illustrated in FIG. 8 is started when the user node determines that the time for requesting content has arrived based on the description content of the setting file. First, the user node transmits a content location inquiry message to the root node (step S101).
ルートノードは、コンテンツ所在問合せメッセージを受信すると(ステップS102)、コンテンツ保持ノードをユーザノードに送信する(ステップS103)。このとき、ルートノードは、ユーザノードから要求されたコンテンツのアップロード回数がアップロード可能回数未満であるコンテンツ保持ノードのうち、例えば、一つのコンテンツ保持ノードを選択する。そして、ルートノードは、選択したコンテンツ保持ノードのノード情報を含むインデックス情報をユーザノードに送信する。つまりこの場合、判定手段としてのルートノードが、各コンテンツ保持ノードについて、アップロード回数がアップロード可能回数に達しているか否かをインデックス情報に基づいて判定する。そして、禁止手段としてのルートノードが、アップロード回数がアップロード可能回数に達しているコンテンツ保持ノードについては、ユーザノードにより検索されないように制御する。この制御により、特定のコンテンツについてアップロード禁止条件が満たされたコンテンツ保持ノードは、この特定のコンテンツのアップロードが禁止される。 When receiving the content location inquiry message (step S102), the root node transmits a content holding node to the user node (step S103). At this time, the root node selects, for example, one content holding node from among the content holding nodes whose number of uploads of content requested by the user node is less than the number of uploadable times. Then, the root node transmits index information including the node information of the selected content holding node to the user node. That is, in this case, the root node as the determination unit determines whether the number of uploads has reached the number of uploadable times for each content holding node based on the index information. Then, the root node as the prohibition unit controls the content holding node whose number of uploads has reached the number of uploadable times so that it is not searched by the user node. By this control, the content holding node that satisfies the upload prohibition condition for the specific content is prohibited from uploading the specific content.
また、ルートノードは、ユーザノードにノード情報を送信したコンテンツ保持ノードのアップロード回数を1増加させる。つまり、コンテンツ保持ノードとしてユーザノードに通知された回数がアップロード回数とみなされる。 Further, the root node increases the number of uploads of the content holding node that transmitted the node information to the user node by one. That is, the number of times notified to the user node as the content holding node is regarded as the number of uploads.
インデックス情報を受信したユーザノードは、受信したインデックス情報に含まれるノード情報に基づいて、コンテンツ保持ノードにコンテンツ送信要求メッセージを送信する(ステップS104)。そして、ユーザノードは、コンテンツ保持ノードから送信されたコンテンツを受信する(ステップS105)。 The user node that has received the index information transmits a content transmission request message to the content holding node based on the node information included in the received index information (step S104). Then, the user node receives the content transmitted from the content holding node (step S105).
以上説明したように、ユーザノードから要求されたコンテンツについてアップロード回数がアップロード可能回数に達しているコンテンツ保持ノードは、ユーザノードに検索されない。従って、要求されたコンテンツについてアップロード禁止条件が満たされたコンテンツ保持ノードは、要求されたコンテンツのアップロードが禁止される。よって、全体から見てコンテンツ要求順が相対的に早いノードNnへの通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることができる。 As described above, a content holding node whose number of uploads reaches the number of uploadable times for the content requested from the user node is not searched for by the user node. Therefore, the content holding node that satisfies the upload prohibition condition for the requested content is prohibited from uploading the requested content. Therefore, it is possible to shorten the time required for content distribution as a whole without increasing the communication load on the node Nn whose content request order is relatively fast when viewed as a whole.
なお、上記各実施形態においては、各ノードNnが、設定ファイルに基づいて、コンテンツの要求時刻が到来したか否かを判定していたが、これに限られるものではない。例えば、各ノードNnは、センターサーバSAからコンテンツを要求させる指示を示すメッセージを受信したとき、コンテンツを要求するようにしても良い。 In each of the above embodiments, each node Nn determines whether or not the content request time has arrived based on the setting file. However, the present invention is not limited to this. For example, each node Nn may request a content when receiving a message indicating an instruction to request the content from the center server SA.
また、上記各実施形態においては、ルートノードがコンテンツの所在を管理していたが、これに限られるものではない。例えば、ノードNn以外の所定のサーバ装置が、コンテンツの所在を管理しても良い。この場合、各ノードNnは、所定のサーバ装置に要求することにより、コンテンツ保持ノードを検索する。 In each of the above embodiments, the root node manages the location of the content. However, the present invention is not limited to this. For example, a predetermined server device other than the node Nn may manage the location of the content. In this case, each node Nn searches for a content holding node by making a request to a predetermined server device.
また、上記各実施形態においては、コンテンツ配信システムを、DHTを利用したコンテンツ分散保存システムに適用していたが、これに限られるものではない。例えば、コンテンツ配信システムを、他のピアツーピアシステムに適用しても良い。 In each of the above embodiments, the content distribution system is applied to a content distributed storage system using DHT. However, the present invention is not limited to this. For example, the content distribution system may be applied to other peer-to-peer systems.
3 IX
4a、4b ISP
5a、5b DSL回線業者の装置
6 FTTH回線業者の装置
7 通信回線
8 ネットワーク
9 オーバーレイネットワーク
11 制御部
12 記憶部
13 通信部
14 表示部
15 入力部
16 バス
21 制御部
22 記憶部
23 バッファメモリ
24 デコーダ部
25 映像処理部
26 表示部
27 音声処理部
28 スピーカ
29 通信部
30 入力部
31 バス
Nn ノード(拠点サーバ)
Pn 配信サーバ
SA センターサーバ
Um ユーザ端末
S コンテンツ分散保存システム
3 IX
4a, 4b ISP
5a, 5b DSL
Pn distribution server SA center server Um User terminal S Content distributed storage system
Claims (8)
前記取得手段により取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索手段と、
前記検索手段により検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得手段と、
前記コンテンツ取得手段により取得されたコンテンツを記憶する記憶手段と、
前記記憶手段に記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信手段と、
前記コンテンツ送信手段により前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定手段と、
前記判定手段により、前記所定の条件が満たされたと判定されたとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手段と、
を備えることを特徴とするノード装置。 An acquisition means for acquiring time information indicating a time for acquiring content from any of the node devices in the content distribution system capable of transmitting and receiving content between a plurality of node devices that can communicate with each other via a network;
Search means for searching for a node device storing predetermined content according to the time indicated by the time information acquired by the acquisition means;
Content acquisition means for acquiring the predetermined content from the node device searched by the search means;
Storage means for storing the content acquired by the content acquisition means;
Content transmitting means for transmitting the content to the other node device when the content stored in the storage means is retrieved from the other node device;
Determination means for determining whether or not a predetermined condition is satisfied after the content is transmitted by the content transmission means;
A prohibiting unit that prohibits the content stored in the storage unit from being acquired by another node device when the determination unit determines that the predetermined condition is satisfied;
A node device comprising:
前記禁止手段は、前記判定手段により、コンテンツを送信した送信回数が所定の回数に達したと判定されたとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置に取得されることを禁止することを特徴とする請求項1に記載のノード装置。 The determination means determines whether the number of transmissions of the content has reached a predetermined number as the predetermined condition,
The prohibiting means determines that the content stored in the storage means is acquired by another node device when the determining means determines that the number of transmissions of the content has reached a predetermined number. The node device according to claim 1, wherein the node device is prohibited.
前記禁止手段は、前記判定手段により、コンテンツが送信されてから所定の時間が経過したと判定したとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置に取得されることを禁止することを特徴とする請求項1に記載のノード装置。 The determination means determines, as the predetermined condition, whether or not a predetermined time has passed since the content was transmitted by the content transmission means,
The prohibition unit prohibits the content stored in the storage unit from being acquired by another node device when the determination unit determines that a predetermined time has elapsed since the content was transmitted. The node device according to claim 1, wherein:
前記時間判定手段により、取得を禁止されてから所定の時間が経過したと判定されたとき、前記他のノード装置による取得の禁止を解除する解除手段と、
を更に備えることを特徴とする請求項1から請求項3のいずれか1項に記載のノード装置。 Time determination means for determining whether a predetermined time has elapsed since the prohibition means has prohibited the acquisition by the other node device; and
Release means for canceling the prohibition of acquisition by the other node device when it is determined by the time determination means that a predetermined time has passed since the acquisition was prohibited;
The node device according to any one of claims 1 to 3, further comprising:
前記検索手段により検索されたノード装置の前記所在情報に基づいて、前記検索されたノード装置へコンテンツの送信を要求する要求手段と、を更に備え、
前記検索手段は、前記所定のコンテンツを記憶しているノード装置の前記所在情報を記憶するノード装置から、当該所定のコンテンツを記憶しているノード装置を検索し、
前記コンテンツ送信手段は、他の前記ノード装置から要求されたコンテンツを当該他のノード装置に送信し、
前記禁止手段は、前記判定手段により、前記所定の条件が満たされたと判定されたとき、前記記憶手段により前記コンテンツを記憶しているノード装置の前記所在情報を記憶するノード装置へ、前記判定手段により前記所定の条件が満たされたと判定されたコンテンツが他の前記ノード装置により取得されることを禁止する指令を送信することを特徴とする請求項1から請求項4の何れか1項に記載のノード装置。 A publish message indicating that the content is stored in the storage means is transmitted to the node device storing the location information indicating the location of the node device storing the content by the storage means, including the location information. Message sending means;
Requesting means for requesting transmission of content to the searched node device based on the location information of the node device searched by the searching means;
The search means searches for a node device storing the predetermined content from a node device storing the location information of the node device storing the predetermined content,
The content transmission means transmits the content requested from the other node device to the other node device,
When the determination unit determines that the predetermined condition is satisfied by the determination unit, the prohibition unit transfers the location information of the node device storing the content by the storage unit to the determination unit. 5. The command according to claim 1, further comprising: transmitting a command that prohibits the content determined to satisfy the predetermined condition from being acquired by another node device. 6. Node equipment.
前記取得ステップにおいて取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索ステップと、
前記検索ステップにおいて検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得ステップと、
前記コンテンツ取得ステップにおいて取得されたコンテンツを記憶する記憶ステップと、
前記記憶ステップにおいて記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信ステップと、
前記コンテンツ送信ステップにおいて前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定ステップと、
前記判定ステップにおいて、前記所定の条件が満たされたと判定されたとき、前記記憶ステップにより記憶されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手ステップと、
を含むことを特徴とするコンテンツ配信方法。 An acquisition step of acquiring time information indicating a time to acquire content from any of the node devices in the content distribution system capable of transmitting and receiving content between a plurality of node devices that can communicate with each other via a network;
A search step of searching for a node device storing predetermined content according to the time indicated by the time information acquired in the acquisition step;
A content acquisition step of acquiring the predetermined content from the node device searched in the search step;
A storage step of storing the content acquired in the content acquisition step;
A content transmission step of transmitting the content to the other node device when the content stored in the storage step is retrieved from the other node device;
A determination step of determining whether or not a predetermined condition has been satisfied since the content was transmitted in the content transmission step;
In the determination step, when it is determined that the predetermined condition is satisfied, a prohibition step for prohibiting the content stored in the storage step from being acquired by another node device;
A content distribution method comprising:
前記取得ステップにおいて取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索ステップと、
前記検索ステップにおいて検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得ステップと、
前記コンテンツ取得ステップにおいて取得されたコンテンツを記憶する記憶ステップと、
前記記憶ステップにおいて記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信ステップと、
前記コンテンツ送信ステップにおいて前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定ステップと、
前記判定ステップにより、前記所定の条件が満たされたと判定されたとき、前記コンテンツ送信ステップにおいて送信されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手ステップと、
をコンピュータに実現させるためのノードプログラム。 An acquisition step of acquiring time information indicating a time to acquire content from any of the node devices in the content distribution system capable of transmitting and receiving content between a plurality of node devices that can communicate with each other via a network;
A search step of searching for a node device storing predetermined content according to the time indicated by the time information acquired in the acquisition step;
A content acquisition step of acquiring the predetermined content from the node device searched in the search step;
A storage step of storing the content acquired in the content acquisition step;
A content transmission step of transmitting the content to the other node device when the content stored in the storage step is retrieved from the other node device;
A determination step of determining whether or not a predetermined condition has been satisfied since the content was transmitted in the content transmission step;
When the determination step determines that the predetermined condition is satisfied, a prohibition step for prohibiting the content transmitted in the content transmission step from being acquired by another node device;
A node program that enables a computer to realize
前記取得手段により取得された時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索する検索手段と、
前記検索手段により検索されたノード装置から、前記所定のコンテンツを取得するコンテンツ取得手段と、
前記コンテンツ取得手段により取得されたコンテンツを記憶する記憶手段と、
前記記憶手段に記憶されたコンテンツが、他の前記ノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信するコンテンツ送信手段と、
前記コンテンツ送信手段により前記コンテンツが送信されてから、所定の条件を満たしたか否かを判定する判定手段と、
前記判定手段により、前記所定の条件が満たされたと判定されたとき、前記記憶手段に記憶されたコンテンツが、他の前記ノード装置により取得されることを禁止する禁止手段と、
を備えることを特徴とするコンテンツ配信システム。 An acquisition means for acquiring time information indicating a time for acquiring content from any of the node devices in the content distribution system capable of transmitting and receiving content between a plurality of node devices that can communicate with each other via a network;
Search means for searching for a node device storing predetermined content according to the time indicated by the time information acquired by the acquisition means;
Content acquisition means for acquiring the predetermined content from the node device searched by the search means;
Storage means for storing the content acquired by the content acquisition means;
Content transmitting means for transmitting the content to the other node device when the content stored in the storage means is retrieved from the other node device;
Determination means for determining whether or not a predetermined condition is satisfied after the content is transmitted by the content transmission means;
A prohibiting unit that prohibits the content stored in the storage unit from being acquired by another node device when the determination unit determines that the predetermined condition is satisfied;
A content distribution system comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009153312A JP2011008657A (en) | 2009-06-29 | 2009-06-29 | Content distribution system, node device, content distribution method, and node program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009153312A JP2011008657A (en) | 2009-06-29 | 2009-06-29 | Content distribution system, node device, content distribution method, and node program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011008657A true JP2011008657A (en) | 2011-01-13 |
Family
ID=43565205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009153312A Pending JP2011008657A (en) | 2009-06-29 | 2009-06-29 | Content distribution system, node device, content distribution method, and node program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011008657A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014229281A (en) * | 2013-05-27 | 2014-12-08 | キヤノン株式会社 | Distribution control device, distribution control method and program |
JP2018010652A (en) * | 2017-08-09 | 2018-01-18 | キヤノン株式会社 | Distribution control device, distribution control method, and program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003216505A (en) * | 2002-01-21 | 2003-07-31 | J-Stream Inc | Content delivery control system, its method, and recording medium recording content delivery control program operating on computer |
JP2006237663A (en) * | 2005-02-21 | 2006-09-07 | Dowango:Kk | Streaming distribution system, method and program |
JP2007058688A (en) * | 2005-08-25 | 2007-03-08 | Sharp Corp | Information processing apparatus, content providing apparatus, method for controlling information processing apparatus, control program of information processing apparatus, and recording medium recording control program of information processing apparatus |
JP2007213149A (en) * | 2006-02-07 | 2007-08-23 | Brother Ind Ltd | Distribution system, control device, distribution destination device, node device, control program, distribution destination device program, and node device program |
JP2007317127A (en) * | 2006-05-29 | 2007-12-06 | Brother Ind Ltd | CONTENT DISTRIBUTION SYSTEM, CONTENT MANAGEMENT DEVICE, CONNECTION MANAGEMENT DEVICE, TERMINAL DEVICE, CONTENT DISTRIBUTION METHOD, AND PROGRAM USED FOR THE SAME |
-
2009
- 2009-06-29 JP JP2009153312A patent/JP2011008657A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003216505A (en) * | 2002-01-21 | 2003-07-31 | J-Stream Inc | Content delivery control system, its method, and recording medium recording content delivery control program operating on computer |
JP2006237663A (en) * | 2005-02-21 | 2006-09-07 | Dowango:Kk | Streaming distribution system, method and program |
JP2007058688A (en) * | 2005-08-25 | 2007-03-08 | Sharp Corp | Information processing apparatus, content providing apparatus, method for controlling information processing apparatus, control program of information processing apparatus, and recording medium recording control program of information processing apparatus |
JP2007213149A (en) * | 2006-02-07 | 2007-08-23 | Brother Ind Ltd | Distribution system, control device, distribution destination device, node device, control program, distribution destination device program, and node device program |
JP2007317127A (en) * | 2006-05-29 | 2007-12-06 | Brother Ind Ltd | CONTENT DISTRIBUTION SYSTEM, CONTENT MANAGEMENT DEVICE, CONNECTION MANAGEMENT DEVICE, TERMINAL DEVICE, CONTENT DISTRIBUTION METHOD, AND PROGRAM USED FOR THE SAME |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014229281A (en) * | 2013-05-27 | 2014-12-08 | キヤノン株式会社 | Distribution control device, distribution control method and program |
JP2018010652A (en) * | 2017-08-09 | 2018-01-18 | キヤノン株式会社 | Distribution control device, distribution control method, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5556104B2 (en) | Information communication system, information communication method, and information communication program | |
JP2012078902A (en) | Information processing apparatus, information processing method and information processing program | |
JP5293533B2 (en) | Information communication system and information communication method | |
JP5272991B2 (en) | Information communication system, information communication method and program | |
JP2010271933A (en) | Distributed storage system, node device, node processing program, and data file storage method | |
JP5136581B2 (en) | Information communication system, information processing apparatus, information processing method, and information processing program | |
JP4765876B2 (en) | TERMINAL DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM FOR CONTENT DISTRIBUTION SYSTEM | |
JP5532649B2 (en) | Node device, node processing program, and content storage method | |
JP4877107B2 (en) | Terminal device and information processing program in information distribution system, and information processing method of terminal device | |
US8312068B2 (en) | Node device, information communication system, method for managing content data, and computer readable medium | |
JP2011233021A (en) | Information communication system, node device, information processing method, and information processing program | |
JP2011008657A (en) | Content distribution system, node device, content distribution method, and node program | |
JP5233799B2 (en) | Content distribution system, node device, content distribution method, and content acquisition processing program | |
JP2009232272A (en) | Content distributive storage system, content playback method, node device, management apparatus, node-processing program, and management processing program | |
JP5157770B2 (en) | Node device, program, and storage instruction method | |
JP5412924B2 (en) | Node device, node processing program, and content data deletion method | |
JP5327078B2 (en) | Information communication system, information communication method, node device, and program | |
JP5287059B2 (en) | Node device, node processing program, and storage instruction method | |
JP5007624B2 (en) | Content distributed storage system, content data acquisition method, node device, and node processing program | |
JP2009230573A (en) | Distributed content storage system, content reproduction method, node device, management device, node processing program and management processing program | |
JP2011070557A (en) | Information communication system, support device, program for support device, and content acquisition method | |
JP5347876B2 (en) | Information communication system, node device, content acquisition method, and program | |
JP5326970B2 (en) | Content distribution system, node device, node program, and public message transmission method | |
JP4867845B2 (en) | Content distributed storage system, content data acquisition method, node device, and node processing program | |
JP2012178119A (en) | Communication system, information processor, management method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120308 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130205 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130206 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130903 |