Patent ID: 8427943

Claim:
A system comprising: a plurality of network interfaces, and a server operatively connected to the plurality of network interfaces, the server comprising a memory and a processor, the memory having a table containing entries associating multicast group memberships with the plurality of network interfaces, the table indicating an amount of bandwidth available on each of the plurality of network interfaces, the processor configured to: receive a first add network interface request that does not specify any of the plurality of network interfaces; responsive to receiving the first add network interface request, determine whether any of the plurality of network interfaces are currently members of a multicast group corresponding to a requested multicast stream; analyze the table to determine an amount of bandwidth available on each of the plurality of network interfaces; responsive to determining that none of the plurality of network interfaces are currently members of the multicast group corresponding to the requested multicast stream, select a network interface of the plurality of network interfaces based on the analysis of the available bandwidth amounts; and if there are no network interfaces among the plurality of network interfaces that are currently members of the corresponding multicast group, and if at least one of the plurality of network interfaces has sufficient bandwidth available for the requested multicast stream, identify a network interface from the plurality of network interfaces for the received request based at least in part on the available bandwidth amounts, that has the most available bandwidth; trigger the identified network interface to join the corresponding multicast group by generating a second different add network interface request specifying the identified network interface; cause the selected network interface to join the corresponding multicast group using the second add network interface request; and filter the first add request such that no other network interfaces receive the requested multicast stream.