Adaptive buffering in a distributed system with latency/adaptive tail drop
AssigneeArista Networks, Inc.
InventorFrancois Labonte
Life of this patent
Estimating the term…
Abstract
A network device includes a switching system for directing packets between ingress ports and egress ports of the network device. The network device also includes a switching system manager that makes an identification of a state change of a virtual output queue of the switching system; and performs an action set, based on the state change, to modify a latency of the virtual output queue to meet a predetermined latency in response to the identification.
Claims17
A network device for directing packets between ingress ports and egress ports of the network device, comprising:
- a switching system manager programmed to:
- make an identification of a change of a latency state of a virtual output queue of the switching system, wherein the latency state is one of a set of discretized values for the latency state determined based on a quantification of a monitored latency associated with time packets spend in the virtual output queue;
- and
- in response to the identification of the latency state change, modify a packet processing rate associated with a number of packets in the virtual output queue that are processed when processing packets from that virtual output queue such that a latency of packets in the virtual output queue is bound within a predetermined range, wherein the packet processing rate identifies a weight relative to packet processing rates of other virtual output queues;
- wherein in response to the change of latency state indicating the latency of packets in the virtual output queue being greater than a first predetermined latency, the action set increases the packet processing rate;
- and
- wherein in response to the change of latency state indicating the latency of packets in the virtual output queue being less than a second predetermined latency, the action set decreases the packet processing rate.
A method for directing packets between ingress ports and egress ports of a network device, comprising:
- making an identification of a change of a latency state of a virtual output queue of the switching system, wherein the latency state is one of a set of discretized values for the latency state determined based on a quantification of a monitored latency associated with time packets spend in the virtual output queue;
- and
- performing, in response to the identification of the latency state change, a modification of a packet processing rate associated with a number of packets in the virtual output queue that are processed when processing packets from that virtual output queue such that a latency of packets in the virtual output queue is bound within a predetermined range, wherein the packet processing rate identifies a weight relative to packet processing rates of other virtual output queues;
- wherein in response to the change of latency state indicating the latency of packets in the virtual output queue being greater than a first predetermined latency, the action set increases the packet processing rate;
- and
- wherein in response to the change of latency state indicating the latency of packets in the virtual output queue being less than a second predetermined latency, the action set decreases the packet processing rate.
A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method, the method comprising:
- making an identification of a change of a latency state of a virtual output queue of the switching system, wherein the latency state is one of a set of discretized values for the latency state determined based on a quantification of a monitored latency associated with time packets spend in the virtual output queue;
- and
- performing, in response to the identification of the latency state change, a modification of a packet processing rate associated with a number of packets in the virtual output queue that are processed when processing packets from that virtual output queue such that a latency of packets in the virtual output queue is bound within a predetermined range, wherein the packet processing rate identifies a weight relative to packet processing rates of other virtual output queues;
- wherein in response to the change of latency state indicating the latency of packets in the virtual output queue being greater than a first predetermined latency, the action set increases the packet processing rate;
- and
- wherein in response to the change of latency state indicating the latency of packets in the virtual output queue being less than a second predetermined latency, the action set decreases the packet processing rate.
Dependencies are inferred from the claim text.