Clustering methods for scalable and bandwidth-efficient multicast
AssigneeCisco Technology, Inc.
InventorsPunit Bhargava, Rina Panigrahy, Sriram Krishnan
Life of this patent
Estimating the term…
Abstract
A method, system, computer program product, and apparatus for reducing wasted bandwidth due to supercasting multicast cells through a router switch fabric is presented. A multicast destination address is compared to each destination address in a label-to-destination address table (LTDT) to determine the wasted bandwidth due to incorporating any additional switch fabric ports designated by the new destination address with beyond the switch fabric ports designated for each LTDT entry. Also considered is the amount of traffic experienced by each LTDT entry and that expected for the new destination address.
Claims22
A method comprising:
- determining a first wasted bandwidth due to combining a first destination address with a second destination address, wherein
- the first destination address corresponds to a first multicast group address,
- the second destination address corresponds to a second multicast group address, and
- the first wasted bandwidth comprises a first weighting factor proportional to a rate at which data packets are transmitted to the second multicast group address;
- determining a second wasted bandwidth due to combining the first destination address with a third destination address, wherein
- the third destination address corresponds to a third multicast group address, and
- the second wasted bandwidth comprises a second weighting factor proportional to a rate at which data packets are transmitted to the third multicast group address;
- and
- combining the first destination address and the second destination address if the first wasted bandwidth is less than the second wasted bandwidth, or combining the first destination address and the third destination address if the first wasted bandwidth is more than the second wasted bandwidth.
A system comprising:
- a plurality of network line cards, wherein
- each network line card is configured to receive a first network packet,
- each network line card is configured to transmit a second network packet wherein,
- the first network packet comprises a first multicast group address;
- a switch fabric comprising a plurality of ports, wherein
- each of the plurality of ports is coupled to a corresponding one of the plurality of network line cards;
- and
- a processor coupled to the switch fabric and configured to
- determine a first wasted bandwidth due to combining a first destination address with a second destination address, wherein
- the first destination address corresponds to the first multicast group address and identifies a first subset of the plurality of switch fabric ports,
- the second destination address identifies a second subset of the plurality of switch fabric ports, and
- the first wasted bandwidth comprises a first weighting factor proportional to a rate at which data packets are transmitted to the second destination address,
- determine a second wasted bandwidth due to combining the first destination address with a third destination address, wherein
- the third destination address identifies a third subset of the plurality of switch fabric ports, and
- the second wasted bandwidth comprises a second weighting factor proportional to a rate at which data packets are transmitted to the third multicast group address, and
- combine the first destination address and the second destination address if the first wasted bandwidth is less than the second wasted bandwidth, or combining the first destination address and the third destination address if the first wasted bandwidth is more than the second wasted bandwidth.
A computer program product comprising:
- a first set of instructions, executable on a processor in a network communication node, configured to determine a first wasted bandwidth due to combining a first destination address with a second destination address, wherein
- the first destination address corresponds to a first multicast group address,
- the second destination address corresponds to a second multicast group address, and
- the first wasted bandwidth comprises a first weighting factor proportional to a rate at which data packets are transmitted to the second multicast group address;
- a second set of instructions, executable on the processor, configured to determine a second wasted bandwidth due to combining the first destination address with a third destination address, wherein
- the third destination address corresponds to a third multicast group address, and
- the second wasted bandwidth comprises a second weighting factor proportional to a rate at which data packets are transmitted to the third multicast group address;
- and
- a third set of instructions, executable on the processor, configured to combine the first destination address and the second destination address if the first wasted bandwidth is less than the second wasted bandwidth, or to combine the first destination address and the third destination address if the first wasted bandwidth is more than the second wasted bandwidth.
An apparatus comprising:
- a plurality of network line cards, wherein
- each network line card is disposed for receiving a first network packet,
- each network line card is disposed for transmitting a second network packet wherein,
- the first network packet comprises a first multicast group address;
- a switch fabric comprising a plurality of ports, wherein
- each of the plurality of ports is coupled to a corresponding one of the plurality of network line cards;
- means for determining a first wasted bandwidth due to combining a first destination address with a second destination address, wherein
- the first destination address corresponds to the first multicast group address,
- the second destination address corresponds to a second multicast group address, and
- the first wasted bandwidth comprises a first weighting factor proportional to a rate at which data packets are transmitted to the second multicast group address;
- means for determining a second wasted bandwidth due to combining the first destination address with a third destination address, wherein
- the third destination address corresponds to a third multicast group address, and
- the second wasted bandwidth comprises a second weighting factor proportional to a rate at which data packets are transmitted to the third multicast group address;
- and
- means for combining the first destination address and the second destination address if the first wasted bandwidth is less than the second wasted bandwidth, or combining the first destination address and the third destination address if the first wasted bandwidth is more than the second wasted bandwidth.
Dependencies are inferred from the claim text.