Adaptive buffering in a distributed system with latency/adaptive tail drop

US12587485B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12587485-B2
Application numberUS-202217953031-A
CountryUS
Kind codeB2
Filing dateSep 26, 2022
Priority dateOct 23, 2020
Publication dateMar 24, 2026
Grant dateMar 24, 2026

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

What is claimed is: 1 . 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. 2 . The network device of claim 1 , wherein modifying the packet processing rate comprises modifying a rate at which packets are dequeued from the virtual output queue and processed, the rate based on the latency state change of the virtual output queue. 3 . The network device of claim 1 , further comprising: modifying an amount of storage allocated to the virtual output queue and processed in response to the identification of the latency state change, the amount of storage based on the latency state change of the virtual output queue. 4 . The network device of claim 1 , further comprising: modifying a percentage drop rate implemented by the packet processor in response to the identification of the latency state change, wherein the packet processor drops received packets at the percentage drop rate without attempting to enqueue the dropped packets in the virtual output queue. 5 . The network device of claim 1 , wherein the switching system manager is further programmed to: prior to identifying the change of latency state: identify a change in an ingress rate of the virtual output queue; in response to identifying the change in the ingress rate of the virtual output queue: perform an action set, based on the change in the ingress rate of the virtual output queue, to modify the latency of the virtual output queue to meet the predetermined latency. 6 . The network device of claim 5 , wherein performing the action set comprises: modifying a processing rate associated with the virtual output queue, wherein the processing rate is modified based on an egress rate of an egress port of the egress ports that is associated with the virtual output queue, and the change in the ingress rate. 7 . 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. 8 . The method of claim 7 , wherein: modifying the packet processing rate comprises modifying a rate at which packets are dequeued from the virtual output queue and processed, the rate based on the latency state change of the virtual output queue. 9 . The method of claim 7 , further comprising: modifying an amount of storage allocated to the virtual output queue and processed in response to the identification of the latency state change, the amount of storage based on the latency state change of the virtual output queue. 10 . The method of claim 7 , further comprising: modifying a percentage drop rate implemented by the packet processor in response to the identification of the latency state change, wherein the packet processor drops received packets at the percentage drop rate without attempting to enqueue the dropped packets in the virtual output queue. 11 . The method of claim 7 , further comprising: prior to identifying the change of latency state: identify a change in an ingress rate of the virtual output queue; in response to identifying the change in the ingress rate of the virtual output queue: perform an action set, based on the change in the ingress rate of the virtual output queue, to modify the latency of the virtual output queue to meet the predetermined latency. 12 . The method of claim 11 , wherein performing the action set comprises: modifying a processing rate associated with the virtual output queue, wherein the processing rate is modified based on an egress rate of an egress port of the egress ports that is associated with the virtual output queue, and the change in the ingress rate. 13 . 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. 14 . The non-transitory computer readable medium of claim 13 , wherein the method comprises modifying the packet

Assignees

Inventors

Classifications

  • based on priority · CPC title

  • by discarding or delaying data units, e.g. packets or frames · CPC title

  • in response to processing delays, e.g. caused by jitter or round trip time [RTT] · CPC title

  • using signalling traffic · CPC title

  • Throughput · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12587485B2 cover?
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…
Who is the assignee on this patent?
Arista Networks Inc
What technology area does this patent fall under?
Primary CPC classification H04L47/6215. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).