JP5445503B2 - Information communication system and information communication method - Google Patents

Information communication system and information communication method Download PDF

Info

Publication number
JP5445503B2
JP5445503B2 JP2011077587A JP2011077587A JP5445503B2 JP 5445503 B2 JP5445503 B2 JP 5445503B2 JP 2011077587 A JP2011077587 A JP 2011077587A JP 2011077587 A JP2011077587 A JP 2011077587A JP 5445503 B2 JP5445503 B2 JP 5445503B2
Authority
JP
Japan
Prior art keywords
information
node
management node
search information
page information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011077587A
Other languages
Japanese (ja)
Other versions
JP2012212314A (en
Inventor
和寛 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2011077587A priority Critical patent/JP5445503B2/en
Publication of JP2012212314A publication Critical patent/JP2012212314A/en
Application granted granted Critical
Publication of JP5445503B2 publication Critical patent/JP5445503B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データを検索するためのデータ構造及び検索技術に関する。   The present invention relates to a data structure and search technology for searching data.

近年、ネットワーク技術の進歩により、ネットワーク上に多数のデータが保存され、利用されている。ネットワーク上に保存されるコンテンツを検索するために、検索情報が用いられる。検索情報は、例えば、データの属性情報である。データを取得したい情報処理装置は、検索情報を用いて、所望のコンテンツを検索する。そして、検索結果に基づいて、所望するデータを保存する情報処理装置から、データが取得される。この属性情報には、データ名、コンテンツを検索するためのキーワード等の情報が含まれている。ネットワーク上に保存されるデータが多くなる程、検索情報のデータ量も増加する。特許文献1には、検索情報を、ネットワーク上のノード装置により分散保存される技術が開示されている。具体的には、ネットワーク上に分散保存された検索情報の改竄を防止するために、木構造により検索情報を管理する技術が開示されている。効果的に分散保存するために、木構造の根の位置に、電子署名が施される。そして、根の位置の電子署名により、木構造の節の位置または葉の位置に存在する検索情報の改竄を確認することができる。   In recent years, with the advancement of network technology, a large amount of data is stored and used on the network. Search information is used to search for content stored on the network. The search information is, for example, data attribute information. An information processing apparatus that wants to acquire data searches for desired content using the search information. Then, based on the search result, data is acquired from the information processing apparatus that stores the desired data. This attribute information includes information such as a data name and a keyword for searching for content. As the amount of data stored on the network increases, the amount of search information increases. Patent Document 1 discloses a technique in which search information is distributed and stored by node devices on a network. Specifically, a technique for managing search information using a tree structure is disclosed in order to prevent falsification of search information distributed and stored on a network. For effective distributed storage, an electronic signature is applied to the root position of the tree structure. Then, based on the electronic signature of the root position, it is possible to confirm that the search information existing at the node position or the leaf position of the tree structure is falsified.

特開2010−262455号公報JP 2010-262455 A

特許文献1では、分散保存される検索情報のバックアップとなる元データが、センターサーバに保存される。検索情報が複数のノード装置に分散保存される場合、ノード装置の記憶装置の故障またはノード装置のネットワークからの離脱により、検索情報の一部が破損する場合がある。この場合、元データを保存するセンターサーバが破損した検索情報の一部を提供可能なことにより、検索情報の提供を保障することができる。しかしながら、センターサーバの検索情報が破損してしまうと、検索情報の提供を保障することができなかった。また、センターサーバの検索情報が破損することを防ぐために、RAID(Redundant Arrays of Inexpensive Disks)を複数組むことが考えるが、センターサーバを増強するための費用がかかるため、効果的な対策ではなかった。   In Patent Document 1, original data serving as a backup of search information distributed and stored is stored in a center server. When the search information is distributed and stored in a plurality of node devices, a part of the search information may be damaged due to a failure of the storage device of the node device or separation of the node device from the network. In this case, since the center server that stores the original data can provide a part of the damaged search information, the provision of the search information can be guaranteed. However, if the search information of the center server is damaged, provision of the search information cannot be guaranteed. In addition, in order to prevent the search information of the center server from being damaged, it may be considered that a plurality of RAIDs (Redundant Arrays of Inexpensive Disks) are formed, but this is not an effective measure because of the cost of increasing the center server. .

本発明は、以上の問題に鑑みてなされたものである。本発明は、センターサーバの検索情報が破損した場合であっても、ネットワークに分散保存された検索情報を利用して、検索情報の提供を可能とする情報処理装置、情報通信システム、情報通信方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above problems. The present invention relates to an information processing apparatus, an information communication system, and an information communication method capable of providing search information by using search information distributed and stored in a network even when search information of a center server is damaged And to provide a program.

請求項に記載の発明によれば、ネットワークに接続する複数のノード装置に、ネットワークに分散して記憶されるデータを検索するための複数の検索情報が分散して記憶される情報通信システムにおいて、前記複数のノード装置に分散して記憶される複数の検索情報を記憶する情報処理装置を備える前記情報通信システムであって、前記情報処理装置は、前記複数のノード装置に分散し記憶される複数の検索情報を記憶する第1記憶手段と、前記第1記憶手段に記憶された複数の検索情報の中で、破損した検索情報があるかを判定する第1判定手段と、前記第1判定手段により破損された検索情報があると判定された場合、破損された検索情報の送信要求を、前記複数のノード装置の少なくともいずれかに送信する第1送信手段と、前記複数のノード装置のいずれかから、破損された検索情報を受信する第1受信手段と、前記第1記憶手段に記憶された検索情報の中で破損された検索情報を、前記第1受信手段により受信された検索情報を用いて更新する更新手段と、を備え、前記ノード装置は、前記送信要求を受信する第2受信手段と、前記第2受信手段により受信した前記送信要求に基づいて、前記ノード装置が記憶する前記検索情報を前記情報処理装置に送信する第2送信手段と、を備えることを特徴とする情報通信システムである。
According to the first aspect of the present invention, in an information communication system in which a plurality of search information for searching for data stored in a distributed manner in a network is distributed and stored in a plurality of node devices connected to the network. The information communication system includes an information processing device that stores a plurality of search information that is distributed and stored in the plurality of node devices, wherein the information processing device is distributed and stored in the plurality of node devices. First storage means for storing a plurality of search information; first determination means for determining whether there is damaged search information among the plurality of search information stored in the first storage means; and the first determination. A first transmission unit configured to transmit a transmission request for the damaged search information to at least one of the plurality of node devices when it is determined that there is search information damaged by the unit; First receiving means for receiving damaged search information from any one of the node devices, and receiving the search information damaged in the search information stored in the first storage means by the first receiving means. Update means for updating using the retrieved search information, wherein the node device receives the transmission request, and the node device based on the transmission request received by the second reception means. An information communication system comprising: second transmission means for transmitting the search information stored in the apparatus to the information processing apparatus.

請求項に記載の発明によれば、前記第1記憶手段は、前記検索情報が追加された順番を示す順番情報と、前記検索情報を識別する識別情報とを含む前記検索情報を記憶し、前記情報処理装置は、前記順番情報に基づいて、前記複数のノード装置の中から前記順番情報に対応する前記検索情報を記憶する第1管理ノード、または、前記識別情報に基づいて、前記複数のノード装置の中から前記識別情報に対応する前記検索情報を記憶する第2管理ノードの何れか一方を決定する第1決定手段を備え、前記第1送信手段は、前記第1決定手段により決定された第1管理ノードまたは第2管理ノードに向けて、前記順番情報または前記識別情報に対応する前記検索情報を保存させる保存依頼メッセージを送信し、前記ノード装置は、前記保存依頼メッセージが示す前記検索情報を記憶する第2記憶手段を備えることを特徴とする。
According to invention of Claim 1 , the said 1st memory | storage means memorize | stores the said search information containing the order information which shows the order in which the said search information was added, and the identification information which identifies the said search information, The information processing device is configured to store, based on the order information, the first management node that stores the search information corresponding to the order information from the plurality of node devices, or the plurality of node devices based on the identification information. A first determination unit configured to determine one of the second management nodes storing the search information corresponding to the identification information from among the node devices, wherein the first transmission unit is determined by the first determination unit; A storage request message for storing the search information corresponding to the order information or the identification information is transmitted to the first management node or the second management node; Message, characterized in that it comprises a second storage means for storing the search information indicated.

請求項に記載の発明によれば、前記第1決定手段は、前記第1管理ノードと、前記第2管理ノードとを決定し、前記第1送信手段は、前記第1決定手段により決定された第1管理ノード及び第2管理ノードに向けて、前記順番情報または前記識別情報に対応する前記検索情報を保存させる保存依頼メッセージを送信し、前記ノード装置は、前記保存依頼メッセージが示す前記検索情報を記憶する第2記憶手段を備えることを特徴とする。
According to the first aspect of the present invention, the first determination unit determines the first management node and the second management node, and the first transmission unit is determined by the first determination unit. A save request message for saving the search information corresponding to the order information or the identification information is transmitted to the first management node and the second management node, and the node device performs the search indicated by the save request message. A second storage means for storing information is provided.

請求項に記載の発明によれば、前記複数のノード装置の中の前記第1管理ノードまたは前記第2管理ノードの何れか一方のノード装置は、他方のノード装置に向けて定期的に生存を確認する確認メッセージを送信する第3送信手段と、前記確認メッセージを受信する第3受信手段と、前記第3受信手段により所定の時間以上、前記確認メッセージが受信されなかった否かを判定する第2判定手段と、前記第2判定手段により、所定の時間以上、前記確認メッセージが受信されなかった場合、前記第2記憶手段に記憶される前記検索情報が含む前記順番情報または前記識別情報の何れかに基づいて、新たな前記第1管理ノードまたは前記第2管理ノードを決定する第2決定手段と、を備え、前記第2送信手段は、前記第2決定手段により決定された新たな前記第1管理ノードまたは前記第2管理ノード向けて、第2記憶手段に記憶される前記検索情報を保存させる保存依頼メッセージを送信することを特徴とする。
According to the first aspect of the present invention, either one of the first management node or the second management node among the plurality of node devices periodically survives toward the other node device. A third transmitting means for transmitting a confirmation message for confirming the confirmation, a third receiving means for receiving the confirmation message, and determining whether or not the confirmation message has not been received by the third receiving means for a predetermined time or more. When the confirmation message is not received for a predetermined time or more by the second determination means and the second determination means, the order information or the identification information included in the search information stored in the second storage means And a second determination unit that determines a new first management node or a second management node based on any one of the two, and the second transmission unit is determined by the second determination unit. Toward a new first management node or the second management node has, and transmits a save request message to store the search information stored in the second storage means.

請求項に記載の発明によれば、ネットワークに接続する複数のノード装置に、ネットワークに分散して記憶されるデータを検索するための複数の検索情報が分散して記憶される情報通信システムにおいて、前記複数のノード装置に分散して記憶される複数の検索情報を記憶する情報処理装置を備える情報通信方法であって、前記複数のノード装置に分散して記憶される複数の検索情報を記憶する第1記憶手段に記憶された複数の検索情報の中で、破損した検索情報があるかを、前記情報処理装置が判定する判定ステップと、前記判定ステップにより破損された検索情報があると判定された場合、破損された検索情報の送信要求を、前記複数のノード装置の少なくともいずれかに、前記情報処理装置が送信する第1送信ステップと、前記送信要求を、前記ノード装置が受信する第受信ステップと、前記第受信ステップにより受信した前記送信要求に基づいて、前記ノード装置が記憶する前記検索情報を前記情報処理装置に、前記ノード装置が送信する第2送信ステップと、前記複数のノード装置のいずれかから、破損された検索情報を、前記情報処理装置が受信する第1受信ステップと、前記第1記憶手段に記憶された検索情報の中で破損された検索情報を、前記第1受信ステップにより受信された検索情報を用いて更新する更新ステップと、を含み、前記第1記憶手段は、前記検索情報が追加された順番を示す順番情報と、前記検索情報を識別する識別情報とを含む前記検索情報を記憶し、前記情報通信方法は、さらに、前記順番情報に基づいて、前記複数のノード装置の中から前記順番情報に対応する前記検索情報を記憶する第1管理ノードと、前記識別情報に基づいて、前記複数のノード装置の中から前記識別情報に対応する前記検索情報を記憶する第2管理ノードとを、前記情報処理装置が決定する第1決定ステップと、前記第1決定ステップにより決定された第1管理ノード及び第2管理ノードに向けて、前記順番情報または前記識別情報に対応する前記検索情報を保存させる保存依頼メッセージを、前記情報処理装置が送信する第3送信ステップと、前記複数のノード装置の中の前記第1管理ノードまたは前記第2管理ノードの何れか一方のノード装置が、他方のノード装置に向けて定期的に生存を確認する確認メッセージを送信する第4送信ステップと、前記確認メッセージを、前記ノード装置が受信する第3受信ステップと、前記第3受信ステップにより所定の時間以上、前記確認メッセージが受信されなかった否かを、前記ノード装置が判定する第2判定ステップと、前記第2判定ステップにより、所定の時間以上、前記確認メッセージが受信されなかった場合、前記ノード装置が備える第2記憶手段であって、前記保存依頼メッセージが示す前記検索情報を記憶する第2記憶手段に記憶される前記検索情報が含む前記順番情報または前記識別情報の何れかに基づいて、新たな前記第1管理ノードまたは前記第2管理ノードを、前記ノード装置が決定する第2決定ステップと、前記第2決定ステップにより決定された新たな前記第1管理ノードまたは前記第2管理ノード向けて、第2記憶手段に記憶される前記検索情報を保存させる保存依頼メッセージを、前記ノード装置が送信する第5送信ステップと、を含む情報通信方法である。
According to the invention described in claim 2 , in the information communication system in which a plurality of search information for searching for data stored in a distributed manner in a network is distributed and stored in a plurality of node devices connected to the network. An information communication method comprising an information processing device for storing a plurality of search information distributed and stored in the plurality of node devices, wherein the plurality of search information stored in a distributed manner in the plurality of node devices is stored A determination step in which the information processing apparatus determines whether there is damaged search information among a plurality of search information stored in the first storage means, and determination that there is search information damaged in the determination step A first transmission step in which the information processing apparatus transmits a transmission request for search information that is damaged to at least one of the plurality of node apparatuses; and The calculated, and a second receiving step of the node device receives, on the basis of the transmission request received by said second reception step, to the node device said information processing apparatus the retrieval information stored, said node device A second transmitting step for transmitting, a first receiving step for receiving the damaged search information from any of the plurality of node devices, and a search information stored in the first storage means. the search information broken at medium, seen including a an updating step of updating by using the search information received by the first receiving step, the first storage means, indicating the order in which the retrieval information is added The search information including order information and identification information for identifying the search information is stored, and the information communication method further includes a plurality of node devices based on the order information. A first management node that stores the search information corresponding to the order information, and a second management node that stores the search information corresponding to the identification information from among the plurality of node devices based on the identification information To the first management node and the second management node determined by the first determination step and the search corresponding to the order information or the identification information A third transmission step in which the information processing apparatus transmits a storage request message for storing information; and one of the first management node and the second management node in the plurality of node apparatuses, A fourth transmission step of periodically transmitting a confirmation message for confirming survival toward the other node device; and the node device receives the confirmation message. A second receiving step for determining whether or not the confirmation message has not been received for a predetermined time or more by the third receiving step, and a second determining step for determining whether or not the confirmation message has been received by the third receiving step. The search information stored in the second storage means that is stored in the second storage means included in the node device and stores the search information indicated by the save request message when the confirmation message has not been received for a period of time The node device determines a new first management node or the second management node based on either the order information or the identification information included in the second determination step and the second determination step. A save response for saving the search information stored in the second storage means for the new first management node or the second management node that has been made. Message, the node device is a fifth transmission step and the information communication method comprising the transmission.

請求項に記載の発明によれば、第1送信手段は、第1判定手段により破損された検索情報があると判定された場合、破損された検索情報の送信要求を、複数のノード装置の少なくともいずれかに送信する。更新手段は、第1記憶手段に記憶された検索情報の中で破損された検索情報を、第1受信手段により受信された検索情報を用いて更新する。この結果、情報処理装置の検索情報が破損した場合であっても、ネットワークに分散保存された検索情報を利用して、検索情報を更新することができる。
According to the invention described in claim 1, the first transmission unit, when it is determined that there is search information broken by the first determining means, a request for transmission of corrupted search information, a plurality of node devices Send to at least one. The update means updates the search information damaged in the search information stored in the first storage means by using the search information received by the first receiving means. As a result, even when the search information of the information processing apparatus is damaged, the search information can be updated using the search information distributed and stored in the network.

請求項に記載の発明によれば、第1決定手段は、順番情報に基づいて、複数のノード装置の中から順番情報に対応する検索情報を記憶する第1管理ノード、または、識別情報に基づいて、複数のノード装置の中から識別情報に対応する検索情報を記憶する第2管理ノードの何れか一方を決定する。第1送信手段は、第1決定手段により決定された第1管理ノードまたは第2管理ノードに向けて、順番情報または識別情報に対応する検索情報を保存させる保存依頼メッセージを送信する。この結果、情報処理装置が記憶する検索情報が第1管理ノードまたは第2管理ノードに確実に記憶されるため、情報処理装置の検索情報が破損した場合であっても、ネットワークに分散保存された検索情報を利用して、検索情報の提供を保障することができる。
According to the invention described in claim 1, the first determination means, based on the order information, the first management node stores retrieval information corresponding to the order information from among a plurality of node devices, or the identification information Based on this, one of the second management nodes that stores the search information corresponding to the identification information is determined from among the plurality of node devices. The first transmission unit transmits a storage request message for storing the search information corresponding to the order information or the identification information toward the first management node or the second management node determined by the first determination unit. As a result, the search information stored in the information processing device is securely stored in the first management node or the second management node, so that even if the search information of the information processing device is damaged, it is distributed and stored in the network. By using the search information, it is possible to guarantee the provision of the search information.

請求項に記載の発明によれば、第1決定手段は、第1管理ノードと、第2管理ノードとを決定する。第1送信手段は、第1決定手段により決定された第1管理ノード及び第2管理ノードに向けて、順番情報または識別情報に対応する検索情報を保存させる保存依頼メッセージを送信する。この結果、情報処理装置が記憶する検索情報が第1管理ノード及び第2管理ノードの2つのノード装置に確実に記憶されるため、情報処理装置の検索情報が破損した場合であっても、ネットワークに分散保存された検索情報を利用して、検索情報の提供を確実に保障することができる。
According to the invention described in claim 1, the first determining means determines a first management node, and a second management node. The first transmission unit transmits a storage request message for storing the search information corresponding to the order information or the identification information toward the first management node and the second management node determined by the first determination unit. As a result, the search information stored in the information processing device is securely stored in the two node devices, the first management node and the second management node, so even if the search information of the information processing device is damaged, the network It is possible to reliably ensure the provision of the search information by using the search information distributed and stored.

請求項に記載の発明によれば、第2決定手段は、第2判定手段により、所定の時間以上、確認メッセージが受信されなかった場合、第2記憶手段に記憶される検索情報が含む順番情報または識別情報の何れかに基づいて、新たな第1管理ノードまたは第2管理ノードを決定する。第2送信手段は、第2決定手段により決定された新たな第1管理ノードまたは第2管理ノード向けて、第2記憶手段に記憶される検索情報を保存させる保存依頼メッセージを送信する。この結果、第1管理ノードまたは第2管理ノードのいずれかがネットワークから脱退した場合であっても、新たな第1管理ノードまたは第2管理ノードを決定し、2つのノード装置に確実に検索情報が記憶される。このため、情報処理装置の検索情報が破損した場合であっても、ネットワークに分散保存された検索情報を利用して、検索情報の提供を確実に保障することができる。
According to the first aspect of the present invention, the second determination means includes the order included in the search information stored in the second storage means when the second determination means has not received a confirmation message for a predetermined time or more. A new first management node or second management node is determined based on either the information or the identification information. The second transmission unit transmits a save request message for saving the search information stored in the second storage unit to the new first management node or second management node determined by the second determination unit. As a result, even if either the first management node or the second management node is withdrawn from the network, a new first management node or second management node is determined, and the search information is reliably transmitted to the two node devices. Is memorized. For this reason, even when the search information of the information processing apparatus is damaged, it is possible to reliably ensure the provision of the search information by using the search information distributed and stored in the network.

請求項に記載の発明によれば、判定ステップは、複数のノード装置に分散し記憶される複数の検索情報を記憶する第1記憶手段に記憶された複数の検索情報の中で、破損した検索情報があるかを判定する。更新ステップは、第1記憶手段に記憶された検索情報の中で破損された検索情報を、第1受信ステップにより受信された検索情報を用いて更新する。この結果、情報処理装置の検索情報が破損した場合であっても、ネットワークに分散保存された検索情報を利用して、検索情報を更新することができる。 According to the second aspect of the present invention, the determination step is damaged among the plurality of search information stored in the first storage unit that stores the plurality of search information distributed and stored in the plurality of node devices. Determine whether there is search information. In the update step, the search information damaged in the search information stored in the first storage means is updated using the search information received in the first reception step. As a result, even when the search information of the information processing apparatus is damaged, the search information can be updated using the search information distributed and stored in the network.

本実施形態におけるコンテンツ分散保存システムSにおける各ノード装置の接続態様の一例を示す図である。It is a figure which shows an example of the connection aspect of each node apparatus in the content distribution storage system S in this embodiment. 本実施形態に係るカタログ情報の基本的な構造の一例を示す図である。It is a figure which shows an example of the basic structure of the catalog information which concerns on this embodiment. 本実施形態のカタログ情報のバックアップ方法の概要を説明する説明図である。It is explanatory drawing explaining the outline | summary of the backup method of the catalog information of this embodiment. 本実施形態の複製生成処理の一例を説明する説明図である。It is explanatory drawing explaining an example of the replication production | generation process of this embodiment. 本実施形態におけるページ更新処理の説明を示す説明図である。It is explanatory drawing which shows description of the page update process in this embodiment. 本実施形態のノード装置の電気的構成を示すブロック図である。It is a block diagram which shows the electric constitution of the node apparatus of this embodiment. 本実施形態のセンターサーバSAの電気的構成を示すブロック図である。It is a block diagram which shows the electric constitution of center server SA of this embodiment. センターサーバSAにおけるメイン動作の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the main operation | movement in center server SA. ノード装置におけるメイン動作の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the main operation | movement in a node apparatus. 本実施形態のページ情報保持処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the page information holding process of this embodiment. 本実施形態のページ情報削除処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the page information deletion process of this embodiment.

以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。   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は、本実施形態におけるコンテンツ分散保存システムSにおける各ノード装置の接続態様の一例を示す図である。図1は、コンテンツ分散保存システムSの具体的構成図101と、概念的構成図100とから構成される。コンテンツ分散保存システムSの具体的構成図101が示すように、コンテンツ分散保存システムSは、多数のノード装置Nn(n=1,2,3・・・の何れか)から構成される。図1の具体的構成図101内に示すように、コンテンツ分散保存システムSは、複数のノード装置Nnがインターネットを介して接続されることで構成される。また、図1の下部枠101内に示すように、IX(Internet eXchange)、ISP(Internet Service Provider)、DSL(Digital Subscriber Line)回線事業者の装置、FTTH(Fiber To The Home)回線事業者の装置、及び通信回線P等によって、インターネット等のネットワークNWが構築されている。ネットワークNWは、現実世界の通信ネットワークである。なお、図1の例におけるネットワークNWには、データパケットを転送するためのルータが適宜挿入されているが、図1では図示を省略している。また、通信回線Pとしては、例えば、電話回線や光ケーブル等が用いられる。
[1. Outline structure and operation outline of distributed content storage system]
First, with reference to FIG. 1, the structure and operation | movement outline | summary of the content distributed storage system in this embodiment are demonstrated. FIG. 1 is a diagram illustrating an example of a connection mode of each node device in the content distributed storage system S according to the present embodiment. FIG. 1 includes a specific configuration diagram 101 of the content distributed storage system S and a conceptual configuration diagram 100. Specific Configuration of Content Distributed Storage System S As shown in FIG. 101, the content distributed storage system S includes a large number of node devices Nn (n = 1, 2, 3,...). As shown in the specific configuration diagram 101 of FIG. 1, the distributed content storage system S is configured by connecting a plurality of node devices Nn via the Internet. In addition, as shown in the lower frame 101 of FIG. 1, IX (Internet eXchange), ISP (Internet Service Provider), DSL (Digital Subscriber Line) line provider equipment, FTTH (Fiber To The Home) line provider A network NW such as the Internet is constructed by the apparatus, the communication line P, and the like. The network NW is a real-world communication network. Note that a router for transferring data packets is appropriately inserted in the network NW in the example of FIG. 1, but is not shown in FIG. 1. As the communication line P, for example, a telephone line or an optical cable is used.

このようなネットワークNWには、複数のノード装置Nnが接続されている。以下、ノード装置を、「ノード」という。また、各ノードには、固有の製造番号及びIP(Internet Protocol)アドレスが割り当てられている。そして、本実施形態におけるコンテンツ分散保存システムSは、これらのノードのうち、図1の概念的構成図100内に示すように、何れか複数のノードにより形成されるピアツーピア方式のネットワークシステムとなっている。   A plurality of node devices Nn are connected to such a network NW. Hereinafter, the node device is referred to as a “node”. Each node is assigned a unique manufacturing number and an IP (Internet Protocol) address. The distributed content storage system S according to the present embodiment is a peer-to-peer network system formed by any of a plurality of nodes as shown in the conceptual configuration diagram 100 of FIG. Yes.

なお、図1の概念的構成図100内に示すネットワーク9は、既存のネットワークNWを用いて形成された仮想的なリンクを構成するオーバーレイネットワークOLである。論理的なネットワークであるオーバーレイネットワークOLは、特定のアルゴリズム、例えば、DHTを利用したアルゴリズムにより実現される。そして、コンテンツ分散保存システムSに接続されている各ノードには、所定桁数からなる固有の識別情報であるノードIDが割り当てられている。   A network 9 shown in the conceptual configuration diagram 100 of FIG. 1 is an overlay network OL that configures a virtual link formed using an existing network NW. The overlay network OL which is a logical network is realized by a specific algorithm, for example, an algorithm using DHT. Each node connected to the distributed content storage system S is assigned a node ID, which is unique identification information having a predetermined number of digits.

また、各ノードは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定している。具体的に、このルーティングテーブルには、ID空間内で適度に離れたノードのノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。1台のノードは、必要最低限のノードのノード情報をルーティングテーブルとして記憶している。各ノード間で互いに各種メッセージが転送されることで、ノード情報を記憶していないノードについてのノード情報が取得される。   Each node 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 that are moderately separated in the ID space are registered in this routing table. One node stores the minimum necessary node information as a routing table. By transferring various messages between the nodes, node information about nodes that do not store node information is acquired.

コンテンツ分散保存システムSは、内容の異なる様々なコンテンツデータのレプリカを所定のファイル形式で複数のノードに分散して保存する。以下、コンテンツデータを、「コンテンツ」という。そして、各ノード間でレプリカが利用可能になっている。各コンテンツのオリジナルはセンターサーバSAに保存されている。また、コンテンツのレプリカが保存されるノードを、「コンテンツ保持ノード」という。また、以下の説明においては、オリジナルのコンテンツとレプリカとを特に区別することなく、コンテンツと称する。   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. Hereinafter, the content data is referred to as “content”. A replica can be used between the nodes. The original of each content is stored in the center server SA. A node in which a content replica is stored is referred to as a “content holding node”. In the following description, the original content and the replica are referred to as content without particular distinction.

上述のコンテンツには、夫々、コンテンツ名及びコンテンツごとに固有の識別情報であるコンテンツID等の情報が付加されている。コンテンツIDのID空間は、例えば、ノードIDのID空間と一致している。分散保存されているコンテンツの所在は、保持ノード情報として、コンテンツの所在を管理または記憶しているノードにより記憶される。以下、コンテンツの所在を管理または記憶しているノードを、「ルートノード」という。保持ノード情報は、コンテンツを保存したノードのノード情報と、コンテンツのコンテンツIDと等の組を含む。このようなルートノードは、例えば、コンテンツIDと最も近いノードIDを有するノードであるように定められる。コンテンツIDと最も近いノードIDとは、例えば、IDの上位桁が最も多く一致するノードIDである。   Information such as a content ID and content ID, which is unique identification information for each content, is added to each content described above. The ID space of the content ID matches, for example, the ID space of the node ID. The location of the content that is distributed and stored is stored as holding node information by a node that manages or stores the location of the content. Hereinafter, a node that manages or stores the location of content is referred to as a “root node”. The holding node information includes a set of node information of the node storing the content, content ID of the content, and the like. Such a root node is determined to be a node 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.

各ノードにおいて、コンテンツのコンテンツ名及びコンテンツID等の属性情報は、カタログ情報に記述されている。カタログ情報は、センターサーバSAにより、ページ情報単位で作成される。ページ情報は、木構造を有するカタログ情報を構成する情報である。このページ情報は、カタログ情報において、木構造における節に対応する情報である。このカタログ情報の構造、内容等についての詳細は後述する。各ノードには、保持するページ情報の担当範囲が夫々ある。担当範囲は、例えば、各ノードのノードID等に基づいて決定される。そして、各ノードは、ノード自身の担当範囲内のページ情報をセンターサーバSAまたは他のノードから取得する。こうして、カタログ情報は、ページ情報単位で複数のノードに分散して保存される。また、各ノードは、コンテンツの属性情報を検索する際、必要なページ情報がない場合には、必要なページ情報をセンターサーバSAまたは他のノードから取得する。なお、DHTのルーティングを用いたコンテンツの取得方法については、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。   In each node, attribute information such as content name and content ID of the content is described in the catalog information. The catalog information is created for each page information by the center server SA. The page information is information constituting catalog information having a tree structure. This page information is information corresponding to the nodes in the tree structure in the catalog information. Details of the structure and contents of the catalog information will be described later. Each node has an assigned range of page information to be held. The assigned range is determined based on, for example, the node ID of each node. Then, each node acquires page information within the node's own responsibility range from the center server SA or another node. Thus, catalog information is distributed and stored in a plurality of nodes in units of page information. Also, each node acquires necessary page information from the center server SA or another node when there is no necessary page information when searching for content attribute information. Note that a content acquisition method using DHT routing is known in Japanese Patent Application Laid-Open No. 2006-197400 and the like, and thus detailed description thereof is omitted.

[2.カタログ情報の基本的な構造及び内容等]
次に、カタログ情報の基本的な構造及び内容等について、図2を用いて説明する。図2は、本実施形態のカタログ情報の基本的な構造の一例を示す図である。カタログ情報は、コンテンツの属性情報を一覧として管理するための情報である。この属性情報はレコードに格納される。また、カタログ情報は、検索キーからコンテンツを特定することができる情報である。コンテンツを特定することができるとは、コンテンツのレコードを検索することができることを意味する。レコードの検索は、センターサーバSAにより行われ、また、ノードにおいても行われる。コンテンツ分散保存システムSにおいて用いられるカタログ情報は、レコードの改竄を防止するため、及び、レコードの検索を効率的に行うため、探索木の構造を有している。
[2. Basic structure and contents of catalog information]
Next, the basic structure and contents of catalog information will be described with reference to FIG. FIG. 2 is a diagram illustrating an example of a basic structure of catalog information according to the present embodiment. The catalog information is information for managing content attribute information as a list. This attribute information is stored in the record. The catalog information is information that can specify content from a search key. Being able to specify content means that a record of the content can be searched. The search for records is performed by the center server SA and also at the nodes. The catalog information used in the distributed content storage system S has a search tree structure in order to prevent falsification of records and to efficiently search for records.

図2に示すように、カタログ情報は、木構造における根に位置するルートページ情報から葉に位置する葉ページ情報にかけて、各ページ情報が関連付けられて構成されている。直接関連付けられているページ情報同士は、親子関係を形成している。あるページ情報Xに対してページ情報Yが関連付けられているとする。つまり、ページ情報Xとページ情報Yとで親子関係を形成しているとする。ページ情報Xとページ情報Yとのうち、ページ情報Xの方がルートページ情報からの距離が短い場合、ページ情報Xは、ページ情報Yから見て親に位置する親のページ情報となる。そして、ページ情報Yは、ページ情報Xから見て子に位置する子のページ情報となる。ここで、ルートページ情報からの距離とは、木構造において、根の位置から注目する節点に辿るまでのリンク数に相当する長さである。換言すると、ルートページ情報からの距離とは、ルートページ情報から関連付けを辿って注目するページ情報に至るまでに、注目するページ情報を含めて通過するページ情報の数に相当する。なお、以降の説明においては、親のページ情報を親ページ情報といい、子のページ情報を子ページ情報という。   As shown in FIG. 2, the catalog information is configured by associating each page information from root page information located at the root in the tree structure to leaf page information located at the leaf. The directly associated page information forms a parent-child relationship. It is assumed that page information Y is associated with certain page information X. That is, it is assumed that the page information X and the page information Y form a parent-child relationship. Of the page information X and page information Y, when the page information X is shorter in distance from the root page information, the page information X is the page information of the parent located at the parent when viewed from the page information Y. Then, the page information Y becomes page information of a child positioned as a child as viewed from the page information X. Here, the distance from the root page information is a length corresponding to the number of links from the root position to the node of interest in the tree structure. In other words, the distance from the root page information corresponds to the number of page information that passes through the page information to be noticed by tracing the association from the root page information to the noticed page information. In the following description, parent page information is referred to as parent page information, and child page information is referred to as child page information.

親ページ情報と子ページ情報との関連付けは、リンク情報に示される。リンク情報は、親ページ情報に格納される情報であり、子ページ情報を指す情報である。このリンク情報は、子ページ情報のページ番号と、子ページ情報の改竄をチェックするためのメッセージダイジェストとを含む。   The association between the parent page information and the child page information is indicated in the link information. The link information is information stored in the parent page information and is information indicating child page information. This link information includes the page number of the child page information and a message digest for checking the alteration of the child page information.

ページ番号は、ページ情報に固有に割り当てられたシリアル番号である。ページ情報には、その作成順に、例えば1番から順にページ番号が割り当てられる。リンク情報が指すページ情報というときは、リンク情報に含まれるページ番号が割り当てられているページ情報を意味する。また、あるページ情報が更新される場合には、このページ情報に対して新たなページ番号が割り当てられる。例えば、ページ情報は、ファイルとして保存される。この場合、ページ情報のファイル名には、割り当てられたページ番号が含まれている。これにより、ページ番号からページ情報のファイルを特定することができる。本実施形態のページ番号は、本発明の順番情報の一例である。   The page number is a serial number uniquely assigned to page information. For the page information, page numbers are assigned in order of creation, for example, from the first. The page information indicated by the link information means page information to which a page number included in the link information is assigned. Further, when certain page information is updated, a new page number is assigned to this page information. For example, page information is stored as a file. In this case, the file name of the page information includes the assigned page number. Thereby, the page information file can be specified from the page number. The page number of this embodiment is an example of the order information of the present invention.

メッセージダイジェストは、リンク情報が指す子ページ情報またはリンク情報が指す子ページ情報に格納されているレコードの改竄をチェックするための情報である。また、メッセージダイジェストは、改竄をチェックする対象を、共通のハッシュ関数によりハッシュ化した値である。カタログ情報は、更にルートリンク情報を有する(符号100)。ルートリンク情報には、ルートページ情報へのリンク情報が格納される(符号120)。そして、このリンク情報は、ルートページ情報のページ番号(符号121)及びメッセージダイジェスト(符号122)を含む。また、ルートリンク情報には、電子署名が格納される(符号110)。電子署名は、ルートリンク情報の改竄をチェックするための情報である。電子署名には、例えば、署名値、証明書情報等の情報が含まれている。   The message digest is information for checking falsification of a record stored in the child page information indicated by the link information or the child page information indicated by the link information. The message digest is a value obtained by hashing a target to be checked for tampering with a common hash function. The catalog information further includes root link information (reference numeral 100). In the root link information, link information to the root page information is stored (reference numeral 120). The link information includes the page number (reference numeral 121) and the message digest (reference numeral 122) of the root page information. The root link information stores an electronic signature (reference numeral 110). The electronic signature is information for checking whether the root link information is falsified. The electronic signature includes information such as a signature value and certificate information, for example.

ページ情報は、大別して節ページ情報(符号200)と葉ページ情報(符号300)とがある。節ページ情報は、1つ以上の子ページ情報と関連付けられる。節ページ情報には、ページ番号(符号210)、子ページ情報へのリンク情報(符号220)が格納される。ページ番号は、このページ番号が格納されている節ページ情報に割り当てられたページ番号である。節ページ情報には、リンク情報を複数格納することができる。1つあたりの節ページ情報に格納可能なリンク情報の最大数は、カタログ情報の木構造としての次数に一致する。この次数は、1つの親が持ちうる子の最大数を意味する。つまり、次数は、n分探索木のnの値に該当する。なお、検索キーを含む本実施形態のページ情報は、本発明における検索情報の一例である。   The page information is roughly classified into node page information (reference numeral 200) and leaf page information (reference numeral 300). The node page information is associated with one or more child page information. The node page information stores a page number (reference numeral 210) and link information (reference numeral 220) to child page information. The page number is a page number assigned to the node page information in which the page number is stored. A plurality of link information can be stored in the node page information. The maximum number of link information that can be stored in one section page information matches the degree as a tree structure of catalog information. This order means the maximum number of children that a parent can have. That is, the order corresponds to the value n of the n-ary search tree. The page information of the present embodiment including the search key is an example of search information in the present invention.

葉ページ情報は、上述したように、探索木における葉に位置するページ情報である。つまり、葉ページ情報は、子ページ情報を持たない。葉ページ情報には、ページ番号(符号310)、及びレコード(符号320)が格納される。ページ番号は、このページ番号が格納されている葉ページ情報に割り当てられたページ番号である。レコードは、葉ページ情報に1または複数格納される。1つのレコードには、1または複数のコンテンツの属性情報が設定される。例えば、レコードには、コンテンツID、コンテンツの公開開始日時、公開終了日時、コンテンツ名、キーワード等が設定される。   As described above, the leaf page information is page information located on a leaf in the search tree. That is, the leaf page information has no child page information. The leaf page information stores a page number (reference numeral 310) and a record (reference numeral 320). The page number is a page number assigned to the leaf page information in which this page number is stored. One or more records are stored in leaf page information. One record is set with attribute information of one or more contents. For example, a content ID, a content start date / time, a content end date / time, a content name, a keyword, and the like are set in the record.

カタログ情報の木構造は、順序性を有している。検索キーとしてコンテンツIDが入力されると、カタログ情報の木構造に対応したアルゴリズムに従って探索が行われることにより、コンテンツIDに対応するレコードが格納されている葉ページ情報を特定することができる。木構造の順序性に対応する情報として、各ページ情報には、インデックスが付与される。インデックスの説明を簡単にするため、一例として、コンテンツID及びインデックスは、4桁の4進数で構成されているものとする。   The tree structure of catalog information has order. When a content ID is input as a search key, a search is performed according to an algorithm corresponding to the tree structure of catalog information, whereby leaf page information in which a record corresponding to the content ID is stored can be specified. As information corresponding to the order of the tree structure, an index is assigned to each page information. In order to simplify the description of the index, as an example, it is assumed that the content ID and the index are composed of a 4-digit quaternary number.

ルートページ情報には、インデックスとして「****」が付与される。「*」は、その桁の値が確定していないことを示す。ルートページ情報の子に位置する節ページ情報は、最大で4つ存在する。各子ページ情報には、インデックスとして、「0***」、「1***」、「2***」及び「3***」の何れかが付与される。どの子ページ情報にどのインデックスが付与されるかは、親ページ情報に規定される。例えば、ルートページ情報に格納されるべき各リンク情報が配列構造で格納されており、その格納位置によって、リンク情報が指すページ情報のインデックスを特定することができる構造であっても良い。この場合、例えば、0に対応する位置に、インデックスが「0***」である子ページ情報を指すリンク情報が格納され、1に対応する位置に、インデックスが「1***」である子ページ情報を指すリンク情報が格納される。また例えば、節ページ情報に、リンク情報とそのリンク情報が指すページ情報のインデックスとが、対応付けて格納されていても良い。本実施形態のインデックスは、本発明の識別情報の一例である。   “***” is assigned as an index to the root page information. “*” Indicates that the value of the digit is not fixed. There are a maximum of four node page information items that are children of the root page information. Each child page information is given any one of “0 ***”, “1 ***”, “2 ***”, and “3 ***” as an index. Which index is assigned to which child page information is defined in the parent page information. For example, each link information to be stored in the root page information is stored in an array structure, and a structure in which an index of page information indicated by the link information can be specified by the storage position. In this case, for example, link information indicating child page information whose index is “0 ***” is stored at a position corresponding to 0, and the index is “1 ***” at a position corresponding to 1. Link information indicating child page information is stored. Further, for example, link information and an index of page information indicated by the link information may be stored in association with the node page information. The index of this embodiment is an example of identification information of the present invention.

インデックスが「0***」の節ページ情報の子に位置する節ページ情報には、「00**」、「01**」、「02**」及び「03**」の何れかが付与される。また、インデックスが「01**」の節ページ情報の子に位置するページ情報は、例えば、葉ページ情報となる。この場合、葉ページ情報には、「010*」、「011*」、「012*」及び「013*」の何れかが付与される。インデックスが「012*」の葉ページ情報には、インデックスが「0120」、「0121」、「0122」及び「0123」のレコードがそれぞれ格納される。つまり、コンテンツIDが「0120」、「0121」、「0122」または「0123」であるコンテンツの属性情報が格納される。例えば、各レコードが配列構造で格納されている場合、その格納位置によってインデックスを特定することができる。また、例えば、葉ページ情報に、レコードとそのレコードのインデックスとが対応付けて格納されていても良い。   The node page information located at the child of the node page information with the index “0 ***” is any one of “00 **”, “01 **”, “02 **”, and “03 **”. Is granted. Further, the page information located in the child of the node page information with the index “01 **” is, for example, leaf page information. In this case, any of “010 *”, “011 *”, “012 *”, and “013 *” is assigned to the leaf page information. The leaf page information with the index “012 *” stores records with indexes “0120”, “0121”, “0122”, and “0123”, respectively. That is, the attribute information of the content whose content ID is “0120”, “0121”, “0122”, or “0123” is stored. For example, when each record is stored in an array structure, the index can be specified by the storage position. For example, the leaf page information may store a record and an index of the record in association with each other.

なお、センターサーバSAは、コンテンツID以外の情報、例えば、コンテンツ名、公開開始日時等を検索キーとしてレコードを検索する機能を有しても良い。この場合、各節ページ情報にヒント情報が格納されても良い。ヒント情報は、検索キーでレコードを検索するための手がかりとなる情報である。センターサーバSAは、レコードの検索の際に、ヒント情報と検索キーとに対して、所定のアルゴリズムに従って演算処理を施す。すると、このヒント情報が格納されている節ページ情報の子の位置以下のページ情報に、検索キーによって検索されるレコードが格納されている可能性の有無が判明する。センターサーバSAは、検索キーによって検索されるレコードが格納されている可能性があると判定した場合には、その節ページ情報の子の位置以下のページ情報を参照して検索を行う。一方、センターサーバSAは、検索キーによって検索されるレコードが格納されている可能性がないと判定した場合には、その節ページ情報の子の位置以下のページ情報を参照する必要はない。これにより、節ページ情報の子の位置以下のページ情報に、検索キーによって検索されるレコードが格納されているか否かを偽陰性なく判断することができる。偽陰性とは、真実は陽性であるのに、誤って陰性であると判断される性質をいう。   Note that the center server SA may have a function of searching for records using information other than the content ID, for example, the content name, the start date / time of publication, and the like as search keys. In this case, hint information may be stored in each node page information. The hint information is information serving as a clue to search for a record using a search key. The center server SA performs arithmetic processing on hint information and a search key according to a predetermined algorithm when searching for a record. Then, it is determined whether or not there is a possibility that a record searched by the search key is stored in the page information below the child position of the node page information in which the hint information is stored. When the center server SA determines that there is a possibility that a record searched by the search key is stored, the center server SA performs a search by referring to page information below the child position of the node page information. On the other hand, if the center server SA determines that there is no possibility that the record searched by the search key is stored, it is not necessary to refer to the page information below the child position of the node page information. Thereby, it can be judged without false negative whether or not the record searched by the search key is stored in the page information below the position of the child of the node page information. False negative refers to the property that the truth is positive but it is erroneously determined to be negative.

次に、コンテンツの属性情報の改竄を防止することができる理由を説明する。子ページ情報が改竄されているか否かはその親ページ情報に格納されているこの子ページ情報へのリンク情報により行われる。つまり、このリンク情報には、子ページ情報のメッセージダイジェストが含まれているので、このメッセージダイジェストで改竄チェックが行われる。このようにして、葉ページ情報からルートページ情報まで、子ページ情報の改竄有無は、その親ページ情報に格納されているリンク情報によってチェックされる。ルートページ情報の改竄有無は、ルートリンク情報によってチェックされる。ルートリンク情報の改竄有無は、そのルートリンク情報自身に格納されている電子署名によってチェックされる。そのため、ルートページ情報から葉ページ情報まで、ページ情報の真正性を保証することができる。結果として、カタログ情報全体の改竄防止が可能となる。   Next, the reason why falsification of content attribute information can be prevented will be described. Whether or not the child page information is falsified is determined by link information to the child page information stored in the parent page information. That is, since the link information includes the message digest of the child page information, the tampering check is performed using this message digest. In this way, whether or not the child page information is falsified from the leaf page information to the root page information is checked by the link information stored in the parent page information. Whether the root page information is falsified is checked by the root link information. Whether or not the root link information is falsified is checked by an electronic signature stored in the root link information itself. Therefore, it is possible to guarantee the authenticity of the page information from the root page information to the leaf page information. As a result, falsification of the entire catalog information can be prevented.

以上、図2を用いて説明したカタログ情報の構造は、あくまでも一例である。カタログ情報の構造としては、コンテンツのレコードを探索可能な構造を有していれば、どのような構造であってもかまわない。カタログ情報の構造を木構造とした場合においては、例えば、葉ページ情報だけでなく、節ページ情報中にレコードが格納されても良い。また、木構造の次数、つまり、1つの節ページ情報に格納可能なリンク情報の最大数は任意である。また、木の種類としては、例えばB木、B+木、赤黒木等の平衡木であっても良いし、平衡性のない単純なn分探索木であっても良い。あるいは、トライ木であっても良い。   The structure of the catalog information described with reference to FIG. 2 is merely an example. As a structure of the catalog information, any structure may be used as long as it has a structure capable of searching for the content record. In the case where the structure of the catalog information is a tree structure, for example, records may be stored in the node page information as well as the leaf page information. The order of the tree structure, that is, the maximum number of link information that can be stored in one node page information is arbitrary. The tree type may be a balanced tree such as a B-tree, a B + tree, or a red-black tree, or may be a simple n-ary search tree having no balance. Alternatively, a tri-tree may be used.

また、例えば、カタログ情報を、連結リストの構造としても良い。連結リストの構造を有するカタログ情報は、例えば、ルートリンク情報と複数のページ情報とで構成される。各ページ情報には、例えば、1つ以上のレコードと、1つのリンク情報が格納される。また、ページ情報には、そのページ情報のページ番号やインデックスが格納されていても良い。この場合のインデックスは、例えば、レコードに格納されている属性情報中のコンテンツIDである。各ページ情報は、リンク情報によって、例えば、インデックスの値が小さい順に関連付けられる。リンク情報は、そのリンク情報を格納するページ情報の次のページ情報を指す。あるページ情報の次のページ情報とは、あるページ情報のインデックスの次に値が小さいインデックスが付与されたページ情報である。リンク情報には、次のページ情報のページ番号及びメッセージダイジェストが格納される。ルートリンク情報は、例えば、複数のページ情報のうち、インデックスの値が最も小さいページ情報を指す。ルートリンク情報には、ページ情報のページ番号、メッセージダイジェスト及びルートリンク情報の改竄をチェックするための電子署名が格納される。   Further, for example, the catalog information may be a linked list structure. The catalog information having a linked list structure includes, for example, root link information and a plurality of page information. Each page information stores, for example, one or more records and one link information. The page information may store the page number or index of the page information. The index in this case is, for example, the content ID in the attribute information stored in the record. Each page information is associated with the link information, for example, in ascending order of index values. The link information indicates the next page information of the page information storing the link information. The next page information of a certain page information is page information to which an index having the next smallest value is given after the index of the certain page information. In the link information, the page number and message digest of the next page information are stored. The root link information indicates, for example, page information having the smallest index value among a plurality of page information. The root link information stores a page number of the page information, a message digest, and an electronic signature for checking tampering of the root link information.

カタログ情報の構造がどのような構造であっても、以下の変形例を適用することができる。例えば、1つのページ情報に格納可能なレコードの最大数は1つでも複数でも良い。また、ページ情報に割り当てられたページ番号がそのページ情報自身に格納されている必要はない。また、リンク情報において、ページ情報同士を関連付ける情報は、ページ番号だけに限られるものではない。また、ルートリンク情報に電子署名が含まれていなくても良い。また、ルートリンク情報及びリンク情報に、メッセージダイジェストが含まれていなくても良い。また、カタログ情報にルートリンク情報が含まれていなくても良い。なお、レコードの追加及び削除の方法については、の特開2010−262455号公報に記載されているように公知であるので、詳しい説明は省略する。   The following modifications can be applied regardless of the structure of the catalog information. For example, the maximum number of records that can be stored in one page information may be one or more. Further, the page number assigned to the page information need not be stored in the page information itself. In the link information, information that associates page information with each other is not limited to the page number. The root link information may not include an electronic signature. In addition, the message digest may not be included in the root link information and the link information. Further, the root link information may not be included in the catalog information. The method for adding and deleting records is well known as described in Japanese Patent Application Laid-Open No. 2010-262455, and will not be described in detail.

[3.本実施形態のカタログ情報のバックアップ方法]
以下、図3を参照して、本実施形態のカタログのバックアップ方法について説明する。まず、図3は、本実施形態のカタログ情報のバックアップ方法の概要を説明する説明図である。まず、本実施形態のセンターサーバSAは、上述した木構造のカタログ情報に、新規にページ情報の追加処理を実行する(図3:(1))。ページ情報の追加処理では、追加されたレコードを含むページ情報が生成される。木構造のカタログ情報にレコードを追加するために、生成されたページ情報には、新しいページ番号と、インデックスとが付与される。本実施形態のページ情報には、レコードが更新されるたびに新しいページ番号と、インデックスとが付与される。
[3. Catalog information backup method of this embodiment]
The catalog backup method according to the present embodiment will be described below with reference to FIG. First, FIG. 3 is an explanatory diagram for explaining an overview of a catalog information backup method according to the present embodiment. First, the center server SA of the present embodiment newly performs a page information addition process on the above-described tree-structured catalog information (FIG. 3: (1)). In the page information addition process, page information including the added record is generated. In order to add a record to the catalog information having a tree structure, a new page number and an index are assigned to the generated page information. The page information of this embodiment is given a new page number and an index each time a record is updated.

そして、追加されたページ情報を管理する管理ノードが、センターサーバSAにより決定される(図3:(2))。追加されたページ情報を保存したノード装置がネットワーク上に少なくとも1台以上存在するために、本実施形態では、管理ノードが決定される。ネットワークに分散保存されるカタログ情報とは、別に、管理ノードは、センターサーバSAにより決定されたページ情報を記憶する。本実施形態では、追加されたページ情報に付与されたページ番号と、インデックスとを用いて、センターサーバSAは、ハッシュ値を決定する。このとき用いられるハッシュ関数は、任意のハッシュ関数で良い。図3に示す例では、ページ番号を用いて生成されたハッシュ値により、管理ノードN15が決定される。また、図3に示す例では、インデックスを用いて生成されたハッシュ値により、管理ノードN24が決定される。このように、本実施形態では、1つのページ情報に付与されたページ番号とインデックスとに基づいて、2つの管理ノードが決定されることになる。以降、ページ番号に基づいて管理される管理ノードを、第1管理ノードと呼ぶ。また、インデックスに基づいて管理される管理ノードを、第2管理ノードと呼ぶ。第1管理ノードと第2管理ノードにより、追加されたページ情報が記憶されることになる。   Then, the management node that manages the added page information is determined by the center server SA (FIG. 3: (2)). Since at least one node device that stores the added page information exists on the network, the management node is determined in this embodiment. Apart from the catalog information distributed and stored in the network, the management node stores the page information determined by the center server SA. In the present embodiment, the center server SA determines the hash value using the page number assigned to the added page information and the index. The hash function used at this time may be an arbitrary hash function. In the example illustrated in FIG. 3, the management node N15 is determined based on the hash value generated using the page number. In the example illustrated in FIG. 3, the management node N24 is determined based on the hash value generated using the index. Thus, in this embodiment, two management nodes are determined based on the page number and index assigned to one page information. Hereinafter, the management node managed based on the page number is referred to as a first management node. A management node managed based on the index is called a second management node. The added page information is stored by the first management node and the second management node.

そして、センターサーバSAは、ページ情報保持依頼メッセージを、決定した第1管理ノード及び第2管理ノードへ向けて送信する(図3:(3))。ページ情報保持依頼メッセージは、追加されたページ情報と、更新されたルートポイント情報と、識別情報とを含む。識別情報は、センターサーバSAが送信するページ情報保持依頼メッセージが第1管理ノード宛のメッセージか、第2管理ノード宛のメッセージかを識別する情報である。ページ情報保持依頼メッセージを受信すると、第1管理ノード及び第2管理ノードは、受信したメッセージが含むページ情報の改竄チェックを行う。改竄が行われていなければ、第1管理ノード及び第2管理ノードは、ページ情報保持依頼メッセージが含むページ情報と、ルートポイント情報とを記憶する(図3:(4))。このとき、ページ情報保持依頼メッセージが含む識別情報に基づいて、第1管理リスト記憶領域に記憶するか、第2管理リスト記憶領域に記憶するかが決定される。第1管理ノード宛を示す識別情報をページ情報要求メッセージが含む場合、ページ情報保持依頼メッセージが含むページ情報が、第1管理リスト記憶領域に記憶される。第2管理ノード宛を示す識別情報をページ情報保持依頼メッセージが含む場合、ページ情報保持依頼メッセージが含むページ情報が、第2管理リスト記憶領域に記憶される。なお、第1管理リスト記憶領域及び第2管理リスト記憶領域の詳細は後述する。   Then, the center server SA transmits a page information holding request message to the determined first management node and second management node (FIG. 3: (3)). The page information holding request message includes added page information, updated route point information, and identification information. The identification information is information for identifying whether the page information holding request message transmitted by the center server SA is a message addressed to the first management node or a message addressed to the second management node. When the page information holding request message is received, the first management node and the second management node perform a falsification check of the page information included in the received message. If no falsification has been performed, the first management node and the second management node store the page information included in the page information holding request message and the route point information (FIG. 3: (4)). At this time, based on the identification information included in the page information holding request message, it is determined whether to store in the first management list storage area or the second management list storage area. When the page information request message includes identification information indicating the address to the first management node, the page information included in the page information holding request message is stored in the first management list storage area. When the page information holding request message includes identification information indicating the address to the second management node, the page information included in the page information holding request message is stored in the second management list storage area. Details of the first management list storage area and the second management list storage area will be described later.

第1管理ノード及び第2管理ノードはページ情報を記憶すると、定期確認処理を実行する(図3:(5))。定期確認処理は、第1管理ノード及び第2管理ノードがネットワークに存在するか否かを定期的に確認する処理である。具体的には、第1管理ノードが、第2管理ノードに対して定期的にページ情報保持依頼メッセージを送信することで、第1管理ノード装置は、第2管理ノードがネットワークに存在するか否かを確認する。第1管理ノードは、第1管理リスト記憶領域に記憶しているページ情報のインデックスを用いて、所定のハッシュ関数によりハッシュ値を決定する。そして、第1管理ノードは、決定されたハッシュ値により決定される第2管理ノードに向けてページ情報保持依頼メッセージを送信することになる。このとき、第1管理リストに登録されたページ情報の中で、ページ情報保持依頼メッセージが送信されたページ情報と、ページ情報保持依頼メッセージが送信された時刻を示す時刻情報とが対応付けられて、第1管理リスト記憶領域に記憶される。時刻情報は、メッセージが送られた日にちと時間とを含む情報である。日にち及び時間の何れか一方であっても良い。そして、第2管理ノードは、第1管理ノードから送信されたページ情報保持依頼メッセージを受信することになる。   When the first management node and the second management node store the page information, a periodic confirmation process is executed (FIG. 3: (5)). The periodic confirmation process is a process for periodically confirming whether or not the first management node and the second management node exist in the network. Specifically, when the first management node periodically transmits a page information holding request message to the second management node, the first management node device determines whether the second management node exists in the network. To check. The first management node uses the index of page information stored in the first management list storage area to determine a hash value using a predetermined hash function. Then, the first management node transmits a page information holding request message to the second management node determined by the determined hash value. At this time, in the page information registered in the first management list, the page information at which the page information holding request message is transmitted is associated with the time information indicating the time at which the page information holding request message is transmitted. And stored in the first management list storage area. The time information is information including the date and time when the message is sent. Either one of date and time may be used. Then, the second management node receives the page information holding request message transmitted from the first management node.

なお、本実施形態では、第2管理ノードは、第1管理ノードからページ情報保持依頼メッセージを受信しても、レスポンス等は送信しない。その代わりに、本実施形態では、第2管理ノードは、ページ情報保持依頼メッセージを受信すると、ページ情報を記憶した記憶領域の受信時刻を更新する。受信したページ情報が記憶領域に存在しなければ、受信したページ情報が追加される。本実施形態では、第1管理ノードは、第2管理ノードがネットワーク上に存在するかどうかを知る必要がない。これは、第1管理ノードが定期的にカタログ保持依頼メッセージを第2管理ノードに送信することで、もし第2管理ノードがネットワークから脱退した場合であっても、新たな第2管理ノードが決定されるためである。   In the present embodiment, even if the second management node receives the page information holding request message from the first management node, it does not send a response or the like. Instead, in the present embodiment, when receiving the page information holding request message, the second management node updates the reception time of the storage area that stores the page information. If the received page information does not exist in the storage area, the received page information is added. In the present embodiment, the first management node does not need to know whether the second management node exists on the network. This is because the first management node periodically sends a catalog holding request message to the second management node, so that even if the second management node leaves the network, a new second management node is determined. It is to be done.

そして、第2管理ノードは、第1管理ノードから定期的にページ情報保持依頼メッセージが送信されてこない場合、第1管理ノードがネットワーク上に存在しないと判定する。一方、第2管理ノードは、第1管理ノードから定期的にページ情報保持依頼メッセージが送信されてくる場合、第1管理ノードがネットワーク上に存在すると判定する。これにより、第1管理ノード及び第2管理ノードがネットワーク上に存在するか否かを判定することができる。これにより、追加されたページ情報を記憶する第1管理ノード及び第2管理ノードが少なくとも2台ネットワーク上に存在することになる。   Then, the second management node determines that the first management node does not exist on the network when the page information holding request message is not periodically transmitted from the first management node. On the other hand, the second management node determines that the first management node exists on the network when the page information holding request message is periodically transmitted from the first management node. This makes it possible to determine whether or not the first management node and the second management node exist on the network. As a result, at least two first management nodes and second management nodes for storing the added page information exist on the network.

次に図4用いて、確認処理により、第1管理ノード及び第2管理ノードのいずれかがネットワークに存在しなかったと判定された場合の処理について説明する。図4は、本実施形態の複製生成処理の一例を説明する説明図である。まず、(図3:(5))の定期確認処理により、第1管理ノード及び第2管理ノードのいずれかがネットワークに存在しない、言い換えれば、ネットワークから脱退していると判定された場合、新たな管理ノードが決定される(図4:(6))。   Next, a process when it is determined by the confirmation process that one of the first management node and the second management node does not exist in the network will be described with reference to FIG. FIG. 4 is an explanatory diagram illustrating an example of the copy generation process according to the present embodiment. First, when it is determined by the periodic confirmation process (FIG. 3: (5)) that either the first management node or the second management node does not exist in the network, in other words, has left the network, A management node is determined (FIG. 4: (6)).

第2管理ノードであるノードN24がネットワークから脱退したと判定された場合を例に挙げて説明する。そして、第1管理ノード(N15)は、DHTのルーティングテーブルに従って、定期的にページ情報保持依頼メッセージを送信する(図4:(6))。第1管理ノード(N15)により送信されたページ情報保持依頼メッセージを受信したノードN9が、新たに第2管理ノードとなる。   An example will be described in which it is determined that the node N24, which is the second management node, has left the network. Then, the first management node (N15) periodically transmits a page information holding request message according to the DHT routing table (FIG. 4: (6)). The node N9 that has received the page information holding request message transmitted by the first management node (N15) newly becomes the second management node.

また以下に、第1管理ノードがネットワークから脱退したと判定された場合を例に挙げて説明する。第1管理ノードから定期的にページ情報保持依頼メッセージが送信されなくなったことに基づいて、第2管理ノードは、ページ番号に基づいてハッシュ値を決定する。そして、第2管理ノードは、DHTのルーティングテーブルに従って、ページ情報保持依頼メッセージを送信する。第2管理ノードにより送信されたページ情報保持依頼メッセージを受信したノードが、新たに第1管理ノードとなる。これにより、脱退した第1管理ノードに代わる新たな第1管理ノードが決定される。そして、第2管理ノードは、新たに決定された第1管理ノードに向けて、ページ情報保持依頼メッセージを送信する。このように、第1管理ノード及び第2管理ノードが常にネットワーク上に存在するように、コンテンツ分散保存システムが構築される。   In the following, an example will be described in which it is determined that the first management node has left the network. The second management node determines the hash value based on the page number based on the fact that the page information holding request message is not periodically transmitted from the first management node. Then, the second management node transmits a page information holding request message in accordance with the DHT routing table. The node that has received the page information holding request message transmitted by the second management node becomes a new first management node. As a result, a new first management node is determined in place of the withdrawn first management node. Then, the second management node transmits a page information holding request message to the newly determined first management node. In this way, the content distributed storage system is constructed so that the first management node and the second management node always exist on the network.

次に図5を用いて、ページ情報の更新処理について説明する。図5は、本実施形態におけるページ更新処理の説明を示す説明図である。図5に示すように、センターサーバSAは、上述した木構造のカタログ情報に、ページ情報の更新処理を実行する(図5:(1))。ページ情報の更新処理では、更新されたレコードを含むページ情報が新規に生成される。木構造のカタログ情報にレコードを更新するために、生成されたページ情報には、新しいページ番号が付与される。なお、インデックスは、更新前のページ情報と更新後のページ情報とで同じインデックスが付与される。本実施形態のページ情報には、レコードが更新されるたびに新しいページ番号が付与される。   Next, the page information update process will be described with reference to FIG. FIG. 5 is an explanatory diagram illustrating the page update process in the present embodiment. As shown in FIG. 5, the center server SA performs a page information update process on the above-described tree-structured catalog information (FIG. 5: (1)). In the page information update process, page information including the updated record is newly generated. In order to update the record to the tree-structured catalog information, a new page number is assigned to the generated page information. The same index is assigned to the page information before update and the page information after update. The page information of this embodiment is given a new page number every time a record is updated.

そして、更新されたページ情報を管理する新たな管理ノードが、センターサーバSAにより決定される(図5:(2))。更新されたページ情報を保存したノード装置がネットワーク上に少なくとも1台以上存在するために、本実施形態では、管理ノードが決定される。本実施形態では、更新されたページ情報に新たに付与されたページ番号と、更新前と変わらないインデックスとを用いて、センターサーバSAは、ハッシュ値を決定する。このとき用いられるハッシュ関数は、任意のハッシュ関数で良いが、第1管理ノードを決めるためのハッシュ関数を1つ、第2管理ノードを決めるためのハッシュ関数1つを、全ノードが使い続ける必要がある。第1管理ノードを決めるためのハッシュ関数と第2管理ノードを決めるためのハッシュ関数は同一の関数であってもよいです。図5に示す例では、新たに付与されたページ番号を用いて生成されたハッシュ値により、新たな第1管理ノードとして、新たな管理ノードN37が決定される。また、図5に示す例では、更新後のインデックスを用いて生成されたハッシュ値により、第2管理ノードとして、管理ノードN24が決定される。ページ情報の更新前と更新後とで、同じ管理ノード24が決定される。これにより、新たな第1管理ノードと第2管理ノードにより、追加されたページ情報が記憶されることになる。   Then, a new management node that manages the updated page information is determined by the center server SA (FIG. 5: (2)). Since at least one node device storing the updated page information exists on the network, the management node is determined in this embodiment. In the present embodiment, the center server SA determines a hash value using a page number newly given to the updated page information and an index that is not different from that before the update. The hash function used at this time may be an arbitrary hash function, but all nodes need to continue to use one hash function for determining the first management node and one hash function for determining the second management node. There is. The hash function for determining the first management node and the hash function for determining the second management node may be the same function. In the example shown in FIG. 5, a new management node N37 is determined as a new first management node based on the hash value generated using the newly assigned page number. In the example illustrated in FIG. 5, the management node N24 is determined as the second management node based on the hash value generated using the updated index. The same management node 24 is determined before and after the page information is updated. Thus, the added page information is stored by the new first management node and second management node.

そして、センターサーバSAは、ページ情報保持依頼メッセージを、決定した新たな第1管理ノード(N37)及び第2管理ノード(N24)へ向けて送信する(図5:(3))。ページ情報保持依頼メッセージは、更新されたページ情報と、更新されたルートポイント情報とを含む。ページ情報保持依頼メッセージを受信すると、新たな第1管理ノード及び第2管理ノードは、受信したメッセージが含むページ情報の改竄チェックを行う。改竄が行われていなければ、新たな第1管理ノードは、ページ情報保持依頼メッセージが含むページ情報と、ルートポイント情報とを記憶する(図5:(4))。   Then, the center server SA transmits a page information holding request message to the determined new first management node (N37) and second management node (N24) (FIG. 5: (3)). The page information holding request message includes updated page information and updated route point information. When the page information holding request message is received, the new first management node and the second management node perform a falsification check of the page information included in the received message. If no falsification has been performed, the new first management node stores the page information included in the page information holding request message and the route point information (FIG. 5: (4)).

また、第2管理ノードがページ情報保持依頼メッセージを受信すると、受信したメッセージが含むページ情報の改竄チェックを行う。改竄が行われていなければ、第2管理ノードは、記憶したページ情報及びルートポイント情報を、ページ情報保持依頼メッセージが含むページ情報及びルートポイント情報へ更新する(図5:(5))。   Further, when the second management node receives the page information holding request message, the page information included in the received message is checked for tampering. If tampering has not been performed, the second management node updates the stored page information and route point information to the page information and route point information included in the page information holding request message (FIG. 5: (5)).

そして、古い第1管理ノードからページ情報保存依頼メッセージを受信したとき(図5:(6))、第2管理ノードは、ページ情報削除依頼メッセージを送信する(図5:(7))。図5の例では、第2管理ノード装置は、更新前のページ情報のハッシュ値に基づいて、更新前の第1管理ノード(N15)に向けて、ページ情報削除依頼メッセージを送信する。ページ情報削除依頼メッセージは、更新前のページ情報を表す情報が含まれる。   When the page information storage request message is received from the old first management node (FIG. 5: (6)), the second management node transmits a page information deletion request message (FIG. 5: (7)). In the example of FIG. 5, the second management node device transmits a page information deletion request message to the first management node (N15) before update based on the hash value of the page information before update. The page information deletion request message includes information indicating page information before update.

そして、更新前の第1ノード装置がページ情報削除依頼メッセージを受信すると、受信したページ情報削除依頼メッセージに基づいて、更新前のページ情報を、第1管理リスト記憶領域251から削除する(図5:(8))。更新前の第1ノード装置が備える記憶部の第1管理リスト記憶領域251の中から、更新前のページ情報が削除される。更新前のページ情報が削除される代わりに、更新前のページ情報が、他のノードから参照されないように制限されても良い。   When the first node device before update receives the page information deletion request message, the page information before update is deleted from the first management list storage area 251 based on the received page information deletion request message (FIG. 5). : (8)). The page information before update is deleted from the first management list storage area 251 of the storage unit provided in the first node device before update. Instead of deleting the page information before the update, the page information before the update may be restricted so as not to be referenced from other nodes.

図3から図5を用いて説明したように、第1管理ノード及び第2管理ノードが、追加されたページ情報または更新されたページ情報を確実に記憶するため、追加されたページ情報または更新されたページ情報がネットワーク上のノード装置から削除されて無くなってしまうことを防止することができる。これにより、センターサーバSAは、RAIDを組まなくても、ノード装置に確実に保存されるページ情報を用いて、木構造のカタログ情報のバックアップを生成することができる。これにより、センターサーバSAは、第1管理ノードまたは第2管理ノードに向けて、ページ情報要求メッセージを送信する。なお、センターサーバSAは、オーバーレイネットワークに接続するノード装置に向けて、ページ情報要求メッセージを、例えば、マルチキャストを用いて送信しても良い。ページ情報要求メッセージは、第1管理ノード及び第2管理ノードを含むノード装置にページ情報をセンターサーバSAに送信させるメッセージである。ページ情報要求メッセージが、ノード装置に向けて送信されることで、センターサーバSAは、カタログ情報のバックアップを生成することができる。なお、本実施形態のページ情報要求メッセージは、本発明の保存依頼メッセージと確認メッセージの一例である。   As described with reference to FIGS. 3 to 5, the first management node and the second management node store the added page information or updated page information in order to securely store the added page information or updated page information. It is possible to prevent the page information from being deleted from the node device on the network and lost. Thereby, the center server SA can generate a backup of the catalog information of the tree structure by using the page information that is surely stored in the node device even if the RAID is not set. Thereby, the center server SA transmits a page information request message to the first management node or the second management node. Note that the center server SA may transmit a page information request message to the node device connected to the overlay network using, for example, multicast. The page information request message is a message that causes the node device including the first management node and the second management node to transmit page information to the center server SA. By transmitting the page information request message to the node device, the center server SA can generate a backup of the catalog information. Note that the page information request message of this embodiment is an example of a storage request message and a confirmation message of the present invention.

[ノード装置の電気的構成]
次に、図6を参照して、ノード装置の電気的構成ついて説明する。図6は、本実施形態のノード装置の電気的構成を示すブロック図である。図6に示すように、本実施形態のノード装置には、ノード装置を制御するCPU1が備えられている。CPU1には、HDD2とRAM3とデコーダ部4と通信部9とがそれぞれ電気的に接続されている。HDD2、RAM3、などの記憶手段とCPU1とは、ノード装置のコンピュータを構成している。CPU1、HDD2、RAM3、デコーダ部4、及び通信部9はバスを介して相互に接続されている。なお、ノード装置としては、パーソナルコンピュータ、又はSTB(Set Top Box)等を適用可能である。
[Electrical configuration of node equipment]
Next, an electrical configuration of the node device will be described with reference to FIG. FIG. 6 is a block diagram illustrating an electrical configuration of the node device according to the present embodiment. As shown in FIG. 6, the node device according to the present embodiment includes a CPU 1 that controls the node device. An HDD 2, a RAM 3, a decoder unit 4, and a communication unit 9 are electrically connected to the CPU 1. The storage means such as the HDD 2 and the RAM 3 and the CPU 1 constitute a computer of the node device. The CPU 1, HDD 2, RAM 3, decoder unit 4, and communication unit 9 are connected to each other via a bus. As the node device, a personal computer, an STB (Set Top Box) or the like can be applied.

