# US 12,010,044 B2 · Method for managing data throughput

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

- Number: US 12,010,044 B2
- Document ID: US12010044B2
- Status: Granted
- Kind: B2
- Application number: 17/496,449
- Filed: 2021-10-07
- Published: 2022-10-13
- Granted: 2024-06-11
- Earliest claimed: 2021-04-07
- Assignees: Gt Booster Inc.
- Applicants: Gt Booster Inc.
- Inventors: Shun Yuan Yang; Chiao Min Hu; Wei Teng Tai
- Web page: https://patentgrep.com/patent/US12010044B2

## CPC

- H04L 49/90: Buffering arrangements
- H04L 41/50: Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L 43/0888: Throughput
- H04L 43/0894: Packet rate
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method for managing data throughput of a network device is provided. The method includes: determining a network communication as belonging to a first class or a second class; enqueuing each packet received through the network communication determined as belonging to the first class to a first queue, and enqueuing each packet received through the networking communication determined as belonging to the second class to a second queue; dequeuing the first and second queues at a dequeuing ratio; determining a data rate of dequeuing the second queue; and adjusting the dequeuing ratio based on the data rate of dequeuing the second queue thus determined, a total bandwidth, and a guaranteed minimum bandwidth for the network communication determined as belonging to the first class.

## Claims

### Claim 1

A method for managing data throughput of a network device in one of an uploading direction and a downloading direction, the method comprising steps of:
determining each network communication, through which the network device transmits data, as belonging to which one of a first class related to a network service that requires a greater bandwidth for smooth transmission of data, and a second class related to a network service that requires a less bandwidth, the first class of network communication having a guaranteed minimum bandwidth reserved therefor;
for each data packet that is received by the network device through the network communication determined as belonging to the first class, enqueuing the data packet to a first queue;
for each data packet that is received by the network device through the network communication determined as belonging to the second class, enqueuing the data packet to a second queue;
dequeuing the first queue and the second queue at a dequeuing ratio by transmitting each data packet enqueued to the first queue through the network communication determined as belonging to the first class and transmitting each data packet enqueued to the second queue through the network communication determined as belonging to the second class, the dequeuing ratio being a ratio of an amount of data packets dequeued from the first queue to an amount of data packets dequeued from the second queue;
determining a data rate of dequeuing the second queue; and
adjusting the dequeuing ratio based on the data rate of dequeuing the second queue thus determined, a total bandwidth for the network device, and the guaranteed minimum bandwidth for the network communication determined as belonging to the first class,
wherein the step of adjusting the dequeuing ratio includes gradually increasing the dequeuing ratio when the data rate of dequeuing the second queue is increasing, and
wherein the adjusting the dequeuing ratio includes:
making the dequeuing ratio equal to a lower ratio value when the data rate of dequeuing the second queue is smaller than a lower reference value, the lower reference value being expressed by (B−R1*K1), where B is the total bandwidth, R1 is the guaranteed minimum bandwidth, and K1 is a predetermined parameter;
making the dequeuing ratio equal to a predetermined ratio value (Vi) when the data rate of dequeuing the second queue is within a range of greater than (B−R1*Ki-1) and not greater than (B−R1*K1), where i is a variable that is a positive integer ranging from 2 to N−1, each Ki is a parameter having a predetermined value not smaller than one, and N is a predetermined parameter that is a positive integer and represents a number of ranges in which the data rate of dequeuing the second queue may fall; and
making the dequeuing ratio equal to an upper ratio value when the data rate of dequeuing the second queue is greater than an upper reference value, the upper reference value being expressed by (B−R1*KN).

### Claim 2 (depends on 1)

The method as claimed in claim 1, wherein the step of identifying each network communication includes identifying the network communication that is related to the network service of audio-video playing and online gaming as the first class, and determining the network communication that is not related to the network service of audio-video playing or online gaming as belonging to the second class.

### Claim 3 (depends on 1)

The method as claimed in claim 1, wherein N is equal to 3, K1 is equal to 2, K2 is equal to 1, the lower ratio value is equal to 1, V2 is equal to 2, and the upper ratio value is equal to 3.

### Claim 4 (depends on 1)

The method as claimed in claim 1, further comprising steps of:
for every predetermined time period, determining an input data rate that is a data rate of receiving data packets by the network device through the network communication during the predetermined time period;
designating the greater one of the input data rate and the total bandwidth as a maximal data rate;
determining whether a preset condition is satisfied;
using the maximal data rate as the total bandwidth for the network device when the preset condition is not satisfied; and
determining an adjusted data rate that is smaller than the maximal data rate based on the maximal data rate, and using the adjusted data rate as the total bandwidth for the network device when the preset condition is satisfied.

### Claim 5 (depends on 4)

The method as claimed in claim 4, wherein the step of determining an adjusted data rate includes calculating the adjusted data rate by multiplying the maximal data rate by a preset percentage ranging between 0% and 100%.

### Claim 6 (depends on 4)

The method as claimed in claim 4, wherein the step of determining an adjusted data rate includes calculating the adjusted data rate by subtracting a preset rate from the maximal data rate, the preset rate ranging between 0 and the maximal data rate.

### Claim 7 (depends on 4)

The method as claimed in claim 4, wherein the preset condition is that a preset time period has elapsed.

### Claim 8 (depends on 4)

The method as claimed in claim 4, wherein the preset condition is that a first preset time period has elapsed and the input data rate continues to be smaller than the total bandwidth for a second preset time period.

### Claim 9 (depends on 4)

The method as claimed in claim 4, wherein the preset condition is that network congestion occurs in the network communication.
