Patent ID: 7719985

Claim:
A method of adding a new client to a multicast group, the method comprising: receiving a request from the new client to subscribe to the multicast group, wherein the multicast group includes multiple primary clients, a primary client having an associated performance parameter indicating a bandwidth of the primary client, the bandwidth meeting or exceeding a pre-defined threshold bandwidth; receiving a performance parameter associated with the new client, the performance parameter indicating the bandwidth of the new client; determining whether the new client is to be used as a primary client to forward multicast information to a secondary client, wherein the determination is based at least in part on the bandwidth of the new client, wherein the new client is to be used as a primary client to forward multicast information to a secondary client only if the bandwidth of the new client meets or exceeds the pre-defined threshold bandwidth; if it is determined that the new client is to be used as a primary client to forward multicast information to the secondary client, designating the new client as a primary client to be used to forward subsequently sent information, if any, to the secondary client; and if it is determined that the new client is not to be used as a primary client to forward multicast information to a secondary client, selecting an existing client to transmit information to the new client based on the network locations of the new client and the existing client and a comparison of a performance parameter of the existing client with performance parameters of other existing clients.