JP2008234444A - Content distributed storage system, node device, node processing program, and server function control method - Google Patents

Content distributed storage system, node device, node processing program, and server function control method Download PDF

Info

Publication number
JP2008234444A
JP2008234444A JP2007075029A JP2007075029A JP2008234444A JP 2008234444 A JP2008234444 A JP 2008234444A JP 2007075029 A JP2007075029 A JP 2007075029A JP 2007075029 A JP2007075029 A JP 2007075029A JP 2008234444 A JP2008234444 A JP 2008234444A
Authority
JP
Japan
Prior art keywords
node
content
content data
server function
node device
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.)
Withdrawn
Application number
JP2007075029A
Other languages
Japanese (ja)
Inventor
Masahiro Yamamoto
匡宏 山本
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 JP2007075029A priority Critical patent/JP2008234444A/en
Publication of JP2008234444A publication Critical patent/JP2008234444A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a content distributed storage system, a node device, a node processing program, and a server function control method for preventing a user from being disturbed by operation sound. <P>SOLUTION: The content distributed storage system is provided with a plurality of node devices capable communicating with each other via a network so that a plurality of content data are distributed to be stored in a plurality of node devices. Each of the node devices is provided with a server function for transmitting content data related to a provision request to another node device when provision request information showing the provision request for content data is received from another node device via the network, a presence determination means determining whether there is a person in the periphery or not, and a control means stopping the server function while presence of the person is determined in periphery. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

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

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

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

ところで、上記検索に係るコンテンツデータのレプリカを保存しているノード装置が、当該レプリカの要求に応じて、当該レプリカを提供する配信動作は、通常、当該レプリカを提供するノード装置のユーザには特に知らされずに行われる。   By the way, the distribution operation in which the node device that stores the replica of the content data related to the search provides the replica in response to the request of the replica usually performs the operation of the node device that provides the replica. It is done without being informed.

しかしながら、例えば、ユーザがノード装置を操作してコンテンツの再生動作させておらず、周囲が静かな状況(特に、夜間)において、上記コンテンツデータのレプリカを提供する配信動作が行われると、当該配信動作音(特に、ハードディスクドライブの動作音)が特に目立つようになり、当該ユーザにとっては好ましくない。   However, for example, when a distribution operation for providing a replica of the content data is performed in a situation where the user does not operate the node device to perform the content reproduction operation and the surroundings are quiet (particularly at night), the distribution is performed. The operation sound (especially the operation sound of the hard disk drive) becomes particularly noticeable, which is not preferable for the user.

本発明は、以上の点等に鑑みてなされたものであり、ユーザに動作音を意識させないようにすることが可能なコンテンツ分散保存システム、ノード装置、ノード処理プログラム、及びサーバ機能制御方法を提供することを課題とする。   The present invention has been made in view of the above points and the like, and provides a distributed content storage system, a node device, a node processing program, and a server function control method that can prevent a user from being aware of operation sounds. The task is to do.

上記課題を解決するために、請求項1に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置であって、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能と、前記周囲に人が存在するか否かを判断する存在判断手段と、前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、を備えることを特徴とする。   In order to solve the above-described problem, the invention according to claim 1 is provided with a plurality of node devices that can communicate with each other via a network, and a plurality of content data are distributed and stored in the plurality of node devices. When receiving provision request information indicating a content data provision request from another node device via the network, the node device in the system sends the content data related to the provision request to the other node device. And a server function for determining whether or not there is a person in the surroundings, and a control means for stopping the server function while it is determined that a person is present in the surroundings. It is characterized by that.

この発明によれば、周囲に人が存在すると判断されている間、上記サーバ機能を停止させるように構成したので、ユーザに動作音を意識させないようにすることができる。   According to the present invention, since the server function is stopped while it is determined that there is a person around, it is possible to prevent the user from being aware of the operation sound.

請求項2に記載の発明は、請求項1に記載のノード装置において、前記存在判断手段は、周囲に存在する人を感知する人感センサからの情報を取得し、当該情報に基づいて、前記周囲に人が存在するか否かを判断することを特徴とする。   According to a second aspect of the present invention, in the node device according to the first aspect, the presence determination unit acquires information from a human sensor that senses a person existing in the vicinity, and based on the information, It is characterized by determining whether or not there is a person around.

請求項3に記載の発明は、請求項1又は2に記載のノード装置において、周囲の音を検知する音センサからの情報を取得し、当該情報に基づいて、前記周囲の音が規定値以上であるか否かを判断する音判断手段と、前記制御手段は、前記周囲の音が規定値以上である場合には、前記周囲に人が存在すると判断されている間であっても、前記サーバ機能を継続させることを特徴とする。   According to a third aspect of the present invention, in the node device according to the first or second aspect, information from a sound sensor that detects a surrounding sound is acquired, and based on the information, the surrounding sound exceeds a specified value. The sound judging means for judging whether or not the sound and the control means, when the surrounding sound is equal to or higher than a predetermined value, even while it is judged that there is a person in the surrounding, The server function is continued.

この発明によれば、周囲の音が規定値以上である場合には、ユーザは動作音を気にならないと考えられるので、周囲に人が存在すると判断されている間であっても、上記サーバ機能を継続させることで、他のノード装置からの要求に応じることができる。   According to the present invention, when the ambient sound is equal to or higher than the specified value, it is considered that the user does not care about the operation sound, so even if it is determined that there is a person around, the server By continuing the function, it is possible to respond to requests from other node devices.

請求項4に記載の発明は、請求項1乃至3の何れか一項に記載のノード装置において、電源オフ指示を受け付ける電源オフ指示受付手段を更に備え、前記存在判断手段は、前記電源オフ指示が受け付けられた後に、前記周囲に人が存在するか否かを判断することを特徴とする。   According to a fourth aspect of the present invention, in the node device according to any one of the first to third aspects of the present invention, the node device further includes a power-off instruction receiving unit that receives a power-off instruction. It is characterized in that it is determined whether or not there is a person in the surrounding area after being accepted.

請求項5に記載の発明は、請求項1乃至4の何れか一項に記載のノード装置において、前記制御手段は、前記サーバ機能の停止中に、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合には、当該提供要求に係るコンテンツデータを提供できないことを示す情報を当該他のノード装置に対して送信することを特徴とする。   According to a fifth aspect of the present invention, in the node device according to any one of the first to fourth aspects, the control unit is configured to receive content from another node device via the network while the server function is stopped. When provision request information indicating a data provision request is received, information indicating that the content data related to the provision request cannot be provided is transmitted to the other node device.

請求項6に記載の発明は、請求項1乃至5の何れか一項に記載のノード装置において、前記サーバ機能には、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信する機能が含まれることを特徴とする。   According to a sixth aspect of the present invention, in the node device according to any one of the first to fifth aspects, the server function is provided with a request to provide content data from another node device via the network. When the request information is received, a function of transmitting content data related to the provision request to the other node device is included.

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

請求項8に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムであって、前記ノード装置は、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能と、前記周囲に人が存在するか否かを判断する存在判断手段と、前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、を備えることを特徴とする。   The invention according to claim 8 is a content distributed storage system comprising a plurality of node devices capable of communicating with each other via a network, and a plurality of content data being distributed and stored in the plurality of node devices. A server function for transmitting content data related to the provision request to the other node device when receiving provision request information indicating a content data provision request from the other node device via the network; It is characterized by comprising presence determining means for determining whether or not a person is present in the surroundings, and control means for stopping the server function while it is determined that a person is present in the surroundings.

請求項9に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置のサーバ機能制御方法であって、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能を有する前記ノード装置が、前記周囲に人が存在するか否かを判断する工程と、前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる工程と、を備えることを特徴とする。   The invention according to claim 9 is a server function of the node device in a content distributed storage system comprising a plurality of node devices capable of communicating with each other via a network, and a plurality of content data being distributed and stored in the plurality of node devices. In the control method, when provision request information indicating a content data provision request is received from another node device via the network, the content data related to the provision request is transmitted to the other node device. The node device having a server function includes a step of determining whether a person exists in the surroundings and a step of stopping the server function while it is determined that a person exists in the surroundings. It is characterized by.

本発明によれば、周囲に人が存在すると判断されている間、上記サーバ機能を停止させるように構成したので、ユーザに動作音を意識させないようにすることができる。   According to the present invention, since the server function is stopped while it is determined that there is a person in the vicinity, it is possible to prevent the user from being aware of the operation sound.

以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, the best embodiment of the 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. Configuration of distributed content storage system ]
First, with reference to FIG. 1 and the like, a schematic configuration and the like of the content distributed storage system according to the present embodiment will be described.

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

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

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

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

