CHANNEL POINTING BASED ON CHANNEL PROPERTIES
Patent Information
- Application Number
- DE102023115147
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2022-08-30
- Filing Date
- 2023-06-09
- Publication Date
- 2025-03-06
- Estimated Expiration
- 2043-06-09
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
background
[0001] Preamble puncturing is an optional feature introduced in IEEE 802.11ax (Wi-Fi 6) and more flexible and effective in 802.11be (Wi-Fi 7). Preamble puncturing refers to the transmission of a physical layer protocol data unit (PPDU) where no signal is present in at least one 20 MHz subchannel within the PPDU bandwidth. Preamble puncturing supports various transmission types, such as single-user (SU), multi-user orthogonal frequency division multiple access (MU-OFDMA), and multi-user multiple-input and multiple-output (MU-MIMO), where the primary 20 MHz channel can be set to zero.
[0002] Wi-Fi introduces 320 MHz bandwidth and multi-link operation in IEEE 802.11be, but channel bandwidth resources may be limited in different regions. For example, in some regions, only one contiguous 320 MHz channel is deployed in the unlicensed National 6G Band Information Infrastructure (UNII-5), and bandwidth crossover issues may occur in the inter-basic service set (BSS) or external BSS (OBSS). Increasing the channel bandwidth can increase channel availability and provide a better user experience.
[0003] US 2019 / 0 141 570 A1 relates to preamble puncturing techniques in wireless local area networks (WLANs).
[0004] EP 3 989 662 A1 describes a station (STA) receiving a trigger frame from an access point (AP), wherein the trigger frame allocates one or more resource units (RUs) corresponding to one or more subchannels of a plurality of subchannels. The STA then performs a transmission using the allocated one or more RUs in response to receiving the trigger frame. If at least one subchannel of the plurality of subchannels is detected as busy, the one or more subchannels may comprise a subset, e.g., some but not all, of the plurality of subchannels. Short description
[0005] A method according to claims 1 to 10, an access point according to claims 11 to 19 and a non-transitory computer-readable medium according to claim 20 are disclosed. Brief description of the drawings
[0006] Embodiments of the present disclosure can be understood from the following detailed description when read in conjunction with the accompanying drawings. As is common in the industry, the various features are not drawn to scale. Indeed, the dimensions of the various features may be arbitrarily exaggerated or reduced for clarity of discussion. Some examples of the present disclosure are described with reference to the following drawings: Fig. shows an example of preamble puncturing in case of channel interference; Fig. show different puncturing patterns for different bandwidths; Fig. shows a flowchart of an example method for determining whether preamble puncturing is required in accordance with embodiments of the present disclosure; Fig. show a guide for selecting a puncturing pattern according to embodiments of the present disclosure; Fig. show an example of preamble puncturing for a bandwidth of 80 MHz according to embodiments of the present disclosure; Fig. show another example of preamble puncturing for the 160 MHz bandwidth according to embodiments of the present disclosure; Fig. shows a flowchart of an example method for selecting a puncture pattern based on channel characteristics according to embodiments of the present disclosure; and Fig. shows an example of an AP according to embodiments of the present disclosure. Detailed description
[0007] As mentioned above, preamble puncturing is powerful and useful, and in IEEE 802.11 be (Wi-Fi 7), it is more flexible and effective. However, the IEEE 802.11 be specification does not specify how the puncturing patterns should be used in practice. Preamble puncturing represents a flexible and effective way to organize the channel. However, in some cases, preamble puncturing can have some disadvantages if used improperly, potentially leading to degradation of the wireless local area network (WLAN).
[0008] Conventional puncturing schemes have several problems. First, conventional puncturing schemes do not consider whether preamble puncturing is required. In some cases, it is not necessary to implement the puncturing scheme. For example, if the overall channel utilization is very low or the neighboring AP with the overlapping channel is idle, a fixed puncturing scheme applied to one or both APs with the overlapping channel may not provide any benefit, because low channel utilization rarely causes contention, and the puncturing scheme incurs additional overhead due to the lower bandwidth.Another example: If BSS coloring is enabled for both neighboring APs with the overlapping channel and the Received Signal Strength Indication (RSSI) of one or most frames from the neighboring BSS is below a threshold, there is no need to implement preamble puncturing because BSS coloring already accounts for this case, and additional costs may be incurred. Second, with traditional puncturing schemes, there is no good way to select an appropriate puncturing pattern, and an inappropriate puncturing pattern may lead to inefficient channel access. For example, if too many Multiple Resource Units (MRUs) are dropped, an AP may have to wait for another AP to complete its transmission, which costs more transmission time. Another example: If too many MRUs are dropped, more spectrum resources are wasted.
[0009] Therefore, embodiments of the present disclosure propose a scheme for managing an AP's puncturing solution, including providing criteria for whether to enable preamble puncturing and guidelines for selecting an appropriate puncturing pattern. Embodiments of the present disclosure can help APs achieve an effective and better puncturing solution in real-world deployments. Meanwhile, real-time preamble puncturing may put pressure on the hardware design and central processing unit (CPU) performance, which may result in high latency in traffic scheduling. To better utilize the preamble puncturing feature, the present disclosure provides an effective method for selecting the appropriate puncturing pattern.
[0010] According to embodiments of the present disclosure, after detecting interference in a channel between neighboring APs, the puncturing conditions are used to determine whether preamble puncturing is required. Scores for possible puncturing patterns are then calculated based on the channel characteristics, and a suitable puncturing pattern can be selected based on the respective scores. Thus, embodiments of the present disclosure can provide some puncturing conditions for determining whether to enable preamble puncturing and some guidelines for selecting a suitable puncturing pattern, thus reducing the problem of adjacent-band interference for Wi-Fi.
[0011] Further advantages of embodiments of the present disclosure are described with reference to the example implementation described below. To illustrate the basic principles and various embodiments of the present disclosure, reference is made below to the Fig. until Fig. referred to.
[0012] Fig. shows an example of preamble puncturing in case of channel interference. As in Fig. As shown, there is channel interference 120 in the expected bandwidth 110 in the environment 100, such as an overlapping channel by neighboring APs, and therefore not all of the expected bandwidth 110 can be utilized. Radios are capable of using dynamic bandwidth operation, where an AP can change the channel width on a per-frame basis.
[0013] In Fig. According to the preamble puncturing scheme, both bandwidth 111 and bandwidth 112 in the expected bandwidth 110 can be used together for transmissions, instead of just bandwidth 111. For example, the expected bandwidth 110 is 80 MHz, bandwidth 111 is 40 MHz, and bandwidth 112 is 20 MHz, and 60 MHz can be used for channel transmissions instead of just 40 MHz. Thus, by using the preamble puncturing scheme, more bandwidth resources can be utilized.
[0014] In Fig. Different puncturing patterns for different bandwidths are shown. MRUs are the subcarriers used for puncturing resource allocation in the operating channel, and the puncturing granularity is 20 MHz. Fig. show the puncturing patterns for the non-OFDMA case, while Fig. illustrates the puncturing patterns for the non-OFDMA case.
[0015] OFDMA is a technology introduced in Wi-Fi 6 that improves the performance of wireless networks by independently modulating subcarriers within frequencies. OFDMA enables simultaneous transmissions to and from multiple clients and is a type of multi-user OFDM. OFDMA allocation occurs in both the time and frequency domains and can provide greater diversity and efficiency of frequencies, as well as reduced interference.
[0016] Fig. shows the puncturing patterns for the non-OFDMA case with 80 MHz bandwidth (BW). In scenario 210, there are four puncturing patterns with a puncturing granularity of 20 MHz. For example, 242-tone MRUs can be punctured in the 80 MHz bandwidth.
[0017] Fig. shows the puncturing patterns for the non-OFDMA case with 160 MHz bandwidth. In scenario 230, there are eight puncturing patterns with a puncturing granularity of 20 MHz and four puncturing patterns with a puncturing granularity of 40 MHz. For example, 242-tone MRUs or 484-tone MRUs can be punctured in the 160 MHz bandwidth.
[0018] Fig. shows the puncturing patterns for the non-OFDMA case with 320 MHz bandwidth. In scenario 250, there are eight puncturing patterns with a puncturing granularity of 40 MHz, four puncturing patterns with a puncturing granularity of 80 MHz, and six puncturing patterns with a puncturing granularity of 80+40 MHz. For example, 484-tone MRUs, 996-tone MRUs, or 1480-tone MRUs can be punctured in the 320 MHz bandwidth.
[0019] Fig. shows the puncturing patterns for the OFDMA case with 80 MHz bandwidth. In scenario 270, there are four puncturing patterns with a puncturing granularity of 20 MHz and three puncturing patterns with a puncturing granularity of 40 MHz. For example, 242-tone MRUs or 484-tone MRUs can be punctured in the 80 MHz bandwidth. As shown in Fig. As shown, there are a total of seven puncturing patterns for each 80 MHz bandwidth, and there are 7 2 possible puncturing patterns for the 160 MHz bandwidth and 7 4 possible puncturing patterns for the 320 MHz bandwidth.
[0020] Fig. 300 shows a flowchart of an example method 300 for determining whether preamble puncturing is required according to embodiments of the present disclosure. Method 300 may be performed by an AP to determine whether to perform preamble puncturing based on the states of neighboring APs.
[0021] At 302, interference between two or more neighboring APs in a channel is detected, and then method 300 proceeds to determine whether preamble puncturing needs to be enabled on the channel based on one or more puncturing conditions in accordance with embodiments of the present disclosure.
[0022] At 304, the method 300 determines whether the neighboring AP is operating a critical service. Alternatively, the method 300 may determine whether the neighboring AP is operating a critical service and whether the critical service retreat policy is enabled. If the method 300 determines at 304 that the neighboring AP is operating a critical service, the method 300 proceeds to 306 and determines that preamble puncturing must be enabled on the channel to avoid interfering with the neighboring AP's critical service.
[0023] In some deployments, transmission on certain frequencies that are not permitted locally due to regulations must be avoided, such as dynamic frequency selection (DFS) in the 5 GHz and 6 GHz frequencies, because the specific frequency may be used for other non-Wi-Fi devices. Even if the 6 GHz radio has automatic frequency control (AFC), such as transmit power limiting or channel assignment, the AP must still consider the actual frequency conditions. In some embodiments, existing National Security and Emergency Preparedness (NSEP) communication services consider priority access. For example, when action frames or broadcast management frames with Enhanced Defense Cooperation Agreement (EDCA) parameters are detected, preamble puncturing is required to mitigate congestion.
[0024] If the method 300 determines at 304 that the neighboring AP is not operating a critical service, the method proceeds to 308 and determines whether the percentage of clients that do not support puncturing is less than a predetermined threshold. If the method 300 determines that the percentage of clients not supporting puncturing is not less than a predetermined threshold at 308, the method proceeds to 310 and determines that preamble puncturing is not required in the channel. Clients that do not support puncturing must use the fixed first primary 20 MHz channel and cannot decode the punctured packets and treat them as a busy channel. In some embodiments, it is not necessary to perform preamble puncturing if the percentage of clients that do not support puncturing is greater than a certain threshold (e.g., 30%).
[0025] If the method 300 determines that the percentage of non-pierced clients is less than a predetermined threshold at 308, the method proceeds to 312 and determines whether the neighboring AP has the same BSS color as the current AP. If the method 300 determines that the neighboring AP has the same BSS color as the current AP at 312, the method 300 proceeds to 314, where frames from the neighboring AP are categorized as intra-BSS traffic; otherwise, the method 300 proceeds to 316, where frames from the neighboring AP are categorized as inter-BSS traffic.
[0026] BSS color, also called BSS coloring, is a method for identifying overlapping basic service (OBSS). The BSS color is a numerical identifier of the BSS and is the coexistence bit in the preamble. Radios can distinguish between BSSs using the BSS color identifier when other radios are transmitting on the same channel. If the detected frame has the same BSS color, it is considered an intra-BSS frame transmission, meaning that the transmitting radio belongs to the same BSS as the receiving radio. If the detected frame has a different BSS color than its own, that frame is considered an inter-BSS frame from an overlapping BSS.
[0027] If the BSS color value of the received packet matches the current BSS color setting, the packet is considered intra-BSS traffic. If the BSS color value of the received packet does not match the current BSS color setting, the packet is considered inter-BSS traffic. In some embodiments, different Clear Channel Assessment (CCA) thresholds may be applied to intra-BSS traffic and inter-BSS traffic.
[0028] At 314, the method 300 determines whether the RSSI of the neighboring AP is greater than an intra-BSS threshold. If the method 300 determines that the RSSI of most of the neighboring AP's packets is not greater than an intra-BSS threshold at 314, the method proceeds to 310 and ignores most frames from the neighboring AP and determines that preamble puncturing is not needed on the channel. Otherwise, the method proceeds to 318 and further evaluates whether preamble puncturing is required based on some channel parameters. In some embodiments, the channel parameters may include two or more of the following parameters: channel utilization, noise floor, repetition rate, number of unpunctured clients, physical error, and other parameters.
[0029] At 316, the method 300 determines whether the RSSI of the neighboring AP is greater than an inter-BSS threshold. If the method 300 determines that the RSSI of most of the neighboring AP's packets is not greater than an inter-BSS threshold at 316, the method proceeds to 310 and ignores most frames from the neighboring AP and determines that preamble puncturing is not needed on the channel. Otherwise, the method proceeds to 318 and further evaluates whether preamble puncturing is required based on some channel parameters.
[0030] At 318, method 300 further evaluates whether preamble puncturing is required based on some channel parameters and ultimately decides to proceed to 306 or 310. In some embodiments, channel parameters of the neighboring APs may be monitored or analyzed, and the channel parameters include, among others, BSS channel utilization, RSSI, noise floor (NF), retransmission (TX retry), CRC / PHY errors, and so on. Channel utilization may be calculated, for example, by the transmission and reception time of own or neighboring BSS traffic according to the following equation (1). Higher channel utilization means worse air conditions. Channel utilization=Rx Time percentage+Tx Time percentage where Rx Time percentage is a percentage of the time spent receiving in the channel and Tx Time percentage is a percentage of the time spent transmitting in the channel.
[0031] NF is the noise floor and is used to calculate the current signal-to-noise ratio (SNR) based on the signal strength. TX-Retry is the flag bit in the frame control field, which means that the receiver has not received an acknowledgment (ACK) and thus cannot decode or hear the TX packets. The CRC / PHY error indicates that the received signal (RX) is detected but cannot be decoded at the PHY or MAC level, and that the packet sender may have lower transmit power or excessive noise in the environment.
[0032] The channel parameters can be used to monitor the quality of the Wi-Fi network and indicate an interface in the channel. For example, if the overall channel utilization for 80 MHz is low, the station's SNR is good, but the PHY error is high, this means that there is active radio frequency interference in the subchannel and therefore preamble puncturing is required in the channel. Another example: The channel utilization of each 20 / 40 / 80 / 160 / 320 MHz band can be scanned, and if the channel utilization of any subband in the BSS operating channel is consistently high, a puncturing scheme must be applied in this case. It should be understood that although some examples of evaluating whether preamble puncturing is required have been described, embodiments of the present disclosure may use other methods to evaluate whether preamble puncturing is required based on the channel parameters.
[0033] When the method 300 finally proceeds to 310, no preamble puncturing action is required, or the preamble puncturing is deactivated. When the method 300 finally proceeds to 306, this means that the preamble puncturing must be activated, and the channel qualities of a plurality of subchannels in the channel are obtained to select a suitable puncturing pattern from a plurality of candidate puncturing patterns corresponding to the bandwidth of the channel. It should be understood that although some puncturing conditions in Fig. described, more or fewer puncturing conditions may be used to combine with embodiments of the present disclosure.
[0034] After the method 300 has determined that preamble puncturing needs to be enabled, an appropriate puncturing pattern needs to be selected. Fig. shows a method 400 for selecting a puncturing pattern according to embodiments of the present disclosure. At 402, the channel qualities of the subchannels in the channel are determined. For example, the channel qualities of the multiple subchannels may be determined based on some channel parameters associated with the channel, and the channel parameters may include two or more of channel utilization, physical errors, the number of punctured / unpunctured wireless devices, traffic volume, and so on. In some embodiments, the channel quality of each subchannel may be calculated by a function F of the channel parameters according to equation (2). Qi=F(channel_utilization,physical_errors,…) where i denotes the index of the subchannel, the bandwidth of the subchannel can be 20 / 40 / 80 / 40+80MHz and Q i can be used in the form of a percentage value belonging to [0, 100].
[0035] The channel quality of a 20 MHz subchannel is represented by Q20, the channel quality of a 40 MHz subchannel by Q40, and the channel quality of an 80 MHz subchannel by Q80. For a channel bandwidth of 80 MHz, the vector or array Q20 is used. For the 160 MHz channel bandwidth, the vectors or arrays Q20 and Q40 are used.
[0036] The channel quality value Q20 can be determined by a 20 MHz channel band scan according to equation (2), and the channel quality values Q40, Q80, and Q40+80 can be determined by a 40 / 80 / 40+80 MHz channel band scan according to equation (2). Alternatively, some algorithms can be used to determine the channel quality values Q40, Q80, and Q40+80 based on the channel quality values Q20. For example, the channel quality value Q40 can be determined according to a minimum algorithm, such as a minimum value of the lower Q20 and the higher Q20.
[0037] The channel quality of the entire channel m for AP x can be represented by a vector or an array of Q i the equation (3). Q(APx,channel_m)=(Q0,Q1,…,Qn) where n is the number of subchannels in the channel.
[0038] In an example, n is 15 when the channel bandwidth is 320 MHz. The vector Q i can be updated within a certain time period. For example, since traffic changes in the millisecond range, the function F has some traffic-dependent statistics as input parameters, so the update time of the quality vector Q i may be in a second range. In some embodiments, a forward sorting algorithm may be used to determine the channel quality Q ito sort, and the worst quality can be obtained at the first position of the sorted arrangement. It is understood that various methods for determining the channel quality of each subchannel can be used to combine with the embodiments of the present disclosure.
[0039] At 404, candidate puncturing patterns are determined for the channel according to the channel bandwidth. In the non-OFDMA case, a 20 MHz preamble puncturing pattern can be used for an 80 MHz channel, as in Fig. shown; for a 160 MHz channel, a 20 MHz or 40 MHz preamble puncturing can be used, as in Fig. shown; for a 320 MHz channel, 40 MHz, 80 MHz or 40+80 MHz preamble puncturing can be used, as in Fig. shown. In the OFDMA case, the channel can be divided into 80 MHz units, and each 80 MHz unit is processed independently. The above Fig. shows the possible puncturing patterns for the non-OFDMA case.
[0040] At 406, masked channel qualities are generated based on the determined channel qualities of the multiple subchannels and the candidate puncturing patterns. For example, the element of the subchannel to be punctured is masked as zero. At 408, the non-punctured channel qualities are obtained by performing a minimum function on the masked channel qualities. For example, in each row, the values other than zero are adjusted to represent the minimum of all non-zero values in the row. At 410, scores are calculated for the candidate puncturing patterns based on the non-punctured channel qualities, and the puncturing pattern with the highest score is selected for preamble puncturing. For example, a sum of the adjusted values in each row is calculated as the score for each row.
[0041] Fig. shows a non-OFDMA case 450 for selecting a puncturing pattern according to embodiments of the present disclosure. As in Fig. As shown, the channel quality field 451 of the 160 MHz channel is obtained based on the above function F, and the channel qualities Q20 in the channel quality field 451 are [48, 78, 90, 92, 91, 94, 99, 94]. Since the channel bandwidth is 160 MHz, 20 / 40 MHz puncturing patterns are possible candidates for puncturing. The puncturing pattern matrix 452 with possible puncturing patterns contains eight possible 20 MHz puncturing patterns and four possible 40 MHz puncturing patterns.
[0042] As in Fig. As shown, for each candidate puncturing pattern, the corresponding element in the puncturing pattern matrix 452 is masked to generate a masked channel quality matrix 453 with the masked channel qualities. Then, a minimal algorithm for the masked channel quality matrix 453 can be used to generate a minimum channel quality matrix 454 that includes unpunctured channel qualities. For SU transmission, the channel quality is bounded by the worst channel. For example, if [0, 78, 90, 92, 91, 94, 99, 94] is the first row in the masked channel quality matrix 453 and the first 20 MHz subchannel is masked, the minimum value is determined to be 78, thus obtaining a new array [0, 78, 78, 78, 78, 78, 78, 78].
[0043] The score matrix 455 is calculated based on the minimum channel quality matrix 454. For example, the sum of the elements in the array [0, 78, 78, 78, 78, 78, 78, 78, 78] is calculated to be 546, which is treated as the final score for the puncturing pattern candidate [0, 1, 1, 1, 1, 1, 1, 1]. Then, the highest score 546 is selected from the score matrix 455, and the puncturing pattern candidate [0, 1, 1, 1, 1, 1, 1, 1] is selected as the final puncturing pattern, which means that the first 20 MHz subchannel band is masked. In this way, the method 400 of the present disclosure can select a suitable puncturing pattern for preamble puncturing.
[0044] Fig. show an example of preamble puncturing for 80 MHz bandwidth according to embodiments of the present disclosure. In scenario 500 of Fig. The AP's BSS operates on channel 36E at 80 MHz, and the neighboring AP's OBSS operates on channel 40 at 20 MHz. Since the BSS has an 80 MHz working channel bandwidth, the AP has four 20 MHz puncturing patterns, as shown in Fig. shown, ie [0, 1, 1, 1], [1, 0, 1, 1], [1, 1, 0, 1], [1, 1, 1, 0], and the minimum subchannel bandwidth is 20 MHz.
[0045] For example, assume that Q20 (AP, 36E)[84, 47, 94, 92], which means that the quality of the first 20 MHz subchannel Q200 is 84, the quality of the second 20 MHz subchannel Q201 is 47, the quality of the third 20 MHz subchannel Q202 is 94, and the quality of the fourth 20 MHz subchannel Q203 is 92. The second 20 MHz subchannel is the worst subchannel in the 80 MHz channel of BSS. According to the above process 400, the score for the puncturing patterns [0, 1, 1, 1], [1, 1, 0, 1], [1, 1, 1, 0] is calculated to be 141, and the score for the puncturing pattern [1, 0, 1, 1] is calculated to be 252. Thus, the puncturing pattern with the highest score is [1, 0, 1, 1], and the puncturing pattern [1, 0, 1, 1] is selected for the 80 MHz channel of BSS, as shown by scenario 550 of Fig. displayed.
[0046] Fig. show another example of preamble puncturing for the 160 MHz bandwidth according to embodiments of the present disclosure. In scenario 600 of Fig. The AP's BSS operates on channel 100S at 160 MHz, and the neighboring AP's OBSS operates on channel 100E at 80 MHz. Since the BSS has a working channel bandwidth of 160 MHz, the AP has eight 20 MHz puncturing patterns and four 40 MHz puncturing patterns, as shown below and in Fig. and the minimum subchannel bandwidth is 20 MHz. [0,1,1,1,1,1,1,1],[1,0,1,1,1,1,1,1],[1,1,0,1,1,1,1,1,1],[1,1,1,0,1,1,1,1,1],[1,1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1,1],[1,1,1,1,1,1,0,1],[1,1,1,1,1,1,1,0,1],[0,0,1,1,1,1,1,1],[1,1,0,0,1,1,1,1,1],[1,1,1,1,1,0,0,1,1].
[0047] With a bandwidth of 160 MHz, 20 MHz and 40 MHz subchannels are sampled, resulting in the 20 MHz quality Q20 and the 40 MHz quality Q40. For example, assume that Q20 (AP, 100S)[56, 62, 37, 43, 86, 92, 86, 88], which means that the first 20MHz subchannel quality Q200 is 56, the second 20MHz subchannel quality Q201 is 62,..., and the seventh 20MHz subchannel quality Q207 is 88. Let us assume that Q40 (AP, 100S) is equal to [59, 40, 89, 87], which means that the first 40 MHz subchannel quality Q400 is equal to 59, the second 40 MHz subchannel quality Q401 is equal to 40,..., and the fourth 40 MHz subchannel quality Q403 is equal to 87.
[0048] According to the above process 400, the score for the puncturing pattern [1, 1, 0, 0, 1, 1, 1, 1] is calculated as the highest score of 354 among all puncturing patterns. Therefore, the puncturing pattern [1, 1, 0, 0, 1, 1, 1, 1] is selected for the 160 MHz channel of BSS, as in the scenario 650 of Fig. shown.
[0049] Fig. shows a flowchart of an example method 700 for selecting a puncturing pattern based on channel qualities according to embodiments of the present disclosure. At 702, an AP detects channel interference between the AP and its neighboring AP. At 704, the AP determines whether preamble puncturing is enabled on a channel of the AP based on one or more puncturing conditions. At 706, the AP determines the channel qualities of a plurality of subchannels in the channel if preamble puncturing needs to be enabled on the channel. At 708, the AP obtains candidate puncturing patterns for the channel according to a bandwidth of the channel. At 710, the AP determines scores for the candidate puncturing patterns based on the determined channel qualities of the plurality of subchannels.At 712, the AP selects a puncturing pattern from the candidate puncturing patterns based on the scores for the candidate puncturing patterns. In this way, a suitable puncturing pattern can be selected based on the respective quality scores, and thus, method 700 can help the AP achieve an effective and better puncturing scheme in real-world deployment.
[0050] In some embodiments, determining at 704 may include obtaining a Received Signal Strength Indication (RSSI) of a packet from the neighboring AP and determining whether preamble puncturing is enabled on the channel based on the obtained RSSI.
[0051] In some embodiments, determining at 704 may include obtaining a first BSS (Basic Service Set) color of the AP and a second BSS color of the neighboring AP, and determining whether the first BSS color is the same as the second BSS color. If the first BSS color matches the second BSS color, the AP compares the RSSI to a first threshold, such as an intra-BSS threshold. If the first BSS color is different from the second BSS color, the AP compares the RSSI to a second threshold, such as an inter-BSS threshold.
[0052] In some embodiments, if the RSSI is less than a first threshold, the AP determines that preamble puncturing needs to be disabled on the channel. If the RSSI is greater than a first threshold, the AP obtains channel parameters associated with the channel. The channel parameters may include two or more of a channel utilization, a noise floor, a retry flag, or a physical error. Then, based on the obtained channel parameters, the AP may evaluate whether preamble puncturing is enabled on the channel.
[0053] In some embodiments, determining at 704 may include determining whether a critical service is running on the neighbor AP, and determining that preamble puncturing is enabled on the channel if a critical service is running on the neighbor AP.
[0054] In some embodiments, determining at 704 may include determining a percentage of clients that do not support preamble puncturing and determining that preamble puncturing is disabled on the channel if the percentage is greater than a predetermined threshold.
[0055] In some embodiments, determining at 706 may include determining the channel qualities of the plurality of subchannels based on channel parameters associated with the channel. The channel parameters may include two or more of the following parameters: channel utilization, physical errors, number of puncture-assisted wireless devices, number of non-puncture-assisted wireless devices, and traffic volume.
[0056] In some embodiments, obtaining at 708 may include generating a puncturing pattern matrix containing the candidate puncturing patterns if Orthogonal Frequency Division Multiple Access (OFDMA) is not used in the channel.
[0057] In some embodiments, determining at 710 may include generating a masked channel quality matrix based on the channel qualities and the puncturing pattern matrix, adjusting the masked channel quality matrix using a minimum function to generate a minimum channel quality matrix, and determining scores for the candidate puncturing patterns based on the minimum channel quality matrix.
[0058] In some embodiments, obtaining at 708 may include dividing the channel into one or more units of a predetermined size if OFDMA is used in the channel, and obtaining candidate puncturing patterns for each of the one or more units.
[0059] Fig. shows an example of an AP 800 according to embodiments of the present disclosure. As in Fig. As shown, the AP 800 includes at least a processor 810 and a memory 820 coupled to the processor 810. The memory 820 stores instructions 822, 824, 826, 828, 830, and 832 to cause the processor 810 to perform actions according to embodiments of the present disclosure.
[0060] As in Fig. As shown, memory 820 stores instructions 822 to detect channel interference between the AP and a neighboring AP, and stores instructions 824 to determine whether preamble puncturing is enabled on a channel of the AP based on one or more puncturing conditions. As shown in Fig. As shown, the memory 820 further stores instructions 826 to determine the channel qualities of a plurality of subchannels in the channel when preamble puncturing is enabled on the channel, and stores instructions 828 to obtain candidate puncturing patterns for the channel according to a bandwidth of the channel. As shown in Fig.As shown, the memory 820 further stores instructions 830 for determining scores for the candidate puncturing patterns based on the determined channel qualities of the plurality of subchannels and stores instructions 832 for selecting a puncturing pattern from the candidate puncturing patterns based on the scores for the candidate puncturing patterns.
[0061] In some embodiments, the instructions 824 for determining whether preamble puncturing is enabled on the channel include instructions to cause the at least one processor to: obtain a received signal strength indication (RSSI) of a packet from the neighboring AP and determine whether preamble puncturing is enabled on the channel based on the obtained RSSI.
[0062] In some embodiments, the instructions 824 for determining whether preamble puncturing is enabled on the channel based on the obtained RSSI include instructions to cause the at least one processor to: obtain a first basic service set (BSS) color of the AP and a second BSS color of the neighboring AP, determine whether the first BSS color is the same as the second BSS color. The instructions 824 for determining whether preamble puncturing is enabled on the channel based on the obtained RSSI include instructions to cause the at least one processor to: compare the RSSI to a first threshold in accordance with a determination that the first BSS color is the same as the second BSS color, and compare the RSSI to a second threshold in accordance with a determination that the first BSS color is different from the second BSS color.
[0063] In some embodiments, the instructions to compare the RSSI to a first threshold include instructions to cause the at least one processor to: determine that preamble puncturing is disabled on the channel in accordance with a determination that the RSSI is less than a first threshold; obtain channel parameters associated with the channel in accordance with a determination that the RSSI is greater than a first threshold; and evaluate whether preamble puncturing is enabled on the channel based on the obtained channel parameters. The channel parameters may include one or more of the following: channel utilization, noise floor, retry flag, or physical error.
[0064] In some embodiments, the instructions 824 for determining whether preamble puncturing is enabled on the channel include instructions to cause the at least one processor to: determine whether a critical service is running on the neighboring AP, and in accordance with a determination that a critical service is running on the neighboring AP, determine that preamble puncturing is enabled on the channel.
[0065] In some embodiments, the instructions 824 for determining whether preamble puncturing is enabled on the channel include instructions to cause the at least one processor to: determine a percentage of clients that do not support preamble puncturing, and in accordance with a determination that the percentage is greater than a predetermined threshold, determine that preamble puncturing is disabled on the channel.
[0066] In some embodiments, instructions 826 for determining the channel qualities of a plurality of subchannels in the channel include instructions that cause the at least one processor to determine the channel qualities of the plurality of subchannels based on channel parameters associated with the channel. The channel parameters may include two or more of channel utilization, physical errors, a number of puncturing-supported wireless devices, a number of non-puncturing-supported wireless devices, and a traffic volume.
[0067] In some embodiments, the instructions 828 for obtaining candidate puncturing patterns for the channel according to a bandwidth of the channel include instructions to cause the at least one processor to generate a puncturing pattern matrix containing the candidate puncturing patterns in accordance with a determination that Orthogonal Frequency Division Multiple Access (OFDMA) is not used in the channel.
[0068] In some embodiments, the instructions 830 for determining scores for the candidate puncturing patterns include instructions to cause the at least one processor to: generate a masked channel quality matrix based on the channel qualities and the puncturing pattern matrix, adjust the masked channel quality matrix using a minimum function to generate a minimum channel quality matrix, and determine scores for the candidate puncturing patterns based on the minimum channel quality matrix.
[0069] In some embodiments, the instructions 828 for obtaining candidate puncturing patterns for the channel according to a bandwidth of the channel include instructions to cause the at least one processor to: divide the channel into one or more units of a predetermined size if OFDMA is used in the channel, and obtain candidate puncturing patterns for each of the one or more units.
[0070] In some embodiments, a non-transitory computer-readable medium is disclosed. The non-transitory computer-readable medium includes instructions stored thereon that, when executed by an access point (AP), cause the AP to: detect channel interference between the AP and a neighboring AP; determine whether preamble puncturing is enabled on a channel of the AP based on one or more puncturing conditions; determine channel qualities of a plurality of subchannels in the channel in accordance with a determination that preamble puncturing is enabled on the channel.The instructions further cause the AP to: obtain candidate puncturing patterns for the channel according to a bandwidth of the channel, determine scores for the candidate puncturing patterns based on the determined channel qualities of the plurality of subchannels, and select a puncturing pattern from the candidate puncturing patterns based on the scores for the candidate puncturing patterns.
[0071] Program codes or instructions for performing methods of the present disclosure may be written in any combination of one or more programming languages. These program codes or instructions may be supplied to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device such that the program codes, when executed by the processor or controller, effect the functions / acts specified in the flowcharts and / or block diagrams. The program codes or instructions may execute entirely on one machine, partially on the machine, as a standalone software package, partially on the machine and partially on a remote machine, or entirely on the remote machine or server.
[0072] In the context of this disclosure, a machine-readable medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may be, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or apparatus, or any suitable combination of the foregoing.More specific examples of a machine-readable storage medium would be an electrical connection having one or more wires, a portable computer diskette, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0073] Although the operations are presented in a particular order, this does not imply that these operations must be performed in the order presented or sequentially, or that all of the illustrated operations must be performed to achieve the desired results. Multitasking and parallel processing may be advantageous under certain circumstances. Certain features described in connection with individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in connection with a single embodiment may also be implemented in multiple embodiments separately or in any suitable subcombination.
[0074] In the foregoing detailed description of the present disclosure, reference is made to the accompanying drawings, which form a part of this disclosure, and in which is shown by way of illustration how examples of the disclosure may be carried out. These examples are described in sufficient detail to enable those skilled in the art to practice the examples of this disclosure, and it is understood that other examples may be utilized and that procedural, electrical, and / or structural changes may be made without departing from the scope of the present disclosure.
Claims
[1] Procedure (700), which includes: detecting (702) channel interference between an access point (AP) and a neighboring AP; determining (704) whether preamble puncturing is enabled on a channel of the AP based on one or more puncturing conditions; in accordance with a determination that preamble puncturing is enabled on the channel, determining (706) channel qualities of a plurality of subchannels in the channel; Obtaining (708) candidate puncturing patterns for the channel according to a bandwidth of the channel; Determining (710) scores for the candidate puncturing patterns based on the determined channel qualities of the plurality of subchannels; and Selecting (712) a puncturing pattern from the candidate puncturing patterns based on the scores for the candidate puncturing patterns. [2] The method (700) of claim 1, wherein determining whether preamble puncturing is enabled on the channel comprises: Obtaining a Received Signal Strength Indication (RSSI) of a packet from the neighboring AP; and Determine whether preamble puncturing is enabled on the channel based on the received RSSI. [3] The method (700) of claim 1, wherein determining whether preamble puncturing is enabled on the channel based on the obtained RSSI comprises: Obtaining a first BSS (Basic Service Set) color of the AP and a second BSS color of the neighboring AP; Determine whether the first BSS color is the same as the second BSS color; in accordance with a determination that the first BSS color is the same as the second BSS color, comparing the RSSI to a first threshold; and in accordance with a determination that the first BSS color is different from the second BSS color, comparing the RSSI to a second threshold. [4] The method (700) of claim 3, wherein comparing the RSSI with a first threshold comprises: in accordance with a determination that the RSSI is less than a first threshold, determining that preamble puncturing is disabled on the channel; in accordance with a determination that the RSSI is greater than a first threshold, obtaining channel parameters associated with the channel, wherein the channel parameters comprise two or more of a channel utilization, a noise floor, a retry flag, or a physical error; and Evaluate whether preamble puncturing is enabled on the channel based on the received channel parameters. [5] The method (700) of claim 1, wherein determining whether preamble puncturing is enabled on the channel comprises: Determine whether a critical service is running on the neighboring AP; and pursuant to a determination that a critical service is running on the neighboring AP, determining that preamble puncturing is enabled on the channel. [6] The method (700) of claim 1, wherein determining whether preamble puncturing is enabled on the channel comprises: Determining a percentage of clients that do not support preamble puncturing; and in accordance with a determination that the percentage is greater than a predetermined threshold, determining that preamble puncturing is disabled on the channel. [7] The method (700) of claim 1, wherein determining the channel qualities of a plurality of subchannels in the channel comprises: Determining the channel qualities of the plurality of subchannels based on channel parameters associated with the channel, wherein the channel parameters comprise two or more of a channel utilization, physical errors, a number of puncturing-supported wireless devices, a number of non-puncturing-supported wireless devices, and a traffic amount. [8] The method (700) of claim 1, wherein obtaining candidate puncturing patterns for the channel according to a bandwidth of the channel comprises: in accordance with a determination that Orthogonal Frequency Division Multiple Access (OFDMA) is not used in the channel, generating a puncturing pattern matrix containing the candidate puncturing patterns. [9] The method (700) of claim 8, wherein determining scores for the candidate puncturing patterns comprises: Generating a masked channel quality matrix based on the channel qualities and the puncturing pattern matrix; Adjusting the masked channel quality matrix using a minimum function to produce a minimum channel quality matrix; and Determining scores for the candidate puncturing patterns based on the minimum channel quality matrix. [10] The method (700) of claim 8, wherein obtaining candidate puncturing patterns for the channel according to a bandwidth of the channel comprises: in accordance with a determination that OFDMA is used in the channel, dividing the channel into one or more units of a predetermined size; and Obtaining candidate puncturing patterns for each of the one or more units. [11] Access Point (AP) (800), comprising: at least one processor (810); and a memory (820) coupled to the at least one processor (810), the memory (820) storing instructions to cause the at least one processor (810): detect channel interference between the AP and a neighboring AP (822); determine (824) whether preamble puncturing is enabled on a channel of the AP based on one or more puncturing conditions; in accordance with a determination that preamble puncturing is enabled on the channel, determine channel qualities of a plurality of subchannels in the channel (826); obtain candidate puncturing patterns for the channel according to the bandwidth of the channel (828); determine ratings for the candidate puncturing patterns based on the determined channel qualities of the plurality of subchannels (830); and select a puncturing pattern from the candidate puncturing patterns based on the evaluations for the candidate puncturing patterns (832). [12] The AP (800) of claim 11, wherein the instructions for determining whether preamble puncturing is enabled on the channel comprise instructions to cause the at least one processor (810): to obtain a Received Signal Strength Indication (RSSI) of a packet from the neighboring AP; and to determine whether preamble puncturing is enabled on the channel based on the received RSSI. [13] The AP (800) of claim 11, wherein the instructions for determining whether preamble puncturing is enabled on the channel based on the obtained RSSI comprise instructions to cause the at least one processor (810): to obtain a first BSS (Basic Service Set) color of the AP and a second BSS color of the neighboring AP; to determine whether the first BSS color is the same as the second BSS color; in accordance with a determination that the first BSS color is the same as the second BSS color, compare the RSSI to a first threshold; and in accordance with a determination that the first BSS color is different from the second BSS color, compare the RSSI to a second threshold. [14] The AP (800) of claim 13, wherein the instructions for comparing the RSSI to a first threshold comprise instructions for causing the at least one processor (810): determine, in accordance with a determination that the RSSI is less than a first threshold, that preamble puncturing is disabled on the channel; in accordance with a determination that the RSSI is greater than a first threshold, obtain channel parameters associated with the channel, wherein the channel parameters comprise two or more of a channel utilization, a noise floor, a retry flag, or a physical error; and to evaluate whether preamble puncturing is enabled on the channel based on the received channel parameters. [15] The AP (800) of claim 11, wherein the instructions for determining whether preamble puncturing is enabled on the channel comprise instructions to cause the at least one processor (810): to determine whether a critical service is running on the neighboring AP; and pursuant to a determination that a critical service is running on the neighboring AP, to determine that preamble puncturing is enabled on the channel. [16] The AP (800) of claim 11, wherein the instructions for determining whether preamble puncturing is enabled on the channel comprise instructions to cause the at least one processor (810): to determine a percentage of clients that do not support preamble punctuation; and in accordance with a determination that the percentage is greater than a predetermined threshold, determine that preamble puncturing is disabled on the channel. [17] The AP (800) of claim 11, wherein the instructions for determining the channel qualities of a plurality of subchannels in the channel comprise instructions to cause the at least one processor to: Determine channel qualities of the plurality of subchannels based on the channel parameters associated with the channel, wherein the channel parameters comprise two or more of a channel utilization, physical errors, a number of puncturing-supported wireless devices, a number of non-puncturing-supported wireless devices, and a traffic amount. [18] The AP (800) of claim 11, wherein the instructions for obtaining candidate puncturing patterns for the channel according to a bandwidth of the channel comprise instructions to cause the at least one processor (810): in accordance with a determination that Orthogonal Frequency Division Multiple Access (OFDMA) is not used in the channel, generate a puncturing pattern matrix containing the candidate puncturing patterns. [19] The AP (800) of claim 18, wherein the instructions for determining scores for the candidate puncturing patterns comprise instructions to cause the at least one processor (810): generate a masked channel quality matrix based on the channel qualities and the matrix of puncturing patterns; adjust the masked channel quality matrix using a minimum function to produce a minimum channel quality matrix; and To determine scores for the candidate puncturing patterns based on the minimum channel quality matrix. [20] Non-transitory computer-readable medium containing instructions stored thereon which, when executed by an access point (AP), cause the AP to: detect channel interference between the AP and a neighboring AP; determine whether preamble puncturing is enabled on a channel of the AP based on one or more puncturing conditions; in accordance with a determination that preamble puncturing is enabled on the channel, determine the channel qualities of a plurality of subchannels in the channel; Obtain candidate puncturing patterns for the channel according to the bandwidth of the channel; determine ratings for the candidate puncturing patterns based on the determined channel qualities of the plurality of subchannels; and select a puncturing pattern from the candidate puncturing patterns based on the scores for the candidate puncturing patterns.
Citation Information
Patent Citations
Efficient trigger-based uplink transmissions in wireless local area networks
EP3989662A1
Techniques for preamble puncturing
US20190141570A1