Method for optimizing QOS of wireless LAN and electronic device

By optimizing the speed limit of file transfer services in wireless LAN, the bandwidth shortage problem of latency-sensitive services in multi-service scenarios was solved, the QoS of services such as screen mirroring and video on demand was improved, and the user experience was enhanced.

CN119316889BActive Publication Date: 2025-12-12HONOR DEVICE CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310862296.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-12
Publication Date
2025-12-12
Estimated Expiration
2043-07-12

AI Technical Summary

Technical Problem

In scenarios with multiple devices and multiple services, latency-sensitive services cannot obtain sufficient bandwidth for transmission, resulting in service queuing. The existing QoS mechanism is difficult to meet the service needs of the application layer, especially when screen projection and file transfer coexist, the throughput of screen projection services cannot be met, and the latency is relatively large.

Method used

By sending rate-limiting commands to controllable devices in the wireless LAN through the central control device, the rate limit value of file transfer services is optimized. Combined with the QoS measurement of real-time and latency-sensitive services, the target value and gradient value are calculated, and the rate limit of file transfer services is adjusted to optimize the QoS of the WiFi system and ensure the transmission quality of real-time and latency-sensitive services.

Benefits of technology

It improves the QoS of real-time and latency-sensitive services in WiFi systems, reduces the system resource consumption of file transfers, and enhances the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119316889B_ABST
    Figure CN119316889B_ABST
Patent Text Reader

Abstract

The application discloses a wireless local area network QOS optimization method and electronic equipment. The method obtains a file transmission service limiting speed value when a first target value is optimal through online learning, and then limits the file transmission service on each link based on the file transmission service limiting speed value when the first target value is optimal, so as to guarantee the transmission rate of the file transmission service, improve the QOS of real-time services and delay-sensitive services in a WiFi system, and then improve user experience.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of communication technology, in particular to a wireless local area network QOS optimization method and electronic device. BACKGROUND

[0002] In the near field communication scenario, multiple devices, such as one or more mobile phones, tablets, personal computers, large screen devices (such as televisions) and the like, need to transmit multiple service data concurrently under limited network bandwidth. For example, some devices are performing large file transmission and some devices are performing high-definition video transmission at the same time. At this time, the Quality of Service (QOS) mechanism is needed to reasonably allocate broadband resources to ensure orderly data communication.

[0003] In order to ensure that time-sensitive services can be transmitted with sufficient bandwidth in a multi-device and multi-service scenario, and to avoid queuing and waiting for such services, a bandwidth adjustment optimization mechanism is needed to improve the experience of such services. SUMMARY

[0004] The present application provides a wireless local area network QOS optimization method and electronic device, which limits the speed of file transmission to reduce the latency of time-sensitive services and improve the user experience of such time-sensitive services.

[0005] In a first aspect, a wireless local area network Quality of Service (QOS) optimization method is provided. The method is applied to a central control device in a Wireless Fidelity (WiFi) system. The WiFi system includes multiple electronic devices in the same cell, and the multiple electronic devices form at least one link. The transmitting end or receiving end of the link is a controllable device. The WiFi system includes M file transmission services, where M is a positive integer. The method includes the following steps:

[0006] sending a first instruction to the controllable device corresponding to each link of the at least one link. The first instruction is used to instruct the controllable device to limit the speed of the M file transmission services based on the speed limit value of the M file transmission services;

[0007] receiving the first QOS of each non-file transmission service measured by the controllable device of the at least one link at the speed limit value of the M file transmission services;

[0008] calculating a first target value according to the first QOS of each non-file transmission service on each link in the WiFi system and the speed limit value of the M file transmission services;

[0009] determining the target rate limiting value of the M file transfer services as the rate limiting value of the M file transfer services when the first target value is optimal, the first target value being determined based on the first QOS of the non-file transfer services and the rate limiting value of the M file transfer services.

[0010] The method is executed to limit the rate of the file transfer services on each link based on the rate limiting value of the file transfer services when the first target value is optimal, so as to improve the QOS of the real-time services and the delay-sensitive services in the WiFi system while ensuring the transmission rate of the file transfer services, and further improve the user experience.

[0011] In combination with the first aspect, in some embodiments, the determining the target rate limiting value of the M file transfer services as the rate limiting value of the M file transfer services when the first target value is optimal comprises:

[0012] determining a gradient value of the first target value according to the first target value;

[0013] updating the rate limiting value of the M file transfer services according to the gradient value of the first target value when the first target value does not converge;

[0014] determining the target rate limiting value of the M file transfer services as the rate limiting value of the M file transfer services when the first target value is minimal.

[0015] In combination with the first aspect, in some embodiments, after the updating the rate limiting value of the M file transfer services according to the gradient value of the first target value, the method further comprises:

[0016] sending a second instruction to a controllable device of the at least one link, the second instruction being used to instruct to update the rate limiting value of the M file transfer services;

[0017] updating the rate limiting value of the M file transfer services according to the gradient value of the first target value.

[0018] In combination with the first aspect, in some embodiments, the first target value is a difference between a weighted sum of the first QOS of the non-file transfer services in the at least one link and a weighted sum of the current rate limiting value of the M file transfer services.

[0019] In combination with the first aspect, in some embodiments, the determining the gradient value of the first target value according to the first target value comprises:

[0020] sending a third instruction to a controllable device corresponding to a link transmitting a jth file transfer service of the M file transfer services, the third instruction being used to instruct to perturb the rate limiting value of the jth file transfer service; j is a positive integer not greater than M.

[0021] sending a fourth instruction to the controllable device of the at least one link respectively, the fourth instruction being used to instruct to measure the QOS of the non-file transfer service;

[0022] receiving the second QOS of the non-file transfer service on the respective link from the controllable device of the at least one link respectively;

[0023] calculating a second target value according to the second QOS of each non-file transfer service on the at least one link and the current rate limiting value of the M file transfer services;

[0024] calculating the change of the first target value when the jth file transfer service is disturbed according to the first target value and the second target value;

[0025] The gradient value of the first target value includes the change of the first target value when the M file transfer services are disturbed respectively.

[0026] In combination with the first aspect, in some embodiments, the rate limiting value of the M file transfer services is not less than a minimum rate limiting value.

[0027] In combination with the first aspect, in some embodiments, the M file transfer services are file transfer services with a transmission rate greater than a preset value in the WiFi system, or the M file transfer services are all file transfer services in the WiFi system.

[0028] In combination with the first aspect, in some embodiments, the rate limiting value of the M file transfer services satisfies the following condition:

[0029]

[0030] wherein (l, a, i) represents the ith service in the ath priority queue on the lth link in the at least one link, l is the index of the link, a is the index of the priority queue, i is the index of the service, R l,a,i is the transmission rate of the service (l, a, i), γ l is the highest effective rate of the lth link, is the set of all real-time services on the at least one link, is the set of all real-time services on the at least one link, is the set of file transfer services in the at least one link, x l,a,i is the rate limiting value of the service (l, a, i); l is a positive integer, and l is not greater than the total number of the at least one link.

[0031] With reference to the first aspect, in some embodiments, the method further comprises:

[0032] receiving the highest effective rate or negotiated rate sent by the controllable device of the at least one link respectively;

[0033] wherein the at least one link comprises an ith link, the highest effective rate γ l of the ith link is:

[0034] γ l = V l * ρ

[0035] wherein V l is the negotiated rate of the ith link, and 0 < ρ < 1.

[0036] In a second aspect, the embodiments of the present application provide a method for optimizing quality of service (QOS) of a wireless local area network (WLAN). The method is applied to a first controllable device in a wireless fidelity (WiFi) system, the WiFi system comprising a plurality of electronic devices in a same cell, the plurality of electronic devices comprising the first controllable device, the plurality of electronic devices forming at least one link, a transmitting end or a receiving end of the link being a controllable device; the first controllable device being a controllable device of the first link, the method comprising:

[0037] throttling a file transfer service on the corresponding link by using a throttling value of the file transfer service;

[0038] measuring a first QOS of each non-file transfer service on the first link when throttling by using the throttling value of the file transfer service; the first QOS being used to calculate a first target value;

[0039] throttling the file transfer service on the corresponding link by using a target throttling value of the file transfer service when the first target value is optimal.

[0040] With reference to the second aspect, in some embodiments, the plurality of electronic devices comprises a central control device, and before the throttling of the file transfer service on the corresponding link by using the throttling value of the file transfer service, the method further comprises:

[0041] receiving a first instruction from the central control device; the first instruction being used to instruct to throttle the file transfer service;

[0042] sending the first QOS of each non-file transfer service to the central control device, the first QOS being used to calculate the first target value.

[0043] With reference to the second aspect, in some embodiments, the method further comprises:

[0044] receiving a second instruction from the central control device;

[0045] updating a rate limiting value of file transfer traffic on the link corresponding to the first controllable device in response to the second instruction.

[0046] In combination with the second aspect, in some embodiments, the first controllable device transmits a jth file transfer traffic of the M file transfer traffics on the link corresponding to the first controllable device, j is a positive integer not greater than M; the method further comprises:

[0047] receiving a third instruction from the central control device, the third instruction being used to indicate that the rate limiting value of the jth file transfer traffic is disturbed;

[0048] responding to the third instruction, the rate limiting value of the jth file transfer traffic is disturbed;

[0049] sending a notification message to the central control device, the notification message being used to indicate that the disturbance is completed;

[0050] receiving a fourth instruction from the central control device, the fourth instruction being used to indicate that the QOS of non-file transfer traffics is measured;

[0051] responding to the fourth instruction, a second QOS of each non-file transfer traffic on the link corresponding to the first controllable device when the rate limiting value of the jth file transfer traffic is disturbed is measured;

[0052] sending the second QOS of each non-file transfer traffic to the central control device, the second QOS being used to calculate a change amount of the first target value when the jth file transfer traffic is disturbed, the change amount of the first target value being used to update the rate limiting value of file transfer traffic on the link corresponding to the first controllable device.

[0053] In combination with the second aspect, in some embodiments, the WiFi system comprises M file transfer traffics, M is a positive integer, the method further comprises:

[0054] receiving a first QOS of each non-file transfer traffic on each link from a controllable device of a link other than the first link in the at least one link;

[0055] calculating a first target value according to the first QOS of each non-file transfer traffic on each link in the WiFi system and the rate limiting value of the M file transfer traffics;

[0056] determining the target throttling value of the M file transfer services as the throttling value of the M file transfer services when the first target value is optimal, the first target value being determined based on the first QOS of the non-file transfer services and the throttling value of the M file transfer services.

[0057] In combination with the second aspect, in some embodiments, the determining the target throttling value of the M file transfer services as the throttling value of the M file transfer services when the first target value is optimal comprises:

[0058] determining a gradient value of the first target value according to the first target value;

[0059] updating the throttling value of the M file transfer services according to the gradient value of the first target value when the first target value does not converge;

[0060] determining the target throttling value of the M file transfer services as the throttling value of the M file transfer services when the first target value is minimal.

[0061] In combination with the second aspect, in some embodiments, the determining a gradient value of the first target value according to the first target value comprises:

[0062] negotiating a perturbation order of the M file transfer services with controllable devices of links other than the first link in the WiFi system;

[0063] perturbing the throttling value of the jth file transfer service when the jth file transfer service is a file transfer service on the first link;

[0064] measuring a second QOS of each non-file transfer service on the first link;

[0065] receiving the second QOS of each non-file transfer service on the respective link sent by controllable devices of links other than the first link in the at least one link;

[0066] calculating a second target value according to the second QOS of each non-file transfer service on the at least one link and the current throttling value of the M file transfer services;

[0067] calculating the change of the first target value when the jth file transfer service is perturbed according to the first target value and the second target value;

[0068] wherein the gradient value of the first target value comprises the change of the first target value when the M file transfer services are perturbed respectively.

[0069] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a memory, one or more processors; the memory is coupled to the one or more processors, the memory is configured to store computer program codes, the computer program codes comprise computer instructions, and the one or more processors invoke the computer instructions to enable the electronic device to perform the method performed by the central control device in the first aspect or any one of the implementation manners of the first aspect.

[0070] In a fourth aspect, an embodiment of the present application provides an electronic device, comprising: a memory, one or more processors; the memory is coupled to the one or more processors, the memory is configured to store computer program codes, the computer program codes comprise computer instructions, and the one or more processors invoke the computer instructions to enable the electronic device to perform the method performed by the controllable device in the second aspect or any one of the implementation manners of the second aspect.

[0071] In a fifth aspect, an embodiment of the present application provides a computer readable storage medium, comprising instructions, when the instructions are run on an electronic device, enable the electronic device to perform the method performed by the central control device in the first aspect or any one of the implementation manners of the first aspect.

[0072] In a sixth aspect, an embodiment of the present application provides a computer program product, when the computer program product is run on a computer, enable the computer to perform the method performed by the central control device in the first aspect or any one of the implementation manners of the first aspect.

[0073] In a seventh aspect, an embodiment of the present application provides a chip system, comprising at least one processor, configured to implement the method performed by the central control device in the first aspect or any one of the implementation manners of the first aspect.

[0074] In an eighth aspect, an embodiment of the present application provides a computer readable storage medium, comprising instructions, when the instructions are run on an electronic device, enable the electronic device to perform the method performed by the controllable device in the second aspect or any one of the implementation manners of the second aspect.

[0075] In a ninth aspect, an embodiment of the present application provides a computer program product, when the computer program product is run on a computer, enable the computer to perform the method performed by the controllable device in the second aspect or any one of the implementation manners of the second aspect.

[0076] In a tenth aspect, an embodiment of the present application provides a chip system, comprising at least one processor, configured to implement the method performed by the controllable device in the second aspect or any one of the implementation manners of the second aspect. BRIEF DESCRIPTION OF DRAWINGS

[0077] Figure 1 A schematic diagram of a data transmission process in a controllable device is provided for an embodiment of the present application;

[0078] Figure 2 An example diagram of a WiFi system in an application scenario is provided for an embodiment of the present application;

[0079] Figure 3 A flowchart of an optimization method of a wireless local area network QOS is provided for an embodiment of the present application;

[0080] Figure 4 A flowchart of a calculation process of a target value and a gradient value of the target value is provided for an embodiment of the present application;

[0081] Figure 5 A flowchart of another optimization method of a wireless local area network QOS is provided for an embodiment of the present application;

[0082] Figure 6 An architecture diagram of a WiFi system built for an experiment is provided for an embodiment of the present application;

[0083] Figure 7A A comparison diagram of total throughputs under three mechanisms obtained through testing is provided for an embodiment of the present application;

[0084] Figure 7B A comparison diagram of RTT delays of real-time service SE-A, real-time service SE-B, and real-time service SE-D under three mechanisms obtained through testing is provided for an embodiment of the present application;

[0085] Figure 8 A flowchart of a measurement method of a highest effective rate is provided for an embodiment of the present application;

[0086] Figure 9 A flowchart of another measurement method of a highest effective rate is provided for an embodiment of the present application;

[0087] Figure 10 A flowchart of another measurement method of a highest effective rate is provided for an embodiment of the present application;

[0088] Figure 11 A flowchart of another measurement method of a highest effective rate is provided for an embodiment of the present application;

[0089] Figure 12 A hardware structure block diagram of an electronic device is provided for an embodiment of the present application;

[0090] Figure 13 A software architecture of an electronic device is provided for an embodiment of the present application. DETAILED DESCRIPTION

[0091] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings. In the description of the embodiments of the present application, unless otherwise specified, " / " represents the meaning of or, for example, A / B can represent A or B; the "and / or" in the text only describes the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B, which means that there are three cases of A alone, A and B together, and B alone. In addition, in the description of the embodiments of the present application, "multiple" means two or more than two.

[0092] Hereinafter, the terms "first" and "second" are only for descriptive purposes, and cannot be understood as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Therefore, the features defined with "first" and "second" can explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, unless otherwise specified, "multiple" means two or more than two.

[0093] The terms related to the embodiments of the present application are described below.

[0094] (1) Access category (AC).

[0095] According to the provisions of the standard IEEE 802.11e standard based on wireless local area network (wireless load area network, WLAN), the current wireless fidelity (wireless fidelity, WiFi) system mainly uses a carrier sense multiple access (carrier sense multiple access, CSMA) based contention mechanism for distributed inter-device transmission time allocation, and the quality of service (quality of service, QOS) required by different transmission services is mainly guaranteed by different transmission priorities. That is, the priority between transmission services is distinguished by different AC queues, and the data to be transmitted by the electronic device is placed in the corresponding AC queue, and the channel is competed according to the CSMA mechanism, and the data is transmitted after obtaining the transmission opportunity.

[0096] As shown in Figure 1 , it is a schematic diagram of a data sending process in a controllable device provided by an embodiment of the present application. The service data of the application layer is mapped into different AC queues after entering the medium access control (MAC) layer. It should be understood that the AC queue is also called a priority queue.

[0097] Among them, the protocol defines four AC queues, which are divided into voice flow (voice, represented as AC_VO, also represented as AC 0), video flow (video, represented as AC_VI, also represented as AC 1), best-effort flow (best-effort, represented as AC_BE, also represented as AC 2), and background flow (background, represented as AC_BK, also represented as AC 3) in order of priority from high to low, for ensuring that high-priority classified messages preemptively occupy the wireless channel and are sent, thereby ensuring that voice, video and other applications have better quality of service in the wireless network.

[0098] Each AC queue obtains the opportunity to send through a competition mechanism and is transmitted by the transmitter of the physical layer.

[0099] However, the above priority-based classification mechanism is difficult to guarantee the QOS requirements of the application layer service. For example, in a scenario where screen projection service and file transmission service coexist, since the file transmission service always has data waiting to be sent before the transmission is completed, multiple low-priority file transmission services may still excessively occupy the system transmission time, resulting in the data throughput required by the screen projection service being unable to be met, encountering a large delay, and even causing queue buffer overflow and other problems. This is because the QOS mechanism based on the physical layer transmission priority cannot understand and implement the business requirements of the application layer.

[0100] (2) Controllable device, uncontrollable device, and interference device.

[0101] The transceiving devices in the same space-time WiFi system are defined as controllable devices, uncontrollable devices, and interference devices. Among them, the devices that can cooperate with the devices for controlling QOS optimization (also referred to as central control devices) to perform QOS optimization are referred to as controllable devices; the devices that cannot cooperate with the central control devices to perform QOS optimization or cannot cooperate with other controllable devices to perform QOS optimization are referred to as uncontrollable devices; and the devices that interfere with the cells are referred to as interference devices.

[0102] Specifically, the controllable device is a device that has a program for QOS optimization on the controllable device side in the embodiments of the present application built in the cell, and is capable of executing the controllable device side method in the QOS optimization method provided by the embodiments of the present application. The uncontrollable device cannot implement the functions that the controllable device can implement, and can include an access point device (Access point, AP) of the cell, such as a router.

[0103] (3) Controllable link, perceptible link, and interference link.

[0104] Wherein, the link is a data transmission line from one device to another device without other switching nodes in between. Based on the device type of the transmitting end and the receiving end of the link, the link is divided into controllable link, perceptible link and interference link. Wherein, the controllable link is a link with the transmitting end being a controllable device of the current cell, the perceptible link is a link with the receiving end being a controllable device of the current cell, and the interference link is a link with both the receiving end and the transmitting end being uncontrollable devices of the current cell, or a link with both the receiving end and the transmitting end being devices of an interference cell.

[0105] (4) Highest effective rate.

[0106] In the embodiments of the present application, the highest effective rate of a link is the transmission rate that the link can reach when all other controllable links and perceptible links are transmitting data. The highest effective rate can reflect the highest transmission rate that the link can reach.

[0107] The highest effective rate can be used for the overall scheduling and channel allocation of WiFi transmission. The highest effective rate can be measured by closing the data transmission of other controllable links and perceptible links. However, this method is difficult to efficiently measure the highest effective rate of all controllable links and perceptible links.

[0108] The highest effective rate can also be obtained by the jointly measured method provided in the embodiments of the present application.

[0109] (5) Service type.

[0110] In the embodiments of the present application, the link is used to transmit services in each priority queue, and one priority queue can include one or more services. The services running in the application layer can be divided into three categories, including real-time services, delay-sensitive services and file transmission services, wherein the real-time services and the delay-sensitive services can also be referred to as non-file transmission services.

[0111] The application layer can further divide the real-time services into, for example, screen projection services based on finer scenarios, the delay-sensitive services can include voice call services, video call services, video on-demand services, etc., and the file transmission services can include video file transmission services, text file transmission services, web transmission services, etc. It should also be understood that the file transmission services can also be divided into large file transmission services and small file transmission services based on the amount of data transmitted by the services, and services larger than a preset threshold, such as 10M or 20M, can be referred to as large file transmission services, and services smaller than the preset threshold can be referred to as small file transmission services.

[0112] The following briefly introduces the three service types:

[0113] Real-time service: the data to be transmitted is generated in a fixed period. For example, the screen projection service usually generates a video frame every 16 milliseconds. In order to ensure the real-time of the service transmission, the service usually requires a small average transmission delay.

[0114] Delay-sensitive service: the data to be transmitted is randomly generated, and the average transmission delay of the data is required.

[0115] File transmission service: the data content and data size to be transmitted can be explicitly determined when the service is initiated, and the transmission completion time (i.e., the average transmission rate) of the data can also be required.

[0116] It can be understood that the application layer can identify the service type of each service based on the characteristics of the above-mentioned services, and can determine the AC queue in which the service is located when it is transmitted to the MAC layer based on the corresponding tag label.

[0117] (6) QOS model.

[0118] According to different service types, the embodiments of the present application provide two QOS performance indicators, i.e., average transmission delay and average throughput.

[0119] Among them, the average transmission delay is used to measure the QOS of real-time service and delay-sensitive service. The definition is as follows: there are N data packets of real-time service or delay-sensitive service to be transmitted, the time when the nth data packet reaches the application layer of the transmitting end is t arr (n), and the time when it reaches the application layer of the receiving end is t fin (n), then the average transmission delay d aver of the N data packets is:

[0120]

[0121] The average throughput is used to measure the QOS of the file transmission service, and the definition is as follows: the data size of the file transmitted by the file transmission service within T unit is R file , then the average throughput x aver is:

[0122]

[0123] It should be understood that the average throughput of the file transmission service in the embodiments of the present application is also referred to as the average transmission rate.

[0124] The embodiment of the present application provides a wireless local area network QOS optimization method, a central control device determines a first target value based on real-time service and delay-sensitive service QOS and a file transmission service limiting value, obtains a target limiting value of the file transmission service when the first target value is optimal, and then each controllable device limits the file transmission service on the respective link based on the target limiting value of each file transmission service obtained by optimization, so as to ensure the transmission of non-file transmission services, improve the QOS of real-time services and delay-sensitive services in the WiFi system, and then improve the user experience.

[0125] The method provided by the embodiment of the present application can be applied to a scene sensitive to delay or requiring higher delay, such as a scene containing a screen projection service or a scene containing a video on-demand service in a WiFi system, so as to improve the QOS of the screen projection service, the video on-demand service and other services with higher delay requirements, and then improve the user experience.

[0126] Referring to an example diagram of a WiFi system in an application scenario as shown in Figure 2 , the WiFi system can include a local cell access point (AP) 10, at least one controllable device (such as controllable devices 11a-11e), and can also include at least one uncontrollable device 12a in the local cell. In this scenario, the surrounding of the controllable devices in the local cell can include devices 16a, 16b of an interfering cell. The AP 10 is an uncontrollable device in the local cell, such as a router. The controllable devices 11a-11e are, for example, the controllable device 11c.

[0127] The AP 10 and the controllable devices 11a-11e, the two controllable devices 11a-11e, and the controllable devices 11a-11e and the uncontrollable device 12a can form a link.

[0128] For example, the controllable devices 11a-11e form a link as shown in Figure 2 .

[0129] The controllable link is a link with the transmitting end being a controllable device in the local cell, such as the controllable links 13a, 13b, 13c and 13d in Figure 2 . For example, the controllable link 13a carries a video stream service; the controllable link 13b carries a file transmission service; the controllable link 13c carries a screen projection service; and the controllable link 13d carries a screen projection service.

[0130] The perceptible link is a link with the receiving end being a controllable device in the local cell, such as the perceptible link 14a in Figure 2 . The perceptible link 14a is the reverse link of the controllable link 13b and carries a video stream service.

[0131] The interference link is a device that is uncontrollable by the transmitting end and the receiving end, or is a device of an interference cell. For example, the interference link 15a and 15b in FIG. 1. Figure 2 The interference link 15a carries voice call service.

[0132] The above illustrates the services carried by each link by way of example. It should be understood that one link can carry one or more services, and the above description is given by way of example with one service. Figure 2 The above illustrates the services carried by each link by way of example. It should be understood that one link can carry one or more services, and the above description is given by way of example with one service.

[0133] In the embodiments of the present application, the set of controllable links is denoted as Lc, the set of perceptible links is denoted as Ls, and the total set of controllable links and perceptible links is denoted as L, i.e., Lc∩Ls.

[0134] It should be understood that the AP 10, the controllable devices 11a-11e, and the uncontrollable device 12a work in the same cell, are also referred to as being located in the same cell, and are also referred to as "the cell" or "the cell to be tested".

[0135] It should also be understood that in some embodiments, the WiFi system can include a central control device, which can be one of the controllable devices 11a-11e and can perform the functions of the controllable device.

[0136] The controllable devices 11a-11e described above can include devices belonging to the same basic service set (BSS) or the same extended service set (ESS), and can also include devices performing direct transmission in the same WiFi channel, such as WiFi direct devices.

[0137] The controllable device or the central control device can be a smart terminal device and can be of various types, and the embodiments of the present application do not limit the specific type thereof. For example, the electronic device can be a mobile phone, and can also include a tablet computer, a desktop computer, a laptop computer, a handheld computer, a notebook computer, a smart screen, a wearable device, an augmented reality (AR) device, a virtual reality (VR) device, an artificial intelligence (AI) device, a car machine, a smart earphone, a game machine, and an internet of things (IOT) device or a smart home device such as a smart television, and the like. Without limitation, the controllable device can also include a laptop with a touch-sensitive surface or a touch panel, a desktop computer with a touch-sensitive surface or a touch panel, and the like.

[0138] Without limitation,Figure 2 The system shown can not include the perceptible link in other WiFi systems.

[0139] It should be noted that, unless otherwise specified, the system referred to by "WiFi system" in each of the embodiments below does not include the interference link, and the optimization thereof is the QOS of the WiFi system composed of the controllable link and the perceptible link. Unless otherwise specified, "link" below refers to the controllable link or the perceptible link.

[0140] The following describes a method for optimizing the QOS of a wireless local area network link provided by an embodiment of the application.

[0141] As shown in Figure 3 Fig. 1 is a flowchart of a method for optimizing the QOS of a wireless local area network provided by an embodiment of the application. The method is implemented based on the communication system shown in Figure 2 The method can include, but is not limited to, all or part of the following steps.

[0142] S10: The central control device acquires the link information and service information of the WiFi system.

[0143] The link information of a link includes, but is not limited to, the number of controllable links, the transmitting end and the receiving end, the number of perceptible links, the transmitting end and the receiving end, etc. The link information of all links is the link information of the WiFi system.

[0144] The central control device can send an instruction to the controllable devices in the WiFi system. Each controllable device sends the link information of its corresponding link to the central control device in response to the instruction after receiving the instruction. The central control device can know the network structure of the WiFi system based on the link information of the WiFi system.

[0145] Optionally, the service information of the link further includes the number of services transmitted by the link, the type of the service, the service identifier, etc. The number of services can be used by the central control device to know the total number of services transmitted in the current WiFi system, so as to determine whether the relevant information of the required service has been collected. The type of the service can be divided into three categories, including real-time service, time-sensitive service and file transmission service, wherein the real-time service and the time-sensitive service can also be referred to as non-file transmission service.

[0146] S11: The central control device sends a first instruction to each controllable device of each link in the WiFi system.

[0147] In one implementation, the first instruction includes the speed limit value of M file transmission services, which is used to instruct the controllable device to limit the speed of the file transmission service based on the speed limit value of the file transmission service on the corresponding link.

[0148] Exemplarily, the M file transmission services can be all file transmission services in the WiFi system, or can be all large file transmission services in the WiFi system.

[0149] In another implementation, the first instruction does not necessarily carry the rate limiting values of all file transmission services, and the first instruction sent to the controllable device of the nth link carries at least the rate limiting value corresponding to each file transmission service on the nth link or carries at least the rate limiting value of each large file transmission service on the nth link, where n is a positive integer and n is not greater than the total number of links in the WiFi system.

[0150] In one implementation, the rate limiting value carried by the first instruction sent by the central control device to each controllable device for the first time can be an initial rate limiting value. Exemplarily, the initial rate limiting value of each file transmission service in the WiFi system can be the same, which is a fixed value.

[0151] Exemplarily, the initial rate limiting values of file transmission services on different links are different, and the initial rate limiting value of a file transmission service on the nth link can be a minimum rate limiting value or other value.

[0152] Embodiments of the present application take the first instruction sent to the controllable device of the nth link carrying the rate limiting values corresponding to the M file transmission services as an example.

[0153] S12: The application layer of each controllable device limits the rate of the file transmission service on the respective link according to the rate limiting value of the file transmission service.

[0154] Exemplarily, the first instruction sent to the controllable device of the nth link carries at least the rate limiting value corresponding to each file transmission service on the nth link. The controllable device limits the rate of the file transmission service based on the rate limiting value corresponding to each file transmission service on the corresponding link.

[0155] Suppose that (n, a, i) represents the i-th service in the a-th priority queue on the nth link in the WiFi system, is the set of file transmission services transmitted on the nth link. For each file transmission service, the service For example, the controllable device of the nth link limits the rate of the file transmission service (n, a, i) based on the rate limiting value of the file transmission service (n, a, i). Specifically, after receiving the rate limiting value of the service (n, a, i), the application layer of the controllable device can limit the issuing rate of the service (n, a, i) or the amount of data issued per unit time, so that the amount of data issued per unit time is not greater than the first file rate limiting value.

[0156] When the controllable device of the nth link is the receiving end of the nth link, the application layer of the controllable device can also send a notification to the receiving end of the nth link to suspend the file transmission service when the actual transmission rate of the received file transmission service is greater than the limited rate value or the data amount in the first time length is greater than the data amount determined by the limited rate value.

[0157] S13: The application layer of each controllable device measures the first QOS of each non-file transmission service on the respective link.

[0158] Exemplarily, the non-file transmission includes real-time services and delay-sensitive services, and for the real-time services and delay-sensitive services, the QOS is the average transmission delay. The controllable device needs to obtain the time of each data packet corresponding to each real-time service and delay-sensitive service in the traffic data to reach the application layer of the transmitting end and the time to reach the application layer of the receiving end. Define, for the set of all real-time services on all links, for the set of all real-time services on all links.

[0159] For its first QOS can be represented as which can be calculated by the above formula (1).

[0160] For its first QOS can be represented as which can also be calculated by the above formula (1).

[0161] wherein, represents the current limited rate value of the M file transmission services in the WiFi system, which is a vector containing M elements, including the current limited rate value of each file transmission service, and M is a positive integer.

[0162] In some embodiments, the M file transmission services are all file transmission services in the WiFi system, for the set of file transmission services in all links, for its limited rate value is represented as x l,a,i At this time,

[0163] In other embodiments, the M file transmission services are a set of large file transmission services in the WiFi system, at this time, for the set of large file transmission services in the WiFi system, for its limited rate value is represented as x l,a,i At this time, Embodiments of the present application take the M file transmission services as all file transmission services in the WiFi system as an example.

[0164] S14: The application layer of each controllable device sends the first QOS of each non-file transfer service on the respective link to the central control device.

[0165] S15: The central control device calculates the first target value and the gradient value of the first target value according to the first QOS of each non-file transfer service on each link in the WiFi system and the rate limiting value of the M file transfer services.

[0166] Specifically, the target function is:

[0167]

[0168] wherein the optimization variable is For ease of description, It can also be expressed as (x1, x2, …, x j , …, x M ), wherein x j represents the rate limiting value of the jth file transfer service in the M file transfer services, j, M are positive integers, and j≤M.

[0169] As shown in the following formula, the current rate limiting value of the M file transfer services is Figure 4 When the first target value is , the calculation process of the gradient value of the first target value is as follows:

[0170] S1500: The central control device calculates the first target value based on the target function.

[0171] Specifically, the central control device calculates the first target value according to the first QOS of each non-file transfer service on each link in the WiFi system and the file rate limiting value (also referred to as file rate limiting value ) at this time when the rate limiting value of the M file transfer services is The first target value is calculated through the above target function, that is,

[0172] S1501: The central control device sends a third instruction to the controllable device corresponding to the link transmitting the jth file transfer service in the WiFi system, and the third instruction is used to instruct to disturb the rate limiting value of the jth file transfer service in the M file transfer services.

[0173] S1502: The application layer of the controllable device corresponding to the link transmitting the jth file transfer service responds to the third instruction and disturbs the rate limiting value of the jth file transfer service.

[0174] wherein the disturbance amount of the file rate limiting value is wherein ∈ m represents machine precision.

[0175] It should be understood that the limit value of the WiFi system for other non-file transfer services remains unchanged except for the limit value of the jth file transfer service being disturbed.

[0176] S1503: The application layer of the controllable device corresponding to the link transmitting the jth file transfer service sends a notification message to the central control device to indicate that the disturbance is complete.

[0177] S1504: The central control device sends a fourth instruction to the controllable device of each link, and the fourth instruction is used to instruct to measure the QOS of non-file transfer services.

[0178] S1505: The controllable device corresponding to the link transmitting the jth file transfer service measures the second QOS of each non-file transfer service on its link.

[0179] S1506: The controllable device corresponding to the link transmitting the jth file transfer service sends the second QOS of each non-file transfer service on its link to the central control device.

[0180] S1507: The controllable device of other links measures the second QOS of each non-file transfer service on its respective link.

[0181] The other links refer to the links in the WiFi system except for the link transmitting the jth file transfer service.

[0182] S1508: The controllable device of other links sends the second QOS of each non-file transfer service on its respective link to the central control device.

[0183] It should be understood that the measurement method of each second QOS is the same as that of the first QOS, which is not repeated here.

[0184] It should also be understood that after the second QOS is measured, the controllable device corresponding to the link transmitting the jth file transfer service also needs to restore the limit value of the jth file transfer service to the value before the disturbance.

[0185] S1509: The central control device calculates a second target value according to the second QOS of each non-file transfer service on each link and the current limit value of each file transfer service.

[0186] When the limit value of the M file transfer services After the jth file transfer service is disturbed, the current limit value of the M file transfer services becomes Based on The second QOS of each non-file transfer service on each link and the current limit value of the M file transfer services The second target value can be calculated through the above objective function, that is,

[0187] It should be understood that initially, j = 1. is a vector whose dimension and are the same, only the jth element is 1 and the other elements are 0.

[0188] S1510: The central control device calculates the change amount of the first target value when the jth file transmission service is disturbed according to the first target value and the second target value.

[0189] The change amount of the first target value when the jth file transmission service is disturbed is:

[0190]

[0191] S1511: The central control device determines whether j is equal to M. If not, S1512 is executed, otherwise, S1513 is executed.

[0192] S1512: The central control device sets j = j + 1, and re-executes S1601-S1611 until j is equal to the total number M of file transmission services in the WiFi system. M is also the total number of file transmission services in the WiFi system.

[0193] When j = M, the second target value of the M file transmission services when they are respectively disturbed can be calculated at this time, that is:

[0194] At the same time, based on the above formula (4), the change amount of the first target value when each file transmission service is respectively disturbed can also be obtained, that is, the change amount of the target value corresponding to each file transmission service:

[0195] At this time, the gradient value of the first target value includes the change amount of the target value corresponding to the M file transmission services, that is:

[0196]

[0197] S1513: The central control device determines that the gradient value of the first target value includes the change amount of the first target value when the M file transmission services are respectively disturbed.

[0198] S16: The central control device determines whether the first target value converges according to the gradient value of the first target value. If not, S17-S19 are executed, otherwise, S20 is executed.

[0199] S17: The central control device updates the speed limit values of the M file transfer services according to the gradient of the first target value.

[0200] wherein the updated speed limit values of the M file transfer services

[0201] wherein a (t) is a step size, and is a fixed value.

[0202] In addition, the speed limit values of each file transfer service before and after optimization are greater than the corresponding minimum speed limit values, i.e.,

[0203]

[0204] is the minimum speed limit value of the file transfer service (l, a, i). The minimum speed limit values of different file transfer services can be the same or different. For example, the minimum speed limit value of the file transfer service is greater than 0, such as 1 Mbps, 2 Mbps, 5 Mbps, 10 Mbps, or other values. By limiting the minimum speed limit value, the transmission rate of each file transfer system can be guaranteed to be not less than the minimum speed limit value, and complete non-transmission of the file transfer service can be avoided.

[0205] The speed limit values of each file transfer service before and after optimization also satisfy the following conditions:

[0206]

[0207] wherein R l,a,i is the data amount (i.e., throughput or transmission rate) of the service (l, a, i) transmitted per unit time, γ l is the highest effective rate of the lth link, is the set of file transfer services in all links, x l,a,i is the speed limit value of the service (l, a, i). In the case of satisfying the above conditions, the current WiFi system is stable. l is a positive integer and is not greater than the total number of links in the WiFi system.

[0208] At this time, the controllable device can also obtain the real-time transmission rate of each non-file transfer service.

[0209] In some embodiments, the highest effective rate of the link can be determined based on the negotiated rate of the link, such as 70% of the negotiated rate.

[0210] In other embodiments, the highest effective rate of the link can also be determined based on the actual transmission rate of each service in each priority queue on all links. For details, refer to the measurement method of the highest effective rate of the link provided in the embodiments of the present application, which is not described here.

[0211] S18: The central control device sends a second instruction to the controllable devices of each link, the second instruction including the updated speed limit values of the M file transfer services.

[0212] S19: The application layer of the controllable device of each link updates the speed limit values of the respective file transfer services in response to the second instruction, and re-executes S12.

[0213] The above gradient descent method is used to optimize the objective function to find the speed limit values of the respective file transfer services that minimize the objective value of the objective function. It should be understood that the speed limit values of the respective file transfer services that minimize the objective value of the objective function can also be calculated by other linear regression solving methods, which will not be described here.

[0214] S20: The central control device ends the process.

[0215] It should be understood that when the first objective value converges after multiple optimizations, the optimization is complete, and the speed limit values of the respective file transfer services obtained at this time are the solution that minimizes the first objective value and also the solution that optimizes the QOS of the real-time services and the delay-sensitive services in the WiFi system.

[0216] It should be understood that the controllable device can also send parameters for calculating the QOS to the central control device, and the central control device calculates the QOS.

[0217] It should also be understood that the central control device can also periodically initiate the optimization method of the QOS of the wireless local area network described in S10-S20 above.

[0218] The optimization method of the wireless local area network provided in the embodiments improves the stability of the real-time services and the delay-sensitive services under the premise of ensuring the minimum transmission rate of the file transfer rate, thereby improving the stability of the WiFi system.

[0219] In other embodiments, to reduce the amount of calculation, only the large file transfer services can be optimized, i.e., only the large file transfer services are limited in speed. At this time, is the set of file transfer services on all links, and may be the file transfer services whose actual file transfer amount is greater than a preset value (such as 2 Mbps, 5 Mbps, or other values) or whose actual file transfer rate is greater than a preset rate, i.e., the set of large file transfer services, may be the file transfer services whose actual file transfer amount is not greater than the preset value or whose actual file transfer rate is not greater than the preset rate, i.e., the set of small file transfer services. It can be understood that only the large file transfer services can be optimized The rate limiting value of the file transfer service can be set as a fixed value. The maximum file rate limiting value of the file transfer service can be set as a fixed value.

[0220] At this time, the objective function is:

[0221]

[0222] The optimization variable is

[0223] The above method can still be used for online optimization to solve the rate limiting value of each large file transfer service that makes the first objective value optimal. The minimum That is, the rate limiting value of each large file transfer service is obtained. It should be understood that at this time, the rate limiting value of the small file transfer service is unchanged in the optimization process, for example, the minimum rate limiting value, or the small file transfer service is not rate limited.

[0224] At this time, the controllable device can control the rate limiting value of the small file transfer service to be the minimum rate limiting value or not rate limit the small file transfer service, and the rate limiting value of the large file transfer service is the rate limiting value that makes the first objective value optimal.

[0225] The wireless local area network QOS optimization method provided in the embodiments improves the QOS of real-time services and delay-sensitive services, reduces the delay of real-time services and delay-sensitive services, and improves the user experience in scenarios containing screen projection and other delay-sensitive services, under the premise of guaranteeing the minimum transmission rate of the file transmission rate.

[0226] It should also be understood that the above wireless local area network QOS optimization method can be applied to a WiFi system that does not contain a perceptible link. At this time, all "links" in the above method embodiments are controllable links, and the above optimization method can not perform steps related to the perceptible link, which will not be described here again.

[0227] As shown in Figure 5 , it is another flowchart of a wireless local area network QOS optimization method provided in the embodiments of the present application. The method is implemented based on the WiFi system shown in Figure 2 The method is performed by the controllable device of each link in the WiFi system. The embodiments of the present application take the controllable device of the first link as an example to illustrate that the method can include but is not limited to the following part or all steps.

[0228] S101: The controllable device of the first link negotiates with the controllable devices of other links the perturbation order of the rate limiting values of M file transfer services.

[0229] The controllable device of each link can send the link information and service information of its link to other devices, so that the controllable device of each link determines the number of links and the number of file transmission services in the current WiFi system, or the number of file transmission services that need to optimize the limited speed value. The embodiment of the application takes M file transmission services that need to be optimized as an example, which can be all file transmission services in the WiFi system, or large file transmission services in the WiFi system.

[0230] Further, the controllable device of each link negotiates the disturbance order of the limited speed value of the M file transmission services with the controllable devices of other links in the WiFi system. Based on the disturbance order, each controllable device can determine whether the limited speed value of the file transmission service on its link needs to be disturbed.

[0231] S102: The controllable device of the first link limits the speed of each file transmission service on the first link according to the limited speed value of the file transmission service.

[0232] After the disturbance order is determined through negotiation, the controllable device of each link can use the initial limited speed value to limit the speed of the file transmission service on its link. The initial limited speed value can be referred to the related description in S11 above, which will not be described here.

[0233] S103: The controllable device of the first link measures the first QOS of each non-file transmission service on the first link.

[0234] After the M file transmission services are limited, the controllable device of each link can measure the first QOS of each non-file transmission service on the first link, and send the measured first QOS to the controllable devices of other links.

[0235] The specific implementation of measuring QOS by each link can be referred to the related description in S13 above, which will not be described here.

[0236] S104: The controllable device of the first link receives the first QOS of each non-file transmission service on other links.

[0237] S105: The controllable device of the first link calculates a first target value according to the first QOS of each non-file transmission service on each link and the limited speed value of the M file transmission services.

[0238] The calculation method of the first target value can be referred to the related description in S15 above, which will not be described here.

[0239] S106: The controllable device of the first link determines whether the jth file transmission service is a file transmission service on the first link. If yes, S107 is executed, otherwise, S108 is executed.

[0240] It should be understood that S106 can be performed after the first target value is calculated, or after the first QOS of each file transfer service on each link is received. Initially, j = 1. The first target value is calculated according to the perturbation order determined in S101 to perturb the rate limiting value of the M file transfer services.

[0241] S107: The controllable device of the first link perturbs the rate limiting value of the jth file transfer service.

[0242] The specific implementation of the perturbation can refer to S1502 described above, which will not be described here again.

[0243] Optionally, in order to ensure that each controllable device measures the QOS synchronously after the perturbation, the controllable device that performs the perturbation can send an instruction for indicating the test to other controllable devices, and the controllable device starts to measure the QOS of each non-file transfer service on its link after receiving the instruction.

[0244] S108: The controllable device of the first link measures the second QOS of each non-file transfer service on the first link.

[0245] Each perturbation of each pair of file transfer services requires the controllable device of each link to measure the QOS of the non-file transfer service on its link again.

[0246] S109: The controllable device of the first link receives the second QOS of each non-file transfer service on other links.

[0247] S110: The controllable device of the first link calculates a second target value according to the second QOS of each non-file transfer service on each link and the current rate limiting value of each file transfer service.

[0248] The calculation method of the second target value is the same as that of the first target value, which can refer to the calculation method of the first target value described above, or S1509 described above, which will not be described here again.

[0249] S111: The controllable device of the first link calculates the change amount of the first target value when the jth file transfer service is perturbed according to the first target value and the second target value.

[0250] The calculation method of the change amount of the first target value when the jth file transfer service is perturbed can refer to S1510 described above, which will not be described here again.

[0251] S112: The controllable device of the first link determines whether j is equal to M. If yes, S113 is performed, otherwise, S114 is performed.

[0252] It should be understood that when j equals M, it indicates that the perturbation is completed, at this time, the change amount of the first target value when the limit speed values of the M file transmission services are perturbed respectively is obtained, that is, the gradient value of the first target value. Otherwise, the limit speed values of the remaining file transmission services need to be perturbed, and S113 is executed.

[0253] S113: The controllable device of the first link sets j = j + 1.

[0254] S114: The controllable device of the first link determines whether the first target value converges according to the gradient value of the first target value. If yes, S119 is executed, otherwise, S115 is executed.

[0255] If the convergence is achieved, it indicates that the limit speed values of the current M file transmission services are the limit speed values that make the first target value minimum, at this time, the optimization can be stopped, otherwise, the next round of optimization is performed, S115 is executed, and j = 1.

[0256] S115: The controllable device of the first link updates the limit speed values of each file transmission service on the first link according to the gradient of the first target value.

[0257] S116: The controllable device of the first link sends information indicating that the update of the limit speed values of the file transmission services on the first link is completed.

[0258] S117: The controllable device of the first link receives information indicating that the update of the file transmission services on the respective links is completed, which is sent by the controllable devices of the other links.

[0259] S118: The controllable device of the first link determines whether the update of the limit speed values of the M file transmission services is completed. If not, S117 is executed to continue to wait to receive the information indicating that the update of the file transmission services on the respective links is completed, which is sent by the controllable devices of the other links, otherwise, S102 is executed.

[0260] In order to ensure that the controllable devices of each link optimize synchronously, after updating the limit speed values of each file transmission service on the link, the controllable device of each link can send indication information to other controllable devices, and the controllable device of each link starts the next round of optimization after receiving all the indication information.

[0261] S119: The controllable device of the first link ends the flow.

[0262] The beneficial effects of the wireless local area network QOS optimization method improved by the embodiments of the application are described as follows in combination with actual experimental test results.

[0263] As Figure 6As shown in FIG. 1, it is a framework diagram of the WiFi system built for the experiment. The WiFi system includes electronic device A, electronic device B, electronic device C, electronic device D and AP, wherein the AP is used to receive the service data generated by the electronic devices A-D. In the experiment, the service and rate transmitted by each electronic device are as follows:

[0264] Electronic device A transmits real-time service SE-A (rate of 60 Mbps) and file transmission service to the AP.

[0265] Electronic device B transmits real-time service SE-B (rate of 60 Mbps) and file transmission service to the AP.

[0266] Electronic device C transmits file transmission service to the AP.

[0267] Electronic device D transmits real-time service SE-D (rate of 5.41 Mbps) and file transmission service to the AP.

[0268] The total throughput of the WiFi system and the RTT delay of real-time services SE-A, SE-B and SE-D under three transmission mechanisms are tested respectively. The three transmission mechanisms are as follows:

[0269] Transmission mechanism 1 (single device / multiple services), without speed limiting, only a single electronic device runs in the WiFi system.

[0270] Transmission mechanism 2 (free competition), without speed limiting, each service in the four electronic devices competes for sending opportunities freely.

[0271] Transmission mechanism 3 (local optimization), the speed limiting value of the optimized file transmission service provided by the embodiment of the application is displayed, and each service in the four electronic devices competes for sending opportunities.

[0272] As shown in FIG. 2, it is a comparison diagram of the total throughput obtained under the three mechanisms. Figure 7A

[0273] As shown in FIG. 3, it is a comparison diagram of the RTT delay of real-time services SE-A, SE-B and SE-D under the three mechanisms. Figure 7B

[0274] From the test results, it can be seen that the total throughput of the WiFi system reaches the highest when a single device runs, which is 587 Mbps. Due to the overhead such as competition, when multiple electronic devices concurrently transmit, the total throughput of the WiFi system slightly decreases. When multiple electronic devices concurrently transmit, compared with no constraint (free competition), speed limiting on the file transmission service does not affect the total throughput of the WiFi system.

[0275] ​​Due to inevitable physical layer channel competition among multiple electronic devices, the RTT delay is increased compared with the single device case when multiple electronic devices concurrently transmit. However, compared with unconstrained (free competition), the throughput of real-time services can be greatly improved and the RTT delay of real-time services can be reduced by limiting the speed of file transmission services when multiple electronic devices concurrently transmit.

[0276] The following describes a highest effective link measurement method related to an embodiment of the present application.

[0277] In an embodiment of the present application, the highest effective rate can be used for overall scheduling and channel allocation of WiFi transmission. The highest effective rate can be measured by closing the data transmission of other controllable links and perceptible links. However, it is difficult to efficiently measure the highest effective rate of all controllable links and perceptible links by using this method.

[0278] In one implementation, the highest effective rate of a link can be determined based on the modulation and coding scheme (MCS) negotiation rate through the link.

[0279] Exemplarily, the highest effective rate γ l of the lth link is:

[0280] γ l = V l * ρ

[0281] wherein V l is the negotiation rate of the lth link, and 0 < ρ < 1. The coefficient ρ is 0.7.

[0282] In another implementation, the highest effective rate of a single link can also be measured, or it can also be obtained by the joint measurement method of multiple links provided by the embodiments of the present application.

[0283] The following describes the joint measurement method of the highest effective rate of a link provided by the embodiments of the present application in four implementation modes.

[0284] Implementation mode one:

[0285] As shown in Figure 8 , it is a flowchart of a highest effective rate measurement method provided by an embodiment of the present application. The method is based on the WiFi system shown in Figure 2 . The method can include, but is not limited to, the following steps or all steps.

[0286] S31: The center control device identifies the number of controllable links to be tested.

[0287] In a specific implementation, each controllable device in the cell can communicate with the central control device and report the identity of the device connected thereto. The central control device can identify the number and set of controllable links and the number and set of perceptible links in the cell according to the information reported by each controllable device.

[0288] S32: The central control device sends a first instruction to each controllable device corresponding to a link.

[0289] The first instruction is used to instruct the highest effective rate of the controllable link to be tested to be tested.

[0290] The central control device can autonomously send the first instruction periodically, or can trigger the test procedure after receiving a speed test request sent by the controllable device.

[0291] The controllable link to be tested can be all controllable links or part of controllable links in the WiFi link.

[0292] For example, when one controllable device corresponds to multiple controllable links, only one controllable link can be tested at a time, and the multiple controllable links can be measured multiple times respectively. In some embodiments, the central control device can send a test notification to the controllable device, and the controllable device can send information indicating whether the controllable device participates in the test to the central device after receiving the test notification, or send the identity of the link or device participating in the test. It should be understood that in some embodiments, the identity of the link can be indicated by the identity of the transmitting end and the identity of the receiving end together.

[0293] In the following content of the first embodiment of the present application, unless otherwise specified, the controllable link is the controllable link participating in the test at this time, that is, the controllable link to be tested.

[0294] S33: The transmitting end of the controllable link suspends data transmission on the AC queue other than the preset AC queue in response to the received first instruction.

[0295] The test module of the transmitting end of the controllable link can suspend data transmission on the AC queue other than the preset AC queue, for example, the preset AC queue is the AC2 queue, and data transmission on AC0, AC1 and AC3 is suspended.

[0296] In other embodiments, the transmitting end of the controllable link can also suspend data transmission on all current AC queues, and only transmit test data on the preset AC queue.

[0297] S34: The receiving end of each perceptible link suspends current data transmission and reception in response to the received first instruction.

[0298] In an implementation, the receiving end of a controllable link can send a notification message to its sending end to inform the sending end to suspend sending information, and can also close the WiFi.

[0299] S35: The sending end of each controllable link sends test data through its controllable link, the test data making the preset AC queue not empty or full.

[0300] The sending end of each controllable link sends test data on its corresponding controllable link. Step S35 can include:

[0301] S351: After receiving the first instruction, the test module in the application layer of the sending end issues test data, which can make the preset AC queue full.

[0302] Exemplarily, the test data can be file data with a data amount greater than a first threshold, the file data being put into the AC2 queue at the MAC layer. The first threshold can be 500M.

[0303] Exemplarily, the test data is voice data with a first time length, the voice data being put into the AC1 queue at the MAC layer.

[0304] S352: The MAC layer of the sending end puts the test data into the preset AC queue, making the preset AC queue not empty or full.

[0305] S353: The transmitter in the hardware layer of the sending end sequentially obtains to-be-sent data from the preset AC queue.

[0306] Since only the preset AC queue has data, the to-be-sent data is obtained only from the preset AC queue. It should be understood that the to-be-sent data can include data in the current application layer running business that is issued to the preset AC queue in addition to the sending of the test data.

[0307] S354: The transmitter in the hardware layer of the sending end sends the obtained to-be-sent data to the receiving end.

[0308] S36: The sending end of each controllable link obtains the actual transmission rate on its preset AC queue.

[0309] Specifically, the test module in the application layer of the sending end obtains the actual transmission rate.

[0310] S37: The sending end of each controllable link sends the actual transmission rate corresponding to its controllable link to the central control device.

[0311] The actual transmission rate of a controllable link is the actual transmission rate of the transmission end of the controllable link on the preset AC queue, that is, the actual transmission rate of the controllable link on the preset AC queue.

[0312] S38: The central control device calculates the highest effective rate of each controllable link according to the number of controllable links and the actual transmission rate of each controllable link.

[0313] It should be understood that when each transmission end transmits data at full load only on the same AC queue, if the unit time slot length of the countdown in the transmission end of each controllable link is consistent, the transmission time competed by each transmission end is basically consistent. Then the highest effective rate of a controllable link can be calculated by the following formula.

[0314] The highest effective rate of the lth controllable link in the set of controllable links is l :

[0315] γ l = l *|Lc|

[0316] Wherein, R l is the actual transmission rate of the lth controllable link, Lc is the set of controllable links, |Lc| is the number of links in the set of controllable links, and l is a positive integer, l≤|Lc|.

[0317] Wherein, the set of controllable links Lc is the set of controllable links participating in the speed measurement. It should be understood that the links (controllable links and perceptible links) in the cell that do not participate in the speed measurement need to suspend data transmission and reception, and then resume data transmission and reception after the speed measurement is completed.

[0318] Based on the above formula, the central control device can calculate the highest effective rate of each controllable link.

[0319] S39: The central control device sends the highest effective rate corresponding to each controllable link to the transmission end of each controllable link.

[0320] That is, the central control device sends the highest effective rate of the lth controllable link to the transmission end of the lth controllable link.

[0321] In some embodiments, the central control device can send a first instruction to the transmission end of the controllable link, and a second instruction to the receiving end of the perceptible link, the second instruction being used to instruct the receiving end of the perceptible link to suspend data transmission and reception. The receiving end of the perceptible link suspends the current service data transmission and reception after receiving the second instruction.

[0322] In some embodiments, when there are controllable devices in the system that are not participating in the test, the central control device may send a third instruction to the controllable devices that are not participating in the test, which is used to instruct them to suspend data transmission and reception.

[0323] The method described in Embodiment 1 involves suspending data transmission on other AC queues at the transmitting end of each controllable link and suspending data transmission and reception at the receiving end of the sensing link during joint speed measurement. Each transmitting end of the controllable link transmits data only on the same preset AC queue, ensuring that the transmission time obtained through competition at the transmitting ends of each controllable device is essentially the same. Therefore, the highest effective rate of each controllable link is the product of its actual transmission rate and the number of controllable links. This measurement method is simple and highly efficient.

[0324] Implementation Method Two:

[0325] like Figure 9 The diagram shown is a flowchart illustrating a method for measuring the highest effective rate according to an embodiment of this application. This method is based on the above... Figure 2 The WiFi system implementation shown may include, but is not limited to, some or all of the following steps.

[0326] S41: The transmitter of the first controllable link negotiates with other controllable devices to determine the number of controllable links to be tested.

[0327] The first controllable link can be any controllable link in the WiFi system, and is a link to be tested. The controllable devices can negotiate and determine whether to participate in the measurement of the highest effective rate through interactive information. For example, the first controllable device, as the initiator, can broadcast a test notification to all other controllable devices. Upon receiving the notification, other controllable devices can broadcast information indicating whether the controllable device will participate in the test, and / or the identifier of the link or device participating in the test. At this time, each controllable device can know the number of controllable devices participating in the test in the WiFi system, as well as the number of controllable links participating in the test, i.e., the number of controllable links to be tested.

[0328] S42: The transmitter of the first controllable link sends the first instruction to the controllable devices corresponding to other links.

[0329] The transmitter of the first controllable link, acting as the initiator, can send a first command to each controllable device after negotiating and determining the data for the controllable link to be tested. This first command is used to indicate the actual transmission rate being tested or to indicate the highest effective rate being tested. The controllable devices include the transmitter of the controllable link and the receiver of the sensing link in the WiFi system.

[0330] S43: The transmitting end of the first controllable link suspends data transmission on AC queues other than the preset AC queue.

[0331] After sending the first instruction, the transmitting end of the first controllable link can suspend data transmission on AC queues other than the preset AC queue. For example, the preset AC queue is the AC2 queue, and data transmission on AC0, AC1 and AC3 is suspended.

[0332] In other embodiments, the transmitting end of the first controllable link can also suspend data transmission on all current AC queues, and only transmit test data on the preset AC queue.

[0333] S44: The transmitting end of the other controllable links to be tested suspends data transmission on AC queues other than the preset AC queue in response to the first instruction.

[0334] As described above in step S43, the transmitting end of the other controllable links to be tested can also suspend data transmission on AC queues other than the preset AC queue after sending the first instruction.

[0335] S45: The receiving end of the perceivable link and the transmitting end of the controllable link not participating in the test suspend current data transmission and reception in response to the received first instruction.

[0336] The receiving end of each perceivable link and the transmitting end of the controllable link not participating in the test suspend data transmission and reception after receiving the first instruction.

[0337] S46: The transmitting end of the first controllable link transmits test data through the first controllable link, which makes the preset AC queue not empty or full.

[0338] After S43, the transmitting end of the first controllable link can perform step S46 to transmit test data through the first controllable link. The specific implementation can be referred to the above-described embodiment one step S351-S354, which will not be described here.

[0339] S47: The transmitting end of the first controllable link obtains the actual transmission rate of the first controllable link on the preset AC queue, and calculates the highest effective rate of the first controllable link according to the number of controllable links to be tested and the actual transmission rate of the first controllable link on the preset AC queue.

[0340] Specifically, the highest effective rate of the first controllable link is the product of the actual transmission rate of the first controllable link on the preset AC queue and the number of controllable links to be tested.

[0341] S48: The transmitting end of the other controllable links to be tested transmits test data through the respective controllable links, which makes the preset AC queue not empty or full.

[0342] After S44, the transmitting end of other controllable links to be tested can perform step S48, i.e., sending test data through the respective controllable link. The specific implementation can refer to steps S351-S354 of the above-described embodiment, which will not be described here.

[0343] S49: The transmitting end of other controllable links to be tested obtains the actual transmission rate of the respective controllable link on the preset AC queue, and calculates the highest effective rate of the respective controllable link according to the number of controllable links to be tested and the actual transmission rate of the respective controllable link on the preset AC queue.

[0344] The transmitting end of other controllable links to be tested can calculate the highest effective rate of the respective controllable link in the same way as the calculation method of the highest effective rate of the first controllable link.

[0345] It should be understood that the highest effective rate of the controllable link to be tested needs to be tested at the same time, i.e., steps S47 and S49 need to be performed within the same time period. The transmitting end of each controllable link to be tested can agree on the time of sending test data, for example, can send test data at the first time length after completing the suspension of data transmission on the AC queue other than the preset AC queue, and the actual transmission rate of the controllable link on the preset AC queue can be measured at the second time length after the time of sending test data. In order to ensure the simultaneous measurement of the highest effective rate of each controllable link.

[0346] The above method, when multiple controllable links are jointly measured, suspends the data transmission of the transmitting end of each controllable link on other AC queues, and suspends the suspension of data reception of the receiving end on the controllable link, and each controllable link transmits data only on the same preset AC queue, so that the transmission time obtained by the transmitting end of each controllable device is basically consistent, and thus the highest effective rate of each controllable link is the product of the actual transmission rate and the number of controllable links. The measurement method is simple and has high speed measurement efficiency.

[0347] Moreover, the highest effective rate of each controllable link can be measured in a distributed manner, reducing the sending of data between different devices, and further reducing the communication overhead.

[0348] It should be noted that the highest effective rate of the link between two devices and the inverse link thereof is not much different. The inverse link of the controllable link is a controllable link or a controllable link, and thus it can be assumed that the highest effective rate of the controllable link is equal to the highest effective rate of the inverse link (controllable link) of the controllable link. At this time, the highest effective rate of the controllable link can be tested by testing the inverse link. When the highest effective rate of the controllable link needs to be measured, the above-described controllable link to be tested includes the inverse link of the controllable link to be tested.

[0349] Implementation manner three:

[0350] As shown in Figure 10 , a highest effective rate measurement method provided by an embodiment of the present application is based on the WiFi system implementation shown in Figure 2 , and the method can include, but is not limited to, all or part of the following steps.

[0351] S61: The central control device identifies the number of controllable links in the to-be-tested link.

[0352] In a specific implementation, each controllable device in the cell can communicate with the central control device to report the identity of the device connected thereto and the identity of the receiving end or transmitting end of the corresponding link. The central control device can identify, according to the information reported by each controllable device, the number and set of controllable links participating in the speed measurement in the cell, the number and set of perceptible links participating in the speed measurement, and the set and number of controllable links or perceptible links not participating in the speed measurement.

[0353] Optionally, the central control device also collects the number of perceptible links and the identity of the transmitting end and receiving end of each perceptible link.

[0354] In some embodiments, the to-be-tested link can be all controllable links or part of controllable links in a WiFi link.

[0355] Exemplarily, when a controllable device corresponds to multiple controllable links, only one controllable link can be tested at a time, and the multiple controllable links can be measured multiple times respectively. In some embodiments, the central control device can send a test notification to the controllable device, and the controllable device can send, after receiving the test notification, information used by the controllable device to indicate whether to participate in the test to the central device, and the identity of the link participating in the test. It should be understood that, in some embodiments, the identity of the link can be indicated by the identity of the transmitting end and the identity of the receiving end together.

[0356] In the following content of the second embodiment of the present application, unless otherwise specified, the controllable link refers to the controllable link participating in the test at this time.

[0357] S62: The central control device sends a first instruction to the controllable device corresponding to the to-be-tested link.

[0358] The first instruction is used to indicate that the highest effective rate of the controllable link is tested. The controllable device corresponding to the to-be-tested link includes the transmitting end corresponding to the controllable link to be tested and the receiving end corresponding to the perceptible link to be tested.

[0359] The central control device can autonomously send the first instruction periodically, or trigger the test process after receiving the speed measurement request sent by the controllable device.

[0360] S63: The application layer of the transmitting end of the controllable link sends test data in response to the received first instruction, the test data causing the preset AC queue to be non-empty or full.

[0361] Optionally, the transmitting end of the controllable link can maintain the transmission of data on the current respective AC queues, but increase the transmission of test data on the preset AC queue. For example, the preset AC queue is AC2 queue, the transmission of data on AC0, AC1 and AC3 is maintained, and the transmission of test data on the AC2 queue is increased, so that the AC2 queue is non-empty or full.

[0362] Optionally, the controllable device participating in the speed test can also send indication information indicating participation in the speed test to the central control device. The transmitting end of the controllable link participating in the speed test can perform S63-S65, and the transmitting end of the perceptible link participating in the speed test can perform S66-S67.

[0363] Optionally, the controllable device not participating in the speed test can send indication information indicating non-participation in the speed test to the central control device, and pause the transmission and reception of data. In step S61, the central control device can obtain the number and set of controllable links, the number and set of perceptible links, and the like based on the indication information.

[0364] The transmitting end of each controllable link increases the transmission of test data on the corresponding controllable link. Step S63 can include:

[0365] S631: The test module in the application layer of the transmitting end issues test data after receiving the first instruction, the test data causing the preset AC queue to be non-empty.

[0366] The preset AC queue is also referred to as a preset priority queue, and can be any priority queue. The test data is data generated by the application layer or stored by the application layer, and the data is mapped to the preset AC queue when reaching the MAC layer.

[0367] Exemplarily, the preset AC queue is AC2, and the test data can be file data with a data amount greater than a first threshold value, the file data being placed in the AC2 queue at the MAC layer. The first threshold value can be 500M.

[0368] Exemplarily, the preset AC queue is AC1, and the test data is voice data with a first time length, the voice data being placed in the AC1 queue at the MAC layer.

[0369] The embodiments of the present application take file data causing the AC2 queue to be full-load transmission as an example for illustration.

[0370] S632: The MAC layer of the transmitting end puts the test data into the preset AC queue, so that the preset AC queue is not empty or full.

[0371] It should be understood that the transmitting end normally transmits services, and when service data arrives at the MAC layer, the MAC layer maps the service data into the corresponding AC queue according to the tag in the service.

[0372] S633: The hardware layer of the transmitting end obtains the data to be transmitted from the AC queue according to the contention mechanism.

[0373] S634: The hardware layer of the transmitting end transmits the obtained data to be transmitted to the receiving end.

[0374] Among them, 4 AC queues (namely AC0, AC1, AC2 and AC3) and the CSMA mechanism compete for the channel, and after obtaining the transmission opportunity, the data is transmitted through the transmitter in the hardware layer.

[0375] S64: The test module in the application layer of the transmitting end of the controllable link obtains the actual transmission rate on each AC queue.

[0376] Among them, the actual transmission rate can be the actual average transmission rate, and the actual transmission rate on an AC queue is the average rate at which data is transmitted on the AC queue.

[0377] S65: The application layer of the transmitting end of the controllable link transmits the actual transmission rate on each AC queue obtained by itself to the central control device. At this time, each controllable link to be tested transmits the actual transmission rate on each AC queue obtained by itself to the central control device, that is, the central control device obtains the actual transmission rate of each AC queue on each link.

[0378] S66: The receiving end of the perceivable link obtains the actual transmission rate of the corresponding transmitting end on each AC queue in response to the first instruction. Here, the perceivable link refers to the perceivable link participating in the test.

[0379] In one implementation, the application layer of the receiving end of each perceivable link participating in the test obtains the actual transmission rate on each AC queue in response to the received first instruction, and maintains the transmission of the current service data.

[0380] Illustratively, the receiving end of the mth perceivable link obtains the actual transmission rate of the transmitting end of the mth perceivable link on each AC queue. At this time, the transmitting end of the mth perceivable link keeps the original data transmission unchanged.

[0381] S67: The receiving end of the perceptible link sends the actual transmission rate on each AC queue obtained by itself to the central control device. It should be understood that S66-S67 can be sent after S62 and before S68.

[0382] In some embodiments, when there are controllable devices that do not participate in the test in the system, the central control device can send a third instruction to the controllable devices that do not participate in the test, which is used to instruct them to suspend data transmission and reception.

[0383] S68: The central control device calculates the highest effective rate of each controllable link according to the number of controllable links, the actual transmission rate of the transmitting end of all controllable links to be tested on each AC queue, and the actual transmission rate of the transmitting end of all perceptible links participating in the test on each AC queue.

[0384] wherein the preset AC queue is the bth AC queue in the 4 AC queues, b is a positive integer not greater than 4, the highest effective rate of the lth controllable link is γ l is calculated based on the following formula:

[0385]

[0386] wherein Ls is the set of perceptible links participating in the test, Lc is the set of controllable links to be tested, m is the index of the perceptible link in Ls, n and l are the indexes of the controllable link in Lc, S1 is a set of 4 AC queues, S2 is a set of AC queues other than the preset AC queue (the bth AC queue) in the 4 AC queues, a and b are the indexes of the AC queue in set S1,

[0387] R m,a is the actual transmission rate of the mth perceptible link on the a th AC queue in set S1, R n,a is the actual transmission rate of the nth controllable link on the a th AC queue, R l,b is the actual transmission rate of the lth controllable link on the bth AC queue, μ l is the proportion of the transmission time occupied by the queue priority of the lth controllable link to be tested in the time occupied by all controllable link priorities to be tested, γ m is the highest effective rate of the mth controllable link to be tested, γ n is the highest effective rate of the nth controllable link participating in the test, γ l is the highest effective rate of the lth controllable link to be tested, m, n, and l are positive integers, m≤|Ls|, n≤|Lc|, l≤|Lc|, |Lc| is the number of controllable links in Lc, and |Ls| is the number of perceptible links in Ls.

[0388] It should be understood that a∈(1, 2, 3, 4), wherein the first priority queue is the AC 0, the second priority queue is the AC 1, the third priority queue is the AC 2, and the fourth priority queue is the AC 3.

[0389] For example, when the preset AC queue is the AC 2 queue, the highest effective rate γ l The following formula is used for calculation:

[0390]

[0391] At this time, R l,1 is the actual transmission rate of the lth controllable link in the AC 1 queue.

[0392] Optionally, when there is no error in the countdown time slot length of each controllable device,

[0393]

[0394] In the specific calculation process, γ m may be known or obtained through a separate speed measurement method or determined based on the MCS negotiation rate. The obtained R m,a , R n,a are substituted into the above formula to obtain |Lc| equations. The |Lc| equations are combined to obtain the highest effective rate of the |Lc| controllable links (i.e., each controllable link in the set |Lc|).

[0395] For example, the γ m of the mth controllable link is the MCS negotiation rate of the controllable link multiplied by a coefficient, which can be 70%. The coefficient is an empirical value obtained by the present embodiment based on tests.

[0396] Based on the above formula, the central control device can calculate the highest effective rate of each controllable link.

[0397] S69: The central control device sends the highest effective rate corresponding to each controllable link to the transmission end of each controllable link.

[0398] It should be understood that the central control device sends the highest effective rate of the lth controllable link to the transmission end of the lth controllable link.

[0399] In the above embodiment three, while measuring the highest effective rate, other services can perform data transmission, and the high-priority data transmission is not greatly affected. Meanwhile, multiple controllable links can simultaneously perform speed measurement, reducing speed measurement overhead and improving speed measurement efficiency.

[0400] Implementation manner four:

[0401] As Figure 11 shown, a flowchart of a highest effective rate measurement method provided by an embodiment of the present application is shown, which is based on the WiFi system implementation shown in Figure 2 The method can include, but is not limited to, all or some of the following steps.

[0402] S71: The transmitting end of the first controllable link negotiates with other controllable devices to determine the number of controllable links to be tested.

[0403] The first controllable link can be any controllable link in the WiFi system, and is a controllable link to be tested. The controllable devices can negotiate through interactive information to determine whether to participate in the highest effective rate measurement. Exemplarily, the first controllable device as the initiator can broadcast a test notification to each controllable device, and other controllable devices can broadcast information indicating whether the controllable device participates in the test after receiving the notification, and / or the identification of the link participating in the test or the identification of the device. At this time, each controllable device can know the controllable devices participating in the test in the WiFi system, and the number of controllable links participating in the test, that is, the number of controllable links to be tested.

[0404] S72: The transmitting end of the first controllable link sends a first instruction to the controllable devices corresponding to other links.

[0405] The transmitting end of the first controllable link as the initiator can send a first instruction to each controllable device after negotiating to determine the data of the controllable links to be tested. The first instruction is used to indicate the test actual transmission rate or to indicate the test highest effective rate. The controllable devices include the transmitting end of the controllable link in the WiFi system and the receiving end of the perceivable link.

[0406] S73: The controllable devices of the links not participating in the test suspend current data transmission and reception in response to the first instruction.

[0407] The controllable devices of the links not participating in the test include the receiving end of each perceivable link not participating in the test and the transmitting end of each controllable link not participating in the test. These controllable devices of the links not participating in the test suspend data transmission and reception after receiving the first instruction.

[0408] However, the links participating in the test do not need to suspend data transmission, which makes the services of the links participating in the test not suspended.

[0409] S74: The transmitting end of the first controllable link sends test data through the first controllable link, which makes the preset AC queue not empty or full.

[0410] After S73, the transmitting end of the first controllable link can perform step S74, and send test data through the first controllable link. The specific implementation can refer to steps S631-S634 in the above embodiment one, and details are not described herein.

[0411] S75: The transmitting end of each other controllable link to be tested sends test data through the respective controllable link, and the test data makes the preset AC queue not empty or full.

[0412] After S73, the transmitting end of the first controllable link can perform step S75, and send test data through the respective controllable link. The specific implementation can refer to steps S631-S634 in the above embodiment one, and details are not described herein.

[0413] In some implementations, the receiving end of the perceivable link participating in the test can send test data through the inverse link thereof, and the test data makes the preset AC queue not empty or full. At this time, the transmitting end of the controllable link to be tested includes the inverse link of the controllable link participating in the test.

[0414] In some implementations, the receiving end of the perceivable link participating in the test can also not send test data, nor request the corresponding transmitting end to send test data, but after the transmitting end of the controllable link to be tested sends test data, the actual transmission data of the respective perceivable link on each AC queue can be measured, and then S78 is performed.

[0415] S76: The transmitting end of the first controllable link sends the actual transmission data of the first controllable link on each AC queue to the transmitting end of each other controllable link to be tested.

[0416] Specifically, after sending test data, the transmitting end of the first controllable link can measure the actual transmission data of the first controllable link on each AC queue, and then send the actual transmission data of the first controllable link on each AC queue to the transmitting end of each other controllable link to be tested.

[0417] S77: The transmitting end of each other controllable link to be tested sends the actual transmission data of the respective controllable link on each AC queue to the transmitting end of the other controllable link.

[0418] Specifically, after sending test data, the transmitting end of each other controllable link to be tested can measure the actual transmission data of the respective controllable link on each AC queue, and then send the actual transmission data of the first controllable link on each AC queue to the transmitting end of each other controllable link to be tested.

[0419] S78: The receiving end of each perceivable link participating in the test can send the actual transmission data of the respective perceivable link on each AC queue to the transmitting end of the controllable link.

[0420] Specifically, after steps S74 and S75, the receiving end of each perceptible link participating in the test can measure the actual transmission data of the respective perceptible link on each AC queue, and then send the actual transmission data of the respective perceptible link on each AC queue to the transmitting end of the controllable link.

[0421] In some embodiments, the controllable device of each link participating in the test can send or broadcast the actual transmission data of the respective link on each AC queue to the controllable device of other links participating in the test or to other controllable devices.

[0422] In other embodiments, only the controllable links can be allowed to participate in the test, at which time all perceptible links and controllable links not participating in the test need to stop transmitting and receiving data.

[0423] After steps S76-S78, the controllable device of each controllable link to be tested collects the actual transmission data of each link participating in the test (including the controllable link to be tested and the perceptible link participating in the test) on each AC queue in the WiFi system. Further, S79 can be performed.

[0424] S79: Calculate the highest effective rate of each controllable link according to the number of controllable links to be tested, the actual transmission rate of all controllable links to be tested on each AC queue, and the actual transmission rate of all perceptible links participating in the test on each AC queue.

[0425] Specifically, the implementation can refer to S68 described above, which will not be described here. The transmitting end of the controllable link to be tested can calculate the highest effective rate of all controllable links to be tested, from which the highest effective rate of its own link can be found.

[0426] It should be understood that the highest effective rate of the controllable link to be tested needs to be maintained simultaneously, that is, each controllable device simultaneously obtains the actual transmission rate of the respective link on each AC queue. The transmitting end of each controllable link to be tested and the receiving end of the perceptible link can agree on the time to measure the actual transmission rate, or can perform it after a third time duration after receiving or sending the first instruction, so as to ensure that the actual transmission rates of the respective links are measured simultaneously.

[0427] In the above embodiment four, while measuring the highest effective rate, other services can perform data transmission, and the high-priority data transmission is not greatly affected. At the same time, multiple controllable links can simultaneously perform speed measurement, reducing the speed measurement overhead and improving the speed measurement efficiency.

[0428] Moreover, the highest effective rate of each controllable link can be measured in a distributed manner, reducing the transmission of data between different devices, and further reducing the communication overhead.

[0429] An electronic device provided by an embodiment of the present application is introduced below.

[0430] As shown in Figure 12 Fig. 1 is a schematic diagram of a hardware structure of an electronic device 100 provided by an embodiment of the present application. The electronic device 100 can be the controllable device or the central control device in the foregoing method embodiments, and is configured to perform the method performed by the controllable device or the central control device in the foregoing method embodiments.

[0431] Figure 12 Fig. 1 is a schematic diagram of a hardware structure of an electronic device provided by an embodiment of the present application.

[0432] The electronic device 100 can include a processor 101, a memory 102, a wireless communication module 103, a mobile communication module 104, an antenna 103A, an antenna 104A, and the like. The wireless communication module 103 can include a WLAN communication module, a Bluetooth communication module, and the like. The foregoing parts can transmit data through a bus.

[0433] The processor 101 can include one or more processing units, for example: the processor 101 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), and the like. Different processing units can be independent devices, or can be integrated in one or more processors.

[0434] The memory 102 can be configured to store computer-executable program code, which can include instructions. The processor 101 executes various functions of the electronic device 100 and data processing by running the instructions stored in the memory 102, for example, the method performed by the central control device or the controllable device in the wireless local area network QOS optimization method provided by an embodiment of the present application.

[0435] The wireless communication function of the electronic device 100 can be realized through the antenna 103A, the antenna 104A, the mobile communication module 104, the wireless communication module 103, the modem processor, and the baseband processor, and the like.

[0436] Antennas 103A and 104A can be used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of antennas. For example, antenna 103A can be multiplexed as a diversity antenna for wireless local area networks. In some other embodiments, antennas can be used in combination with tuning switches.

[0437] Mobile communication module 104 can provide solutions for wireless communication including 2G / 3G / 4G / 5G, etc. applied on electronic device 100. Mobile communication module 104 can include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. Mobile communication module 104 can receive electromagnetic waves by antenna 104A, and perform filtering and amplification, etc. on the received electromagnetic waves, and then transmit to a modem processor for demodulation. Mobile communication module 104 can also amplify signals modulated by the modem processor, and the amplified signals are converted into electromagnetic waves by antenna 104A and radiated out. In some embodiments, at least part of the functional modules of mobile communication module 104 can be arranged in processor 101. In some embodiments, at least part of the functional modules of mobile communication module 104 can be arranged in the same device as at least part of the modules of processor 101.

[0438] The modem processor can include a modulator and a demodulator. The modulator is used to modulate low-frequency baseband signals to be sent into medium-high frequency signals. The demodulator is used to demodulate received electromagnetic wave signals into low-frequency baseband signals. The demodulator then transmits the demodulated low-frequency baseband signals to a baseband processor for processing. After the low-frequency baseband signals are processed by the baseband processor, they are transmitted to an application processor. In some embodiments, the modem processor can be an independent device. In some other embodiments, the modem processor can be independent of processor 101, and arranged in the same device as mobile communication module 104 or other functional modules.

[0439] The wireless communication module 103 can provide wireless communication solutions including wireless local area networks (WLAN), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. applied on the electronic device 100. The wireless communication module 160 can be one or more devices integrated with at least one communication processing module. The wireless communication module 103 receives electromagnetic waves via the antenna 103A, performs frequency modulation and filtering processing on the electromagnetic wave signals, and sends the processed signals to the processor 101. The wireless communication module 103 can also receive signals to be sent from the processor 101, perform frequency modulation and amplification, and convert the signals to electromagnetic wave radiation via the antenna 103A.

[0440] In some embodiments, the antenna 104A of the electronic device 100 and the mobile communication module 104 are coupled, and the antenna 103A of the electronic device 100 and the wireless communication module 103 are coupled, so that the electronic device 100 can communicate with the network and other devices through wireless communication technology.

[0441] It can be understood that the structure shown in the embodiments of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 can include more or fewer components than shown, or combine certain components, or split certain components, or different component arrangements. The components shown can be implemented in hardware, software, or a combination of software and hardware.

[0442] In the embodiments of the present application, the wireless communication module 103 can be used for WiFi connection between electronic devices, transmission of data such as data or instructions, etc.

[0443] The operations performed by each device in the electronic device 100 can be specifically referred to the related description of the method embodiments described above, and will not be described in detail here.

[0444] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture. The embodiments of the present application take a layered architecture of a mobile operating system as an example to exemplarily illustrate the software structure of the electronic device 100.

[0445] Figure 13 is a software structure block diagram of the electronic device 100 of the embodiments of the present application.

[0446] A layered architecture divides software into several layers, each with a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, a mobile operating system is divided into four layers, from top to bottom, an application layer, an application framework layer / core service layer, a system library and runtime, and a kernel layer.

[0447] The application layer can include a series of application packages.

[0448] As shown in Figure 13 , the application packages can include camera, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message, etc. applications. Among them, the WLAN can include the test module in the above embodiment one or embodiment two.

[0449] The application framework layer provides application programming interfaces (APIs) and programming frameworks for the applications of the application layer. The application framework layer includes some pre-defined functions.

[0450] As shown in Figure 13 , the application framework layer can include a window manager, a content provider, a view system, a phone manager, a resource manager, a notification manager, etc.

[0451] The window manager is used to manage window programs.

[0452] The content provider is used to store and obtain data, and make the data accessible to the applications.

[0453] The view system includes visual controls, such as controls that display text, controls that display pictures, etc.

[0454] The phone manager is used to provide communication functions of the electronic device.

[0455] The resource manager provides various resources for the applications, such as localized strings, icons, pictures, layout files, video files, etc.

[0456] The notification manager enables the applications to display notification information in the status bar, which can be used to convey messages of the notification type, which can automatically disappear after a short stay without user interaction.

[0457] The runtime can refer to all code libraries, frameworks, etc. required by the program runtime.

[0458] The system library can include a plurality of functional modules. For example: a surface manager, media libraries, a three-dimensional graphics processing library (e.g. OpenGL ES), a 2D graphics engine (e.g. SGL), etc.

[0459] The surface manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.

[0460] The media library supports a variety of commonly used audio, video format playback and recording, and static image files, etc. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0461] The three-dimensional graphics processing library is used to realize three-dimensional graphics drawing, image rendering, synthesis, and layer processing, etc.

[0462] The 2D graphics engine is a drawing engine for 2D drawing.

[0463] The kernel layer is a layer between hardware and software. The kernel layer at least includes display drivers, camera drivers, audio drivers, and sensor drivers.

[0464] In the embodiments of the present application, when the electronic device is a controllable device, the application layer can further include a module or unit for implementing the functions implemented by the application layer of the controllable device in the above wireless local area network QOS optimization method.

[0465] In the embodiments of the present application, when the electronic device is a controllable device, the application layer can further include a test module for implementing the functions implemented by the test module in any one of the above implementation modes one to four.

[0466] It should be understood that each step in the above method embodiments can be completed by integrated logic circuits of hardware in the processor or instructions in the form of software. The method steps disclosed in the embodiments of the present application can be directly embodied as hardware processor execution completion, or executed by a combination of hardware and software modules in the processor.

[0467] The present application also provides an electronic device, which can include a memory and a processor. The memory can be used to store a computer program; the processor can be used to call the computer program in the memory, so that the electronic device executes the method executed by the center control device side in any one of the above embodiments.

[0468] The present application also provides an electronic device, which can include a memory and a processor. The memory can be used to store a computer program; the processor can be used to call the computer program in the memory, so that the electronic device executes the method executed by the center control device side in any one of the above embodiments.

[0469] The application also provides a chip system, which comprises at least one processor for implementing the functions of the central control device or the controllable device in any of the above embodiments.

[0470] In a possible design, the chip system further comprises a memory for storing program instructions and data, and the memory is located in or out of the processor.

[0471] The chip system can be composed of a chip, or can comprise a chip and other discrete devices.

[0472] Optionally, the processor in the chip system can be one or more. The processor can be implemented by hardware or software. When implemented by hardware, the processor can be a logic circuit, an integrated circuit or the like. When implemented by software, the processor can be a general-purpose processor, and the implementation is achieved by reading software codes stored in the memory.

[0473] Optionally, the memory in the chip system can also be one or more. The memory can be integrated with the processor, or can be arranged separately from the processor, and the embodiments of the application do not make any limitation. For example, the memory can be a non-transient processor, for example, a read-only memory (ROM), which can be integrated on the same chip as the processor, or can be arranged on different chips respectively, and the embodiments of the application do not make any limitation on the type of the memory and the arrangement of the memory and the processor.

[0474] For example, the chip system can be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), a central processor unit (CPU), a network processor (NP), a digital signal processor (DSP), a micro controller unit (MCU), a programmable logic device (PLD) or other integrated chip.

[0475] The application also provides a computer program product, which comprises a computer program (also referred to as code or instructions), which, when executed, causes a computer to perform the method performed by the central control device and the controllable device in any one of the above embodiments.

[0476] The application also provides a computer readable storage medium, which stores a computer program (also referred to as code or instructions). When the computer program is executed, it causes a computer to perform the method performed by the central control device and the controllable device in any one of the above embodiments.

[0477] The embodiments of the application can be combined in any manner to achieve different technical effects.

[0478] In the above embodiments, all or part of the embodiments can be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments can be implemented in the form of a computer program product. The computer program product comprises one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network or other programmable devices. The computer instructions can be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) mode. The computer readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. integrated with one or more available media. The available media can be magnetic media (such as floppy disk, hard disk, magnetic tape), optical media (such as DVD), or semiconductor media (such as solid state disk (SSD)) and the like.

[0479] Those skilled in the art can understand that all or part of the processes in the above embodiments can be implemented by a computer program to instruct the relevant hardware to complete, and the program can be stored in a computer readable storage medium, and the program can include the processes of the above method embodiments when executed. The storage medium includes ROM or random access memory (RAM), magnetic disk or optical disk and various program code storage media.

[0480] In conclusion, the above-mentioned is only the embodiment of the technical scheme of the present application, and is not used to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made according to the disclosure of the present application shall be included in the protection scope of the present application.

Claims

1. A method for optimizing the Quality of Service (QoS) of a wireless local area network (WLAN), characterized in that, The method is applied to the central control device in a wireless fidelity WiFi system. The WiFi system includes multiple electronic devices within the same cell, which form at least one link. The transmitting or receiving end of the link is a controllable device. The WiFi system includes M file transfer services, where M is a positive integer. The controllable device is a device that cooperates with the central control device to perform QoS optimization, and the method includes: Send a first instruction to the controllable device corresponding to each of the at least one link, the first instruction being used to instruct the controllable device to limit the rate of the M file transfer services based on the rate limit values ​​of the M file transfer services; The first QoS of each non-file transfer service is measured when the rate limit values ​​of the M file transfers are received from the controllable device of the at least one link; The first target value is calculated based on the first QoS of each non-file transfer service on each link in the WiFi system and the rate limit values ​​of the M file transfer services; The rate limit value for the M file transfer services that makes the first target value optimal is determined as the target rate limit value for the M file transfer services. The first target value is determined based on the first QoS of the non-file transfer services and the rate limit value of the M file transfer services.

2. The method according to claim 1, characterized in that, Determining the rate limit value of the M file transfer services that makes the first target value optimal includes: Determine the gradient value of the first target value based on the first target value; If the first target value does not converge, update the rate limit values ​​of the M file transfer services according to the gradient value of the first target value; The rate limit value for the M file transfer services that minimizes the first target value is determined to be the target rate limit value for the M file transfer services.

3. The method according to claim 2, characterized in that, After updating the rate limit values ​​of the M file transfer services based on the gradient value of the first target value, the method further includes: Send a second instruction to the controllable device of the at least one link, the second instruction being used to instruct the updating of the rate limit values ​​of the M file transfer services; The rate limit values ​​for the M file transfer services are updated based on the gradient value of the first target value.

4. The method according to claim 3, characterized in that, The first QoS is the average transmission delay.

5. The method according to any one of claims 2-4, characterized in that, The first target value is the difference between the weighted sum of the first QoS of non-file transfer services in the at least one link and the weighted sum of the current rate limit values ​​of the M file transfer services.

6. The method according to any one of claims 2-4, characterized in that, Determining the gradient value of the first target value based on the first target value includes: A third instruction is sent to the controllable device corresponding to the link transmitting the j-th file transfer service among the M file transfer services. The third instruction is used to instruct the rate limit value of the j-th file transfer service to be disturbed; j is a positive integer not greater than M. Upon receiving a notification message from the controllable device corresponding to the link transmitting the j-th file transfer service, indicating that the disturbance has been completed, a fourth instruction is sent to the controllable device of the at least one link, the fourth instruction being used to instruct the measurement of QoS for non-file transfer services. Receive second QoS from controllable devices on the at least one link, respectively, for non-file transfer services on their respective links; The second target value is calculated based on the second QoS of each non-file transfer service on the at least one link and the current rate limit value of the M file transfer services; Calculate the change in the first target value when the j-th file transfer service is disturbed based on the first target value and the second target value; The gradient value of the first target value includes the change in the first target value when the M file transfer services are disturbed respectively.

7. The method according to any one of claims 1-4, characterized in that, The rate limit values ​​for the M file transfer services are all no less than the minimum rate limit value.

8. The method according to any one of claims 1-4, characterized in that, The M file transfer services are file transfer services in the WiFi system with a transfer rate greater than a preset value, or the M file transfer services are all file transfer services in the WiFi system.

9. A method for optimizing the Quality of Service (QoS) of a wireless local area network, characterized in that, The method is applied to a first controllable device in a wireless fidelity WiFi system. The WiFi system includes multiple electronic devices within the same cell. These multiple electronic devices include the first controllable device and a central control device. The multiple electronic devices form at least one link, and the transmitting or receiving end of the link is a controllable device. The first controllable device is a controllable device for the first link, and the controllable device is a device that cooperates with the central control device to perform QoS optimization. The method includes: Receive a first instruction from the central control device; the first instruction is used to instruct the file transfer service to be rate-limited. Send the first QoS of each non-file transfer service on the first link to the central control device, wherein the first QoS is used to calculate the first target value; The corresponding file transfer service is rate-limited by the rate-limiting value of the file transfer service on the first link. The first QoS of each non-file transfer service on the first link is measured when the rate limit is applied to the file transfer service; the first QoS is used to calculate the first target value. The file transfer service is rate-limited by setting a target rate limit value for the file transfer service on the corresponding link when the first target value is optimal.

10. The method according to claim 9, characterized in that, The method further includes: Receive a second instruction from the central control device; In response to the second instruction, the rate limit value of the file transfer service on the corresponding link of the first controllable device is updated.

11. The method according to any one of claims 9-10, characterized in that, The WiFi system includes M file transfer services, where M is a positive integer. The j-th file transfer service among the M file transfer services is transmitted on the link corresponding to the first controllable device, where j is a positive integer not greater than M. The method further includes: Receive a third instruction from the central control device, the third instruction being used to instruct the rate limit value of the j-th file transfer service to be disturbed; In response to the third instruction, the rate limit value of the j-th file transfer service is perturbed; Send a notification message to the central control device to indicate that the disturbance is complete; Receive a fourth instruction from the central control device, the fourth instruction being used to instruct the measurement of QoS for non-file transfer services; In response to the fourth instruction, the second QoS of each non-file transfer service on the link corresponding to the first controllable device is measured when the rate limit value of the j-th file transfer service is disturbed; The second QoS of each non-file transfer service is sent to the central control device. The second QoS is used to calculate the change in the first target value when the j-th file transfer service is disturbed. The change in the first target value is used to update the rate limit value of the file transfer service on the corresponding link of the first controllable device.

12. The method according to claim 9, characterized in that, The WiFi system includes M file transfer services, where M is a positive integer, and the method further includes: Receive the first QoS of each non-file transfer service on each of the at least one links from a controllable device other than the first link; The first target value is calculated based on the first QoS of each non-file transfer service on each link in the WiFi system and the rate limit values ​​of the M file transfer services; The rate limit value for the M file transfer services that makes the first target value optimal is determined as the target rate limit value for the M file transfer services. The first target value is determined based on the first QoS of the non-file transfer services and the rate limit value of the M file transfer services.

13. The method according to claim 12, characterized in that, Determining the rate limit value of the M file transfer services that makes the first target value optimal includes: Determine the gradient value of the first target value based on the first target value; If the first target value does not converge, update the rate limit values ​​of the M file transfer services according to the gradient value of the first target value; The rate limit value for the M file transfer services that minimizes the first target value is determined to be the target rate limit value for the M file transfer services.

14. The method according to claim 13, characterized in that, Determining the gradient value of the first target value based on the first target value includes: Negotiate the perturbation order of the M file transfer services with the controllable devices of the links other than the first link in the WiFi system; When the j-th file transfer service is a file transfer service on the first link, the rate limit value of the j-th file transfer service is perturbed; Measure the second QoS of each non-file transfer service on the first link; Receive second QoS for each non-file transfer service on each of the at least one links from a controllable device other than the first link; The second target value is calculated based on the second QoS of each non-file transfer service on the at least one link and the current rate limit value of the M file transfer services; Calculate the change in the first target value when the j-th file transfer service is disturbed based on the first target value and the second target value; The gradient value of the first target value includes the change in the first target value when the M file transfer services are disturbed respectively.

15. An electronic device, characterized in that, include: A memory, and one or more processors; the memory is coupled to the one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, the one or more processors invoking the computer instructions to cause the electronic device to perform the method as described in any one of claims 1-8.

16. An electronic device, characterized in that, include: A memory, and one or more processors; the memory is coupled to the one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, the one or more processors invoking the computer instructions to cause the electronic device to perform the method as described in any one of claims 9-14.

17. A computer-readable storage medium comprising instructions, characterized in that, When the instructions are executed on an electronic device, the electronic device causes the electronic device to perform the method as described in any one of claims 1-14.

Citation Information

Patent Citations

  • Communication resource cooperation method and electronic equipment

    CN115150897A

  • Communication methods, apparatuses, network element, communication device and computer storage medium

    WO2023115283A1