Patent ID: 7133928

Claim:
A method comprising performing a machine-executed operation involving instructions, wherein the machine-executed operation is at least one of: A) sending said instructions over transmission media; B) receiving said instructions over transmission media; C) storing said instructions onto a machine-readable storage medium; and D) executing the instructions, wherein said instructions are instructions which, when executed by one or more processors, cause: receiving a signal, originating from a sender, which indicates an intention of the sender to send packets to an overlay group that includes a set of computers; determining whether the sender has permission to send packets to the overlay group; if the sender has permission to send packets to the overlay group, then performing the steps of: determining whether a received packet, from the sender, is associated with the overlay group; determining whether to send the received packet to a particular computer, in the set of computers, via a multicast connection or a unicast connection based, at least in part, on data indicating a transport preference of the particular computer; upon determining that the received packet should be sent to the particular computer via the multicast connection, routing the received packet to the particular computer using a native routing protocol to send the received packet by multicasting; and upon determining that the received packet should be sent to the particular computer via the unicast connection, routing the received packet to the particular computer using the native routing protocol to send the received packet by unicasting.