Patent ID: 7630370

Claim:
A method of processing in a multicast group, the method comprising the steps of: maintaining, by a first device, a preferred peer cache (PPC) associated with the multicast group comprising one or more nodes, wherein the PPC comprises one or more preferred peer list (PPL) nodes, each of the PPL nodes is associated with a node from the one or more nodes of the multicast group and wherein each PPL node is associated with a node-identifying information, an estimated available bandwidth of said each PPL node, a use count, and one or more relationships between said each PPL node to another node of the one or more nodes in the multicast group; updating, by the first device, the PPC if at least one of the following occurs: a departure message is received indicating that a node of the one or more nodes of the multicast group is in a state of departure from the multicast group; and a join report message is received indicating that a new node has joined the multicast group to become a node of the one or more nodes of the multicast group; receiving, by a second device, a preferred peer list (PPL), based on the PPC, comprising one or more PPL nodes, and a flat peer list (FPL) comprising one or more FPL nodes, wherein the one or more FPL nodes are randomly selected nodes from the one or more nodes of the multicast group; and transmitting, by the second device, an attachment request to at least one PPL node of the PPL.