Switching device with multistage queuing scheme
First Claim
1. In a switching device, apparatus for communicating data packets from sending ports to destination ports, comprising:
- a first stage queue comprising a plurality of first queues for storing packet-related data from a sending port, wherein the packet-related data is stored in the plurality of first queues based on a characteristic of the data packets;
a second stage queue associated with each of a set of destination ports, the second stage queue comprising a plurality of second queues, each of the plurality of second queues for storing the packet-related data from each of the plurality of first queues of the first stage queue based on a characteristic of the data packets; and
a switch fabric coupled to the second stage queue, the switch fabric using the packet-related data in the second stage queue for transmitting the data packets to a destination port.
7 Assignments
0 Petitions
Accused Products
Abstract
In a switching device, a method of communicating data packets from sending ports to destination ports includes storing in a first stage queue packet-related data from a sending port; determining from the packet-related data which destination ports are to receive the packet-related data in the first stage queue; storing in a second stage queue associated with each determined destination port the packet-related data from the first stage queue; and using the packet-related data in the second stage queue to complete the communication of the data packet from the sending port to each determined destination port. Apparatus for practicing the method comprises a first stage queue storing packet-related data from a sending port; and a second stage queue associated with each of a set of destination ports storing the packet-related data from the first stage queue.
108 Citations
31 Claims
-
1. In a switching device, apparatus for communicating data packets from sending ports to destination ports, comprising:
-
a first stage queue comprising a plurality of first queues for storing packet-related data from a sending port, wherein the packet-related data is stored in the plurality of first queues based on a characteristic of the data packets;
a second stage queue associated with each of a set of destination ports, the second stage queue comprising a plurality of second queues, each of the plurality of second queues for storing the packet-related data from each of the plurality of first queues of the first stage queue based on a characteristic of the data packets; and
a switch fabric coupled to the second stage queue, the switch fabric using the packet-related data in the second stage queue for transmitting the data packets to a destination port. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. In a switching device, a method for communicating data packets from sending ports to destination ports, the method comprising:
-
storing in a first stage queue a pointer to memory storing a data packet and a list of destination ports;
identifying a destination port stored in the first stage queue;
retrieving the pointer to memory stored in the first stage queue;
storing in a second stage queue associated with the identified destination port the retrieved pointer to memory; and
using the pointer to memory in the second stage queue to complete the communication of the data packet from the sending port to the identified destination port. - View Dependent Claims (8, 9)
-
-
10. In a switching device, a method of communicating data packets from one or more sending ports to destination ports, the method comprising:
-
storing, in a first stage queue comprising a plurality of first queues, packet-related data associated with the data packets from the one or more sending ports, wherein the packet-related data are stored in one of the plurality of first queues based on a characteristic of the data packets;
determining from the packet-related data which destination ports are to receive the packet-related data in the first stage queue;
storing in a second stage queue associated with each determined destination port the packet-related data from the first stage queue; and
transmitting the packet-related data in the second stage queue to a switch fabric for completing the communication of the data packet from the sending port to each determined destination port. - View Dependent Claims (11, 12)
-
-
13. In a switching device, a method of communicating data packets from sending ports to destination ports, the method comprising:
-
storing in a first stage queue packet-related data from a sending port;
determining from the packet-related data which destination ports are to receive the packet-related data in the first stage queue;
storing in a second stage queue associated with each determined destination port the packet-related data from the first stage queue based on network protocol type; and
transmitting the packet-related data in the second stage queue to a switch fabric for completing the communication of the data packet from the sending port to each determined destination port.
-
-
14. In a switching device, a method of communicating data packets from sending ports to destination ports, the method comprising:
-
storing in a first stage queue packet-related data from a sending port;
determining from the packet-related data which destination ports are to receive the packet-related data in the first stage queue;
storing in a second stage queue associated with each determined destination port the packet-related data from the first stage queue based on whether the data packets are unicast packets or multicast packets; and
transmitting the packet-related data in the second stage queue to a switch fabric for completing the communication of the data packet from the sending port to each determined destination port.
-
-
15. In a switching device, a method of communicating data packets from sending ports to destination ports, the method comprising:
-
storing in a first stage queue the data packets from a sending port;
determining from the data packets which destination ports are to receive the data packets in the first stage queue;
storing in a second stage queue associated with each determined destination port the data packets from the first stage queue based on a characteristic of the data packets; and
transmitting the data packets in the second stage queue to a switch fabric for completing the communication of the data packet from the sending port to each determined destination port.
-
-
16. A multistage queuing apparatus for transmitting data packets from one or more sending ports to a plurality of destination ports, comprising:
-
a first queue structure, operatively coupled to the one or more sending ports, comprising a plurality of first queues for storing packet-related data associated with the data packets based on a first characteristic of the data packets; and
a second queue structure, operatively coupled to the first queue structure and plurality of destination ports, comprising a plurality of second queues for storing the packet-related data based on the first characteristic and a second characteristic. - View Dependent Claims (17, 18, 19, 20)
-
-
21. A multistage queuing apparatus for transmitting data packets from one or more sending ports to a plurality of destination ports, comprising:
-
a first queue structure, operatively coupled to the one or more sending ports, comprising a first array of two or more first queues for storing the packet-related data associated with the data packets in accordance with a first characteristic of the data packets; and
a second queue structure comprising a plurality of second arrays, each of the second arrays comprising two or more second queues operatively coupled to one of the plurality of destination ports, wherein each of the second arrays is adapted to store the packet-related data from the first queue structure in accordance with the first characteristic. - View Dependent Claims (22, 23)
-
-
24. In a switching device, a method of communicating data packets from sending ports to destination ports, the method comprising:
-
storing in a first stage queue packet-related data from a sending port based on a characteristic of the data packets;
determining from the packet-related data which destination ports are to receive the packet-related data in the first stage queue;
storing in a second stage queue associated with each determined destination port the packet-related data from the first stage queue; and
transmitting the packet-related data in the second stage queue to a switch fabric for completing the communication of the data packet from the sending port to each determined destination port. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31)
-
Specification