[go: up one dir, main page]

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 PDF

Info

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
Application number
JP2009153312A
Other languages
Japanese (ja)
Inventor
Minoru Ueda
実 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2009153312A priority Critical patent/JP2011008657A/en
Publication of JP2011008657A publication Critical patent/JP2011008657A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】上位のノード装置への通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることを可能とする配信システム、ノード装置、配信方法及びプログラムを提供する。
【解決手段】ノード装置のいずれかからコンテンツを取得する時刻を示す時刻情報を取得し、時刻情報が示す時刻に応じて、所定のコンテンツを記憶しているノード装置を検索し、検索されたノード装置から所定のコンテンツを取得し、取得されたコンテンツを記憶し、記憶されたコンテンツが他のノード装置から検索されたとき、当該コンテンツを当該他のノード装置に送信し、コンテンツが送信されてから所定の条件を満たしたか否かを判定し、所定の条件が満たされたと判定されたとき、記憶されたコンテンツが他のノード装置により取得されることを禁止する。
【選択図】図3
A 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, Patent Document 1.

このようなコンテンツ分散保存システムにおいて、各ノード装置は、夫々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を利用して、各ノード装置に対してコンテンツを(レプリカとして)効率的に配信する技術が開示されている。具体的に、或るノード装置が、自身で保持しているルーティングテーブルにネットワークアドレス等の情報が登録されている複数のノード装置に対してコンテンツを送信する。コンテンツを受信した各ノード装置は、同様に自身で保持しているルーティングテーブルに情報が登録されている複数のノード装置に対してコンテンツを転送する。このようにして、コンテンツが次々とプッシュ式に転送されていくことにより、最初にコンテンツを送信したノードを頂点として、ツリー上の配信経路を経て、コンテンツが各ノード装置にまんべんなく配信されるのである。また、この配信経路は各ノード装置のルーティングテーブルに登録されている情報により予め或る程度決まっているともいえる。   Patent Document 1 discloses a technique for efficiently distributing content (as a replica) to each node device using DHT. Specifically, a certain node device transmits content to a plurality of node devices in which information such as a network address is registered in a routing table held by the node device. Similarly, each node device that has received the content transfers the content to a plurality of node devices whose information is registered in the routing table held by itself. In this way, as content is transferred one after another in a push-type manner, the content is distributed evenly to each node device via the distribution route on the tree with the node that first transmitted the content as the apex. . Further, it can be said that this distribution route is determined in advance to some extent by information registered in the routing table of each node device.

特開2007−53662号公報JP 2007-53662 A

上述したコンテンツ配信では、図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 claim 6 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 has been satisfied since the content was transmitted in the content transmission step, and a determination in the determination step that the predetermined condition has been satisfied And a prohibiting step for prohibiting the content stored in the storing step from being acquired by another node device.

請求項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 claim 8 acquires time information indicating a time at which content is acquired from one 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. From the acquisition means, the 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, and the node device searched by the search means, A content acquisition unit that acquires predetermined content, a storage unit that stores the content acquired by the content acquisition unit, and the content stored in the storage unit when the content is retrieved from another node device. Content transmitting means for transmitting the content to the other node device, and the content transmitter Determining means for determining whether or not a predetermined condition has been satisfied since the content was transmitted by means of, and when the determining means determines that the predetermined condition has been satisfied, the content stored in the storage means Is provided with prohibiting means for prohibiting acquisition by other node devices.

本発明によれば、所定の条件が満たされたときに、取得されたコンテンツが他のノード装置により取得されることが禁止される。よって、上位のノード装置への通信負荷を高くすることなく、全体としてのコンテンツ配信にかかる時間を短くすることができる。   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.

第1実施形態に係るコンテンツ分散保存システムSにおける各ノード装置の接続態様の一例を示す図である。It is a figure which shows an example of the connection aspect of each node apparatus in the content distribution storage system S which concerns on 1st Embodiment. 第1実施形態に係るコンテンツ分散保存システムSにおける概要構成の一例を示す図である。It is a figure which shows an example of schematic structure in the content distribution storage system S which concerns on 1st Embodiment. 第1実施形態に係るセンターサーバSA及び各ノードNnのコンテンツのアップロード状態、ダウンロード状態及び保持状態を示す図であり、(a)は、禁止方法1の場合の図であり、(b)は、禁止方法2の場合の図である。It is a figure which shows the upload state of the center server SA which concerns on 1st Embodiment, and each node Nn, a download state, and a holding state, (a) is a figure in the case of the prohibition method 1, (b) It is a figure in the case of the prohibition method 2. FIG. 第1実施形態に係るセンターサーバSAの概要構成例を示す図である。It is a figure showing an example of outline composition of center server SA concerning a 1st embodiment. 第1実施形態に係るノードNnの概要構成例を示す図である。It is a figure which shows the example of a schematic structure of the node Nn which concerns on 1st Embodiment. 第1実施形態の実施例1に係るノードNnにおける制御部21の処理例を示すフローチャートである。It is a flowchart which shows the process example of the control part 21 in the node Nn which concerns on Example 1 of 1st Embodiment. 第1実施形態の実施例2に係るノードNnにおける制御部21の処理例を示すフローチャートである。It is a flowchart which shows the process example of the control part 21 in the node Nn which concerns on Example 2 of 1st Embodiment. 第2実施形態に係るコンテンツ分散保存システムSにおけるノードNnの処理例を示すフローチャートである。It is a flowchart which shows the process example of the node Nn in the content distribution storage system S which concerns on 2nd Embodiment. コンテンツが配信される様子の一例を示す図である。It is a figure which shows an example of a mode that a content is delivered.

以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。   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 lower frame 101 of FIG. 1, the distributed storage system S is configured by connecting a plurality of node devices Nn via the Internet. Further, as shown in a lower frame 101 of FIG. 1, IX (Internet eXchange) 3, ISP (Internet Service Provider) 4a, 4b, DSL (Digital Subscriber Line) line provider devices 5a, 5b, FTTH (Fiber To A network 8 such as the Internet is constructed by the device 6 of the line provider, the communication line 7 and the like. The network 8 is a real-world communication network. Note that a router for transferring data packets is appropriately inserted in the network 8 in the example of FIG. 1, but is not shown in FIG. 1. For example, a telephone line or an optical cable is used as the communication line 7.

このようなネットワーク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 network 8. Hereinafter, the node device is referred to as a “node”. Each node Nn is assigned a unique manufacturing number and an IP (Internet Protocol) address. Then, the content distributed storage system S according to the present embodiment is a peer-to-peer network system formed by connecting any of a plurality of nodes Nn, as shown in the upper frame 100 of FIG. It has become. Each node Nn is a base server distributed and arranged at a plurality of bases in this embodiment.

なお、図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 network 8. The overlay network 9 which is a logical network is realized by a specific algorithm, for example, an algorithm using DHT. Each node Nn connected to the content distributed storage system S is assigned a node ID, which is unique identification information having a predetermined number of digits.

また、ノード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, content 1, content 2, content 3...). Each content created by the division is assigned a content ID and stored in the center server SA. Each node Nn sequentially transfers content 1, content 2, content 3,... For example, when the node Nn downloads the content 1, the node Nn next uploads the content 1 to another node Nn while downloading the content 2. Next, the node Nn uploads the content 2 to another node Nn while downloading the content 3. As a result, the processing capability and communication line of the node Nn can be used efficiently, and the time required for content distribution as a whole is reduced.

各ノード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, content 1 is requested from among the divided content. The time at which the node Nn having the first content request order starts acquiring content is the content distribution start time. Each node Nn requests content Y + 1 when a delay time elapses after requesting content Y (Y = 1, 2, 3,...).