HDD2は、プログラム記憶領域21と、ルーティングテーブル記憶領域23と、分散ページ情報記憶領域24と、管理ページ情報記憶領域25とを含む。プログラム記憶領域21は、メイン動作処理プログラム記憶領域22を含む。メイン動作処理プログラム記憶領域22は、メイン動作処理プログラムを記憶する。メイン動作処理プログラムは、ノード装置にメイン動作処理を実行させるプログラムである。   The HDD 2 includes a program storage area 21, a routing table storage area 23, a distributed page information storage area 24, and a management page information storage area 25. The program storage area 21 includes a main operation processing program storage area 22. The main operation processing program storage area 22 stores a main operation processing program. The main operation processing program is a program that causes the node device to execute main operation processing.

ルーティングテーブル記憶領域23は、本実施形態のDHTのルーティングテーブルを記憶する。分散ページ情報記憶領域24は、本実施形態において、各ノード装置に分散されるページ情報を記憶する。本実施形態の管理ページ情報記憶領域25は、本発明の第2記憶手段の一例である。   The routing table storage area 23 stores the DHT routing table of the present embodiment. The distributed page information storage area 24 stores page information distributed to each node device in the present embodiment. The management page information storage area 25 of this embodiment is an example of the second storage unit of the present invention.

管理ページ情報記憶領域25は、分散ページ情報記憶領域24とは別に、ノード装置が第1管理ノードまたは第2管理ノードとして記憶するページ情報が記憶される。管理ページ情報記憶領域25は、第1管理リスト記憶領域251と第2管理リスト記憶領域252とを含む。   The management page information storage area 25 stores page information that the node device stores as the first management node or the second management node separately from the distributed page information storage area 24. The management page information storage area 25 includes a first management list storage area 251 and a second management list storage area 252.

