IP Library Granted Patent US 12683865
Granted Patent B2
US 12683865 · App. 18/119,356 · Granted Jul 14, 2026

Method for configuring network traffic and computer system thereof

Inventors: Tsai-Wei Wu (Hsinchu, TW); Hsu-Tung Wang (Hsinchu, TW); Yi-Kuan Wu (Hsinchu, TW); Ming-Chieh Li (Hsinchu, TW); Meng-Ju Lin (Hsinchu, TW)
Assignee: REALTEK SEMICONDUCTOR CORP.
H04L41/0896G06F9/544G06F9/545
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 12683865
App. No.
18/119,356
Granted
Jul 14, 2026
Kind
B2
Abstract

A method for configuring network traffic and a computer system are provided. The computer system includes a processing unit and a network module that is operated based on a bandwidth configuration. The processing unit operates an operating system that executes a profiling-controlling program. The method is performed in the operating system. In the method, the operating system initiates a system kernel, and the profiling-controlling program can obtain kernel operation information from the system kernel, so that information of multiple applications operating in a foreground process and a background process of the operating system can be retrieved. A priority order is decided, and a network bandwidth configuration is formed and written into traffic control instructions of the system kernel or a driver of the network module. The network bandwidth configuration allows the operating system to perform a traffic configuration on each of the applications.

Claims (26)

1 . A method for configuring network traffic, which is performed in a computer system, the method comprising:

operating an operating system in the computer system and initiating a system kernel;

retrieving, by a profiling routine, kernel operation information from the system kernel, so as to obtain information of a plurality of applications operating in a foreground process and in a background process of the operating system; and

deciding, according to the information of the applications operating in the foreground process and in the background process, a priority order of the plurality of applications by a controlling routine that determines whether each of the applications operates in the foreground process or in the background process according to a score;

wherein the score is an out-of-memory score used for the operating system to determine the priority order of the plurality of applications and is assigned to each of the applications based on a status of the application by the operating system; and the controlling routing performs a network bandwidth configuration on each of the applications when the controlling routine is notified by the profiling routine of an actual network bandwidth required by each of the applications according to the score assigned to each of the applications.

2 . The method according to claim 1 , wherein the operating system executes a profiling-controlling program that includes the profiling routine and the controlling routine.

3 . The method according to claim 2 , wherein the profiling routine and the controlling routine in the operating system are integrated into one operating procedure, or are two separate operating procedures that are able to communicate with each other or two separate operating procedures that share a shared memory.

4 . The method according to claim 2 , wherein the profiling-controlling program is a packet filtering program loaded to the system kernel in an initial phase of the operating system.

5 . The method according to claim 4 , wherein the packet filtering program is an extended Berkeley packet filter running in a Linux operating system.

6 . The method according to claim 4 , wherein the kernel operation information retrieved by the packet filtering program includes information of a kernel network stack, and the information of the kernel network stack includes information of packets under multiple network transmission protocols.

7 . The method according to claim 1 , wherein the network bandwidth configuration sets up a traffic configuration for each of the applications according to the priority order, and writes the traffic configuration into traffic control instructions of the system kernel or into a driver, so as to control a network module to perform the network bandwidth configuration.

8 . The method according to claim 7 , wherein the computer system provides a profiling-controlling user interface that allows a user to monitor operating statuses of the applications, to retrieve a status of network bandwidth usage of each of the applications, and to adjust the priority order of the applications running in the foreground process and in the background process.

9 . A computer system, which performs a method for configuring network traffic, the computer system comprising:

a processing unit, wherein the processing unit operates an operating system, and the operating system executes a profiling-controlling program having a controlling routine and a profiling routine; and

a network module, wherein the network module is electrically connected with the processing unit, and is driven by a driver executed in the operating system for providing a networking service;

wherein the method includes:

initiating a system kernel in the operating system;

retrieving, via the profiling routine of the profiling-controlling program, kernel operation information from the system kernel, so as to obtain information of a plurality of applications operating in a foreground process and in a background process of the operating system; and

deciding a priority order of the plurality of applications operating in the foreground process and in the background process by the controlling routine that determines whether each of the applications operates in the foreground process or in the background process according to a score;

wherein the score is an out-of-memory score used for the operating system to determine the priority order of the plurality of applications and is assigned to each of the applications based on a status of the application by the operating system; and the controlling routine performs a network bandwidth configuration on each of the applications when the controlling routine is notified by the profiling routine of an actual network bandwidth required by each of the applications according to the score assigned to each of the applications.

10 . The computer system according to claim 9 , wherein the profiling routine and the controlling routine in the operating system are integrated into one operating procedure, or are two separate operating procedures that are able to communicate with each other, or two separate operating procedures that share a shared memory.

11 . The computer system according to claim 9 , wherein the profiling-controlling program is a packet filtering program loaded to the system kernel in an initial phase of the operating system.

12 . The computer system according to claim 11 , wherein the packet filtering program is an extended Berkeley packet filter running in a Linux operating system.

13 . The computer system according to claim 11 , wherein the kernel operation information retrieved by the packet filtering program includes information of a kernel network stack and the information of the kernel network stack includes information of packets under multiple network transmission protocols.

14 . The computer system according to claim 9 , wherein the network bandwidth configuration sets up a traffic configuration for each of the applications according to the priority order, and writes the traffic configuration into traffic control instructions of the system kernel or into the driver, so as to control the network module to perform the network bandwidth configuration.

15 . The computer system according to claim 14 , wherein the computer system provides a profiling-controlling user interface that allows a user to monitor operating statuses of the applications to retrieve a status of network bandwidth usage of each of the applications, and to adjust the priority order of the applications running in the foreground process and in the background process.