Patent ID: 7649884

Claim:
A method for collaborative multicast routing among a set of nodes, including nodes acting as a root node, intermediate nodes, and member nodes, comprising establishing a multicast tree by: transmitting an advertisement message from the root node to other nodes in the set of nodes, including a forward path track; receiving a message at a receiving node among the set of nodes; determining a node type for the receiving node based on an action of the receiving node, and: if the receiving node is acting as a group member node: determining whether the message is an advertisement message, and if the message is an advertisement message, transmitting a reply message including a backward path track; otherwise wait; if the receiving node is acting as an intermediate node: determining whether the message is an advertisement message, and if the message is an advertisement message, appending an address of the receiving node to the forward path track and transmitting an advertisement message including the updated forward path track; otherwise: if the message is a reply message, appending an address of the receiving node to the backward path track and transmitting a reply message including the updated backward path track; and if the receiving node is acting as a root node: determining whether the message is an advertisement message, and if the message is an advertisement message, wait; if the message is a reply message, appending an address of the receiving node to the backward path track.