そして、コンテンツ分散保存システムS(言い換えれば、オーバーレイネットワーク9)に参加している各ノードNnには、所定桁数からなる固有の識別情報であるノードIDが割り当てられており、当該ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、図3に示すような一つのID空間に偏りなく分散して配置されることになる。   Each node Nn participating in the content distributed storage system S (in other words, the overlay network 9) is assigned a node ID, which is unique identification information consisting of a predetermined number of digits. For example, a value (for example, the bit length is 160 bits) obtained by hashing an IP address or a manufacturing number individually assigned to each node Nn with a common hash function (for example, SHA-1 etc.), as shown in FIG. Therefore, they are arranged in a uniform ID space without being distributed.

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

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

また、各ノードNnは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システム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 node including the node ID, IP address, and port number of a node Nn that is moderately separated in the ID space Multiple pieces of information are registered.

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

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

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

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

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

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

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

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

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

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

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

ところで、コンテンツ分散保存システムSにおいては、内容の異なる様々なコンテンツ(例えば、映画や音楽等)データの夫々の複製データ(以下、「レプリカ」という)が複数のノードNnに分散して保存(格納)されている。   By the way, in the content distributed storage system S, each copy data (hereinafter referred to as “replica”) of various contents (for example, movies and music) having different contents is distributed and stored (stored) in a plurality of nodes Nn. )

例えば、ノードN1及びノードN5には、タイトルがXXXの映画のコンテンツデータのレプリカが保存されており、一方、ノードN3には、タイトルがYYYの映画のコンテンツデータのレプリカが保存されるというように、複数のノードNn(以下、「コンテンツ保持ノード」という)に分散されて保存される。   For example, the node N1 and the node N5 store a replica of the content data of the movie whose title is XXX, while the node N3 stores a replica of the content data of the movie whose title is YYY. , Distributed and stored in a plurality of nodes Nn (hereinafter referred to as “content holding nodes”).

また、これらのコンテンツデータのレプリカには、夫々、コンテンツ名(タイトル)及びコンテンツID(コンテンツ毎に固有の識別情報)等の情報が付加されている。このコンテンツIDは、例えば、コンテンツ名+任意の数値(或いは、当該コンテンツデータの先頭数バイトでも良い)が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。或いは、システム管理者が、コンテンツ毎に一意のID値(ノードIDと同一ビット長)を付与しても良い。この場合は、コンテンツ名とそのコンテンツIDの対応が書かれたコンテンツカタログ情報が、全ノードNnに配布される。   In addition, information such as a content name (title) and a content ID (identification information unique to each content) is added to each replica of the content data. This content ID is generated, for example, by hashing a content name + an arbitrary numerical value (or may be the first few bytes of the content data) with a hash function common to the node ID (node ID) Placed in the same ID space). Alternatively, the system administrator may give a unique ID value (same bit length as the node ID) for each content. In this case, the content catalog information in which the correspondence between the content name and the content ID is written is distributed to all the nodes Nn.

また、このように分散保存されているコンテンツデータのレプリカの所在、つまり、当該コンテンツデータのレプリカを保存したノードNnのIPアドレス等と当該コンテンツデータに対応するコンテンツID等の組が含まれるインデックス情報が、当該コンテンツデータのレプリカの所在の管理元であるノードNn(以下、「ルートノード」、又は「コンテンツ(コンテンツID)のルートノード」という)等により記憶(インデックスキャッシュに記憶)、管理されるようになっている。   Further, the location of the replica of the content data thus distributed and stored, that is, the index information including the set of the IP address of the node Nn storing the replica of the content data and the content ID corresponding to the content data Is stored (stored in the index cache) and managed by a node Nn (hereinafter referred to as “root node” or “root node of content (content ID)”) which is a management source of the location of the replica of the content data It is like that.

例えば、タイトルがXXXの映画のコンテンツデータのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN4により管理され、タイトルがYYYの映画のコンテンツデータのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN6により管理される(つまり、レプリカの所在が夫々のコンテンツデータ毎に管理される)。   For example, the index information about the replica of the content data of the movie with the title XXX is managed by the node N4 that is the root node of the content (content ID), and the index information about the replica of the content data of the movie with the title YYY is The node N6 that is the root node of the content (content ID) is managed (that is, the location of the replica is managed for each content data).

すなわち、コンテンツ毎にルートノードが分けられるので負荷分散が図らており、しかも、同一(内容が同一)のコンテンツデータ(コンテンツIDが同一)のレプリカが、夫々、複数のコンテンツ保持ノードに保存されている場合であっても、かかるコンテンツデータのインデックス情報は、一つのルートノードで管理することができる。このため、各ルートノードは、コンテンツ分散保存システムSにおいて自己がその所在を管理するコンテンツデータのレプリカの数(言い換えれば、当該レプリカを保存しているコンテンツ保持ノードの数)を認識している。   That is, since the root node is divided for each content, load distribution is achieved, and replicas of the same (same content) content data (same content ID) are stored in a plurality of content holding nodes, respectively. Even in such a case, the index information of the content data can be managed by one root node. For this reason, each root node recognizes the number of content data replicas managed by itself in the content distribution storage system S (in other words, the number of content holding nodes storing the replicas).

また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNnであるように定められる。   Further, such a root node is determined to be, for example, a node Nn having a node ID closest to the content ID (for example, the higher-order digits match more).

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

ここで、ユーザノードは、当該ユーザによりコンテンツカタログ情報からコンテンツ名等が選択された場合だけでなく、例えばシステム管理者等のコンテンツ管理サーバからコンテンツ投入要求(保存要求)メッセージ(特定の新規コンテンツデータのコンテンツ名及びコンテンツID等を含む)を受信した場合にも、コンテンツ所在問合せ(検索)メッセージ(クエリ)をルートノードに向けて送出する。このコンテンツ投入要求(保存要求)メッセージ(事前プッシュメッセージともいう)は、例えば新規コンテンツデータ(コンテンツカタログ情報により公開される前のコンテンツデータ)のレプリカを、コンテンツ分散保存システムSにおいて所定数確保(保存)させるために、任意の複数のノードNnに配信されるものである。そして、所定数以上のレプリカがコンテンツ分散保存システムSにおいて保存されると、当該新規コンテンツデータのコンテンツ名とコンテンツID等が記述されたコンテンツカタログ情報が各ノードNnに配信(これにより公開)されることになる。或いは、新規に投入するべき新規コンテンツデータの属性情報が記述されたコンテンツカタログ情報を全ノードNnに予め配布しておくが、当該コンテンツカタログ情報には、新規コンテンツデータの公開日が設定されており、公開日までは各ノードNnのユーザに公開されない(利用できない)ようにしておき、公開日が過ぎると、上記投入要求により事前に新規コンテンツデータを保存した各ノードNn以外のノードNnにおいても、当該新規コンテンツデータをリクエストできるようになる。   Here, the user node is not limited to a case where a content name or the like is selected from the content catalog information by the user, but a content input request (save request) message (specific new content data) from a content management server such as a system administrator, for example. The content location inquiry (search) message (query) is also sent to the root node. The content input request (save request) message (also referred to as a pre-push message) secures (preserves) a predetermined number of replicas of new content data (content data before being published by the content catalog information) in the content distributed storage system S, for example. To be distributed to any of a plurality of nodes Nn. When a predetermined number or more of replicas are stored in the content distributed storage system S, the content catalog information describing the content name, content ID, etc. of the new content data is distributed (published thereby) to each node Nn. It will be. Alternatively, content catalog information in which attribute information of new content data to be newly input is described is distributed in advance to all nodes Nn, and the publication date of the new content data is set in the content catalog information. Until the release date, it is made not to be disclosed (cannot be used) to the users of each node Nn, and when the release date has passed, even in nodes Nn other than each node Nn that has previously stored new content data by the input request, The new content data can be requested.

このように、コンテンツ投入要求(保存要求)メッセージに応じて上記レプリカを取得して保存することは、他のノードNnに提供するためのものであるということができる。   Thus, it can be said that the acquisition and storage of the replica in response to the content input request (save request) message is for provision to other nodes Nn.

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

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

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

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

これに対して、ノードN4は、当該コンテンツ所在問合せ(検索)メッセージを受信し、自己のDHTのレベル3のテーブルを参照して、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDが自分である、つまり、自分がそのコンテンツIDのルートノードであることを認識すると、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。これにより、ユーザノードは、所望のコンテンツデータのレプリカを保存している上記コンテンツ保持ノードである例えばノードN1に対して、コンテンツ送信要求メッセージ(コンテンツデータの提供要求を示す提供要求情報の一例)を送信し、そこから当該コンテンツデータのレプリカの提供を受けることが可能になる。   On the other hand, the node N4 receives the content location inquiry (search) message, refers to the table of the level 3 of its own DHT, and is closest to the content ID included in the content location inquiry (search) message. If the node ID (for example, the higher-order digits match more) is itself, that is, if it recognizes that it is the root node of the content ID, it corresponds to the content ID included in the content location inquiry (search) message The index information to be acquired is acquired from the index cache, and the index information is returned to the user node that is the transmission source of the content location inquiry message. As a result, the user node sends a content transmission request message (an example of provision request information indicating a content data provision request) to the content holding node, for example, the node N1 that stores a replica of desired content data. It is possible to receive the provision of a replica of the content data from the transmission.

或いは、ルートノードであるノードN4は、当該インデックス情報に含まれるIPアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージ(ユーザノードのIPアドレス等を含み、当該ユーザノードに対してコンテンツデータのレプリカの送信要求を示す要求情報)を送信する。これにより、ユーザノードは、上記コンテンツ保持ノードである例えばノードN1から当該コンテンツデータのレプリカの提供を受けることが可能になる。   Alternatively, the node N4 that is the root node sends a content transmission request message (including the IP address of the user node, etc. to the content holding node indicated by the IP address included in the index information. Request information indicating a data replica transmission request). As a result, the user node can receive a replica of the content data from the content holding node, for example, the node N1.

なお、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしている中継ノード(例えば、ノードN3のキャッシュノード)から当該インデックス情報を取得(受信)することもできる。   The user node obtains the index information from the relay node that caches the same index information as the root node (for example, the cache node of the node N3) until the content location inquiry message reaches the root node. It can also be acquired (received).