第1管理リスト記憶領域251は、第1管理ノードとして記憶するページ情報を記憶する。第2管理リスト記憶領域252は、第2管理ノードとして記憶するページ情報を記憶する。本実施形態の管理ページ情報記憶領域25は、本発明の第2記憶手段の一例である。   The first management list storage area 251 stores page information stored as the first management node. The second management list storage area 252 stores page information stored as the second management node. The management page information storage area 25 of this embodiment is an example of the second storage unit of the present invention.

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

RAM3は、コンテンツデータ一時記憶領域31を含む。コンテンツデータ一時記憶領域31は、オーバーレイネットワークOLで送受信されるコンテンツデータを一時記憶する。通信部9は、ネットワークNWを通じてノード装置または外部装置と情報の通信制御を行う。   The RAM 3 includes a content data temporary storage area 31. The content data temporary storage area 31 temporarily stores content data transmitted and received by the overlay network OL. The communication unit 9 controls communication of information with a node device or an external device through the network NW.

ノード装置は、通信部9を介して要求に応じて送信されてきたコンテンツまたはチャンクまたはメタ情報ファイルを受信する受信処理を行う。本実施形態のコンテンツまたはチャンクまたはメタ情報ファイルはパケット化されて送信されるようになっている。各パケットは、通信部9を通じて受信され、RAM3に一時記憶される。このように一時記憶されたコンテンツは、RAM3から読み出されてデコーダ部4と、映像処理部5と、音声処理部7と、ディスプレイ6と、スピーカ8とを通じて再生出力される。或いは、RAM3に記憶されたコンテンツは、RAM3から読み出されてHDD2に記憶されても良い。または、コンテンツデータがRAM3を介さず、直接HDD2に記憶されても良い。その後、ユーザからの操作指示にしたがって、HDD2からコンテンツが読み出される。読み出されたコンテンツは、デコーダ部4と、映像処理部5と、音声処理部7と、ディスプレイ6と、スピーカ8とを通じて再生出力される。これにより、ユーザはコンテンツの視聴を行うことができる。   The node device performs reception processing for receiving the content, chunk, or meta information file transmitted in response to the request via the communication unit 9. The content, chunk, or meta information file of the present embodiment is packetized and transmitted. Each packet is received through the communication unit 9 and temporarily stored in the RAM 3. The content temporarily stored in this manner is read from the RAM 3 and reproduced and output through the decoder unit 4, the video processing unit 5, the audio processing unit 7, the display 6, and the speaker 8. Alternatively, the content stored in the RAM 3 may be read from the RAM 3 and stored in the HDD 2. Alternatively, the content data may be stored directly in the HDD 2 without going through the RAM 3. Thereafter, the content is read from the HDD 2 in accordance with an operation instruction from the user. The read content is reproduced and output through the decoder unit 4, the video processing unit 5, the audio processing unit 7, the display 6, and the speaker 8. Thereby, the user can view the content.

[センターサーバSAの電気的構成]
次に、図7を参照して、センターサーバSAの電気的構成ついて説明する。図7は、本実施形態のセンターサーバSAの電気的構成を示すブロック図である。図7に示すように、本実施形態のセンターサーバSAには、センターサーバSAを制御するCPU11が備えられている。CPU11には、HDD12とRAM13と通信部19とがそれぞれ電気的に接続されている。HDD12、RAM13、などの記憶手段とCPU11とは、センターサーバSAのコンピュータを構成している。CPU11、HDD12、RAM13及び通信部19はバスを介して相互に接続されている。
[Electrical configuration of center server SA]
Next, the electrical configuration of the center server SA will be described with reference to FIG. FIG. 7 is a block diagram showing an electrical configuration of the center server SA of the present embodiment. As shown in FIG. 7, the center server SA of this embodiment includes a CPU 11 that controls the center server SA. The CPU 11 is electrically connected to the HDD 12, the RAM 13, and the communication unit 19. The storage means such as the HDD 12 and the RAM 13 and the CPU 11 constitute a computer of the center server SA. The CPU 11, HDD 12, RAM 13, and communication unit 19 are connected to each other via a bus.

HDD12は、プログラム記憶領域121と、カタログ情報記憶領域123と、コンテンツデータ記憶領域124とを含む。プログラム記憶領域121は、メイン動作処理プログラム記憶領域122を含む。メイン動作処理プログラム記憶領域122は、センターサーバSAのメイン動作処理プログラムを記憶する。センターサーバSAのメイン動作処理プログラムは、センターサーバSAにメイン動作処理を実行させるプログラムである。   The HDD 12 includes a program storage area 121, a catalog information storage area 123, and a content data storage area 124. The program storage area 121 includes a main operation processing program storage area 122. The main operation processing program storage area 122 stores the main operation processing program of the center server SA. The main operation processing program of the center server SA is a program that causes the center server SA to execute main operation processing.

カタログ情報記憶領域123は、本実施形態の木構造のカタログ情報を記憶する。コンテンツデータ記憶領域124は、オーバーレイネットワークOLに公開されるコンテンツのオリジナルを記憶する。本実施形態のカタログ情報記憶領域123は、本発明の第1記憶手段の一例である。   The catalog information storage area 123 stores the tree-structured catalog information of this embodiment. The content data storage area 124 stores the original of the content released to the overlay network OL. The catalog information storage area 123 of this embodiment is an example of a first storage unit of the present invention.

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

通信部19は、ネットワークNWを通じてノード装置または外部装置と情報の通信制御を行う。   The communication unit 19 controls communication of information with a node device or an external device through the network NW.

[センターサーバSAのメイン動作]
以下、図8を参照して本実施形態のセンターサーバSAの動作及び作用について説明する。図8は、センターサーバSAにおけるメイン動作の処理手順を示すフローチャートである。センターサーバSAのメイン動作は、電源またはコンセントを介して商用電源などの外部電源とノード装置とが接続されたことにより、遂行される。以下に示す処理は、CPU11により処理される。
[Main operation of center server SA]
The operation and action of the center server SA of this embodiment will be described below with reference to FIG. FIG. 8 is a flowchart showing a processing procedure of the main operation in the center server SA. The main operation of the center server SA is performed by connecting an external power source such as a commercial power source and the node device via a power source or an outlet. The processing shown below is processed by the CPU 11.

