Method for on demand distributed hash table update
First Claim
1. A method for joining a network device to a peer-to-peer network that includes a plurality of nodes, each node having a node ID, each respective node of the peer-to-peer network being associated with a different network device, the method comprising the steps of:
- a) looking up at least one neighboring node;
b) sending a joining message from a joining node that is joining the peer-to-peer network to the at least one neighboring node of the joining node, the at least one neighboring node of the joining node being determined from the node ID of the joining node, the joining message including information relating to the joining node;
c) joining the joining node to the peer-to-peer network by (c-1) updating each of said at least one neighboring node exclusive of any other nodes of the plurality of nodes with the information from the joining message, (c-2) sending reply messages from each of said at least one neighboring node to the joining node, and (c-3) updating the joining node with information from each of said at least one neighboring node, exclusive of any other nodes of the plurality of nodes.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for managing communication in a peer-to-peer network in which overlay information is updated on-demand such that neighboring node information is updated at least periodically and other overlay information is updated on-demand (from standard communications). For example, in one aspect, the network includes a plurality of nodes, and the method includes looking up at least one neighboring node, sending a joining message from a joining node to the neighboring node, the joining message including information relating to the joining node, joining the joining node to the network by updating each neighboring node exclusive of any other nodes of the plurality of nodes, sending reply messages from each neighboring node to the joining node, and updating the joining node with information from each neighboring node, exclusive of any other nodes of the plurality of nodes.
101 Citations
28 Claims
-
1. A method for joining a network device to a peer-to-peer network that includes a plurality of nodes, each node having a node ID, each respective node of the peer-to-peer network being associated with a different network device, the method comprising the steps of:
-
a) looking up at least one neighboring node;
b) sending a joining message from a joining node that is joining the peer-to-peer network to the at least one neighboring node of the joining node, the at least one neighboring node of the joining node being determined from the node ID of the joining node, the joining message including information relating to the joining node;
c) joining the joining node to the peer-to-peer network by (c-1) updating each of said at least one neighboring node exclusive of any other nodes of the plurality of nodes with the information from the joining message, (c-2) sending reply messages from each of said at least one neighboring node to the joining node, and (c-3) updating the joining node with information from each of said at least one neighboring node, exclusive of any other nodes of the plurality of nodes. - View Dependent Claims (2, 3, 27)
-
-
4. A method for a network device to leave a peer-to-peer network that includes a plurality of nodes, each node having a node ID, each respective node of the peer-to-peer network being associated with a different network device, the method comprising the steps of:
-
a) sending, from a leaving node that is leaving the peer-to-peer network, a leave message, including information relating to the leaving node, to at least one neighboring node of the leaving node, the at least one neighboring node being at least one node known to the leaving node; and
b) updating the at least one neighboring node exclusive of any other node of the plurality of nodes with the information from the leave message. - View Dependent Claims (5)
-
-
6. A method for a network device to leave a peer-to-peer network that includes a plurality of nodes, each node having a node ID, each respective node of the peer-to-peer network being associated with a different network device, the method comprising the steps of:
a) responsive to a lack of a reply to at least one message sent from at least one neighboring node of a leaving node to the leaving node, updating the respective at the at least one neighboring node, exclusive of other nodes of the plurality of nodes, that the leaving node has left the peer-to-peer network. - View Dependent Claims (7)
-
8. A method for a network device to leave a peer-to-peer network that includes a plurality of nodes, each node having a node ID, each respective node of the peer-to-peer network being associated with a different network device, the method comprising the steps of:
a) responsive to non-reception of any message from the leaving node by at least one neighboring node for more than a threshold period, updating the at least one neighboring node , exclusive of other nodes of the plurality of nodes, that has not received any message from the leaving node that the leaving node has left the peer-to-peer network. - View Dependent Claims (9)
-
10. A method for communicating between or among network devices of a peer-to-peer network that includes a plurality of nodes, each node having a node ID and managing resources in a portion of the peer-to-peer network based on the node ID, each respective node of the peer-to-peer network being associated with a different network device, each node including a routing table with entries indicating a plurality of node IDs of nodes corresponding to respective portions of the peer-to-peer network, the method comprising the steps of:
-
a) sending a message from a first node to a second node, the selection of the second node as the recipient of the message being based on which one of the node IDs in the routing table of the first node is a closest node ID to a resource ID of a resource to be located;
b) determining at the second node whether the second node neighbors the resource ID and whether the second node has a resource corresponding to the resource ID;
c) if the second node neighbors the resource ID and the second node does not have the resource corresponding to the resource ID, determining at the second node whether the second node is responsible for the resource ID; and
d) if the second node is not responsible for the resource ID, sending a reply message indicating a routing failure to the first node and including alternative routing information based on the which one of the node IDs in the routing table of the second node is a closest node ID to the resource ID of the resource to be located. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 28)
-
-
19. A method for communicating between or among network devices of a peer-to-peer network that includes a plurality of nodes, each node having a node ID and managing resources in a portion of the peer-to-peer network based on the node ID, each respective node of the peer-to-peer network being associated with a different network device, each node including a routing table with entries indicating a plurality of node IDs of nodes corresponding to respective portions of the peer-to-peer network, the method comprising the steps of:
-
a) sending a message from a first node to a second node, the selection of the second node as the recipient of the message being based on which one of the node IDs in the routing table of the first node is a closest node ID to a resource ID of a resource to be located;
b) including in the sent message in step (a) information indicating the node or nodes used to locate the resource, as a tracking history of the message;
c) responsive to receipt of the message by the second node, determining at the second node whether the node ID of the second node neighbors the resource ID of the resource that is being located;
d) if the node ID of the second node does not neighbor the resource ID of the node being located, determining at the second node whether the node ID in the routing table of the second node that is a closest node ID to the resource ID of the resource to be located is a node that is in the tracking history of the message; and
e) if the node ID in the routing table of the second node that is a closest node ID to the resource ID of the resource to be located matches any node that is in the tracking history of the message;
routing the message to an other node in the routing table of the second node that does not match to any node that is in the tracking history of the message. - View Dependent Claims (20, 21, 22)
-
-
23. A method for communicating between or among network devices of a peer-to-peer network that includes a plurality of nodes, each node having a node ID, each respective node of the peer-to-peer network being associated with a different network device, each node including a routing table with entries indicating a plurality of node IDs of nodes corresponding to respective portions of the peer-to-peer network, the method comprising the steps of:
-
a) sending a message from a previous node to a subsequent node based on the node ID in the routing table of a previous node;
b) determining whether the subsequent node is inactive;
c) if the subsequent node is inactive, c-1) adding information to the message indicating the inactive status of the node determined to be inactive in step (b), and c-2) resending the message from a previous node to an alternative node that is active based on an other node ID in the routing table of a previous node; and
d) sending the message from one of the subsequent node or the alternative node to a further node that does not match any node ID indicated in the message to be inactive. - View Dependent Claims (24, 25, 26)
-
Specification