Patent ID: 8321586

Claim:
A distributed storage system comprising an overlay network which is formed by participation of a plurality of node devices connected to a network, in which replica data of a plurality of contents is stored in a plurality of the node devices in a distributed manner and the replica data can be transmitted and received among the node devices, wherein a transmitting node device comprises: a first storing unit configured to store a first routing table used for transferring a message among the plurality of node devices participating in the overlay network, the first routing table registering address information and node identification information of a plurality of first specific node devices participating in the overlay network, as transfer candidates of transfer destinations of the message; a detecting unit configured to detect a change in address information of the transmitting node device; a first selecting unit configured to select at least one node device from the first routing table, if a change in address information is detected by the detecting unit; and a notifying unit configured to transmit an address change/notification message to the node device selected by the first selecting unit via the network, based on address information of the selected node device, the address change notification message including the changed address information and node identification information of the transmitting node device, and wherein a receiving node device, which receives the address change notification message, comprises: a second storing unit configured to store a second routing table used for transferring a message among the plurality of node devices participating in the overlay network, the second routing table registering address information and node identification information of a plurality of second specific node devices participating in the overlay network, as transfer candidates of transfer destinations of the message; an updating unit configured to update the address information stored in the second storing unit with the address information included in the received message, if the node identification information included in the received message has been already stored in the second storing unit and the address information stored in the second storing unit in association with the already stored node identification information is different from the address information included in the received message; a second selecting unit configured to select one node device from the second routing table, based on a result of comparison between the node identification information included in the received message and node identification information registered in the second routing table; and a message transfer unit configured to transfer the received message to the node device selected by the second selecting unit via the network, based on the address information of the selected node device.