このようにしてコンテンツデータのレプリカを取得、保存したユーザノードは、当該レプリカを保存したことをそのルートノードに知らせるために(言い換えれば、自己が当該コンテンツデータのレプリカを保持していることを、該システムSに参加している他のノードNnに対して公開するために)、そのコンテンツデータのコンテンツID及び自己のIPアドレス等が含まれるパブリッシュ(登録通知)メッセージ(コンテンツデータのレプリカを保存したので、IPアドレス等の登録の要求を示す登録メッセージ)を生成し、該パブリッシュメッセージを、そのルートノードに向けて送出する。これにより、パブリッシュメッセージは、コンテンツ所在問合せ(検索)メッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになり、該ルートノードは、受信したパブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)することになる。こうして、上記ユーザノードは、新たに、上記コンテンツデータのレプリカを保持するコンテンツ保持ノードとなる。   In this way, the user node that has acquired and stored the replica of the content data notifies the root node that the replica has been stored (in other words, the user node holds the replica of the content data. A publish (registration notification) message containing a content ID of the content data, its own IP address, etc. (in order to make it public to other nodes Nn participating in the system S) Therefore, a registration message indicating a registration request such as an IP address is generated, and the publish message is transmitted 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 in the same manner as the content location inquiry (search) message, and the root node receives the IP included in the received publish message. Index information including a set of addresses and content IDs is registered (stored in the index cache area). In this way, the user node becomes a new content holding node that holds a replica of the content data.

なお、上記パブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報は、ルートノードに至るまでの転送経路における中継ノードにおいても登録(キャッシュ)される。   Note that the index information including the set of the IP address and the content ID included in the publish message is also registered (cached) in the relay node on the transfer route to the root node.

また、上記のように保存されたコンテンツデータのレプリカは、ユーザからの削除指示に応じて削除されるようになっており、当該レプリカが削除されると、削除されたレプリカに対応するコンテンツID及び自己(自ノードNn)のIPアドレス等が含まれる削除通知メッセージが、そのルートノードに向けて送出されることになる。これにより、削除通知メッセージは、パブリッシュメッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになり、該ルートノードは、自己のインデックス情報中から当該削除通知メッセージに含まれるコンテンツIDに対応付けられたIPアドレス等を削除することになる。   Further, the replica of the content data stored as described above is deleted in response to a deletion instruction from the user. When the replica is deleted, the content ID corresponding to the deleted replica and A deletion notification message including the IP address of the own node (own node Nn) is transmitted toward the root node. As a result, the deletion notification message arrives at the root node by DHT routing using the content ID as a key, like the publish message, and the root node is included in the deletion notification message from its own index information. The IP address or the like associated with the content ID to be deleted is deleted.

なお、上記削除通知メッセージに含まれるコンテンツIDに対応付けられたIPアドレス等は、ルートノードに至るまでの転送経路における中継ノードにおいても削除される。   Note that the IP address or the like associated with the content ID included in the deletion notification message is also deleted at the relay node in the transfer route up to the root node.

2.ノードNnの構成及び機能等
次に、図5を参照して、ノードNnの構成及び機能について説明する。
[ 2. Configuration and function of node Nn ]
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等から構成されたコンピュータとしての制御部11と、各種データ(例えば、コンテンツデータのレプリカ、インデックス情報、DHT等)及び各種プログラム等を記憶保存(格納)するためのHD等から構成された記憶部12と、受信されたコンテンツデータのレプリカ等を一時蓄積するバッファメモリ13と、コンテンツデータのレプリカに含まれるエンコードされたビデオデータ(映像情報)およびオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部14と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部15と、当該映像処理部15から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部16と、上記デコードされたオーディオデータをアナログオーディオ信号にD (Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部17と、当該音声処理部17から出力されたオーディオ信号を音波として出力するスピーカ18と、ネットワーク8を通じて他のノードNnや各種サーバ等との間の情報の通信制御を行うための通信部20と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス、或いは、操作パネル等)21と、周囲に存在する人を感知する人感センサ(例えば、移動体感知センサや赤外線センサ)22と、周囲の音を検知する音センサ(例えば、集音マイク)23と、を備えて構成され、制御部11、記憶部12、バッファメモリ13、デコーダ部14、及び通信部20はバス24を介して相互に接続(入力部21、人感センサ22及び音センサ23はインターフェース(I/F)を介してバス24に接続)されている。なお、ノードNnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。また、記憶部12には、コンテンツ分散保存システムSに参加する際のアクセス先となるコンタクトノードのIPアドレス及びポート番号等が記憶されている。   As shown in FIG. 5, each node Nn includes a control unit 11 as a computer including a CPU having a calculation function, a working RAM, a ROM for storing various data and programs, and various data (for example, content data). Storage unit 12 composed of an HD or the like for storing and storing (storing) various programs and the like, a buffer memory 13 for temporarily storing a replica of received content data, and the like. A decoder unit 14 for decoding (data expansion, decoding, etc.) encoded video data (video information) and audio data (audio information) included in a replica of the content data, and the decoded video data, etc. A video processing unit 15 that performs a predetermined drawing process and outputs the video signal; After a display unit 16 such as a CRT or a liquid crystal display for displaying video based on the video signal output from the video processing unit 15 and D (Digital) / A (Analog) conversion of the decoded audio data into an analog audio signal Between the audio processing unit 17 that amplifies this by an amplifier and outputs it, the speaker 18 that outputs the audio signal output from the audio processing unit 17 as a sound wave, and other nodes Nn and various servers through the network 8 A communication unit 20 for performing communication control of information, and an input unit (for example, a keyboard, a mouse, or an operation panel) 21 that receives an instruction from the user and gives an instruction signal corresponding to the instruction to the control unit 11 And a human sensor (for example, a moving body sensor or an infrared sensor) 22 for detecting a person existing in the surroundings, and a surrounding sound. A sound sensor (for example, a sound collecting microphone) 23 to be detected, and the control unit 11, the storage unit 12, the buffer memory 13, the decoder unit 14, and the communication unit 20 are connected to each other via a bus 24 ( The input unit 21, the human sensor 22 and the sound sensor 23 are connected to the bus 24 via an interface (I / F). As the node Nn, a personal computer, an STB (Set Top Box), a TV receiver, or the like can be applied. In addition, the storage unit 12 stores the IP address, port number, and the like of a contact node that is an access destination when participating in the content distribution storage system S.

このような構成において、制御部11は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、コンテンツ分散保存システムSへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及び他のノードNnからの提供要求に係るコンテンツデータのレプリカの提供動作を行うサーバ機能(他のノードNnのために稼動するサーバ機能の一例)を有するコンテンツ保持ノードの少なくとも何れか一つのノードとしての処理を行うようになっている。   In such a configuration, the control unit 11 performs overall control by reading and executing a program stored in the storage unit 12 or the like by the CPU, and the above-described user nodes by participating in the content distributed storage system S, Content holding having a server function (an example of a server function that operates for another node Nn) that performs an operation of providing a replica of content data related to a provision request from a relay node, a root node, a cache node, and another node Nn Processing as at least one of the nodes is performed.

更に、当該制御部11は、周囲に人が存在するか否かを判断する存在判断手段、周囲の音が規定値(当該規定値は、予めROM又は記憶部12等に記憶されており、例えば30デシベル程度)以上であるか否かを判断する音判断手段、及び周囲に人が存在すると判断している間、上記サーバ機能を停止させる制御手段等として機能するようになっている。   Further, the control unit 11 is presence determination means for determining whether or not there is a person around, a surrounding sound is a specified value (the specified value is stored in advance in the ROM or the storage unit 12, etc. It functions as a sound judging means for judging whether or not it is about 30 dB or more, and a control means for stopping the server function while judging that there is a person around.

ここで、周囲に人が存在するか否かは、人感センサ22からの情報に基づいて判断される。また、周囲の音が規定値以上であるか否かは、音センサ23により検知された音のレベルに基づいて判断される。なお、人感センサ22及び音センサ23については公知であるので、詳しい説明を省略する。   Here, whether or not there is a person around is determined based on information from the human sensor 22. Whether or not the surrounding sound is equal to or higher than the specified value is determined based on the level of the sound detected by the sound sensor 23. Since the human sensor 22 and the sound sensor 23 are known, detailed description thereof is omitted.

また、当該制御部11は、周囲の音が規定値以上である場合には、ユーザは動作音(コンテンツデータのレプリカの提供動作に係る動作音)が気にならないと考えられるので、周囲に人が存在すると判断されている間であっても、サーバ機能を継続させることが望ましい。   In addition, when the surrounding sound is equal to or higher than the specified value, the control unit 11 is considered that the user does not care about the operating sound (the operating sound related to the content data replica providing operation). It is desirable to continue the server function even while it is determined that exists.

また、サーバ機能の例としては、上述したように、他のノードNnからの提供要求に係るコンテンツデータのレプリカの提供動作を行うことが第一に挙げられるが、この他にも、ノードNnが、上述したコンテンツ投入要求メッセージを受信した場合に、上述したようにコンテンツ所在問合せ(検索)メッセージをルートノードに向けて送出してインデックス情報を取得し、これに基づき、上記投入要求に係るコンテンツデータのレプリカを他のノードNnから取得して保存する機能も、他のノードNnのための稼動と言え、且つ当該稼動時には、ハードディスクドライブの動作音が目立つ場合もあるので、当該機能もサーバ機能としても良い。   In addition, as an example of the server function, as described above, firstly, the provision operation of the replica of the content data related to the provision request from another node Nn is performed. When the content input request message described above is received, the content location inquiry (search) message is transmitted to the root node as described above to obtain index information, and based on this, the content data related to the input request The function of acquiring and storing the replica of the other node Nn is also an operation for the other node Nn, and the operation sound of the hard disk drive may be conspicuous at the time of the operation. Also good.

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

3.コンテンツ分散保存システムSの動作
次に、図6乃至図10を参照して、コンテンツ分散保存システムSの動作について説明する。
[ 3. Operation of Content Distributed Storage System S ]
Next, the operation of the distributed content storage system S will be described with reference to FIGS.

図6は、ノードNnの制御部11におけるメイン処理を示すフローチャートである。図7(A)は、通常動作を示すフローチャートであり、図7(B)は、静音動作を示すフローチャートである。図8は、コンテンツデータ取得処理の詳細を示すフローチャートである。図9は、通常動作におけるメッセージ受信処理の詳細を示すフローチャートである。図10は、静音動作におけるメッセージ受信処理の詳細を示すフローチャートである。   FIG. 6 is a flowchart showing main processing in the control unit 11 of the node Nn. FIG. 7A is a flowchart showing a normal operation, and FIG. 7B is a flowchart showing a silent operation. FIG. 8 is a flowchart showing details of the content data acquisition process. FIG. 9 is a flowchart showing details of message reception processing in normal operation. FIG. 10 is a flowchart showing details of the message reception process in the silent operation.

図6に示す処理は、任意のノードNnにおいて例えば電源オン(ON)になった場合に開始され、初期設定が行われた後、コンテンツ分散保存システムSへの参加処理が実行される。この参加処理においては、当該ノードNnの制御部11は、記憶部12からコンタクトノードのIPアドレス及びポート番号を取得し、これに基づきコンタクトノードにネットワーク8を介して接続し、参加要求を示す参加メッセージ(自己のノードID及びノード情報等を含む)を送信する。これにより、当該ノードNnには、当該システムSに参加している他のノードNnからDHTを用いたルーティングテーブルが送信されることになり、受信したルーティングテーブルに基づき自己のDHTを用いたルーティングテーブルを生成し、コンテンツ分散保存システムSに参加が完了することになる。なお、DHTを用いたルーティングテーブルの生成方法は、本発明の直接の関係がないので、詳しい説明を省略する。また、コンタクトノードのIPアドレス等の情報は、例えばノードNnの出荷時、或いはソフトウェア初回インストール時の初期状態で記憶部12に記憶される。   The process shown in FIG. 6 is started when, for example, the power is turned on (ON) in an arbitrary node Nn, and after the initial setting is performed, the participation process to the content distributed storage system S is executed. In this participation process, the control unit 11 of the node Nn obtains the IP address and port number of the contact node from the storage unit 12, connects to the contact node via the network 8 based on this, and indicates the participation request A message (including its own node ID and node information) is transmitted. Thereby, the routing table using DHT is transmitted to the node Nn from the other nodes Nn participating in the system S, and the routing table using its own DHT based on the received routing table. And the participation in the content distributed storage system S is completed. Note that a method for generating a routing table using DHT is not directly related to the present invention, and thus detailed description thereof is omitted. Further, information such as the IP address of the contact node is stored in the storage unit 12 in an initial state when the node Nn is shipped or when software is first installed, for example.

こうしてコンテンツ分散保存システムSへの参加処理が完了すると、制御部11は、電源オフ(OFF)指示(例えば、ユーザから入力部21を介した電源オフ操作指示)を受け付けたか(電源オフ指示に応じた指示信号を受け付けたか)否かを判別し(ステップS1)、電源オフ指示がない場合には(ステップS1:NO)、通常動作を行い(ステップS2)(電源オフ指示があるまで通常動作は継続される)、電源オフ指示を受け付けた場合には(ステップS1:YES)、節電モードに切り替え(ステップS3)、ステップS4に進む。   When the participation process to the distributed content storage system S is thus completed, the control unit 11 has received a power-off (OFF) instruction (for example, a power-off operation instruction from the user via the input unit 21) (according to the power-off instruction) (Step S1), and when there is no power off instruction (Step S1: NO), normal operation is performed (Step S2) (Normal operation is not performed until a power off instruction is issued). If the power-off instruction is accepted (step S1: YES), the mode is switched to the power saving mode (step S3), and the process proceeds to step S4.

この節電モードへの切り替えにより、当該制御部11は、通信部20を介して他のノードNnとの間で各種データ(例えば、上述した種々のメッセージやコンテンツデータのレプリカ)の送受信を行うために必要な電源(例えば、制御部11、記憶部12及び通信部20に供給される電源)のみを残して表示部16等の他の電源をオフにする(オーバーレイネットワーク9からは脱退しない(参加維持))。これは、コンテンツ分散保存システムSの安定的な運用のために、ユーザにより電源オフ指示があった後も、ノードNn間におけるデータ送受信が行えるようにするためである。   By switching to the power saving mode, the control unit 11 transmits and receives various data (for example, various messages and replicas of content data described above) to and from other nodes Nn via the communication unit 20. Leave only necessary power (for example, power supplied to the control unit 11, the storage unit 12, and the communication unit 20) and turn off other power sources such as the display unit 16 (do not leave the overlay network 9 (maintain participation) )). This is to enable data transmission / reception between the nodes Nn even after the user gives a power-off instruction for stable operation of the content distribution storage system S.

ステップS4では、制御部11は、音センサ23から周囲の音に係る情報を取得する。そして、制御部11は、当該取得した情報に基づいて、当該周囲の音が規定値以上であるか(例えば、音センサ23により検知された音のレベルが規定値以上であるか)否かを判断し(ステップS5)、規定値以上である場合には(ステップ5:YES)、周囲の音が大きく、ユーザが動作音を特に意識しないと考えられるので、ステップS6に進み(通常動作(サーバ機能)を継続)、規定値以上でない場合には(ステップ5:NO)、ステップS7に進む。   In step S <b> 4, the control unit 11 acquires information related to surrounding sounds from the sound sensor 23. Then, based on the acquired information, the control unit 11 determines whether or not the surrounding sound is equal to or higher than a specified value (for example, whether the sound level detected by the sound sensor 23 is equal to or higher than a specified value). Judgment is made (step S5), and if it is equal to or greater than the prescribed value (step 5: YES), it is considered that the surrounding sound is loud and the user is not particularly conscious of the operation sound, so the process proceeds to step S6 (normal operation (server If the function is not more than the specified value (step 5: NO), the process proceeds to step S7.

なお、ステップS6における通常動作(サーバ機能)では、後述するステップS21におけるコンテンツ検索指示に応じたコンテンツデータ取得処理が行われないが、その他の処理は、ステップS2における通常動作と同様であり、当該通常動作後、ステップS4に戻る。   In the normal operation (server function) in step S6, the content data acquisition process corresponding to the content search instruction in step S21 described later is not performed, but the other processes are the same as the normal operation in step S2. After the normal operation, the process returns to step S4.

一方、ステップS7では、制御部11は、人感センサ22から情報を取得する。そして、制御部11は、当該取得した情報に基づいて、周囲に人が存在するか否かを判断(つまり、電源オフ指示が受け付けられた後に判断)し(ステップS8)、周囲に人が存在しない場合には(ステップS8:NO)、ステップS6に移行し(通常動作(サーバ機能)を継続)、周囲に人が存在する場合には(ステップS8:YES)、ステップS9に移行(静音動作に移行しサーバ機能を停止)する。   On the other hand, in step S <b> 7, the control unit 11 acquires information from the human sensor 22. Based on the acquired information, the control unit 11 determines whether there is a person around (that is, after the power-off instruction is received) (step S8), and there is a person around the person. If not (step S8: NO), the process proceeds to step S6 (continues normal operation (server function)). If there is a person around (step S8: YES), the process proceeds to step S9 (silent operation). To stop the server function).

なお、ステップS9における静音動作後、ステップS4に戻り、周囲に人が存在すると判断されている間、サーバ機能が停止されることになる。   After the silent operation in step S9, the process returns to step S4, and the server function is stopped while it is determined that there is a person around.

次に、ステップS2又はステップS6における通常動作では、図7(A)に示すように、制御部11は、先ず、ユーザから入力部21を介してコンテンツ検索指示があったか否かを判別する(ステップS21)。ユーザからコンテンツ検索指示があった(例えば表示部12上に表示されたコンテンツカタログ情報から、当該ユーザが所望のコンテンツデータのコンテンツ名等を入力部21により選択してコンテンツ検索指示を行った)場合には(ステップS21:YES)、ステップS22に進み、コンテンツ検索指示がない場合には(ステップS21:NO)、ステップS23に進む。   Next, in the normal operation in step S2 or step S6, as shown in FIG. 7A, the control unit 11 first determines whether or not there has been a content search instruction from the user via the input unit 21 (step S21). When there is a content search instruction from the user (for example, from the content catalog information displayed on the display unit 12, the user selects the content name of the desired content data by the input unit 21 and issues a content search instruction) (Step S21: YES), the process proceeds to step S22, and if there is no content search instruction (step S21: NO), the process proceeds to step S23.

ステップS22におけるコンテンツデータ取得処理では、図8に示すように、制御部11は、コンテンツ所在問合せ(検索)処理を行う(ステップS221)。かかるコンテンツ所在問合せ(検索)処理においては、制御部11は、上記コンテンツ検索指示に係るコンテンツデータのコンテンツIDを含むコンテンツ所在問合せ(検索)メッセージを、自己のDHTを用いたルーティングテーブルにしたがって他のノードNn(つまり、当該コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNn)に対して送信(当該コンテンツIDのルートノードに向けて送出)し、当該コンテンツIDのルートノードからインデックス情報を取得する。   In the content data acquisition process in step S22, as shown in FIG. 8, the control unit 11 performs a content location inquiry (search) process (step S221). In the content location inquiry (search) process, the control unit 11 sends a content location inquiry (search) message including the content ID of the content data related to the content search instruction to another content according to the routing table using its own DHT. Transmit to the node Nn (that is, the node Nn having the node ID closest to the content ID (for example, the higher digit matches more)) (send toward the root node of the content ID), and the content ID Get index information from the root node.

次いで、制御部11は、上述したコンテンツ送信要求メッセージを、上記取得したインデックス情報に含まれるIPアドレス等に基づき、コンテンツ保持ノードに対して送信する(ステップS222)。これに応じて、コンテンツ保持ノードは、自身が通常動作中にあれば、上記コンテンツ送信要求メッセージにより指定されたコンテンツデータのレプリカを上記ユーザノードへ送信することになり、自身が静音動作中にあれば、コンテンツデータ提供不可メッセージを当該ユーザノードへ送信することになる。   Next, the control unit 11 transmits the above-described content transmission request message to the content holding node based on the IP address or the like included in the acquired index information (step S222). In response to this, if the content holding node is in a normal operation, the content holding node transmits a replica of the content data specified by the content transmission request message to the user node. In this case, a content data provision impossible message is transmitted to the user node.

そして、コンテンツ保持ノードから送信されたコンテンツデータのレプリカは、通信部20を通じて受信されバッファメモリ13に蓄積される。そして、制御部11は、バッファメモリ13に所定量の上記レプリカのデータが蓄積されたとき、当該レプリカのデータをバッファメモリ13から記憶部12に記憶保存(例えば、HDの所定領域に書き込む)させる(ステップS223)。こうして、順次当該レプリカのデータがバッファメモリ13から記憶部12に送られ記憶保存されていく。   A replica of the content data transmitted from the content holding node is received through the communication unit 20 and stored in the buffer memory 13. Then, when a predetermined amount of the replica data is accumulated in the buffer memory 13, the control unit 11 stores and saves the replica data from the buffer memory 13 to the storage unit 12 (for example, writes it in a predetermined area of the HD). (Step S223). In this way, the replica data is sequentially sent from the buffer memory 13 to the storage unit 12 and stored therein.

次いで、制御部11は、当該レプリカのデータが全て揃い、記憶保存された否かを判断し(ステップS224)、全て記憶保存されていない場合には(ステップS224:NO)、ステップ223に戻り当該処理を継続し、全て記憶保存された場合には(ステップS224:YES)、ステップS225に進む。なお、当該レプリカのデータ量が少ない場合、バッファメモリ13に全てのデータが揃ってから記憶部12に記憶保存されるように構成しても良い。   Next, the control unit 11 determines whether or not all the data of the replica has been stored and stored (step S224), and if not all stored and stored (step S224: NO), the control unit 11 returns to step 223 and returns to If the process is continued and all the data is stored and saved (step S224: YES), the process proceeds to step S225. Note that when the data amount of the replica is small, the buffer memory 13 may be configured to store and save all data in the storage unit 12 after the data has been collected.

ステップS225では、制御部11は、当該保存されたレプリカに係るコンテンツデータのコンテンツIDを含む、上述したパブリッシュメッセージを、自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送信(当該コンテンツIDのルートノードに向けて送出)し、図7(A)の処理に戻る。これにより、当該パブリッシュメッセージは、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになり、該ルートノードは、受信したパブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報を登録する。   In step S225, the control unit 11 transmits the above-described publish message including the content ID of the content data related to the stored replica to the other node Nn according to the routing table using its own DHT (in this case 7) and returns to the process of FIG. 7A. As a result, the publish message arrives at the root node by DHT routing using the content ID as a key, and the root node includes index information including a set of the IP address and the content ID included in the received publish message. Register.

次に、ステップS23では、制御部11は、他のノードNnから送信されたメッセージを受信したか否かを判別し、当該メッセージを受信していない場合には(ステップS23:NO)、ステップS25に進み、当該メッセージを受信した場合には(ステップS23:YES)、ステップS24に進み、メッセージ受信処理を行う。   Next, in step S23, the control unit 11 determines whether or not a message transmitted from another node Nn has been received. If the message has not been received (step S23: NO), step S25 is performed. If the message is received (step S23: YES), the process proceeds to step S24 to perform message reception processing.

なお、ステップS25におけるその他の処理では、例えば、ユーザからの入力部21を介した再生指示に応じたコンテンツデータ再生処理(コンテンツデータのレプリカは、デコーダ部14、映像処理部15、表示部16、音声処理部17、及びスピーカ18等を介して再生出力される)や、削除指示に応じたコンテンツデータ削除処理等が行われ、図6の処理に戻る。   In the other processing in step S25, for example, content data reproduction processing according to a reproduction instruction from the user via the input unit 21 (content data replicas are a decoder unit 14, a video processing unit 15, a display unit 16, The data is reproduced and output via the audio processing unit 17 and the speaker 18), the content data deletion process according to the deletion instruction is performed, and the process returns to the process of FIG. 6.

ステップS24におけるメッセージ受信処理では、図9に示すように、制御部11は、受信されたメッセージがコンテンツ所在問合せメッセージであるか否かを判別し(ステップS241)、コンテンツ所在問合せメッセージでない場合には(ステップS241:NO)、ステップS246に進む。一方、コンテンツ所在問合せメッセージである場合には(ステップS241:YES)、制御部11は、所在問合せ対象のインデックス情報(コンテンツ所在問合せメッセージに含まれるコンテンツIDに対応するインデックス情報)がインデックスキャッシュに記憶されているか否かを判別し(ステップS242)、記憶されている場合には(ステップS242:YES)、当該インデックス情報を該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して送信し(ステップS243)、図7(A)の処理に戻る。一方、当該インデックス情報が記憶されていない場合には(ステップS242:NO)、制御部11は、自己(自ノードNn)がルートノードであるか否かを判別(つまり、自己のルーティングテーブルを参照して、当該コンテンツ所在問合せメッセージに含まれるコンテンツIDと最も近いノードIDが自分であるか否かを判別)し(ステップS244)、自己がルートノードでない(つまり、中継ノードである)場合には(ステップS244:NO)、ステップS245に進み、自己がルートノードである場合には(ステップS244:YES)、図7(A)の処理に戻る。   In the message reception process in step S24, as shown in FIG. 9, the control unit 11 determines whether or not the received message is a content location inquiry message (step S241). (Step S241: NO), the process proceeds to Step S246. On the other hand, if it is a content location inquiry message (step S241: YES), the control unit 11 stores the index information (index information corresponding to the content ID included in the content location inquiry message) in the index cache. (Step S242: YES), the index information is transmitted to the user node that is the transmission source of the content location inquiry message (step S242: YES). S243), the process returns to the process of FIG. On the other hand, when the index information is not stored (step S242: NO), the control unit 11 determines whether or not the own (own node Nn) is the root node (that is, refer to the own routing table). Then, it is determined whether or not the node ID closest to the content ID included in the content location inquiry message is itself (step S244), and if it is not the root node (that is, it is a relay node) (Step S244: NO), the process proceeds to Step S245. If the node itself is the root node (Step S244: YES), the process returns to the process of FIG.

ステップS245では、制御部11は、受信されたコンテンツ所在問合せメッセージを、自己のDHTを用いたルーティングテーブルにしたがって他のノードNn(つまり、コンテンツ所在問合せメッセージに含まれるコンテンツIDと最も近いノードIDを有するノードNn)に対して転送(当該コンテンツIDのルートノードに向けて送出)し、図7(A)の処理に戻る。   In step S245, the control unit 11 sets the received content location inquiry message to another node Nn (that is, the node ID closest to the content ID included in the content location inquiry message) according to the routing table using its own DHT. Transfer (send toward the root node of the content ID) to return to the processing of FIG. 7A.

ステップS246では、制御部11は、受信されたメッセージがコンテンツ投入要求メッセージであるか否かを判別し、コンテンツ投入要求メッセージでない場合には(ステップS246:NO)、ステップS248に進む。一方、コンテンツ投入要求メッセージである場合には(ステップS246:YES)、上記ステップS22と同様、図8に示すコンテンツデータ取得処理が行われる(ステップS247)。   In step S246, the control unit 11 determines whether or not the received message is a content input request message. If the received message is not a content input request message (step S246: NO), the process proceeds to step S248. On the other hand, if it is a content input request message (step S246: YES), the content data acquisition process shown in FIG. 8 is performed as in step S22 (step S247).

ステップS248では、制御部11は、受信されたメッセージがコンテンツ送信要求メッセージであるか否かを判別し、コンテンツ送信要求メッセージでない場合には(ステップS248:NO)、ステップS250に進む。一方、コンテンツ送信要求メッセージである場合には(ステップS248:YES)、コンテンツデータ提供(アップロード)処理を行い(サーバ機能を実行)(ステップS249)、図7(A)の処理に戻る。当該コンテンツ提供処理においては、受信されたコンテンツ送信要求メッセージにより指定されたコンテンツデータのレプリカが、所定データ単位のブロック毎に、当該コンテンツ送信要求メッセージの送信元のユーザノードに対して順次送信されることになる。   In step S248, the control unit 11 determines whether or not the received message is a content transmission request message. If the received message is not a content transmission request message (step S248: NO), the process proceeds to step S250. On the other hand, if it is a content transmission request message (step S248: YES), content data provision (upload) processing is performed (server function is executed) (step S249), and the processing returns to FIG. 7A. In the content providing process, a replica of the content data specified by the received content transmission request message is sequentially transmitted to the user node that is the transmission source of the content transmission request message for each block of a predetermined data unit. It will be.

ステップS250では、制御部11は、受信されたメッセージがパブリッシュメッセージであるか否かを判別し、パブリッシュメッセージでない場合には(ステップS250:NO)、ステップS254に進む。一方、パブリッシュメッセージである場合には(ステップS250:YES)、受信されたパブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)する(ステップS251)。   In step S250, the control unit 11 determines whether or not the received message is a publish message. If the received message is not a publish message (step S250: NO), the process proceeds to step S254. On the other hand, if it is a publish message (step S250: YES), index information including a set of IP address and content ID included in the received publish message and content ID is registered (stored in the index cache area) (step S251). .

次いで、制御部11は、上記ステップS244と同様、自己がルートノードであるか否かを判別し(ステップS252)、自己がルートノードでない(つまり、中継ノードである)場合には(ステップS252:NO)、ステップS253に進み、自己がルートノードである場合には(ステップS252:YES)、図7(A)の処理に戻る。   Next, the control unit 11 determines whether or not it is a root node (step S252), similarly to step S244 above, and if it is not the root node (that is, is a relay node) (step S252: (NO), it progresses to step S253, and when self is a root node (step S252: YES), it returns to the process of FIG. 7 (A).

ステップS253では、制御部11は、受信されたパブリッシュメッセージを、自己のルーティングテーブルにしたがって他のノードNn(つまり、パブリッシュメッセージに含まれるコンテンツIDと最も近いノードIDを有するノードNn)に対して転送(当該コンテンツIDのルートノードに向けて送出)し、図7(A)の処理に戻る。   In step S253, the control unit 11 transfers the received publish message to another node Nn (that is, the node Nn having the node ID closest to the content ID included in the publish message) according to its own routing table. (Send out toward the root node of the content ID), and return to the processing of FIG.

なお、ステップS254における、その他のメッセージ受信処理においては、その他のメッセージ(例えば、参加メッセージや削除通知メッセージ)が受信された場合の処理が行われ、図7(A)の処理に戻る。   In the other message reception process in step S254, the process when another message (for example, a participation message or a deletion notification message) is received is performed, and the process returns to the process of FIG.

一方、図6に示すステップS9における静音動作では、図7(B)に示すように、図7(A)に示す通常動作に比べ、コンテンツ検索指示の有無を判断する処理は無いが、メッセージを受信したか否かの判断は行われ(ステップS91)、メッセージが受信された場合には(ステップS91:YES)、メッセージ受信処理が実行される(ステップS92)。なお、図7(B)に示すステップS93におけるその他の処理は、図7(A)に示すステップS25におけるその他の処理と同様である。   On the other hand, in the silent operation in step S9 shown in FIG. 6, as shown in FIG. 7B, compared with the normal operation shown in FIG. It is determined whether or not the message has been received (step S91). If a message has been received (step S91: YES), a message reception process is executed (step S92). Note that the other processes in step S93 shown in FIG. 7B are the same as the other processes in step S25 shown in FIG.

ステップS92におけるメッセージ受信処理は、図10に示すように実行されるが、通常動作時におけるメッセージ受信処理(図9)と比較すると、受信されたメッセージがコンテンツ投入要求メッセージである場合の処理(ステップS927)、及び、受信されたメッセージがコンテンツ送信要求メッセージである場合の処理(ステップS929)が異なる。   The message reception process in step S92 is executed as shown in FIG. 10, but the process in the case where the received message is a content input request message (step (step 9)) compared with the message reception process (FIG. 9) during normal operation. S927) differs from the processing (step S929) in the case where the received message is a content transmission request message.

図9に示すメッセージ受信処理では、受信されたメッセージがコンテンツ投入要求メッセージである場合、コンテンツデータ取得処理が行われる(ステップS247)が、図10に示すメッセージ受信処理では、サーバ機能の停止中となっているため、受信されたメッセージがコンテンツ投入要求メッセージである場合、コンテンツ投入要求メッセージの送信元のサーバに対して、コンテンツデータ投入拒否メッセージ(投入要求に係るコンテンツデータを投入できないことを示す情報)が返信される(ステップS927)ことになる。これは、投入要求に応じてコンテンツデータをダウンロードしハードディスクに書き込む処理を拒否することで、静音化を実現する趣旨である。なお、コンテンツデータ投入拒否メッセージをサーバに送信する代わりに、制御部11は、例えば自己のDHTを用いたルーティングテーブルに登録された他のノードNnをランダムに選定し、当該選定したノードNnに対して、上記受信されたコンテンツ投入要求メッセージを転送するように構成しても良い。当該コンテンツ投入要求メッセージの転送を受けたノードNnは、当該メッセージに含まれるコンテンツIDに基づき、コンテンツ所在問合せ(検索)メッセージを当該コンテンツIDのルートノード宛に送出することによりインデックス情報を取得し、当該インデックス情報に示されたコンテンツ保持ノードから当該コンテンツデータのレプリカを取得、保存し、パブリッシュメッセージをルートノード宛に送出することになる。これにより、サーバ機能停止中のノードNnの代わりにコンテンツ保持ノードを確保することができる。或いは、コンテンツデータ投入拒否メッセージの送信及びコンテンツ投入要求メッセージの転送をせずに、サーバ機能の復帰後にコンテンツデータ取得処理を行うように構成しても良い。   In the message reception process shown in FIG. 9, if the received message is a content input request message, a content data acquisition process is performed (step S247). However, in the message reception process shown in FIG. Therefore, if the received message is a content input request message, the content data input rejection message (information indicating that content data related to the input request cannot be input) is sent to the server that is the source of the content input request message. ) Is returned (step S927). This is intended to realize silence by rejecting the process of downloading the content data and writing it to the hard disk in response to the input request. Instead of transmitting the content data input rejection message to the server, the control unit 11 randomly selects another node Nn registered in the routing table using its own DHT, for example, and selects the selected node Nn. Thus, the received content input request message may be transferred. The node Nn that has received the transfer of the content input request message acquires index information by sending a content location inquiry (search) message to the root node of the content ID based on the content ID included in the message, A replica of the content data is acquired and stored from the content holding node indicated by the index information, and a publish message is sent to the root node. As a result, a content holding node can be secured instead of the node Nn whose server function is stopped. Alternatively, the content data acquisition process may be performed after the server function is restored without transmitting the content data input rejection message and transferring the content input request message.

また、図9に示すメッセージ受信処理では、受信されたメッセージがコンテンツ送信要求メッセージである場合、サーバ機能により、コンテンツデータのレプリカがコンテンツ送信要求メッセージの送信元のユーザノードに対して送信される(ステップS249)が、図10に示すメッセージ受信処理では、サーバ機能の停止中となっているため、受信されたメッセージがコンテンツ送信要求メッセージである場合、コンテンツ送信要求メッセージの送信元のユーザノードに対してコンテンツデータ提供不可メッセージ(提供要求に係るコンテンツデータを提供できないことを示す情報)が、コンテンツ送信要求メッセージの送信元のユーザノードに対して送信される(ステップS929)ことになる。   In the message reception process shown in FIG. 9, when the received message is a content transmission request message, the server function transmits a replica of the content data to the user node that is the transmission source of the content transmission request message ( In step S249), since the server function is stopped in the message reception process shown in FIG. 10, if the received message is a content transmission request message, the message is sent to the user node that is the transmission source of the content transmission request message. Thus, the content data provision impossible message (information indicating that the content data related to the provision request cannot be provided) is transmitted to the user node that is the transmission source of the content transmission request message (step S929).

なお、図10に示すステップS929以外の処理は、図9に示すステップS249以外の処理と同様である。   The processes other than step S929 shown in FIG. 10 are the same as the processes other than step S249 shown in FIG.

また、上述した処理において、サーバ機能動作中(コンテンツデータの送信又は受信中)に人が近づくことにより、当該人の存在が人感センサ22により感知された場合、上記制御部11は、ただちにサーバ機能を停止するように構成しても良いし、そのセッション終了後にサーバ機能を停止するように構成しても良い。ただちにサーバ機能を停止する場合、人に気付かれ無いメリットがある一方、セッション終了後にサーバ機能を停止する場合、システムとして安定的な動作がしやすいというメリットがある。   Further, in the above-described processing, when the presence of the person is detected by the human sensor 22 when a person approaches while the server function is operating (content data is being transmitted or received), the control unit 11 immediately The function may be configured to stop, or the server function may be configured to stop after the session ends. When the server function is immediately stopped, there is a merit that is not noticed by a person. On the other hand, when the server function is stopped after the session is finished, there is a merit that stable operation is easy as a system.

以上説明したように、上記実施形態によれば、周囲に人が存在すると判断されている間、メッセージの送受信機能を継続させつつ、上記サーバ機能のみを停止させるように構成したので、コンテンツ分散保存システムSの安定的な運用を図りつつ、ユーザに動作音(例えば、コンテンツデータのレプリカを提供する配信動作が行われる際や、投入要求に応じてコンテンツデータのレプリカを保存する際の書き込み動作が行われる際のハードディスクドライブのデータの読み書きに係る動作音)を意識させない(ユーザに静かなノードと感じさせる)ようにすることができる。また、ユーザに対して動作音による不快感(特に、夜間)を与えないようにすることができる。   As described above, according to the above-described embodiment, while it is determined that there is a person in the surrounding area, the message transmission / reception function is continued and only the server function is stopped. While stable operation of the system S, operation sound (for example, when a distribution operation for providing a replica of content data is performed or when a replica of the content data is stored in response to an input request is performed) It is possible to prevent the user from being conscious of the operation sound related to reading and writing data of the hard disk drive when it is performed (making the user feel a quiet node). In addition, it is possible to prevent the user from feeling uncomfortable (especially at night) due to operation sounds.