[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 content 1. However, at this time, the node Nn storing the content 1 does not exist. Therefore, in this case, the node N1 downloads the content from the center server SA that stores the content 1 in advance. The node N1 that has downloaded the content 1 stores the content 1 and transmits a publish message. Thereby, the node information of the node N1 is registered in the index information held by the root node of the content 1.

時刻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 content 2 from the center server SA in the same manner as described above. Further, for example, the nodes N2 and N3 having the second content request order search for the location of the content 1, respectively. Then, since it becomes clear that the node N1 is a content holding node, the nodes N2 and N3 download the content 1 from the node N1, respectively.

時刻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 content 3 from the center server SA. Also, the nodes N2 and N3 download the content 2 from the node N1, respectively.

更に時刻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 content 1, respectively. At this time, the content holding nodes corresponding to the content 1 are originally nodes N1 to N3. Then, the nodes N4 to N7 download the content 1 from any one of the nodes N1 to N3. However, at time T2, the node N1 uploads the content 2. Therefore, when the node N1 uploads the content 1 in addition to the content 2, the processing load and the network load on the node N1 increase, and content distribution delay occurs.

そこで、ノード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 content 1 when a predetermined condition is satisfied. Details of the conditions for prohibiting the download of contents and the prohibition method will be described later. By prohibiting the upload of the content 1 from the node N1, the nodes N4 to N7 download the content 1 from the node N2 or N3, respectively.

時刻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 content 4 from the center server SA. Further, the nodes N2 and N3 download the content 3 from the node N1, respectively. Further, the nodes N4 to N7 download the content 2 from the node N2 or N3, respectively. Also in this case, uploading of the content 2 from the node N1 is prohibited. Further, for example, the nodes N8 to N15 whose content request order is No. 4 search the location of the content 1 respectively. At this time, the content holding nodes corresponding to the content 1 are originally nodes N1 to N7. Upload of content 1 from node N1 is already prohibited. Here, uploading of content 1 from nodes N2 and N3 is also prohibited. Accordingly, the nodes N8 to N15 download the content 1 from any one of the nodes N4 to N7.

コンテンツ5以降も、上記と同様にして転送されていき、全てのコンテンツが各ノードNnに転送されたとき、コンテンツ配信が完了する。   Content 5 and subsequent content are transferred in the same manner as described above, and when all the content is transferred to each node Nn, the content distribution is completed.

[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 prohibition condition 1, the number of times each node Nn can upload to each other node Nn for each content (content 1, content 2, content 3...) Is limited. Hereinafter, the number of times uploading is possible is referred to as “uploadable number”. here,
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 prohibition condition 2, for example, content upload is permitted until a predetermined time elapses after the content is released, and content upload is prohibited after the predetermined time elapses. Hereinafter, the time during which content upload is permitted is referred to as “publication time”. Here, publishing the content means that the node Nn that has downloaded the content transmits a publish message so that it can be searched from another node Nn as a content holding node that holds the downloaded content. To make it possible.

公開時間は、例えば、次のようにして決められる。先ず、公開時間は、コンテンツ要求順が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 prohibition condition 3, for example, the center server SA transmits a disclosure stop instruction message to each node Nn. The disclosure stop instruction message includes, for example, a content ID of content prohibited from uploading. For example, the center server SA instructs the X-th node Nn to prohibit uploading of the content Y immediately before the time when the content Y is acquired by the X + second node Nn in the content request order. Send a message. The node Nn that has received the publication stop instruction message prohibits uploading of the content corresponding to the content ID included in the publication stop instruction message.

[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 prohibition method 1, the content holding node holds the downloaded content, but prevents it from being searched by other nodes Nn as the content holding node of the content. This is called non-disclosure of content. For example, the content holding node transmits a content deletion message when a condition for prohibiting content upload is satisfied. The content deletion message includes the content ID of the content to be made private and the node information of the content holding node that stores the content to be made private. The content deletion message arrives at the root node by DHT routing using the content ID included in the content deletion message as a key. The root node that has received the content deletion message deletes the node information of the content holding node indicated by the node ID included in the content deletion message from the index information corresponding to the content ID included in the content deletion message. As a result, the content is not disclosed to the content holding node that has transmitted the content deletion message.

図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 prohibition method 1. Specifically, in FIG. 3A, at each time from the time T0 to the time T4, which is the content distribution start time, the center server SA and the first, second, and third nodes Nn in the content request order. The state of is shown. In each column, the content to be uploaded, the content to be downloaded, and the held content are shown. In addition, the held contents are shown separately for published contents and unpublished contents.

図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 content 1 from the center server SA.

時刻T1において、ノードN1は、ダウンロードしたコンテンツ1を保持している。また、ノードN1は、コンテンツ2をセンターサーバSAからダウンロードする。また、コンテンツ要求順が2番目のノードN2及びN3は、コンテンツ1をノードN1からダウンロードする。   At time T1, the node N1 holds the downloaded content 1. Further, the node N1 downloads the content 2 from the center server SA. The nodes N2 and N3 having the second content request order download the content 1 from the node N1.

時刻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 contents 1 and 2. However, the content 1 is not disclosed before the time T2 elapses. Further, the node N1 downloads the content 3 from the center server SA. Nodes N2 and N3 download content 2 from node N1. Also, the nodes N4 to N7 download from the node N2 or N3 that publishes the content 1 among the nodes that hold the content 1.

時刻T3においては、ノードN1においてコンテンツ2が新たに非公開とされ、ノードN2及びN3においてコンテンツ1が非公開とされる。そして、ノードN1は、センターサーバSAからコンテンツ4をダウンロードする。また、ノードN2及びN3は、コンテンツ3をノードN1からダウンロードする。また、ノードN4〜N7は、コンテンツ2をノードN2又はN3からダウンロードする。   At time T3, content 2 is newly undisclosed at node N1, and content 1 is undisclosed at nodes N2 and N3. Then, the node N1 downloads the content 4 from the center server SA. Further, the nodes N2 and N3 download the content 3 from the node N1. Further, the nodes N4 to N7 download the content 2 from the node N2 or N3.

時刻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, content 3 is newly undisclosed at node N1, content 2 is newly undisclosed at nodes N2 and N3, and content 1 is undisclosed at nodes N4 to N7. Then, the node N1 downloads the content 5 from the center server SA. In addition, the nodes N2 and N3 download the content 4 from the node N1. The nodes N4 to N7 download the content 1 from the node N2 or N3.

禁止方法2においては、コンテンツ保持ノードは、コンテンツのアップロードを禁止する条件を満たした場合、該当するコンテンツをコンテンツ保持ノード自身のキャッシュから削除する。この場合、コンテンツ保持ノードは、コンテンツ削除メッセージを送信しても良いし、送信しなくても良い。   In the prohibition method 2, when the content holding node satisfies a condition for prohibiting uploading of content, the content holding node deletes the corresponding content from the cache of the content holding node itself. In this case, the content holding node may or may not transmit a content deletion message.

配信サーバ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 prohibition methods 1 and 3, the distribution server Pn may not be installed. This is because the node Nn itself can distribute the content to the user terminal Um.

図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 prohibition method 2. As shown in FIG. 3B, the timing at which content uploading is prohibited in each node Nn is the same as in FIG. In the node N1, the content 1 is deleted at the time T2, the content 2 is deleted at the time T3, and the content 3 is deleted at the time T4. In nodes N2 and N3, content 1 is deleted at time T3 and content 2 is deleted at time T4. In the nodes N4 to N7, the content 1 is deleted at the time T4.

禁止方法3においては、コンテンツのアップロードを禁止する条件を満たしているコンテンツ保持ノードに、ユーザノードからコンテンツ送信要求メッセージが送信された場合、ユーザノードに対して別のコンテンツ保持ノードが紹介される。例えば、コンテンツのアップロードを禁止する条件を満たしているコンテンツ保持ノードは、ユーザノードに対して、コンテンツ送信不可メッセージを送信する。コンテンツ送信不可メッセージは、コンテンツの送信することができないことを示すメッセージである。コンテンツ送信不可メッセージを受信したユーザノードは、再度コンテンツ所在問合せメッセージを送信してルートノードからインデックス情報を取得する。そして、ユーザノードは、取得したインデックス情報から別のコンテンツ保持ノードを選択して、再度コンテンツ送信要求メッセージを送信する。或いは、ユーザノードは、複数のコンテンツ保持ノードのノード情報が含まれているインデックス情報をルートノードから取得していた場合には、この取得していたインデックス情報に基づいて別のコンテンツ保持ノードを選択しても良い。   In the prohibition method 3, when a content transmission request message is transmitted from a user node to a content holding node that satisfies a condition for prohibiting uploading of content, another content holding node is introduced to the user node. For example, a content holding node that satisfies a condition for prohibiting uploading of content transmits a content transmission impossible message to the user node. The content transmission impossible message is a message indicating that content cannot be transmitted. The user node that has received the content transmission impossible message transmits the content location inquiry message again and acquires index information from the root node. Then, the user node selects another content holding node from the acquired index information and transmits the content transmission request message again. Alternatively, when the user node has acquired index information including node information of a plurality of content holding nodes from the root node, the user node selects another content holding node based on the acquired index information. You may do it.

[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 re-permission condition 1, for example, after a predetermined time elapses after the content upload is prohibited, the content upload is permitted again. Hereinafter, the time required for content uploading to be permitted again after being prohibited is referred to as “private time”.

アップロード再許可条件2においては、コンテンツのアップロードは原則として二度と許可されない。   In the upload re-permission condition 2, content uploading is not permitted again in principle.

アップロード再許可条件3においては、例えば、センターサーバSAが、各ノードNnに対して公開再開指示メッセージを送信する。公開再開指示メッセージには、例えば、アップロードを再許可するコンテンツのコンテンツIDが含まれている。センターサーバSAは、例えば、所定の時刻になったとき、全てのノードNnに対して公開再開指示メッセージを送信しても良い。公開再開指示メッセージを受信したノードNnは、公開再開指示メッセージに含まれているコンテンツIDに対応するコンテンツのアップロードを再度許可する。   In the upload re-permission condition 3, for example, the center server SA transmits a public resumption instruction message to each node Nn. The public resumption instruction message includes, for example, the content ID of the content for which uploading is permitted again. For example, the center server SA may transmit a public resumption instruction message to all the nodes Nn at a predetermined time. The node Nn that has received the public resumption instruction message again permits uploading of the content corresponding to the content ID included in the public resumption instruction message.

コンテンツのアップロードを再度許可する方法は、コンテンツのアップロードを禁止する方法によって異なる。例えば、禁止方法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 prohibition method 1, the content holding node transmits a publish message for the content whose upload is permitted again. That is, the content holding node republishes the content. In the case of the prohibition method 3, the content holding node ends the prohibition of content uploading by the method 3. That is, the content holding node may upload the requested content as it is to the user node.

以上説明したアップロード禁止条件、禁止方法及びアップロード再許可条件について夫々どの条件及び方法を用いるかは、例えば、コンテンツ分散保存システム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 control unit 11 as a computer including a CPU having a calculation function, a working RAM, a ROM that stores various data and programs, and the like. Further, the center server SA includes a storage unit 12 composed of an HD or the like for storing and storing various data and various programs. Furthermore, the center server SA includes a communication unit 13 for controlling communication of information with the node Nn through the network 8 or the like. Furthermore, the center server SA includes a display unit 14 such as a CRT or a liquid crystal display that displays various types of information. Furthermore, the center server SA includes an input unit (for example, a keyboard, a mouse, etc.) 15 that receives an instruction from the operator and gives an instruction signal corresponding to the instruction to the control unit 11. The control unit 11, the storage unit 12, the communication unit 13, the display unit 14, and the input unit 15 are connected to each other via a bus 16.

記憶部12には、各ノードNnのノードID、IPアドレス及びポート番号等が記憶されている。また、記憶部12には、配信対象となるコンテンツが記憶されている。   The storage unit 12 stores the node ID, IP address, port number, and the like of each node Nn. The storage unit 12 stores content to be distributed.

更に、記憶部12には、コンテンツ配信に用いられる設定ファイルが記憶されている。設定ファイルは、本発明における時刻情報の一例である。設定ファイルには、例えば、コンテンツ配信開始時刻、遅延時間、コンテンツが配信される各ノードNnのノードID及び各ノードNnのコンテンツ要求順が記載されている。或いは、コンテンツ配信開始時刻及び遅延時間に代えて、コンテンツ要求順毎に各コンテンツを要求する時刻が記載されても良い。また、設定ファイルには、例えば、配信対象となる複数のコンテンツのコンテンツID及びコンテンツの配信順が記載されている。   Furthermore, the storage unit 12 stores a setting file used for content distribution. The setting file is an example of time information in the present invention. In the setting file, for example, content distribution start time, delay time, node ID of each node Nn to which the content is distributed, and content request order of each node Nn are described. Alternatively, instead of the content distribution start time and the delay time, the time for requesting each content may be described for each content request order. In the setting file, for example, the content IDs of a plurality of contents to be distributed and the distribution order of the contents are described.

また、アップロード禁止条件が、上述したアップロード禁止条件1である場合、つまり、アップロード可能な回数を制限する場合、設定ファイルには、アップロード可能回数が記載される。また、アップロード禁止条件が、アップロード禁止条件2である場合、つまり、アップロード可能な時間を制限する場合、設定ファイルには、公開時間が記載される。また、アップロード再許可条件が、上述したアップロード再許可条件1である場合、つまり、一定時間経過後である場合、設定ファイルには、非公開時間が記載される。また、アップロード再許可条件が、上述したアップロード再許可条件3である場合、つまり、外部からの指示である場合、設定ファイルには、センターサーバSAが公開再開指示メッセージを送信する時刻が記載される。   Further, when the upload prohibition condition is the upload prohibition condition 1 described above, that is, when the number of uploadable times is limited, the number of uploadable times is described in the setting file. When the upload prohibition condition is the upload prohibition condition 2, that is, when the uploadable time is limited, the disclosure time is described in the setting file. In addition, when the upload re-permission condition is the above-described upload re-permission condition 1, that is, after a predetermined time has elapsed, the non-disclosure time is described in the setting file. Further, when the upload re-permission condition is the above-described upload re-permission condition 3, that is, an instruction from the outside, the setting file describes the time at which the center server SA transmits the disclosure resumption instruction message. .

このような内容の設定ファイルは、例えば、オペレータにより作成されても良いし、センターサーバ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 control unit 11 performs overall control of the entire center server SA when the CPU reads and executes a program stored in the storage unit 12 or the like.

例えば、制御部11は、記憶部12に記憶されている設定ファイルを各ノードNnに配信する。この設定ファイルの配信は、例えば、特開2007−053662号公報にて開示されたDHTマルチキャスト(マルチキャストメッセージ転送処理)によりコンテンツ分散保存システムSに参加している全てのノードNnに対して行っても良い。   For example, the control unit 11 distributes the setting file stored in the storage unit 12 to each node Nn. The distribution of the setting file may be performed for all nodes Nn participating in the content distributed storage system S by, for example, DHT multicast (multicast message transfer processing) disclosed in Japanese Patent Application Laid-Open No. 2007-053662. good.

また、制御部11は、ノードNnからコンテンツ送信要求メッセージを受信したとき、コンテンツ送信要求メッセージに対応するコンテンツを要求元のノードNnに送信する。   Further, when receiving the content transmission request message from the node Nn, the control unit 11 transmits the content corresponding to the content transmission request message to the requesting node Nn.

なお、上記プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしても良い。また、上記プログラムは、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。   The above program may be downloaded from a predetermined server on the network 8, for example. The program may be recorded on a recording medium such as a CD-ROM and read via a drive of the recording medium.

[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 control unit 21 as a computer including a CPU having a calculation function, a working RAM, a ROM that stores various data and programs, and the like. Each node Nn includes a storage unit 22 composed of an HD (hard disk) or the like for storing and storing various data and various programs, and a buffer memory 23 for temporarily storing a replica of the received content. ing. The storage unit 22 is an example of a storage unit in the present invention. Further, each node Nn includes a decoder unit 24 that decodes encoded video data (video information), audio data (audio information), and the like included in the content replica. Further, each node Nn performs a predetermined drawing process on the decoded video data and the like, and outputs it as a video signal, and displays a video based on the video signal output from the video processor 25. And a display unit 26 such as a CRT or a liquid crystal display. Further, each node Nn converts the decoded audio data into an analog audio signal by D (Digital) / A (Analog) conversion, and then amplifies this by an amplifier and outputs the audio processing unit 27, and this audio processing unit And a speaker 28 that outputs the audio signal output from the sound wave 27 as a sound wave. Furthermore, each node Nn includes a communication unit 29 for controlling communication of information between other nodes Nn and the like through the network 8. Furthermore, each node Nn includes an input unit (for example, a keyboard, a mouse, a remote controller, an operation panel, or the like) 30 that receives an instruction from the user and gives an instruction signal corresponding to the instruction to the control unit 21. Yes. The control unit 21, the storage unit 22, the buffer memory 23, the decoder unit 24, the communication unit 29, and the input unit 30 are connected to each other via a bus 31. As the node Nn, a personal computer, an STB (Set Top Box), or the like can be applied in addition to a dedicated server device.

記憶部22には、DHTを用いたルーティングテーブル、インデックス、並びに、コンテンツ分散保存システムSに参加する際のアクセス先となるコンタクトノードのIPアドレス及びポート番号、及びセンターサーバSAのIPアドレス及びポート番号等が記憶されている。また、記憶部22には、センターサーバSAから配信されてきたファイル情報が記憶される。更に、記憶部22には、ダウンロードされたコンテンツが記憶される。   The storage unit 22 includes a routing table using DHT, an index, an IP address and a port number of a contact node that is an access destination when participating in the content distributed storage system S, and an IP address and a port number of the center server SA. Etc. are stored. The storage unit 22 stores file information distributed from the center server SA. Further, the downloaded content is stored in the storage unit 22.

制御部21は、CPUが記憶部22等に記憶されたプログラム(本発明のノードプログラムを含む)を読み出して実行することにより、本発明における取得手段、検索手段、コンテンツ取得手段、コンテンツ送信手段、判定手段、禁止手段、時間判定手段及び解除手段として機能する。   The control unit 21 reads and executes a program (including the node program of the present invention) stored in the storage unit 22 or the like by the CPU, whereby an acquisition unit, a search unit, a content acquisition unit, a content transmission unit, It functions as a determination unit, a prohibition unit, a time determination unit, and a release unit.

なお、上記ノードプログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしても良いし、例えば、CD−ROM等の記録媒体に記録されてこの記録媒体のドライブを介して読み込まれるようにしても良い。   The node program may be downloaded from a predetermined server on the network 8, for example, or recorded on a recording medium such as a CD-ROM and read via a drive of the recording medium. You may do it.

[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 condition 1 is applied as the upload prohibition condition, the method 1 is used as the prohibition method, and the condition 1 is applied as the upload re-permission condition.

図6は、本実施形態の実施例1に係るノードNnにおける制御部21の処理例を示すフローチャートである。   FIG. 6 is a flowchart illustrating a processing example of the control unit 21 in the node Nn according to the first example of the present embodiment.

図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 control unit 21 determines whether or not the power supply of the node Nn is turned off (step S1). At this time, when the power of the node Nn is not turned off (step S1: NO), the control unit 21 determines whether a setting file has been received from the center server SA as an acquisition unit (step S2). . At this time, when the setting file is received (step S2: YES), the control unit 21 overwrites and stores the received setting file in the storage unit 22 (step S3).

制御部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 control unit 21 determines whether or not content is requested from another node Nn (step S4). That is, the control unit 21 determines whether or not a content transmission request message has been received.

このとき、制御部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 control unit 21 uploads the content corresponding to the content ID included in the content transmission request message to the requesting user node as the content transmission means. (Step S5). Next, the control unit 21 increases the upload count of the uploaded content by 1 (step S6). Next, the control unit 21 determines, as determination means, whether the upload prohibition condition is satisfied based on the setting file (step S7). Specifically, the control unit 21 determines whether or not the number of uploads has reached the number of uploadable times described in the setting file. At this time, when the number of uploads does not reach the number of uploadable times (step S7: NO), the control unit 21 proceeds to step S1.

一方、制御部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 control unit 21 prohibits uploading of the corresponding content as a prohibiting unit (step S8). Specifically, the control unit 21 transmits a content deletion message toward the root node. At this time, the control unit 21 sets the content ID of the content whose upload count reaches the uploadable count in this content deletion message. Next, the control unit 21 stores the content deletion message transmission time in the storage unit 22 (step S9). At this time, the control unit 21 stores the content deletion message transmission time in association with the content ID of the content whose number of uploads has reached the number of uploadable times. The current time at that time is applied to the content deletion message transmission time. After completing the process of step S9, the control unit 21 proceeds to step S1.

ステップ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 control unit 21 determines whether or not the content that has been made secret is present (step S10). Whether or not there is a non-public content can be determined, for example, based on whether or not the content deletion message transmission time is stored in the storage unit 22. Then, when there is a content that has been made private (step S10: YES), the control unit 21 serves as a time determination unit, and the private time described in the setting file has elapsed since it was made private. It is determined whether or not (step S11). For example, the control unit 21 determines whether or not the non-disclosure time has elapsed with the content deletion message transmission time stored in the storage unit 22 as the content non-disclosure start time. When the non-disclosure time has elapsed since the content was made private (step S11: YES), the control unit 21 cancels the prohibition of content uploading as a release unit (step S12). Specifically, the control unit 21 transmits a publish message toward the root node. At this time, the control unit 21 sets the content ID of the content whose non-disclosure time has elapsed in the publish message. In addition, the control unit 21 deletes the content deletion message transmission time corresponding to the content ID of the content whose non-disclosure time has elapsed from the storage unit 22. When the non-disclosure time has not elapsed since the content was made private in step S11, or when the process of step S12 is completed, the control unit 21 proceeds to step S1.

ステップ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 control unit 21 determines whether the time for requesting the content has arrived based on the description content of the setting file. (Step S13). For example, when the time at which content is requested is described in the setting file, it may be determined whether or not the described time has arrived. Alternatively, when the content distribution start time and the delay time are described in the setting file, the time T (X, Y) at which the node Nn whose content request order is X requests the content Y is obtained by the following equation. Can do.
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 control unit 21 transmits a content location inquiry message to the root node as a search unit (step S14). In this content location inquiry message, the content ID of the content whose requested time has arrived is set based on the setting file. Thereafter, the control unit 21 acquires index information transmitted from the root node. As a result, the content holding node is searched. And the control part 21 transmits a content transmission request message to a content holding node based on the node information contained in index information as a content acquisition means. After finishing the process of step S14, the control part 21 transfers to step S1.

ステップ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 control unit 21 determines whether the content is received from the content holding node as the content acquisition unit (step S15). ). At this time, when the content is received (step S15: YES), the control unit 21 stores the received content in the storage unit 22 (step S16). Next, the control unit 21 transmits a publish message toward the root node (step S17). At this time, the control unit 21 sets the content ID of the stored content in the publish message. After completing the process of step S17, the control unit 21 proceeds to step S1.

ステップS1において、制御部21は、ノードNnの電源がOFFとされた場合には(ステップS1:YES)、図6に示す処理を終了させる。   In step S1, when the power of the node Nn is turned off (step S1: YES), the control unit 21 ends the process shown in FIG.

実施例2は、アップロード禁止条件として条件2、禁止方法として方法2、アップロード再許可条件として条件2を夫々適用した場合の実施例である。   In the second embodiment, the condition 2 is applied as the upload prohibition condition, the method 2 is used as the prohibition method, and the condition 2 is applied as the upload re-permission condition.

図7は、本実施形態の実施例2に係るノードNnにおける制御部21の処理例を示すフローチャートである。図7において、図6と同様の要素については同様に符号を付してある。   FIG. 7 is a flowchart illustrating a processing example of the control unit 21 in the node Nn according to the second example of the present embodiment. In FIG. 7, elements similar to those in FIG.

ステップ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 control unit 21 proceeds to step S1.

ステップ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 control unit 21 determines whether there is a published content (step S51). Whether there is a published content can be determined, for example, based on whether the publish message transmission time is stored in the storage unit 22. When there is a published content (step S51: YES), the control unit 21 determines whether the publication time described in the setting file has elapsed since the content was published as a determination unit. Is determined (step S52). For example, the control unit 21 determines whether or not the publishing time has elapsed with the publish message transmission time stored in the storage unit 22 as the content publishing start time. Then, when the publication time has elapsed since the content was published (step S52: YES), the control unit 21 transmits a content deletion message toward the root node (step S53). At this time, the control unit 21 sets the content ID of the content whose publication time has elapsed in the content deletion message. Next, the control unit 21 deletes the content whose publication time has elapsed as a prohibition unit from the storage unit 22 (step S54). In addition, the control unit 21 deletes the publish message transmission time corresponding to the content ID of the content whose publication time has elapsed from the storage unit 22. In step S52, the control unit 21 proceeds to step S1 when the publication time has not elapsed since the content was published or when the process of step S54 is completed.

ステップ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 control unit 21 performs the determination in step S13. The processes in steps S13 to S17 are the same as those in the first embodiment. When transmitting the publish message in step S17, the control unit 21 stores the publish message transmission time in the storage unit 22 (step S55). At this time, the control unit 21 stores the publish message transmission time in association with the content ID of the content stored in step S16. The current time at that time is applied as the publish message transmission time. When the control section 21 finishes the process of step S55, the control section 21 proceeds to step S1.

実施例3は、アップロード禁止条件として条件3、禁止方法として方法1、アップロード再許可条件として条件3を夫々適用した場合の実施例である。   In the third embodiment, the condition 3 is applied as the upload prohibition condition, the method 1 is applied as the prohibition method, and the condition 3 is applied as the upload re-permission condition.

ノードNnの制御部21は、記憶部22に記憶されている設定ファイルに基づいてコンテンツを要求する時刻が到来したか否かを判定する。そして、制御部21は、コンテンツを要求する時刻が到来した場合には、コンテンツ所在問合せメッセージを送信する。これによって、制御部21は、コンテンツ保持ノードから送信されてきたコンテンツを受信し、記憶部22に記憶させる。   The control unit 21 of the node Nn determines whether or not the time for requesting the content has arrived based on the setting file stored in the storage unit 22. Then, when the time for requesting content has arrived, the control unit 21 transmits a content location inquiry message. Thus, the control unit 21 receives the content transmitted from the content holding node and stores it in the storage unit 22.

その後、制御部21は、記憶させたコンテンツについてセンターサーバSAから公開停止指示メッセージを受信すると、コンテンツ削除メッセージをルートノードに向けて送信する。このとき、制御部21は、コンテンツ削除メッセージに、公開停止指示メッセージに含まれるコンテンツIDを設定する。なお、制御部21は、対応するコンテンツについては記憶部22から削除しない。   Thereafter, when receiving a disclosure stop instruction message from the center server SA for the stored content, the control unit 21 transmits a content deletion message toward the root node. At this time, the control unit 21 sets the content ID included in the disclosure stop instruction message in the content deletion message. Note that the control unit 21 does not delete the corresponding content from the storage unit 22.

その後、制御部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 control unit 21 transmits a publish message to the root node. At this time, the control unit 21 sets the content ID included in the public resumption instruction message in the publish message.

以上説明したように、本実施形態によれば、ノードNnの制御部21が、センターサーバSAから送信されてきた設定ファイルを受信する。また、制御部21が、受信した設定ファイルに記載されたコンテンツを要求する時刻、又は、設定ファイルに記載されている情報に基づいて求められたコンテンツを要求する時刻が到来したときに、設定ファイルに記載されているコンテンツIDに対応するコンテンツのコンテンツ保持ノードを検索する。また、制御部21が、検索されたコンテンツ保持ノードからコンテンツをダウンロードする。また、制御部21が、ダウンロードしたコンテンツを記憶部22に記憶させる。また、制御部21が、コンテンツが記憶部22に記憶され公開されてから、アップロード禁止条件が満たされたか否かを判定する。また、制御部21が、アップロード禁止条件が満たされたと判定されたとき、記憶部22に記憶されているコンテンツを他のノードNnに対してアップロードすることを禁止する。   As described above, according to the present embodiment, the control unit 21 of the node Nn receives the setting file transmitted from the center server SA. In addition, when the time when the control unit 21 requests the content described in the received setting file or the time when the content requested based on the information described in the setting file has arrived, the setting file The content holding node of the content corresponding to the content ID described in is searched. In addition, the control unit 21 downloads content from the searched content holding node. In addition, the control unit 21 stores the downloaded content in the storage unit 22. Further, the control unit 21 determines whether or not the upload prohibition condition is satisfied after the content is stored in the storage unit 22 and released. Further, when it is determined that the upload prohibition condition is satisfied, the control unit 21 prohibits uploading of the content stored in the storage unit 22 to another node Nn.

従って、アップロード禁止条件が満たされたときに、ダウンロードされたコンテンツが他のノード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 control unit 21 determines that the number of uploads has reached the number of uploadable times described in the setting file as the upload prohibition condition, the uploading of the content stored in the storage unit 22 is prohibited.

また、制御部21が、アップロード禁止条件として、コンテンツが公開されてから、設定ファイルに記載された公開時間が経過したと判定した場合に、記憶部22に記憶されているコンテンツのアップロードを禁止する。   Further, when the control unit 21 determines that the publication time described in the setting file has elapsed since the content was published as the upload prohibition condition, the uploading of the content stored in the storage unit 22 is prohibited. .

従って、公開時間が経過した後、コンテンツのアップロードは行われないので、コンテンツ要求順が相対的に早いノード装置への通信負荷が高くなることを確実に防止することができる。   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 control unit 21 determines that the disclosure stop instruction message transmitted from the center server SA is received as the upload prohibition condition, the upload of the content stored in the storage unit 22 is prohibited.

従って、ノード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 control unit 21 prohibits uploading the content stored in the storage unit 22 to another node Nn, and determines that the non-disclosure time described in the setting file has elapsed. The prohibition of uploading of the content stored in the storage unit 22 is lifted.

従って、コンテンツ配信時にコンテンツをダウンロードしていなかったノード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 control unit 21 stores the content in the storage unit 22, the control unit 21 transmits a publish message including the node information of the node Nn of the control unit 21 itself to the root node. The control unit 21 transmits a content inquiry message to the root node and receives index information from the root node to search for a content holding node. Further, the control unit 21 transmits a content transmission request message to the searched content holding node based on the node information included in the received index information. When the control unit 21 determines that the upload prohibition condition is satisfied, the control unit 21 transmits a content deletion message including the node information of the node Nn of the control unit 21 itself to the root node.

従って、ノード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, Condition 1 is applied as the upload prohibition condition.

なお、コンテンツ分散保存システム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 node storage unit 22 stores index information as described above. In this embodiment, the index information stored in the root node includes the content ID of the content managed by the root node, the node information of the content holding node that stores the content, and the content holding node that stores the content. A pair with the number of uploads uploaded is included. When the root node receives a publish message from the content holding node, the root node registers the node information of the content holding node in the index information stored in the storage unit 22. At this time, the root node sets 0 as the upload count in association with the node information of the content holding node.

図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 line dealer apparatus 6 FTTH line dealer apparatus 7 communication line 8 network 9 overlay network 11 control section 12 storage section 13 communication section 14 display section 15 input section 16 bus 21 control section 22 storage section 23 buffer memory 24 decoder Unit 25 Video processing unit 26 Display unit 27 Audio processing unit 28 Speaker 29 Communication unit 30 Input unit 31 Bus Nn node (base server)
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:
JP2009153312A 2009-06-29 2009-06-29 Content distribution system, node device, content distribution method, and node program Pending JP2011008657A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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