IP Library › Granted Patent US 11,729,100
Granted Patent B2
US 11,729,100 · App. 17/477,505 · Granted Aug 15, 2023

Integrated traffic profile for indicating congestion and packet drop for congestion avoidance

Inventors: Jonathan Michael Seely (Cool, CA); Giuseppe Scaglione (Granite Bay, CA); Sergio Jesus Guillen Hernandez (San Jose, CR); Paymon Ghamami (Folsom, CA)
Assignee: Hewlett Packard Enterprise Development LP
H04L47/12H04L47/22H04L47/2416H04L47/29H04L47/521
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,729,100
App. No.
17/477,505
Granted
Aug 15, 2023
Kind
B2
Abstract

A system for facilitating an integrated traffic profile for indicating congestion and packet drop is provided. During operation, the system can determine a first traffic profile indicating whether to drop a packet based on the utilization of a queue. The packets from the queue can be forwarded via an egress port reachable via a fabric. The system can also determine a second traffic profile indicating whether to indicate congestion in the packet based on the utilization. The system can then determine a third traffic profile by combining the first and second traffic profiles. The third traffic profile can indicate acceptance at the queue for a subset of packets being selected for dropping based on the utilization. Subsequently, the system can, if the packet is selected for dropping, determine whether to accept the packet at the queue and set a congestion indicator in the packet based on the third traffic profile.

Claims (39)

1. A method, comprising:

determining, by a switch, a first traffic profile indicating whether to drop a packet based on utilization of a queue, wherein packets from the queue are forwarded via an egress port reachable via a fabric of interconnections;

determining, by the switch, a second traffic profile indicating whether to indicate congestion in the packet based on the utilization of the queue;

determining a third traffic profile by combining the first and second traffic profiles, wherein the third traffic profile indicates acceptance at the queue for a subset of packets being selected for dropping prior to being inserted into the queue based on the utilization of the queue;

obtaining a first probability value generated by a piece of hardware of the switch;

comparing the first probability value with a second probability value that is indicated in the third profile and corresponds to the utilization of the queue;

determining whether the utilization of the queue is within a threshold indicated in the third profile;

determining whether the first probability value is greater than the second probability value; and

in response to the packet being selected for dropping, determining whether to accept the packet at the queue and whether to set a congestion indicator in the packet based on the third traffic profile.

2. The method of claim 1 , further comprising determining whether the switch is capable of indicating congestion in the packet.

3. The method of claim 1 , wherein the second probability value is defined as a linear slope between a probability of indicating the congestion in the packet and the utilization of the queue.

4. The method of claim 1 , further comprising, in response to the first probability value being less than the second probability value and the utilization of the queue being greater than the threshold, dropping the packet.

5. The method of claim 1 , in response to the packet not being selected for dropping, determining whether to set the congestion indicator in the packet based on the utilization of the queue being within the threshold indicated in the third profile.

6. The method of claim 1 , wherein the first profile is a profile of random early detection (RED) or a variation thereof; and wherein the second profile is a profile of Explicit Congestion Notification (ECN) or a variation thereof.

7. The method of claim 1 , wherein the fabric of interconnections comprises switching fabrics of a plurality of switches.

8. A computer system, comprising:

processing circuitry;

a traffic profile logic block to:

determine a first traffic profile indicating whether to drop a packet based on utilization of a queue, wherein packets from the queue are forwarded via an egress port reachable via a fabric of interconnections;

determine a second traffic profile indicating whether to indicate congestion in the packet based on the utilization of the queue; and

determine a third traffic profile by combining the first and second traffic profiles, wherein the third traffic profile indicates acceptance at the queue for a subset of packets being selected for dropping prior to being inserted into the queue based on the utilization of the queue;

an assertion logic block to:

obtain a first probability value generated by a piece of hardware of the computer system; and

compare the first probability value with a second probability value that is indicated in the third profile and corresponds to the utilization of the queue

in response to the packet being selected for dropping, determine whether to accept the packet at the queue by determining whether the utilization of the queue is within a threshold indicated in the third profile and determining whether the first probability value is greater than the second probability value; and

a marking logic block to, in response to the packet being accepted at the queue, determine whether to set a congestion indicator in the packet based on the third traffic profile.

9. The computer system of claim 8 , further comprising an indicator logic block to determine whether the computer system is capable of indicating congestion in the packet.

10. The computer system of claim 8 , wherein the second probability value is defined as a linear slope between a probability of indicating the congestion in the packet and the utilization of the queue.

11. The computer system of claim 8 , wherein the assertion logic block is further to, in response to the first probability value being less than the second probability value and the utilization of the queue being greater than the threshold, drop the packet.

12. The computer system of claim 8 , wherein the marking logic block is further to, in response to the packet not being selected for dropping, determine whether to set the congestion indicator in the packet based on the utilization of the queue being within the threshold indicated in the third profile.

13. The computer system of claim 8 , wherein the first profile is a profile of random early detection (RED) or a variation thereof; and wherein the second profile is a profile of Explicit Congestion Notification (ECN) or a variation thereof.

14. The computer system of claim 8 , wherein the fabric of interconnections comprises switching fabrics of a plurality of computer systems.

15. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method, the method comprising:

determining, by the computer, a first traffic profile indicating whether to drop a packet based on utilization of a queue, wherein packets from the queue are forwarded via an egress port reachable via a fabric of interconnections;

determining, by the computer, a second traffic profile indicating whether to indicate congestion in the packet based on the utilization of the queue;

determining a third traffic profile by combining the first and second traffic profiles, wherein the third traffic profile indicates acceptance at the queue for a subset of packets being selected for dropping prior to being inserted into the queue based on the utilization of the queue;

determining whether the utilization of the queue is within a threshold indicated in the third profile; and

determining whether a first probability value is greater than the second probability value, wherein the first probability value is generated by a piece of hardware of the computer, and wherein the second probability value is indicated in the third profile and corresponds to the utilization of the queue; and

in response to the packet being selected for dropping, determining whether to accept the packet at the queue and whether to set a congestion indicator in the packet based on the third traffic profile.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2021
From: SEELY, JONATHAN MICHAEL; SCAGLIONE, GIUSEPPE; HERNANDEZ, SERGIO JESUS GUILLEN; GHAMAMI, PAYMON
To: HEWLETT PACKARD ENTERPRISE DEVELOPEMENT LP
Reel/Frame 057716/0364 →
Continuity (1)
Related Publication 20230079715A1 · Mar 16, 2023