Multiplex communications – Pathfinding or routing – Switching a message which includes an address header
Reexamination Certificate
2001-02-13
2004-03-30
Pham, Chi (Department: 2664)
Multiplex communications
Pathfinding or routing
Switching a message which includes an address header
Reexamination Certificate
active
06714554
ABSTRACT:
FIELD OF THE INVENTION
The present invention relates generally to field of network communication. More specifically, the present invention is directed to a method and a system for sorting packets/cells in a switch.
BACKGROUND
The desire to integrate data, voice, image, video and other traffic over high speed digital trunks has led to the requirement for faster networks including the capability to route more information faster from one node to another node. A switch performs this routing of information. Generally, the switch consists of three logical elements: ports, a switch fabric and a scheduler.
Routing and buffering functions are two major functions performed by a switch fabric. New packets arriving at an ingress are transferred by the scheduler across the switch fabric to an egress. The ingress refers to a side of the switch which receives arriving packets (or incoming traffic). The egress refers to a side of the switch which sends the packets out from the switch.
Most of the switches today are implemented using a centralized crossbar approach. 
FIG. 1
 is an exemplary illustration of a centralized crossbar switch. The packets arrive at the centralized crossbar switch 
100
 at multiple ingress ports 
105
 on the ingress 
102
. They are transferred across the switch fabric 
110
 to multiple egress ports 
115
 on the egress 
104
 and then sent out to an output link (not shown). The centralized crossbar switch 
100
 can transfer packets between multiple ingress port-to-egress port connections simultaneously.
A centralized scheduler controls the transfer of the packets from the ingress ports 
105
 to the egress ports 
115
. Every packet that arrives at the ingress ports 
105
 has to be registered in the centralized scheduler. Each packet then waits for a decision by the centralized scheduler directing it to be transferred through the switch fabric 
110
. With fixed size packets, all the transmissions through the switch fabric 
110
 are synchronized.
Each packet belongs to a flow, which carries data belonging to an application. A flow may have multiple packets. There may be multiple flows arriving at the ingress ports 
105
 at the same time. Since the packets in these multiple flows may be transferred to the same egress port, each of these packets waits for its turn in ingress buffers (not shown) in the ingress 
102
.
The centralized scheduler examines the packets in the ingress buffers and chooses a set of conflict-free connections among the appropriate ingress ports 
105
 and egress ports 
115
 based upon the configuration of the switch fabric 
110
. One of the egress ports 
115
 may receive packets from one or more ingress ports 
105
. However, at any one time, the centralized scheduler ensures that each ingress port is connected to at most one egress port, and that each egress port is connected to at most one ingress port.
Each packet transferred across the switch fabric 
110
 by the centralized scheduler waits in egress buffers (not shown) in the egress 
104
 to be selected by the centralized scheduler for transmission out of the switch. The centralized scheduler places the selected packets in the appropriate egress ports 
115
 to have the packets transmitted out to an output link.
Each packet belongs to a flow. There may be multiple flows arriving at the ingress at the same time, and the centralized scheduler has to select a packet from one of these multiple flows. This may be time consuming since the number of incoming packets can be very large. For example, when there are 256 K flows, potentially there can be 256 K packets (one from each flow) from which to select. The centralized scheduler examines all of the incoming packets and then performs multiple comparisons in order to select a packet to send across the switch fabric 
110
. The packet is selected based on several factors, such as, for example, priority level, arrival time, etc. The large number of packets could make it difficult to perform all the comparisons and to select the packet to send across the switch fabric 
110
 in a short time. As such, the selection process may take multiple packet times (i.e., the time it takes for the switch to process one packet). That is, it takes more time for the switch to select a packet to send across the switch fabric than it takes for the switch to move the packet to an output link. This packet selection process may be inefficient because it slows the performance of the switch.
SUMMARY OF THE INVENTION
A method and apparatus for sorting packets is disclosed. In one embodiment, a method for sorting comprises grouping flows according to a first flow rate and a second flow rate. Each flow comprises multiple packets. The flows in the first flow rate may be sorted according to an arrival time of a first packet in each flow. These flows are placed in a first FIFO (first-in-first-out) queue with a flow having an earliest first packet arrival time located at a head of the first FIFO queue. The flows in the second flow rate may be sorted according to an arrival time of a first packet in each flow. These flows are placed in a second FIFO queue with a flow having an earliest first packet arrival time located at a head of the second FIFO queue. A comparison is performed to select a packet from between the first packet of the flow at the head of the first FIFO queue with the first packet of the flow at the head of the second FIFO queue.
REFERENCES:
patent: 5764626 (1998-06-01), Vandervort
patent: 5922976 (1999-07-01), Russell et al.
patent: 5926459 (1999-07-01), Lyles et al.
patent: 5949757 (1999-09-01), Katoh et al.
patent: 5953318 (1999-09-01), Nattkemper et al.
patent: 6044091 (2000-03-01), Kim
patent: 6108305 (2000-08-01), Charny et al.
patent: 6141336 (2000-10-01), Bauchot et al.
patent: 6337851 (2002-01-01), Charny et al.
patent: 6377546 (2002-04-01), Guerin et al.
Nick McKeown, Martin Izzard Adisak Mekkittikul, William Ellersick, Mark Horowitz, “The Tiny Tera: A Packet Switch Core”, Dept. of Electrical Enginerring & Computer Science, Stanford University, Stanford, CA 94305-4070, DSP R&D Center, Corporate Research & Development, Texas Instruments, Incorp., PO Box 655474, MS446, Dallas, TX 75265.
Ali Shahzad
Harper Paul
Jin Lei
Blakely , Sokoloff, Taylor & Zafman LLP
Jones Prenell
Pham Chi
Turin Networks
LandOfFree
Method and system for sorting packets in a network does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system for sorting packets in a network, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for sorting packets in a network will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3288157