CONGESTION AVOIDANCE IN A NETWORK DEVICE
First Claim
1. A method for managing traffic flow to a network device, the method comprising:
- receiving, at a packet processor of the network device, a packet received from a network;
determining, with the packet processor, a particular transmit queue, among a plurality of transmit queues in a buffer memory, in which the packet is to be enqueued for subsequent transmission from the network device;
determining, with the packet processor, an amount of free buffer space currently available for buffering packets in the buffer memory;
dynamically determining, with the packet processor based at least in part on the amount of free buffer space currently available for buffering packets in the buffer memory, a value of a threshold for triggering a particular traffic management operation with respect to the packet, to dynamically adjust the value of the threshold based at least in part on a changing amount of free buffer space available for buffering packets in the buffer memory;
determining, with the packet processor based on a comparison between i) a current fill level of the particular transmit queue in which the packet is to be enqueued and ii) the dynamically adjusted value of the threshold, whether the particular traffic management operation is to be triggered with respect to the packet; and
when it is determined that the particular traffic management operation is to be triggered, performing, with the packet processor, the particular traffic management operation with respect to the packet.
0 Assignments
0 Petitions
Accused Products
Abstract
A packet processor of a network device determines an amount of free buffer space in a buffer memory currently available for buffering packets, and dynamically determines a value of a threshold for triggering a particular traffic management operation with respect to a packet, to dynamically adjust the value of the threshold based at least in part on a changing amount of free buffer space available for buffering packets in the buffer memory. The packet processor determines, based on a comparison between i) a current fill level of a particular transmit queue in which the packet is to be enqueued and ii) the dynamically adjusted value of the threshold, whether the particular traffic management operation is to be triggered with respect to the packet. When the particular traffic management operation is to be triggered, the packet processor performs the particular traffic management operation with respect to the packet.
2 Citations
20 Claims
-
1. A method for managing traffic flow to a network device, the method comprising:
-
receiving, at a packet processor of the network device, a packet received from a network; determining, with the packet processor, a particular transmit queue, among a plurality of transmit queues in a buffer memory, in which the packet is to be enqueued for subsequent transmission from the network device; determining, with the packet processor, an amount of free buffer space currently available for buffering packets in the buffer memory; dynamically determining, with the packet processor based at least in part on the amount of free buffer space currently available for buffering packets in the buffer memory, a value of a threshold for triggering a particular traffic management operation with respect to the packet, to dynamically adjust the value of the threshold based at least in part on a changing amount of free buffer space available for buffering packets in the buffer memory; determining, with the packet processor based on a comparison between i) a current fill level of the particular transmit queue in which the packet is to be enqueued and ii) the dynamically adjusted value of the threshold, whether the particular traffic management operation is to be triggered with respect to the packet; and when it is determined that the particular traffic management operation is to be triggered, performing, with the packet processor, the particular traffic management operation with respect to the packet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A network device, comprising:
-
a buffer memory configured to queue packets for subsequent transmission from the network device; a packet processor coupled to the buffer memory, the packet processor configured to receive a packet from a network; a threshold determination engine configured to; determine a particular transmit queue, among a plurality of transmit queues in the buffer memory, in which the packet is to be enqueued for subsequent transmission from the network device, determine an amount of free buffer space currently available for buffering packets in the buffer memory, and dynamically determine, based at least in part on the amount of free buffer space currently available for buffering packets in the buffer memory, a value of a threshold for triggering a particular traffic management operation with respect to the packet, to dynamically adjust the value of the threshold based at least in part on a changing amount of free buffer space available for buffering packets in the buffer memory; and a congestion avoidance trigger engine configured to; determine, based on a comparison between i) a current fill level of the particular transmit queue in which the packet is to be enqueued and ii) the dynamically adjusted value of the threshold, whether the particular traffic management operation is to be triggered with respect to the packet, and when it is determined that the particular traffic management operation is to be triggered, trigger the particular traffic management operation with respect to the packet. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification