IP Library Granted Patent US 12,395,437
Granted Patent B2
US 12,395,437 · App. 17/979,948 · Granted Aug 19, 2025

Apparatus and method for managing network flow congestion

Inventors: Donggun Keung (San Jose, CA); Charles Chen (San Jose, CA)
Assignee: REALTEK SINGAPORE PRIVATE LIMITED
H04L47/129H04L47/196
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 12,395,437
App. No.
17/979,948
Granted
Aug 19, 2025
Kind
B2
Abstract

An apparatus and a method for managing network flow congestion are provided. The method for managing network flow congestion includes: receiving a plurality of packets; identifying whether each packet belongs to a predetermined protocol; distinguishing a plurality of connections of the packets belonged to the predetermined protocol; monitoring a buffer usage of each different connections; and performing a congestion check procedure on the currently monitored connection. In the congestion check procedure, when the buffer usage of the currently monitored connection exceeds a threshold, a congestion processing procedure is triggered.

Claims (30)

1. A method for managing network flow congestion, comprising:

receiving a plurality of packets;

identifying whether each packet belongs to a transmission control protocol (TCP);

distinguishing a plurality of connections of the packets belonged to the transmission control protocol;

monitoring a buffer usage of each different connections; and

performing a congestion check procedure on the currently monitored connection, wherein in the congestion check procedure, when the buffer usage of the currently monitored connection exceeds a threshold, a congestion processing procedure is triggered;

wherein the packet, which does not belong to the transmission control protocol, is directly passed to be stored in a buffer pool to wait for output.

2. The method for managing network flow congestion according to claim 1 , further comprising

determining whether to perform the congestion check procedure according to a remainder of the buffer corresponding to the currently monitored connection and a congestion indication threshold.

3. The method for managing network flow congestion according to claim 1 , wherein the threshold is a mark threshold, and the congestion processing procedure is to set a CE (Congestion Experienced) code point in the packet corresponding to the currently monitored connection.

4. The method for managing network flow congestion according to claim 3 , wherein an ECE flag is set to a TCP ACK packet and the TCP ACK packet is sent back to a transmit end.

5. The method for managing network flow congestion according to claim 4 , wherein a size of a congestion window in the transmit end is reduced according to the ECE flag of the TCP ACK packet.

6. The method for managing network flow congestion according to claim 3 , wherein the mark threshold is dynamically reduced as the number of connections increases.

7. The method for managing network flow congestion according to claim 1 , wherein the threshold is a drop threshold, and the congestion processing procedure is to drop the packet corresponding to the currently monitored connection.

8. The method for managing network flow congestion according to claim 1 , further comprising:

checking a FIN flag and a RST flag of each of the packets, and canceling the monitoring of the buffer usage corresponding to the connection when the FIN flag or the RST flag is set.

9. The method for managing network flow congestion according to claim 1 , wherein the threshold is adjusted over a management network path.

10. An apparatus for managing network flow congestion, comprising:

a receive port, configured to receive a plurality of packets;

a buffer pool, configured to store the packets;

a management circuit, configured to identify whether each packet belongs to a transmission control protocol (TCP), distinguish a plurality of connections of the packets belonged to the transmission control protocol, monitor a buffer usage of each different connections of the packets belonged to the transmission control protocol, and perform a congestion check procedure on the currently monitored connection, wherein in the congestion check procedure, when the buffer usage of the currently monitored connection exceeds a threshold, a congestion processing procedure is triggered; and

an output port, configured to output the packets stored in the buffers;

wherein the packet, which does not belong to the transmission control protocol, is directly passed to be stored in a buffer pool to wait for output.

11. The apparatus for managing network flow congestion according to claim 10 , wherein the threshold is a mark threshold, and the congestion processing procedure is to set a CE (Congestion Experienced) code point in the packet corresponding to the currently monitored connection.

12. The apparatus for managing network flow congestion according to claim 11 , wherein an ECE flag is set to a TCP ACK packet and the TCP ACK packet is sent back to a transmit end, and wherein the transmit end reduces a size of a congestion window according to the ECE flag of the TCP ACK packet.

13. The apparatus for managing network flow congestion according to claim 11 , wherein the mark threshold is dynamically reduced as the number of connections increases.

14. The apparatus for managing network flow congestion according to claim 10 , wherein the threshold is a drop threshold, and the congestion processing procedure is to drop the packet corresponding to the currently monitored connection.

15. The apparatus for managing network flow congestion according to claim 10 , wherein the management circuit further determines whether to perform the congestion check procedure according to a buffer remainder corresponding to the currently monitored connection and a congestion indication threshold.

16. The apparatus for managing network flow congestion according to claim 10 , wherein the management circuit further checks a FIN flag and a RST flag of each of the packets, and cancels the monitoring of the buffer usage corresponding to the connection when the FIN flag or the RST flag is set.

17. The apparatus for managing network flow congestion according to claim 10 , wherein the threshold is adjusted over a management network path.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2022
From: KEUNG, DONGGUN; CHEN, CHARLES
To: CORTINA ACCESS, INC.
Reel/Frame 061645/0160 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2022
From: CORTINA ACCESS, INC.
To: REALTEK SINGAPORE PRIVATE LIMITED
Reel/Frame 061645/0164 →
Continuity (2)
Continuation In Part 17676932 · Feb 22, 2022
Related Publication 20230269187A1 · Aug 24, 2023
References Cited (18)
US 8433808B1 · Hong · 2013 [cited by examiner]
US 9391911B1 · Anderson · 2016 [cited by examiner]
US 11115385B1 · Patel · 2021 [cited by examiner]
US 20060176810A1 · Kekki · 2006 [cited by examiner]
US 20070091900A1 · Asthana · 2007 [cited by examiner]
US 20100246400A1 · Onishi · 2010 [cited by examiner]
US 20140126357A1 · Kulkarni · 2014 [cited by examiner]
US 20140164641A1 · Ye · 2014 [cited by examiner]
US 20180139131A1 · Ignatchenko · 2018 [cited by examiner]
US 20190222523A1 · Toy · 2019 [cited by applicant]
US 20190253364A1 · Li · 2019 [cited by examiner]
US 20210144161A1 · Mittal · 2021 [cited by examiner]
US 20210344603A1 · Ramachandran et al. · 2021 [cited by applicant]
CN 103297346A · 2013 [cited by applicant]
BBR Congestion Control draft-cardwell-iccrg-bbr-congestion-control-00; Jul. 3, 2017. [cited by applicant]
IEEE Standard for Local and metropolitan area networks—Bridges and Bridged Networks; 2014 (relevant sections 6.5.9, 6.9.3, 8.6.7, and 1.2). [cited by applicant]
TCP Congestion Control; Sep. 2009. [cited by applicant]
Data Center TCP (DCTCP): TCP Congestion Control for Data Centers; Oct. 2017. [cited by applicant]