Patent classifications
H04L47/326
Packet processing method and apparatus
A packet processing method includes receiving, by a forwarding apparatus, a first packet, where the first packet belongs to a first packet flow, determining, by the forwarding apparatus, at least two types of information in the following four types of information a duration of staying in a first memory by the first packet flow, usage of the first memory, whether the first packet flow is a victim of a congestion control mechanism, and a drop priority of the first packet, and determining, by the forwarding apparatus based on the at least two types of information, whether explicit congestion notification marking needs to be performed on the first packet.
Congestion control management method derived from packets at a network adapter
A network adapter includes a receive (RX) pipeline, a transmit (TX) pipeline, hardware-implemented congestion-control circuitry, and a congestion-control processor. The RX pipeline is configured to receive packets from a network and process the received packets. The TX pipeline is configured to transmit packets to the network. The hardware-implemented congestion-control circuitry is configured to receive, from the TX pipeline and from the RX pipeline, Congestion-Control (CC) events derived from at least some of the packets transmitted to the network and from at least some of the packets received from the network, and to pre-process the CC events. The congestion-control processor is configured to receive the pre-processed CC events from the congestion-control circuitry, and to throttle a transmission rate of the packets transmitted to the network by the TX pipeline responsively to the pre-processed CC events.
Token bucket with active queue management
Systems and methods are provided for a new type of quality of service (QoS) primitive at a network device that has better performance than traditional QoS primitives. The QoS primitive may comprise a token bucket with active queue management (TBAQM). Particularly, the TBAQM may receive a data packet that is processed by the token bucket; adjust tokens associated with the token bucket, where the tokens are added based on a configured rate and subtracted in association with processing the data packet; determine a number of tokens associated with the token bucket, comprising: when the token bucket has zero tokens, initiating a first action with the data packet, and when the token bucket has more than zero tokens, determining a marking probability based on the number of tokens and initiating a second action based on the marking probability.
Adaptive buffering in a distributed system with latency / adaptive tail drop
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.
Adaptive Buffering in a Distributed System with Latency/Adaptive Tail Drop
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.
DETERMINING NETWORK DEVICE STATISTICS ASSOCIATED WITH FAST COUNTERS AND SLOW COUNTERS
A network device may receive one or more packets, and may determine a flow control parameter, a rate limiting parameter, and a statistical sampling parameter associated with a slow counter. The network device may determine whether the flow control parameter satisfies a first threshold, whether the rate limiting parameter satisfies a second threshold, and whether the statistical sampling parameter satisfies a third threshold. The network device may identify a counter event associated with one of the one or more packets, and may selectively assign the counter event to a fast counter when at least one of the first threshold, the second threshold, or the third threshold being satisfied, or to the slow counter when none of the first threshold, the second threshold, and the third threshold being satisfied.
Packet-content based WRED protection
A network element includes multiple ports and logic. The multiple ports are configured to serve as ingress ports and egress ports for receiving and transmitting packets from and to a network. The logic is configured to queue the packets received from the ingress ports, run a packet-dropping process that randomly drops one or more of the queued packets to avoid congestion, while detecting and excluding from the packet-dropping process, at least probabilistically, packets belonging to a predefined packet type, and forward the queued packets, which were not dropped, to the egress ports.
Programmable Congestion Control
A network adapter includes a receive (RX) pipeline, a transmit (TX) pipeline, hardware-implemented congestion-control circuitry, and a congestion-control processor. The RX pipeline is configured to receive packets from a network and process the received packets. The TX pipeline is configured to transmit packets to the network. The hardware-implemented congestion-control circuitry is configured to receive, from the TX pipeline and from the RX pipeline, Congestion-Control (CC) events derived from at least some of the packets transmitted to the network and from at least some of the packets received from the network, and to pre-process the CC events. The congestion-control processor is configured to receive the pre-processed CC events from the congestion-control circuitry, and to throttle a transmission rate of the packets transmitted to the network by the TX pipeline responsively to the pre-processed CC events.
Weighted random early detection improvements to absorb microbursts
A packet queueing system includes an ingress port configured to receive packets; queueing logic communicatively coupled to one or more egress queues for transmission via an egress port, wherein the queueing logic is configured to maintain an Acceptable Burst Size (ABS) token bucket which is set to enable absorption of microbursts, and implement a congestion avoidance algorithm to one of randomly drop packets and queue packets, wherein the congestion avoidance algorithm only performs the randomly drop packets responsive to the ABS token bucket being empty.
Usage Of QUIC Spin Bit In Wireless Networks
Various aspects include methods for QUIC packet processing. Various embodiments may include a processor of a computing device determining a round trip time (RTT) for a QUIC flow based at least in part on a spin bit value of a QUIC packet of the QUIC flow, determining a bandwidth-delay (BW-delay) product for the QUIC flow based at least in part on the determined RTT for the QUIC flow, and controlling processing of QUIC packets for the QUIC flow based at least in part on the determined BW-delay product.