Channel allocation method, related apparatus and system
By maintaining a set of candidate channels with different bandwidths for APs in a WLAN system, the problem of low channel allocation efficiency in WLAN systems is solved, and co-channel interference between APs is avoided and channel allocation efficiency is improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2022-03-31
- Publication Date
- 2026-07-07
AI Technical Summary
In WLAN systems, the channel allocation efficiency of multiple access points (APs) is low, resulting in severe co-channel interference between APs. Existing technologies require adjusting the channel of each AP one by one to reduce interference, which is a complex and inefficient process.
The WLAN controller maintains a candidate channel set for each AP, including channels with different bandwidths, ensuring that each AP's candidate channel set is different from the sets of other APs. It directly selects channels from the candidate set and sends them to the AP, avoiding co-channel interference and improving channel allocation efficiency.
By selecting channels with different bandwidths for each AP, co-channel interference between APs is avoided, the channel allocation process is simplified, and the efficiency and speed of channel allocation are improved.
Smart Images

Figure CN116456472B_ABST
Abstract
Description
[0001] This application claims priority to Chinese Patent Application No. 202210001956.8, filed on January 4, 2022, entitled "A Channel Allocation Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of communication technology, and in particular to a channel allocation method, related apparatus and system. Background Technology
[0003] With the rapid development of Wireless Local Area Networks (WLANs), the deployment of access points (APs) is becoming increasingly dense to meet the WLAN coverage needs of campuses, enterprises, and hospitals. Each AP operates on a single channel. A channel corresponds to a radio frequency range (also known as the channel bandwidth). The bandwidth of each AP's channel can be the same or different. For example, some APs have a channel bandwidth of 80 MHz (hereinafter referred to as M), some have a channel bandwidth of 40 MHz, and some have a channel bandwidth of 20 MHz. When a WLAN system includes a large number of APs, the channels of multiple APs may overlap, leading to severe co-channel interference between APs. When configuring the channels of multiple APs in a WLAN system, the WLAN controller needs to select a suitable channel for each AP based on its bandwidth and adjust the channels of other APs to reduce co-channel interference. This channel allocation method is inefficient. Summary of the Invention
[0004] This application discloses a channel allocation method, related apparatus and system, which can improve channel allocation efficiency.
[0005] In a first aspect, this application provides a channel allocation method. This method can be applied to a WLAN controller. The WLAN controller sends channel identifiers to a first AP, a second AP, a third AP, and a fourth AP. Specifically, the channel identifier sent by the WLAN controller to the first AP is the identifier of at least one channel in a first candidate channel set. The channel identifier sent by the WLAN controller to the second AP is the identifier of at least one channel in a second candidate channel set. The channel identifier sent by the WLAN controller to the third AP is the identifier of at least one channel in a third candidate channel set. The channel identifier sent by the WLAN controller to the fourth AP is the identifier of at least one channel in a fourth candidate channel set. The first candidate channel set includes a first channel and a second channel. The second candidate channel set includes a third channel and a fourth channel. The third candidate channel set includes a fifth channel and a sixth channel. The fourth candidate channel set includes a first channel and a seventh channel. The bandwidth of the first channel, the bandwidth of the third channel, and the bandwidth of the fifth channel are all first bandwidths. The bandwidth of the second channel, the bandwidth of the fourth channel, the bandwidth of the sixth channel, and the bandwidth of the seventh channel are all second bandwidths. The first bandwidth is greater than the second bandwidth. The second channel and the seventh channel are different sub-channels of the first channel. The fourth channel is a sub-channel of the third channel. The sixth channel is a sub-channel of the fifth channel.
[0006] For example, a WLAN system includes four access points (APs) – AP1 to AP4, with a first bandwidth of 80 Mbps and a second bandwidth of 40 Mbps. The available channel set for the 80 Mbps bandwidth includes three channels: channel 42, channel 58, and channel 155. This means that if the three APs operate on these three channels respectively, there will be no co-channel interference between them. The available channel set for the 40 Mbps bandwidth includes six channels: channel 38, channel 46, channel 54, channel 62, channel 151, and channel 159. This also means that if the six APs operate on these six channels respectively, there will be no co-channel interference between them. Specifically, channels 38 and 46 are two different sub-channels of channel 42, channels 54 and 62 are two different sub-channels of channel 58, and channels 151 and 159 are two different sub-channels of channel 165. Accordingly, based on this scheme, the first, third, and fifth channels can be channel 42, channel 58, and channel 155, respectively; the second, fourth, and sixth channels can be channel 38, channel 54, and channel 151, respectively; and the seventh channel is channel 46. The first candidate channel set can include channel 42 and channel 38; the second candidate channel set can include channel 58 and channel 54; the third candidate channel set can include channel 155 and channel 151; and the fourth candidate channel set can include channel 42 and channel 46. Of course, the fourth candidate channel set can also include channel 58 and channel 62, or channel 155 and channel 159.
[0007] In this scheme, the WLAN controller determines a candidate channel set for each AP, and each candidate channel set includes channels with different bandwidths. For a specific bandwidth, the channels corresponding to each AP for that bandwidth are as different as possible. Even if the number of available channels is limited, resulting in multiple APs corresponding to the same channel for the same bandwidth, when the bandwidth decreases, the WLAN controller selects different sub-channels within that same channel for each AP. This ensures that each AP's candidate channel set is as different as possible from the candidate channel sets of other APs. Therefore, regardless of whether the bandwidths of the APs are the same or different, the WLAN controller can directly select channels from each AP's candidate channel set and send them to the AP, ensuring that the channels received by each AP are as different as possible. Thus, this scheme can minimize co-channel interference between APs. Furthermore, based on this scheme, the WLAN controller can directly select a channel with the corresponding bandwidth for each AP from each AP's candidate channel set without adjusting the channels of other APs, improving the efficiency of channel allocation.
[0008] In one possible implementation, the first candidate channel set further includes an eighth channel, the second candidate channel set further includes a ninth channel, the third candidate channel set further includes a tenth channel, and the fourth candidate channel set further includes an eleventh channel. The bandwidths of the eighth, ninth, tenth, and eleventh channels are all third bandwidths. The second bandwidth is greater than the third bandwidth. The eighth, ninth, tenth, and eleventh channels are sub-channels of the second, fourth, sixth, and seventh channels, respectively.
[0009] For example, the first bandwidth is 80M, the second bandwidth is 40M, and the third bandwidth is 20M. The available channel set of 20M includes 13 available channels: channel 36, channel 40, channel 44, channel 48, channel 52, channel 56, channel 60, channel 64, channel 149, channel 153, channel 157, channel 161, and channel 165. Specifically, channels 36 and 40 are two different sub-channels of channel 38; channels 44 and 48 are two different sub-channels of channel 46; and channels 36, 40, 44, and 48 are four different sub-channels of channel 42. Channels 52 and 56 are two different sub-channels of channel 54; channels 60 and 64 are two different sub-channels of channel 62; and channels 52, 56, 60, and 64 are four different sub-channels of channel 58. Channels 149 and 153 are two different sub-channels of channel 151; channels 157 and 161 are two different sub-channels of channel 159; and channels 149, 153, 157, and 161 are four different sub-channels of channel 155. Furthermore, the 20MHz channel may also include channel 165, which can be considered a sub-channel of channel 155. The eighth channel can be channel 36, the ninth channel can be channel 52, the tenth channel can be channel 149, and the eleventh channel can be channel 44. That is, the first candidate channel set includes channels 42, 38, and 36; the second candidate channel set can include channels 58, 54, and 52; the third candidate channel set can include channels 155, 151, and 149; and the fourth candidate channel set can include channels 42, 46, and 44. Therefore, although the first and fourth candidate channel sets share the same 80MHz channel (channel 42), they differ in their corresponding 40MHz and 20MHz channels. In other words, each AP's candidate channel set is significantly different from the candidate channel sets of other APs.
[0010] In this scheme, each candidate channel set includes three channels with bandwidths (e.g., 80M, 40M and 20M). Each AP's candidate channel set is as different as possible from the candidate channel sets of other APs. This allows APs that operate based on the channels in each candidate channel set to minimize channel co-channel interference between APs.
[0011] In one possible implementation, the WLAN controller also sends a channel identifier to the fifth AP. The channel identifier sent by the WLAN controller to the fifth AP is the identifier of at least one channel in a fifth candidate channel set. This fifth candidate channel set includes a first channel, a second channel, and a twelfth channel. The bandwidth of the twelfth channel is a third bandwidth. The twelfth channel and the eighth channel are different sub-channels of the second channel.
[0012] For example, the fifth candidate channel set includes channels 42, 38, and 40. That is, the first candidate channel set includes channels 42, 38, and 36; the second candidate channel set may include channels 58, 54, and 52; the third candidate channel set may include channels 155, 151, and 149; the fourth candidate channel set may include channels 42, 46, and 44; and the fifth candidate channel set includes channels 42, 38, and 40. Thus, although the first, fourth, and fifth candidate channel sets share the same 80MHz channel (channel 42), and the first and fifth candidate channel sets share the same 40MHz channel (channel 38), these three channel sets do not share the same 20MHz channel. In other words, despite the increased number of APs, this scheme strives to ensure that each AP's candidate channel set is as different as possible from the candidate channel sets of other APs. This minimizes channel co-channel interference between APs operating based on channels in the candidate channel sets.
[0013] In one possible implementation, the first AP, second AP, third AP, and fourth AP are neighboring APs. The distance between the first AP and the second AP, and the distance between the first AP and the third AP, are both smaller than the distance between the first AP and the fourth AP.
[0014] In this scheme, when it's impossible to select different channels for all APs, the WLAN controller assigns different channels to APs that are closer together and the same channel to APs that are farther apart. When two APs share the same channel, the greater the distance between them, the weaker the co-channel interference. Therefore, this scheme can further minimize co-channel interference between APs.
[0015] In one possible implementation, the WLAN controller determines a channel with a first bandwidth from a candidate channel set of N APs. N is an integer greater than or equal to 4. The WLAN controller determines M APs. The candidate channel sets of these M APs all include a common channel. The bandwidth of this common channel is the first bandwidth. This common channel may include multiple sub-channels. The bandwidth of each of these multiple sub-channels is a second bandwidth. The WLAN controller selects one of these sub-channels as the channel corresponding to the second bandwidth in the candidate channel set of one of the M APs. The channel corresponding to the second bandwidth in the candidate channel set of any one of the M APs is different from the channel corresponding to the second bandwidth in the candidate channel set of at least one neighboring AP. The M APs include this at least one neighboring AP.
[0016] In this scheme, the WLAN controller first determines the channels with a first bandwidth from the candidate channel set of each AP, and then determines the channels with a second bandwidth for multiple APs that have the same first bandwidth channel. Specifically, an AP with the same first bandwidth channel has a different second bandwidth channel from at least one of its neighboring APs. This scheme aims to ensure that adjacent APs use different channels, thereby minimizing co-channel interference between APs.
[0017] In one possible implementation, the WLAN controller instructs the first AP, the second AP, the third AP, and the fourth AP to select one of the first candidate channel set, the second candidate channel set, the third candidate channel set, and the fourth candidate channel set as the working channel, respectively.
[0018] In one possible implementation, the bandwidth of the operating channel of the first AP is a first target bandwidth. When it is necessary to adjust the bandwidth of the first AP to a second target bandwidth, the WLAN controller changes the operating channel of the first AP to the target channel, while keeping the operating channels of other APs unchanged. This second target bandwidth is different from the first target bandwidth. The target channel is a channel in the first candidate channel set with a bandwidth equal to the second target bandwidth.
[0019] In this scheme, the WLAN controller determines a candidate channel set for each AP, which includes channels with multiple bandwidths corresponding to each AP. Furthermore, the channels of any AP in the candidate channel set are designed to minimize overlap with channels in the candidate channel sets of other APs. Therefore, when the bandwidth of an AP needs to be adjusted, the WLAN controller can directly change the operating channel of that AP to a channel in its corresponding candidate channel set with the adjusted bandwidth, without needing to adjust the operating channels of other APs. This allows the WLAN controller to quickly adjust the bandwidth of any AP while minimizing co-channel interference between APs.
[0020] In one possible implementation, the WLAN controller sends the channel identifier of the target channel to the first AP, instructing the first AP to switch its operating channel to the target channel. The channel identifier is, for example, a channel number (e.g., channel 42, channel 38, etc.) or the center operating frequency and bandwidth of the channel.
[0021] In one possible implementation, the bandwidth of the operating channel of the first AP is a first target bandwidth. When it is necessary to adjust the bandwidth of the first AP to a second target bandwidth, the first AP selects a channel with the bandwidth of the second target bandwidth from a first candidate channel set as the target channel. The first AP then switches its operating channel to the target channel.
[0022] In this scheme, the WLAN controller determines a candidate channel set for each AP, which includes channels corresponding to multiple bandwidths for each AP. Furthermore, the channels of any AP in the candidate channel set are designed to minimize overlap with channels in the candidate channel sets of other APs. Therefore, when the bandwidth of an AP needs to be adjusted, that AP can directly select a channel with the adjusted bandwidth from its candidate channel set as its working channel, without worrying about severe co-channel interference to other APs during the switching process.
[0023] In one possible implementation, when the difference between the channel utilization (CU) of the first AP and the CU of the second AP is greater than a first threshold, or when the difference between the number of access users of the first AP and the number of access users of the second AP is greater than a second threshold, the first target bandwidth of the first AP is adjusted to the second target bandwidth.
[0024] In other words, load imbalance between adjacent access points (APs) triggers adjustments to AP bandwidth. Load imbalance includes differences in channel utilization between adjacent APs exceeding a threshold or differences in the number of access users between adjacent APs exceeding a threshold.
[0025] In one possible implementation, the bandwidth of the first AP is adjusted to the second target bandwidth based on the administrator's control.
[0026] In one possible implementation, the need to adjust the bandwidth of the AP is determined based on the number of users accessing the AP.
[0027] Secondly, this application provides a channel allocation method. This method is applied to an access point (AP). The AP receives a set of candidate channels. The set of candidate channels includes a first channel and a second channel. The bandwidth of the first channel is a first bandwidth. The bandwidth of the second channel is a second bandwidth. The first bandwidth is not equal to the second bandwidth. The first channel and the second channel are different. The AP selects one channel from the set of candidate channels as its operating channel.
[0028] In this scheme, the AP receives a set of candidate channels, including different channels with varying bandwidths. The AP can directly select a channel from this set as its working channel based on its bandwidth requirements. This allows the AP to quickly determine the working channel, improving the efficiency of channel allocation.
[0029] In one possible implementation, the first bandwidth is greater than the second bandwidth, and the second channel is a sub-channel of the first channel.
[0030] In one possible implementation, when the AP uses the first channel as the working channel, the AP also uses the second channel as the primary channel.
[0031] An access point (AP) can bind multiple adjacent low-bandwidth channels into a single high-bandwidth channel; for example, binding two 20MHz channels into a 40MHz channel. These multiple low-bandwidth channels are called sub-channels of the high-bandwidth channel. One of these sub-channels is used as the master channel, and the others are used as slave channels. Slave channels are responsible for data packet transmission, while the master channel is responsible for both data packet transmission and management message transmission. Therefore, in this scheme, when the AP uses the first channel as its working channel, it also uses the second channel as its master channel. This ensures that when the AP switches its working channel from the first channel to the second channel, the channel responsible for transmitting management messages remains unchanged, enhancing network stability.
[0032] Thirdly, this application provides a WLAN system. The WLAN system includes a WLAN controller and multiple access points (APs). The WLAN controller is used to perform the methods provided in any of the possible embodiments of the first aspect.
[0033] In one possible implementation, any one of the plurality of APs is used to perform the method provided in any possible implementation of the second aspect.
[0034] Fourthly, this application provides a channel allocation apparatus. The apparatus includes an acquisition module and a transmission module.
[0035] This acquisition module is used to acquire a first candidate channel set, a second candidate channel set, a third candidate channel set, and a fourth candidate channel set. The first candidate channel set includes a first channel and a second channel; the second candidate channel set includes a third channel and a fourth channel; the third candidate channel set includes a fifth channel and a sixth channel; and the fourth candidate channel set includes the first channel and a seventh channel. The bandwidths of the first, third, and fifth channels are all first bandwidths. The bandwidths of the second, fourth, sixth, and seventh channels are all second bandwidths. The first bandwidth is greater than the second bandwidth. The second and seventh channels are different sub-channels of the first channel. The fourth channel is a sub-channel of the third channel. The sixth channel is a sub-channel of the fifth channel.
[0036] The transmitting module is used to transmit channel identifiers to a first AP, a second AP, a third AP, and a fourth AP. The channel identifier transmitted to the first AP is the identifier of at least one channel in the first candidate channel set. The channel identifier transmitted to the second AP is the identifier of at least one channel in the second candidate channel set. The channel identifier transmitted to the third AP is the identifier of at least one channel in the third candidate channel set. The channel identifier transmitted to the fourth AP is the identifier of at least one channel in the fourth candidate channel set.
[0037] In one possible implementation, the first candidate channel set further includes an eighth channel, the second candidate channel set further includes a ninth channel, the third candidate channel set further includes a tenth channel, and the fourth candidate channel set further includes an eleventh channel. The bandwidths of the eighth, ninth, tenth, and eleventh channels are all third bandwidths. The second bandwidth is greater than the third bandwidth. The eighth, ninth, tenth, and eleventh channels are sub-channels of the second, fourth, sixth, and seventh channels, respectively.
[0038] In one possible implementation, the acquisition module is further configured to acquire a fifth candidate channel set. The fifth candidate channel set includes the first channel, the second channel, and the twelfth channel. The bandwidth of the twelfth channel is the third bandwidth. The twelfth channel and the eighth channel are different sub-channels within the second channel. The transmission module is further configured to transmit a channel identifier to the fifth AP. The channel identifier transmitted to the fifth AP is the identifier of at least one channel in the fifth candidate channel set.
[0039] In one possible implementation, the first AP, the second AP, the third AP, and the fourth AP are neighboring APs, and the distance between the first AP and the second AP and the distance between the first AP and the third AP are both smaller than the distance between the first AP and the fourth AP.
[0040] In one possible implementation, the apparatus further includes a determining module. This determining module is configured to determine a channel with a bandwidth of the first bandwidth from a candidate channel set of N APs. N is an integer greater than or equal to 4. The determining module is also configured to determine M APs. The candidate channel sets of the M APs each include a common channel with a bandwidth of the first bandwidth. The common channel includes multiple sub-channels, each of which has a bandwidth of the second bandwidth. The determining module is further configured to use one of these sub-channels as the channel corresponding to the second bandwidth in the candidate channel set of one of the M APs. Wherein, the channel corresponding to the second bandwidth in the candidate channel set of any one of the M APs is different from the channel corresponding to the second bandwidth in the candidate channel set of at least one neighboring AP. The M APs include the at least one neighboring AP.
[0041] In one possible implementation, the transmitting module is configured to: instruct the first AP, the second AP, the third AP, and the fourth AP to select one channel from the first candidate channel set, the second candidate channel set, the third candidate channel set, and the fourth candidate channel set as the working channel, respectively.
[0042] In one possible implementation, the bandwidth of the operating channel of the first AP is a first target bandwidth, and the apparatus further includes a modification module. The modification module is used to: when it is necessary to adjust the bandwidth of the first AP to a second target bandwidth, change the operating channel of the first AP to the target channel, while keeping the operating channels of other APs unchanged. The second target bandwidth is different from the first target bandwidth. The target channel is a channel in the first candidate channel set whose bandwidth is the second target bandwidth.
[0043] In one possible implementation, the transmitting module is further configured to: transmit the channel identifier of the target channel to the first AP, so as to instruct the first AP to switch its working channel to the target channel.
[0044] Fifthly, this application provides a channel allocation apparatus. The apparatus includes a receiving module and a selection module. The receiving module is used to receive a set of candidate channels. The set of candidate channels includes a first channel and a second channel. The bandwidth of the first channel is a first bandwidth. The bandwidth of the second channel is a second bandwidth. The first bandwidth is not equal to the second bandwidth. The first channel and the second channel are different. The selection module is used to select one channel from the set of candidate channels as the working channel.
[0045] In one possible implementation, the first bandwidth is greater than the second bandwidth, and the second channel is a sub-channel of the first channel.
[0046] In one possible implementation, the selection module is further configured to: when selecting the first channel as the working channel, select the second channel as the master channel.
[0047] In a sixth aspect, this application provides a WLAN controller. The WLAN controller includes a processor and a memory. The memory stores program code. The processor invokes the program code to cause the WLAN controller to perform the methods provided in any of the possible embodiments of the first aspect.
[0048] In a seventh aspect, this application provides an access point (AP). The AP includes a processor and a memory. The memory stores program code. The processor invokes the program code to cause the AP to perform the method provided in any of the possible embodiments of the second aspect.
[0049] Eighthly, this application provides a computer-readable storage medium. The computer-readable storage medium stores instructions. When executed by a processor, the instructions implement a method as provided in any possible embodiment of the first aspect or as provided in any possible embodiment of the second aspect.
[0050] Ninthly, this application provides a computer program product. When the computer program product is run on a computer, it causes the computer to perform the method provided in any possible implementation of the first aspect or the method provided in any possible implementation of the second aspect.
[0051] It is understood that the system described in the third aspect, the apparatus described in the fourth aspect, the apparatus described in the fifth aspect, the WLAN controller described in the sixth aspect, the AP described in the seventh aspect, the computer-readable storage medium described in the eighth aspect, or the computer program product described in the ninth aspect are all used to perform the method provided in any of the first aspects or the method provided in any of the second aspects. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods, and will not be repeated here. Attached Figure Description
[0052] Figure 1 This is a schematic diagram of the architecture of a WLAN system provided in an embodiment of this application;
[0053] Figure 2 This is a schematic flowchart of a channel allocation method provided in an embodiment of this application;
[0054] Figure 3a This is a schematic diagram of a candidate channel set provided in an embodiment of this application;
[0055] Figure 3b This is a schematic diagram of another candidate channel set provided in an embodiment of this application;
[0056] Figure 3c This is a schematic diagram of another candidate channel set provided in an embodiment of this application;
[0057] Figure 4 This is a schematic diagram of another candidate channel set provided in an embodiment of this application;
[0058] Figure 5 This is a schematic diagram of channel allocation provided in an embodiment of this application;
[0059] Figure 6a This is a schematic diagram of a channel determination method provided in an embodiment of this application;
[0060] Figure 6b This is a schematic diagram of a channel determination method provided in an embodiment of this application;
[0061] Figure 6c This is a schematic diagram of a channel determination method provided in an embodiment of this application;
[0062] Figure 7a This is a schematic diagram of a blind node provided in an embodiment of this application;
[0063] Figure 7b This is a schematic diagram of a blind node channel determination method provided in an embodiment of this application;
[0064] Figure 8 This is a schematic flowchart of a channel allocation method provided in an embodiment of this application;
[0065] Figure 9 This is a schematic diagram of an available channel provided in an embodiment of this application;
[0066] Figure 10 This is a schematic diagram of channel allocation provided in an embodiment of this application;
[0067] Figure 11 This is a schematic diagram of location information provided in an embodiment of this application;
[0068] Figure 12 This is a schematic diagram of the structure of a channel allocation device provided in an embodiment of this application;
[0069] Figure 13 This is a schematic diagram of another channel allocation device provided in the embodiments of this application;
[0070] Figure 14 This is a schematic diagram of another channel allocation device provided in the embodiments of this application. Detailed Implementation
[0071] The embodiments of this application are described below with reference to the accompanying drawings. The terminology used in the implementation section of this application is for explaining specific embodiments only and is not intended to limit the scope of this application.
[0072] Figure 1 This is a schematic diagram of the architecture of a WLAN system provided in an embodiment of this application. Figure 1 As shown, the WLAN system includes a WLAN controller 101 and multiple access points (APs). These APs include, for example,... Figure 1 The diagram shows AP102, AP103, AP104, and AP105. This diagram only uses four APs as an example; however, it can use other numbers of APs, and this solution does not specify a particular number. The WLAN controller 101 is, for example, an access controller (AC).
[0073] The WLAN controller 101 is used to manage multiple access points (APs) in a WLAN system, for example, to allocate channels to the multiple APs.
[0074] Multiple access points (APs) can have the same bandwidth. For example, APs 102 through 105 may all have a bandwidth of 80 Mbps, 40 Mbps, or 20 Mbps. When multiple APs have the same bandwidth, the WLAN controller needs to allocate channels to each AP individually, minimizing channel overlap to reduce co-channel interference. For instance, if the available 80 Mbps channel set only includes three channels (channels 42, 58, and 155), and four or more APs all have a bandwidth of 80 Mbps, the WLAN controller needs to allocate these three channels to them. Therefore, the WLAN controller needs to continuously adjust the channels of each AP to minimize co-channel interference. Each time an AP's channel is allocated or adjusted, the WLAN controller needs to adjust the channel of that AP and the channels of other APs that might affect it. The channel allocation process is complex and inefficient.
[0075] Multiple access points (APs) can have different bandwidths. For example, AP102 has a bandwidth of 80 Mbps, AP103 has a bandwidth of 40 Mbps, and AP104 and AP105 have a bandwidth of 20 Mbps. The available channel set for 40 Mbps includes 6 channels, and the available channel set for 20 Mbps includes 13 channels. In this case, the WLAN controller needs to adjust the channels of each AP based on these 22 channels to minimize co-channel interference between APs. When selecting a channel for a particular AP, the WLAN controller also needs to consider the impact of other APs on that AP, continuously trying to adjust the channels of these multiple APs. Each time an AP's channel is allocated or adjusted, the WLAN controller needs to adjust the channel of that AP as well as the channels of other APs that may affect it. The channel allocation process is complex and inefficient.
[0076] In view of this, this application provides a channel allocation method and related apparatus. The method can be executed by a WLAN controller. The WLAN controller maintains a candidate channel set for each of multiple APs. Each candidate channel set includes channels corresponding to different bandwidths (e.g., a first bandwidth and a second bandwidth) for each AP. Within the same candidate channel set, the channel corresponding to the lower bandwidth is a sub-channel of the channel corresponding to the higher bandwidth. In different candidate channel sets, for the same bandwidth, the channels corresponding to that bandwidth in each candidate set are as different as possible. Even if the number of available channels is limited, resulting in some APs having the same channel corresponding to the same bandwidth, for a lower bandwidth than that bandwidth, the WLAN controller selects different sub-channels within that same channel for these APs respectively. This ensures that the candidate channel set of each AP is as different as possible from the candidate channel sets of other APs. When APs operate based on the channels in the candidate channel set, co-channel interference between APs can be minimized. When it is necessary to allocate a channel to an AP, the WLAN controller can directly select a channel from the candidate channel set of the corresponding AP and send the selected channel to the corresponding AP without adjusting the channels of other APs. This channel allocation process is simple and improves the efficiency of channel allocation.
[0077] For example, the first bandwidth can be 80 Mbps, and the second bandwidth can be 40 Mbps. The WLAN controller 101 maintains a candidate channel set for each AP 102, AP 103, AP 104, and AP 105. For example, the WLAN controller 101 maintains a first candidate channel set for AP 102, a second candidate channel set for AP 103, a third candidate channel set for AP 104, and a fourth candidate channel set for AP 105. Each of the first to fourth candidate channel sets includes two channels, one with a bandwidth of 80 Mbps and the other with a bandwidth of 40 Mbps. Since there are only three available channels with a bandwidth of 80 Mbps (channel 42, channel 58, and channel 155), the WLAN controller can set the channels with a bandwidth of 80 Mbps in the first to third candidate channel sets to channels 42, 58, and 155, respectively. The WLAN controller can set the channel with a bandwidth of 80 Mbps in the fourth candidate channel set to any one of the above three channels, for example, channel 42. That is, the WLAN controller maintains as different as possible the channels with a bandwidth of 80 Mbps in the candidate channel sets for each AP. The three channels with a bandwidth of 80 MHz each include two different sub-channels with a bandwidth of 40 MHz. Specifically, channel 42 includes sub-channels 38 and 46; channel 58 includes sub-channels 54 and 62; and channel 155 includes sub-channels 151 and 159. The WLAN controller can configure the channels with a bandwidth of 40 MHz in the first to fourth candidate channel sets as: channel 38, channel 54, channel 151, and channel 46, respectively. That is, even if the number of available 80 MHz channels is limited, resulting in the same 80 MHz channels in the first and fourth candidate channel sets, the 40 MHz channels in these sets are different, each representing a different sub-channel of the 80 MHz channel.
[0078] For example, the first bandwidth can be 40 Mbps, and the second bandwidth can be 20 Mbps. The 40 Mbps available channels include six different channels (channel 38, channel 46, channel 54, channel 62, channel 151, and channel 159). Therefore, the first to fourth candidate channel sets can each include different channels with a bandwidth of 40 Mbps. For example, the first candidate channel set includes channel 38 with a bandwidth of 40 Mbps, the second candidate channel set includes channel 54 with a bandwidth of 40 Mbps, the third candidate channel set includes channel 151 with a bandwidth of 40 Mbps, and the fourth candidate channel set includes channel 46 with a bandwidth of 40 Mbps. The aforementioned six channels with a bandwidth of 40 Mbps each include two different sub-channels with a bandwidth of 20 Mbps. Specifically, channel 38 includes sub-channels 36 and 40; channel 46 includes sub-channels 44 and 48; channel 54 includes sub-channels 52 and 56; channel 62 includes sub-channels 60 and 64; channel 151 includes sub-channels 149 and 153; and channel 159 includes sub-channels 157, 161, and 165. The WLAN controller can configure the channels with a bandwidth of 20 Mbps in the first to fourth candidate channel sets as channels 36, 52, 149, and 44, respectively. That is, the WLAN controller configures the 20 Mbps channels for each AP as sub-channels of the 40 Mbps channels for each AP. It is understandable that when the number of APs in a WLAN system is greater than or equal to 6, at least two APs should have the same 40M bandwidth channel, but the APs with the same 40M bandwidth channel should have different 20M bandwidth channels as much as possible.For example, the frequencies of the aforementioned channels are as follows: Channel 36 (5170MHz–5190MHz), Channel 38 (5170MHz–5210MHz), Channel 40 (5190MHz–5210MHz), Channel 42 (5170MHz–5250MHz), Channel 44 (5210MHz–5230MHz), Channel 46 (5210MHz–5250MHz), Channel 48 (5230MHz–5250MHz), Channel 52 (5250MHz–5270MHz), Channel 54 (5250MHz–5290MHz), Channel 56 (5270MHz–5290MHz), Channel 58 (5250MHz–5330MHz). Channels 60 (5290MHz-5310MHz), 62 (5290MHz-5330MHz), 64 (5310MHz-5330MHz), 149 (5735MHz-5755MHz), 151 (5735MHz-5775MHz), 153 (5755MHz-5775MHz), 155 (5735MHz-5815MHz), 157 (5775MHz-5795MHz), 159 (5775MHz-5815MHz), 161 (5795MHz-5815MHz), and 165 (5815MHz-5835MHz).
[0079] Based on this scheme, the WLAN controller can directly select a channel for each AP from the candidate channel set for each AP and send the selected channel to the corresponding AP.
[0080] Understandably, the first bandwidth mentioned above can be 80 MHz, and the second bandwidth can also be 20 MHz. Each candidate channel set can also include channels with more bandwidths; for example, each candidate channel set can include channels with the first bandwidth, channels with the second bandwidth, and channels with the third bandwidth. In this case, the first bandwidth can be 80 MHz, the second bandwidth can be 40 MHz, and the third bandwidth can be 20 MHz.
[0081] In one possible implementation, the WLAN system further includes a computing device (not shown in the figure). This computing device is used to acquire a candidate channel set of multiple access points (APs) and send channel identifiers to each AP via the WLAN controller 101. Alternatively, the WLAN controller 101 acquires the candidate channel set of the multiple APs from the computing device. The computing device is a device with computing capabilities, such as a personal computer, server, server cluster, virtual machine, virtual machine cluster, or cloud device. The cloud may be, for example, a public cloud, private cloud, or hybrid cloud. The following description uses the example of the WLAN controller acquiring a candidate channel set of multiple APs.
[0082] Figure 2 This is a flowchart illustrating a channel allocation method provided in an embodiment of this application. The method is applied to a WLAN controller. Figure 2 As shown, the method includes step 201, which is as follows:
[0083] 201. Send channel identifiers to the first AP, second AP, third AP, and fourth AP. The channel identifier sent to the first AP is the identifier of at least one channel in the first candidate channel set. The channel identifier sent to the second AP is the identifier of at least one channel in the second candidate channel set. The channel identifier sent to the third AP is the identifier of at least one channel in the third candidate channel set. The channel identifier sent to the fourth AP is the identifier of at least one channel in the fourth candidate channel set. The first candidate channel set includes a first channel and a second channel. The second candidate channel set includes a third channel and a fourth channel. The third candidate channel set includes a fifth channel and a sixth channel. The fourth candidate channel set includes the first channel and a seventh channel. The bandwidth of the first channel, the bandwidth of the third channel, and the bandwidth of the fifth channel are all first bandwidths. The bandwidth of the second channel, the bandwidth of the fourth channel, the bandwidth of the sixth channel, and the bandwidth of the seventh channel are all second bandwidths. The first bandwidth is greater than the second bandwidth. The second channel and the seventh channel are different sub-channels of the first channel. The fourth channel is a sub-channel of the third channel, and the sixth channel is a sub-channel of the fifth channel.
[0084] The channel identifier is used to indicate a specific channel. For example, the channel identifier can be a numerical number of the channel. For instance, the channel codes for three channels with a bandwidth of 80 MHz are 42, 58, and 155, respectively, and the channel codes for six channels with a bandwidth of 40 MHz are 38, 46, 54, 62, 151, and 159, respectively. In one possible implementation, binary encoding can also be used to represent the channels. For instance, the channel codes for three channels with a bandwidth of 80 MHz are 00, 01, and 11, respectively, and the channel codes for six channels with a bandwidth of 40 MHz are 000, 001, 011, 010, 110, and 111, respectively.
[0085] For example, a channel identifier can also be a channel frequency. A channel identifier might consist of two parts: the first part indicates the channel's center operating frequency, and the second part indicates the channel's bandwidth. That is, the channel identifier indicates a specific channel by specifying its center operating frequency and bandwidth. For example, channel 42 has a center operating frequency of 5.21 GHz and a bandwidth of 80 MHz. The following explanation uses the channel identifier being a channel number as an example.
[0086] The first, second, third, and fourth candidate channel sets each include two channels. The bandwidths of these two channels are the first bandwidth and the second bandwidth, respectively, with the first bandwidth being greater than the second bandwidth. The bandwidths of the first, third, and fifth channels are all the first bandwidth. The bandwidths of the second, fourth, sixth, and seventh channels are all the second bandwidth. The second and seventh channels are different sub-channels of the first channel. The fourth channel is a sub-channel of the third channel. The sixth channel is a sub-channel of the fifth channel.
[0087] For example, such as Figure 3a As shown, the first bandwidth is 80 MHz, and the second bandwidth is 40 MHz. The available channels with a bandwidth of 80 MHz include three channels: channel 42, channel 58, and channel 155. Each 80 MHz channel includes two different sub-channels with a bandwidth of 40 MHz. For example, channel 42 includes two sub-channels: channel 38 and channel 46; channel 58 includes two sub-channels: channel 54 and channel 62; and channel 155 includes two sub-channels: channel 151 and channel 159. Therefore, there are three completely different sets of candidate channels. For example, the first channel in the first candidate channel set could be channel 42, and the second channel could be channel 38. The third channel in the second candidate channel set could be channel 58, and the fourth channel could be channel 54. The fifth channel in the third candidate channel set could be channel 155, and the sixth channel could be channel 151. When the number of APs exceeds three, there must exist other APs whose candidate channel sets contain channels with the first bandwidth that are the same as channels with the first bandwidth in at least one of the three candidate channel sets mentioned above. However, in this embodiment, two APs with the same first bandwidth are configured with different channels of the second bandwidth. These two different channels of the second bandwidth are different sub-channels of the same channel with the first bandwidth. When both APs operate in the second bandwidth, their operating channels can be different, minimizing channel interference between APs. For example, the first channel in the fourth candidate channel set is channel 42, and the seventh channel is channel 46. The 80MHz bandwidth channel in the fourth candidate channel set is the same as the 80MHz bandwidth channel in the first candidate channel set, while the 40MHz bandwidth channel in the fourth candidate channel set is different from the 40MHz bandwidth channel in the first candidate channel set. That is, the channels in any two candidate channel sets in this embodiment are as different as possible, which allows APs operating based on the channels in each candidate channel set to minimize co-channel interference between APs.
[0088] For example, such as Figure 3bAs shown, the first bandwidth is 40 Mbps, and the second bandwidth is 20 Mbps. In this case, the first channel in the first candidate channel set could be channel 38, and the second channel could be channel 36. The third channel in the second candidate channel set could be channel 54, and the fourth channel could be channel 52. The fifth channel in the third candidate channel set could be channel 151, and the sixth channel could be channel 149. Since the available channels with a bandwidth of 40 Mbps include six different channels, when there are no more than six APs, the candidate channel sets for each AP can be completely different. When there are more than six APs, some APs will have the same 40 Mbps channel, but the APs with the same 40 Mbps channel will have as different 20 Mbps channels as possible. For example, the 7th AP's fourth candidate channel set might have the first 40 Mbps channel (channel 38) and the seventh 20 Mbps channel (channel 40). The 40MHz bandwidth channel in the fourth candidate channel set is the same as the 40MHz bandwidth channel in the first candidate channel set, while the 20MHz bandwidth channel in the fourth candidate channel set is different from the 20MHz bandwidth channel in the first candidate channel set. That is, the channels in any two candidate channel sets in this embodiment are as different as possible, which allows APs operating based on the channels in each candidate channel set to minimize co-channel interference between APs.
[0089] For example, such as Figure 3c As shown, the first bandwidth is 80 MHz, and the second bandwidth is 20 MHz. In this case, the first channel in the first candidate channel set could be channel 42, and the second channel could be channel 36. The third channel in the second candidate channel set could be channel 58, and the fourth channel could be channel 52. The fifth channel in the third candidate channel set could be channel 155, and the sixth channel could be channel 149. The first channel in the fourth candidate channel set could be channel 42, and the seventh channel could be channel 40.
[0090] The above embodiments are merely examples; specifically, the candidate channel set can also be other channel combinations, for example, Figure 3a The fourth candidate channel set can also be a combination of channel 58 and channel 62, but this scheme does not impose specific restrictions on this.
[0091] In this embodiment, the WLAN controller determines a candidate channel set for each AP, and each candidate channel set includes channels with different bandwidths. For a specific bandwidth, the channels corresponding to each AP for that bandwidth are as different as possible. Even if the number of available channels is limited, causing some APs to correspond to the same channel for the same bandwidth, when the bandwidth decreases, the WLAN controller selects different sub-channels from that same channel for these APs. This ensures that the candidate channel set of each AP is as different as possible from the candidate channel sets of other APs. Therefore, regardless of whether the bandwidths of the APs are the same or different, the WLAN controller can directly select channels from the candidate channel set of each AP and send them to the AP, and the channels received by each AP will be as different as possible. Therefore, this scheme can minimize channel co-channel interference between APs. In addition, based on this embodiment, the WLAN controller can directly select a channel with the corresponding bandwidth for each AP from the candidate channel set of each AP without adjusting the channels of other APs, thus improving the efficiency of channel allocation.
[0092] exist Figure 2 Based on the embodiment shown, which provides a channel allocation method for each candidate channel set including channels with two bandwidths, this application embodiment also provides a channel allocation method. In this embodiment, each candidate channel set includes channels with at least three bandwidths. This method can be applied to a WLAN controller and includes step 401, as follows:
[0093] 401. Send channel identifiers to the first AP, second AP, third AP, and fourth AP. The channel identifier sent to the first AP is the identifier of at least one channel in the first candidate channel set. The channel identifier sent to the second AP is the identifier of at least one channel in the second candidate channel set. The channel identifier sent to the third AP is the identifier of at least one channel in the third candidate channel set. The channel identifier sent to the fourth AP is the identifier of at least one channel in the fourth candidate channel set. The first candidate channel set includes a first channel and a second channel. The second candidate channel set includes a third channel and a fourth channel. The third candidate channel set includes a fifth channel and a sixth channel. The fourth candidate channel set includes the first channel and a seventh channel. The bandwidth of the first channel, the bandwidth of the third channel, and the bandwidth of the fifth channel are all first bandwidths. The bandwidth of the second channel, the bandwidth of the fourth channel, the bandwidth of the sixth channel, and the bandwidth of the seventh channel are all second bandwidths. The first bandwidth is greater than the second bandwidth. The second channel and the seventh channel are different sub-channels of the first channel. The fourth channel is a sub-channel of the third channel, and the sixth channel is a sub-channel of the fifth channel. The first candidate channel set also includes an eighth channel, the second candidate channel set also includes a ninth channel, the third candidate channel set also includes a tenth channel, and the fourth candidate channel set also includes an eleventh channel. The bandwidths of the eighth, ninth, tenth, and eleventh channels are all third bandwidths. The second bandwidth is greater than the third bandwidth. The eighth, ninth, tenth, and eleventh channels are sub-channels of the second, fourth, sixth, and seventh channels, respectively.
[0094] Specifically, the first candidate channel set includes the first channel (corresponding to the first bandwidth), the second channel (corresponding to the second bandwidth), and the eighth channel (corresponding to the third bandwidth). The second candidate channel set includes the third channel (corresponding to the first bandwidth), the fourth channel (corresponding to the second bandwidth), and the ninth channel (corresponding to the third bandwidth). The third candidate channel set includes the fifth channel (corresponding to the first bandwidth), the sixth channel (corresponding to the second bandwidth), and the tenth channel (corresponding to the third bandwidth). The fourth candidate channel set includes the first channel (corresponding to the first bandwidth), the seventh channel (corresponding to the second bandwidth), and the eleventh channel (corresponding to the third bandwidth).
[0095] The first bandwidth is greater than the second bandwidth, and the second bandwidth is greater than the third bandwidth. Channels 2 and 7 are different sub-channels of channel 1. Channel 4 is a sub-channel of channel 3. Channel 6 is a sub-channel of channel 5. Channels 8, 9, 10, and 11 are sub-channels of channels 2, 4, 6, and 7, respectively.
[0096] For example, the first bandwidth could be 80M, the second bandwidth could be 40M, and the third bandwidth could be 20M.
[0097] Specifically, such as Figure 4 As shown, in the first candidate channel set, the first channel can be channel 42, the second channel can be channel 38, and the eighth channel can be channel 36. In the second candidate channel set, the third channel can be channel 58, the fourth channel can be channel 54, and the ninth channel can be channel 52. In the third candidate channel set, the fifth channel can be channel 155, the sixth channel can be channel 151, and the tenth channel can be channel 149. In the fourth candidate channel set, the first channel is channel 42, the seventh channel is channel 46, and the eleventh channel can be channel 44.
[0098] from Figure 4 As can be seen, the second channel (channel 38) and the seventh channel (channel 46) are different sub-channels of the first channel (channel 42). The fourth channel (channel 54) is a sub-channel of the third channel (channel 58), the sixth channel (channel 151) is a sub-channel of the fifth channel (channel 155), and the eighth channel (channel 36), the ninth channel (channel 52), the tenth channel (channel 149), and the eleventh channel (channel 44) are sub-channels of the second channel (channel 38), the fourth channel (channel 54), the sixth channel (channel 151), and the seventh channel (channel 46), respectively.
[0099] As described in the foregoing embodiments, an available channel with a bandwidth of 80 MHz includes three channels, an available channel with a bandwidth of 40 MHz is a sub-channel of the three available channels with a bandwidth of 80 MHz, and an available channel with a bandwidth of 20 MHz is a sub-channel of the six available channels with a bandwidth of 40 MHz. Therefore, there are three completely different sets of candidate channels. For example, in the first candidate channel set, the first channel could be channel 42, the second channel could be channel 38, and the eighth channel could be channel 36. In the second candidate channel set, the third channel could be channel 58, the fourth channel could be channel 54, and the ninth channel could be channel 52. In the third candidate channel set, the fifth channel could be channel 155, the sixth channel could be channel 151, and the tenth channel could be channel 149. When the number of APs exceeds three, there will inevitably be other APs whose candidate channel sets have a channel with a bandwidth of the first bandwidth that is the same as a channel with a bandwidth of the first bandwidth in at least one of the above three candidate channel sets. However, in this embodiment, two APs with the same first bandwidth are provided with different channels with a bandwidth of the second bandwidth; these two different channels with the second bandwidth are different sub-channels of the same channel with the first bandwidth. When both APs operate in the second bandwidth, their operating channels can be different to minimize inter-AP channel interference. Conversely, when both APs operate in the third bandwidth, their operating channels must be different to avoid inter-AP channel interference. For example, in the fourth candidate channel set, the first channel is channel 42, the seventh channel is channel 46, and the eleventh channel is channel 44. The 80MHz bandwidth channel in this fourth candidate channel set is the same as the 80MHz bandwidth channel in the first candidate channel set, while the 40MHz bandwidth channel in this fourth candidate channel set is different from the 40MHz bandwidth channel in the first candidate channel set. That is, in this embodiment, the channels in any two candidate channel sets are as different as possible, which allows APs operating based on the channels in each candidate channel set to minimize co-channel interference between APs.
[0100] In this embodiment, each candidate channel set includes three channels with three bandwidths (e.g., 80MHz, 40MHz, and 20MHz). The WLAN controller sends channel identifiers to the first AP, second AP, third AP, and fourth AP respectively based on these candidate channel sets, allowing each AP to more flexibly select channels with different bandwidths based on its corresponding candidate channel set. In this embodiment, the channels in any two candidate channel sets are as different as possible, which helps APs operating based on the channels in each candidate channel set to minimize co-channel interference between APs. Furthermore, based on this embodiment, the WLAN controller can directly select a channel with the corresponding bandwidth for each AP from its candidate channel set without adjusting the channels of other APs, thus improving the efficiency of channel allocation.
[0101] Figure 5 A schematic diagram of a channel allocation provided in an embodiment of this application is shown. Figure 5 It includes three channel allocation strategies corresponding to different bandwidths.
[0102] Available channels with 80 Mbps bandwidth include: Channel 42, Channel 58, and Channel 155. Available channels with 40 Mbps bandwidth include: Channel 38, Channel 46, Channel 54, Channel 62, Channel 151, and Channel 159. Channels 38 and 46 are different sub-channels of Channel 42. Channels 54 and 62 are different sub-channels of Channel 58. Channels 151 and 159 are different sub-channels of Channel 155.
[0103] Available channels with 20M bandwidth include: Channel 36, Channel 40, Channel 44, Channel 48, Channel 52, Channel 56, Channel 60, Channel 64, Channel 149, Channel 153, Channel 157, Channel 161, and Channel 165.
[0104] Among them, channels 36 and 40 are different sub-channels of channel 38. Channels 44 and 48 are different sub-channels of channel 46. Channels 52 and 56 are different sub-channels of channel 54. Channels 60 and 64 are different sub-channels of channel 62. Channels 149 and 153 are different sub-channels of channel 151. Channels 157, 161, and 165 are different sub-channels of channel 159.
[0105] based on Figure 5 Multiple candidate channel sets can be obtained, and each candidate channel set can include channels with three bandwidths. For example, candidate channel set a (channel 42, channel 38, channel 36), candidate channel set b (channel 42, channel 38, channel 40), candidate channel set c (channel 42, channel 46, channel 44), candidate channel set d (channel 42, channel 46, channel 48), candidate channel set e (channel 58, channel 54, channel 52), candidate channel set f (channel 58, channel 54, channel 56), candidate channel set g (channel 58, channel 62, channel 60), candidate channel set h (channel 58, channel 62, channel 64), candidate channel set i (channel 155, channel 151, channel 149), candidate channel set j (channel 155, channel 151, channel 153), candidate channel set k (channel 155, channel 159, channel 157), candidate channel set l (channel 155, channel 159, channel 161), and candidate channel set m (channel 155, channel 159, channel 165).
[0106] Accordingly, the first candidate channel set can be candidate channel set a, the second candidate channel set can be candidate channel set e, the third candidate channel set can be candidate channel set i, and the fourth candidate channel set can be candidate channel set c or candidate channel set d.
[0107] For example, the first candidate channel set can be candidate channel set b, the second candidate channel set can be candidate channel set f, g or h, the third candidate channel set can be candidate channel set j, k, l or m, and the fourth candidate channel set can be candidate channel set c or candidate channel set d.
[0108] Of course, the first candidate channel set, the second candidate channel set, the third candidate channel set, and the fourth candidate channel set can be other combinations, and this scheme does not impose specific restrictions on them.
[0109] In one possible implementation, the first AP, second AP, third AP, and fourth AP are neighboring APs, and the distances between the first AP and the second AP, and between the first AP and the third AP, are both less than the distance between the first AP and the fourth AP. For methods of determining neighboring APs, please refer to the methods for determining neighboring APs provided in other embodiments below.
[0110] For example, when AP102, AP103, AP104, and AP105 all have a bandwidth of 80 Mbps, since there are only three available channels with a bandwidth of 80 Mbps, two APs will inevitably share the same 80 Mbps channel. For instance, if AP102, AP103, and AP104 all have different channels, then AP105 will share a channel with one of APs (AP102, AP103, and AP104). To minimize co-channel interference between APs, the 80 Mbps channel of AP102, which is farther away from AP105, will be designated as the 80 Mbps channel of AP105. Because the distance between the two APs is relatively large (greater than the distance between AP105 and AP103, and greater than the distance between AP105 and AP104), the co-channel interference caused by setting the 80MHz bandwidth channels of AP102 and AP105 to the same channel is less than the co-channel interference caused by setting the 80MHz bandwidth channels of AP105 and AP103 to the same channel, or setting the 80MHz bandwidth channels of AP105 and AP104 to the same channel. In other words, this scheme further reduces co-channel interference between APs.
[0111] When the bandwidth of AP102, AP103, AP104, and AP105 is 40 MHz, there are six available channels, which are sub-channels of the three available 80 MHz channels mentioned above. The 80 MHz channels of AP102, AP103, and AP104 are all different; therefore, their 40 MHz channels are also different. Since the 80 MHz channel of AP105 is the same as that of AP102, to minimize co-channel interference between APs, the 40 MHz channel of AP105 is different from that of AP102. The 40 MHz channels of AP105 and AP102 are two different sub-channels of the 80 MHz channel of AP102. In this way, because each AP's 40 MHz channel is different, co-channel interference between APs can be avoided.
[0112] When more than six access points (APs) all have a bandwidth of 40 Mbps, since there are only six available channels, at least one AP will inevitably share a channel with another AP. For example, when AP102, AP103, AP104, AP105, AP106 (not shown in the diagram), AP107 (not shown in the diagram), and AP108 (not shown in the diagram) all have a bandwidth of 40 Mbps, since there are only six available channels with a bandwidth of 40 Mbps, two APs will inevitably share a channel with each other. For instance, if AP102, AP103, AP104, AP105, AP106, and AP107 all have different channels, then AP108 will share a channel with one of the following APs: AP102, AP103, AP104, AP105, AP106, and AP107. To minimize co-channel interference between APs, the 40MHz channel of AP102, which is farther from AP108, is designated as the 40MHz channel of AP108. Since the distance between these two APs is relatively large (greater than the distance between AP108 and other APs (AP103, AP104, AP105, AP106, and AP107)), the co-channel interference caused by setting the 40MHz channels of AP108 and AP102 to the same channel is less than the co-channel interference caused by setting the 40MHz channels of AP108 and other APs (AP103, AP104, AP105, AP106, and AP107) to the same channel.
[0113] Accordingly, when more than 13 APs all have a bandwidth of 20M, since there are thirteen available channels, at least one AP will inevitably have the same channel as the other APs. By identifying the channel of the AP that is farther away from the at least one AP as the AP's channel, the channel interference between the two APs will be less due to the relatively large distance between them.
[0114] In one possible implementation, this scheme also provides a method for determining the neighboring APs of an AP. The neighboring APs among multiple APs are determined based on the physical topology and path loss topology of these APs. The path loss topology can be obtained based on interference information detected by a probe scanning mechanism. This interference information can be received signal strength indication (RSSI) values, path loss (PL) values, or signal transmission time, etc. The interference information between any two APs is obtained by setting the channels of these two APs to be the same. That is, the AP acting as the transmitting end transmits a measurement signal at a preset transmission frequency, and the AP acting as the receiving end receives the measurement signal within the receiving frequency range corresponding to the preset transmission frequency, recording the relevant information when receiving the measurement signal as interference information. Based on the interference information, the measured interference value between the two APs can be obtained.
[0115] In some implementations, the interference information is the RSSI value. One AP from all APs is used as the transmitter to send a measurement signal, and the other APs are used as receivers to receive the measurement signal. Each receiver AP records the RSSI value corresponding to the received measurement signal, thus obtaining the RSSI value between the transmitter AP and each receiver AP. By iterating through all APs as transmitters, the RSSI value between any two APs in the system can be obtained. After receiving the RSSI values sent by the APs, the WLAN controller obtains the measurement interference value between the two APs based on the RSSI values.
[0116] In other implementations, the interference information is the PL value. Each AP in the network is iterated through, with one AP acting as a transmitter to send a measurement signal, and the other APs acting as receivers to receive the signal. Each receiver AP records the PL value corresponding to the received measurement signal and reports it to the WLAN controller. The PL value between a receiver AP and a transmitter AP represents the interference information between those two APs. The WLAN controller estimates the measurement interference value between the two APs based on the PL value.
[0117] In some implementations, the interference information is the signal transmission time, such as the difference between the signal reception and transmission times. Each AP in the network is iterated through, with one AP acting as the transmitter to transmit the measurement signal. The transmitting AP records the transmission time, and the other APs act as receivers to receive the measurement signal. Each receiver records the reception time corresponding to the received measurement signal. The transmitting AP sends its transmission time to the WLAN controller, and the receiving APs send their reception times to the WLAN controller. The WLAN controller subtracts the transmission time from the reception time to obtain the transmission time of the measurement signal between the two APs. The measurement signal travels at the speed of light, and the transmission time multiplied by the speed of light equals the distance between the two APs. For a receiving AP that did not receive the measurement signal and therefore did not obtain the transmission time, the WLAN controller can set the measurement interference value between the two APs to 0. After obtaining the distance between each pair of APs, the WLAN controller uses the distance to estimate the measurement interference value between the two APs.
[0118] The physical topology of these multiple APs is determined based on their physical location information.
[0119] In one possible implementation, the physical topology of the multiple access points (APs) can be determined by the WLAN controller based on the geographical location information of the APs. Optionally, the geographical location information of the APs can be the latitude and longitude information of the APs measured by surveyors or the XYZ coordinate information in a preset coordinate system. The preset coordinate system can be a coordinate system with any point in the area where the multiple APs are located as the origin.
[0120] In another example, the physical topology of multiple access points (APs) can also be obtained by the WLAN controller based on a network planning document. This document includes the coordinates and information of the APs. The WLAN controller can then calculate the physical topology of the multiple APs using a scale conversion based on the network planning document.
[0121] In another example, the physical topology of multiple access points (APs) can also be determined by the WLAN controller based on a digital map containing the coordinate information of the multiple APs. The digital map containing the multiple APs can be obtained in the following way:
[0122] The digital map building device selects the topology area requiring channel optimization and divides this area into specific buildings, such as office buildings, apartment buildings, and canteens. The device filters access points (APs) and drags them across the topology area based on their actual location within the building. It then imports a point map as a background image into the building interface. This point map is an image of size S1*S2, where S1 and S2 are the maximum X and Y coordinates of the AP, respectively. The device either automatically places AP markers onto the point map or does so manually. Finally, the device exports the AP's topology area planning information as an .xlsx file, obtaining the AP's X and Y coordinates in pixels relative to the origin. During the scale conversion process, based on the CAD icon scale, for example, if the length between two adjacent pixels in a known point map is 2.6 meters, the digital map building device sets the scale to 1:2.6 meters to obtain a topology with the same dimensions as the real physical world. Similarly, if the building's floor height is known to be 3.8 meters, the digital map building device adds the corresponding Z-axis information as height information to the xlsx file to obtain the digital map of the access point (AP). The WLAN controller can then obtain the AP's physical topology based on its XYZ coordinates.
[0123] The digital map building device can be a WLAN controller or a computing device such as a server. If the digital map building device is a server, the WLAN controller obtains the digital map from the server and obtains the physical topology of multiple APs based on the digital map.
[0124] The WLAN controller determines the number of neighbors for each AP based on the path loss topology of multiple APs. If the number of neighbors for an AP exceeds a preset number, the WLAN controller adjusts the inter-AP metric based on the physical topology. Factors affecting co-channel interference between an AP and its neighbors include the physical distance and path loss between the AP and its neighbors. However, physical distance and path loss are two different dimensions, so they need to be unified into one dimension so that the WLAN controller can adjust the inter-AP metric based on the physical topology. For example, the WLAN controller uses dot product and softmax operations to process the distance and path loss between the AP and its neighbors to obtain the metric between the AP and its neighbors, and then determines the AP's neighbors after adjusting the metric. The softmax operation can be seen as a normalization process to reduce data volume. If the number of neighbors for an AP is not greater than the preset number, the AP's neighbors are determined based on the AP's physical topology.
[0125] This scheme comprehensively evaluates the neighboring APs of an AP based on both the AP's physical topology and path loss topology. The physical topology between APs is determined by their mutual physical location relationships. The physical locations of APs generally do not change; therefore, the physical topology between APs is more stable. In contrast, the interference values in the path loss topology are affected by many factors and fluctuate greatly, failing to accurately reflect the neighbor relationships between APs. Therefore, compared to existing technologies that evaluate the neighboring APs of an AP solely based on path loss topology, this scheme determines the neighbor relationships between APs based on their physical topology, resulting in more accurate neighbor relationships.
[0126] The preset number of neighbors is related to the number of available channels of the AP. For example, when the AP's bandwidth is 80M, since there are only three available channels, the preset number of neighbors is 2; when the AP's bandwidth is 40M, since there are only six available channels, the preset number of neighbors is 5; correspondingly, when the AP's bandwidth is 20M, since there are only thirteen available channels, the preset number of neighbors is 12, and so on.
[0127] For example, the WLAN controller can first obtain the Euclidean distance matrix A between any two APs based on the three-dimensional coordinates of the multiple APs. Table 1a shows the physical distances between some APs.
[0128] Table 1a
[0129] Name AP1 AP2 AP3 AP4 AP5 AP6 AP1 122.25 253.6 707.5 1011.5 1807 AP2 122.25 23.7 241.6 430.8 990 AP3 253.6 23.7 113.94 252.4 707.5 AP4 707.5 241.6 113.94 27.17 253.5 AP5 1011.5 430.8 252.4 27.17 114.6 AP6 1807 990 707.5 253.5 114.6
[0130] Then, to reduce the data volume, the WLAN controller converts the elements in the Euclidean distance matrix A and the path loss between any two APs according to the electromagnetic wave propagation characteristics, as shown in Equation 1:
[0131]
[0132] Where U is the physical distance between APs. * This is the converted value of the physical distance between APs. This represents the path loss value between APs. This represents the converted path loss value between APs. K is a positive integer, such as 10, 20, 40, etc. The converted physical distance between APs is shown in Table 1b:
[0133] Table 1b
[0134] Name AP1 AP2 AP3 AP4 AP5 AP6 AP1 20.88 24.05 28.5 30.05 32.56 AP2 20.88 13.75 23.83 26.34 29.95 AP3 24.05 13.75 20.56 24.02 28.5 AP4 28.5 23.83 20.56 14.34 24.03 AP5 30.05 26.34 24.02 14.34 20.6 AP6 32.56 29.95 28.5 24.03 20.6
[0135] Then, the WLAN controller selects an appropriate topology metric based on the number of neighbors for each AP, determined by the path loss topology of multiple APs. As shown in Equation 2:
[0136]
[0137] Specifically, if the number of neighboring APs of an AP in the road loss topology is not less than a preset value, then... This represents the metric between the AP and its physical topological neighbors. If the number of neighboring APs in the path loss topology is less than a preset value, then a lower metric is used. This represents the metric between the AP and its physical topological neighbors.
[0138] Based on the above method, the WLAN controller can obtain the metric between each AP and its physically adjacent APs in the topology. This embodiment takes the case where the number of neighboring APs of an AP in the road loss topology is less than a preset value as an example. Table 1c illustrates the metric between APs obtained based on the physical distance between APs.
[0139] Table 1c
[0140] Name AP1 AP2 AP3 AP4 AP5 AP6 AP1 20.88 24.05 28.5 30.05 32.56 AP2 20.88 13.75 23.83 26.34 29.95 AP3 24.05 13.75 20.56 24.02 28.5 AP4 28.5 23.83 20.56 14.34 24.03 AP5 30.05 26.34 24.02 14.34 20.6 AP6 32.56 29.95 28.5 24.03 20.6
[0141] WLAN controller metrics between APs and neighboring APs Sort the APs in ascending order of their metrics, and then select the top T APs based on the number of available channels as their new neighbor APs. For example, for an 80M bandwidth, there are 3 available channels, so the T APs with the highest metric values are selected as the new neighbor APs. The two APs with the smallest metric values in each row are identified. To reduce data volume, the WLAN controller retains the metric values between an AP and its new neighboring APs, and sets all other metric values to 0, as shown in Table 1d:
[0142] Table 1d
[0143] Name AP1 AP2 AP3 AP4 AP5 AP6 AP1 0 20.88 24.05 0 0 0 AP2 20.88 0 13.75 0 0 0 AP3 0 13.75 0 20.56 0 0 AP4 0 0 20.56 0 14.34 0 AP5 0 0 0 14.34 0 20.6 AP6 0 0 0 24.03 20.6 0
[0144] To further reduce the amount of data, the WLAN controller sets the metric between the AP and the new neighboring AP to 1 to obtain the updated matrix, as shown in Table 1e:
[0145] Table 1e
[0146]
[0147]
[0148] Since neighbor relationships are reciprocal—for example, if AP3 is a new neighbor AP of AP1, then AP1 can also be considered a new neighbor AP of AP3—the updated matrix does not reflect this relationship. To reflect this relationship, the WLAN controller diagonalizes the updated matrix to construct a diagonalized matrix. For example, by updating matrix elements whose diagonal positions are not symmetrical, a diagonalized matrix is obtained. This diagonalized matrix represents the neighbor APs of each AP, as shown in Table 1f.
[0149] Table 1f
[0150] Name AP1 AP2 AP3 AP4 AP5 AP6 AP1 0 1 1 0 0 0 AP2 1 0 1 0 0 0 AP3 1 1 0 1 0 0 AP4 0 0 1 0 1 1 AP5 0 0 0 1 0 1 AP6 0 0 0 1 1 0
[0151] Based on the above method, the new neighboring APs of each AP can be determined.
[0152] In one possible implementation, after obtaining the aforementioned neighboring AP relationships, the AP with the most neighbors can be identified, and the first channel of the first bandwidth can be determined as the channel of the AP with the most neighbors. Based on the different channels of neighboring APs, the channels of the first bandwidth of each neighboring AP of the AP with the most neighbors can be determined.
[0153] Then, the channel of the first bandwidth of the other APs among the multiple APs, excluding the AP with the most neighbors and the neighbor APs of the AP with the most neighbors.
[0154] After determining the channel with the first bandwidth for each AP, the channel with the second bandwidth for each AP is then determined. Each AP's channel with the first bandwidth corresponds to multiple different sub-channels, and one of these sub-channels is selected to determine the channel with the second bandwidth for each AP. For APs with the same channel with the same first bandwidth, the channel with the second bandwidth for that AP is different from the channel with the same second bandwidth for at least one neighboring AP.
[0155] Similar to the method described above for determining the second bandwidth channel of each AP, the third bandwidth channel of each AP can be determined accordingly. Based on the second bandwidth channel of each AP, which corresponds to multiple different sub-channels, one of these sub-channels is selected to determine the third bandwidth channel of each AP. Specifically, for APs with the same second bandwidth channel, the third bandwidth channel of that AP is different from the corresponding third bandwidth channel of at least one neighboring AP.
[0156] Based on the above embodiments, this application also provides a method for determining the candidate channel set for each AP.
[0157] The method may include:
[0158] Determine the channel with the first bandwidth from the candidate channel set of N APs, where N is an integer greater than or equal to 4;
[0159] M access points (APs) are identified. The candidate channel sets of the M APs all include a common channel. The bandwidth of the common channel is the first bandwidth. The common channel includes multiple sub-channels. The bandwidth of each of the multiple sub-channels is the second bandwidth.
[0160] One of the multiple sub-channels is selected as the channel corresponding to the second bandwidth in the candidate channel set of one of the M APs, wherein the channel corresponding to the second bandwidth in the candidate channel set of any one of the M APs is different from the channel corresponding to the second bandwidth in the candidate channel set of at least one neighboring AP, and the M APs include the at least one neighboring AP.
[0161] In other words, the WLAN controller first determines the channel with a first bandwidth for each AP. Then, the WLAN controller identifies APs with the same first bandwidth channel and selects sub-channels from the multiple sub-channels included in that same channel as channels with a second bandwidth for these APs with the same first bandwidth. Specifically, the channel with the second bandwidth for any of these APs must be different from the channel with the second bandwidth for at least one neighboring AP. Based on this, the WLAN controller strives to ensure that the candidate channel set for each AP includes different channels.
[0162] For each access point (AP) with a channel having a different bandwidth of the first bandwidth, the WLAN controller selects a sub-channel from the sub-channels of the first bandwidth channel for each AP as the corresponding AP's second bandwidth channel. Since the first bandwidth channels of these APs are different, and the second bandwidth channels of these APs are sub-channels of the first bandwidth channel for their respective APs, the second bandwidth channels of these APs must also be different. Based on this, the WLAN controller ensures that the candidate channel set for each AP is different.
[0163] Similarly, based on the same method described above, the WLAN controller can assign a channel with a third bandwidth to each AP. For APs with the same second bandwidth channel, the WLAN controller selects a sub-channel from the multiple sub-channels included in that same channel as the third bandwidth channel for these APs. The third bandwidth channel for any of these APs is different from the third bandwidth channel of at least one neighboring AP. Therefore, the WLAN controller strives to ensure that the candidate channel set for each AP includes different channels. For APs with different second bandwidth channels, the WLAN controller selects a sub-channel from the sub-channels of the second bandwidth channel for each AP as the third bandwidth channel for that corresponding AP. Since the second bandwidth channels of these APs are different, and the third bandwidth channels of these APs are sub-channels of the corresponding second bandwidth channel, the third bandwidth channels of these APs must also be different. Therefore, the WLAN controller strives to ensure that the candidate channel set for each of these APs includes different channels.
[0164] As described above, for a specific bandwidth, each AP uses a different channel corresponding to that bandwidth as much as possible. Even if the limited number of available channels causes some APs to use the same channel for the same bandwidth, when the bandwidth decreases, the WLAN controller selects different sub-channels from that same channel for each AP. This ensures that each AP's candidate channel set is as different as possible from the candidate channel sets of other APs. Therefore, regardless of whether the bandwidths of the APs are the same or different, the WLAN controller can directly select a channel from each AP's candidate channel set and send it to the AP, ensuring that the channels received by each AP are as different as possible. Thus, this scheme can minimize co-channel interference between APs.
[0165] In one possible implementation, Figure 6a This is a schematic diagram of a channel determination method provided in an embodiment of this application. Figure 6aThe WLAN includes multiple nodes (A, B, C, D, E, F, G, H, I, and J) and edges between them. Each node represents an AP. An edge between two nodes indicates that the two APs represented by those nodes are neighbors. The length of the edge represents the distance between the two neighboring APs. For example, the first bandwidth is 80M, the second bandwidth is 40M, and the third bandwidth is 20M. This embodiment provides a method for determining the channel of the first bandwidth (e.g., 80M) based on a coloring mechanism. Since there are three available channels at 80M, the WLAN controller uses three colors (e.g., red, green, and blue) to color each node to determine the channel of each node. For example, red indicates that a node's 80M bandwidth channel is channel 42, green indicates that a node's 80M bandwidth channel is channel 58, and blue indicates that a node's 80M bandwidth channel is channel 155. First, based on the neighboring APs of each AP obtained in the aforementioned embodiment, the AP with the most neighbors (e.g., the AP with the most neighbors) can be determined. Figure 6a The WLAN controller first randomly selects one of the three channels from the three channels to color the node H with the most neighbors, for example, coloring node H red. Figure 6a The red area is indicated by a filler line (i.e., channel 42). Then, the neighboring nodes (A, I, J, E, and G) of the node H that is colored red are colored, as follows: Figure 6b The neighboring node's color is different from red; it can be green (for example, channel 58 indicating a node's bandwidth of 80 Mbps) or blue (channel 155 indicating a node's bandwidth of 80 Mbps). Figure 6b In the middle, black is used to represent green (i.e., channel 58), and gray is used to represent blue (i.e., channel 155). Next, the neighboring nodes of this neighboring node are colored, such as... Figure 6c As shown. This process continues until all nodes are colored, meaning all APs have determined the channel corresponding to the first bandwidth.
[0166] Specifically, taking node H as an example, if node H is first colored red, then the color set of node H's surrounding neighboring nodes is {green, blue}, excluding red, and so on until all nodes have been traversed. The graph coloring process may contain uncolored "holo" nodes. A Hole node is one whose surrounding neighboring nodes include all colors. For example... Figure 7a As shown, the neighboring nodes L, M, and N of node O are red, blue, and green, respectively. Therefore, the condition that the Hole node O and its surrounding neighboring nodes can be colored differently cannot be satisfied.
[0167] In one possible implementation, the Hole node coloring criterion can be achieved by comparing the nearest neighbor node {N} to the Hole node. 红 N 蓝 N绿}, and select the color of the node that is farthest from the Hole node among the three nodes as the color of the Hole node.
[0168] like Figure 7b As shown, compared to the distance between node M and Hole node O and the distance between node L and Hole node O, the distance between node N and Hole node O is the farthest. Therefore, the color of node O is changed to the color of node N, that is, the channel of node N is determined as the channel of node O.
[0169] After determining that each AP has a channel with a bandwidth of 80M, the three available channels with a bandwidth of 80M can be split into two sub-channels with a bandwidth of 40M each.
[0170] like Figure 5 As shown, channel 42, with a bandwidth of 80 Mbps, includes two different sub-channels with a bandwidth of 40 Mbps: channel 38 and channel 46; channel 58, with a bandwidth of 80 Mbps, includes two different sub-channels with a bandwidth of 40 Mbps: channel 54 and channel 62; and channel 155, with a bandwidth of 80 Mbps, includes two different sub-channels with a bandwidth of 40 Mbps: channel 151 and channel 159. Therefore, if channel 42 is the 80 Mbps bandwidth channel for AP1, then its 40 Mbps bandwidth channel could be either channel 38 or channel 46. If channel 58 is the 80 Mbps bandwidth channel for AP1, then its 40 Mbps bandwidth channel could be either channel 54 or channel 62. If channel 155 is the 80 Mbps bandwidth channel for AP1, then its 40 Mbps bandwidth channel could be either channel 151 or channel 159.
[0171] Furthermore, among them, such as Figure 5 As shown, channel 38, with a bandwidth of 40 Mbps, includes two 20 Mbps channels: channel 36 and channel 40. Channel 46, with a bandwidth of 40 Mbps, includes two 20 Mbps channels: channel 44 and channel 48. Channel 54, with a bandwidth of 40 Mbps, includes two 20 Mbps channels: channel 52 and channel 56. Channel 62, with a bandwidth of 40 Mbps, includes two 20 Mbps channels: channel 60 and channel 64. Channel 151, with a bandwidth of 40 Mbps, includes two 20 Mbps channels: channel 149 and channel 153. Channel 159, with a bandwidth of 40 Mbps, includes two 20 Mbps channels: channel 157 and channel 161. Additionally, a 20 Mbps channel also includes channel 165. Channel 165 can be considered a sub-channel of channel 159.
[0172] Therefore, if the AP's 40M bandwidth channel is channel 38, then its 20M bandwidth channel can be either channel 36 or channel 40. If the AP's 40M bandwidth channel is channel 46, then its 20M bandwidth channel can be either channel 44 or channel 48. If the AP's 40M bandwidth channel is channel 151, then its 20M bandwidth channel can be either channel 149 or channel 153.
[0173] Since the sub-channels of each first bandwidth channel are different, the second bandwidth channels of APs with different first bandwidth channels are also different, and correspondingly, the third bandwidth channels are also different.
[0174] For APs with the same first bandwidth channel, their second bandwidth channels differ from those of at least one neighboring AP. For example, AP1 and AP2 are neighboring APs. AP1 and AP2 share the same first bandwidth channel, channel 42. AP1's second bandwidth channel is channel 38, while AP2's is channel 46. Correspondingly, AP1 and AP2 have different third bandwidth channels. Although AP1 and AP2 share the same 80MHz channel (channel 42), their 40MHz and 20MHz channels are different. This ensures that each AP's candidate channel set is significantly different from other APs' candidate channel sets, allowing APs operating based on their candidate channel sets to minimize co-channel interference between APs.
[0175] Based on the above embodiments, the WLAN controller can determine a candidate channel set for each AP in the WLAN system, and each candidate channel set includes channels with different bandwidths. The WLAN controller can instruct each AP to select one channel from its corresponding candidate channel set as its working channel. For example, the WLAN control system includes four APs (first AP to fourth AP), and the candidate channel sets for these four APs are respectively a first candidate channel set, a second candidate channel set, a third candidate channel set, and a fourth candidate channel set. The WLAN controller instructs the first AP, the second AP, the third AP, and the fourth AP to select one channel from each of the first, second, third, and fourth candidate channel sets as their working channels.
[0176] The first candidate channel set includes channels 1, 2, and 8. The second candidate channel set includes channels 3, 4, and 9. The third candidate channel set includes channels 5, 6, and 10. The fourth candidate channel set includes channels 1, 7, and 11. For example, when the first bandwidth is 80 MHz, the second bandwidth is 40 MHz, and the third bandwidth is 20 MHz, the channel with 80 MHz bandwidth in the first candidate channel set is channel 42, the channel with 40 MHz bandwidth is channel 38, and the channel with 20 MHz bandwidth is channel 36. The channel with 80 MHz bandwidth in the second candidate channel set is channel 58, the channel with 40 MHz bandwidth is channel 54, and the channel with 20 MHz bandwidth is channel 52. The channel with 80 MHz bandwidth in the third candidate channel set is channel 155, the channel with 40 MHz bandwidth is channel 151, and the channel with 20 MHz bandwidth is channel 149. The channel with 80 MHz bandwidth in the fourth candidate channel set is channel 42, the channel with 40 MHz bandwidth is channel 46, and the channel with 20 MHz bandwidth is channel 44.
[0177] The WLAN system may also include more access points (APs). For example, if the WLAN system includes a fifth AP, the WLAN controller will also send a channel identifier to the fifth AP. The channel identifier sent to the fifth AP is the identifier of at least one channel in a fifth candidate channel set. This fifth candidate channel set may include, for example, a first channel, a second channel, and a twelfth channel. The bandwidth of the twelfth channel is a third bandwidth. The twelfth channel and the eighth channel are different sub-channels of the second channel.
[0178] The fifth candidate channel set includes the first channel (corresponding to the first bandwidth), the second channel (corresponding to the second bandwidth), and the twelfth channel (corresponding to the third bandwidth). The twelfth channel in the fifth candidate channel set and the eighth channel in the first candidate channel set are both sub-channels of the second channel. For example, when the first bandwidth is 80MHz, the second bandwidth is 40MHz, and the third bandwidth is 20MHz, the channel with the 80MHz bandwidth in the fifth candidate channel set is channel 42, the channel with the 40MHz bandwidth is channel 38, and the channel with the 20MHz bandwidth is channel 40.
[0179] The operating channel selected by each AP can be determined based on the AP's bandwidth. For example, if the WLAN controller sets the bandwidth of each AP to 80 Mbps, then the operating channel of each AP can be one of the 80 Mbps channels in the corresponding candidate channel set. As another example, if the WLAN controller sets the bandwidths of the first, second, third, fourth, and fifth APs to 80 Mbps, 40 Mbps, 20 Mbps, 40 Mbps, and 80 Mbps respectively, then the operating channel of the first AP can be channel 42, the operating channel of the second AP can be channel 54, the operating channel of the third AP can be channel 149, the operating channel of the fourth AP can be channel 46, and the operating channel of the fifth AP can be channel 42. Therefore, although the first, fourth, and fifth candidate channel sets correspond to the same 80 Mbps channel (channel 42), and the first and fifth candidate channel sets correspond to the same 40 Mbps channel (channel 38), the channels corresponding to the 20 Mbps channels are all different. That is, despite the increase in the number of APs, this scheme strives to ensure that the candidate channel set of each AP is as different as possible from the candidate channel sets of other APs. This minimizes channel co-channel interference between APs operating on channels within the candidate channel set.
[0180] For example, each AP can receive a corresponding set of candidate channels, and then select a channel from the received candidate channel set whose bandwidth meets its own bandwidth requirements as the working channel. That is, once the candidate channel sets for each AP are determined, each AP can freely select a channel from its corresponding candidate channel set whose bandwidth meets its own requirements, without needing to consider the selections of other APs, and the WLAN controller does not need to repeatedly try to adjust the channels of each AP. Therefore, this scheme simplifies the channel allocation process and improves the efficiency of channel allocation.
[0181] In this scheme, the candidate channel set of the first AP includes channel 1, channel 2, and channel 8; the candidate channel set of the fourth AP includes channel 1, channel 7, and channel 11; and the candidate channel set of the fifth AP includes channel 1, channel 2, and channel 12. The bandwidth of channel 1 is the first bandwidth, the bandwidths of channels 2 and 7 are the second bandwidths, and the bandwidths of channels 8, 11, and 12 are the third bandwidths. The first bandwidth is greater than the second bandwidth, and the second bandwidth is greater than the third bandwidth; for example, the first, second, and third bandwidths are 80 MHz, 40 MHz, and 20 MHz, respectively. Channel 2 and channel 7 are different sub-channels of channel 1, and channels 8 and 12 are different sub-channels of channel 2.
[0182] In one possible implementation, the bandwidth of the operating channel of the first AP is a first target bandwidth. When it is necessary to adjust the bandwidth of the first AP to a second target bandwidth, the WLAN controller changes the operating channel of the first AP to the target channel, while keeping the operating channels of other APs unchanged. The second target bandwidth differs from the first target bandwidth, and the target channel is a channel in the first candidate channel set whose bandwidth is the second target bandwidth. That is, when the bandwidth decreases, the WLAN controller selects different sub-channels for each AP as much as possible, so that most channels in the candidate channel sets of each AP are different, thereby minimizing co-channel interference between APs operating based on channels in each candidate channel set.
[0183] In this scheme, the WLAN controller determines a candidate channel set for each AP, including channels with multiple bandwidths corresponding to each AP. Furthermore, the overlap between channels of different bandwidths for any AP in the candidate channel set is minimized compared to channels in the candidate channel sets of other APs. Therefore, when the bandwidth of an AP needs to be adjusted, the WLAN controller can directly change the operating channel of that AP to a channel in its corresponding candidate channel set with the adjusted bandwidth, while keeping the operating channels of other APs unchanged; that is, there is no need to adjust the operating channels of other APs. This allows the WLAN controller to quickly change the channels of APs to adjust their bandwidth, improving the efficiency of channel allocation. Moreover, this rapid adjustment also minimizes co-channel interference between APs.
[0184] In one possible implementation, the WLAN controller sends the channel identifier of the target channel to the first AP, instructing the first AP to switch its operating channel to the target channel. The bandwidth of the target channel is a second target bandwidth. As the first AP adjusts its operating channel to the target channel, its bandwidth is adjusted from the first target bandwidth to the second target bandwidth.
[0185] In one possible implementation, the bandwidth of the first AP's operating channel is a first target bandwidth. When it is necessary to adjust the bandwidth of the first AP to a second target bandwidth, the first AP selects a channel with the second target bandwidth from a first candidate channel set as the target channel. The first AP then switches its operating channel to the target channel. That is, the first AP stores a candidate channel set, which includes channels corresponding to different bandwidths. When it is necessary to adjust the AP's bandwidth, the AP can directly select a channel with the second target bandwidth from the candidate channel set and switch its operating channel to the channel with the second target bandwidth, thus completing the adjustment of the AP's bandwidth and channel.
[0186] There are several ways to trigger an adjustment to the bandwidth of an access point (AP). For example, a change in AP performance statistics can trigger an adjustment. This change in performance statistics could be due to load imbalance between APs. Load imbalance can manifest as a difference in channel utilization between APs exceeding a threshold, and / or a difference in the number of access users between APs exceeding a threshold.
[0187] In one possible implementation, when the difference between the CU of the first AP and the CU of the second AP is greater than a first threshold, and / or the difference between the number of access users of the first AP and the number of access users of the second AP is greater than a second threshold, the bandwidth of the first AP is adjusted to the second target bandwidth. That is, the bandwidth adjustment of the APs is triggered when the load between adjacent APs is unbalanced. For example, if the first AP and the second AP are adjacent APs, and the bandwidth of the first AP is 80 Mbps and the bandwidth of the second AP is 40 Mbps, when the load between the first AP and the second AP is unbalanced, the bandwidth of the second AP can be increased, or the bandwidth of the first AP can be decreased, etc. This solution does not specifically limit this.
[0188] For example, a change in performance statistics could also occur when the number of users accessing the AP exceeds a threshold. In one possible implementation, the AP's bandwidth is determined based on the number of users accessing the AP.
[0189] For example, if a user wants to adjust the bandwidth of an access point (AP), the WLAN controller can obtain the user's input of a second target bandwidth and instruct the AP to adjust its bandwidth to the second target bandwidth. Alternatively, the AP can obtain the user's input of a second target bandwidth and adjust its bandwidth to the second target bandwidth. In one possible implementation, the bandwidth of a first AP can be adjusted to the second target bandwidth based on administrator control.
[0190] In this scheme, the WLAN controller determines a candidate channel set for each AP, which includes channels corresponding to multiple bandwidths for each AP. Furthermore, the overlap between channels of different bandwidths for any AP in the candidate channel set is minimized compared to channels in the candidate channel sets of other APs. Therefore, when the bandwidth of an AP needs to be adjusted, that AP can directly select a channel with the adjusted bandwidth from its candidate channel set as its working channel without worrying about severe co-channel interference to other APs during the switching process. Thus, adjusting the bandwidth of one AP does not require corresponding adjustments to the bandwidth / working channels of other APs, simplifying the bandwidth adjustment and channel allocation process and improving the efficiency of bandwidth adjustment and channel allocation.
[0191] Figure 8 This application provides a channel allocation method according to an embodiment. The method is applied to an access point (AP). The method includes steps 801-802, as follows:
[0192] 801. Receive candidate channel set. This candidate channel set includes a first channel and a second channel. The bandwidth of the first channel is the first bandwidth. The bandwidth of the second channel is the second bandwidth. The first bandwidth is not equal to the second bandwidth. The first channel and the second channel are different.
[0193] For example, the AP receives a set of candidate channels sent by the WLAN controller. This set of candidate channels includes channels corresponding to two bandwidths. A description of this part can be found in the foregoing embodiments, and will not be repeated here.
[0194] 802. Select one channel from the candidate channel set as the working channel.
[0195] The AP selects one channel from the candidate channel set as its working channel. For example, if the AP's working bandwidth is the first bandwidth, then its working channel is the first channel; if the AP's working bandwidth is the second bandwidth, then its working channel is the second channel.
[0196] In this scheme, the AP receives a set of candidate channels corresponding to different bandwidths. Therefore, the AP can directly select a channel that meets the bandwidth requirements from this set of candidate channels as the working channel without performing any other complex operations. This simplifies the channel allocation process and improves the efficiency of channel allocation.
[0197] In one possible implementation, the bandwidth of the operating channel of the first AP is a first target bandwidth. When it is necessary to adjust the bandwidth of the first AP to a second target bandwidth, the first AP selects a channel with the bandwidth of the second target bandwidth from a first candidate channel set as the target channel. The first AP then switches its operating channel to the target channel.
[0198] In this scheme, the candidate channel set received by the AP includes channels corresponding to different bandwidths. Therefore, when the bandwidth of an AP needs to be adjusted, the AP can directly select a channel with the adjusted bandwidth from its candidate channel set as the working channel, without performing other complex operations. This simplifies the bandwidth adjustment and channel allocation process and improves the efficiency of bandwidth adjustment and channel allocation.
[0199] In one possible implementation, when the difference between the CU of the first AP and the CU of the second AP is greater than a first threshold, or when the difference between the number of access users of the first AP and the number of access users of the second AP is greater than a second threshold, the bandwidth of the first AP is adjusted to the second target bandwidth. In other words, load imbalance between adjacent APs triggers the adjustment of the AP's bandwidth.
[0200] In one possible implementation, the bandwidth of the first AP is adjusted to the second target bandwidth based on the administrator's control.
[0201] In one possible implementation, the need to adjust the bandwidth of the AP is determined based on the number of users accessing the AP.
[0202] In one possible implementation, the AP adjusts its operating channel to the target channel by receiving the channel identifier of the target channel sent by the WLAN controller.
[0203] In one possible implementation, the AP directly selects a channel from the candidate channel set as the working channel.
[0204] For a description of this implementation method, please refer to the foregoing embodiments, which will not be repeated here.
[0205] This embodiment only illustrates the example of a candidate channel set including a first channel and a second channel with two bandwidths. It may also include channels with more bandwidths, such as channels with a third bandwidth, etc. This solution does not make specific limitations on this.
[0206] In one possible implementation, the first bandwidth is greater than the second bandwidth, and the second channel is a sub-channel of the first channel. For a detailed description of this part, please refer to the foregoing embodiments; it will not be repeated here.
[0207] In one possible implementation, the AP uses the first channel as the working channel and the second channel as the primary channel.
[0208] An access point (AP) can bind multiple adjacent low-bandwidth channels into a single high-bandwidth channel; for example, binding two 20MHz channels into a 40MHz channel. These multiple low-bandwidth channels are referred to as sub-channels of the high-bandwidth channel. One of these sub-channels is used as the master channel, and the others are used as slave channels. Slave channels are responsible for data packet transmission, while the master channel is responsible for both data packet transmission and management packet transmission. Therefore, in this embodiment, when the AP uses the first channel as its working channel, it also uses the second channel as its master channel. This ensures that when the AP switches its working channel from the first channel to the second channel, the channel responsible for transmitting management packets remains unchanged, enhancing network stability.
[0209] In this scheme, the AP receives a set of candidate channels, including different channels with varying bandwidths. The AP can directly select or adjust the working channel from this set according to its bandwidth requirements. This allows the AP to quickly determine the working channel, improving the efficiency of channel allocation.
[0210] Based on the foregoing embodiments, this application provides a channel allocation method. The exemplary available channel sets for the 80MHz and 40MHz 5G frequency bands are as follows: Figure 9As shown in the example, the AP model in this example is a single 5G radio frequency model with intelligent roaming and transmit power control functions enabled.
[0211] In one example, a WLAN controller and a server can form a distributed, partitioned, multi-replica message publish-subscribe system based on the Kafka protocol. This message publish-subscribe system consists of producers and consumers. The producer, for example, is the WLAN controller, which obtains information from multiple APs, such as AP identifiers, AP power, media access control (MAC) addresses of neighboring APs, and RSSI between the APs, and then publishes this AP information to a Kafka topic. The consumer, for example, is the server, which subscribes to the Kafka topic and applies the AP information.
[0212] Based on the obtained AP information, the server calculates the path loss between APs and constructs the path loss topology between APs.
[0213] The WLAN controller can obtain the physical topology between APs based on the scheme described in the foregoing embodiments.
[0214] The WLAN controller adjusts the metrics between APs based on the path loss topology and physical topology to determine the new neighbors of each AP. For details, please refer to the foregoing embodiments, which will not be repeated here.
[0215] The WLAN controller determines which channel each AP is assigned to within each of the multiple bandwidths. For an 80MHz bandwidth, the WLAN controller, for example, uses a 3-color map to color each AP to obtain the 80MHz channel allocation for each AP. The APs are then clustered according to their 80MHz channel allocation results, resulting in three clusters: {42, 58, 155}. That is, APs with channel 42 (80MHz bandwidth) are clustered together, APs with channel 58 (80MHz bandwidth) are clustered together, and APs with channel 155 (80MHz bandwidth) are clustered together. Then, the WLAN controller extracts APs with the same 80MHz channel and performs a 2-color map to complete the 40MHz channel allocation, ultimately obtaining the 40MHz channel allocation result {38, 46, 54, 62, 151, 159}, as shown below. Figure 10 As shown. For specific solutions, please refer to the description in the foregoing embodiments regarding coloring each AP using a coloring method to determine the channel of each AP; these details will not be repeated here.
[0216] Then, the WLAN controller can group multiple APs based on the physical location information of each AP, such as... Figure 11 The three groups shown are group A, group B, and group C. Based on... Figure 10 and Figure 11The WLAN controller builds a channel inheritance library according to group number and bandwidth configuration. This channel inheritance library includes channel distribution information for multiple groups of APs corresponding to multiple bandwidths.
[0217] As shown in Table 2, group number = {A, B, C}, bandwidth configuration = {80M, 40M}. The channel inheritance library is shown in Table 2. For example, in group A, AP1's channel with a bandwidth of 80M is 155. In group A, AP1's channel with a bandwidth of 40M is 159. As another example, in group C, AP5's channel with a bandwidth of 80M is 42.
[0218] Table 2
[0219]
[0220] The WLAN controller determines the assigned channel for each AP based on bandwidth recommendations and the channel inheritance library.
[0221] Assume the bandwidth recommendation scheme provides bandwidth recommendations of 80Mbps for group A, 40Mbps for group B, and 80Mbps for group C. The channel policies for groups A, B, and C can be directly obtained by consulting Table 2. Integrating these policies yields the channel policy configuration result for the global AP.
[0222] The WLAN controller monitors the topology group to update the bandwidth and channel allocation of the APs.
[0223] The WLAN controller periodically monitors parameters such as channel utilization or the number of connected users in each topology group to observe the rationality of the bandwidth recommendation effect. If the difference in CU between adjacent topologies exceeds a certain threshold or the difference in the number of connected users exceeds a certain threshold, it indicates that there is a load imbalance problem between adjacent topologies, and therefore bandwidth needs to be adjusted through bandwidth backoff operation.
[0224] Specifically, local channel optimization can be performed on the AP: Suppose that group C triggers a bandwidth rollback that needs to be rolled back from 80M to 40M. The final effect of the bandwidth adjustment operation is that the bandwidth configuration {group A: 80M, group B: 40M, group C: 80M} is adjusted to {group A: 80M, group B: 40M, group C: 40M}. Therefore, the local channel optimization strategy needs to look up the channel configuration corresponding to the adjusted bandwidth of 40M in group C in the channel inheritance library table 2 to achieve local inheritance optimization, while the channel configuration of other groups remains unchanged.
[0225] In this embodiment, the WLAN controller can directly select a channel with the corresponding bandwidth for each AP from the candidate channel set of each AP, without adjusting the channels of other APs, thus improving the efficiency of channel allocation. Furthermore, the channels of each AP will be as different as possible; therefore, this scheme can minimize co-channel interference between APs.
[0226] This application provides a WLAN system. The WLAN system includes a WLAN controller and multiple access points (APs). The WLAN controller is used to execute the method provided in the above embodiment.
[0227] In one possible implementation, any one of the plurality of APs is used to execute the AP execution method provided in the above embodiments.
[0228] Figure 12 This is a schematic diagram of a channel allocation device provided in an embodiment of this application. Figure 12 As shown, the channel allocation device 1200 includes an acquisition module 1201 and a transmission module 1202. The acquisition module 1201 and the transmission module 1202 are used to perform the relevant steps in the above method embodiments. For example, the acquisition module 1201 and the transmission module 1202 are used to perform... Figure 2 The relevant content of step 201.
[0229] The acquisition module 1201 is used to acquire a first candidate channel set, a second candidate channel set, a third candidate channel set, and a fourth candidate channel set. The first candidate channel set includes a first channel and a second channel; the second candidate channel set includes a third channel and a fourth channel; the third candidate channel set includes a fifth channel and a sixth channel; and the fourth candidate channel set includes the first channel and a seventh channel. The bandwidths of the first, third, and fifth channels are all first bandwidths. The bandwidths of the second, fourth, sixth, and seventh channels are all second bandwidths. The first bandwidth is greater than the second bandwidth. The second and seventh channels are different sub-channels of the first channel. The fourth channel is a sub-channel of the third channel. The sixth channel is a sub-channel of the fifth channel.
[0230] The transmitting module 1202 is used to transmit channel identifiers to a first AP, a second AP, a third AP, and a fourth AP. The channel identifier transmitted to the first AP is the identifier of at least one channel in the first candidate channel set. The channel identifier transmitted to the second AP is the identifier of at least one channel in the second candidate channel set. The channel identifier transmitted to the third AP is the identifier of at least one channel in the third candidate channel set. The channel identifier transmitted to the fourth AP is the identifier of at least one channel in the fourth candidate channel set.
[0231] In one possible implementation, the first candidate channel set further includes an eighth channel, the second candidate channel set further includes a ninth channel, the third candidate channel set further includes a tenth channel, and the fourth candidate channel set further includes an eleventh channel. The bandwidths of the eighth, ninth, tenth, and eleventh channels are all third bandwidths. The second bandwidth is greater than the third bandwidth. The eighth, ninth, tenth, and eleventh channels are sub-channels of the second, fourth, sixth, and seventh channels, respectively.
[0232] In one possible implementation, the acquisition module 1201 is further configured to acquire a fifth candidate channel set. The fifth candidate channel set includes the first channel, the second channel, and the twelfth channel. The bandwidth of the twelfth channel is the third bandwidth. The twelfth channel and the eighth channel are different sub-channels of the second channel.
[0233] The transmitting module 1202 is further configured to: transmit a channel identifier to the fifth AP. The channel identifier transmitted by the transmitting module 1202 to the fifth AP is the identifier of at least one channel in the fifth candidate channel set.
[0234] In one possible implementation, the first AP, the second AP, the third AP, and the fourth AP are neighboring APs, and the distance between the first AP and the second AP and the distance between the first AP and the third AP are both smaller than the distance between the first AP and the fourth AP.
[0235] In one possible implementation, the channel allocation device 1200 further includes a determination module. This determination module is used to determine channels with bandwidth equal to the first bandwidth from a candidate channel set of N APs. N is an integer greater than or equal to 4. The determination module is also used to determine M APs. The candidate channel sets of the M APs each include a common channel with bandwidth equal to the first bandwidth. The common channel includes multiple sub-channels, each of which has bandwidth equal to a second bandwidth. The determination module is further used to select one of these sub-channels as the channel corresponding to the second bandwidth in the candidate channel set of one of the M APs. Wherein, the channel corresponding to the second bandwidth in the candidate channel set of any one of the M APs is different from the channel corresponding to the second bandwidth in the candidate channel set of at least one neighboring AP. The M APs include the at least one neighboring AP.
[0236] In one possible implementation, the transmitting module 1202 is used to instruct the first AP, the second AP, the third AP and the fourth AP to select one of the first candidate channel set, the second candidate channel set, the third candidate channel set and the fourth candidate channel set as the working channel.
[0237] In one possible implementation, the bandwidth of the operating channel of the first AP is a first target bandwidth, and the channel allocation device 1200 further includes a modification module. The modification module is used to: when it is necessary to adjust the bandwidth of the first AP to a second target bandwidth, change the operating channel of the first AP to the target channel, while keeping the operating channels of other APs unchanged. The second target bandwidth is different from the first target bandwidth. The target channel is a channel in the first candidate channel set whose bandwidth is the second target bandwidth.
[0238] In one possible implementation, the transmitting module 1202 is further configured to: transmit the channel identifier of the target channel to the first AP, so as to instruct the first AP to switch its working channel to the target channel.
[0239] Figure 13 This is a schematic diagram of another channel allocation device provided in an embodiment of this application. Figure 13 As shown, the channel allocation device 1300 includes a receiving module 1301 and a selection module 1302. The receiving module 1301 and the selection module 1302 are used to perform the relevant steps in the above method embodiments. For example, the receiving module 1301 is used to perform... Figure 8 The relevant content of step 801, select module 1302 for execution. Figure 8 The relevant content of step 802.
[0240] The receiving module 1301 is used to receive a set of candidate channels. The set of candidate channels includes a first channel and a second channel. The bandwidth of the first channel is a first bandwidth. The bandwidth of the second channel is a second bandwidth. The first bandwidth is not equal to the second bandwidth. The first channel and the second channel are different.
[0241] Selection module 1302 is used to select one channel from the candidate channel set as the working channel.
[0242] In one possible implementation, the first bandwidth is greater than the second bandwidth. The second channel is a sub-channel of the first channel.
[0243] In one possible implementation, the selection module 1302 is further configured to: when the first channel is used as the working channel, use the second channel as the main channel.
[0244] The specific implementation of the channel allocation device can be found in the description of the channel allocation method above, and will not be repeated here. Each unit or module in the device can be individually or entirely merged into one or more other units or modules, or some of the units or modules can be further divided into multiple functionally smaller units or modules. This achieves the same operation without affecting the technical effects of the embodiments of the present invention. The above-mentioned units or modules are based on logical function division. In practical applications, the function of one unit (or module) can also be implemented by multiple units (or modules), or the function of multiple units (or modules) can be implemented by one unit (or module).
[0245] Based on the description of the above method and device embodiments, this invention also provides a channel allocation device. Figure 14 This is a schematic diagram of a channel allocation device provided for an embodiment of the invention. Figure 14 The channel allocation device 1400 shown includes a memory 1401, a processor 1402, a communication interface 1403, and a bus 1404. The memory 1401, processor 1402, and communication interface 1403 are interconnected via the bus 1404.
[0246] The memory 1401 may be a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM).
[0247] The memory 1401 can store programs. When the program stored in the memory 1401 is executed by the processor 1402, the processor 1402 executes the various steps of the channel allocation method of the present application embodiment through the communication interface 1403.
[0248] The processor 1402 may be a general-purpose central processing unit (CPU), microprocessor, application specific integrated circuit (ASIC), graphics processing unit (GPU), or one or more integrated circuits, used to execute relevant programs to implement the functions required by the units in the channel allocation apparatus of this application embodiment, or to execute the channel allocation method of this application method embodiment.
[0249] The processor 1402 can also be an integrated circuit chip with signal processing capabilities. In implementation, each step of the channel allocation method of this application can be completed by the integrated logic circuitry in the hardware of the processor 1402 or by instructions in software form. The processor 1402 can also be a CPU, a digital signal processor (DSP), an ASIC, a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or can be executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in the memory 1401. The processor 1402 reads the information in the memory 1401 and, in conjunction with its hardware, performs the functions required by the units included in the channel allocation device of this application embodiment, or executes the channel allocation method of this application method embodiment.
[0250] The communication interface 1403 uses transceiver devices, such as, but not limited to, transceivers, to enable communication between the channel allocation device 1400 and other devices or communication networks. For example, data can be acquired through the communication interface 1403.
[0251] Bus 1404 may include a path for transmitting information between various components of channel allocation device 1400 (e.g., memory 1401, processor 1402, communication interface 1403).
[0252] It should be noted that, although Figure 14 The channel allocation device 1400 shown only illustrates the memory, processor, and communication interface. However, those skilled in the art should understand that in specific implementations, the channel allocation device 1400 may also include other devices necessary for normal operation. Furthermore, depending on specific needs, those skilled in the art should understand that the channel allocation device 1400 may also include hardware devices for implementing other additional functions. Moreover, those skilled in the art should understand that the channel allocation device 1400 may only include the devices necessary for implementing the embodiments of this application, and may not necessarily include... Figure 14 All the devices shown.
[0253] This application also provides a chip, which includes a processor and a data interface. The processor reads instructions stored in a memory through the data interface to implement the channel allocation method.
[0254] In one possible implementation, the chip may further include a memory storing instructions, and the processor is configured to execute the instructions stored in the memory. When the instructions are executed, the processor is configured to execute the channel allocation method.
[0255] This application also provides a computer-readable storage medium storing instructions that, when executed on a computer or processor, cause the computer or processor to perform one or more steps of any of the above methods.
[0256] This application also provides a computer program product containing instructions. When the computer program product is run on a computer or processor, it causes the computer or processor to perform one or more steps of any of the methods described above.
[0257] Those skilled in the art will appreciate that the functionality described in conjunction with the various illustrative logic blocks, modules, and algorithmic steps disclosed herein can be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functionality described by the various illustrative logic blocks, modules, and steps can be stored or transmitted as one or more instructions or codes on a computer-readable medium and executed by a hardware-based processing unit. The computer-readable medium may comprise a computer-readable storage medium, which corresponds to a tangible medium, such as a data storage medium, or a communication medium that includes any medium facilitating the transfer of a computer program from one place to another (e.g., based on a communication protocol). In this way, the computer-readable medium may substantially correspond to (1) a non-transitory tangible computer-readable storage medium, or (2) a communication medium, such as a signal or carrier wave. The data storage medium may be any available medium accessible by one or more computers or one or more processors to retrieve instructions, code, and / or data structures for implementing the techniques described in this application. A computer program product may comprise a computer-readable medium.
[0258] By way of example and not limitation, such computer-readable storage media may include RAM, ROM, EEPROM, CD-ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or any other media that can be used to store desired program code in the form of instructions or data structures and is accessible by a computer. Furthermore, any connection is properly referred to as computer-readable media. For example, if instructions are transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of media. However, it should be understood that the computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other temporary media, but are specifically referring to non-temporary tangible storage media. As used herein, disks and optical discs include compact discs (CDs), laser discs, optical discs, digital versatile discs (DVDs), and Blu-ray discs, where disks typically reproduce data magnetically, while optical discs reproduce data optically using lasers. Combinations of these should also be included within the scope of computer-readable media.
[0259] Instructions can be executed by one or more processors, such as one or more DSPs, general-purpose microprocessors, ASICs, FPGAs, or other equivalent integrated or discrete logic circuits. Therefore, the term "processor" as used herein can refer to any of the foregoing structures or any other structures suitable for implementing the techniques described herein. Furthermore, in some aspects, the functionality described in the various illustrative logic blocks, modules, and steps described herein can be provided within dedicated hardware and / or software modules configured for encoding and decoding, or incorporated into combined codecs. Moreover, the techniques can be fully implemented within one or more circuit or logic elements.
[0260] The technology of this application can be implemented in a wide variety of devices or apparatuses, including wireless handheld devices, integrated circuits (ICs), or a set of ICs (e.g., chipsets). The various components, modules, or units described in this application are intended to emphasize functional aspects of the apparatus for performing the disclosed technology, but do not necessarily need to be implemented by different hardware units. In fact, as described above, the various units can be combined with suitable software and / or firmware within coded hardware units, or provided via interoperable hardware units (containing one or more processors as described above).
[0261] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the specific descriptions of the corresponding steps in the foregoing method embodiments, and will not be repeated here.
[0262] It should be understood that in the description of this application, unless otherwise stated, " / " indicates that the objects before and after it are in an "or" relationship. For example, A / B can represent A or B; where A and B can be singular or plural. Furthermore, in the description of this application, unless otherwise stated, "multiple" refers to two or more. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple. Additionally, to facilitate a clear description of the technical solutions of the embodiments of this application, the terms "first" and "second" are used in the embodiments of this application to distinguish identical or similar items with substantially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and the terms "first" and "second" do not necessarily imply difference. In this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplary" or "for example" in this application should not be construed as being better or more advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0263] In the embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the division of units is merely a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. The coupling, direct coupling, or communication connection shown or discussed between each other may be indirect coupling or communication connection through some interfaces, apparatuses, or units, and may be electrical, mechanical, or other forms.
[0264] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0265] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. This computer program product includes one or more computer instructions. When these computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in or transmitted through a computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, DSL) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium can be ROM, RAM, or magnetic media, such as floppy disks, hard disks, magnetic tapes, magnetic disks, or optical media, such as digital versatile optical discs (DVDs), or semiconductor media, such as solid-state disks (SSDs).
[0266] The above description is merely a specific implementation of the embodiments of this application, but the protection scope of the embodiments of this application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the embodiments of this application should be covered within the protection scope of the embodiments of this application. Therefore, the protection scope of the embodiments of this application should be determined by the protection scope of the claims.
Claims
1. A channel allocation method, characterized in that, The method, applied to a wireless local area network (WLAN) controller, includes: Channel identifiers are sent to a first access point (AP), a second AP, a third AP, and a fourth AP. The channel identifier sent to the first AP is the identifier of at least one channel in a first candidate channel set; the channel identifier sent to the second AP is the identifier of at least one channel in a second candidate channel set; the channel identifier sent to the third AP is the identifier of at least one channel in a third candidate channel set; and the channel identifier sent to the fourth AP is the identifier of at least one channel in a fourth candidate channel set. The first candidate channel set includes a first channel and a second channel; the second candidate channel set includes a third channel and a fourth channel; the third candidate channel set includes a fifth channel and a sixth channel; and the fourth candidate channel set includes the first channel and a seventh channel. The bandwidths of the first channel, the third channel, and the fifth channel are all first bandwidths; the bandwidths of the second channel, the fourth channel, the sixth channel, and the seventh channel are all second bandwidths; the first bandwidth is greater than the second bandwidth; the second channel and the seventh channel are different sub-channels of the first channel; the fourth channel is a sub-channel of the third channel; and the sixth channel is a sub-channel of the fifth channel.
2. The method according to claim 1, characterized in that, The first candidate channel set further includes an eighth channel, the second candidate channel set further includes a ninth channel, the third candidate channel set further includes a tenth channel, and the fourth candidate channel set further includes an eleventh channel. The bandwidths of the eighth, ninth, tenth, and eleventh channels are all third bandwidths, the second bandwidth is greater than the third bandwidth, and the eighth, ninth, tenth, and eleventh channels are sub-channels of the second, fourth, sixth, and seventh channels, respectively.
3. The method according to claim 2, characterized in that, The method further includes: A channel identifier is sent to the fifth AP. The channel identifier sent to the fifth AP is the identifier of at least one channel in the fifth candidate channel set. The fifth candidate channel set includes the first channel, the second channel, and the twelfth channel. The bandwidth of the twelfth channel is the third bandwidth. The twelfth channel and the eighth channel are different sub-channels of the second channel.
4. The method according to any one of claims 1 to 3, characterized in that, The first AP, the second AP, the third AP, and the fourth AP are neighboring APs. The distance between the first AP and the second AP and the distance between the first AP and the third AP are both less than the distance between the first AP and the fourth AP.
5. The method according to any one of claims 1 to 3, characterized in that, The method further includes: Determine the channel with the bandwidth of the first bandwidth from the candidate channel set of N APs, where N is an integer greater than or equal to 4; M access points (APs) are identified, and the candidate channel sets of the M APs all include a common channel. The bandwidth of the common channel is the first bandwidth, and the common channel includes multiple sub-channels. The bandwidth of each of the multiple sub-channels is the second bandwidth. One of the multiple sub-channels is selected as the channel corresponding to the second bandwidth in the candidate channel set of one of the M APs, wherein the channel corresponding to the second bandwidth in the candidate channel set of any one of the M APs is different from the channel corresponding to the second bandwidth in the candidate channel set of at least one neighboring AP, and the M APs include the at least one neighboring AP.
6. The method according to any one of claims 1 to 3, characterized in that, Sending channel identifiers to the first access point (AP), the second AP, the third AP, and the fourth AP includes: The first AP, the second AP, the third AP, and the fourth AP are instructed to select one channel from the first candidate channel set, the second candidate channel set, the third candidate channel set, and the fourth candidate channel set as the working channel, respectively.
7. The method according to claim 6, characterized in that, The bandwidth of the operating channel of the first AP is the first target bandwidth, and the method further includes: When it is necessary to adjust the bandwidth of the first AP to the second target bandwidth, the working channel of the first AP is changed to the target channel, while the working channels of other APs remain unchanged. The second target bandwidth is different from the first target bandwidth, and the target channel is a channel in the first candidate channel set whose bandwidth is the second target bandwidth.
8. The method according to claim 7, characterized in that, The step of changing the working channel of the first AP to the target channel includes: sending the channel identifier of the target channel to the first AP to instruct the first AP to switch its working channel to the target channel.
9. The method according to claim 6, characterized in that, The bandwidth of the operating channel of the first AP is the first target bandwidth, and the method further includes: When it is necessary to adjust the bandwidth of the first AP to the second target bandwidth, the first AP selects a channel with the bandwidth of the second target bandwidth from the first candidate channel set as the target channel; The first AP switches the working channel to the target channel.
10. A wireless local area network (WLAN) system, characterized in that, The WLAN system includes a WLAN controller and multiple access points (APs). The WLAN controller is used to perform the method according to any one of claims 1 to 9.
11. A channel allocation device, characterized in that, include: The acquisition module is used to acquire a first candidate channel set, a second candidate channel set, a third candidate channel set, and a fourth candidate channel set. The first candidate channel set includes a first channel and a second channel; the second candidate channel set includes a third channel and a fourth channel; the third candidate channel set includes a fifth channel and a sixth channel; and the fourth candidate channel set includes the first channel and a seventh channel. The bandwidths of the first channel, the third channel, and the fifth channel are all first bandwidths; the bandwidths of the second channel, the fourth channel, the sixth channel, and the seventh channel are all second bandwidths; the first bandwidth is greater than the second bandwidth; the second channel and the seventh channel are different sub-channels of the first channel; the fourth channel is a sub-channel of the third channel; and the sixth channel is a sub-channel of the fifth channel. The transmitting module is used to transmit channel identifiers to a first access point (AP), a second AP, a third AP, and a fourth AP, wherein the channel identifier transmitted to the first AP is the identifier of at least one channel in the first candidate channel set, the channel identifier transmitted to the second AP is the identifier of at least one channel in the second candidate channel set, the channel identifier transmitted to the third AP is the identifier of at least one channel in the third candidate channel set, and the channel identifier transmitted to the fourth AP is the identifier of at least one channel in the fourth candidate channel set.
12. The apparatus according to claim 11, characterized in that, The first candidate channel set further includes an eighth channel, the second candidate channel set further includes a ninth channel, the third candidate channel set further includes a tenth channel, and the fourth candidate channel set further includes an eleventh channel. The bandwidths of the eighth, ninth, tenth, and eleventh channels are all third bandwidths, the second bandwidth is greater than the third bandwidth, and the eighth, ninth, tenth, and eleventh channels are sub-channels of the second, fourth, sixth, and seventh channels, respectively.
13. The apparatus according to claim 12, characterized in that, The acquisition module is further configured to acquire a fifth candidate channel set, the fifth candidate channel set including the first channel, the second channel and the twelfth channel, the bandwidth of the twelfth channel being the third bandwidth, and the twelfth channel and the eighth channel being different sub-channels of the second channel; The sending module is further configured to: Send a channel identifier to the fifth AP, wherein the channel identifier sent to the fifth AP is the identifier of at least one channel in the fifth candidate channel set.
14. The apparatus according to any one of claims 11 to 13, characterized in that, The first AP, the second AP, the third AP, and the fourth AP are neighboring APs. The distance between the first AP and the second AP and the distance between the first AP and the third AP are both less than the distance between the first AP and the fourth AP.
15. The apparatus according to any one of claims 11 to 13, characterized in that, The device further includes a determining module, used for: Determine the channel with the bandwidth of the first bandwidth from the candidate channel set of N APs, where N is an integer greater than or equal to 4; M access points (APs) are identified, and the candidate channel sets of the M APs all include a common channel. The bandwidth of the common channel is the first bandwidth, and the common channel includes multiple sub-channels. The bandwidth of each of the multiple sub-channels is the second bandwidth. One of the multiple sub-channels is selected as the channel corresponding to the second bandwidth in the candidate channel set of one of the M APs, wherein the channel corresponding to the second bandwidth in the candidate channel set of any one of the M APs is different from the channel corresponding to the second bandwidth in the candidate channel set of at least one neighboring AP, and the M APs include the at least one neighboring AP.
16. The apparatus according to any one of claims 11 to 13, characterized in that, The sending module is used for: The first AP, the second AP, the third AP, and the fourth AP are instructed to select one channel from the first candidate channel set, the second candidate channel set, the third candidate channel set, and the fourth candidate channel set as the working channel, respectively.
17. The apparatus according to claim 16, characterized in that, The bandwidth of the operating channel of the first AP is the first target bandwidth. The device further includes a modification module for: When it is necessary to adjust the bandwidth of the first AP to the second target bandwidth, the working channel of the first AP is changed to the target channel, while the working channels of other APs remain unchanged. The second target bandwidth is different from the first target bandwidth, and the target channel is a channel in the first candidate channel set whose bandwidth is the second target bandwidth.
18. The apparatus according to claim 17, characterized in that, The transmitting module is further configured to: transmit the channel identifier of the target channel to the first AP, so as to instruct the first AP to switch its working channel to the target channel.
19. A wireless local area network (WLAN) controller, characterized in that, It includes a processor and a memory; wherein the memory is used to store program code, and the processor is used to call the program code to cause the WLAN controller to perform the method as described in any one of claims 1 to 9.
20. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores instructions that, when executed by a processor, implement the method according to any one of claims 1 to 9.
21. A computer program product, characterized in that, When the computer program product is run on a computer, it causes the computer to perform the method as described in any one of claims 1 to 9.