ステップS101では、電源がオフにされたか否かが判定される。センターサーバSAの電源がオフにされたと判定された場合(ステップS101:YES)、センターサーバSAのメイン動作は終了される。センターサーバSAの電源がオフにされたと判定されなかった場合(ステップS101:NO)、ステップS102が実行される。   In step S101, it is determined whether or not the power is turned off. When it is determined that the center server SA is powered off (step S101: YES), the main operation of the center server SA is terminated. If it is not determined that the power of the center server SA is turned off (step S101: NO), step S102 is executed.

ステップS102では、カタログ情報の中のページ情報が破損したか否かを判定するタイミングが到来したか否かが判定される。本実施形態のセンターサーバSAは、定期的にカタログ情報の中のページ情報が破損していないかを確認する。CPU11が備えるタイマー(不図示)により、計時動作が実行される。CPU11により計時された時刻が、破損を判定する所定の時刻になったか否かが判定される。タイミングが到来したと判定された場合(ステップS102:YES)、ステップS103が実行される。タイミングが到来したと判定されなかった場合(ステップS102:NO)、ステップS101が再度実行される。   In step S102, it is determined whether or not the timing for determining whether or not the page information in the catalog information has been damaged has arrived. The center server SA of the present embodiment periodically checks whether page information in the catalog information is damaged. A timer operation (not shown) provided in the CPU 11 performs a time measuring operation. It is determined whether or not the time counted by the CPU 11 has reached a predetermined time for determining breakage. If it is determined that the timing has arrived (step S102: YES), step S103 is executed. If it is not determined that the timing has arrived (step S102: NO), step S101 is executed again.

ステップS103では、カタログ情報の中のページ情報が破損されていたか否かが判定される。具体的には、カタログ情報記憶領域123に記憶されたカタログ情報の中で、読み出せないページ情報があったか否かが判定される。読み出せないページ情報があったと判定された場合、ページ情報が破損されていると判定される。一方、全てのページ情報が読み出せた場合、ページ情報は破損されていないと判定される。ページ情報が破損されていると判定された場合(ステップS103:YES)、ステップS104が実行される。ページ情報が破損されていると判定されなかった場合(ステップS103:NO)、ステップS107が実行される。本実施形態のセンターサーバSAのコンピュータとステップS103は、本発明の第1判定手段の一例である。また、本実施形態のステップS103は、本発明の第1判定ステップの一例である。   In step S103, it is determined whether or not the page information in the catalog information has been damaged. Specifically, it is determined whether or not there is page information that cannot be read in the catalog information stored in the catalog information storage area 123. If it is determined that there is page information that cannot be read, it is determined that the page information is damaged. On the other hand, when all the page information can be read, it is determined that the page information is not damaged. If it is determined that the page information is damaged (step S103: YES), step S104 is executed. If it is not determined that the page information is damaged (step S103: NO), step S107 is executed. The computer of the center server SA and step S103 of this embodiment are an example of the first determination unit of the present invention. Moreover, step S103 of the present embodiment is an example of a first determination step of the present invention.

ステップS104では、破損したページ情報の第1管理ノード及び第2管理ノードに向けてページ情報要求メッセージが送信される。ページ情報要求メッセージは、破損したページ情報のページ番号及びインデックスを含むメッセージである。なお、破損したページ情報の第1管理ノードまたは第2管理ノードの何れか一方だけに、ページ情報要求メッセージが送信されても良い。本実施形態のセンターサーバSAのコンピュータとステップS104は、本発明の第1送信手段の一例である。また、本実施形態のステップS104は、本発明の第1送信ステップの一例である。   In step S104, a page information request message is transmitted to the first management node and the second management node of the damaged page information. The page information request message is a message including the page number and index of damaged page information. Note that the page information request message may be transmitted only to either the first management node or the second management node of the damaged page information. The computer of the center server SA and step S104 of this embodiment are an example of the first transmission means of the present invention. Moreover, step S104 of this embodiment is an example of the first transmission step of the present invention.

ステップS105では、ステップS104で要求したページ情報が受信されたか否かが判定される。ステップS104で要求したページ情報が受信されたと判定された場合(ステップS105:YES)、ステップS106が実行される。ステップS104で要求したページ情報が受信されたと判定されなかった場合(ステップS105:NO)、ステップS105が繰り返し実行される。本実施形態のセンターサーバSAのコンピュータとステップS105は、本発明の第1受信手段の一例である。また、本実施形態のステップS105は、本発明の第1受信ステップの一例である。   In step S105, it is determined whether the page information requested in step S104 has been received. If it is determined that the page information requested in step S104 has been received (step S105: YES), step S106 is executed. If it is not determined that the page information requested in step S104 has been received (step S105: NO), step S105 is repeatedly executed. The computer of the center server SA and step S105 of this embodiment are an example of the first receiving means of the present invention. Moreover, step S105 of this embodiment is an example of the first reception step of the present invention.

ステップS106では、ステップS103で破損があると判定されたページ情報が、ステップS105で受信されたページ情報を用いて置き換えられる。これにより、例え、センターサーバSAが記憶するカタログ情報が破損された場合であっても、RAIDを組まなくても修復することができる。その後、ステップS101が再度実行される。本実施形態のセンターサーバSAのコンピュータとステップS106は、本発明の更新手段の一例である。また、本実施形態のステップS106は、本発明の更新ステップの一例である。   In step S106, the page information determined to be damaged in step S103 is replaced using the page information received in step S105. Thereby, even if the catalog information stored in the center server SA is damaged, it can be repaired without using a RAID. Thereafter, step S101 is executed again. The computer of the center server SA and step S106 of this embodiment are an example of the updating unit of the present invention. Moreover, step S106 of this embodiment is an example of the update step of this invention.

ステップS107では、カタログ情報にページ情報が追加されたか否かが判定される。ページ情報が追加されたと判定された場合(ステップS107:YES)、ステップS108が実行される。ページ情報が追加されたと判定されなかった場合(ステップS107:NO)、ステップS111が実行される。   In step S107, it is determined whether page information has been added to the catalog information. If it is determined that page information has been added (step S107: YES), step S108 is executed. If it is not determined that page information has been added (step S107: NO), step S111 is executed.

ステップS108では、追加されたページ情報に、ページ番号及びインデックスが付与される。そして、ページ番号及びインデックスが付与されたページ情報が、カタログ情報に追加される。追加されたカタログ情報が、カタログ情報記憶領域123に記憶される。   In step S108, a page number and an index are added to the added page information. Then, the page information to which the page number and the index are assigned is added to the catalog information. The added catalog information is stored in the catalog information storage area 123.

ステップS109では、ステップS108で付与されたページ番号及びインデックスに基づいて、第1管理ノード及び第2管理ノードが決定される。本実施形態のセンターサーバSAのコンピュータとステップS109は、本発明の第1決定手段の一例である。   In step S109, the first management node and the second management node are determined based on the page number and index assigned in step S108. The computer of the center server SA and step S109 of this embodiment are an example of the first determination unit of the present invention.

ステップS110では、決定された第1管理ノード及び第2管理ノードに向けて、ページ情報保持依頼メッセージが送信される。本実施形態のセンターサーバSAのコンピュータとステップS110は、本発明の第1送信手段の一例である。   In step S110, a page information holding request message is transmitted to the determined first management node and second management node. The computer of the center server SA and step S110 of this embodiment are an example of the first transmission means of the present invention.

ステップS111では、カタログ情報が含むページ情報が更新されたか否かが判定される。ページ情報が更新されたと判定された場合(ステップS111:YES)、ステップS112が実行される。ページ情報が更新されたと判定されなかった場合(ステップS111:NO)、ステップS101が実行される。   In step S111, it is determined whether or not the page information included in the catalog information has been updated. If it is determined that the page information has been updated (step S111: YES), step S112 is executed. If it is not determined that the page information has been updated (step S111: NO), step S101 is executed.

ステップS112では、更新されたページ情報に、新たなページ番号が付与される。そして、新たにページ番号が付与されたページ情報が、カタログ情報に追加される。この場合、インデックスは、ページ情報の更新前と更新後とで同じインデックスが用いられる。更新されたカタログ情報が、カタログ情報記憶領域123に記憶される。   In step S112, a new page number is given to the updated page information. Then, the page information newly assigned with the page number is added to the catalog information. In this case, the same index is used before and after the page information is updated. The updated catalog information is stored in the catalog information storage area 123.

ステップS113では、ステップS112で付与されたページ番号に基づいて、新たな第1管理ノードが決定される。   In step S113, a new first management node is determined based on the page number assigned in step S112.

ステップS114では、決定された第1管理ノードに向けて、ページ情報保持依頼メッセージが送信される。   In step S114, a page information retention request message is transmitted toward the determined first management node.

[ノード装置のメイン動作]
以下に図9から図11を用いて、本実施形態のノード装置の動作及び作用について説明する。まず、ノード装置の動作及び作用について、添付図面を参照して説明する。図9は、ノード装置におけるメイン動作の処理手順を示すフローチャートである。ノード装置のメイン動作は、電源またはコンセントを介して商用電源などの外部電源とノード装置とが接続されたことにより、遂行される。以下に示す処理は、CPU1により処理される。
[Main operation of node device]
The operation and action of the node device according to this embodiment will be described below with reference to FIGS. First, operation | movement and an effect | action of a node apparatus are demonstrated with reference to an accompanying drawing. FIG. 9 is a flowchart illustrating a processing procedure of the main operation in the node device. The main operation of the node device is performed by connecting an external power source such as a commercial power source and the node device via a power source or an outlet. The processing shown below is processed by the CPU 1.

ステップS201では、電源がオフにされたか否かが判定される。ノード装置の電源がオフにされたと判定された場合(ステップS201:YES)、ノード装置のメイン動作は終了される。ノード装置の電源がオフにされたと判定されなかった場合(ステップS201:NO)、ステップS202が実行される。   In step S201, it is determined whether or not the power is turned off. When it is determined that the power of the node device has been turned off (step S201: YES), the main operation of the node device is terminated. If it is not determined that the node device is powered off (step S201: NO), step S202 is executed.

ステップS202では、ページ情報保持依頼メッセージが受信されたか否かが判定される。ページ情報保持依頼メッセージが受信されたと判定された場合(ステップS202:YES)、ステップS203が実行される。ページ情報保持依頼メッセージが受信されたと判定されなかった場合(ステップS202:NO)、ステップS204が実行される。本実施形態のコンピュータとステップS202は、本発明の第3受信手段の一例である。   In step S202, it is determined whether a page information holding request message has been received. If it is determined that the page information holding request message has been received (step S202: YES), step S203 is executed. If it is not determined that the page information holding request message has been received (step S202: NO), step S204 is executed. The computer of this embodiment and step S202 are an example of the third receiving means of the present invention.

ステップS203では、ページ情報保持処理が実行される。ページ情報保持処理の詳細は、後述する。   In step S203, a page information holding process is executed. Details of the page information holding process will be described later.

ステップS204では、ページ情報削除依頼メッセージが受信されたか否かが判定される。ページ情報削除依頼メッセージが受信されたと判定された場合(ステップS204:YES)、ステップS205が実行される。ページ情報削除依頼メッセージが受信されたと判定されなかった場合(ステップS204:NO)、ステップS206が実行される。   In step S204, it is determined whether a page information deletion request message has been received. If it is determined that the page information deletion request message has been received (step S204: YES), step S205 is executed. If it is not determined that the page information deletion request message has been received (step S204: NO), step S206 is executed.

ステップS205では、ページ情報削除処理が実行される。ページ情報削除処理の詳細は、後述する。   In step S205, page information deletion processing is executed. Details of the page information deletion process will be described later.

ステップS206では、ページ情報要求メッセージが受信されたか否かが判定される。ページ情報要求メッセージが受信されたと判定された場合(ステップS206:YES)、ステップS207が実行される。ページ情報要求メッセージが受信されたと判定されなかった場合(ステップS206:NO)、ステップS209が実行される。本実施形態のノード装置のコンピュータとステップS206とは、本発明の第2受信手段の一例である。また、本実施形態のステップS206は、本発明の第2受信ステップの一例である。   In step S206, it is determined whether a page information request message has been received. If it is determined that the page information request message has been received (step S206: YES), step S207 is executed. If it is not determined that the page information request message has been received (step S206: NO), step S209 is executed. The computer of the node device of this embodiment and step S206 are an example of the second receiving means of the present invention. Moreover, step S206 of the present embodiment is an example of a second reception step of the present invention.

ステップS207では、ステップS206で要求されたページ情報が、第1管理リスト記憶領域251または第2管理リスト記憶領域252に記憶されているか否かが判定される。なお、ステップS207では、ステップS206で要求されたページ情報が、第1管理リスト記憶領域251または第2管理リスト記憶領域252または分散ページ情報記憶領域24に記憶されているか否かが判定されても良い。ステップS206で要求されたページ情報が記憶されていると判定された場合(ステップS207:YES)、ステップS208が実行される。ステップS206で要求されたページ情報が記憶されていると判定されなかった場合(ステップS207:NO)、ステップS201が実行される。   In step S207, it is determined whether or not the page information requested in step S206 is stored in the first management list storage area 251 or the second management list storage area 252. In step S207, it is determined whether or not the page information requested in step S206 is stored in the first management list storage area 251, the second management list storage area 252, or the distributed page information storage area 24. good. When it is determined that the page information requested in step S206 is stored (step S207: YES), step S208 is executed. If it is not determined that the page information requested in step S206 is stored (step S207: NO), step S201 is executed.

ステップS208では、ステップS206で要求されたページ情報が、センターサーバSAへ送信される。具体的には、第1管理リスト記憶領域251または第2管理リスト記憶領域252に記憶されているページ情報が、センターサーバSAへ送信される。なお、第1管理リスト記憶領域251または第2管理リスト記憶領域252または分散ページ情報記憶領域24に記憶されているページ情報が、センターサーバSAへ送信される。本実施形態のノード装置のコンピュータとステップS208とは、本発明の第2送信手段の一例である。また、本実施形態のステップS208は、本発明の第2送信ステップの一例である。   In step S208, the page information requested in step S206 is transmitted to the center server SA. Specifically, the page information stored in the first management list storage area 251 or the second management list storage area 252 is transmitted to the center server SA. The page information stored in the first management list storage area 251, the second management list storage area 252, or the distributed page information storage area 24 is transmitted to the center server SA. The computer of the node device of this embodiment and step S208 are an example of the second transmission means of the present invention. Moreover, step S208 of this embodiment is an example of the second transmission step of the present invention.

ステップS209では、第1管理リスト記憶領域251に記憶された第1管理リストに基づいて、前回第2管理ノードへページ情報保持依頼メッセージを送信してから、所定の時間以上が経過したページ情報が存在する否かが判定される。具体的には、現在の時刻を示す時刻情報が、CPU1の計時動作により計時される。そして、現在の時刻と、前回メッセージを送信した時刻との差が所定以上であるページ情報が存在するか否かが判定される。前回第2管理ノードへページ情報保持依頼メッセージを送信してから、所定の時間以上が経過したページ情報があると判定された場合(ステップS209:YES)、ステップS210が実行される。前回第2管理ノードへページ情報保持依頼メッセージを送信してから、所定の時間以上が経過したページ情報があると判定されなかった場合(ステップS209:NO)、ステップS211が実行される。   In step S209, based on the first management list stored in the first management list storage area 251, page information for which a predetermined time or more has passed since the page information holding request message was transmitted to the second management node last time. It is determined whether or not it exists. Specifically, time information indicating the current time is counted by the time counting operation of the CPU 1. Then, it is determined whether there is page information in which the difference between the current time and the time when the previous message was transmitted is greater than or equal to a predetermined value. If it is determined that there is page information for which a predetermined time has elapsed since the previous transmission of the page information holding request message to the second management node (step S209: YES), step S210 is executed. If it is not determined that there is page information for which a predetermined time or more has elapsed since the previous transmission of the page information holding request message to the second management node (step S209: NO), step S211 is executed.

ステップS210では、ステップS209で所定時間以上経過したと判定されたページ情報の第2管理ノードへ向けて、ページ情報保持依頼メッセージが送信される。なお、ステップS210でページ情報保持依頼メッセージが送信された送信時刻を示す時刻情報が、ページ情報と対応付けられて、第1管理リスト記憶領域251に記憶される。本実施形態のコンピュータとステップS210は、本発明の第3送信手段の一例である。   In step S210, a page information holding request message is transmitted to the second management node of the page information determined to have passed the predetermined time in step S209. Note that time information indicating the transmission time at which the page information holding request message is transmitted in step S210 is stored in the first management list storage area 251 in association with the page information. The computer of this embodiment and step S210 are an example of the 3rd transmission means of this invention.

ステップS211では、第2管理リスト記憶領域252に記憶された第2管理リストに基づいて、前回第1管理ノードからページ情報保持依頼メッセージを受信してから、所定の時間以上が経過したかページ情報が存在する否かが判定される。具体的には、現在の時刻を示す時刻情報が、CPU1の計時動作により計時される。そして、現在の時刻と、前回メッセージを受信した時刻との差が所定以上であるページ情報が存在するか否かが判定される。第1管理ノードからページ情報保持依頼メッセージを前回受信してから、所定の時間以上が経過したページ情報があると判定された場合(ステップS211:YES)、ステップS212が実行される。第1管理ノードからページ情報保持依頼メッセージを前回受信してから、所定の時間以上が経過したページ情報があると判定されなかった場合(ステップS211:NO)、ステップS201が実行される。本実施形態のコンピュータとステップS211とは、本発明の第2判定手段の一例である。   In step S211, based on the second management list stored in the second management list storage area 252, whether or not a predetermined time or more has elapsed since the previous page information holding request message was received from the first management node. Whether or not exists is determined. Specifically, time information indicating the current time is counted by the time counting operation of the CPU 1. Then, it is determined whether there is page information in which the difference between the current time and the time when the previous message was received is greater than or equal to a predetermined value. If it is determined that there is page information for which a predetermined time has elapsed since the previous reception of the page information holding request message from the first management node (step S211: YES), step S212 is executed. If it is not determined that there is page information for which a predetermined time or more has elapsed since the previous reception of the page information holding request message from the first management node (step S211: NO), step S201 is executed. The computer of this embodiment and step S211 are examples of the second determination unit of the present invention.

ステップS212では、ステップS211で所定時間以上経過したと判定されたページ情報の新たな第1管理ノードが決定される。具体的には、ページ番号に基づいてハッシュ値を決定する。本実施形態のコンピュータとステップS212とは、本発明の第2決定手段の一例である。   In step S212, a new first management node of the page information determined to have passed the predetermined time in step S211 is determined. Specifically, the hash value is determined based on the page number. The computer of this embodiment and step S212 are examples of the second determination unit of the present invention.

ステップS213では、新たな第1管理ノードへ向けて、ページ情報保持依頼メッセージが送信される。具体的には、ステップS212で決定されたハッシュ値と、DHTのルーティングテーブルとに従って、ページ情報保持依頼メッセージが送信される。   In step S213, a page information holding request message is transmitted to the new first management node. Specifically, the page information holding request message is transmitted according to the hash value determined in step S212 and the DHT routing table.

[ページ情報保持処理]
図10を用いて、本実施形態のページ情報保持処理の動作及び作用について説明する。図10は、本実施形態のページ情報保持処理の処理手順を示すフローチャートである。ステップS301では、ステップS202で受信したページ情報保持依頼メッセージが、第2管理ノード宛のメッセージであるか否かが判定される。第2管理ノード宛のメッセージであると判定された場合(ステップ301:YES)、ステップS302が実行される。第2管理ノード宛のメッセージであると判定されなかった場合(ステップ301:NO)、ステップS308が実行される。
[Page information retention processing]
The operation and action of the page information holding process of this embodiment will be described with reference to FIG. FIG. 10 is a flowchart showing the processing procedure of the page information holding processing of this embodiment. In step S301, it is determined whether or not the page information holding request message received in step S202 is a message addressed to the second management node. If it is determined that the message is addressed to the second management node (step 301: YES), step S302 is executed. If it is not determined that the message is addressed to the second management node (step 301: NO), step S308 is executed.

ステップS302では、ステップS202で受信したページ情報保持依頼メッセージが含むページ情報が、第2管理リスト記憶領域252に既に記憶されているか否かが判定される。第2管理リスト記憶領域252に既に記憶されていると判定された場合(ステップS302:YES)、ステップS304が実行される。第2管理リスト記憶領域252に既に記憶されていると判定されなかった場合(ステップS302:NO)、ステップS303が実行される。   In step S302, it is determined whether or not the page information included in the page information holding request message received in step S202 is already stored in the second management list storage area 252. If it is determined that the second management list storage area 252 has already been stored (step S302: YES), step S304 is executed. If it is not determined that the second management list storage area 252 has already been stored (step S302: NO), step S303 is executed.

ステップS303では、ステップS202で受信したページ情報保持依頼メッセージが含むページ情報が、第2管理リスト記憶領域252に記憶される。   In step S303, the page information included in the page information holding request message received in step S202 is stored in the second management list storage area 252.

ステップS304では、ステップS202で受信したページ情報保持依頼メッセージが含むページ情報が、第2管理リスト記憶領域252に記憶されているページ情報よりページ番号が新しいか否かが判定される。第2管理リスト記憶領域252に記憶されているページ情報のページ番号と、ステップS202で受信したページ情報のページ番号とが比較される。ステップS202で受信したページ情報のページ番号の値の方が、大きかった場合、新しいページ番号であると判定される。ステップS202で受信したページ情報のページ番号が新しいページ番号である判定された場合(ステップS304:YES)、ステップS305が実行される。ステップS202で受信したページ情報のページ番号が新しいページ番号である判定された場合(ステップS304:NO)、ステップS307が実行される。   In step S304, it is determined whether or not the page information included in the page information holding request message received in step S202 is newer than the page information stored in the second management list storage area 252. The page number of the page information stored in the second management list storage area 252 is compared with the page number of the page information received in step S202. If the page number value of the page information received in step S202 is larger, it is determined that it is a new page number. When it is determined that the page number of the page information received in step S202 is a new page number (step S304: YES), step S305 is executed. When it is determined that the page number of the page information received in step S202 is a new page number (step S304: NO), step S307 is executed.

ステップS305では、ステップS202で受信したページ情報保持依頼メッセージが含むページ情報により、第2管理リスト記憶領域252に記憶されているページ情報が上書きされる。   In step S305, the page information stored in the second management list storage area 252 is overwritten with the page information included in the page information holding request message received in step S202.

ステップS306では、ステップS305で上書きされる前のページ情報の第1管理ノードへ、ページ削除依頼メッセージが送信される。   In step S306, a page deletion request message is transmitted to the first management node of the page information before being overwritten in step S305.

ステップS307では、ステップS202で受信したページ情報保持依頼メッセージの送信元の第1管理ノードへ向けて、ページ情報削除依頼メッセージが送信される。   In step S307, the page information deletion request message is transmitted to the first management node that is the transmission source of the page information holding request message received in step S202.

ステップS308では、ステップS202で受信したページ情報保持依頼メッセージが、第1管理ノード宛のメッセージであるか否かが判定される。第1管理ノード宛のメッセージであると判定された場合(ステップ308:YES)、ステップS309が実行される。第2管理ノード宛のメッセージであると判定されなかった場合(ステップ308:NO)、ページ情報保持処理は終了される。   In step S308, it is determined whether or not the page information holding request message received in step S202 is a message addressed to the first management node. If it is determined that the message is addressed to the first management node (step 308: YES), step S309 is executed. If it is not determined that the message is addressed to the second management node (step 308: NO), the page information holding process is terminated.

ステップS309では、ステップS202で受信したページ情報保持依頼メッセージが含むページ情報が、第1管理リスト記憶領域251に既に記憶されているか否かが判定される。第1管理リスト記憶領域251に既に記憶されていると判定された場合(ステップS309:YES)、ステップS311が実行される。第1管理リスト記憶領域251に既に記憶されていると判定されなかった場合(ステップS309:NO)、ステップS310が実行される。   In step S309, it is determined whether or not the page information included in the page information holding request message received in step S202 is already stored in the first management list storage area 251. If it is determined that the information is already stored in the first management list storage area 251 (step S309: YES), step S311 is executed. If it is not determined that the information is already stored in the first management list storage area 251 (step S309: NO), step S310 is executed.

ステップS310では、ステップS202で受信したページ情報保持依頼メッセージが含むページ情報が、第1管理リスト記憶領域251に記憶される。   In step S310, the page information included in the page information holding request message received in step S202 is stored in the first management list storage area 251.

ステップS311では、ステップS202でページ情報保持依頼メッセージが受信された時刻を示す時刻情報が、第1管理リスト情報記憶領域251に記憶される。ページ情報保持依頼メッセージが示すページ情報と、ページ情報保持依頼メッセージが受信された時刻情報とが対応付けられて、第1管理リスト情報記憶領域251に記憶される。また、既に第1管理リスト情報記憶領域251にページ情報が記憶されていた場合、ページ情報と対応付けて記憶されている時刻情報が、テップS202でページ情報保持依頼メッセージが受信された時刻を示す時刻情報に更新される。   In step S311, time information indicating the time when the page information holding request message is received in step S202 is stored in the first management list information storage area 251. The page information indicated by the page information holding request message and the time information when the page information holding request message is received are associated with each other and stored in the first management list information storage area 251. If page information has already been stored in the first management list information storage area 251, the time information stored in association with the page information indicates the time at which the page information holding request message was received in step S202. Updated to time information.

ステップS312では、ステップS202でページ情報保持依頼メッセージが受信された時刻を示す時刻情報が、第2管理リスト情報記憶領域252に記憶される。ページ情報保持依頼メッセージが示すページ情報と、ページ情報保持依頼メッセージが受信された時刻情報とが対応付けられて、第2管理リスト情報記憶領域252に記憶される。また、既に第2管理リスト情報記憶領域252にページ情報が記憶されていた場合、ページ情報と対応付けて記憶されている時刻情報が、ステップS202でページ情報保持依頼メッセージが受信された時刻を示す時刻情報に更新される。   In step S312, time information indicating the time when the page information holding request message is received in step S202 is stored in the second management list information storage area 252. The page information indicated by the page information holding request message and the time information when the page information holding request message is received are associated with each other and stored in the second management list information storage area 252. If page information has already been stored in the second management list information storage area 252, the time information stored in association with the page information indicates the time at which the page information holding request message was received in step S202. Updated to time information.

[ページ情報保持処理]
図11を用いて、本実施形態のページ情報削除処理の動作及び作用について説明する。図11は、本実施形態のページ情報削除処理の処理手順を示すフローチャートである。ステップS401では、ステップS204で受信したページ情報削除依頼メッセージが含むページ情報が、第1管理ノード記憶領域251に記憶されているか否かが判定される。第1管理ノード記憶領域251に記憶されていると判定された場合(ステップS401:YES)、ステップS402が実行される。第1管理ノード記憶領域251に記憶されていると判定されなかった場合(ステップS401:NO)、ページ情報削除処理は終了される。
[Page information retention processing]
The operation and action of the page information deletion process of this embodiment will be described with reference to FIG. FIG. 11 is a flowchart showing a processing procedure of page information deletion processing according to the present embodiment. In step S401, it is determined whether or not the page information included in the page information deletion request message received in step S204 is stored in the first management node storage area 251. If it is determined that it is stored in the first management node storage area 251 (step S401: YES), step S402 is executed. If it is not determined that the information is stored in the first management node storage area 251 (step S401: NO), the page information deletion process is terminated.

ステップS402では、ステップS204で受信したページ情報削除依頼メッセージが含むページ情報が、第1管理ノード記憶領域251から削除される。なお、第1管理ノード記憶領域251からページ情報が削除される代わりに、削除されるページ情報が、他のノード装置から参照が制限されるように設定されても良い。   In step S402, the page information included in the page information deletion request message received in step S204 is deleted from the first management node storage area 251. Instead of deleting the page information from the first management node storage area 251, the page information to be deleted may be set so that the reference from other node devices is restricted.

本実施形態においては、オーバーレイネットワークOLに、DHTのルーティングテーブルを利用したピアツーピアの通信システムが適用されていたが、これに限られるものではない。他のピアツーピアの通信システム、または、オーバーレイネットワークを用いたシステムに、本発明が適用されても良い。例えば、DHT以外のルーティングテーブルが用いられる通信システムまたはピアツーピアの通信システムに本発明が適用されても良い。DHTを利用しないピアツーピアの通信システムとしては、例えば、ハイブリッド型のピアツーピアの通信システムがある。ハイブリッド型のピアツーピアの通信システム、または、ピュア型のピアツーピアの通信システムに本発明が適用されても良い。また、オーバーレイネットワークを用いていない情報通信システムに本発明が適用されても良い。例えば、複数のサーバ装置によりコンテンツが分散保存されるシステムに本発明が適用されても良い。   In this embodiment, the peer-to-peer communication system using the DHT routing table is applied to the overlay network OL. However, the present invention is not limited to this. The present invention may be applied to other peer-to-peer communication systems or systems using overlay networks. For example, the present invention may be applied to a communication system using a routing table other than DHT or a peer-to-peer communication system. An example of a peer-to-peer communication system that does not use DHT is a hybrid peer-to-peer communication system. The present invention may be applied to a hybrid peer-to-peer communication system or a pure peer-to-peer communication system. Further, the present invention may be applied to an information communication system that does not use an overlay network. For example, the present invention may be applied to a system in which content is distributed and stored by a plurality of server devices.

また、本実施形態では、第1管理ノード及び第2管理ノードの両方が決定されているが、第1管理ノード及び第2管理ノードの何れか一方が決定されても良い。また、ページ情報のページ番号及び識別情報に基づいて、第1管理ノード及び第2管理ノードが複数台決定されても良い。この場合、複数種類のハッシュ関数が用いられることで、複数台の第1管理ノード及び第2管理ノードが決定される。   In the present embodiment, both the first management node and the second management node are determined, but either the first management node or the second management node may be determined. A plurality of first management nodes and a plurality of second management nodes may be determined based on the page number and identification information of the page information. In this case, a plurality of first management nodes and a plurality of second management nodes are determined by using a plurality of types of hash functions.

また、本実施形態の定期確認処理では、第1管理ノードから第2管理ノードへ向けて、ページ情報保持依頼メッセージが送信されていたが、第2管理ノードから第1管理ノードへ向けて、ページ情報保持依頼メッセージが送信されても良い。また、第1管理ノードと第2管理ノードとが互いに、定期的にページ情報保持依頼メッセージを送信し合っても良い。この場合、図9から図11に示す第2管理ノードの処理が、第1管理ノードにも実行されることになる。同様に、図9から図11に示す第1管理ノードの処理が、第2管理ノードにも実行されることになる。   Further, in the periodic confirmation process of the present embodiment, the page information holding request message is transmitted from the first management node to the second management node. However, the page information holding message is transmitted from the second management node to the first management node. An information holding request message may be transmitted. In addition, the first management node and the second management node may periodically transmit a page information holding request message to each other. In this case, the process of the second management node shown in FIGS. 9 to 11 is also executed on the first management node. Similarly, the processing of the first management node shown in FIGS. 9 to 11 is also executed on the second management node.

また、本実施形態では、ページ番号に基づいて第1管理ノードが、識別情報に基づいて第2管理ノードが決定されていた。ページ番号に基づいて第2管理ノードが決定され、識別情報に基づいて第1管理ノードが決定されても良い。また、センターサーバSAから、オーバーレイネットワークOLに接続する任意のノード装置に向けて、ページ情報保持依頼メッセージが送信されても良い。   In the present embodiment, the first management node is determined based on the page number, and the second management node is determined based on the identification information. The second management node may be determined based on the page number, and the first management node may be determined based on the identification information. Further, the page information holding request message may be transmitted from the center server SA to an arbitrary node device connected to the overlay network OL.

