SYSTEM AND METHOD FOR ROUTER QUEUE AND CONGESTION MANAGEMENT
First Claim
1. A method comprising:
- receiving packets into a number of queues;
allocating memory to the queues;
determining a memory utilization;
over-subscribing unused memory;
allocating the over-subscribed memory to the queues; and
adjusting packet drop probabilities of one or more queues based at least on the allocation of the over-subscribed memory among the queues.
6 Assignments
0 Petitions
Accused Products
Abstract
In a multi-QOS level queuing structure, packet payload pointers are stored in multiple queues and packet payloads in a common memory pool. Algorithms control the drop probability of packets entering the queuing structure. Instantaneous drop probabilities are obtained by comparing measured instantaneous queue size with calculated minimum and maximum queue sizes. Non-utilized common memory space is allocated simultaneously to all queues. Time averaged drop probabilities follow a traditional Weighted Random Early Discard mechanism. Algorithms are adapted to a multi-level QOS structure, floating point format, and hardware implementation. Packet flow from a router egress queuing structure into a single egress port tributary is controlled by an arbitration algorithm using a rate metering mechanism. The queuing structure is replicated for each egress tributary in the router system.
132 Citations
21 Claims
-
1. A method comprising:
-
receiving packets into a number of queues; allocating memory to the queues; determining a memory utilization; over-subscribing unused memory; allocating the over-subscribed memory to the queues; and adjusting packet drop probabilities of one or more queues based at least on the allocation of the over-subscribed memory among the queues. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A switching system, comprising:
-
a receiving mechanism configured to receive packets into a number of queues; a memory allocation mechanism configured to; allocate memory to the queues; determine a memory utilization; over-subscribe unused memory; and allocate the over-subscribed memory to the queues; and a packet-dropping mechanism configured to adjust packet drop probabilities of one or more queues based at least on the allocation of the over-subscribed memory among the queues. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A switching means, comprising:
-
a receiving means for receiving packets into a number of queues; a memory allocation means for; allocating memory to the queues; determining a memory utilization; over-subscribing unused memory; and allocating the over-subscribed memory to the queues; and a packet-dropping means for adjusting packet drop probabilities of one or more queues based at least on the allocation of the over-subscribed memory among the queues. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification