Multicast bandwidth multiplication for a unified distributed switch
First Claim
1. A method for forwarding a multicast data frame, comprising:
- receiving a multicast data frame on a first input port of a networking element, wherein the multicast data frame is an Ethernet frame;
storing at least a portion of the multicast data frame in each of a first plurality of buffers, wherein the portion of the multicast data frame is at least a portion of a payload of the Ethernet frame, and wherein at least one of the first plurality of buffers is assigned to a second input port of the networking element;
storing a respective header corresponding to each of the portions of the multicast data frame in a second plurality of buffers, wherein at least one of the second plurality of buffers is assigned to the second input port;
combining each of the portions of the received multicast data frame with the corresponding header to generate data packets; and
separately forwarding each of the data packets based on the respective headers via respective output connection interfaces of the networking element, wherein a first one of the output connection interfaces is assigned to the first input port and a second one of the connection interfaces is assigned to the second input port, wherein the first input port borrows the at least one buffer of the first plurality of buffers, the at least one buffer of the second plurality of buffers, and the respective output connection interface assigned to the second input port.
1 Assignment
0 Petitions
Accused Products
Abstract
The distributed switch may include a plurality of chips (i.e., sub-switches) on a switch module. These sub-switches may receive from a computing device connected to a Tx/Rx port a multicast data frame (e.g., an Ethernet frame) that designates a plurality of different destinations. Instead of simply using one egress connection interface to forward the copies of the data frame to each of the destinations sequentially, the sub-switch may use a plurality of a connection interfaces to transfer copies of the multicast data frame simultaneously. The port that receives the multicast data frame can borrow the connection interfaces (and associated hardware such as buffers) assigned to these other ports to transmit copies of the multicast data frame simultaneously.
-
Citations
6 Claims
-
1. A method for forwarding a multicast data frame, comprising:
-
receiving a multicast data frame on a first input port of a networking element, wherein the multicast data frame is an Ethernet frame; storing at least a portion of the multicast data frame in each of a first plurality of buffers, wherein the portion of the multicast data frame is at least a portion of a payload of the Ethernet frame, and wherein at least one of the first plurality of buffers is assigned to a second input port of the networking element; storing a respective header corresponding to each of the portions of the multicast data frame in a second plurality of buffers, wherein at least one of the second plurality of buffers is assigned to the second input port; combining each of the portions of the received multicast data frame with the corresponding header to generate data packets; and separately forwarding each of the data packets based on the respective headers via respective output connection interfaces of the networking element, wherein a first one of the output connection interfaces is assigned to the first input port and a second one of the connection interfaces is assigned to the second input port, wherein the first input port borrows the at least one buffer of the first plurality of buffers, the at least one buffer of the second plurality of buffers, and the respective output connection interface assigned to the second input port. - View Dependent Claims (2, 3, 4, 6)
-
-
5. A method for forwarding a multicast data frame, comprising:
-
receiving a multicast data frame on a first input port of a networking element; storing at least a portion of the multicast data frame in each of a first plurality of buffers, wherein at least one of the first plurality of buffers is assigned to a second input port of the networking element; storing a respective header corresponding to each of the portions of the multicast data frame in a second plurality of buffers, wherein at least one of the second plurality of buffers is assigned to the second input port; and separately forwarding each of a plurality of the portions of the received multicast data frame stored in the first plurality of buffers based on the respective headers via respective output connection interfaces of the networking, wherein a first one of the output connection interfaces is assigned to the first input port and a second one of the connection interfaces is assigned to the second input port, wherein the first input port borrows the at least one buffer of the first plurality of buffers, the at least one buffer of the second plurality of buffers, and the respective output connection interface assigned to the second input port, wherein, after forwarding the portions of the received multicast data frame, at least one of the portions is not evicted from the first plurality of buffers, further comprising, after forwarding the portions; storing a replacement header for one of the non-evicted portions, wherein the replacement header comprises a different destination than an original header that was previously assigned to the one non-evicted portion; and forwarding the one non-evicted portion and the replacement header.
-
Specification