また、周囲に人が存在すると判断されている間、メッセージの送受信機能を継続させつつ、上記サーバ機能のみを停止させるように構成することは、コンテンツ分散保存システムSの安定的な運用のためにユーザにより電源オフ指示があった後もノードNn間におけるデータ送受信が行えるような態様の場合に特に有効(つまり、電源オフ指示後に動作音がするのはユーザにとって非常に気になり不快であるため)である。   In addition, for the stable operation of the distributed content storage system S, it is possible to continue the message transmission / reception function and stop only the server function while it is determined that there is a person around. This is particularly effective in the case where data can be transmitted and received between the nodes Nn even after the power-off instruction is given by the user (that is, it is very annoying and uncomfortable for the user to make an operation sound after the power-off instruction) ).

また、周囲の音が規定値以上と大きい場合には、ユーザは動作音が気にならないと考えられるので、周囲に人が存在すると判断されている間であっても、サーバ機能を継続させるように構成することで、他のノードNnからの要求に応じることができる。   Also, if the surrounding sound is louder than the specified value, the user may not be concerned about the operation sound, so the server function should be continued even while it is determined that there is a person around. With this configuration, it is possible to respond to requests from other nodes Nn.

なお、上記実施形態におけるコンテンツ分散保存システムSは、DHTを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。   In addition, although the content distributed storage system S in the said embodiment was demonstrated on the assumption that it was formed by the algorithm using DHT, this invention is not limited to this.

本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。It is a figure which shows an example of the connection aspect of each node apparatus in the content distributed storage system which concerns on this embodiment. ノードN2が保持するDHTを用いたルーティングテーブルの一例を示す図である。It is a figure which shows an example of the routing table using DHT which node N2 hold | maintains. DHTのID空間の一例を示す概念図である。It is a conceptual diagram which shows an example of ID space of DHT. ユーザノードから送出されたコンテンツ所在問合せ(検索)メッセージの流れの一例を、DHTのID空間にて示した概念図である。It is the conceptual diagram which showed an example of the flow of the content location inquiry (search) message sent from the user node in ID space of DHT. ノードNnの概要構成例を示す図である。It is a figure which shows the example of an outline structure of the node Nn. ノードNnの制御部11におけるメイン処理を示すフローチャートである。It is a flowchart which shows the main process in the control part 11 of the node Nn. (A)は、通常動作を示すフローチャートであり、(B)は、静音動作を示すフローチャートである。(A) is a flowchart showing a normal operation, and (B) is a flowchart showing a silent operation. コンテンツデータ取得処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a content data acquisition process. 通常動作におけるメッセージ受信処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the message reception process in normal operation | movement. 静音動作におけるメッセージ受信処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the message reception process in silent operation | movement.

符号の説明Explanation of symbols

8 ネットワーク
9 オーバーレイネットワーク
11 制御部
12 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
20 通信部
21 入力部
22 人感センサ
23 音センサ
24 バス
Nn ノード
S コンテンツ分散保存システム
8 Network 9 Overlay Network 11 Control Unit 12 Storage Unit 13 Buffer Memory 14 Decoder Unit 15 Video Processing Unit 16 Display Unit 17 Audio Processing Unit 18 Speaker 20 Communication Unit 21 Input Unit 22 Human Sensor 23 Sound Sensor 24 Bus Nn Node S Content Distribution Preservation system

Claims (9)

ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置であって、
他のノード装置のために稼動するサーバ機能と、
前記周囲に人が存在するか否かを判断する存在判断手段と、
前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、
を備えることを特徴とするノード装置。
A plurality of node devices that can communicate with each other via a network, and the plurality of content data are distributed and stored in the plurality of node devices.
Server function that operates for other node devices,
Presence determination means for determining whether or not a person exists in the surroundings;
Control means for stopping the server function while it is determined that a person exists in the surroundings;
A node device comprising:
請求項1に記載のノード装置において、
前記存在判断手段は、周囲に存在する人を感知する人感センサからの情報を取得し、当該情報に基づいて、前記周囲に人が存在するか否かを判断することを特徴とするノード装置。
The node device according to claim 1,
The presence determination means acquires information from a human sensor that senses a person existing in the surroundings, and determines whether or not a person exists in the surroundings based on the information .
請求項1又は2に記載のノード装置において、
周囲の音を検知する音センサからの情報を取得し、当該情報に基づいて、前記周囲の音が規定値以上であるか否かを判断する音判断手段と、
前記制御手段は、前記周囲の音が規定値以上である場合には、前記周囲に人が存在すると判断されている間であっても、前記サーバ機能を継続させることを特徴とするノード装置。
The node device according to claim 1 or 2,
Sound determination means for acquiring information from a sound sensor for detecting ambient sound and determining whether the ambient sound is equal to or higher than a specified value based on the information;
The node device according to claim 1, wherein when the ambient sound is equal to or higher than a predetermined value, the server function is continued even while it is determined that a person exists in the surrounding area.
請求項1乃至3の何れか一項に記載のノード装置において、
電源オフ指示を受け付ける電源オフ指示受付手段を更に備え、
前記存在判断手段は、前記電源オフ指示が受け付けられた後に、前記周囲に人が存在するか否かを判断することを特徴とするノード装置。
In the node apparatus as described in any one of Claims 1 thru | or 3,
A power-off instruction receiving means for receiving a power-off instruction;
The node device according to claim 1, wherein the presence determination unit determines whether or not a person exists in the surrounding area after the power-off instruction is received.
請求項1乃至4の何れか一項に記載のノード装置において、
前記制御手段は、前記サーバ機能の停止中に、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合には、当該提供要求に係るコンテンツデータを提供できないことを示す情報を当該他のノード装置に対して送信することを特徴とするノード装置。
In the node apparatus as described in any one of Claims 1 thru | or 4,
When the control unit receives provision request information indicating a content data provision request from another node apparatus via the network while the server function is stopped, the control unit cannot provide the content data related to the provision request. A node device that transmits information indicating that to the other node device.
請求項1乃至5の何れか一項に記載のノード装置において、
前記サーバ機能には、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信する機能が含まれることを特徴とするノード装置。
In the node apparatus as described in any one of Claims 1 thru | or 5,
When the server function receives provision request information indicating a content data provision request from another node apparatus via the network, the server function transmits the content data related to the provision request to the other node apparatus. A node device including a function.
コンピュータを、請求項1乃至6の何れか一項に記載のノード装置として機能させることを特徴とするノード処理プログラム。   A node processing program for causing a computer to function as the node device according to any one of claims 1 to 6. ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムであって、
前記ノード装置は、
前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能と、
前記周囲に人が存在するか否かを判断する存在判断手段と、
前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、
を備えることを特徴とするコンテンツ分散保存システム。
A content distributed storage system comprising a plurality of node devices that can communicate with each other via a network, wherein a plurality of content data is distributed and stored in the plurality of node devices,
The node device is
A server function for transmitting content data related to the provision request to the other node device when receiving provision request information indicating a content data provision request from the other node device via the network;
Presence determination means for determining whether or not a person exists in the surroundings;
Control means for stopping the server function while it is determined that a person exists in the surroundings;
A content distributed storage system comprising:
ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置のサーバ機能制御方法であって、
前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能を有する前記ノード装置が、
前記周囲に人が存在するか否かを判断する工程と、
前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる工程と、
を備えることを特徴とするサーバ機能制御方法。
A server function control method of the node device in a content distributed storage system comprising a plurality of node devices that can communicate with each other via a network, and a plurality of content data distributed and stored in the plurality of node devices,
The node having a server function of transmitting content data related to a provision request to the other node device when receiving provision request information indicating a content data provision request from the other node device via the network The device
Determining whether there is a person in the surroundings;
Stopping the server function while it is determined that a person is present in the surroundings;
A server function control method comprising:
JP2007075029A 2007-03-22 2007-03-22 Content distributed storage system, node device, node processing program, and server function control method Withdrawn JP2008234444A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007075029A JP2008234444A (en) 2007-03-22 2007-03-22 Content distributed storage system, node device, node processing program, and server function control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007075029A JP2008234444A (en) 2007-03-22 2007-03-22 Content distributed storage system, node device, node processing program, and server function control method

Publications (1)

Publication Number Publication Date
JP2008234444A true JP2008234444A (en) 2008-10-02

Family

ID=39907126

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007075029A Withdrawn JP2008234444A (en) 2007-03-22 2007-03-22 Content distributed storage system, node device, node processing program, and server function control method

Country Status (1)

Country Link
JP (1) JP2008234444A (en)

Similar Documents

Publication Publication Date Title
US8321586B2 (en) Distributed storage system, node device, recording medium in which node processing program is recorded, and address information change notifying method
JP2008234445A (en) Content distributed storage system, duplicate data acquisition method, node device, and node processing program
US8219618B2 (en) Information communication system, information communication method, and recording medium having information communication program stored thereon
WO2007060862A1 (en) Information distributing system, method of distributing information, node device, and recording medium
JP4692414B2 (en) Communication system, content data transmission availability determination method, node device, node processing program, etc.
JP2007200203A (en) Information distribution system, re-registration message transmission method, node device, and node processing program
JP4702314B2 (en) Content distributed storage system, node device, node processing program, and content data acquisition method
US8655981B2 (en) Information communication system, information communication method, and recording medium having information communication program stored thereon
JP5136585B2 (en) Information communication system, node device, information processing method, and information processing program
JP2010113573A (en) Content distribution storage system, content storage method, server device, node device, server processing program and node processing program
WO2007074873A1 (en) Content distribution system, terminal device, its information processing method, and recording medium containing the program
JP5375272B2 (en) Node device, node processing program, information communication system, and content data management method
JP2008236536A (en) Communication system, node device, node processing program and server function control method
JP2009232272A (en) Content distributive storage system, content playback method, node device, management apparatus, node-processing program, and management processing program
JP2008234444A (en) Content distributed storage system, node device, node processing program, and server function control method
JP4935734B2 (en) Content distributed storage system, node device, node processing program, and node processing method
JP2010039722A (en) Node device, management node device, node processing program, management node processing program, content distribution storage system, and replica data acquisition method
JP2010108082A (en) Content distribution storage system, content storage method, node device, and node processing program
JP5326968B2 (en) Information communication system, support apparatus, support apparatus program, and content acquisition method
JP5257001B2 (en) Node device, node processing program, and usage status management method
JP5157770B2 (en) Node device, program, and storage instruction method
JP5007624B2 (en) Content distributed storage system, content data acquisition method, node device, and node processing program
JP5412924B2 (en) Node device, node processing program, and content data deletion method
JP2009020669A (en) Content distribution storage system, content data storage method, operation rate management device and node device
JP2008236538A (en) Tree type broadcast system, method for broadcasting content, broadcast management apparatus, and broadcast management processing program

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100601