CN114710411B - Bandwidth allocation method, device, gateway and storage medium - Google Patents

Bandwidth allocation method, device, gateway and storage medium Download PDF

Info

Publication number
CN114710411B
CN114710411B CN202210359394.4A CN202210359394A CN114710411B CN 114710411 B CN114710411 B CN 114710411B CN 202210359394 A CN202210359394 A CN 202210359394A CN 114710411 B CN114710411 B CN 114710411B
Authority
CN
China
Prior art keywords
bandwidth
application
application program
determining
application programs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210359394.4A
Other languages
Chinese (zh)
Other versions
CN114710411A (en
Inventor
刘忠飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202210359394.4A priority Critical patent/CN114710411B/en
Publication of CN114710411A publication Critical patent/CN114710411A/en
Application granted granted Critical
Publication of CN114710411B publication Critical patent/CN114710411B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • H04L41/0886Fully automatic configuration

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the application provides a bandwidth allocation method, a device, a gateway and a storage medium. The method comprises the following steps: determining N running application programs in a plurality of electronic devices, wherein the plurality of electronic devices are positioned in the same local area network, and N is an integer greater than or equal to 1; acquiring application information of each application program, wherein the application information comprises: the identification of the electronic equipment where the application program is located, the priority of the application program and the maximum bandwidth of the application program; acquiring the total available bandwidth of the local area network; determining the allocation bandwidth of each application program according to the application information of each application program and the total available bandwidth; and determining the allocated bandwidth of each electronic device according to the allocated bandwidth of each application program, and allocating the bandwidth to the plurality of electronic devices according to the allocated bandwidth of each electronic device. The flexibility of bandwidth allocation is improved.

Description

Bandwidth allocation method, device, gateway and storage medium
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a bandwidth allocation method, a device, a gateway and a storage medium.
Background
Multiple electronic devices (e.g., cell phones, computers, televisions, etc.) may access the same local area network and share bandwidth resources of the local area network.
In order to enable the electronic devices to reasonably share bandwidth resources of the local area network, bandwidth allocation can be performed on the gateway of the local area network for the electronic devices, namely, the maximum available bandwidth of the electronic devices is configured in the gateway. In the related art, the maximum available bandwidth of each electronic device is set in the gateway in a manual manner, and after the setting is completed, if the maximum available bandwidth of each electronic device needs to be modified, the modification needs to be performed in the gateway manually, which results in poor flexibility of bandwidth allocation.
Disclosure of Invention
The embodiment of the application provides a bandwidth allocation method, a device, a gateway and a storage medium, which improve the flexibility of bandwidth allocation and solve the problem of poor flexibility of bandwidth allocation.
In a first aspect, an embodiment of the present application provides a bandwidth allocation method, where the method includes:
determining N running application programs in a plurality of electronic devices, wherein the plurality of electronic devices are positioned in the same local area network, and N is an integer greater than or equal to 1;
acquiring application information of each application program, wherein the application information comprises: the identification of the electronic equipment where the application program is located, the priority of the application program and the maximum bandwidth of the application program;
acquiring the total available bandwidth of the local area network;
determining the allocation bandwidth of each application program according to the application information of each application program and the total available bandwidth;
and determining the allocated bandwidth of each electronic device according to the allocated bandwidth of each application program, and allocating the bandwidth to the plurality of electronic devices according to the allocated bandwidth of each electronic device.
In one possible implementation, determining the allocated bandwidth allocated to each application program according to the application information of each application program and the total available bandwidth includes:
determining the arrangement sequence of the N application programs according to the priorities of the N application programs;
and determining the allocation bandwidth of each application program according to the total available bandwidth, the arrangement sequence and the maximum bandwidth of each application program.
In one possible implementation, determining the ranking order of the N applications according to the priorities of the N applications includes:
if the priorities of the N application programs are different, sequencing the N application programs according to the order of the priorities of the N application programs from high to low to obtain the sequence of the N application programs;
if at least two first application programs with the same priority exist in the N application programs, acquiring the use duration of each first application program, and determining the arrangement sequence of the N application programs according to the use duration of each first application program and the priority of each application program.
In one possible implementation manner, determining the arrangement order of the N applications according to the use duration of each first application and the priority of each application includes:
sequencing the N application programs according to the order of the priority of the N application programs from high to low;
and sequencing the first application programs in the sequenced N application programs according to the sequence of the using time length of the first application programs from big to small, so as to obtain the sequence of the N application programs.
In one possible implementation, determining the allocated bandwidth of each application program according to the total available bandwidth, the ranking, and the maximum bandwidth of each application program includes:
if the N is 1, determining that the allocated bandwidths of the N application programs are the total available bandwidths;
and if the N is greater than 1, determining the allocated bandwidth of each application program according to the total available bandwidth and the maximum bandwidth of each application program according to the sequence from front to back of the arrangement sequence.
In one possible implementation, determining the allocated bandwidth of each application program according to the total available bandwidth and the maximum bandwidth of each application program according to the order from front to back of the arrangement order includes:
determining a residual bandwidth according to the allocated bandwidth for the first i-1 application programs and the total available bandwidth;
if the residual bandwidth is smaller than the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the residual bandwidth; if the remaining bandwidth is greater than or equal to the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the maximum bandwidth;
wherein i is 1, 2, … … and N in sequence.
In one possible implementation, allocating bandwidth to the plurality of electronic devices according to the allocated bandwidth of each electronic device includes:
and configuring the allocated bandwidth of each electronic device in a gateway so that the gateway allocates bandwidth for the plurality of electronic devices, wherein the gateway is used for providing services for the electronic devices in the local area network.
In a second aspect, an embodiment of the present application provides a bandwidth allocation apparatus, including:
the first determining module is used for determining N running application programs in a plurality of electronic devices, wherein the plurality of electronic devices are positioned in the same local area network, and N is an integer greater than or equal to 1;
the first acquisition module is used for acquiring application information of each application program, and the application information comprises: the identification of the electronic equipment where the application program is located, the priority of the application program and the maximum bandwidth of the application program;
the second acquisition module is used for acquiring the total available bandwidth of the local area network;
the second determining module is used for determining the allocation bandwidth of each application program according to the application information of each application program and the total available bandwidth;
a third determining module, configured to determine an allocated bandwidth of each electronic device according to the allocated bandwidth of each application program;
and the distribution module is used for distributing the bandwidths for the plurality of electronic devices according to the distributed bandwidths of each electronic device.
In one possible implementation manner, the second determining module is specifically configured to:
determining the arrangement sequence of the N application programs according to the priorities of the N application programs;
and determining the allocation bandwidth of each application program according to the total available bandwidth, the arrangement sequence and the maximum bandwidth of each application program.
In one possible implementation manner, the second determining module is specifically configured to:
if the priorities of the N application programs are different, sequencing the N application programs according to the order of the priorities of the N application programs from high to low to obtain the sequence of the N application programs;
if at least two first application programs with the same priority exist in the N application programs, acquiring the use duration of each first application program, and determining the arrangement sequence of the N application programs according to the use duration of each first application program and the priority of each application program.
In one possible implementation manner, the second determining module is specifically configured to:
sequencing the N application programs according to the order of the priority of the N application programs from high to low;
and sequencing the first application programs in the sequenced N application programs according to the sequence of the using time length of the first application programs from big to small, so as to obtain the sequence of the N application programs.
In one possible implementation manner, the second determining module is specifically configured to:
if the N is 1, determining that the allocated bandwidths of the N application programs are the total available bandwidths;
and if the N is greater than 1, determining the allocated bandwidth of each application program according to the total available bandwidth and the maximum bandwidth of each application program according to the sequence from front to back of the arrangement sequence.
In one possible implementation manner, the second determining module is specifically configured to:
determining a residual bandwidth according to the allocated bandwidth for the first i-1 application programs and the total available bandwidth;
if the residual bandwidth is smaller than the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the residual bandwidth; if the remaining bandwidth is greater than or equal to the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the maximum bandwidth;
wherein i is 1, 2, … … and N in sequence.
In one possible embodiment, the allocation module is specifically configured to:
and configuring the allocated bandwidth of each electronic device in a gateway so that the gateway allocates bandwidth for the plurality of electronic devices, wherein the gateway is used for providing services for the electronic devices in the local area network.
In a third aspect, an embodiment of the present application provides a gateway, including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of the first aspects.
In a fourth aspect, embodiments of the present application provide a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method according to any one of the first aspects.
According to the bandwidth allocation method, the device, the gateway and the storage medium, the gateway can monitor the running condition of each application program in each electronic device in real time, and allocate the bandwidth to the electronic device according to the running condition of each application program in the electronic device, so that the bandwidth allocated to each electronic device is related to the actual running condition of the electronic device, the flexibility of bandwidth allocation is improved, and the rationality of bandwidth allocation to each electronic device is improved.
Drawings
Fig. 1 is a schematic diagram of an application scenario provided in an embodiment of the present application;
fig. 2 is a flow chart of a bandwidth allocation method according to an embodiment of the present application;
fig. 3 is a flow chart of another bandwidth allocation method according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a bandwidth allocation device according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a gateway according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples do not represent all implementations consistent with the application. Rather, they are merely examples of apparatus and methods consistent with aspects of the application as detailed in the accompanying claims.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
In order to facilitate understanding, an application scenario to which the embodiment of the present application is applicable is described below with reference to fig. 1.
Fig. 1 is a schematic diagram of an application scenario provided in an embodiment of the present application. Referring to fig. 1, a local area network includes a gateway 101 and a plurality of electronic devices 102. The plurality of electronic devices 102 may share network resources of the local area network through the gateway 101, respectively. The gateway 101 may allocate bandwidth to each electronic device 101. For example, gateway 101 may be a device such as a router. The electronic device 102 may be a computer, a mobile phone, etc.
In the related art, it is necessary to manually set the maximum available bandwidth of the electronic devices in the gateway, and after the setting is completed, if the maximum available bandwidth of each electronic device needs to be modified, it is necessary to manually modify the maximum available bandwidth in the gateway, resulting in poor flexibility of bandwidth allocation.
In the embodiment of the application, the application programs are installed in the electronic equipment, and the gateway can detect the running condition of each application program in each electronic equipment and allocate the bandwidth to the electronic equipment according to the running condition of each application program in the electronic equipment, so that the bandwidth allocated to each electronic equipment is related to the actual running condition of the electronic equipment, the flexibility of bandwidth allocation is improved, and the rationality of bandwidth allocation to each electronic equipment is also improved.
Fig. 2 is a flow chart of a bandwidth allocation method according to an embodiment of the present application. Referring to fig. 2, the method may include:
s201, N running application programs are determined in a plurality of electronic devices.
The implementation main body of the embodiment of the application is a gateway, and can also be a bandwidth allocation device arranged in the gateway. The bandwidth allocation means may be implemented by software or by a combination of software and hardware.
Multiple electronic devices are located on the same local area network, and multiple applications can be installed in the electronic devices. One or more applications may be running simultaneously in the electronic device, which requires network bandwidth to be used by the electronic device during the running of the applications.
The N applications are applications currently running in the plurality of electronic devices. N is an integer greater than or equal to 1.
For example, the same lan includes 3 electronic devices, namely, a computer 1, a computer 2 and a mobile phone 1, and if 3 applications are running in the computer 1, 1 application is running in the computer 2, and 1 application is running in the mobile phone 1, it can be determined that 5 applications are running in the 3 electronic devices.
S202, acquiring application information of each application program.
The application information includes: the identity of the electronic device in which the application is located, the priority of the application, the maximum bandwidth of the application.
The priorities of the same type of application are the same, i.e. if the types of the two applications are the same, the priorities of the two applications are the same. The priorities of the application programs of various types can be preset in the gateway, and accordingly, when the priorities of the application programs are determined, the types of the application programs can be determined first, and then the priorities of the application programs can be determined according to the types of the application programs.
For example, assume that a plurality of electronic devices in a local area network have installed therein a plurality of types of applications as follows: office class, finance class, video conference class, game class, download class, user can set up the priority of this multiple application program as per the own needs as shown in table 1 respectively:
TABLE 1
Type of application Priority level
Office class 1
Video conference class 2
Finance class 3
Download class 4
Game class 5
Referring to table 1, it is assumed that the user considers that the importance of the application of the office class is highest, and the importance of the application of the game class is lowest, and the priorities of the applications of the office class, the video conference class, the financial class, the download class, and the game class are sequentially ordered from high to low.
The maximum bandwidth of an application refers to: the maximum bandwidth used by the application during its operation.
The priority ranking may be integrated according to a priority order set by the user and application information of each application.
S203, acquiring the total available bandwidth of the local area network.
The total available bandwidth refers to the total bandwidth that the gateway can provide to all electronic devices within the local area network.
S204, determining the allocation bandwidth of each application program according to the application information of each application program and the total available bandwidth.
The arrangement sequence of the N application programs can be determined according to the priorities of the N application programs; and determining the allocation bandwidth of each application program according to the total available bandwidth, the arrangement sequence and the maximum bandwidth of each application program.
If only one application is running, the allocated bandwidth of the application is determined to be the total available bandwidth.
If the running application program is more than one, when the bandwidth is allocated to the ith application program, determining the residual bandwidth according to the allocated bandwidth and the total available bandwidth of the previous i-1 application programs. If the residual bandwidth is smaller than the maximum bandwidth of the ith application program, determining the allocated bandwidth of the ith application program as the residual bandwidth; and if the remaining bandwidth is greater than or equal to the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the maximum bandwidth.
For example: in the same local area network, an application program A, an application program B, an application program C and an application program D are running, and the total available bandwidth is 100M. Suppose that the order of arrangement and maximum bandwidth of the 4 applications are as shown in table 2:
TABLE 2
Application name Maximum bandwidth
A 10M
B 20M
C 50M
D 30M
The bandwidth allocated for each application may be as shown in table 3:
TABLE 3 Table 3
Application name Maximum bandwidth Allocating bandwidth
A 10M 10M
B 20M 20M
C 50M 50M
D 30M 20M
S205, determining the allocated bandwidth of each electronic device according to the allocated bandwidth of each application program, and allocating the bandwidth to a plurality of electronic devices according to the allocated bandwidth of each electronic device.
The allocated bandwidth for each electronic device is the sum of the allocated bandwidths for each application in the electronic device. For example, in computer 1,3 applications are running, application 1, application 2, and application 3. The allocation bandwidth of the application 1 is 10M, the allocation bandwidth of the application 2 is 50M, and the allocation bandwidth of the application 3 is 5M, so that the allocation bandwidth of the computer 1 is 10m+50m+5m=65m.
According to the bandwidth allocation method provided by the embodiment of the application, N running application programs are determined in a plurality of electronic devices; acquiring application information of each application program; acquiring the total available bandwidth of a local area network; determining the allocation bandwidth of each application program according to the application information of each application program and the total available bandwidth; and determining the allocated bandwidth of each electronic device according to the allocated bandwidth of each application program, and allocating the bandwidth to a plurality of electronic devices according to the allocated bandwidth of each electronic device. In the process, the gateway can monitor the running condition of each application program in each electronic device in real time, and allocate bandwidth to the electronic device according to the running condition of each application program in the electronic device, so that the flexibility of bandwidth allocation is improved, and the rationality of bandwidth allocation of each electronic device is also improved.
On the basis of any one of the above embodiments, a bandwidth allocation method shown in the present application will be described in further detail with reference to fig. 3.
Fig. 3 is a flow chart of another bandwidth allocation method according to an embodiment of the present application. Referring to fig. 3, the method may include:
s301, determining N running application programs in a plurality of electronic devices, wherein the plurality of electronic devices are located in the same local area network, and N is an integer greater than or equal to 1.
S302, acquiring application information of each application program, wherein the application information comprises: the identity of the electronic device in which the application is located, the priority of the application, the maximum bandwidth of the application.
For example, the same lan includes 2 electronic devices, namely, computer 1 and computer 2, where computer 1 is running application a and application B, and computer 2 is running application C and application D, and application information of these four applications is shown in table 4:
TABLE 4 Table 4
Application name Electronic device identification Priority level Maximum bandwidth
A Computer 1 1 10M
B Computer 1 3 20M
C Computer 2 2 50M
D Computer 2 3 30M
S303, acquiring the total available bandwidth of the local area network.
It should be noted that, the execution process of S301-S303 may refer to the execution process of S201-S203, and will not be described herein.
S304, determining the arrangement sequence of the N application programs according to the priorities of the N application programs.
The priorities of the N applications may be different, and the priorities of some of the N applications may be the same, where the N applications are different in the case where the priorities of the N applications belong to different priorities, and the manner of determining the ranking order of the N applications is different, including the following two cases:
the priorities of the case 1 and the N application programs are different.
In this case, the N applications may be ordered in order of priority of the N applications from high to low, resulting in an order of the N applications.
For example, if the same lan has an application a, an application B, and an application C running, and the three applications have priorities of 2,1, and 3, the order of arrangement of the 3 applications is application B, application a, and application C.
In case 2, there are at least two first applications with the same priority among the N applications.
In this case, the use duration of each first application may be acquired, and the arrangement order of the N applications may be determined according to the use duration of each first application and the priority of each application. And sequencing the first application programs in the N sequenced application programs according to the sequence of the using time length of the first application programs from big to small, so as to obtain the sequence of the N application programs.
For example, in the same lan, there are application a, application B, application C, and application D running, and the priorities and the time durations of these four applications are shown in table 5:
TABLE 5
Application name Priority level Long service life
A 1 1 hour
B 3 1.5 hours
C 1 For 2 hours
D 2 1 hour
Referring to table 5, since the priority of the application program a and the application program C are the same, and the service duration of the application program a is shorter than the service duration of the application program C, the arrangement sequence of the four application programs is as follows: application C, application A, application D, application B.
S305, determining the allocation bandwidth of each application program according to the total available bandwidth, the arrangement sequence and the maximum bandwidth of each application program.
When the number N of running applications is different, the manner of determining the allocated bandwidth for each application is also different, including the following two cases:
case 1 and N are 1.
In this case, the allocated bandwidth of the N applications may be determined as the total available bandwidth.
For example, in the same lan, assuming that only the application program a of the computer 1 is running, the total available bandwidth of the lan is 100M, and the maximum bandwidth of the application program a is 10M, the allocated bandwidth of the application program a is 100M.
Case 2, N is greater than 1.
In this case, the allocated bandwidth of each application may be determined according to the total available bandwidth and the maximum bandwidth of each application, respectively, in the order from front to back of the arrangement order.
For example, the allocation bandwidth of the 1 st application may be determined first, then the allocation bandwidth of the 2 nd application may be determined, then the allocation bandwidth of the 3 rd application may be determined, and so on until the allocation bandwidths of all applications are determined.
The same manner of determining the allocated bandwidth of any one application program is described below by taking the process of determining the allocated bandwidth of the ith application program as an example:
for any ith application, the remaining bandwidth may be determined based on the allocated bandwidth and the total available bandwidth for the first i-1 applications. If the residual bandwidth is smaller than the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the residual bandwidth; and if the remaining bandwidth is greater than or equal to the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the maximum bandwidth.
For example, the same lan has application a, application B, application C, and application D running, and the total available bandwidth is 100M. Suppose that the order of arrangement and maximum bandwidth of the 4 applications are as shown in table 6:
TABLE 6
Application name Maximum bandwidth
A 10M
B 20M
C 50M
D 30M
The bandwidth allocated for each application may be as shown in table 7:
TABLE 7
Application name Maximum bandwidth Allocating bandwidth
A 10M 10M
B 20M 20M
C 50M 50M
D 30M 20M
S306, determining the allocated bandwidth of each electronic device according to the allocated bandwidth of each application program.
It should be noted that, the execution process of S306 may refer to the execution process of S205, which is not described herein.
S307, configuring the allocated bandwidth of each electronic device in the gateway.
Alternatively, the bandwidth allocated for each electronic device may be written into the configuration module to implement the bandwidth allocated for the electronic device in the gateway.
And S308, the gateway allocates bandwidth for the plurality of electronic devices according to the configuration.
The gateway determines the allocated bandwidth of each electronic device according to the use condition of each application program in the local area network, and allocates the bandwidth of each electronic device in real time.
In the embodiment shown in fig. 3, the gateway can monitor the running condition of each application program in each electronic device in real time, and allocate bandwidth to the electronic device according to the running condition of each application program in the electronic device, so that not only is the flexibility of bandwidth allocation improved, but also the rationality of bandwidth allocation of each electronic device is improved.
Optionally, the gateway may include a speed measurement module, a DPI (Deep Packet Inspection) module, a QoS (Quality of Service) module, and a configuration module. Bandwidth allocation can be made by the 4 modules.
The speed measuring module can periodically test and record the total available bandwidth in the local area network, for example, the speed measuring module can test the total available bandwidth once a week, and the accuracy of the measured total available bandwidth is ensured.
The DPI module can acquire application information of each running application program, and order all running application programs in the same local area network according to the application program information to obtain the arrangement sequence of all running application programs.
The QoS module may allocate bandwidth to each application in turn according to the arrangement sequence of the applications, and determine the allocated bandwidth of each electronic device in the local area network according to the allocated bandwidth of each application.
The configuration module can acquire the allocated bandwidth of each electronic device, the allocated bandwidth value is set in the gateway, and the gateway allocates the bandwidth for each electronic device according to the bandwidth value set by the configuration module.
The following describes in detail the technical solution shown in the embodiment of the present application by a specific example.
For example, assuming that the lan includes two computers, namely, computer 1 and computer 2, respectively, when the gateway needs to perform bandwidth allocation, the DPI module in the gateway obtains the running application programs in computer 1 and computer 2, and assuming that the running application program in computer 1 includes application program a and application program B, and the running application program in computer 2 includes application program C and application program D, the DPI module obtains the application information of the 4 application programs as shown in table 8:
TABLE 8
Application name Electronic device identification Priority level Maximum bandwidth
A Computer 1 1 10M
B Computer 1 3 20M
C Computer 2 4 40M
D Computer 2 2 30M
The QoS module sorts the 4 application programs according to the application information of the 4 application programs, wherein the arrangement sequence is an application program A, an application program D, an application program B and an application program D.
Assuming that the total available bandwidth acquired by the speed measurement module is 100M, the QoS module may allocate bandwidth for each application according to the information in table 8 as shown in table 9:
TABLE 9
Application name Electronic device identification Allocating bandwidth
A Computer 1 10M
B Computer 1 20M
C Computer 2 40M
D Computer 2 30M
The allocated bandwidth for each electronic device in the local area network is: allocated bandwidth of computer 1 = 10m+20m = 30M; the allocated bandwidth of the computer 2 is=40m+30m=70m.
The configuration module may set the bandwidth data allocated to each computer in the gateway so that the bandwidth allocated to the computer 1 by the gateway is 30M and the bandwidth allocated to the computer 2 is 70M.
Fig. 4 is a schematic structural diagram of a bandwidth allocation apparatus according to an embodiment of the present application. Referring to fig. 4, the bandwidth allocation apparatus 10 may include:
a first obtaining module 11, configured to obtain application information of each application program, where the application information includes: the identification of the electronic equipment where the application program is located, the priority of the application program and the maximum bandwidth of the application program;
a second obtaining module 12, configured to obtain a total available bandwidth of the local area network;
a second determining module 13, configured to determine an allocated bandwidth of each application program according to the application information of each application program and the total available bandwidth;
a third determining module 14, configured to determine an allocated bandwidth of each electronic device according to the allocated bandwidth of each application program;
and the allocation module 15 is used for allocating bandwidth to the plurality of electronic devices according to the allocated bandwidth of each electronic device.
The bandwidth allocation device provided by the embodiment of the application can execute the technical scheme shown in the embodiment of the method, and the implementation principle and the beneficial effects are similar, and are not repeated here.
In one possible implementation, the second determining module 12 is specifically configured to:
determining the arrangement sequence of the N application programs according to the priorities of the N application programs;
and determining the allocation bandwidth of each application program according to the total available bandwidth, the arrangement sequence and the maximum bandwidth of each application program.
In one possible implementation, the second determining module 12 is specifically configured to:
if the priorities of the N application programs are different, sequencing the N application programs according to the order of the priorities of the N application programs from high to low to obtain the sequence of the N application programs;
if at least two first application programs with the same priority exist in the N application programs, acquiring the use duration of each first application program, and determining the arrangement sequence of the N application programs according to the use duration of each first application program and the priority of each application program.
In one possible implementation, the second determining module 12 is specifically configured to:
sequencing the N application programs according to the order of the priority of the N application programs from high to low;
and sequencing the first application programs in the sequenced N application programs according to the sequence of the using time length of the first application programs from big to small, so as to obtain the sequence of the N application programs.
In one possible implementation, the second determining module 12 is specifically configured to:
if the N is 1, determining that the allocated bandwidths of the N application programs are the total available bandwidths;
and if the N is greater than 1, determining the allocated bandwidth of each application program according to the total available bandwidth and the maximum bandwidth of each application program according to the sequence from front to back of the arrangement sequence.
In one possible implementation, the second determining module 12 is specifically configured to:
determining a residual bandwidth according to the allocated bandwidth for the first i-1 application programs and the total available bandwidth;
if the residual bandwidth is smaller than the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the residual bandwidth; if the remaining bandwidth is greater than or equal to the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the maximum bandwidth;
wherein i is 1, 2, … … and N in sequence.
In one possible implementation, the allocation module 15 is specifically configured to:
and configuring the allocated bandwidth of each electronic device in a gateway so that the gateway allocates bandwidth for the plurality of electronic devices, wherein the gateway is used for providing services for the electronic devices in the local area network.
The bandwidth allocation device provided by the embodiment of the application can execute the technical scheme shown in the embodiment of the method, and the implementation principle and the beneficial effects are similar, and are not repeated here.
Fig. 5 is a schematic structural diagram of a gateway according to an embodiment of the present application. Referring to fig. 5, the gateway 20 may include: a memory 21, and a processor 22. The memory 21, the processor 22, are illustratively interconnected by a bus 23.
The memory 21 is used for storing program instructions;
the processor 22 is configured to execute the program instructions stored in the memory, so as to cause the bandwidth allocation system 20 to perform the method according to the above-described method embodiment.
Embodiments of the present application provide a computer-readable storage medium having stored therein computer-executable instructions for implementing the above-described method when the computer-executable instructions are executed by a processor.
Embodiments of the present application may also provide a computer program product comprising a computer program which, when executed by a processor, performs the above-described method.
All or part of the steps for implementing the method embodiments described above may be performed by hardware associated with program instructions. The foregoing program may be stored in a readable memory. The program, when executed, performs steps including the method embodiments described above; and the aforementioned memory (storage medium) includes: read-only memory (ROM), RAM, flash memory, hard disk, solid state disk, magnetic tape, floppy disk, optical disk, and any combination thereof.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processing unit of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various modifications and variations can be made to the embodiments of the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the embodiments of the present application fall within the scope of the claims and the equivalents thereof, the present application is also intended to include such modifications and variations.
In the present disclosure, the term "include" and variations thereof may refer to non-limiting inclusion; the term "or" and variations thereof may refer to "and/or". The terms "first," "second," and the like in this specification are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. In the present application, "a plurality of" means two or more. "and/or", describes an association relationship of an association object, and indicates that there may be three relationships, for example, a and/or B, and may indicate: a exists alone, A and B exist together, and B exists alone. The character "/" generally indicates that the context-dependent object is an "or" relationship.

Claims (8)

1. A method for bandwidth allocation, comprising:
determining N running application programs in a plurality of electronic devices, wherein the plurality of electronic devices are positioned in the same local area network, and N is an integer greater than or equal to 1;
acquiring application information of each application program, wherein the application information comprises: the identification of the electronic equipment where the application program is located, the priority of the application program and the maximum bandwidth of the application program; wherein, the maximum bandwidth of the application program refers to: the maximum bandwidth used by the application program in the running process of the application program;
acquiring the total available bandwidth of the local area network;
determining the allocation bandwidth of each application program according to the application information of each application program and the total available bandwidth;
determining the allocated bandwidth of each electronic device according to the allocated bandwidth of each application program, and allocating the bandwidth to the plurality of electronic devices according to the allocated bandwidth of each electronic device;
determining an allocated bandwidth allocated to each application program according to the application information of each application program and the total available bandwidth, including:
determining the arrangement sequence of the N application programs according to the priorities of the N application programs;
determining the allocation bandwidth of each application program according to the total available bandwidth, the arrangement sequence and the maximum bandwidth of each application program;
determining the arrangement sequence of the N application programs according to the priorities of the N application programs, wherein the method comprises the following steps:
if the priorities of the N application programs are different, sequencing the N application programs according to the order of the priorities of the N application programs from high to low to obtain the sequence of the N application programs;
if at least two first application programs with the same priority exist in the N application programs, acquiring the use duration of each first application program, and determining the arrangement sequence of the N application programs according to the use duration of each first application program and the priority of each application program.
2. The method of claim 1, wherein determining the ranking of the N applications based on the length of use of each first application and the priority of each application comprises:
sequencing the N application programs according to the order of the priority of the N application programs from high to low;
and sequencing the first application programs in the sequenced N application programs according to the sequence of the using time length of the first application programs from big to small, so as to obtain the sequence of the N application programs.
3. The method of any of claims 1-2, wherein determining an allocated bandwidth for each application based on the total available bandwidth, the ranking, and a maximum bandwidth for each application comprises:
if the N is 1, determining that the allocated bandwidths of the N application programs are the total available bandwidths;
and if the N is greater than 1, determining the allocated bandwidth of each application program according to the total available bandwidth and the maximum bandwidth of each application program according to the sequence from front to back of the arrangement sequence.
4. A method according to claim 3, wherein determining the allocated bandwidth for each application from the total available bandwidth and the maximum bandwidth for each application, respectively, in the front-to-back order of the ranking comprises:
determining a residual bandwidth according to the allocated bandwidth for the first i-1 application programs and the total available bandwidth;
if the residual bandwidth is smaller than the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the residual bandwidth; if the remaining bandwidth is greater than or equal to the maximum bandwidth of the ith application program, determining that the allocated bandwidth of the ith application program is the maximum bandwidth;
wherein i is 1, 2, … … and N in sequence.
5. The method according to any of claims 1-2, wherein allocating bandwidth to the plurality of electronic devices based on the allocated bandwidth of each electronic device comprises:
and configuring the allocated bandwidth of each electronic device in a gateway so that the gateway allocates bandwidth for the plurality of electronic devices, wherein the gateway is used for providing services for the electronic devices in the local area network.
6. A bandwidth allocation apparatus, the apparatus comprising: the device comprises a first determining module, a first acquiring module, a second determining module, a third determining module and an allocating module, wherein,
the first determining module is used for determining N running application programs in a plurality of electronic devices, the plurality of electronic devices are located in the same local area network, and N is an integer greater than or equal to 1;
the first obtaining module is configured to obtain application information of each application program, where the application information includes: the identification of the electronic equipment where the application program is located, the priority of the application program and the maximum bandwidth of the application program; wherein, the maximum bandwidth of the application program refers to: the maximum bandwidth used by the application program in the running process of the application program;
the second obtaining module is used for obtaining the total available bandwidth of the local area network;
the second determining module is used for determining the allocation bandwidth of each application program according to the application information of each application program and the total available bandwidth;
the third determining module is used for determining the allocated bandwidth of each electronic device according to the allocated bandwidth of each application program;
the distribution module is used for distributing the bandwidths for the plurality of electronic devices according to the distributed bandwidths of each electronic device;
the second determining module is specifically configured to determine an arrangement sequence of the N application programs according to the priorities of the N application programs;
determining the allocation bandwidth of each application program according to the total available bandwidth, the arrangement sequence and the maximum bandwidth of each application program;
the second determining module is specifically configured to, if the priorities of the N applications are all different, sort the N applications according to the order of the priorities of the N applications from high to low, so as to obtain an arrangement order of the N applications;
if at least two first application programs with the same priority exist in the N application programs, acquiring the use duration of each first application program, and determining the arrangement sequence of the N application programs according to the use duration of each first application program and the priority of each application program.
7. A gateway, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1 to 5.
8. A non-transitory computer readable storage medium storing computer instructions, wherein the computer instructions are for causing the computer to perform the method of any one of claims 1 to 5.
CN202210359394.4A 2022-04-07 2022-04-07 Bandwidth allocation method, device, gateway and storage medium Active CN114710411B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210359394.4A CN114710411B (en) 2022-04-07 2022-04-07 Bandwidth allocation method, device, gateway and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210359394.4A CN114710411B (en) 2022-04-07 2022-04-07 Bandwidth allocation method, device, gateway and storage medium

Publications (2)

Publication Number Publication Date
CN114710411A CN114710411A (en) 2022-07-05
CN114710411B true CN114710411B (en) 2023-10-31

Family

ID=82173597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210359394.4A Active CN114710411B (en) 2022-04-07 2022-04-07 Bandwidth allocation method, device, gateway and storage medium

Country Status (1)

Country Link
CN (1) CN114710411B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116033059A (en) * 2022-12-30 2023-04-28 联想(北京)有限公司 Information processing method and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986715A (en) * 2014-05-21 2014-08-13 海信集团有限公司 Network traffic control method and device
CN105337901A (en) * 2015-09-30 2016-02-17 北京四达时代软件技术股份有限公司 Router intelligent bandwidth allocation method and device
CN110401605A (en) * 2019-04-28 2019-11-01 腾讯科技(北京)有限公司 Method, apparatus, server and the terminal of bandwidth allocation in a kind of local area network
CN113467938A (en) * 2021-06-18 2021-10-01 山东云海国创云计算装备产业创新中心有限公司 Bus resource allocation method, device and related equipment
CN114007225A (en) * 2020-07-28 2022-02-01 北京三星通信技术研究有限公司 BWP allocation method, apparatus, electronic device and computer readable storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8363672B2 (en) * 2008-05-08 2013-01-29 Gilat Satellite Networks Ltd. Optimization of internet traffic based on application prioritization
US20150098390A1 (en) * 2013-10-04 2015-04-09 Vonage Network Llc Prioritization of data traffic between a mobile device and a network access point
TWI565336B (en) * 2014-12-12 2017-01-01 佳世達科技股份有限公司 Data transmission method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986715A (en) * 2014-05-21 2014-08-13 海信集团有限公司 Network traffic control method and device
CN105337901A (en) * 2015-09-30 2016-02-17 北京四达时代软件技术股份有限公司 Router intelligent bandwidth allocation method and device
CN110401605A (en) * 2019-04-28 2019-11-01 腾讯科技(北京)有限公司 Method, apparatus, server and the terminal of bandwidth allocation in a kind of local area network
CN114007225A (en) * 2020-07-28 2022-02-01 北京三星通信技术研究有限公司 BWP allocation method, apparatus, electronic device and computer readable storage medium
CN113467938A (en) * 2021-06-18 2021-10-01 山东云海国创云计算装备产业创新中心有限公司 Bus resource allocation method, device and related equipment

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
PABST: Proportionally Allocated Bandwidth at the Source and Target;Derek R. Hower et al.;IEEE;全文 *
Receiver-driven bandwidth sharing for TCP and its application to video streaming;P. Mehra et al.;IEEE;全文 *
光纤到户网络中基于用户体验度的带宽分配方法研究;李开龙;《中国优秀硕士学位论文全文数据库》;全文 *

Also Published As

Publication number Publication date
CN114710411A (en) 2022-07-05

Similar Documents

Publication Publication Date Title
CN108268372B (en) Mock test processing method and device, storage medium and computer equipment
CN110399213B (en) Method, device, electronic equipment and medium for determining resource demand of application program
CN114710411B (en) Bandwidth allocation method, device, gateway and storage medium
EP3185597A1 (en) Method, base station, and terminal for wireless link processing
EP3018962A1 (en) Method for randomly accessing network, terminal and base station
CN113938435B (en) Data transmission method, device, electronic equipment, storage medium and program product
CN113886034A (en) Task scheduling method, system, electronic device and storage medium
CN113467938A (en) Bus resource allocation method, device and related equipment
EP3306965A1 (en) Charging method, communication platform, and communication system
CN105630601A (en) Resource allocation method and system based on real-time computing
CN106550467B (en) Resource scheduling method and base station
CN111769894B (en) Staggered frequency spectrum allocation method
CN113573334A (en) User resident area determining method and device
CN104301944A (en) Resource capacity allocation method and equipment
CN107145442B (en) Method and device for testing application
CN115080253B (en) GPU task allocation method and device, electronic equipment and storage medium
CN111381948A (en) Distributed computing task processing method and equipment and electronic equipment
CN113795032B (en) Method and device for judging invisible faults of indoor division, storage medium and equipment
CN105530705A (en) Method and device for allocating downlink control channel resources
CN109286936B (en) Discrete frequency point planning method and device
CN111625358A (en) Resource allocation method and device, electronic equipment and storage medium
CN113835862B (en) Task processing method and device
CN113518459B (en) Resource scheduling processing method and device and electronic equipment
CN114040511B (en) Communication device, OBO counter value method thereof, electronic device and storage medium
CN111539592B (en) Task allocation method and device, readable storage medium and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant