Electrical computers and digital data processing systems: input/ – Input/output data processing – Input/output access regulation
Reexamination Certificate
2003-06-06
2004-05-18
Shin, Christopher B. (Department: 2182)
Electrical computers and digital data processing systems: input/
Input/output data processing
Input/output access regulation
C710S029000
Reexamination Certificate
active
06738838
ABSTRACT:
BACKGROUND
The present invention relates generally to network switching communication protocols and in particular to the writing of descriptors.
A network switch creates a network among a plurality of end nodes, such as workstations, and other network switches connected thereto. Each end node is connected to one port of the network. The ports also serve to connect network switches together.
Each end node sends packets of data to the network switch which the switch then routes either to another of the end nodes connected thereto or to a network switch to which the destination end node is connected. In the latter case, the receiving network switch routes the packet to the destination end node.
Each network switch has to temporarily store the packets of data which it receives from the units (end node or network switch) connected to it while the switch determines how, when and through which port to retransmit the packets. Each packet can be transmitted to only one destination address (a “unicast” packet) or to more than one unit (a “multicast” or “broadcast” packet). For multicast and broadcast packets, the switch typically stores the packet only once and transmits multiple copies of the packet to some (multicast) or all (broadcast) of its ports. Once the packet has been transmitted to all of its destinations, it can be removed from the memory or written over.
Reference is now made to
FIG. 1
which schematically illustrates a portion of the data packet transfer process that takes place within a network switch
10
.
Switch
10
comprises a first memory
12
and a second memory
14
, both of which are general function memories used to store data temporarily. Memory
14
is a random access memory and holds a plurality of data packets
16
.
Memory
12
is a set of first-in-first-out (FIFOs) memories and comprises a multiplicity Q of output queues
18
, each of which hold a plurality of descriptors
20
. Each output queue
18
is dedicated to an associated end node.
Descriptors
20
are records which describe data packets
16
; the description includes information such as buffer location, length of packet, transmitting information, etc. Descriptors
20
are unique per each associated data packet
16
.
When a unicast data packet
16
is written into memory
14
, one associated descriptor
20
is written into memory
12
. When a multicast data packet
16
is written into memory
14
, N descriptors
20
are written into memory
12
, where N is the number of recipients of the multicast packet. Each of the N descriptors
20
is written into the appropriate output queue
18
for the designated end node.
The output queues
18
define the order with which the data packets will be written out, such that the descriptors
20
at the output end of each queue defines the next data packet to be transmitted.
Unfortunately accessing memory is time-consuming. To write each short descriptor into its appropriate output queue or queues requires multiple memory clock cycles, per write. This affects the overall speed of the network switch
10
.
SUMMARY
It is an object of the present invention to provide an faster method for writing descriptors than is found in the prior art.
There is therefore provided in accordance with a preferred embodiment of the present invention a method of writing descriptors, including the steps of writing into a local memory, wherein the local memory comprises a multiplicity of mini-queues, each mini-queue storing a plurality of descriptors, wherein each of the descriptors is associated with one of the data packets; accumulating the descriptors in the multiplicity of mini-queues; and transferring more than one of the descriptors from the multiplicity of queues to an output memory comprising a multiplicity of output queues, wherein each of the output queues in output memory is associated with one mini-queue in local memory.
There is therefore provided in accordance with a preferred embodiment of the present invention a device for writing descriptors, the device including a local memory comprising a multiplicity of mini-queues, wherein each of the mini-queues temporarily stores a plurality of descriptors, wherein each of the descriptors is associated with one of the data packets; and an output memory comprising a multiplicity of output queues, wherein each of the output queues in output memory is associated with one of the queues in said local memory, and a burst writer which writes N descriptors simultaneously from the mini-queue in the local memory to its associated output queue in output memory.
REFERENCES:
patent: 5261059 (1993-11-01), Hedberg et al.
patent: 5606665 (1997-02-01), Yang et al.
patent: 5644784 (1997-07-01), Peek
patent: 5793953 (1998-08-01), Yeung et al.
patent: 5828901 (1998-10-01), O'Toole et al.
patent: 5870627 (1999-02-01), O'Toole et al.
patent: 5948079 (1999-09-01), Tsai et al.
patent: 6049842 (2000-04-01), Garrett et al.
patent: 6064676 (2000-05-01), Slattery et al.
patent: 6070194 (2000-05-01), Yu et al.
patent: 6163820 (2000-12-01), Garrett et al.
patent: 6182164 (2001-01-01), Williams
patent: 6195368 (2001-02-01), Gratacap
patent: 6199124 (2001-03-01), Ramakrishnan et al.
patent: 6272564 (2001-08-01), Garrett et al.
patent: 6292490 (2001-09-01), Gratacap et al.
patent: 6327615 (2001-12-01), Kasper
patent: 6334162 (2001-12-01), Garrett et al.
patent: 6338102 (2002-01-01), Garrett et al.
patent: 6438613 (2002-08-01), Yeung et al.
Rozensvaig Rami
Shemla David
Marvell International Ltd.
Shin Christopher B.
LandOfFree
Network switch having descriptor cache and method thereof does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Network switch having descriptor cache and method thereof, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Network switch having descriptor cache and method thereof will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3193102