# US 12,192,104 B2 · Congestion notification reporting for a responsive network

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,192,104 B2
- Document ID: US12192104B2
- Status: Granted
- Kind: B2
- Application number: 18/470,153
- Filed: 2023-09-19
- Published: 2024-01-04
- Granted: 2025-01-07
- Earliest claimed: 2018-10-27
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Dennis Khoa Dang Nguyen; Keerthi Manjunathan Swarnamanjunathan; Laura J. Sharpless; Kelvin Chan; Ganga S. Devadas
- Web page: https://patentgrep.com/patent/US12192104B2

## CPC

- H04L 43/06: Generation of reports
- H04L 5/0055: {Physical resource allocation for ACK/NACK (for physical mapping arrangements in ARQ protocols H04L1/1861)}
- H04L 41/0823: characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability (for optimising operational conditions of wireless networks H04W24/02)
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 41/5009: Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
- H04L 43/062: related to network traffic
- H04L 47/11: Identifying congestion
- H04L 47/12: Avoiding congestion; Recovering from congestion
- H04L 47/122: by diverting traffic away from congested entities
- H04L 49/25: Routing or path finding in a switch fabric
- H04L 49/50: Overload detection or protection within a single switching element
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Techniques for identifying network congestion and adapting network performance to relieve the network congestion are described. As described, a network element such as a switch reports network congestion indicators such as link level control frames to a network controller. The network controller uses the network congestion indicators reported from the network elements to identify congestion points, data traffic, and data flows experiencing congestion at a network level. The network controller then determines optimized control parameters for the network in order to reduce or alleviate the congestion at the congestion points.

## Claims

### Claim 1

A method comprising:
identifying, using replicated network congestion indicators, network congestion conditions for data traffic in a network;
determining, from the replicated network congestion indicators and the network congestion conditions, one or more congestion points in the network;
determining optimized control parameters for the network to mitigate the one or more congestion points in the network; and
broadcasting the optimized control parameters to one or more network switches.

### Claim 2 (depends on 1)

The method of claim 1, wherein identifying the network congestion conditions for the data traffic further comprises:
parsing the replicated network congestion indicators according to an encapsulation format;
extracting one or more designators from the parsed network congestion indicators;
extracting one or more link level frames from the parsed network congestion indicators;
identifying one or more network congestion conditions from the one or more designators and the one or more link level frames; and
storing the network congestion conditions as network congestion events.

### Claim 3 (depends on 1)

The method of claim 1, wherein determining the one or more congestion points in the network comprises:
determining from the replicated network congestion indicators and stored network congestion events one or more congestion patterns for the network;
grouping the congestion patterns for the network according to time and location information; and
determining, from the congestion patterns for the network, the one or more congestion points.

### Claim 4 (depends on 1)

The method of claim 1, wherein determining the optimized control parameters for the network to mitigate the one or more congestion points in the network comprises:
identifying one or more data flows utilizing the one or more congestion points;
determining alternate routes for the one or more data flows to bypass the one or more congestion points in the network;
determining one or more updated traffic parameters for the network; and
storing the one or more updated traffic parameters and the alternate routes as the optimized control parameters.

### Claim 5 (depends on 4)

The method of claim 4, wherein the one or more updated traffic parameters comprises one or more of:
updated quality of service parameters for the one or more congestion points; and
updated congestion management protocol parameters for the one or more congestion points, wherein the updated congestion management protocol parameters comprise one or more of:
an updated PAUSE quanta;
an updated reassertion interval;
an updated buffer allocation;
and updated scheduling priority; and
an updated reassertion threshold.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
storing the one or more congestion points and one or more congestion conditions in a congestion database;
receiving replicated network congestion indicators for additional data traffic;
correlating the replicated network congestion indicators for the additional data traffic with stored congestion data in the congestion database;
identifying network congestion actors from the correlation; and
transmitting the identified network congestion actors to a network administrator.

### Claim 7

A non-transitory computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code executable by one or more computer processors to perform an operation, the operation comprising:
identifying, using replicated network congestion indicators, network congestion conditions for data traffic in a network;
determining, from the replicated network congestion indicators and the network congestion conditions, one or more congestion points in the network;
determining optimized control parameters for the network to mitigate the one or more congestion points in the network; and
broadcasting the optimized control parameters to one or more network switches.

### Claim 8 (depends on 7)

The non-transitory computer-readable storage medium of claim 7, wherein identifying the replicated network congestion conditions for the data traffic further comprises:
parsing the replicated network congestion indicators according to an encapsulation format;
extracting one or more designators from the parsed network congestion indicators;
extracting one or more link level frames from the parsed network congestion indicators;
identifying one or more network congestion conditions from the one or more designators and the one or more link level frames; and
storing the network congestion conditions as network congestion events.

### Claim 9 (depends on 8)

The non-transitory computer-readable storage medium of claim 8, wherein determining the one or more congestion points in the network comprises:
determining from the replicated network congestion indicators and stored network congestion events one or more congestion patterns for the network;
grouping the congestion patterns for the network according to time and location information; and
determining, from the congestion patterns for the network, the one or more congestion points.

### Claim 10 (depends on 8)

The non-transitory computer-readable storage medium of claim 8, wherein determining the optimized control parameters for the network to mitigate the one or more congestion points in the network comprises:
identifying one or more data flows utilizing the one or more congestion points;
determining alternate routes for the one or more data flows to bypass the one or more congestion points in the network;
determining one or more updated traffic parameters for the network; and
storing the one or more updated traffic parameters and the alternate routes as the optimized control parameters.

### Claim 11 (depends on 10)

The non-transitory computer-readable storage medium of claim 10, wherein the one or more updated traffic parameters comprises one or more of:
updated quality of service parameters for the one or more congestion points; and
updated congestion management protocol parameters for the one or more congestion points, wherein the updated congestion management protocol parameters comprise one or more of:
an updated PAUSA quanta;
an updated reassertion interval;
an updated buffer allocation;
and updated scheduling priority; and
an updated reassertion threshold.

### Claim 12 (depends on 8)

The non-transitory computer-readable storage medium of claim 8, further comprising:
storing the one or more congestion points and one or more congestion conditions in a congestion database;
receiving replicated network congestion indicators for additional data traffic;
correlating the replicated network congestion indicators for the additional data traffic with stored congestion data in the congestion database;
identifying network congestion actors from the correlation; and
transmitting the identified network congestion actors to a network administrator.

### Claim 13

A system, comprising:
one or more processors; and
memory comprising instructions which, when executed on any combination of the one or more processors, performs an operation, the operation comprising:
identifying, using replicated network congestion indicators, network congestion conditions for data traffic in a network;
determining, from the replicated network congestion indicators and the network congestion conditions, one or more congestion points in the network;
determining optimized control parameters for the network to mitigate the one or more congestion points in the network; and
broadcasting the optimized control parameters to one or more network switches.

### Claim 14 (depends on 13)

The system of claim 13, wherein identifying the network congestion conditions for the data traffic further comprises:
parsing the replicated network congestion indicators according to an encapsulation format;
extracting one or more designators from the parsed network congestion indicators;
extracting one or more link level frames from the parsed network congestion indicators;
identifying one or more network congestion conditions from the one or more designators and the one or more link level frames; and
storing the network congestion conditions as network congestion events.

### Claim 15 (depends on 13)

The system of claim 13, wherein determining the one or more congestion points in the network comprises:
determining from the replicated network congestion indicators and stored network congestion events one or more congestion patterns for the network;
grouping the congestion patterns for the network according to time and location information; and
determining, from the congestion patterns for the network, the one or more congestion points.

### Claim 16 (depends on 13)

The system of claim 13, wherein determining the optimized control parameters for the network to mitigate the one or more congestion points in the network comprises:
identifying one or more data flows utilizing the one or more congestion points;
determining alternate routes for the one or more data flows to bypass the one or more congestion points in the network;
determining one or more updated traffic parameters for the network; and
storing the one or more updated traffic parameters and the alternate routes as the optimized control parameters.

### Claim 17 (depends on 16)

The system of claim 16, wherein the one or more updated traffic parameters comprises one or more of:
updated quality of service parameters for the one or more congestion points; and
updated congestion management protocol parameters for the one or more congestion points, wherein the updated congestion management protocol parameters comprise one or more of:
an updated PAUSA quanta;
an updated reassertion interval;
an updated buffer allocation;
and updated scheduling priority; and
an updated reassertion threshold.

### Claim 18 (depends on 13)

The system of claim 13, further comprising:
storing the one or more congestion points and one or more congestion conditions in a congestion database;
receiving replicated network congestion indicators for additional data traffic;
correlating the replicated network congestion indicators for the additional data traffic with stored congestion data in the congestion database;
identifying network congestion actors from the correlation; and
transmitting the identified network congestion actors to a network administrator.
