Patent ID: 7729280

Claim:
A method of broadcasting a message in an overlay network, comprising: assigning a unique key value to each of a plurality of nodes in an overlay network; causing each node to store in a finger table at least one reference to another node, each reference in the finger table corresponding to a node nearest to a key value specified by an offset from the key value of the respective node; determining an End ID value for a message to be broadcast to each node in the overlay network, the End ID value specifying a range of key values for nodes that should each receive a copy of the broadcast message; and from a sending node in the overlay network, sending a copy of the message to each receiving node having a reference in the finger table of the sending node with a key value less than the determined End ID, wherein each receiving node is able to further broadcast the message to other nodes in the overlay network by selecting a reference to a finger node from the respective finger table and determining if there is a following entry of the finger table including a key value adjacent to the key value of the selected finger table entry according to a node order, an occurrence of such a following entry causing the End ID to be updated to the key value associated with the following entry, and forwarding a copy of the broadcast message with the End ID to the finger node of the selected entry in response to a determination that the key value of the selected finger table entry is within the range of key values specified by the End ID.