Transmit queue with loadsheding
First Claim
1. An internetworking communication processor for receiving a plurality of received packets of data and for transferring said received packets to one of a plurality of ports, each of said ports having one of a plurality of port speeds, comprising:
- generating means for generating a plurality of descriptor packets, one of said descriptor packets correlating with each of said plurality of received packets, said one descriptor packet including a priority field containing one of a plurality of transmit priorities for said each received packet and a port destination field identifying which of said ports is a destination port over which said each received packet is to be transmitted;
a transmit queue having a plurality of queue locations for receiving said descriptor packets;
availability determining means for determining a number of said queue locations available to receive said descriptor packets;
loadsheding means for determining a loadsheding value for each of said descriptor packets based upon said destination port and said transmit priority of said each descriptor packet;
comparing means for comparing said loadsheding value with said number of said queue locations;
loading means for loading said each descriptor packet into said transmit queue if said loadsheding value is less than or equal to said number of said queue locations;
discarding means for discarding said each descriptor packet in the event said loadsheding value is greater than said number of said queue locations; and
transmitting means, in response to said each descriptor packet being loaded in said transmit queue, for transmitting one of said received packets correlating with said each descriptor packet over said destination port identified in said each descriptor packet.
9 Assignments
0 Petitions
Accused Products
Abstract
An apparatus for managing transfer of a packet of information to one of a plurality of ports with each the port having an associated port speed includes a double linked list transmit queue and a plurality of port queues corresponding to the plurality of ports. The packet is read to determine a priority and destination port of the packet. A loadsheding value correlating to the packet'"'"'s destination port and priority is determined and compared with a measure of the amount of free space in the transmit queue. The packet is loaded into the transmit queue if the loadsheding value is less than or equal to the measure of the amount of free space in the transmit queue. The packet is discarded in the event the loadsheding value is greater than the measure of the amount of free space in the transmit queue.
57 Citations
16 Claims
-
1. An internetworking communication processor for receiving a plurality of received packets of data and for transferring said received packets to one of a plurality of ports, each of said ports having one of a plurality of port speeds, comprising:
-
generating means for generating a plurality of descriptor packets, one of said descriptor packets correlating with each of said plurality of received packets, said one descriptor packet including a priority field containing one of a plurality of transmit priorities for said each received packet and a port destination field identifying which of said ports is a destination port over which said each received packet is to be transmitted; a transmit queue having a plurality of queue locations for receiving said descriptor packets; availability determining means for determining a number of said queue locations available to receive said descriptor packets; loadsheding means for determining a loadsheding value for each of said descriptor packets based upon said destination port and said transmit priority of said each descriptor packet; comparing means for comparing said loadsheding value with said number of said queue locations; loading means for loading said each descriptor packet into said transmit queue if said loadsheding value is less than or equal to said number of said queue locations; discarding means for discarding said each descriptor packet in the event said loadsheding value is greater than said number of said queue locations; and transmitting means, in response to said each descriptor packet being loaded in said transmit queue, for transmitting one of said received packets correlating with said each descriptor packet over said destination port identified in said each descriptor packet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
Specification