Prioritization and preemption of data frames over a switching fabric
First Claim
Patent Images
1. A method comprising:
- receiving a data stream, whereinthe data stream comprises data having a first priority level and data having a second priority level;
detecting a priority level of data from the data stream;
storing data having the first priority level in a first input queue;
storing data having the second priority level in a second input queue; and
simultaneously transmitting data from the first and second input queues to first and second crossbars, respectively, whereinthe simultaneously transmitting data comprisestransmitting data having the first priority level through the first crossbar coupled to the first input queue, andtransmitting data having the second priority level through the second crossbar coupled to the second input queue,the first crossbar only switches data having the first priority level,the first crossbar is not configured to switch data having the second priority level,the second crossbar only switches data having the second priority level, andthe second crossbar is not configured to switch data having the first priority level.
0 Assignments
0 Petitions
Accused Products
Abstract
Network switching and/or routing devices can use multiple priority data streams and queues to support prioritized serial transmission of data from line cards (or the like) through a fabric switch to other line cards (or the like). Preemption logic is used to insert within a data stream commands indicating a switch from one priority level data to another. Delimiter commands and combination switch/delimiter commands can also be used. Multiple crossbars are implemented in the fabric switch to support the various data stream priority levels.
-
Citations
21 Claims
-
1. A method comprising:
-
receiving a data stream, wherein the data stream comprises data having a first priority level and data having a second priority level; detecting a priority level of data from the data stream; storing data having the first priority level in a first input queue; storing data having the second priority level in a second input queue; and simultaneously transmitting data from the first and second input queues to first and second crossbars, respectively, wherein the simultaneously transmitting data comprises transmitting data having the first priority level through the first crossbar coupled to the first input queue, and transmitting data having the second priority level through the second crossbar coupled to the second input queue, the first crossbar only switches data having the first priority level, the first crossbar is not configured to switch data having the second priority level, the second crossbar only switches data having the second priority level, and the second crossbar is not configured to switch data having the first priority level. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus comprising:
-
at least one input means for receiving and storing data, wherein the data comprises data having a first priority level and data having a second priority level; a first data path coupled between the at least one input means and a first switching means; a second data path coupled between the at least one input means and a second switching means; wherein the at least one input means is configured to simultaneously transmit data having the first priority level and data having the second priority level to the first and second switching means, respectively, via the first and second data paths, respectively; wherein the first switching means is configured to transfer only data having the first priority level from the at least one input means, wherein the first switching means is not configured to transfer data having the second priority level; wherein the second switching means is configured to transfer only data having the second priority level from the at least one input means, wherein the second switching means is not configured to transfer data having the first priority level; and at least one output means for receiving and storing the data having the first priority level from the first switching means and the data having the second priority level from the second switching means, the at least one output means being coupled to the first and second switching means. - View Dependent Claims (12, 13, 14)
-
-
15. An apparatus comprising:
-
first and second input buffers each configured to receive first and second data, respectively, wherein the first data comprises data having a first priority level and data having a second priority level, and the second data includes data having the first priority level and data having the second priority level; a first crossbar coupled to the first and second input buffers, the first crossbar configured to receive only data from the first and second input buffers having the first priority level, wherein the first crossbar is not configured to receive data having the second priority level from the first and second input buffers; a second crossbar coupled to the first and second input buffers, the second crossbar configured to receive only data from the first and second input buffers having the second priority level, wherein the second crossbar is not configured to receive data having the first priority level from the first and second input buffers; a first data path coupled between the first input buffer and the first crossbar; a second data path coupled between the first input buffer and the second crossbar; wherein the first input buffer is configured to simultaneously transmit data having the first priority level and data having the second priority level to the first and second crossbars, respectively, via the first and second data paths, respectively; a first circuit configured to read only data having the first priority level from the first input buffer for subsequent transmission to the first crossbar; a second circuit configured to read only data having the second priority level from the first input buffer for subsequent transmission to the second crossbar; first and second output buffers coupled to the first crossbar and second crossbars, wherein the first output buffer is configured to receive data having the first priority level from the first crossbar and data having the second priority level from the second crossbar, and the second output buffer is configured to receive data having the first priority level from the first crossbar and data having the second priority level from the second crossbar. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification