Channel allocation method and device, electronic equipment and storage medium
By obtaining network feature information and neighbor access point information, grouping and channel allocation of access points, and using the objective function evaluation results, the problem of channel interference in wireless LAN is solved, and network performance and user experience are improved.
Patent Information
- Application Number
- CN202311055325.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-21
- Publication Date
- 2025-02-21
AI Technical Summary
In a wireless LAN, the channels of multiple access points may have overlapping frequencies, resulting in co-frequency interference and/or adjacent frequency interference, degradation of network performance, and affecting user experience.
By obtaining network feature information and neighbor access point information, grouping access points in response to the access point grouping mode selected by the user, building an objective function to evaluate the channel allocation results, and ensuring that the allocation results meet the set target requirements.
It effectively avoids interference in different scenarios, improves the applicability and efficiency of channel allocation, improves network performance, and meets user experience.
Smart Images

Figure CN119497091A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of wireless communication technology, and in particular to a channel allocation method, device, electronic device and storage medium. Background Art
[0002] With the rapid development of wireless communication technology, wireless networks have been widely used to interconnect various terminal devices. For example, in campuses, enterprises, hospitals, workshops and other scenarios, wireless local area networks (WLANs) are usually established to provide Internet access for wireless terminals within the range (such as mobile phones, tablets, computers, industrial control equipment, etc.).
[0003] With the rapid development of WLAN, the deployment of access points (APs) is becoming more and more intensive to meet the WLAN coverage requirements of the above scenarios. An AP works based on one channel. A channel corresponds to a radio frequency range (which can be called the bandwidth of the channel). The bandwidth of the channel of each AP can be the same or different. For example, the channel bandwidth of some APs is 80 megahertz (MHz), the channel bandwidth of some APs is 40 MHz, and the channel bandwidth of some APs is 20 MHz.
[0004] However, when a WLAN includes a large number of APs, the channels of multiple APs may have frequency overlap, resulting in serious co-channel interference or even adjacent-channel interference between APs, degrading network performance and affecting user experience.
[0005] Alternatively, when the total number of APs on multiple floors is large, between adjacent upper and lower floors, on the one hand, there is a high probability that APs on different floors but in very close horizontal positions will be assigned to the same channel; on the other hand, there are multiple room partitions on each floor, and APs often need to increase their transmission power to overcome wall penetration losses. If the ceiling attenuation is small at the same time, the wireless terminal will simultaneously receive the wall-penetrating signal emitted by the AP on the current floor and the ceiling-penetrating signal emitted by the APs on the upper and lower floors, which will also cause co-channel interference and / or adjacent channel interference, degrade network performance, and affect user experience.
[0006] It can be seen that in different scenarios, there will be different co-channel interference and / or adjacent channel interference. Therefore, when allocating channels, how to avoid various interferences is a problem that needs to be solved urgently. Summary of the invention
[0007] The present application provides a channel allocation method for avoiding various interferences when performing channel allocation.
[0008] In a first aspect, a channel allocation method is provided, comprising:
[0009] Acquire network feature information and neighbor AP information; wherein the network feature information is information of N APs, the neighbor AP information is information of neighbor APs corresponding to each of the N APs, and N is an integer greater than 0;
[0010] In response to a user operation of selecting an AP grouping mode, a grouping operation is performed on the N APs and each neighboring AP to obtain M AP groups to be optimized; wherein M is an integer greater than 0;
[0011] According to the network characteristic information and the neighbor AP information, channels are allocated to the M AP groups, and the allocated channel allocation results are evaluated using an objective function to obtain an evaluation result; wherein the objective function is constructed based on at least interference, load, and channel utilization generated by the M AP groups;
[0012] When the evaluation result meets the set target requirement, the target channel allocation result is output.
[0013] The beneficial effects of this application are as follows:
[0014] In the channel allocation method provided in the present application, first, network feature information and neighbor AP information of N APs are obtained, and then, in response to a user operation of selecting an AP grouping mode, a grouping operation is performed on the above-mentioned N APs to obtain M AP groups to be optimized. Further, according to the above-mentioned network feature information and neighbor AP information, channels are allocated to the M AP groups, and the channel allocation results are evaluated using an objective function to obtain an evaluation result, and the objective function is constructed based on at least the interference, load, and channel utilization generated by the M AP groups; finally, until the evaluation result meets the set target requirements, the target channel allocation result is output.
[0015] In this way, different grouping modes can be adopted for APs in different scenarios based on the AP grouping mode selected by the user, so that AP optimization in the global or local network can be flexibly selected, thus solving the problem of large-scale channel allocation efficiency difficulties; and because the constructed objective function evaluates the channel allocation results from multiple aspects (interference generated between APs, load, and channel utilization), various interferences in different scenarios can be avoided when allocating channels, so that the channel allocation requirements in different scenarios can be adapted and the applicability is improved; further, while considering the interference situation, from the perspective of channel resources (i.e., channel utilization), when channel resources are limited, channel resources can be maximized, thereby improving network performance and satisfying user experience.
[0016] Optionally, the AP grouping mode includes a physical grouping mode, a network indicator grouping mode, and a machine learning prediction grouping mode;
[0017] The network characteristic information includes at least one of the channel utilization, traffic load, terminal load, delay, packet loss rate, background noise, and service priority information of each of the N APs;
[0018] The neighbor AP information includes at least one of a received signal strength indication RSSI, a working channel, and a beacon frame of each neighbor AP.
[0019] There are multiple AP grouping modes configured for users to flexibly choose to meet user needs.
[0020] Optionally, in response to a user operation of selecting an AP grouping mode, performing a grouping operation on the N APs and each neighboring AP includes:
[0021] In the case where the AP grouping mode is the physical grouping mode, a grouping operation is performed on the N APs and the neighbor APs according to physical location information of each of the N APs and the neighbor APs and in accordance with a physical space division rule.
[0022] Optionally, in response to a user operation of selecting an AP grouping mode, performing a grouping operation on the N APs and each neighboring AP includes:
[0023] In the case where the AP grouping mode is the network indicator grouping mode, i APs that do not meet the network quality requirement among the N APs are determined according to the network characteristic information, and neighbor APs corresponding to each of the i APs are screened out from the neighbor APs according to the neighbor AP information, where i is less than or equal to N;
[0024] A first AP and a neighboring AP corresponding to the first AP are grouped together; wherein the first AP is any one of the i APs.
[0025] Optionally, in response to a user operation of selecting an AP grouping mode, performing a grouping operation on the N APs and each neighboring AP includes:
[0026] In the case where the AP grouping mode is the machine learning predicted grouping mode, the network feature information is input into the machine learning model for training, j APs that do not meet the network quality requirement are determined from the N APs, and neighbor APs corresponding to each of the j APs are screened from the neighbor APs according to the neighbor AP information, where j is less than or equal to N;
[0027] The second AP and the neighboring AP corresponding to the second AP are grouped together; wherein the second AP is any one of the j APs.
[0028] Optionally, allocating channels to the M AP groups according to the network feature information and the neighbor AP information, and evaluating the allocated channel allocation results using an objective function to obtain an evaluation result, including:
[0029] According to the network characteristic information and the neighbor AP information, perform first channel allocation for each AP in the M AP groups, and use the objective function to evaluate the first channel allocation result after allocation to obtain a first evaluation result;
[0030] When the first evaluation result meets the first set target requirement, performing second channel allocation for the APs in the M AP groups that are in a neighboring relationship with each other, and evaluating the allocated second channel allocation result using the objective function to obtain a second evaluation result;
[0031] When the evaluation result meets the set requirements, outputting the target channel allocation result includes:
[0032] When the second evaluation result meets the second set target requirement, the target channel allocation result is output.
[0033] Through the above method, considering that when an AP is adjacent to another AP, there will be an edge. After the APs are grouped, some edges may be cut off. If only the APs in the group are optimized, the interference of the cut edges will be ignored. Therefore, in the process of channel allocation, channels can be allocated to the APs in the group, and after evaluation using the objective function, the APs with adjacent relationships between AP groups can be extracted for channel allocation again, and the objective function can be used to evaluate again, so as to ensure the effect of the entire network.
[0034] Optionally, the objective function satisfies the following expression:
[0035] Obj=a*C inter +b*C intra +c*R+d*Ch;
[0036] C=∑ p ∑ q (n-min(abs(channel q -channel p ),n));
[0037] L=∑ p l p ∑ q (lq *(n-min(abs(channel q -channel p ),n));
[0038] R=∑ p ∑ q (RSSI pq *(n-min(abs(channel q -channel p ),n));
[0039]
[0040] Among them, the C inter Characterizes the sum of interference between uncontrollable APs and controllable APs, the C intra represents the sum of interferences between controllable APs, the uncontrollable APs and the controllable APs are determined based on beacon frames of each AP in the M AP group, the R represents the total RSSI, the Ch represents the total channel utilization, and the a, b, c, and d represent set influencing factors respectively;
[0041] When the channel q When it is an uncontrollable AP, the C is the C inter , when the channel q When it is a controllable AP, the C is the C intra , the channel p Characterizes the working channel of APp, the channel q represents a working channel of any neighbor APq in the APp, the APp is an AP in the M AP group, and the n represents a set maximum interference level;
[0042] The L represents the total load, the l p Characterize the traffic load and / or terminal load of the APp, the l q Characterizes the traffic load and / or terminal load of any neighbor APq, the RSSI pq Characterizes the RSSI of any neighbor APq in the APp; the ch p Indicates the channel utilization of the APp. q represents the channel utilization rate of any neighbor APq in the APp, Characterizes the local channel utilization of the APp.
[0043] In a second aspect, a channel allocation device is provided, comprising:
[0044] A collection module, used to obtain network feature information and neighbor AP information; wherein the network feature information is information of N APs, and the neighbor AP information is information of neighbor APs corresponding to each of the N APs, where N is an integer greater than 0;
[0045] A grouping module, configured to perform a grouping operation on the N APs and each neighboring AP in response to a user operation of selecting an AP grouping mode, to obtain M AP groups to be optimized; wherein M is an integer greater than 0;
[0046] A channel allocation module, configured to allocate channels to the M AP groups according to the network characteristic information and the neighbor AP information, and evaluate the allocated channel allocation results using an objective function to obtain an evaluation result; wherein the objective function is constructed based on at least interference, load, and channel utilization generated by the M AP groups;
[0047] The output module is used to output the target channel allocation result when the evaluation result meets the set target requirement.
[0048] According to a third aspect, an electronic device is provided, including:
[0049] A memory for storing a computer program; a processor for implementing any one of the method steps in the first aspect when executing the computer program stored in the memory.
[0050] According to a fourth aspect, a computer-readable storage medium is provided, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the method steps described in any one of the first aspects are implemented.
[0051] For each aspect from the second to the fourth aspect and the technical effects that may be achieved by each aspect, please refer to the above description of the technical effects that can be achieved by the first aspect or various possible schemes in the first aspect, and no further details will be given here. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] Figure 1 A schematic diagram of an application scenario applicable to the embodiment of the present application;
[0053] Figure 2 A flow chart of a channel allocation method provided in an embodiment of the present application;
[0054] Figure 3 A schematic diagram of the occupancy of an AP working channel provided in an embodiment of the present application;
[0055] Figure 4 A flow chart of a complete channel allocation method provided in an embodiment of the present application;
[0056] Figure 5 A schematic diagram of the structure of a channel allocation device provided in an embodiment of the present application;
[0057] Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0058] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. The specific operating methods in the method embodiments can also be applied to device embodiments or system embodiments. It should be noted that in the description of the present application, "multiple" is understood as "at least two". "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. A is connected to B, which can represent: A is directly connected to B and A is connected to B through C. In addition, in the description of the present application, words such as "first" and "second" are only used to distinguish the purpose of description, and cannot be understood as indicating or implying relative importance, nor can they be understood as indicating or implying order.
[0059] To facilitate understanding by those skilled in the art, the technical terms involved in the embodiments of the present application are first explained.
[0060] (1) Received Signal Strength Indicator (RSSI): Generally used to indicate wireless signal strength. It refers to the signal strength during wireless reception and is related to the transmit power of the wireless module, the design of the RF front end, and the gain of the antenna.
[0061] (2) Packet loss rate refers to the percentage of lost packets to transmitted packets during network transmission.
[0062] (3) Latency refers to the time it takes for a message or packet to be transmitted from one end of the network to the other. For example, in voice services, latency refers to the time from when the speaker starts speaking to when the other party hears what is said. If the latency is too large, the call will be unclear, incoherent or fragmented.
[0063] (4) The beacon frame contains the network information required before the AP can send a frame.
[0064] The following is a brief introduction to the application scenarios to which the technical solutions of the embodiments of the present application can be applied. It should be noted that the application scenarios introduced below are only used to illustrate the embodiments of the present application and are not limited. In specific implementation, the technical solutions provided by the embodiments of the present application can be flexibly applied according to actual needs.
[0065] Figure 1 Schematic diagram of an application scenario applicable to the implementation of this application. As shown in the figure, the scenario includes AP 100, AP (100a, 100b), AP 101, AP (101a, 101b, 101c), AP102, AP (102a, 102b), AP103, AP103a, and wireless terminal 104. Among them, AP (100a, 100b) is the neighbor AP corresponding to AP100, AP (101a, 101b, 101c) is the neighbor AP corresponding to AP101, AP (102a, 102b) is the neighbor AP corresponding to AP102, and AP103a is the neighbor AP corresponding to AP103. The above-mentioned APs can be connected to each other through communication channels in the Internet or a dedicated network. It should be noted that Figure 1 This is just an example. In actual scenarios, there is no limit on the number of wireless terminals and APs.
[0066] Above Figure 1 The APs shown can be deployed in a WLAN or in other network environments. Each AP works based on a channel. The bandwidth of the channel of each AP can be the same or different. Furthermore, the APs can be APs provided by the same manufacturer or APs provided by different manufacturers. The APs can provide wireless services in the area. For example, when the wireless terminal 104 enters the scene, the AP (such as AP103) closest to the wireless terminal 104 or the AP that meets the signal strength requirement (such as AP102) can provide Internet access for the wireless terminal.
[0067] The wireless terminal 104 can be an electronic device such as a mobile phone, a smart wearable device, a tablet computer, a notebook, etc.; in addition, a related client can be installed on the wireless terminal, and the client can be software, such as an application (English: Application, abbreviated as: APP), a browser, short video software, etc., or a web page, a small program, etc.
[0068] Based on the complexity of the above scenario, in an embodiment of the present application, when allocating channels to each AP, the channel allocation between APs is evaluated from multiple aspects, various interferences are eliminated, and the channel allocation is optimized to ensure network performance and reliability when the wireless terminal is connected to the network and to meet the user experience.
[0069] To further illustrate the technical solution provided by the embodiment of the present application, this is described in detail below in conjunction with the accompanying drawings and specific implementation methods. Although the embodiment of the present application provides the method operation steps as shown in the following embodiments or drawings, more or fewer operation steps may be included in the method based on routine or no creative labor. In the steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided by the embodiment of the present application. The method may be executed or executed in parallel in the actual processing process or when the device is executed in accordance with the method sequence shown in the embodiment or drawings.
[0070] Figure 2 This is a flow chart of a channel allocation method provided in an embodiment of the present application. The process can be executed by a channel allocation device, which can be implemented by software, hardware, or a combination of software and hardware. Figure 2 As shown, the process includes the following steps:
[0071] 201: Obtain network feature information and neighbor AP information.
[0072] The network characteristic information is information of N APs, and the neighbor AP information is information of neighbor APs corresponding to each of the N APs. It should be noted that the value of N can be flexibly set according to the actual scenario, and is not limited in the embodiments.
[0073] For example, the above Figure 1 For example, the network feature information includes the channel utilization, traffic load, terminal load, service priority information (for example, video service priority is higher than voice service), delay, packet loss rate, noise floor, etc. of AP100, AP101, AP102, and AP103 respectively; the neighbor AP information includes the received signal strength indication, working channel, etc. of AP (100a, 100b), AP (101a, 101b, 101c), AP (102a, 102b), and AP103a respectively. When performing channel optimization or grouping later, one or more of the above network feature information and one or more of the neighbor AP information can be used, and the embodiment of the present application does not limit this.
[0074] 202: In response to a user operation of selecting an AP grouping mode, a grouping operation is performed on the N APs and each neighboring AP to obtain M AP groups to be optimized.
[0075] Optionally, the AP grouping mode may include multiple AP grouping modes such as physical grouping mode, network indicator grouping mode, machine learning prediction grouping mode, etc., for users to flexibly choose to meet user needs.
[0076] For the physical grouping mode, the N APs and the neighboring APs are grouped to obtain the M AP groups to be optimized. Specifically, the N APs are grouped according to the physical location information of the N APs and the neighboring APs and the physical space division rules (for example, physical space division rules such as buildings, floors, and areas). Figure 1 For example, according to the media access control address (English: Media Access Control address, abbreviated: MAC) of AP100, AP (100a, 100b), AP 101, AP (101a, 101b, 101c), AP102, AP (102a, 102b), AP103, and AP103a, when the physical space division rule is floors, AP 100 and AP (100a, 100b) are grouped together, AP 101, AP101a, and AP101b are grouped together, AP101c, AP102, and AP102a are grouped together, and AP102b, AP103, and AP103a are grouped together.
[0077] According to the network indicator grouping mode, a grouping operation is performed on N APs and each neighbor AP to obtain M AP groups to be optimized. Specifically, i (i is less than or equal to N) APs that do not meet the network quality requirements among the N APs are determined according to the above-mentioned network characteristic information, and the neighbor APs corresponding to each of the i APs are screened out from each neighbor AP according to the neighbor AP information; the first AP (any one of the i APs) and the neighbor APs corresponding to the first AP are grouped together.
[0078] Optionally, failure to meet network quality requirements may mean that the delay exceeds a set delay threshold, or may mean that the packet loss rate exceeds a set packet loss rate threshold, or may mean that both the delay and the packet loss rate exceed their respective set thresholds, or may mean that one or more other combinations of information in the network characteristic information exceed the set threshold. In actual scenarios, adjustments can be made based on actual needs, and the embodiments of the present application are not limited here.
[0079] With the above Figure 1For example, the packet loss rates of AP100, AP101, AP102, and AP103 may be compared with the set packet loss rate threshold. If the packet loss rates of AP100 and AP103 are compared and all exceed the packet loss rate threshold, it indicates that AP100 and AP103 are APs that do not meet the network quality requirement. Then, according to the neighbor AP information, the neighbor AP corresponding to AP100, i.e., AP (100a, 100b), AP (101a, 101b, 101c), AP (102a, 102b), and AP103a are screened out, i.e., AP (100a, 100b), and the neighbor AP corresponding to AP103, i.e., AP103a. Finally, AP100 and AP (100a, 100b) are taken as one group to be optimized, and AP103 and AP103a are taken as another group to be optimized.
[0080] In some embodiments, if the comparison shows that the AP100, AP101, AP102, and AP103 do not exceed the packet loss rate threshold, indicating that the AP100, AP101, AP102, and AP103 all meet the network quality requirements, subsequent operations may be performed, for example, Figure 1 Channels are allocated to each AP in the system and evaluated using the objective function.
[0081] According to the machine learning prediction grouping mode, a grouping operation is performed on N APs and each neighbor AP to obtain M AP groups to be optimized. Specifically, the network feature information is input into the machine learning model for training, j (less than or equal to N) APs that do not meet the network quality requirements are determined from the N APs, and the neighbor APs corresponding to each of the j APs are screened according to the neighbor AP information; the second AP (any one of the j APs) and the neighbor AP corresponding to the second AP are grouped together.
[0082] With the above Figure 1 For example, the channel utilization, traffic load, terminal load, delay, packet loss rate, noise floor, and service priority information of AP100, AP101, AP102, and AP103 can be input into the machine learning model for training. If the training output shows that AP101 and AP103 do not meet the network quality requirements, the neighbor AP corresponding to AP101, namely AP (101a, 101b, 101c), AP (102a, 102b), and AP103a are screened out according to the neighbor AP information, namely AP (101a, 101b, 101c), and the neighbor AP corresponding to AP103, namely AP103a; finally, AP101 and AP (101a, 101b, 101c) are taken as one group to be optimized, and AP103 and AP103a are taken as another group to be optimized.
[0083] In other embodiments, one or more information combinations may be selected from the network feature information and input into a machine learning model for training to identify APs that do not meet network quality requirements.
[0084] It should be noted that the AP grouping mode provided above is only an example. In actual scenarios, other AP grouping modes can also be configured according to actual needs for users to flexibly choose.
[0085] In other embodiments, in response to a user operation of selecting the AP non-grouping mode, subsequent operations may be directly performed, for example, Figure 1 Channels are assigned to all APs in the system and evaluated using the objective function.
[0086] Based on the configuration of the above AP grouping mode, in a network environment where a large number of APs are deployed, if channel optimization is performed on all APs in the network, it will undoubtedly increase the amount of calculation. The APs can be grouped in a grouping manner to determine which APs need channel optimization and which do not. In this way, in the subsequent channel allocation process, it is only necessary to perform channel optimization on the APs in the local network, which reduces a certain amount of calculation.
[0087] 203: performing channel allocation for the M AP groups according to the network characteristic information and the neighbor AP information, and evaluating the channel allocation results after allocation using an objective function to obtain an evaluation result.
[0088] Optionally, the objective function may be flexibly constructed based on multiple aspects such as interference, load, and channel utilization generated by the M AP groups.
[0089] In actual scenarios, due to a regional network (such as the above Figure 1 In the scenario shown in the figure, there may be APs from different manufacturers. The access points of a specified manufacturer can be called controllable APs, while APs that are not within the specified manufacturer range can be called uncontrollable APs. Therefore, when constructing the objective function, the RSSI and working channel in the neighbor AP information can be used to consider the interference between uncontrollable APs and controllable APs, as well as the interference between controllable APs. Optionally, whether an AP is controllable can be determined based on the beacon frame of the AP.
[0090] Furthermore, since the network characteristic information may include the traffic load and terminal load of each AP, when the load generated by the neighboring AP corresponding to a certain AP is high, it will cause certain interference to the AP. Therefore, when constructing the objective function, the interference caused by the load between APs can also be considered.
[0091] Furthermore, since it may not be possible to fully evaluate the overall impact on the network from the perspective of RSSI near and far interference, and the load of uncontrollable APs cannot be directly obtained, when constructing the objective function, we also consider the load of each AP (such as Figure 1 Starting from the channel resources of the APs shown in the figure, the occupancy of the working channels of each AP is considered, and the actual impact of the uncontrollable APs on the controllable APs is determined, so that the resources can be maximized in the channel allocation process. Figure 1 Take AP101 and AP (101a, 101b, 101c) in the example as an example. Figure 3 The following is a schematic diagram showing the occupancy of the AP working channel provided in the embodiment of the present application. Figure 3 As shown, assuming that AP101c is an uncontrollable AP, AP101, AP101a, and AP101b are controllable APs, in each controllable AP, value 1 represents the value of the working channel occupied by itself, and value 2 represents the value of the working channel occupied estimated based on the neighboring AP information. Based on the above values 1 and 2, it is determined that the value of the working channel occupied by the uncontrollable AP (i.e., AP101c) itself is 60-5-30=25. When the value of the working channel occupied by AP101c itself is estimated for channel allocation, the local working channel utilization can be determined from the perspective of the working channel occupancy of each AP, thereby minimizing the local channel utilization of the entire network and making the maximum local channel utilization as small as possible, thereby maximizing the utilization of limited channel resources.
[0092] Optionally, the objective function can satisfy the following expression:
[0093] Obj=a*C inter +b*C intra +c*R+d*Ch……(1)
[0094] C=∑ p ∑ q (n-min(abs(channel q -channel p ),n))……(2)
[0095] L=∑ p l p ∑ q l q (l q *(n-min(abs(channel q -channel p ),n))…(3)
[0096] R=∑ p ∑ q (RSSI pq*(n-min(abs(channel q -channel p ),n))……(4)
[0097]
[0098] In the above formula (1), C inter Characterizes the sum of interference between uncontrollable APs and controllable APs, C intra Represents the total interference between controllable APs. Uncontrollable APs and controllable APs are determined based on the beacon frames of each AP in the M AP group. R represents the total RSSI, Ch represents the total channel utilization, and a, b, c, and d represent the set influencing factors respectively.
[0099] Furthermore, in actual scenarios, the values of the above-mentioned influencing factors can be flexibly set according to the requirements of different scenarios. For example, when it is determined in the neighbor AP information that the number of uncontrollable APs is small, the value of b can be set to a small value, and the values of other influencing factors remain unchanged at the default values (for example, 1). On the contrary, when the number of controllable APs is large, the value of b can be set to a large value; for another example, when the performance of high-load APs is to be prioritized, the value of c can be set to a large value; for another example, if it is determined based on the channel resource occupancy that the actual interference of uncontrollable APs to controllable APs is large, the value of d can be set to a large value. Through the collected network feature information and neighbor AP information, the objective function is flexibly configured to be suitable for channel allocation in various scenarios.
[0100] In the above formula (2), when channel q When it is an uncontrollable AP, C is C inter , when channel q When it is a controllable AP, C is C intra , channel p Characterizes the working channel of APp, channel q Characterizes the working channel of any neighbor APq in APp, where APp is an AP in the M AP group (for example, Figure 1 AP103 shown), n represents the set maximum interference level.
[0101] In the above formulas (3) to (5), L represents the total load, l p Characterize the traffic load and / or terminal load of the APp, q Characterizes the traffic load and / or terminal load of any neighbor APq, RSSI pq Characterizes the RSSI of any neighbor APq in APp; ch p Indicates the channel utilization of APp, ch q Indicates the channel utilization of any neighbor APq in APp, Indicates the local channel utilization of the APp.
[0102] In some embodiments, when an AP is adjacent to another AP, there will be an edge. After the APs are grouped, some edges may be cut off. If only the APs in the group are optimized, the interference of the cut edges will be ignored. Therefore, during the channel allocation process, the APs in the group can be allocated channels, and after the objective function is used for evaluation, the APs with adjacent relationships between the AP groups can be extracted for channel allocation again, and the objective function is used for evaluation again, so as to ensure the effect of the entire network. For example, taking the above Figure 1 For example, in the physical grouping mode, AP 101, AP101a, and AP101b form a first group, and AP101c, AP102, and AP102a form a second group. Since there is an adjacent relationship between AP101 and AP101c, the edge between AP101 and AP101c will be cut off after grouping. Therefore, in the channel allocation process, after channel allocation is performed on the first group and the second group respectively, and after evaluation using the objective function, channel allocation is performed again between AP101 in the first group and AP101c in the second group, and the objective function is used to evaluate again.
[0103] The specific process is as follows: according to the network feature information and the neighbor AP information, the first channel allocation is performed for the APs corresponding to each of the M AP groups, and the objective function is used to evaluate the first channel allocation result after allocation to obtain a first evaluation result; when the first evaluation result meets the first set target requirement, the second channel allocation is performed for the APs that have an adjacent relationship between the M AP groups, and the objective function is used to evaluate the second channel allocation result after allocation to obtain a second evaluation result.
[0104] In some embodiments, when the first evaluation result does not meet the first set target requirement, it is necessary to reallocate the first channel for the APs corresponding to each of the M AP groups based on network feature information and neighbor AP information until the first evaluation result meets the first set target requirement.
[0105] Optionally, the above process includes but is not limited to using a meta-heuristic algorithm or an optimization algorithm to achieve the above process, so that the evaluation result solved based on the objective function meets the subsequent set target requirements.
[0106] 204: When the above evaluation result meets the set target requirement, the target channel allocation result is output.
[0107] In this step, specifically: when the above-mentioned second evaluation result meets the second set target requirement, output the target channel allocation result of the M AP groups; when the above-mentioned second evaluation result does not meet the second set target requirement, re-allocate the second channels of the APs that are adjacent to each other in the M AP groups until the second evaluation result meets the second set target requirement, so as to eliminate various interferences and meet the user's network experience.
[0108] Optionally, the above-mentioned "first set target requirement" and "second set target requirement" may be the same or different. The set target requirement may mean that the evaluation result calculated based on the objective function can no longer be optimized (for example, cannot be smaller or larger), or that the number of iterations of the evaluation result reaches a set value, or that the calculation time of the evaluation result based on the iterative cycle of the objective function has exceeded the set duration, etc.
[0109] Using the above Figure 2 In the method shown, different grouping modes can be adopted for APs in different scenarios based on the AP grouping mode selected by the user, so that AP optimization in the global or local network can be flexibly selected, thereby solving the problem of large-scale channel allocation efficiency difficulties; and because the constructed objective function evaluates the channel allocation results from multiple aspects (interference generated between APs, load, and channel utilization), various interferences in different scenarios can be avoided when performing channel allocation, so that the channel allocation requirements in different scenarios can be adapted and the applicability is improved; further, while considering the interference situation, from the perspective of channel resources (i.e., channel utilization), when channel resources are limited, channel resources can be maximized, thereby improving network performance and satisfying user experience.
[0110] Based on the above Figure 2 The method shown, Figure 4 A complete channel allocation method flow chart provided in the embodiment of the present application. Figure 4 As shown, the process includes the following steps:
[0111] 401: Obtain network feature information and neighbor AP information.
[0112] The network characteristic information is information of N access points AP, and the neighbor AP information is information of neighbor APs corresponding to each of the N APs, where N is an integer greater than 0.
[0113] 402: Whether the user selects AP grouping mode, if yes, proceed to 403, if no, proceed to 409.
[0114] 403: Perform a grouping operation on the N APs and neighboring APs to obtain M AP groups to be optimized.
[0115] 404: Perform first channel allocation on each AP in the M AP groups, and use an objective function to evaluate the first channel allocation result after allocation to obtain a first evaluation result.
[0116] 405: Determine whether the first evaluation result meets the first set target requirement. If so, proceed to 406; if not, proceed to 404.
[0117] 406: Perform second channel allocation for the APs in the M AP groups that are adjacent to each other, and evaluate the second channel allocation result after allocation using the objective function to obtain a second evaluation result.
[0118] 407: Determine whether the second evaluation result meets the second set target requirement. If so, proceed to 408; if not, proceed to 406.
[0119] 408: Output the target channel allocation result of the M AP groups and end the process.
[0120] It should be noted that the specific implementation process of the above 403 to 408 is the same as Figure 2 202 to 204 are similar and will not be described again here.
[0121] 409: Perform channel allocation for the N APs and each neighboring AP, and use the objective function to evaluate the channel allocation result after allocation to obtain a third evaluation result.
[0122] In this step, all APs in the entire network environment can be optimized through the objective function, thereby eliminating interference caused by various factors and ensuring the network performance of the entire network.
[0123] 410: Determine whether the third evaluation result meets the third set target requirement. If yes, output the channel allocation result and end the process. If no, proceed to 409.
[0124] The third target setting requirement may be the same as or different from the first target setting requirement and the second target setting requirement.
[0125] Based on the same technical concept, a channel allocation device is also provided in an embodiment of the present application, and the device can implement the above-mentioned channel allocation method process in the embodiment of the present application.
[0126] Figure 5 This is a schematic diagram of the structure of a channel allocation device provided in an embodiment of the present application. Figure 5 As shown, the structure includes: a collection module 501, a grouping module 502, a channel allocation module 503, and an output module 504.
[0127] Collection module 501: used to obtain network feature information and neighbor AP information; wherein the network feature information is information of N APs, and the neighbor AP information is information of neighbor APs corresponding to each of the N APs, and N is an integer greater than 0.
[0128] The grouping module 502 is configured to, in response to a user operation of selecting an AP grouping mode, perform a grouping operation on the N APs and each neighboring AP to obtain M AP groups to be optimized; wherein M is an integer greater than 0.
[0129] Channel allocation module 503: used to allocate channels to the M AP groups according to the network characteristic information and the neighbor AP information, and use an objective function to evaluate the allocated channel allocation results to obtain an evaluation result; wherein the objective function is constructed based on at least the interference, load, and channel utilization generated by the M AP groups.
[0130] Output module 504: used for outputting the target channel allocation result when the evaluation result meets the set target requirement.
[0131] Optionally, the AP grouping mode includes a physical grouping mode, a network indicator grouping mode, and a machine learning prediction grouping mode. The network feature information includes at least one of the channel utilization, traffic load, terminal load, latency, packet loss rate, background noise, and service priority information of each of the N APs; the neighbor AP information includes at least one of the received signal strength indication RSSI, working channel, and beacon frame of each of the neighbor APs.
[0132] Optionally, the grouping module 502 is specifically configured to:
[0133] In the case where the AP grouping mode is the physical grouping mode, a grouping operation is performed on the N APs and the neighbor APs according to physical location information of each of the N APs and the neighbor APs and in accordance with a physical space division rule.
[0134] Optionally, the grouping module 502 is specifically configured to:
[0135] In the case where the AP grouping mode is the network indicator grouping mode, i APs among the N APs that do not meet the network quality requirements are determined according to the network feature information, and neighbor APs corresponding to each of the i APs are screened out from the neighbor APs according to the neighbor AP information, where i is less than or equal to N; a first AP and the neighbor APs corresponding to the first AP are grouped together; wherein the first AP is any one of the i APs.
[0136] Optionally, the grouping module 502 is specifically configured to:
[0137] In the case where the AP grouping mode is the machine learning predicted grouping mode, the network feature information is input into the machine learning model for training, j APs that do not meet the network quality requirement are determined from the N APs, and neighbor APs corresponding to each of the j APs are screened from the neighbor APs according to the neighbor AP information, where j is less than or equal to N;
[0138] The second AP and the neighboring AP corresponding to the second AP are grouped together; wherein the second AP is any one of the j APs.
[0139] Optionally, the channel allocation module 503 is specifically configured to:
[0140] According to the network characteristic information and the neighbor AP information, perform first channel allocation for each AP in the M AP groups, and use the objective function to evaluate the first channel allocation result after allocation to obtain a first evaluation result;
[0141] When the first evaluation result meets the first set target requirement, second channel allocation is performed on the APs that are adjacent to each other in the M AP groups, and the second channel allocation result after allocation is evaluated using the objective function to obtain a second evaluation result; the output module 504 is specifically used to:
[0142] When the second evaluation result meets the second set target requirement, the target channel allocation result is output.
[0143] It should be noted here that the above-mentioned device provided in the embodiment of the present application can implement all the method steps in the above-mentioned method embodiment and can achieve the same technical effect. The parts and beneficial effects of this embodiment that are the same as the method embodiment will not be described in detail here.
[0144] Based on the same technical concept, an electronic device is also provided in an embodiment of the present application, and the electronic device can realize the functions of the aforementioned channel allocation device.
[0145] Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
[0146] At least one processor 601, and a memory 602 connected to the at least one processor 601. The specific connection medium between the processor 601 and the memory 602 is not limited in the embodiment of the present application. Figure 6 In the example, the processor 601 and the memory 602 are connected via a bus 600. Figure 6The connection between other components is shown by bold lines, and is not intended to be limiting. The bus 600 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 Only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus. Alternatively, the processor 601 can also be called a controller, and there is no limitation on the name.
[0147] In the embodiment of the present application, the memory 602 stores instructions that can be executed by at least one processor 601. The at least one processor 601 can execute a channel allocation method discussed above by executing the instructions stored in the memory 602. The processor 601 can implement Figure 5 The functions of each module in the device shown.
[0148] Among them, the processor 601 is the control center of the device, and can use various interfaces and lines to connect the various parts of the entire control device. By running or executing instructions stored in the memory 602 and calling the data stored in the memory 602, the various functions of the device and processing data, the device can be monitored as a whole.
[0149] In one possible design, the processor 601 may include one or more processing units, and the processor 601 may integrate an application processor and a modem processor, wherein the application processor mainly processes an operating system, a user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the modem processor may not be integrated into the processor 601. In some embodiments, the processor 601 and the memory 602 may be implemented on the same chip, and in some embodiments, they may also be implemented separately on separate chips.
[0150] Processor 601 may be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and may implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of a channel allocation method disclosed in the embodiments of the present application may be directly embodied as being executed by a hardware processor, or may be executed by a combination of hardware and software modules in a processor.
[0151] The memory 602 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 602 may include at least one type of storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory, a random access memory (Random Access Memory, RAM), a static random access memory (Static Random Access Memory, SRAM), a programmable read-only memory (Programmable Read Only Memory, PROM), a read-only memory (Read Only Memory, ROM), an electrically erasable programmable read-only memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), a magnetic memory, a disk, an optical disk, etc. The memory 602 is any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory 602 in the embodiment of the present application can also be a circuit or any other device that can realize a storage function, for storing program instructions and / or data.
[0152] By programming the processor 601, the code corresponding to the channel allocation method described in the above embodiment can be fixed into the chip, so that the chip can execute the code when running. Figure 2 A channel allocation method of the embodiment shown. How to design and program the processor 601 is a technology well known to those skilled in the art and will not be described in detail here.
[0153] It should be noted here that the above-mentioned electronic device provided in the embodiment of the present application can implement all the method steps implemented in the above-mentioned method embodiment, and can achieve the same technical effect. The parts and beneficial effects of this embodiment that are the same as the method embodiment will not be described in detail here.
[0154] An embodiment of the present application further provides a computer-readable storage medium, which stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute a channel allocation method in the above embodiment.
[0155] An embodiment of the present application further provides a computer program product. When the computer program product is called by a computer, the computer executes a channel allocation method in the above embodiment.
[0156] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0157] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0158] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0159] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
Claims
1. A channel allocation method, characterized in that: include: Obtain network feature information and neighbor AP information; wherein the network feature information is information of N access points APs, and the neighbor AP information is information of neighbor APs corresponding to each of the N APs, and N is an integer greater than 0; In response to a user operation of selecting an AP grouping mode, a grouping operation is performed on the N APs and each neighboring AP to obtain M AP groups to be optimized; wherein M is an integer greater than 0; According to the network characteristic information and the neighbor AP information, channels are allocated to the M AP groups, and the allocated channel allocation results are evaluated using an objective function to obtain an evaluation result; wherein the objective function is constructed based on at least interference, load, and channel utilization generated by the M AP groups; When the evaluation result meets the set target requirement, the target channel allocation result is output.
2. The method according to claim 1, characterized in that The AP grouping mode includes a physical grouping mode, a network indicator grouping mode, and a machine learning prediction grouping mode; The network characteristic information includes at least one of the channel utilization, traffic load, terminal load, delay, packet loss rate, background noise, and service priority information of each of the N APs; The neighbor AP information includes at least one of a received signal strength indication RSSI, a working channel, and a beacon frame of each neighbor AP.
3. The method according to claim 1 or 2, characterized in that The performing a grouping operation on the N APs and each neighboring AP in response to a user operation of selecting an AP grouping mode includes: In the case where the AP grouping mode is the physical grouping mode, a grouping operation is performed on the N APs and the neighbor APs according to physical location information of each of the N APs and the neighbor APs and in accordance with a physical space division rule.
4. The method according to claim 1 or 2, characterized in that: The performing a grouping operation on the N APs and each neighboring AP in response to a user operation of selecting an AP grouping mode includes: In the case where the AP grouping mode is the network indicator grouping mode, i APs that do not meet the network quality requirement among the N APs are determined according to the network characteristic information, and neighbor APs corresponding to each of the i APs are screened out from the neighbor APs according to the neighbor AP information, where i is less than or equal to N; A first AP and a neighboring AP corresponding to the first AP are grouped together; wherein the first AP is any one of the i APs.
5. The method according to claim 1 or 2, characterized in that: The performing a grouping operation on the N APs and each neighboring AP in response to a user operation of selecting an AP grouping mode includes: In the case where the AP grouping mode is the machine learning predicted grouping mode, the network feature information is input into the machine learning model for training, j APs that do not meet the network quality requirement are determined from the N APs, and neighbor APs corresponding to each of the j APs are screened from the neighbor APs according to the neighbor AP information, where j is less than or equal to N; The second AP and the neighboring AP corresponding to the second AP are grouped together; wherein the second AP is any one of the j APs.
6. The method according to claim 1, characterized in that The allocating channels to the M AP groups according to the network feature information and the neighbor AP information, and evaluating the allocated channel allocation results using an objective function to obtain an evaluation result, including: According to the network characteristic information and the neighbor AP information, perform first channel allocation for each AP in the M AP groups, and use the objective function to evaluate the first channel allocation result after allocation to obtain a first evaluation result; When the first evaluation result meets the first set target requirement, performing second channel allocation for the APs in the M AP groups that are in a neighboring relationship with each other, and evaluating the allocated second channel allocation result using the objective function to obtain a second evaluation result; When the evaluation result meets the set requirements, outputting the target channel allocation result includes: When the second evaluation result meets the second set target requirement, the target channel allocation result is output.
7. The method according to claim 1 or 6, characterized in that The objective function satisfies the following expression: Obj=a*C inter +b*C intra +c*R+d*Ch; C=∑ p ∑ q (n-min(abs(channel q -channel p ),n)); L=∑ p L p ∑ q (L q *(n-min(abs(channel q -channel p ),n)); R=∑ p ∑ q (RSSI pq *(n-min(abs(channel q -channel p ),n)); Among them, the C inter Characterizes the sum of interference between uncontrollable APs and controllable APs, the C intra represents the sum of interferences between controllable APs, the uncontrollable APs and the controllable APs are determined based on beacon frames of each AP in the M AP group, the R represents the total RSSI, the Ch represents the total channel utilization, and the a, b, c, and d represent set influencing factors respectively; When the channel q When it is an uncontrollable AP, the C is the C inter , when the channel q When it is a controllable AP, the C is the C intra , the channel p Characterizes the working channel of APp, the channel q represents a working channel of any neighbor APq in the APp, the APp is an AP in the M AP group, and the n represents a set maximum interference level; The L represents the total load, the l p Characterize the traffic load and / or terminal load of the APp, the l q Characterizes the traffic load and / or terminal load of any neighbor APq, the RSSI pq Characterizes the RSSI of any neighbor APq in the APp; the ch p Indicates the channel utilization of the APp. q represents the channel utilization rate of any neighbor APq in the APp, Characterizes the local channel utilization of the APp.
8. A channel allocation device, characterized in that: include: A collection module, used to obtain network feature information and neighbor AP information; wherein the network feature information is information of N access points APs, and the neighbor AP information is information of neighbor APs corresponding to each of the N APs, and N is an integer greater than 0; A grouping module, configured to perform a grouping operation on the N APs and each neighboring AP in response to a user operation of selecting an AP grouping mode, to obtain M AP groups to be optimized; wherein M is an integer greater than 0; A channel allocation module, configured to allocate channels to the M AP groups according to the network characteristic information and the neighbor AP information, and evaluate the allocated channel allocation results using an objective function to obtain an evaluation result; wherein the objective function is constructed based on at least interference, load, and channel utilization generated by the M AP groups; The output module is used to output the target channel allocation result when the evaluation result meets the set target requirement.
9. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor, configured to implement the method steps of any one of claims 1 to 7 when executing the computer program stored in the memory.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method steps described in any one of claims 1 to 7 are implemented.