1 CPU
2 HDD
3 RAM
4 デコーダ部
5 映像処理部
6 ディスプレイ
7 音声処理部
8 スピーカ
9 通信部
11 CPU
12 HDD
13 RAM
19 通信部
21 プログラム記憶領域
22 メイン動作処理プログラム記憶領域
23 ルーティングテーブル記憶領域
24 分散ページ情報記憶領域
25 管理ページ情報記憶領域
26 インデックス情報記憶領域
31 コンテンツ一時記憶領域
121 プログラム記憶領域
122 メイン動作処理プログラム記憶領域
123 カタログ情報記憶領域
124 コンテンツデータ記憶領域
251 第1管理リスト記憶領域
252 第2管理リスト記憶領域
Nn ノード装置
NW ネットワーク
OL オーバーレイネットワーク
P 通信回線
S コンテンツ分散保存システム
SA センターサーバ
1 CPU
2 HDD
3 RAM
4 Decoder unit 5 Video processing unit 6 Display 7 Audio processing unit 8 Speaker 9 Communication unit 11 CPU
12 HDD
13 RAM
DESCRIPTION OF SYMBOLS 19 Communication part 21 Program storage area 22 Main operation processing program storage area 23 Routing table storage area 24 Distributed page information storage area 25 Management page information storage area 26 Index information storage area 31 Temporary content storage area 121 Program storage area 122 Main operation processing program Storage area 123 Catalog information storage area 124 Content data storage area 251 First management list storage area 252 Second management list storage area Nn Node device NW Network OL Overlay network P Communication line S Content distributed storage system SA Center server

Claims (2)

ネットワークに接続する複数のノード装置に、ネットワークに分散して記憶されるデータを検索するための複数の検索情報が分散して記憶される情報通信システムにおいて、
前記複数のノード装置に分散して記憶される複数の検索情報を記憶する情報処理装置を備える前記情報通信システムであって、
前記情報処理装置は、
前記複数のノード装置に分散し記憶される複数の検索情報を記憶する第1記憶手段と、
前記第1記憶手段に記憶された複数の検索情報の中で、破損した検索情報があるかを判定する第1判定手段と、
前記第1判定手段により破損された検索情報があると判定された場合、破損された検索情報の送信要求を、前記複数のノード装置の少なくともいずれかに送信する第1送信手段と、
前記複数のノード装置のいずれかから、破損された検索情報を受信する第1受信手段と、
前記第1記憶手段に記憶された検索情報の中で破損された検索情報を、前記第1受信手段により受信された検索情報を用いて更新する更新手段と、
を備え、
前記ノード装置は、
前記送信要求を受信する第2受信手段と、
前記第2受信手段により受信した前記送信要求に基づいて、前記ノード装置が記憶する前記検索情報を前記情報処理装置に送信する第2送信手段と、
を備え
前記第1記憶手段は、前記検索情報が追加された順番を示す順番情報と、前記検索情報を識別する識別情報とを含む前記検索情報を記憶し、
前記情報処理装置は、
前記順番情報に基づいて、前記複数のノード装置の中から前記順番情報に対応する前記検索情報を記憶する第1管理ノード、または、前記識別情報に基づいて、前記複数のノード装置の中から前記識別情報に対応する前記検索情報を記憶する第2管理ノードの何れか一方を決定する第1決定手段を備え、
前記第1送信手段は、前記第1決定手段により決定された第1管理ノードまたは第2管理ノードに向けて、前記順番情報または前記識別情報に対応する前記検索情報を保存させる保存依頼メッセージを送信し、
前記ノード装置は、
前記保存依頼メッセージが示す前記検索情報を記憶する第2記憶手段を備え、
前記第1決定手段は、前記第1管理ノードと、前記第2管理ノードとを決定し、
前記第1送信手段は、前記第1決定手段により決定された第1管理ノード及び第2管理ノードに向けて、前記順番情報または前記識別情報に対応する前記検索情報を保存させる保存依頼メッセージを送信し、
前記ノード装置は、
前記保存依頼メッセージが示す前記検索情報を記憶する第2記憶手段を備え、
前記複数のノード装置の中の前記第1管理ノードまたは前記第2管理ノードの何れか一方のノード装置は、他方のノード装置に向けて定期的に生存を確認する確認メッセージを送信する第3送信手段と、
前記確認メッセージを受信する第3受信手段と、
前記第3受信手段により所定の時間以上、前記確認メッセージが受信されなかった否かを判定する第2判定手段と、
前記第2判定手段により、所定の時間以上、前記確認メッセージが受信されなかった場合、前記第2記憶手段に記憶される前記検索情報が含む前記順番情報または前記識別情報の何れかに基づいて、新たな前記第1管理ノードまたは前記第2管理ノードを決定する第2決定手段と、を備え、
前記第2送信手段は、前記第2決定手段により決定された新たな前記第1管理ノードまたは前記第2管理ノード向けて、第2記憶手段に記憶される前記検索情報を保存させる保存依頼メッセージを送信することを特徴とする情報通信システム。
In an information communication system in which a plurality of search information for searching for data stored in a distributed manner in a network is distributed and stored in a plurality of node devices connected to the network.
The information communication system comprising an information processing device for storing a plurality of search information distributed and stored in the plurality of node devices,
The information processing apparatus includes:
First storage means for storing a plurality of search information distributed and stored in the plurality of node devices;
First determination means for determining whether there is damaged search information among the plurality of search information stored in the first storage means;
First transmission means for transmitting a transmission request for damaged search information to at least one of the plurality of node devices when it is determined by the first determination means that there is damaged search information;
First receiving means for receiving damaged search information from any of the plurality of node devices;
Update means for updating search information damaged in the search information stored in the first storage means using the search information received by the first receiving means;
With
The node device is
Second receiving means for receiving the transmission request;
Second transmission means for transmitting the search information stored in the node device to the information processing apparatus based on the transmission request received by the second reception means;
Equipped with a,
The first storage means stores the search information including order information indicating an order in which the search information is added and identification information for identifying the search information,
The information processing apparatus includes:
Based on the order information, the first management node that stores the search information corresponding to the order information from the plurality of node devices, or the plurality of node devices based on the identification information. First determination means for determining any one of the second management nodes storing the search information corresponding to the identification information;
The first transmission means transmits a save request message for saving the search information corresponding to the order information or the identification information to the first management node or the second management node determined by the first determination means. And
The node device is
Second storage means for storing the search information indicated by the save request message;
The first determining means determines the first management node and the second management node;
The first transmission unit transmits a save request message for saving the search information corresponding to the order information or the identification information toward the first management node and the second management node determined by the first determination unit. And
The node device is
Second storage means for storing the search information indicated by the save request message;
Either one of the first management node or the second management node of the plurality of node devices transmits a confirmation message for periodically confirming the existence to the other node device. Means,
Third receiving means for receiving the confirmation message;
Second determination means for determining whether or not the confirmation message has not been received by the third reception means for a predetermined time or more;
When the confirmation message is not received for a predetermined time or more by the second determination means, based on either the order information or the identification information included in the search information stored in the second storage means, A second determination means for determining a new first management node or the second management node;
The second transmission means sends a save request message for saving the search information stored in the second storage means to the new first management node or the second management node determined by the second determination means. An information communication system characterized by transmitting .
ネットワークに接続する複数のノード装置に、ネットワークに分散して記憶されるデータを検索するための複数の検索情報が分散して記憶される情報通信システムにおいて、
前記複数のノード装置に分散して記憶される複数の検索情報を記憶する情報処理装置を備える情報通信方法であって、
前記複数のノード装置に分散して記憶される複数の検索情報を記憶する第1記憶手段に記憶された複数の検索情報の中で、破損した検索情報があるかを、前記情報処理装置が判定する判定ステップと、
前記判定ステップにより破損された検索情報があると判定された場合、破損された検索情報の送信要求を、前記複数のノード装置の少なくともいずれかに、前記情報処理装置が送信する第1送信ステップと、
前記送信要求を、前記ノード装置が受信する第2受信ステップと、
前記第受信ステップにより受信した前記送信要求に基づいて、前記ノード装置が記憶する前記検索情報を前記情報処理装置に、前記ノード装置が送信する第2送信ステップと、
前記複数のノード装置のいずれかから、破損された検索情報を、前記情報処理装置が受信する第1受信ステップと、
前記第1記憶手段に記憶された検索情報の中で破損された検索情報を、前記第1受信ステップにより受信された検索情報を用いて更新する更新ステップと、
を含み、
前記第1記憶手段は、前記検索情報が追加された順番を示す順番情報と、前記検索情報を識別する識別情報とを含む前記検索情報を記憶し、
前記情報通信方法は、さらに、
前記順番情報に基づいて、前記複数のノード装置の中から前記順番情報に対応する前記検索情報を記憶する第1管理ノードと、前記識別情報に基づいて、前記複数のノード装置の中から前記識別情報に対応する前記検索情報を記憶する第2管理ノードとを、前記情報処理装置が決定する第1決定ステップと、
前記第1決定ステップにより決定された第1管理ノード及び第2管理ノードに向けて、前記順番情報または前記識別情報に対応する前記検索情報を保存させる保存依頼メッセージを、前記情報処理装置が送信する第3送信ステップと、
前記複数のノード装置の中の前記第1管理ノードまたは前記第2管理ノードの何れか一方のノード装置が、他方のノード装置に向けて定期的に生存を確認する確認メッセージを送信する第4送信ステップと、
前記確認メッセージを、前記ノード装置が受信する第3受信ステップと、
前記第3受信ステップにより所定の時間以上、前記確認メッセージが受信されなかった否かを、前記ノード装置が判定する第2判定ステップと、
前記第2判定ステップにより、所定の時間以上、前記確認メッセージが受信されなかった場合、前記ノード装置が備える第2記憶手段であって、前記保存依頼メッセージが示す前記検索情報を記憶する第2記憶手段に記憶される前記検索情報が含む前記順番情報または前記識別情報の何れかに基づいて、新たな前記第1管理ノードまたは前記第2管理ノードを、前記ノード装置が決定する第2決定ステップと、
前記第2決定ステップにより決定された新たな前記第1管理ノードまたは前記第2管理ノード向けて、第2記憶手段に記憶される前記検索情報を保存させる保存依頼メッセージを、前記ノード装置が送信する第5送信ステップと、
を含む情報通信方法。
In an information communication system in which a plurality of search information for searching for data stored in a distributed manner in a network is distributed and stored in a plurality of node devices connected to the network.
An information communication method comprising an information processing device for storing a plurality of search information distributed and stored in the plurality of node devices,
The information processing apparatus determines whether there is damaged search information among the plurality of search information stored in the first storage unit that stores the plurality of search information distributed and stored in the plurality of node devices. A determination step to:
A first transmission step in which, when it is determined that there is damaged search information in the determination step, the information processing apparatus transmits a transmission request for the damaged search information to at least one of the plurality of node devices; ,
A second receiving step in which the node device receives the transmission request;
A second transmission step in which the node device transmits the search information stored in the node device to the information processing device based on the transmission request received in the second reception step;
A first receiving step in which the information processing device receives damaged search information from any of the plurality of node devices;
An update step of updating search information damaged in the search information stored in the first storage means using the search information received by the first reception step;
Only including,
The first storage means stores the search information including order information indicating an order in which the search information is added and identification information for identifying the search information,
The information communication method further includes:
Based on the order information, the first management node that stores the search information corresponding to the order information from among the plurality of node devices, and the identification from among the plurality of node devices based on the identification information A first determination step in which the information processing apparatus determines a second management node that stores the search information corresponding to the information;
The information processing apparatus transmits a storage request message for storing the search information corresponding to the order information or the identification information toward the first management node and the second management node determined in the first determination step. A third transmission step;
A fourth transmission in which either one of the first management node or the second management node among the plurality of node devices periodically transmits a confirmation message confirming the existence to the other node device. Steps,
A third receiving step in which the node device receives the confirmation message;
A second determination step in which the node device determines whether or not the confirmation message has not been received for a predetermined time or more in the third reception step;
When the confirmation message is not received for a predetermined time or more by the second determination step, the second storage means included in the node device, the second storage storing the search information indicated by the save request message A second determination step in which the node device determines a new first management node or second management node based on either the order information or the identification information included in the search information stored in a means; ,
The node device transmits a save request message for saving the search information stored in the second storage means to the new first management node or the second management node determined in the second determination step. A fifth transmission step;
An information communication method including:
JP2011077587A 2011-03-31 2011-03-31 Information communication system and information communication method Active JP5445503B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011077587A JP5445503B2 (en) 2011-03-31 2011-03-31 Information communication system and information communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011077587A JP5445503B2 (en) 2011-03-31 2011-03-31 Information communication system and information communication method

Publications (2)

Publication Number Publication Date
JP2012212314A JP2012212314A (en) 2012-11-01
JP5445503B2 true JP5445503B2 (en) 2014-03-19

Family

ID=47266210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011077587A Active JP5445503B2 (en) 2011-03-31 2011-03-31 Information communication system and information communication method

Country Status (1)

Country Link
JP (1) JP5445503B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9449039B2 (en) * 2012-11-26 2016-09-20 Amazon Technologies, Inc. Automatic repair of corrupted blocks in a database

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1537496B1 (en) * 2002-09-10 2008-07-02 Exagrid Systems, Inc. Data protection system and method
JP4881172B2 (en) * 2007-01-25 2012-02-22 聰 山竹 File storage system
JP2009163664A (en) * 2008-01-10 2009-07-23 Nippon Telegr & Teleph Corp <Ntt> Information retrieval device equipped with failure resistance, information retrieval method equipped with failure resistance, information retrieval program equipped with failure resistance and recording medium with same program recorded
US9251012B2 (en) * 2008-01-18 2016-02-02 Tivo Inc. Distributed backup and retrieval system
JP5212292B2 (en) * 2009-07-16 2013-06-19 ブラザー工業株式会社 Information communication system, node device, node device confirmation method and program

Also Published As

Publication number Publication date
JP2012212314A (en) 2012-11-01

Similar Documents

Publication Publication Date Title
US8676855B2 (en) Distributed storage system, management apparatus, node apparatus, recording medium on which node program is recorded, page information acquisition method, recording medium on which page information sending program is recorded, and page information sending method
Zhang et al. Scalable name-based data synchronization for named data networking
KR101189766B1 (en) Hot Data Management Based on Hit Counter from Data Servers in Parallelism
US8296283B2 (en) DHT-based distributed file system for simultaneous use by millions of frequently disconnected, world-wide users
JP2007004649A (en) Document management server and document management system
US20080319956A1 (en) Tree-type broadcast system, reconnection process method, node device, node process program, server device, and server process program
JP2007148545A (en) Information delivery system, information delivery method, node device and node processing program
US7853718B2 (en) Information delivery system, reregistration message sending method, node device, and recording medium recording node processing program
CN105282217A (en) Difference based content networking
Zhang et al. Partialsync: Efficient synchronization of a partial namespace in ndn
JP4765731B2 (en) Document management system, document management server, document providing method, and program
JP5168334B2 (en) Information generating apparatus, information generating method, and information generating program
JP5445503B2 (en) Information communication system and information communication method
JP5370269B2 (en) Distributed storage system, connection information notification method and program for distributed storage system
JP5212292B2 (en) Information communication system, node device, node device confirmation method and program
US8311976B2 (en) Management apparatus, recording medium recording an information generation program, and information generating method
JP5282795B2 (en) Information communication system, information processing method, node device, and program
JP5278151B2 (en) Distributed storage system, node device, node program, and page information acquisition method
JP5434268B2 (en) Distributed storage system, data file distributed storage method and program
JP5278152B2 (en) Management device, node device, node program, page information transmission program, and page information transmission method
JP5494361B2 (en) Distributed storage system, representative node device, notification method, and program
JP5370328B2 (en) Node device, information communication system, information processing method, and information processing program
Zhang PartialSync: Synchronize a Partial Namespace in NDN
JP5907132B2 (en) Relay device, program, and communication system
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: 20120920

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130820

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131021

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131209

R150 Certificate of patent or registration of utility model

Ref document number: 5445503

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150