JP5494361B2 - Distributed storage system, representative node device, notification method, and program - Google Patents
Distributed storage system, representative node device, notification method, and program Download PDFInfo
- Publication number
- JP5494361B2 JP5494361B2 JP2010192241A JP2010192241A JP5494361B2 JP 5494361 B2 JP5494361 B2 JP 5494361B2 JP 2010192241 A JP2010192241 A JP 2010192241A JP 2010192241 A JP2010192241 A JP 2010192241A JP 5494361 B2 JP5494361 B2 JP 5494361B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- device group
- connection information
- node device
- representative
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムに関する。具体的には、通信負荷の少ない通信経路のコンテンツホルダからコンテンツを取得する方法に関する。 The present invention relates to a peer-to-peer (P2P) type communication system including a plurality of node devices that can communicate with each other via a network. Specifically, the present invention relates to a method for acquiring content from a content holder on a communication path with a small communication load.
この種のピアツーピア型の通信システムは、複数のノード装置により構成される。各種コンテンツのコンテンツデータは、複数のコンテンツデータの複製データ(以下、「レプリカ」という)として複数のノード装置に分散して保存される。コンテンツデータは、映画及び音楽などのコンテンツデータである。一般的には、各ノード装置間でレプリカを利用可能とした分散保存システムが知られている。これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。
This type of peer-to-peer communication system includes a plurality of node devices. Content data of various contents is distributed and stored in a plurality of node devices as duplicate data (hereinafter referred to as “replica”) of the plurality of content data. The content data is content data such as movies and music. In general, a distributed storage system is known in which a replica can be used between node devices. This improves fault tolerance and access dispersibility. The location of replicas thus distributed and stored can be efficiently searched using a distributed hash table (hereinafter referred to as DHT (Distributed Hash Table)) as disclosed in
そして、上述のノード装置は、所望のコンテンツを取得するとき、コンテンツデータのレプリカの所在を検索するためのメッセージ(クエリ)が他のノード装置へ送出される。これにより、メッセージは、上記DHTにしたがって、コンテンツデータのレプリカの所在の管理元のノード装置に向かって転送される。そして、上記メッセージを送出したノード装置は、上記管理元のノード装置から上記レプリカの所在を示す情報を取得することになる。これにより、上記メッセージを送出したノード装置は、上記検索に係るコンテンツデータのレプリカを保存しているノード装置にアクセスすることができる。そして、レプリカを取得(ダウンロード)することができる。通信負荷の少ない通信経路を選択するために、例えば、特許文献2には、コンテンツホルダが所属しているAS(Autonomous System)番号が用いられている技術が開示されている。AS番号は、インターネット内にある複数の組織が運用するネットワークを識別するための番号である。また、ホップ数を用いて経路選択をするものもある。
When the above-mentioned node device acquires desired content, a message (query) for searching for the location of the replica of the content data is transmitted to the other node devices. As a result, the message is transferred to the node device that manages the content data replica in accordance with the DHT. Then, the node device that has transmitted the message acquires information indicating the location of the replica from the management source node device. As a result, the node device that has transmitted the message can access the node device that stores the replica of the content data related to the search. A replica can be acquired (downloaded). In order to select a communication path with a small communication load, for example,
しかしながら、ホップ数を測定しようとしても必ずしもルータが応答するとは限らない。また、AS番号を用いて、通信経路を決定しようとしても、AS番号は全ての管理者に割り当てられているとは限らない。そのため従来では、すべてのノード装置間の通信負荷を判定するために、インターネットのトポロジー情報を記憶したヒントサーバ(トラッカー)が用いられてきた。しかしながら、コンテンツを取得するたびにヒントサーバにアクセスしているのでは、ヒントサーバへの処理負荷が集中し、ヒントサーバの処理負荷が大きかった。 However, routers do not always respond when trying to measure the number of hops. Further, even if an AS number is used to determine a communication path, the AS number is not always assigned to all managers. Therefore, conventionally, a hint server (tracker) storing Internet topology information has been used to determine the communication load between all node devices. However, if the hint server is accessed every time content is acquired, the processing load on the hint server is concentrated and the processing load on the hint server is large.
本発明は、上述した問題点を解決するためになされたものである。本発明の目的は、ヒントサーバへの処理負荷を低減させることが可能な通信方法を提供することである。 The present invention has been made to solve the above-described problems. An object of the present invention is to provide a communication method capable of reducing the processing load on the hint server.
請求項1に記載の発明によれば、ネットワーク上で送受信される情報を中継する中継機器を1以上備えることで通信機能を提供する複数の1次機器群と、前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムであって、前記分散保存システムは、前記複数のノード装置と、前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に夫々代表して接続される代表ノード装置と、前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置と、を備え、前記代表ノード装置は、前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信部と、前記第1受信部により受信された前記メッセージに基づいて、前記メッセージに含まれる前記所在情報が示す前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記情報処理装置から取得する第1取得部と、前記第1取得部により取得した前記第1接続情報を記憶する記憶部と、前記第1取得部により取得された前記第1接続情報を、前記第1受信部によりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信部と、を備えることを特徴とする分散保存システムである。
According to the first aspect of the present invention, a plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted / received on a network, and subordinate to the primary device group A plurality of secondary devices that are located and provide a communication function by providing one or more of the relay devices, and a plurality of secondary devices that are connected to the primary device group or the secondary device group A distributed storage system that distributes and stores a plurality of contents using an overlay network configured by node devices, wherein the distributed storage system includes the plurality of node devices and the primary node among the plurality of node devices. a representative node device respectively representatively connected to the device group and the second device group, information for storing a connection relationship between the primary device group and the second device group in the network The representative node device is a holding node that holds desired content among the plurality of node devices, and indicates the location of the representative node device on the network in the holding node Based on the first reception unit that receives a message including location information from any of the plurality of node devices, and the message received by the first reception unit, the location information included in the message indicates The first acquisition unit that acquires the primary device group to which the representative node device is connected or the secondary device group is acquired from the information processing device, and the first acquisition unit that acquires the first connection information. The storage unit for storing the first connection information, the first connection information acquired by the first acquisition unit, and the message received by the first reception unit. A transmission unit for transmitting to the source node device sage is a source, a distributed storage system comprising: a.
請求項1に記載の発明によれば、前記代表ノード装置は、前記第1受信部により受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定部を備え、前記判定部により、前記第1接続情報が記憶されていると判定されたとき、前記送信部は、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、前記判定部により、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得部は、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶部は、前記第1取得部により取得された前記第1接続情報を記憶することを特徴とする。
According to the first aspect of the present invention, the representative node device is configured such that the first connection information of the representative node device indicated by the location information included in the message received by the first reception unit is the storage unit. A determination unit that determines whether or not the first connection information is stored by the determination unit, the transmission unit stores the first stored in the
請求項2に記載の発明によれば、前記複数のノード装置は、前記複数ノード装置が接続される前記1次機器群または前記2次機器群の前記代表ノード装置の前記所在情報を取得し、前記ノード装置は、前記複数のノード装置の中から、所望のコンテンツを保持する1以上の前記保持ノード装置の前記所在情報を検索する検索部と、前記検索部による検索結果として、前記保持ノードの前記所在情報と共に、前記コンテンツ保持ノードの前記代表ノード装置の前記所在情報を受信する第2受信部と、前記第2受信部により受信した前記保持ノードにおける前記代表ノード装置の前記所在情報に基づいて、前記保持ノードにおける前記代表ノード装置の前記第1接続情報を、前記代表ノードから取得する第2取得部と、を備えることを特徴とする。
According to the invention described in
請求項3に記載の発明によれば、前記複数のノード装置は、前記複数のノード装置が接続される前記1次機器群または前記2次機器群を示す第2接続情報を取得し、前記ノード装置は、前記第2取得部により取得された前記保持ノードにおける前記代表ノード装置の前記第1接続情報と、前記第2接続情報とに基づいて、前記検索部により検索した前記ノード装置とネットワーク上で距離の近い前記コンテンツ保持ノードから、前記所定のコンテンツを取得するコンテンツ取得部と、を備えることを特徴とする。
According to a third aspect of the present invention, the plurality of node devices acquire second connection information indicating the primary device group or the secondary device group to which the plurality of node devices are connected, and the node A device is connected to the node device searched by the search unit on the network based on the first connection information and the second connection information of the representative node device in the holding node acquired by the second acquisition unit. And a content acquisition unit that acquires the predetermined content from the content holding node at a short distance.
請求項4に記載の発明によれば、ネットワーク上で送受信される情報を中継する中継機器を1以上備えることで通信機能を提供する複数の1次機器群と、前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムの中で、前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に代表して接続される代表ノード装置であって、前記代表ノード装置は、前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信部と、前記第1受信部により受信された前記メッセージに基づいて、前記メッセージが含む前記所在情報が示す前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置から取得する第1取得部と、前記第1取得部により取得した前記第1接続情報を記憶する記憶部と、前記第1取得部により取得された前記第1接続情報を、前記第1受信部によりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信部と、を備えることを特徴とする代表ノード装置である。
According to the fourth aspect of the present invention, a plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted / received on a network, and subordinate to the primary device group A plurality of secondary devices that are located and provide a communication function by providing one or more of the relay devices, and a plurality of secondary devices that are connected to the primary device group or the secondary device group In a distributed storage system that distributes and stores a plurality of contents by an overlay network composed of node devices, a connection is made on behalf of the primary device group and the secondary device group among the plurality of node devices. The representative node device is a holding node that holds desired content among the plurality of node devices, and the representative node device is the representative node device that holds the desired content. Based on the message received from any one of the plurality of node devices and the message received by the first receiver, a message including location information indicating the location of the node device on the network, The primary device group to which the representative node device indicated by the location information included in the message is connected, or the first connection information indicating the secondary device group, is used as the primary device group and the secondary device in the network. Acquired by the first acquisition unit acquired from the information processing apparatus that stores the connection relationship with the device group, the storage unit that stores the first connection information acquired by the first acquisition unit, and the first acquisition unit A transmission unit that transmits the first connection information to a transmission source node device that is a transmission source of the message that has received the message by the first reception unit. It is a representative node device.
請求項4に記載の発明によれば、前記代表ノード装置は、前記第1受信部により受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定部を備え、前記判定部により、前記第1接続情報が記憶されていると判定されたとき、前記送信部は、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、前記判定部により、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得部は、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶部は、前記第1取得部により取得された前記第1接続情報を記憶することを特徴とする。
According to the invention of
請求項5に記載の発明によれば、ネットワーク上で送受信される情報を中継する中継機器を1以上備えることで通信機能を提供する複数の1次機器群と、前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムの中で、前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に代表して接続される代表ノード装置のコンピュータに、前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信ステップと、前記第1受信ステップにより受信された前記メッセージに基づいて、前記メッセージが含む前記所在情報が示す前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置から取得する第1取得ステップと、前記第1取得ステップにより取得した前記第1接続情報を記憶部に記憶させる記憶ステップと、前記第1取得ステップにより取得された前記第1接続情報を、前記第1受信ステップによりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信ステップと、を実行させることを特徴とするプログラムである。請求項5に記載の発明によれば、前記代表ノード装置のコンピュータに、前記第1受信ステップにより受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定ステップを実行させ、前記判定ステップにより、前記第1接続情報が記憶されていると判定されたとき、前記送信ステップは、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、前記判定ステップにより、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得ステップは、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶ステップは、前記第1取得ステップにより取得された前記第1接続情報を前記記憶部に記憶させること、前記コンピュータに実行させることを特徴とする。
According to the fifth aspect of the present invention, a plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted / received on a network, and subordinate to the primary device group A plurality of secondary devices that are located and provide a communication function by providing one or more of the relay devices, and a plurality of secondary devices that are connected to the primary device group or the secondary device group In a distributed storage system that distributes and stores a plurality of contents by an overlay network composed of node devices, a connection is made on behalf of the primary device group and the secondary device group among the plurality of node devices. The representative node device is a holding node that holds desired content among the plurality of node devices, and is in front of the representative node device in the holding node. A first reception step of receiving a message including location information indicating a location on a network from any of the plurality of node devices, and the message includes the message based on the message received by the first reception step. The primary device group to which the representative node device indicated by the location information is connected, or the first connection information indicating the secondary device group is connected to the primary device group and the secondary device group in the network. A first acquisition step acquired from the information processing apparatus storing the relationship; a storage step of storing the first connection information acquired in the first acquisition step in a storage unit; and the first acquisition step acquired in the first acquisition step. 1 connection information, sent to a sender of the message received message by the first receiving step the transmission source node apparatus Is a program for causing execute a transmission step, the to. According to the fifth aspect of the present invention, the first connection information of the representative node device indicated by the location information included in the message received by the first reception step is transmitted to the computer of the representative node device. A determination step for determining whether or not the information is stored in the storage unit is executed, and when the determination step determines that the first connection information is stored, the transmission step is stored in the storage unit. The first connection information is transmitted to the transmission source node device, and when the determination step determines that the first connection information is not stored, the first acquisition step includes the first connection information. Is acquired from the information processing apparatus, and the storage step stores the first connection information acquired in the first acquisition step in the storage unit. And characterized by causing the computer to perform.
請求項6に記載の発明によれば、ネットワーク上で送受信される情報を中継する中継機器を1以上備えることで通信機能を提供する複数の1次機器群と、前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムであって、前記分散保存システムが含む前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に代表して接続される代表ノード装置の通信方法であって、前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信ステップと、前記第1受信ステップにより受信された前記メッセージに基づいて、前記メッセージが含む前記所在情報が示す前記保持ノードにおける前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置から取得する第1取得ステップと、前記第1取得ステップにより取得された前記第1接続情報を記憶部に記憶させる記憶ステップと、前記第1取得ステップにより取得された前記第1接続情報を、前記第1受信ステップによりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信ステップと、を含むことを特徴とする通信方法である。さらに、通信方法は、前記第1受信ステップにより受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定ステップを含み、前記判定ステップにより、前記第1接続情報が記憶されていると判定されたとき、前記送信ステップは、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、前記判定ステップにより、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得ステップは、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶ステップは、前記第1取得ステップにより取得された前記第1接続情報を前記記憶部に記憶させることを特徴とする。
According to the sixth aspect of the present invention, a plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted and received on the network, and a lower level of the primary device group A plurality of secondary devices that are located and provide a communication function by providing one or more of the relay devices, and a plurality of secondary devices that are connected to the primary device group or the secondary device group A distributed storage system that distributes and stores a plurality of contents by an overlay network configured by node devices, and among the plurality of node devices included in the distributed storage system, the primary device group and the secondary device A communication method of a representative node device connected on behalf of a group, the holding node holding desired content among the plurality of node devices, wherein the holding node A first reception step of receiving from one of the plurality of node devices a message including location information indicating the location of the representative node device on the network, and based on the message received by the first reception step. The primary device group to which the representative node device in the holding node indicated by the location information included in the message is connected or the first connection information indicating the secondary device group is obtained as the primary connection in the network. A first acquisition step of acquiring from the information processing apparatus storing the connection relationship between the device group and the secondary device group; and a storage step of storing the first connection information acquired in the first acquisition step in a storage unit; The first connection information acquired by the first acquisition step is sent to the message by the first reception step. A transmission step of transmitting to a transmission source of the received message source node apparatus, a communication method, which comprises a. Further, the communication method determines whether or not the first connection information of the representative node device indicated by the location information included in the message received by the first reception step is stored in the storage unit And when the determination step determines that the first connection information is stored, the transmission step transmits the first connection information stored in the storage unit to the transmission source node device. And when the determination step does not determine that the first connection information is stored, the first acquisition step acquires the first connection information from the information processing apparatus, and the storage step The storage device stores the first connection information acquired in the first acquisition step.
請求項1に記載の発明によれば、代表ノード装置は、第1受信部により受信されたメッセージに基づいて、メッセージに含まれる所在情報が示す代表ノード装置が接続される1次機器群、または、2次機器群を示す第1接続情報を、情報処理装置から取得する第1取得部を備える。また、代表ノード装置は、第1取得部により取得した第1接続情報を記憶する記憶部を備える。また、第1取得部により取得された第1接続情報を、第1受信部によりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信部を備える。従って、複数のノード装置を代表して、代表ノード装置が情報処理装置へ第1接続情報を取得し、保存することができる。この結果、ヒントサーバとして機能する情報処理装置への処理負荷が集中することを防ぎ、ヒントサーバの処理負荷を低減させることができる。 According to the first aspect of the present invention, the representative node device is based on the message received by the first receiving unit, the primary device group to which the representative node device indicated by the location information included in the message is connected, or A first acquisition unit that acquires first connection information indicating a secondary device group from the information processing apparatus is provided. Further, the representative node device includes a storage unit that stores the first connection information acquired by the first acquisition unit. Moreover, the transmission part which transmits the 1st connection information acquired by the 1st acquisition part to the transmission source node apparatus which is a transmission source of the message which received the message by the 1st reception part is provided. Therefore, on behalf of a plurality of node devices, the representative node device can acquire and store the first connection information in the information processing device. As a result, the processing load on the information processing apparatus functioning as the hint server can be prevented from being concentrated, and the processing load on the hint server can be reduced.
請求項1に記載の発明によれば、代表ノード装置は、第1受信部により受信されたメッセージが含む所在情報が示す代表ノード装置の第1接続情報が、記憶部に記憶されているか否かを判定する判定部を備える。また、判定部により、第1接続情報が記憶されていると判定されたとき、送信部は、記憶部に記憶された第1接続情報を、送信元ノード装置へ送信する。また、判定部により、第1接続情報が記憶されていると判定されなかったとき、第1取得部は、第1接続情報を情報処理装置から取得し、且つ、記憶部は、第1取得部により取得された第1接続情報を記憶する。従って、代表ノード装置が第1接続情報を記憶している場合、情報処理装置がアクセスされる必要がない。この結果、代表ノード装置が、ヒントサーバとして機能する情報処理装置が記憶する第1接続情報の少なくとも一部を保存することができる。そのため、ヒントサーバとして機能する情報処理装置への処理負荷が集中することを防ぎ、ヒントサーバの処理負荷を低減させることができる。
According to the first aspect of the present invention, the representative node device determines whether or not the first connection information of the representative node device indicated by the location information included in the message received by the first receiving unit is stored in the storage unit. A determination unit for determining When the determination unit determines that the first connection information is stored, the transmission unit transmits the first connection information stored in the storage unit to the transmission source node device. When the determination unit does not determine that the first connection information is stored, the first acquisition unit acquires the first connection information from the information processing apparatus, and the storage unit is the first acquisition unit. The first connection information acquired by is stored. Therefore, when the representative node device stores the first connection information, the information processing device does not need to be accessed. As a result, the representative node device can save at least a part of the first connection information stored in the information processing device functioning as a hint server. Therefore, it is possible to prevent the processing load on the information processing apparatus functioning as the hint server from being concentrated, and to reduce the processing load of the hint server.
請求項2に記載の発明によれば、ノード装置は、検索部による検索結果として、保持ノードの所在情報と共に、保持ノードの代表ノード装置の所在情報を受信する第2受信部を備える。また、ノード装置は、第2受信部により受信した保持ノードの代表ノード装置の所在情報に基づいて、保持ノードの第1接続情報を、代表ノードから取得する第2取得部を備える。従って、コンテンツの取得先を決定するために、コンテンツを検索するノード装置が、第1接続情報を代表ノード装置から取得することができる。この結果、コンテンツの取得先を決定するためにノード装置が第1接続情報を取得できるとともに、ヒントサーバとして機能する情報処理装置への処理負荷が集中することを防ぎ、ヒントサーバの処理負荷を低減させることができる。
According to the second aspect of the present invention, the node device includes the second receiving unit that receives the location information of the representative node device of the holding node as well as the location information of the holding node as a search result by the search unit. The node device includes a second acquisition unit that acquires the first connection information of the holding node from the representative node based on the location information of the representative node device of the holding node received by the second receiving unit. Therefore, in order to determine the content acquisition destination, the node device that searches for the content can acquire the first connection information from the representative node device. As a result, the node device can acquire the first connection information in order to determine the content acquisition destination, and the processing load on the information processing device functioning as the hint server is prevented from being concentrated, thereby reducing the processing load on the hint server. Can be made.
請求項3に記載の発明によれば、ノード装置は、第2取得部により取得されたコンテンツ保持ノードの第1接続情報と、第2接続情報とに基づいて、検索部により検索した前記ノード装置とネットワーク上で距離の近い保持ノードから、所定のコンテンツを取得するコンテンツ取得部を備える。この結果、コンテンツを取得するノード装置と、ネットワーク上で距離の近い保持ノードから、コンテンツを取得することができる。
According to the invention described in
請求項4に記載の発明によれば、代表ノード装置は、第1受信部により受信されたメッセージに基づいて、メッセージが含む所在情報が示す代表ノード装置が接続される1次機器群、または、2次機器群を示す第1接続情報を、ネットワークにおける1次機器群と2次機器群との接続関係を記憶した情報処理装置から取得する第1取得部を備える。また、代表ノード装置は、第1取得部により取得した第1接続情報を記憶する記憶部を備える。また、第1取得部により取得された第1接続情報を、第1受信部によりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信部を備える。従って、複数のノード装置を代表して、代表ノード装置が情報処理装置へ第1接続情報を取得し、保存することができる。この結果、ヒントサーバとして機能する情報処理装置への処理負荷が集中することを防ぎ、ヒントサーバの処理負荷を低減させることができる。
According to the invention of
請求項4に記載の発明によれば、代表ノード装置は、第1受信部により受信されたメッセージが含む所在情報が示す保持ノードの第1接続情報が、記憶部に記憶されているか否かを判定する判定部を備える。また、判定部により、第1接続情報が記憶されていると判定されたとき、送信部は、記憶部に記憶された第1接続情報を、送信元ノード装置へ送信する。また、判定部により、第1接続情報が記憶されていると判定されなかったとき、第1取得部は、第1接続情報を情報処理装置から取得し、且つ、記憶部は、第1取得部により取得された第1接続情報を記憶する。従って、代表ノード装置が第1接続情報を記憶している場合、情報処理装置がアクセスされる必要がない。この結果、代表ノード装置が、ヒントサーバとして機能する情報処理装置が記憶する第1接続情報の少なくとも一部を保存することができる。そのため、ヒントサーバとして機能する情報処理装置への処理負荷が集中することを防ぎ、ヒントサーバの処理負荷を低減させることができる。
According to the invention of
請求項5に記載の発明によれば、第1受信ステップにより受信されたメッセージに基づいて、メッセージが含む所在情報が示す代表ノード装置が接続される1次機器群、または、2次機器群を示す第1接続情報を、ネットワークにおける1次機器群と2次機器群との接続関係を記憶した情報処理装置から取得する第1取得ステップを実行する。また、代表ノード装置のコンピュータは、第1取得ステップにより取得した第1接続情報を記憶部に記憶させる記憶ステップを実行する。また、第1取得ステップにより取得された第1接続情報を、第1受信ステップによりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信ステップを実行する。従って、複数のノード装置を代表して、代表ノード装置が情報処理装置へ第1接続情報を取得し、保存することができる。この結果、ヒントサーバとして機能する情報処理装置への処理負荷が集中することを防ぎ、ヒントサーバの処理負荷を低減させることができる。
According to the fifth aspect of the present invention, the primary device group or the secondary device group to which the representative node device indicated by the location information included in the message is connected based on the message received in the first receiving step. The 1st acquisition step which acquires the 1st connection information shown from the information processing apparatus which memorize | stored the connection relation of the primary apparatus group and secondary apparatus group in a network is performed. In addition, the computer of the representative node device executes a storage step of storing the first connection information acquired in the first acquisition step in the storage unit. Moreover, the transmission step which transmits the 1st connection information acquired by the 1st acquisition step to the transmission source node apparatus which is the transmission source of the message which received the message by the 1st reception step is performed. Therefore, on behalf of a plurality of node devices, the representative node device can acquire and store the first connection information in the information processing device. As a result, the processing load on the information processing apparatus functioning as the hint server can be prevented from being concentrated, and the processing load on the hint server can be reduced.
請求項6に記載の発明によれば、第1受信ステップにより受信されたメッセージに基づいて、メッセージが含む所在情報が示す保持ノードにおける代表ノード装置が接続される1次機器群、または、2次機器群を示す第1接続情報を、ネットワークにおける1次機器群と2次機器群との接続関係を記憶した情報処理装置から取得する第1取得ステップを実行する。また、代表ノード装置は、第1取得ステップにより取得した第1接続情報を記憶部に記憶させる記憶ステップを実行する。また、第1取得ステップにより取得された第1接続情報を、第1受信ステップによりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信ステップを実行する。従って、複数のノード装置を代表して、代表ノード装置が情報処理装置へ第1接続情報を取得し、保存することができる。この結果、ヒントサーバとして機能する情報処理装置への処理負荷が集中することを防ぎ、ヒントサーバの処理負荷を低減させることができる。 According to the sixth aspect of the present invention, based on the message received in the first receiving step, the primary device group to which the representative node device in the holding node indicated by the location information included in the message is connected, or the secondary device A first acquisition step of acquiring the first connection information indicating the device group from the information processing apparatus storing the connection relationship between the primary device group and the secondary device group in the network is executed. Further, the representative node device executes a storage step of storing the first connection information acquired in the first acquisition step in the storage unit. Moreover, the transmission step which transmits the 1st connection information acquired by the 1st acquisition step to the transmission source node apparatus which is the transmission source of the message which received the message by the 1st reception step is performed. Therefore, on behalf of a plurality of node devices, the representative node device can acquire and store the first connection information in the information processing device. As a result, the processing load on the information processing apparatus functioning as the hint server can be prevented from being concentrated, and the processing load on the hint server can be reduced.
(第1の実施形態)
以下、本発明の最良の実施形態を図面に基づいて説明する。
(First embodiment)
DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, the best embodiment of the invention will be described with reference to the drawings.
[分散保存システムの構成]
図1は、本実施形態の分散保存システムSを示す。分散保存システムSは、複数のノード装置Nn(n=1,2,3・・・の何れか)から構成される。
[Configuration of distributed storage system]
FIG. 1 shows a distributed storage system S of the present embodiment. The distributed storage system S includes a plurality of node devices Nn (n = 1, 2, 3,...).
図1に示すように、ノード装置Nnは、ネットワークNWを介して夫々接続される。図1のノード装置N1、N2、N3は、ネットワークNWにブロードバンドルータを介さず、直接接続される。一方、ノード装置N4、N5、N6、N7は、ブロードバンドルータBRを介してネットワークNWに接続される。一般的なインターネット等のネットワークNWは、IX(Internet eXchange)、ISP(Internet Service Provider)、DSL(Digital Subscriber Line)回線事業者の装置、FTTH(Fiber To The Home)回線事業者の装置、通信回線等により構築されている。例えば、通信回線は、電話回線や光ケーブル等である。なお、ネットワークNWには、データ(パケット)を転送するためのルータが、適宜挿入されているが図示を省略している。 As shown in FIG. 1, the node devices Nn are connected to each other via a network NW. The node devices N1, N2, and N3 in FIG. 1 are directly connected to the network NW without using a broadband router. On the other hand, the node devices N4, N5, N6, and N7 are connected to the network NW via the broadband router BR. General network NWs such as the Internet include IX (Internet eXchange), ISP (Internet Service Provider), DSL (Digital Subscriber Line) line provider equipment, FTTH (Fiber To The Home) line provider equipment, communication line It is constructed by etc. For example, the communication line is a telephone line or an optical cable. Note that a router for transferring data (packets) is appropriately inserted in the network NW, but the illustration is omitted.
各ノード装置Nnには、固有の製造番号およびIP(Internet Protocol)アドレスが割り当てられている。本実施形態の分散保存システムSは、ピアツーピア方式のネットワークシステムである。なお、本実施形態のピアツーピア方式のネットワークシステムは、オーバーレイネットワークOLにより実現される。オーバーレイネットワークOLは、図1の複数のノード装置Nnを仮想的にリンクさせることで構築される。オーバーレイネットワークOLは、言い換えれば、論理的なネットワークである。オーバーレイネットワークOLは、特定のアルゴリズム、により構築される。例えば、特許文献の特開2006−197400に記載されたDHTを利用したアルゴリズムにより、オーバーレイネットワークOLは構築される。 Each node device Nn is assigned a unique manufacturing number and an IP (Internet Protocol) address. The distributed storage system S of this embodiment is a peer-to-peer network system. Note that the peer-to-peer network system of the present embodiment is realized by the overlay network OL. The overlay network OL is constructed by virtually linking the plurality of node devices Nn in FIG. In other words, the overlay network OL is a logical network. The overlay network OL is constructed by a specific algorithm. For example, the overlay network OL is constructed by an algorithm using DHT described in Japanese Patent Application Laid-Open No. 2006-197400.
そして、オーバーレイネットワークOLを構成している各ノード装置Nnには、ノードIDが割り当てられている。ノードIDは、所定桁数からなる固有の識別情報である。また、具体的には、ノードIDは、各ノード装置Nnに個別に割り当てられたIPアドレス或いは製造番号を基に生成される。ノードIDは、上述のIPアドレス或いは製造番号を共通のハッシュ関数によりハッシュ化した値である。例えば、SHA−1等のハッシュ関数により、bit長が160bitのハッシュ値が生成される。各ノードIDは、ある一つのID空間に偏りなく分散して配置されることになる。ピアツーピア方式のネットワークシステムは、これらのノード装置Nnのうち、何れか複数のノード装置Nnの参加により形成される。本実施形態における参加とは、ノード装置Nnが分散保存システムSと接続し、コンテンツデータの送受信をすることを意味している。 A node ID is assigned to each node device Nn constituting the overlay network OL. The node ID is unique identification information consisting of a predetermined number of digits. More specifically, the node ID is generated based on the IP address or manufacturing number individually assigned to each node device Nn. The node ID is a value obtained by hashing the above-described IP address or manufacturing number with a common hash function. For example, a hash value having a bit length of 160 bits is generated by a hash function such as SHA-1. Each node ID is distributed in a certain ID space without any deviation. The peer-to-peer network system is formed by participation of any one of the node devices Nn among these node devices Nn. Participation in the present embodiment means that the node device Nn connects to the distributed storage system S and transmits / receives content data.
分散保存システムSへの参加は、現在オーバーレイネットワークOLに参加していないノード装置Nnが、現在参加している任意のノード装置Nnへ参加要求を示す参加メッセージを送信する。参加メッセージを受信するノード装置は、分散保存システムSに常時参加しているノード装置である。本実施例では、常時参加しているノード装置をコンタクトノードと称する。例えば、オーバーレイネットワークOLに参加していないノード装置から、分散保存システムSのコンタクトノードへ参加メッセージが送信される。コンタクトノードは、参加メッセージの送信元であるノード装置へオーバーレイネットワークOLに参加するために必要な情報を送信する。上述の必要な情報の詳細は後述する。 In participation in the distributed storage system S, a node device Nn not currently participating in the overlay network OL transmits a participation message indicating a participation request to any node device Nn currently participating. The node device that receives the participation message is a node device that always participates in the distributed storage system S. In this embodiment, a node device that always participates is called a contact node. For example, a participation message is transmitted from a node device not participating in the overlay network OL to the contact node of the distributed storage system S. The contact node transmits information necessary for participating in the overlay network OL to the node device that is the transmission source of the participation message. Details of the necessary information will be described later.
図1には図示していないが、分散保存システムSは、コンテンツ投入サーバを備える。また、分散保存システムSは、ヒントサーバ10を備える。コンテンツ投入サーバは、新しいコンテンツデータを分散保存システムS内に投入するためのサーバである。コンテンツ投入サーバは、コンテンツデータを複製したレプリカを、分散保存システムSに投入する。
Although not shown in FIG. 1, the distributed storage system S includes a content input server. The distributed storage system S includes a
図2に示すヒントサーバ10は、インターネットに接続される上位機器群と下位機器群とのトポロジー情報を記憶する。ヒントサーバに記憶されるトポロジー情報についての詳細は後述する。なお、ヒントサーバ10を構築する代わりに、後述するコンタクトノードが、ヒントサーバ10の機能を備えて構築されても良い。本実施形態のヒントサーバ10は、本発明の情報処理装置の一例である。
The
図2は、一般的なインターネット等のネットワーク構造の具体例を示す。IX(Internet eXchange)3は、ネットワークを介して複数の機器群を接続する。IX3を頂点として上位機器群13a〜13cが、IXを介して接続される。IX3を頂点として上位機器群13aの下位には、下位機器群14a及び14bが接続される。図2の例では、上位機器群13aのみに、下位機器群14a及び14bが接続されている例であるが、上位機器群13bまたは上位機器群13cに、下位機器群が接続されても良い。上位機器群13a〜13cと下位機器群14a及び14bとは、複数のブロードバンドルータBRから構成される。各機器群を構成するブロードバンドルータBRは、任意の管理者により管理される。各ブロードバンドルータBRには、所定範囲のIPアドレスが割り当てられている。上位機器群13a〜13cを構成する複数のブロードバンドルータBRに対応するIPアドレスが、上位機器群13a〜13cのIPアドレス範囲として設定される。同様に、下位機器群14a及び14bを構成する複数のブロードバンドルータBRのIPアドレスが、下位機器群14a及び14bのIPアドレス範囲として設定される。
FIG. 2 shows a specific example of a network structure such as a general Internet. IX (Internet eXchange) 3 connects a plurality of device groups via a network. The
本実施形態に記載の上位機器群または下位機器群は、例えば、ISP(Internet Service Provider)である。現実世界のインターネットに接続される各ISPは、上述した上位と下位との関係により接続されている。本実施形態の上位機器群は、例えば、1次ISPである。また、本実施形態の下位機器群は、例えば、2次ISPである。1次ISPと2次ISPとは、上述した上位と下位との関係により接続されている。1次ISPは、2次ISPより上位に接続される。 The upper device group or the lower device group described in the present embodiment is, for example, an ISP (Internet Service Provider). Each ISP connected to the Internet in the real world is connected according to the above-described relationship between the upper level and the lower level. The host device group of this embodiment is, for example, a primary ISP. In addition, the lower device group of the present embodiment is, for example, a secondary ISP. The primary ISP and the secondary ISP are connected by the above-described relationship between the upper level and the lower level. The primary ISP is connected to a higher rank than the secondary ISP.
図2に示すようにIX3を頂点として、上位機器群13a〜13cまたは下位機器群14a及び14bの下位には、多数のノード装置NnがブロードバンドルータBRを介して接続される。また、ノード装置Nnは、局舎モデム15を介してブロードバンドルータBRと接続される。尚、ブロードバンドルータBRとノード装置Nnとは、直接接続されても良い。
As shown in FIG. 2, a large number of node devices Nn are connected via the broadband router BR to the
さらに本実施形態では、上述した上位機器群、または、下位機器群に夫々代表ノード装置が設置される。代表ノード装置は、各上位機器群、または、下位機器群を代表するノード装置である。各上位機器群、または、下位機器群に接続された代表ノード装置は、各上位機器群、または、下位機器群に接続されるノード装置の中から決定される。代表ノード装置の決定方法は、任意の方法により決定されても良い。各上位機器群、または、下位機器群に接続された代表ノード装置は、各代表ノード装置間のネットワーク距離を記憶する。ネットワーク距離の決定方法の詳細は、後述する。 Furthermore, in this embodiment, a representative node device is installed in each of the above-described upper device group or lower device group. The representative node device is a node device that represents each upper device group or lower device group. The representative node device connected to each upper device group or lower device group is determined from among the node devices connected to each upper device group or lower device group. The method for determining the representative node device may be determined by an arbitrary method. The representative node device connected to each upper device group or lower device group stores the network distance between the representative node devices. Details of the network distance determination method will be described later.
また、本実施形態の変形例として、上位機器群、または、下位機器群に夫々、図2に示すプライベートヒントサーバが設置されても良い。プライベートヒントサーバ11は、各上位機器群、または、下位機器群夫々に少なくとも1台設置される。各プライベートヒントサーバは、少なくとも、プライベートヒントサーバが接続される上位機器群、または、下位機器群のトポロジー情報を記憶する。図2に示す例では、各上位機器群、または、下位機器群に、プライベートヒントサーバ11a、11b、11c、11d、11eが接続される。トポロジー情報の詳細は、後述する。本発明のプライベートヒントサーバは、本発明の情報処理装置の一例である。
As a modification of the present embodiment, the private hint server shown in FIG. 2 may be installed in each of the upper device group and the lower device group. At least one private hint server 11 is installed in each upper device group or each lower device group. Each private hint server stores at least topology information of an upper device group or a lower device group to which the private hint server is connected. In the example shown in FIG. 2,
[分散保存システムのコンテンツ取得動作説明]
図1または図2に示す各ノード装置Nnは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、分散保存システムS上における各種メッセージの転送先を規定している。具体的に、このルーティングテーブルには、ID空間内で適度に離れたノード装置NnのノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。本実施形態では、ノード情報は、メッセージ送信先候補の「ノードID」と「IPアドレス及びポート番号」と「代表ノード装置のIPアドレス」とを含む。代表ノード装置のIPアドレスは、ノード情報が含むノードIDが表すノード装置が接続する上位機器群、または、下位機器群の代表ノードのIPアドレスである。
[Description of content acquisition operation of distributed storage system]
Each node device Nn shown in FIG. 1 or FIG. 2 holds a routing table using DHT. This routing table defines various message transfer destinations on the distributed storage system S. Specifically, a plurality of pieces of node information including the node ID, IP address, and port number of the node device Nn that are moderately separated in the ID space are registered in this routing table. In the present embodiment, the node information includes “node ID”, “IP address and port number”, and “IP address of the representative node device” of the message transmission destination candidate. The IP address of the representative node device is the IP address of the representative node of the upper device group or the lower device group to which the node device represented by the node ID included in the node information is connected.
分散保存システムSに接続している1台のノードは、必要最低限のノードNnのノード情報をルーティングテーブルとして記憶している。各ノードNn間で互いに各種メッセージが転送されることで、ノード情報を記憶していないノードNnについてのノード情報が取得される。本実施形態では、ルーティングテーブルを用いて、上述した他のノード装置Nnへ各種メッセージを送信、または転送するとき、メッセージの送信元、または転送元のノード装置Nnのノード情報が含まれて送信される。このメッセージを受信した各ノード装置Nnは、各ノード装置Nnが保持するルーティングテーブル及びインデックスキャッシュに、受信したノード情報の登録および更新を行う。このような構成により、各ノード装置Nnは、他のノード装置のノード情報を把握することができる。このようなDHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。 One node connected to the distributed storage system S stores the minimum necessary node information of the node Nn as a routing table. By transferring various messages between the nodes Nn, node information about the node Nn that does not store node information is acquired. In the present embodiment, when various messages are transmitted or transferred to the above-described other node device Nn using the routing table, the message transmission source or the node information of the node device Nn of the transfer source is included and transmitted. The Each node device Nn that has received this message registers and updates the received node information in the routing table and index cache held by each node device Nn. With such a configuration, each node device Nn can grasp node information of other node devices. Such a routing table using DHT is well known in Japanese Patent Application Laid-Open No. 2006-197400 and the like, and will not be described in detail.
また、分散保存システムSにおいては、内容の異なる様々なコンテンツデータのレプリカが所定のファイル形式で複数のノード装置Nnに分散保存されている。コンテンツは、映画および動画、または音楽等である。各ノード装置Nn間でレプリカが送受信可能になっている。 In the distributed storage system S, various content data replicas having different contents are distributed and stored in a plurality of node devices Nn in a predetermined file format. The content is a movie and a movie, or music. A replica can be transmitted and received between the node devices Nn.
これらコンテンツデータのレプリカには、夫々、コンテンツ名(タイトル)と、コンテンツIDとを含む情報が付与されている。コンテンツ名は、コンテンツデータのタイトルであっても良い。また、コンテンツIDは、コンテンツ毎に固有のコンテンツ識別情報である。例えば、コンテンツIDは、コンテンツ名+任意の数値が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される。そのため、コンテンツIDは、ノードIDと同一のID空間に配置されることとなる。あるいは、システム管理者が、コンテンツデータ毎に一意のID値を付与しても良い。ID値は、ノードIDと同一ビット長でも良い。コンテンツ名とそのコンテンツIDとの対応が記載されたコンテンツカタログリストが、全ノードNnに配布される。コンテンツカタログリストには、コンテンツ名と、コンテンツIDと、そのコンテンツIDが表すレプリカの公開開始日時及び公開終了日時とが対応付けられて記載されている。尚、コンテンツカタログリストの詳細は、特開2008−129694号公報に記載されているため、詳細な説明は省略する。 Each of these content data replicas is given information including a content name (title) and a content ID. The content name may be a title of content data. The content ID is content identification information unique to each content. For example, the content ID is generated by hashing the content name + arbitrary numerical value with a hash function common to that for obtaining the node ID. For this reason, the content ID is arranged in the same ID space as the node ID. Alternatively, the system administrator may assign a unique ID value for each content data. The ID value may have the same bit length as the node ID. A content catalog list describing the correspondence between content names and their content IDs is distributed to all nodes Nn. In the content catalog list, the content name, the content ID, and the publication start date and time and the publication end date and time of the replica represented by the content ID are described in association with each other. Details of the content catalog list are described in Japanese Patent Application Laid-Open No. 2008-129694, and detailed description thereof is omitted.
上述のように分散保存されているレプリカの所在は、インデックス情報により管理される。インデックス情報は、レプリカが保存されたノード装置Nnの情報と、レプリカのコンテンツIDとを組み合わせた情報から構成される。インデックス情報は、レプリカの所在を管理しているノード装置Nnにより記憶される。レプリカの所在を管理しているノード装置を「ルートノード」とする。つまり、コンテンツデータのレプリカを保存しているノード装置Nnのノード情報は、他のノード装置Nnからの問い合わせに応じて提供可能なようにルートノードにより管理されている。コンテンツのレプリカを保存しているノード装置Nnを「保持ノード」とする。このようなルートノードには、コンテンツIDと最も近いノードIDを有するノードNnが選定される。例えば、コンテンツIDと最も近いとは、上位桁がより多く一致する、または、比較結果の差が最も小さいことである。 As described above, the location of replicas distributed and stored is managed by index information. The index information is composed of information obtained by combining the information of the node device Nn in which the replica is stored and the content ID of the replica. The index information is stored by the node device Nn that manages the location of the replica. A node device that manages the location of a replica is referred to as a “root node”. That is, the node information of the node device Nn that stores the replica of the content data is managed by the root node so that it can be provided in response to an inquiry from another node device Nn. The node device Nn that stores the content replica is assumed to be a “holding node”. As such a root node, a node Nn having a node ID closest to the content ID is selected. For example, “closest to the content ID” means that the upper digits match more or the difference between the comparison results is the smallest.
ルートノードは、保持ノードからパブリッシュメッセージを受信する。そして、ルートノードは、パブリッシュメッセージに含まれるコンテンツIDとノード情報とを、インデックス情報としてインデックスキャッシュに登録する。ノード情報は、「ノードID」と、「IPアドレス及びポート番号」と、「代表ノード装置のIPアドレス」を含む。代表ノード装置のIPアドレスは、ノード情報が含むノードIDが表すノード装置が接続する上位機器群、または、下位機器群の代表ノードのIPアドレスである。 The root node receives a publish message from the holding node. Then, the root node registers the content ID and node information included in the publish message in the index cache as index information. The node information includes “node ID”, “IP address and port number”, and “IP address of representative node device”. The IP address of the representative node device is the IP address of the representative node of the upper device group or the lower device group to which the node device represented by the node ID included in the node information is connected.
そして、あるノード装置のユーザが、所望するコンテンツデータのレプリカを取得したい場合、レプリカの取得を望むユーザは、クエリを生成する。ユーザがレプリカの取得を望むノード装置Nnを、「ユーザノード」とする。クエリは、コンテンツデータのコンテンツIDとユーザノードのIPアドレスを含む。クエリに含まれるコンテンツIDは、ユーザによりコンテンツカタログリストから選択されたコンテンツデータのコンテンツIDである。 When a user of a certain node device wants to acquire a replica of desired content data, the user who wants to acquire the replica generates a query. A node device Nn that the user desires to acquire a replica is referred to as a “user node”. The query includes the content ID of the content data and the IP address of the user node. The content ID included in the query is the content ID of the content data selected from the content catalog list by the user.
ユーザノードは、ユーザノードのルーティングテーブルに従って、他のノード装置Nnへクエリを送信する。つまり、ユーザノードは、クエリをルートノードに向けて送信する。これにより、コンテンツIDをキーとしてクエリは、ルートノードに到着することとなる。 The user node transmits a query to another node device Nn according to the routing table of the user node. That is, the user node transmits the query toward the root node. Thus, the query arrives at the root node using the content ID as a key.
クエリを受信したルートノードは、クエリに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュ記憶領域から取得する。取得されたインデックス情報は、クエリの送信元であるユーザノードへ返信される。こうしてインデックス情報を取得したユーザノードは、取得したインデックス情報から保持ノードのIPアドレスを知ることができる。取得した保持ノードのIPアドレスに基づいて、ユーザノードは、コンテンツ送信要求メッセージを送信する。そして、ユーザノードは、保持ノードからコンテンツデータのレプリカを取得(ダウンロード)することができる。レプリカを取得するとき、レプリカのコンテンツIDがレプリカとともに取得される。 The root node that has received the query acquires index information corresponding to the content ID included in the query from the index cache storage area. The acquired index information is returned to the user node that is the transmission source of the query. Thus, the user node that acquired the index information can know the IP address of the holding node from the acquired index information. Based on the acquired IP address of the holding node, the user node transmits a content transmission request message. The user node can obtain (download) a replica of the content data from the holding node. When acquiring a replica, the content ID of the replica is acquired together with the replica.
そして、保持ノードから取得したコンテンツデータのレプリカを、ユーザノードは、ハードディスク等の記憶手段に保存する。レプリカを保存したユーザノードは、レプリカを保存したことをルートノードに知らせる。レプリカを保存したことを知らせるために、ユーザノードは、レプリカのコンテンツIDと、ユーザノードのノード情報が含まれたパブリッシュメッセージを生成する。生成されたパブリッシュメッセージは、ユーザノードからルートノードに向けて送信される。パブリッシュメッセージが送信されることで、分散保存システムSに参加している他のノード装置Nnは、レプリカを取得したユーザノードからもレプリカを取得(ダウンロード)することができる。 The user node stores a replica of the content data acquired from the holding node in a storage unit such as a hard disk. The user node storing the replica informs the root node that the replica has been stored. In order to notify that the replica has been saved, the user node generates a publish message including the content ID of the replica and the node information of the user node. The generated publish message is transmitted from the user node to the root node. By transmitting the publish message, the other node devices Nn participating in the distributed storage system S can acquire (download) the replica from the user node that acquired the replica.
上述の方法により、パブリッシュメッセージは、クエリと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着する。そして、ルートノードは、受信したパブリッシュメッセージに含まれるユーザノードのノード情報とレプリカのコンテンツIDの組とを含むインデックス情報を登録することができる。こうして、上記ユーザノードは、新たに、コンテンツのレプリカを保持する保持ノードとなる。なお、上記パブリッシュメッセージに含まれるユーザノードのインデックス情報は、ルートノードに至るまでの転送経路におけるノード装置Nnにおいても登録される。なお、ルートノードは、所在情報に含まれるIPアドレス等により示された保持ノードへコンテンツ送信要求メッセージを送信してもよい。この場合、保持ノードがユーザノードへアクセスしてコンテンツを提供することになる。 By the above-described method, the publish message arrives at the root node by DHT routing using the content ID as a key, like the query. Then, the root node can register index information including the node information of the user node included in the received publish message and the set of the content ID of the replica. Thus, the user node becomes a new holding node that holds a replica of the content. Note that the index information of the user node included in the publish message is also registered in the node device Nn in the transfer path up to the root node. The root node may transmit the content transmission request message to the holding node indicated by the IP address or the like included in the location information. In this case, the holding node accesses the user node and provides the content.
また、分散保存システムSに保存される全てのコンテンツは、コンテンツ管理サーバにより管理される。尚、本実施形態では、コンテンツ管理サーバは、図示していない。コンテンツ管理サーバは、分散保存システムSに保存される全てのコンテンツの属性情報を記憶している。そして、コンテンツ管理サーバMSは、コンテンツの属性情報を含むコンテンツカタログ情報を、全てのノード装置Nnに対して、DHTマルチキャストで配信する。DHTマルチキャストでは、コンテンツ管理サーバからあるノードNnに配信されたメッセージが、DHTを用いたルーティングテーブルにしたがって、分散保存システムSに接続しているノード装置Nnを順次転送される。これにより、最終的には全てのノード装置Nnに行き渡る。なお、DHTマルチキャストは、例えば特開2007−053662号公報等で公知であるので、詳しい説明を省略する。 All contents stored in the distributed storage system S are managed by the content management server. In the present embodiment, the content management server is not shown. The content management server stores attribute information of all contents stored in the distributed storage system S. Then, the content management server MS distributes content catalog information including content attribute information to all the node devices Nn by DHT multicast. In DHT multicast, messages distributed from a content management server to a certain node Nn are sequentially transferred to the node devices Nn connected to the distributed storage system S according to a routing table using DHT. As a result, all node devices Nn are finally distributed. The DHT multicast is known in, for example, Japanese Patent Application Laid-Open No. 2007-053662, and detailed description thereof is omitted.
[トポロジー情報の説明]
図3は、ヒントサーバ10に記憶されるトポロジー情報の概念図である。トポロジー情報は、上位機器群及び下位機器群との接続態様を表す。具体的には、トポロジー情報は、接続関係情報とIPアドレス範囲情報とから構成される。接続関係情報は、インターネットを構成する複数の上位機器群または下位機器群の接続関係を表す情報である。また、IPアドレス範囲情報は、上位機器群または下位機器群夫々に対応するIPアドレス範囲である。例えば、接続関係情報は、図3の上位機器群13aに接続される上位機器群が、上位機器群13b、13cであることを示す情報である。また、上位機器群13aに接続される下位機器群が、下位機器群14a、14bであることを示す情報である。
[Description of topology information]
FIG. 3 is a conceptual diagram of topology information stored in the
ユーザノードがコンテンツを取得するとき、トポロジー情報と、ユーザノードのIPアドレスとに基づいて、機器群間の経由が最小の経路である保持ノード装置からコンテンツを取得することができる。尚、本実施形態では、ユーザノードは、ユーザからの指示にしたがってクエリを生成するノード装置Nnを表す。また、保持ノードは、コンテンツデータが記憶されるノード装置Nnを表す。本実施形態では、オーバーレイネットワークOLに参加する参加処理に加えて、ノード装置Nnが接続する上位機器群、または、下位機器群が決定される。具体的には、ノード装置Nnが送信する参加メッセージに含まれたIPアドレスに基づいて、参加メッセージを送信したノード装置Nnが接続する上位機器群、または、下位機器群が決定される。 When the user node acquires the content, the content can be acquired from the holding node device that is the smallest route between the device groups based on the topology information and the IP address of the user node. In the present embodiment, the user node represents a node device Nn that generates a query in accordance with an instruction from the user. The holding node represents a node device Nn in which content data is stored. In the present embodiment, in addition to the participation process for participating in the overlay network OL, an upper device group or a lower device group to which the node device Nn is connected is determined. Specifically, based on the IP address included in the participation message transmitted by the node device Nn, a higher device group or a lower device group to which the node device Nn that transmitted the participation message is connected is determined.
決定する方法について具体的に説明する。上述したIPアドレス範囲情報は、具体的には、アドレス範囲「10.10.10.10〜10.10.10.90」である。このアドレス範囲は、上位機器群または下位機器群が含むブロードバンドルータBRに割り当てられたアドレスを示す。以下、コンタクトノードが、ヒントサーバ10の機能を備えた場合について説明する。あるノード装置がオーバーレイネットワークOLに参加するとき、参加するノード装置は、参加メッセージをコンタクトノードに向けて送信する。コンタクトノードは、オーバーレイネットワークOLに参加するノード装置が最初にアクセスする装置である。コンタクトノードの詳細は、後述する。参加するノード装置Nnはコンタクトノードに向けて参加メッセージを送信する。参加メッセージは、参加メッセージを送信するノード装置のIPアドレスを含む。例えば、ノード装置N13のIPアドレスが、「10.10.10.89」の場合、参加メッセージには、IPアドレス「10.10.10.89」が含まれる。そして、参加メッセージに含まれるIPアドレス「10.10.10.89」を、アドレス範囲として含む上位機器群、または、下位機器群がコンタクトノードにより決定される。例えば、IPアドレス「10.10.10.89」は、上述したアドレス範囲「10.10.10.10〜10.10.10.90」に含まれるため、アドレス範囲「10.10.10.10〜10.10.10.90」に対応する上位機器群または下位機器群が決定される。
A method for determination will be specifically described. Specifically, the above-described IP address range information is an address range “10.10.10.10 to 10.10.10.90”. This address range indicates an address assigned to the broadband router BR included in the upper device group or the lower device group. Hereinafter, a case where the contact node has the function of the
本実施形態では、コンタクトノードが、各上位機器群または下位機器群に対応するアドレス範囲を知っているものとする。決定された上位機器群または下位機器群が、コンタクトノードから参加するノード装置へ送信される。この処理が実行されることで、参加するノード装置は、参加するノード装置が接続する上位機器群、または、下位機器群を取得することができる。保持ノードについても上記と同様な処理が実行されることで、保持ノードは、保持ノードが接続される上位機器群または下位機器群を取得することができる。保持ノードの詳細は、後述する。コンタクトノードとは異なってヒントサーバ10が設立されるとき、オーバーレイネットワークOLに参加するノード装置、または、保持ノードが、ヒントサーバ10にアクセスする。この場合、参加するノード装置がコンタクトノードへ参加メッセージを送信すると、参加するノード装置は、コンタクトノードからヒントサーバ10のIPアドレスを取得することができる。そして、上述した処理が実行されることで、参加するノード装置、または、保持ノードは、それらノード装置が接続する上位機器群または下位機器群を取得することができる。
In the present embodiment, it is assumed that the contact node knows the address range corresponding to each upper device group or lower device group. The determined upper device group or lower device group is transmitted from the contact node to the participating node device. By executing this process, the participating node device can acquire the upper device group or the lower device group to which the participating node device is connected. By executing the same processing as described above for the holding node, the holding node can acquire the upper device group or the lower device group to which the holding node is connected. Details of the holding node will be described later. Unlike the contact node, when the
さらに本実施形態では、ヒントサーバ10は、参加するノード装置、または、保持ノードが接続される上位機器群、または、下位機器群の代表ノード装置のIPアドレスを記憶している。ヒントサーバ10により、参加するノード装置、または、保持ノードが接続する上位機器群、または、下位機器群が決定される。そして、決定された上位機器群、または、下位機器群の代表ノード装置が決定される。決定された代表ノード装置のIPアドレスが、ヒントサーバ10から、参加するノード装置、または、保持ノードに送信される。これにより、参加するノード装置、または、保持ノードが、代表ノード装置にアクセスすることができる。
Furthermore, in the present embodiment, the
また本実施形態の変形例で、上位機器群、または、下位機器群夫々に、プライベートヒントサーバを備える場合、プライベートヒントサーバは、プライベートヒントサーバが接続される上位機器群、または、下位機器群内のトポロジー情報を記憶する。この場合、各機器群内に接続されるノード装置と、ノード装置からプライベートヒントサーバまでに経由するルータの数等がトポロジー情報として記憶されても良い。なお、本実施形態の上位機器群は、本発明の1次機器群の一例である。また、本実施形態の下位機器群は、本発明の2次機器群の一例である。 In the modification of the present embodiment, when each of the upper device group and the lower device group includes a private hint server, the private hint server is in the upper device group or the lower device group to which the private hint server is connected. The topology information is stored. In this case, the node device connected in each device group, the number of routers passing from the node device to the private hint server, and the like may be stored as topology information. The upper device group of this embodiment is an example of the primary device group of the present invention. The lower device group of the present embodiment is an example of the secondary device group of the present invention.
[分散保存システムSの動作概要]
図4を用いて、本実施形態の分散保存システムSの動作概要について説明する。以下、コンタクトノードが、ヒントサーバ10の機能を備えた場合について説明する。図4に示すノード装置N13がオーバーレイネットワークOLに参加する場合を例に用いて説明する。オーバーレイネットワークOLに参加するノード装置N13は、まず、参加メッセージをコンタクトノードに送信する。参加メッセージは、ノード装置N13のIPアドレスを含む。参加メッセージを受信したコンタクトノードは、ノード装置N13のIPアドレスに基づいて、ノード装置N13が接続する上位機器群、または、下位機器群を決定する。そして決定された上位機器群、または、下位機器群の代表ノード装置を決定する。決定された代表ノード装置のIPアドレスが、ノード装置N13に送信される。
[Operation overview of distributed storage system S]
The operation outline of the distributed storage system S of the present embodiment will be described with reference to FIG. Hereinafter, a case where the contact node has the function of the
そして、ノード装置N13は、ユーザノードとして、所定のコンテンツを検索するためのクエリを生成する。生成されたクエリは、ノード装置N13によりルートノードへ向けて送信する。そして、ノード装置N13は、インデックスキャッシュを取得することになる。 Then, the node device N13 generates a query for searching for predetermined content as a user node. The generated query is transmitted toward the root node by the node device N13. Then, the node device N13 acquires an index cache.
インデックスキャッシュを取得したノード装置N13は、インデックスキャッシュに記載されるノード装置の代表ノード装置と、ユーザノードの代表ノード装置とのネットワーク距離が、ノード装置N13の記憶手段に記憶されているかを判定する。ネットワーク距離がノード装置N13の記憶手段に記憶されていた場合、記憶手段に記憶されたネットワーク距離が参照される。一方、ノード装置N13の記憶手段に記憶されていなかった場合、ノード装置N13が接続する機器群の代表ノード装置に、リクエストメッセージがノード装置N13から送信される(図4の矢印(1))。図4の例では、ノード装置N13は、下位機器群14aに接続される。そのため、下位機器群14aの代表ノード装置N24へ、リクエストメッセージが送信される。送信されるリクエストメッセージには、ユーザノードの代表ノードのIPアドレスと、ネットワーク距離を決定したい保持ノードのIPアドレスとが含まれる。
The node device N13 that has acquired the index cache determines whether the network distance between the representative node device of the node device described in the index cache and the representative node device of the user node is stored in the storage unit of the node device N13. . When the network distance is stored in the storage unit of the node device N13, the network distance stored in the storage unit is referred to. On the other hand, if not stored in the storage means of the node device N13, a request message is transmitted from the node device N13 to the representative node device of the device group to which the node device N13 is connected (arrow (1) in FIG. 4). In the example of FIG. 4, the node device N13 is connected to the
リクエストメッセージを受信した代表ノード装置N24は、リクエストメッセージが含む保持ノードの代表ノード装置と、代表ノード装置N24とのネットワーク距離が、代表ノード装置N24の記憶手段に記憶されているかを判定する。代表ノード装置N24の記憶手段に記憶されていた場合、記憶手段に記憶されたネットワーク距離がノード装置N13へ送信される(図4の矢印(2))。一方、代表ノード装置N24の記憶手段に記憶されていなかった場合、代表ノード装置N24は、ヒントサーバ10にリクエストメッセージを転送する(図4の矢印(3))。そして、ヒントサーバ10は、代表ノード装置N24から送信されたリクエストメッセージを受信する。ヒントサーバ10は、受信されたリクエストメッセージが含む保持ノードの代表ノード装置と、ユーザノードの代表ノード装置とのネットワーク距離を決定する。ヒントサーバ10により決定されたネットワーク距離が、代表ノード装置N24に送信される(図4の矢印(4))。代表ノード装置N24は、受信したネットワーク距離を代表ノード装置N24の記憶手段に記憶する。これにより、代表ノード装置N24は、再度、保持ノードの代表ノード装置と、代表ノード装置N24とのネットワーク距離を問い合わされたとしても、代表ノード装置N24の記憶手段に記憶されたネットワーク距離を参照することができる。
The representative node device N24 that has received the request message determines whether the network distance between the representative node device of the holding node included in the request message and the representative node device N24 is stored in the storage unit of the representative node device N24. If it is stored in the storage means of the representative node device N24, the network distance stored in the storage means is transmitted to the node device N13 (arrow (2) in FIG. 4). On the other hand, if not stored in the storage means of the representative node device N24, the representative node device N24 transfers the request message to the hint server 10 (arrow (3) in FIG. 4). The
ヒントサーバ10からネットワーク距離を受信した代表ノード装置N24は、ユーザノードに受信したネットワーク距離を転送する(図4の矢印(5))。ネットワーク距離を受信したユーザノードは、ユーザノードの記憶手段に受信したネットワーク距離を記憶する。このように、各上位機器群、または、下位機器群に接続された代表ノード装置が、ネットワーク距離を記憶することで、ヒントサーバ10へのアクセス集中を分散することができる。
The representative node device N24 that has received the network distance from the
(ネットワーク距離の決定方法)
本実施形態で用いるネットワーク距離の決定方法について説明する。本実施形態では、ユーザノードから保持ノードまでに経由する上位機器群、または、下位機器群の数に基づいて、ネットワーク距離が決定される。
(How to determine network distance)
A network distance determination method used in the present embodiment will be described. In the present embodiment, the network distance is determined based on the number of upper device groups or lower device groups that pass from the user node to the holding node.
具体的には、図3に示すユーザノードであるノード装置N13が、クエリをルートノードへ送信した例を用いて説明する。例として、ノード装置N13が、コンテンツの保持ノードとして、ノード装置N11、ノード装置N15、ノード装置N16、ノード装置N19、ノード装置N20のノード情報がルートノードに記憶されている場合をあげる。そして、ルートノードは、インデックスキャッシュをコンテンツの取得候補先としてノード装置N13へ送信する。取得候補先を受信したノード装置N13は、ネットワーク距離に基づいてコンテンツ取得先とする保持ノードを決定する。 Specifically, description will be made using an example in which the node device N13 which is a user node illustrated in FIG. 3 transmits a query to the root node. As an example, the node device N13 stores the node information of the node device N11, the node device N15, the node device N16, the node device N19, and the node device N20 as content holding nodes in the root node. Then, the root node transmits the index cache to the node device N13 as a content acquisition candidate destination. The node device N13 that has received the acquisition candidate destination determines a holding node as a content acquisition destination based on the network distance.
本実施形態のネットワーク距離は、下記に示すルールにより決定される。
1.ユーザノードの代表ノード装置と、保持ノードの代表ノード装置とが同じ下位機器群と接続されている場合、ネットワーク距離を0とする。
2.ユーザノードの代表ノード装置と、保持ノードの代表ノード装置とが同じ下位機器群と接続されておらず、且つ、ユーザノードの代表ノード装置と保持ノードの代表ノード装置とが同じ上位機器群と接続される場合、ネットワーク距離を1とする。
3.ユーザノードの代表ノード装置と保持ノードの代表ノード装置とが同じ下位機器群と接続されておらず、且つ、ユーザノードの代表ノード装置と保持ノードの代表ノード装置とが同じ上位機器群と接続されず、さらに、ユーザノードの代表ノード装置が接続する上位機器群と異なる他の上位機器群と、保持ノードの代表ノードが直接接続される場合、ネットワーク距離を2とする。
4.ユーザノードの代表ノード装置と保持ノードの代表ノード装置とが同じ下位機器群と接続されておらず、且つ、ユーザノードの代表ノード装置と保持ノードの代表ノード装置とが同じ上位機器群と接続されず、さらに、ユーザノードの代表ノード装置が接続する上位機器群と異なる他の上位機器群と、ユーザノードの代表ノード装置とが直接接続されず、他の上位機器群の下位機器群に接続される場合、ネットワーク距離を3とする。
The network distance of the present embodiment is determined according to the following rules.
1. When the representative node device of the user node and the representative node device of the holding node are connected to the same lower device group, the network distance is set to zero.
2. The representative node device of the user node and the representative node device of the holding node are not connected to the same lower device group, and the representative node device of the user node and the representative node device of the holding node are connected to the same upper device group. In this case, the network distance is 1.
3. The representative node device of the user node and the representative node device of the holding node are not connected to the same lower device group, and the representative node device of the user node and the representative node device of the holding node are connected to the same upper device group. Furthermore, when the representative node of the holding node is directly connected to another higher level device group different from the higher level device group to which the representative node device of the user node is connected, the network distance is set to 2.
4). The representative node device of the user node and the representative node device of the holding node are not connected to the same lower device group, and the representative node device of the user node and the representative node device of the holding node are connected to the same upper device group. Furthermore, the other upper device group different from the upper device group to which the representative node device of the user node is connected and the representative node device of the user node are not directly connected, but are connected to the lower device group of the other upper device group. Network distance is 3.
本実施形態では、上記のルールに基づいて、ネットワーク距離が短い保持ノードからコンテンツデータが取得される。従って、コンテンツ取得の際、経由する機器群の数が減らせることで、機器群間の通信負荷を減らせることができる。 In the present embodiment, content data is acquired from a holding node with a short network distance based on the above rules. Therefore, the communication load between the device groups can be reduced by reducing the number of device groups that pass through when acquiring content.
ノード装置N13が、保持ノードとして、ノード装置N11、ノード装置N15、ノード装置N16、ノード装置N19、ノード装置N20のノード情報がルートノードに記憶されている場合を例に挙げて説明する。この場合、ノード装置N13とノード装置N15とは、同じ下位機器群14aに接続されるため、ネットワーク距離が0となる。また、ノード装置N13とノード装置N16とは、同じ上位機器群13aに接続されるため、ネットワーク距離が1となる。また、ノード装置N13とノード装置N11とも、同じ上位機器群13aと接続されるため、ネットワーク距離が1となる。また、ノード装置N13とノード装置N19とは、夫々異なる上位機器群と接続され、且つ、ノード装置N19は、上位機器群13bと直接接続されるため、ネットワーク距離2となる。また、ノード装置N13とノード装置N20とは、同じ下位機器群に接続されておらず、且つ、上位機器群と接続されず、さらに、ノード装置N13が接続する上位機器群13aと異なる他の上位機器群13bと直接接続されず、他の上位機器群13bの下位機器群14cに接続されている。そのため、ネットワーク距離が3となる。
An example will be described in which the node device N13 stores node information of the node device N11, the node device N15, the node device N16, the node device N19, and the node device N20 as the holding node in the root node. In this case, since the node device N13 and the node device N15 are connected to the same
本実施形態では、コンテンツ取得先を決定する処理は、ユーザノードにより行われている。ユーザノードがクエリとともにユーザノードの代表ノード装置のIPアドレスを送信することで、ルートノードによりコンテンツ取得先を決定することができる。この場合、ルートノードにより決定されたコンテンツ取得先がユーザノードに送信される。また、取得先として決定された保持ノードへコンテンツ送信要求メッセージが送信されても良い。また、ヒントサーバ10により、ネットワーク距離が決定されても良い。
In the present embodiment, the process for determining the content acquisition destination is performed by the user node. By transmitting the IP address of the representative node device of the user node together with the query, the user node can determine the content acquisition destination by the root node. In this case, the content acquisition destination determined by the root node is transmitted to the user node. In addition, the content transmission request message may be transmitted to the holding node determined as the acquisition destination. The network distance may be determined by the
本実施形態では、経由する機器群の数を、ネットワーク距離としたが、これに限定されるものではない。経由するルータやハブの数をネットワーク距離としても良い。また、上位機器群、または、下位機器群を経由する際に発生するトランジット料金がネットワーク距離として用いられても良い。 In the present embodiment, the number of device groups that are routed is the network distance, but is not limited to this. The number of routers and hubs that pass through may be used as the network distance. Further, a transit fee generated when passing through the upper device group or the lower device group may be used as the network distance.
[ノード装置の電気的構成]
次に、図5を参照して、ノード装置Nnの電気的構成ついて説明する。図5は、本実施形態のノード装置Nnの電気的構成を示すブロック図である。図5に示すように、本実施形態のノード装置Nnには、ノード装置Nnを制御するCPU1が備えられている。CPU1には、HDD2とRAM3とデコーダ部4と通信部9とがそれぞれ電気的に接続されている。HDD2、RAM3などの記憶手段とCPU1とは、ノード装置Nnのコンピュータを構成している。そのコンピュータは、ノード装置Nnの動作を制御処理する。
[Electric configuration of node equipment]
Next, the electrical configuration of the node device Nn will be described with reference to FIG. FIG. 5 is a block diagram showing an electrical configuration of the node device Nn of this embodiment. As shown in FIG. 5, the node device Nn according to the present embodiment includes a
HDD2は、プログラム記憶領域21を含む。プログラム記憶領域21は、メイン動作プログラム記憶領域22と、代表ノード処理プログラム記憶領域23とを含む。メイン動作プログラム記憶領域22は、ノード装置Nnを制御するためのプログラム情報を記憶する。代表ノード処理プログラム記憶領域23は、本実施形態の代表ノードとして、ノード装置Nnを制御するためのプログラムである。
The
RAM3は、代表ノード情報一時記憶領域31と、距離情報一時記憶領域32と、保持ノード情報一時記憶領域33とを含む。代表ノード情報一時記憶領域31はRAM3を備えるノード装置Nnが接続する上位機器群、または、下位機器群の代表ノードのIPアドレスを一時記憶する。距離情報一時記憶領域32は、RAM3を備えるノード装置Nnの代表ノードと、保持ノードの代表ノードとのネットワーク距離を一時記憶する。具体的には、距離情報一時記憶領域32には、RAM3を備えるノード装置Nnが受信したネットワーク距離が一時記憶される。保持ノード情報一時記憶領域33は、RAM3を備えるノード装置と、取得したインデックスキャッシュが含む保持ノードの代表ノードとのネットワーク距離を一時記憶する。具体的には、ノード装置Nnがコンテンツを取得する際に取得されたインデックスキャッシュに記載された各保持ノードの代表ノード装置と、コンテンツを取得するユーザノード装置の代表ノード装置とのネットワーク距離が一時記憶される。なお、代表ノード情報一時記憶領域31と、距離情報一時記憶領域32と、保持ノード情報一時記憶領域33とは、夫々、HDD2に備えられても良い。本実施形態の距離情報一時記憶領域32は、本発明の記憶部の一例である。
The
デコーダ部4は、映像情報と音声情報とをデコードする。本実施形態のデコードは、エンコード化された映像情報と音声情報とを、データ伸張または復号化することである。映像情報と音声情報とは、コンテンツデータに含まれる。
The
映像処理部5は、デコードされた映像情報に所定の描画処理を施して映像信号を出力する。
The
ディスプレイ6は、映像処理部5から出力された映像信号に基づいて映像表示する。ディスプレイ6は、CRTディスプレイ、または、液晶ディスプレイにより構成される。
The
音声処理部7は、上記デコードされた音声情報をアナログオーディオ信号にD(Digital)/A(Analog)変換する。
The
スピーカ8は、変化されたアナログオーディオ信号を、アンプにより増幅して出力する。
The
通信部9は、ノード装置Nnをインターネットと接続する。通信部9は、ネットワークNWを介して他のノード装置Nnまたはコンテンツ投入サーバまたはヒントサーバ10またはプライベートヒントサーバと情報の送受信を行う。
The
なお、ノード装置Nnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。 As the node device Nn, a personal computer, an STB (Set Top Box), a TV receiver, or the like is applicable.
また、分散保存システムSが、分散保存システムSに参加する際のアクセス先となるコンタクトノードを備えている場合、各ノード装置NnのHDD2にはコンタクトノードのIPアドレスまたはポート番号等が記憶されている。更に、HDD2には、コンテンツカタログリストが記憶されている。なお、HDD2に記憶されるプログラムは、例えば、ネットワークNW上の所定のサーバからダウンロードされるようにしてもよい。また、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
When the distributed storage system S includes a contact node that is an access destination when participating in the distributed storage system S, the contact node's IP address or port number is stored in the
[ノード装置Nnのメイン処理動作]
以上説明した構成からなる本実施形態のノード装置Nnの動作及び作用について、添付図面を参照して説明する。図6は、ノード装置Nnにおける動作のメイン処理動作の手順を示すフローチャートである。言い換えれば、図6は、ユーザノードにおける動作の処理手順を示すフローチャートである。ノード装置Nnにより上述したオーバーレイネットワークOLへの参加処理の要求が行われたとき、ノード装置Nnのメイン動作が実行される。CPU1がメイン動作プログラムを実行することにより、メイン動作処理が遂行される。以下に示す処理は、CPU1により処理される。
[Main processing operation of node device Nn]
The operation and action of the node device Nn of the present embodiment having the above-described configuration will be described with reference to the accompanying drawings. FIG. 6 is a flowchart showing a procedure of the main processing operation of the operation in the node device Nn. In other words, FIG. 6 is a flowchart showing the processing procedure of the operation in the user node. When the node device Nn makes a request for the above-described participation process to the overlay network OL, the main operation of the node device Nn is executed. When the
ステップS101では、参加処理が実行される。参加処理が実行されると、コンタクトノードから、参加処理を実行するノード装置の代表ノード装置のIPアドレスが取得される。取得された代表ノード装置のIPアドレスは、代表ノード情報一時記憶領域31に一時記憶される。
In step S101, a participation process is executed. When the participation process is executed, the IP address of the representative node apparatus of the node apparatus that executes the participation process is acquired from the contact node. The acquired IP address of the representative node device is temporarily stored in the representative node information
ステップS102では、ノード装置Nnの電源がOFFにされたか否かが判定される。電源がOFFにされたと判定された場合、メイン動作処理は終了される。電源がOFFにされたと判定されなかった場合、ステップS103が実行される。 In step S102, it is determined whether or not the node device Nn is turned off. When it is determined that the power is turned off, the main operation process is terminated. If it is not determined that the power has been turned off, step S103 is executed.
ステップS103では、ダウンロード依頼があったか否かが判定される。ダウンロード依頼は、ノード装置Nnのユーザから、所定のコンテンツのダウンロード依頼が入力される。ダウンロード依頼があったと判定された場合、ステップS104が実行される。ダウンロード依頼があったと判定されなかった場合、ステップS102が実行される。 In step S103, it is determined whether or not a download request has been made. As a download request, a request for downloading a predetermined content is input from the user of the node device Nn. If it is determined that there is a download request, step S104 is executed. If it is not determined that there has been a download request, step S102 is executed.
ステップS104では、ノード装置Nnにより保持ノードが検索される。具体的には、
ノード装置Nnによりクエリが生成される。生成されたクエリに基づいて、インデックスキャッシュが取得される。取得されたインデックスキャッシュには、所定のコンテンツを保持する保持ノードのノード情報が登録されている。取得されたインデックスキャッシュは、RAMの所定の記憶領域に一時記憶される。本実施形態のコンピュータとステップS104とは、本発明の検索部と第2受信部と第2取得部との一例である。
In step S104, the node device Nn searches for a holding node. In particular,
A query is generated by the node device Nn. An index cache is obtained based on the generated query. In the acquired index cache, node information of a holding node that holds predetermined content is registered. The acquired index cache is temporarily stored in a predetermined storage area of the RAM. The computer of this embodiment and step S104 are an example of the search part of this invention, a 2nd receiving part, and a 2nd acquisition part.
ステップS105では、インデックスキャッシュに含まれる保持ノード装置の中で、全ての保持ノード装置のネットワーク距離が取得されたか否かが判定される。ネットワーク距離が取得された保持ノードについては、フラグ等により識別される。全ての保持ノードのネットワーク距離が取得されたと判定された場合、ステップS113が実行される。全ての保持ノードのネットワーク距離が取得されたと判定されなかった場合、ステップS106が実行される。 In step S105, it is determined whether the network distances of all the holding node devices among the holding node devices included in the index cache have been acquired. The holding node from which the network distance has been acquired is identified by a flag or the like. When it is determined that the network distances of all holding nodes have been acquired, step S113 is executed. If it is not determined that the network distances of all holding nodes have been acquired, step S106 is executed.
ステップS106では、ネットワーク距離が取得されていない保持ノードが1つ選択される。ネットワーク距離が取得されていない保持ノードは、フラグ等により識別される。 In step S106, one holding node for which the network distance has not been acquired is selected. A holding node whose network distance has not been acquired is identified by a flag or the like.
ステップS107では、ステップS106で選択された保持ノードの代表ノード装置のIPアドレスが取得される。代表ノード装置のIPアドレスは、ステップS104で取得されたインデックス情報に、保持ノードのノード情報に含まれる。取得された保持ノードの代表ノード装置のIPアドレスは、RAM3の所定の記憶領域に一時記憶される。
In step S107, the IP address of the representative node device of the holding node selected in step S106 is acquired. The IP address of the representative node device is included in the node information of the holding node in the index information acquired in step S104. The acquired IP address of the representative node device of the holding node is temporarily stored in a predetermined storage area of the
ステップS108では、距離情報一時記憶領域32に記憶される距離情報の中に、ステップS107で取得された保持ノードの代表ノード装置と、ノード装置Nnの代表ノード装置とのネットワーク距離が存在するか否かが判定される。ネットワーク距離が登録されていると判定された場合、ステップS109が実行される。ネットワーク距離が登録されていなかった場合、ステップS110が実行される。ノード装置Nnの代表ノード装置のIPアドレスは、代表ノード情報一時記憶領域31に一時記憶されている。
In step S108, whether or not the distance information stored in the distance information
ステップS109では、ステップS108で存在すると判定されたネットワーク距離が、距離情報一時記憶領域32から取得されて、保持ノード情報一時記憶領域33に一時記憶される。
In step S109, the network distance determined to exist in step S108 is acquired from the distance information
ステップS110では、ステップS106で選択された保持ノードの代表ノード装置と、ノード装置Nnの代表ノード装置とのネットワーク距離が、ノード装置Nnの代表ノード装置にリクエストされる。具体的には、ネットワーク距離を決定したい保持ノードの代表ノード装置のIPアドレスと、メッセージの送信元であるノード装置NnのIPアドレスとが含まれたリクエストメッセージが、ノード装置Nnの代表ノード装置に送信される。 In step S110, a network distance between the representative node device of the holding node selected in step S106 and the representative node device of the node device Nn is requested to the representative node device of the node device Nn. Specifically, a request message including the IP address of the representative node device of the holding node whose network distance is to be determined and the IP address of the node device Nn that is the message transmission source is sent to the representative node device of the node device Nn. Sent.
ステップS111では、ステップS110でリクエストされたネットワーク距離が受信される。 In step S111, the network distance requested in step S110 is received.
ステップS112では、ステップS111で受信されたネットワーク距離が、保持ノード情報一時記憶領域33に一時記憶される。また、ステップS111で受信されたネットワーク距離が、距離情報一時記憶領域32に一時記憶される。
In step S112, the network distance received in step S111 is temporarily stored in the holding node information
ステップS113では、保持ノード情報一時記憶領域33に一時記憶されたネットワーク距離が近い順番に、保持ノードがソートされる。ソートされた結果が、再度、保持ノード情報一時記憶領域33に一時記憶される。
In step S113, the holding nodes are sorted in the order of the shortest network distances temporarily stored in the holding node information
ステップS114では、ステップS113でソートされ、ネットワーク距離が近い順番から優先的に、コンテンツがダウンロードされる。例えば、ネットワーク距離が近い順番に、保持ノードへ向けてダウンロード要求が送信される。ネットワーク距離が近い順番から、所定の時間間隔を空けて、保持ノードへ向けてダウンロード要求が送信される。ネットワーク距離が等しい保持ノードが複数あった場合、複数の保持ノードの中で、レスポンスが早く返ってきた保持ノードから優先してダウンロードを行っても良い。本実施形態のコンピュータとステップS114とは、本発明のコンテンツ取得部の一例である。 In step S114, the contents are downloaded with priority from the order of the shortest network distances sorted in step S113. For example, a download request is transmitted toward the holding node in the order of short network distance. A download request is transmitted to the holding node at a predetermined time interval from the order of short network distance. When there are a plurality of holding nodes having the same network distance, the download may be performed with priority from the holding nodes whose responses are returned quickly among the plurality of holding nodes. The computer of this embodiment and step S114 are an example of the content acquisition part of this invention.
[代表ノード処理]
図7は、代表ノード処理プログラムに従うノード装置Nnの代表ノード処理を実行するフローチャートである。代表ノード処理は、代表ノード装置の電源がONにされることにより、図6に示すノード装置Nnのメイン動作処理と並行して実行される。まず、ステップS201では、代表ノード装置の電源がOFFにされたか否かが判定される。代表ノード装置の電源がOFFにされたと判定された場合、代表ノード処理は終了される。代表ノード装置の電源がOFFにされたと判定されなかった場合、ステップS202が実行される。
[Representative node processing]
FIG. 7 is a flowchart for executing representative node processing of the node device Nn according to the representative node processing program. The representative node processing is executed in parallel with the main operation processing of the node device Nn shown in FIG. 6 when the power of the representative node device is turned on. First, in step S201, it is determined whether the power of the representative node device has been turned off. If it is determined that the power of the representative node device has been turned off, the representative node process is terminated. If it is not determined that the power of the representative node device is turned off, step S202 is executed.
ステップS202では、ネットワーク距離のリクエストメッセージが受信されたか否かが判定される。ステップS202で受信されるリクエストメッセージは、図6のステップS110で、ノード装置Nnにより送信されたリクエストメッセージである。リクエストメッセージが受信されたと判定されたとき、ステップS203が実行される。リクエストメッセージが受信されたと判定されなかったとき、ステップS201が再度実行される。本実施形態のコンピュータとステップS202とは、本発明の第1受信部の一例である。また、本実施形態のステップS202は、本発明の第1受信ステップの一例である。 In step S202, it is determined whether a network distance request message has been received. The request message received in step S202 is the request message transmitted by the node device Nn in step S110 of FIG. When it is determined that the request message has been received, step S203 is executed. When it is not determined that the request message has been received, step S201 is executed again. The computer of this embodiment and step S202 are an example of the 1st receiving part of this invention. Further, step S202 of the present embodiment is an example of a first reception step of the present invention.
ステップS203では、代表ノード装置の距離情報一時記憶領域32に、リクエストされたネットワーク距離が記憶されているか否かが判定される。ステップS202で受信されたリクエストメッセージが含む保持ノードの代表ノードIPアドレスと、リクエストメッセージを受信した代表ノード装置とのネットワーク距離が、記憶されているかが判定される。リクエストされたネットワーク距離が記憶されていると判定された場合、ステップS204が実行される。リクエストされたネットワーク距離が記憶されていると判定されなかった場合、ステップS205が実行される。本実施形態のコンピュータとステップS203とは、本発明の判定部の一例である。
In step S203, it is determined whether or not the requested network distance is stored in the distance information
ステップS204では、リクエストメッセージを受信した代表ノード装置の距離情報一時記憶領域32に一時記憶されたネットワーク距離が取得される。
In step S204, the network distance temporarily stored in the distance information
ステップS205では、ヒントサーバ10へ、リクエストメッセージが転送される。
In step S <b> 205, the request message is transferred to the
ステップS206では、ステップS205で転送されたリクエストメッセージにより要求されたネットワーク距離が、代表ノード装置により受信される。本実施形態のコンピュータとステップS206とは、本発明の第1取得部の一例である。また、本実施形態のステップS206は、本発明の第1取得ステップの一例である。 In step S206, the network distance requested by the request message transferred in step S205 is received by the representative node device. The computer of this embodiment and step S206 are an example of the 1st acquisition part of this invention. Moreover, step S206 of this embodiment is an example of a first acquisition step of the present invention.
ステップS207では、ステップS206で受信されたネットワーク距離が、距離情報一時記憶領域32に一時記憶される。本発明のステップS207ha,本発明の記憶ステップの一例である。
In step S207, the network distance received in step S206 is temporarily stored in the distance information
ステップ208では、ステップS204で取得されたネットワーク距離、または、ステップS206で受信されたネットワーク距離が、ステップS202でネットワーク距離をリクエストしたノード装置Nnへ送信される。本実施形態のコンピュータとステップS208とは、本発明の送信部の一例である。また、本実施形態のステップS208は、本発明の送信ステップの一例である。 In step 208, the network distance acquired in step S204 or the network distance received in step S206 is transmitted to the node device Nn that requested the network distance in step S202. The computer of this embodiment and step S208 are an example of the transmission part of this invention. Moreover, step S208 of this embodiment is an example of the transmission step of this invention.
本実施形態では、ヒントサーバ10の代わりに、各上位機器群、または、下位機器群に接続された代表ノードが、ネットワーク距離を記憶することができる。この結果、ヒントサーバ10へ、ネットワーク距離のリクエストが集中することを防ぐことができる。
In the present embodiment, instead of the
本実施形態では、各代表ノード装置は、受信したネットワーク距離を記憶できるように構成した。代表ノード装置はネットワーク距離を記憶する代わりに、本実施形態のトポロジー情報を記憶しても良い。この場合、代表ノード装置が記憶するトポロジー情報は、ユーザノード、または、代表ノード装置によりネットワーク距離が決定されるため必要なトポロジー情報である。この結果、ヒントサーバ10が記憶するトポロジー情報を、代表ノード装置に分散して保存することができるため、ヒントサーバ10への負荷集中を防ぐことができる。
In the present embodiment, each representative node device is configured to be able to store the received network distance. The representative node device may store the topology information of this embodiment instead of storing the network distance. In this case, the topology information stored in the representative node device is necessary topology information because the network distance is determined by the user node or the representative node device. As a result, the topology information stored in the
(変形例)
以下、本実施形態の変形例について説明する。変形例では、上位機器群、または、下位機器群夫々にプライベートヒントサーバが備えられている。そのため、プライベートヒントサーバは、プライベートヒントサーバが接続する上位機器群または、下位機器群のトポロジー情報を記憶している。この場合、図7に示すステップS205では、図7に示す代表ノード処理を実行する代表ノード装置が接続する上位機器群、または、下位機器群に接続されるプライベートヒントサーバへ、ネットワーク距離がリクエストされる。
(Modification)
Hereinafter, modifications of the present embodiment will be described. In the modification, a private hint server is provided in each of the upper device group and the lower device group. Therefore, the private hint server stores topology information of the upper device group or the lower device group to which the private hint server is connected. In this case, in step S205 shown in FIG. 7, the network distance is requested to the higher level device group connected to the representative node device that executes the representative node process shown in FIG. 7 or the private hint server connected to the lower level device group. The
以下、図8を参照して、プライベートヒントサーバの電気的構成について説明する。図8は、プライベートヒントサーバの電気的構成を示すブロック図である。図8に示すように、プライベートヒントサーバには、プライベートヒントサーバを制御するCPU20が備えられている。CPU20には、HDD17とRAM18と通信部19とがそれぞれ電気的に接続されている。HDD17、RAM18などの記憶手段とCPU20とは、プライベートヒントサーバのコンピュータを構成している。そのコンピュータは、プライベートヒントサーバの動作を制御処理する。ヒントサーバ10も、プライベートヒントサーバと同様の電気的構成である。
Hereinafter, the electrical configuration of the private hint server will be described with reference to FIG. FIG. 8 is a block diagram showing an electrical configuration of the private hint server. As shown in FIG. 8, the private hint server includes a
HDD17は、プログラム記憶領域171を含む。プログラム記憶領域171は、プライベートヒントサーバメイン動作プログラム記憶領域172を含む。プライベートヒントサーバメイン動作プログラム記憶領域172は、プライベートヒントサーバを制御するためのプログラム情報を記憶する。なお、HDD17に記憶されるプログラムは、例えば、ネットワークNW上の所定のサーバからダウンロードされるようにしてもよい。また、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
The
以下、代表ノード装置からネットワーク距離のリクエストを受信したプライベートヒントサーバの動作処理について、図9を参照して説明する。 Hereinafter, the operation processing of the private hint server that has received the network distance request from the representative node device will be described with reference to FIG.
図9は、プライベートヒントサーバメイン動作処理を示すフローチャートである。プライベートヒントサーバの電源がONにされることにより、プライベートヒントサーバメイン動作処理が実行される。 FIG. 9 is a flowchart showing the private hint server main operation process. When the private hint server is powered on, the private hint server main operation process is executed.
まず、ステップS301では、プライベートヒントサーバの電源がOFFにされたか否かが判定される。プライベートヒントサーバの電源がOFFにされたと判定された場合、プライベートヒントサーバメイン動作処理は終了される。プライベートヒントサーバの電源がOFFにされたと判定されなかった場合、ステップS302が実行される。 First, in step S301, it is determined whether or not the private hint server is turned off. When it is determined that the private hint server is powered off, the private hint server main operation process is terminated. If it is not determined that the private hint server is powered off, step S302 is executed.
ステップS302では、代表ノード装置から送信、または、転送されたリクエストメッセージが受信されたか否かが判定される。ステップS302で受信されるリクエストメッセージは、図6のステップS110で、ノード装置Nnにより送信されたリクエストメッセージである。リクエストメッセージが受信されたと判定されたとき、ステップS303が実行される。リクエストメッセージが受信されたと判定されなかったとき、ステップS301が再度実行される。なお、下位の機器群に接続されるプライベートヒントサーバから送信、または、転送されたリクエストメッセージが、ステップS302で受信されても良い。 In step S302, it is determined whether a request message transmitted or transferred from the representative node device has been received. The request message received in step S302 is the request message transmitted by the node device Nn in step S110 of FIG. When it is determined that the request message has been received, step S303 is executed. If it is not determined that the request message has been received, step S301 is executed again. Note that a request message transmitted or transferred from a private hint server connected to a lower device group may be received in step S302.
ステップS303では、ステップS302で受信された保持ノードの代表ノード装置のIPアドレスが、プライベートヒントサーバの担当範囲内のIPアドレスであるか否かが判定される。変形例では、上位機器群、または、下位機器群夫々にプライベートヒントサーバが備えられている。そのため、プライベートヒントサーバは、プライベートヒントサーバが接続する上位機器群または、下位機器群のトポロジー情報を記憶している。ステップS303では、リクエストメッセージに含まれる保持ノードの代表ノード装置のIPアドレスが、リクエストメッセージを受信したプライベートヒントサーバが接続する上位機器群、または、下位機器群のIPアドレス範囲に含まれるか否かが判定される。保持ノードにおける代表ノード装置のIPアドレスが担当範囲内であると判定されたとき、ステップS304が実行される。代表ノード装置のIPアドレスが担当範囲内であると判定されなかったとき、ステップS305が実行される。 In step S303, it is determined whether or not the IP address of the representative node device of the holding node received in step S302 is an IP address within the assigned range of the private hint server. In the modification, a private hint server is provided in each of the upper device group and the lower device group. Therefore, the private hint server stores topology information of the upper device group or the lower device group to which the private hint server is connected. In step S303, whether or not the IP address of the representative node device of the holding node included in the request message is included in the IP address range of the upper device group or lower device group to which the private hint server that has received the request message is connected. Is determined. When it is determined that the IP address of the representative node device in the holding node is within the assigned range, step S304 is executed. When it is not determined that the IP address of the representative node device is within the assigned range, step S305 is executed.
ステップS304では、プライベートヒントサーバが記憶しているトポロジー情報に基づいて、保持ノードの代表ノード装置と、ユーザノードの代表ノード装置とのネットワーク距離が決定される。決定されたネットワーク距離は、RAM18の所定の記憶領域に一時記憶される。
In step S304, the network distance between the representative node device of the holding node and the representative node device of the user node is determined based on the topology information stored in the private hint server. The determined network distance is temporarily stored in a predetermined storage area of the
ステップS305では、ステップS302でリクエストメッセージを受信したプライベートヒントサーバに、上位機器群が存在するか否かが判定される。ステップS302でリクエストメッセージを受信したプライベートヒントサーバが下位機器群に接続する場合、上位機器群が存在すると判定される。ステップS302でリクエストメッセージを受信したプライベートヒントサーバが下位機器群以外に接続する場合、上位機器群が存在しないと判定される。上位機器群が存在すると判定される場合、ステップS306が実行される。上位機器群が存在しないと判定された場合、ステップS307が実行される。 In step S305, it is determined whether a higher-level device group exists in the private hint server that has received the request message in step S302. If the private hint server that received the request message in step S302 connects to the lower device group, it is determined that the upper device group exists. If the private hint server that received the request message in step S302 connects to a device other than the lower device group, it is determined that there is no higher device group. If it is determined that a higher device group exists, step S306 is executed. If it is determined that the upper device group does not exist, step S307 is executed.
ステップS306では、上位機器群のプライベートヒントサーバへリクエストメッセージが転送される。 In step S306, the request message is transferred to the private hint server of the higher-level device group.
ステップS307では、ヒントサーバ10へリクエストメッセージが転送される。
In step S307, the request message is transferred to the
ステップS308では、ステップS306でリクエストメッセージを転送した上位機器群のプライベートヒントサーバ、または、ヒントサーバ10から、ネットワーク距離が受信される。受信されるネットワーク距離は、ステップS306,または、ステップS307で要求したネットワーク距離である。受信されたネットワーク距離は、RAM18の所定の記憶領域に一時記憶される。
In step S308, the network distance is received from the private hint server or the
ステップS309では、ステップS304で決定されたネットワーク距離、または、ステップS308で受信したネットワーク距離が、ステップS302でネットワーク距離をリクエストした代表ノード装置、または、下位機器群に接続されるプライベートヒントサーバへ送信される。 In step S309, the network distance determined in step S304 or the network distance received in step S308 is transmitted to the representative node device that requested the network distance in step S302 or a private hint server connected to the lower-level device group. Is done.
変形例では、各上位機器群、または、下位機器群ごとに、プライベートヒントサーバが設置され、ヒントサーバ10が保存するトポロジー情報が分散して保存されている。この結果、プライベートヒントサーバが各上位機器群、または、下位機器群に設置されるため、各機器群のトポロジー情報をできる限り、外部へ公開することを防ぐことができると共に、ヒントサーバ10へのアクセス負荷をプライベートヒントサーバに分散させることができる。
In the modification, a private hint server is installed for each upper device group or lower device group, and topology information stored by the
また、上記実施形態においては、オーバーレイネットワークOLに、DHTを利用したピアツーピアネットワークを適用したが、これに限られるものではない。DHTを利用したルーティングテーブルが用いられても良い。例えば、他のオーバーレイネットワークを用いたシステムが適用されてもよい。DHTを利用しないピアツーピアシステムとしては、例えば、ハイブリッド型のピアツーピアシステムがある。 Moreover, in the said embodiment, although the peer to peer network using DHT was applied to overlay network OL, it is not restricted to this. A routing table using DHT may be used. For example, a system using another overlay network may be applied. As a peer-to-peer system that does not use DHT, for example, there is a hybrid peer-to-peer system.
1 CPU
2 HDD
3 RAM
4 デコーダ部
5 映像処理部
6 ディスプレイ
7 音声処理部
8 スピーカ
9 通信部
10 ヒントサーバ
11a、11b、11c、11d、11e プライベートヒントサーバ
13a、13b、13c 上位機器群
14a、14b 下位機器群
15 局舎モデム
16 CPU
17 HDD
18 RAM
19 通信部
21 プログラム記憶領域
22 メイン処理動作プログラム記憶領域
23 代表ノード処理プログラム記憶領域
31 代表ノード情報一時記憶領域
32 距離情報一時記憶領域
33 保持ノード情報一時記憶領域
171 プログラム記憶領域
172 ヒントサーバメイン動作処理プログラム記憶領域
S 分散保存システム
X IX
NW ネットワーク
OL オーバーレイネットワーク
BR ブロードバンドルータ
Nn ノード装置
1 CPU
2 HDD
3 RAM
4
17 HDD
18 RAM
DESCRIPTION OF
171
NW network OL overlay network BR broadband router Nn node equipment
Claims (6)
前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、
から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムであって、
前記分散保存システムは、
前記複数のノード装置と、
前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に夫々代表して接続される代表ノード装置と、
前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置と、
を備え、
前記代表ノード装置は、
前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信部と、
前記第1受信部により受信された前記メッセージに基づいて、前記メッセージに含まれる前記所在情報が示す前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記情報処理装置から取得する第1取得部と、
前記第1取得部により取得した前記第1接続情報を記憶する記憶部と、
前記第1取得部により取得された前記第1接続情報を、前記第1受信部によりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信部と、
前記第1受信部により受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定部と、を備え、
前記判定部により、前記第1接続情報が記憶されていると判定されたとき、前記送信部は、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、
前記判定部により、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得部は、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶部は、前記第1取得部により取得された前記第1接続情報を記憶することを特徴とする分散保存システム。 A plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted and received on the network;
A plurality of secondary device groups that are located under the primary device group and provide a communication function by including one or more relay devices;
A distributed storage system that distributes and stores a plurality of contents by an overlay network configured by a plurality of node devices connected to the primary device group or the secondary device group in a network configured by:
The distributed storage system includes:
The plurality of node devices;
Among the plurality of node devices, a representative node device respectively representatively connected to the primary device group and the second device group,
An information processing apparatus storing a connection relationship between the primary device group and the secondary device group in the network;
With
The representative node device is:
Among the plurality of node devices, a message that is a holding node that holds desired content and includes location information indicating the location of the representative node device on the network in the holding node is sent to the plurality of node devices. A first receiving unit for receiving from any one of the following:
Based on the message received by the first reception unit, the primary device group or the secondary device group to which the representative node device indicated by the location information included in the message is connected is connected. A first acquisition unit for acquiring connection information from the information processing apparatus;
A storage unit for storing the first connection information acquired by the first acquisition unit;
A transmission unit that transmits the first connection information acquired by the first acquisition unit to a transmission source node device that is a transmission source of the message that has received the message by the first reception unit;
A determination unit that determines whether or not the first connection information of the representative node device indicated by the location information included in the message received by the first reception unit is stored in the storage unit;
When the determination unit determines that the first connection information is stored, the transmission unit transmits the first connection information stored in the storage unit to the transmission source node device,
When the determination unit does not determine that the first connection information is stored, the first acquisition unit acquires the first connection information from the information processing apparatus, and the storage unit A distributed storage system , wherein the first connection information acquired by the first acquisition unit is stored .
前記ノード装置は、
前記複数のノード装置の中から、所望のコンテンツを保持する1以上の前記保持ノード装置の前記所在情報を検索する検索部と、
前記検索部による検索結果として、前記保持ノードの前記所在情報と共に、前記コンテンツ保持ノードの前記代表ノード装置の前記所在情報を受信する第2受信部と、
前記第2受信部により受信した前記保持ノードにおける前記代表ノード装置の前記所在情報に基づいて、前記保持ノードにおける前記代表ノード装置の前記第1接続情報を、前記代表ノードから取得する第2取得部と、
を備えることを特徴とする請求項1に記載の分散保存システム。 The plurality of node devices acquire the location information of the representative node device of the primary device group or the secondary device group to which the plurality of node devices are connected,
The node device is
A search unit that searches the location information of one or more holding node devices holding desired content from the plurality of node devices;
A second reception unit that receives the location information of the representative node device of the content holding node together with the location information of the holding node as a search result by the search unit;
A second acquisition unit that acquires, from the representative node, the first connection information of the representative node device in the holding node based on the location information of the representative node device in the holding node received by the second receiving unit. When,
The distributed storage system according to claim 1, further comprising:
前記ノード装置は、
前記第2取得部により取得された前記保持ノードにおける前記代表ノード装置の前記第1接続情報と、前記第2接続情報とに基づいて、前記検索部により検索した前記ノード装置とネットワーク上で距離の近い前記コンテンツ保持ノードから、前記所定のコンテンツを取得するコンテンツ取得部と、
を備えることを特徴とする請求項2に記載の分散保存システム。 The plurality of node devices acquire second connection information indicating the primary device group or the secondary device group to which the plurality of node devices are connected,
The node device is
Based on the first connection information of the representative node device in the holding node acquired by the second acquisition unit and the second connection information, the distance between the node device searched by the search unit and the network is determined. A content acquisition unit for acquiring the predetermined content from the nearby content holding node;
The distributed storage system according to claim 2 , further comprising:
前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、
から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムの中で、前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に夫々代表して接続される代表ノード装置であって、
前記代表ノード装置は、
前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信部と、
前記第1受信部により受信された前記メッセージに基づいて、前記メッセージが含む前記所在情報が示す前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置から取得する第1取得部と、
前記第1取得部により取得した前記第1接続情報を記憶する記憶部と、
前記第1取得部により取得された前記第1接続情報を、前記第1受信部によりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信部と、
前記第1受信部により受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定部と、を備え、
前記判定部により、前記第1接続情報が記憶されていると判定されたとき、前記送信部は、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、
前記判定部により、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得部は、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶部は、前記第1取得部により取得された前記第1接続情報を記憶することを特徴とする代表ノード装置。 A plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted and received on the network;
A plurality of secondary device groups that are located under the primary device group and provide a communication function by including one or more relay devices;
In a distributed storage system that distributes and stores a plurality of contents by an overlay network configured by a plurality of node devices connected to the primary device group or the secondary device group in a network configured by: among the plurality of node devices, a representative node device respectively representatively connected to the primary device group and the second device group,
The representative node device is:
Among the plurality of node devices, a message that is a holding node that holds desired content and includes location information indicating the location of the representative node device on the network in the holding node is sent to the plurality of node devices. A first receiving unit for receiving from any one of the following:
Based on the message received by the first receiver, the first connection group indicating the primary device group or the secondary device group to which the representative node device indicated by the location information included in the message is connected A first acquisition unit that acquires information from an information processing apparatus that stores a connection relationship between the primary device group and the secondary device group in the network;
A storage unit for storing the first connection information acquired by the first acquisition unit;
A transmission unit that transmits the first connection information acquired by the first acquisition unit to a transmission source node device that is a transmission source of the message that has received the message by the first reception unit;
A determination unit that determines whether or not the first connection information of the representative node device indicated by the location information included in the message received by the first reception unit is stored in the storage unit;
When the determination unit determines that the first connection information is stored, the transmission unit transmits the first connection information stored in the storage unit to the transmission source node device,
When the determination unit does not determine that the first connection information is stored, the first acquisition unit acquires the first connection information from the information processing apparatus, and the storage unit The representative node device stores the first connection information acquired by the first acquisition unit .
前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、
から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムの中で、前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に夫々代表して接続される代表ノード装置のコンピュータに、
前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信ステップと、
前記第1受信ステップにより受信された前記メッセージに基づいて、前記メッセージが含む前記所在情報が示す前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置から取得する第1取得ステップと、
前記第1取得ステップにより取得した前記第1接続情報を記憶部に記憶させる記憶ステップと、
前記第1取得ステップにより取得された前記第1接続情報を、前記第1受信ステップによりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信ステップと、
前記第1受信ステップにより受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定ステップと、を実行させ、
前記判定ステップにより、前記第1接続情報が記憶されていると判定されたとき、前記送信ステップは、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、
前記判定ステップにより、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得ステップは、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶ステップは、前記第1取得ステップにより取得された前記第1接続情報を前記記憶部に記憶させること、
を前記コンピュータに実行させることを特徴とするプログラム。 A plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted and received on the network;
A plurality of secondary device groups that are located under the primary device group and provide a communication function by including one or more relay devices;
In a distributed storage system that distributes and stores a plurality of contents by an overlay network configured by a plurality of node devices connected to the primary device group or the secondary device group in a network configured by: Among a plurality of node devices, a computer of a representative node device connected as a representative to the primary device group and the secondary device group,
Among the plurality of node devices, a message that is a holding node that holds desired content and includes location information indicating the location of the representative node device on the network in the holding node is sent to the plurality of node devices. A first receiving step for receiving from either of them;
Based on the message received in the first reception step, the primary device group or the secondary device group to which the representative node device indicated by the location information included in the message is connected is connected. A first acquisition step of acquiring information from an information processing apparatus storing a connection relationship between the primary device group and the secondary device group in the network;
A storage step of storing the first connection information acquired in the first acquisition step in a storage unit;
A transmission step of transmitting the first connection information acquired in the first acquisition step to a transmission source node device that is a transmission source of the message that has received the message in the first reception step;
A determination step of determining whether or not the first connection information of the representative node device indicated by the location information included in the message received by the first reception step is stored in the storage unit; ,
When it is determined by the determination step that the first connection information is stored, the transmission step transmits the first connection information stored in the storage unit to the transmission source node device,
When the determination step does not determine that the first connection information is stored, the first acquisition step acquires the first connection information from the information processing apparatus, and the storage step includes Storing the first connection information acquired in the first acquisition step in the storage unit;
That causes the computer to execute the program.
前記1次機器群の下位に位置し、1以上の前記中継機器を備えることで通信機能を提供する複数の2次機器群と、
から構成されるネットワークに、前記1次機器群または前記2次機器群に接続される複数のノード装置により構成されるオーバーレイネットワークにより複数のコンテンツを分散して保存する分散保存システムであって、前記分散保存システムが含む前記複数のノード装置の中で、前記1次機器群及び前記2次機器群に夫々代表して接続される代表ノード装置の通信方法であって、
前記複数のノード装置の中で、所望のコンテンツを保持する保持ノードであって、前記保持ノードにおける前記代表ノード装置の前記ネットワーク上における所在を示す所在情報を含むメッセージを、前記複数のノード装置のいずれかから受信する第1受信ステップと、
前記第1受信ステップにより受信された前記メッセージに基づいて、前記メッセージが含む前記所在情報が示す前記保持ノードにおける前記代表ノード装置が接続される前記1次機器群、または、前記2次機器群を示す第1接続情報を、前記ネットワークにおける前記1次機器群と前記2次機器群との接続関係を記憶した情報処理装置から取得する第1取得ステップと、
前記第1取得ステップにより取得された前記第1接続情報を記憶部に記憶させる記憶ステップと、
前記第1取得ステップにより取得された前記第1接続情報を、前記第1受信ステップによりメッセージを受信したメッセージの送信元である送信元ノード装置へ送信する送信ステップと、
前記第1受信ステップにより受信されたメッセージに含まれる前記所在情報が示す前記代表ノード装置の前記第1接続情報が、前記記憶部に記憶されているか否かを判定する判定ステップと、を含み、
前記判定ステップにより、前記第1接続情報が記憶されていると判定されたとき、前記送信ステップは、前記記憶部に記憶された前記第1接続情報を、前記送信元ノード装置へ送信し、
前記判定ステップにより、前記第1接続情報が記憶されている判定されなかったとき、前記第1取得ステップは、前記第1接続情報を前記情報処理装置から取得し、且つ、前記記憶ステップは、前記第1取得ステップにより取得された前記第1接続情報を前記記憶部に記憶させることを特徴とする通信方法。 A plurality of primary device groups that provide a communication function by providing one or more relay devices that relay information transmitted and received on the network;
A plurality of secondary device groups that are located under the primary device group and provide a communication function by including one or more relay devices;
A distributed storage system that distributes and stores a plurality of contents by an overlay network configured by a plurality of node devices connected to the primary device group or the secondary device group in a network configured by: among the plurality of node devices distributed storage system comprises a communication method of the representative node device respectively representatively connected to the primary device group and the second device group,
Among the plurality of node devices, a message that is a holding node that holds desired content and includes location information indicating the location of the representative node device on the network in the holding node is sent to the plurality of node devices. A first receiving step for receiving from either of them;
Based on the message received in the first receiving step, the primary device group or the secondary device group to which the representative node device in the holding node indicated by the location information included in the message is connected A first acquisition step of acquiring, from an information processing apparatus that stores a connection relationship between the primary device group and the secondary device group in the network;
A storage step of storing the first connection information acquired in the first acquisition step in a storage unit;
A transmission step of transmitting the first connection information acquired in the first acquisition step to a transmission source node device that is a transmission source of the message that has received the message in the first reception step;
A determination step of determining whether or not the first connection information of the representative node device indicated by the location information included in the message received by the first reception step is stored in the storage unit,
When it is determined by the determination step that the first connection information is stored, the transmission step transmits the first connection information stored in the storage unit to the transmission source node device,
When the determination step does not determine that the first connection information is stored, the first acquisition step acquires the first connection information from the information processing apparatus, and the storage step includes The communication method , wherein the first connection information acquired in the first acquisition step is stored in the storage unit .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010192241A JP5494361B2 (en) | 2010-08-30 | 2010-08-30 | Distributed storage system, representative node device, notification method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010192241A JP5494361B2 (en) | 2010-08-30 | 2010-08-30 | Distributed storage system, representative node device, notification method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012049966A JP2012049966A (en) | 2012-03-08 |
JP5494361B2 true JP5494361B2 (en) | 2014-05-14 |
Family
ID=45904290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010192241A Expired - Fee Related JP5494361B2 (en) | 2010-08-30 | 2010-08-30 | Distributed storage system, representative node device, notification method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5494361B2 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BRPI0507051A (en) * | 2004-01-23 | 2007-06-12 | Tiversa Inc | method for optimal use of a network for |
JP3987512B2 (en) * | 2004-07-15 | 2007-10-10 | 株式会社東芝 | Message delivery method, computer and program |
JP2010009448A (en) * | 2008-06-30 | 2010-01-14 | Nec Corp | Distributed information arrangement system |
JP5194233B2 (en) * | 2009-02-25 | 2013-05-08 | 日本電信電話株式会社 | Route control method and node device |
US8332463B2 (en) * | 2009-05-27 | 2012-12-11 | Brother Kogyo Kabushiki Kaisha | Distributed storage system, connection information notifying method, and recording medium in which distributed storage program is recorded |
-
2010
- 2010-08-30 JP JP2010192241A patent/JP5494361B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012049966A (en) | 2012-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4371056B2 (en) | Node device, network participation processing program, network participation processing method, etc. | |
US20070283043A1 (en) | Information delivery system, delivery request program, transfer program, delivery program, and the like | |
CN105721311A (en) | System and method for efficient name-based content routing using link-state information in information-centric networks | |
JP2010028551A (en) | Content distributed storage system, node device, node processing program, and address information change notifying method | |
JP4692414B2 (en) | Communication system, content data transmission availability determination method, node device, node processing program, etc. | |
JP2007200203A (en) | Information distribution system, re-registration message transmission method, node device, and node processing program | |
JP5136585B2 (en) | Information communication system, node device, information processing method, and information processing program | |
JP5370269B2 (en) | Distributed storage system, connection information notification method and program for distributed storage system | |
JP2006195744A (en) | Information distribution system, distribution request program, transfer program, distribution program, and the like | |
JP5532649B2 (en) | Node device, node processing program, and content storage method | |
WO2007119422A1 (en) | Information communication system, information communication method, node device contained in information communication system, and recording medium containing information processing program | |
JP5212292B2 (en) | Information communication system, node device, node device confirmation method and program | |
JP5494361B2 (en) | Distributed storage system, representative node device, notification method, and program | |
JP5434268B2 (en) | Distributed storage system, data file distributed storage method and program | |
JP5494550B2 (en) | Management device, management system, management method, and management program | |
JP4770804B2 (en) | Overlay network type communication system, overlay network type node device and program | |
JP2008236538A (en) | Tree type broadcast system, method for broadcasting content, broadcast management apparatus, and broadcast management processing program | |
JP2010026866A (en) | Content distribution storage system, total evaluation value management device, management processing program, node device and total evaluation value management method | |
JP2010108391A (en) | Node device, node processing program, and usage situation management method | |
JP5353789B2 (en) | Node device, information communication system, message transmission method and program | |
JP5370324B2 (en) | First node device, content distributed storage system, content distributed storage method and program | |
JP5907132B2 (en) | Relay device, program, and communication system | |
JP5370315B2 (en) | Communication system, information processing apparatus, information processing program, and location information registration method | |
JP2012212314A (en) | Information processing unit, information communication method, information management method, and program | |
JP2012178119A (en) | Communication system, information processor, management method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120920 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130620 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130716 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130906 |
|
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: 20140204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5494361 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |