ALLOCATION OF RESOURCE UNITS IN SELECTIVE FADING
By evaluating channel qualities and assigning RUs with optimal performance, the AP in wireless communication networks addresses the challenge of inefficient resource allocation, improving transmission reliability and system performance.
Patent Information
- Application Number
- DE102022109003
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-10-27
- Filing Date
- 2022-04-13
- Publication Date
- 2025-05-22
- Estimated Expiration
- 2042-04-13
AI Technical Summary
In wireless communication networks, assigning resource units (RUs) to clients based on channel quality is challenging due to varying perceptions of channel quality among different clients, leading to inefficient resource allocation and potential transmission errors.
The access point (AP) determines a target RU for each client by evaluating the channel qualities of multiple RUs and selecting those with good channel quality, ensuring that each client is allocated an RU with optimal performance.
This approach improves transmission performance and reliability by assigning RUs with good channel quality, reducing transmission errors and enhancing overall system performance.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
background
[0001] Wireless communication networks such as wireless local area networks (WLANs) are capable of providing various communication services such as voice, video, and messaging to a multitude of clients. In wireless communication networks, an access point (AP) can provide network connectivity to a multitude of clients through a multitude of resource units (RUs). The clients can use the multitude of RUs to communicate with the AP. As the number of served clients increases and different clients located at different locations may experience different RU channel qualities, it becomes more complex to assign the multitude of RUs to different clients. It is desirable to assign each client an RU with a good channel quality.
[0002] US 2021 / 0 075 580 A1 refers to the allocation of one or more resource units to a station. Short description
[0003] A method according to claims 1 to 10, a method according to claims 11 to 16 and a communication device according to claims 17 to 20 are disclosed. Brief description of the drawings
[0004] The above and other objects, features, and advantages of the embodiments disclosed herein will become more apparent from the following detailed descriptions with reference to the accompanying drawings. Several example implementations disclosed herein are illustrated in the drawings by way of example and not limitation, wherein: Fig. 1 shows a block diagram of an example communications environment in which example implementations of the present disclosure may be implemented; Fig. 2 shows a signaling flow for assigning an RU for a client in accordance with some example implementations of the present disclosure; Fig. Figure 3 shows an example diagram showing the channel qualities across different subcarriers for a client; Fig. Figure 4 shows an example chart illustrating the RU allocation for a client during a given period; Fig. 5 shows a flowchart of a method for allocating a plurality of RUs to a plurality of clients in accordance with some example implementations of the present disclosure; Fig. 6 shows an example of RU allocation for a plurality of clients in accordance with some example implementations of the present disclosure; Fig. 7 shows a flowchart of a method in accordance with some embodiments of the present disclosure; Fig. 8 shows another flowchart of a method in accordance with some embodiments of the present disclosure; Fig. 9 shows a block diagram of a communication device in accordance with some embodiments of the present disclosure; and Fig. 10 shows another block diagram of a communication device in accordance with some embodiments of the present disclosure. Detailed description
[0005] In wireless communication networks, an access point (AP) may provide network connectivity to a plurality of clients by designating or assigning a plurality of RUs for the plurality of clients to conduct transmissions. Example implementations of the present disclosure relate to assigning RU(s) of the AP to the client(s) to conduct communications with the AP.
[0006] Fig. 1 shows an example environment 100 in which example implementations of the present disclosure may be implemented. The example environment 100 may be implemented as part of a wireless communications network, such as a WLAN. The example environment 100 includes an AP 110 and a plurality of clients, including client 130-1, client 130-2, ..., client 130-N. The clients 130-1, 130-2, ..., 130-N may be referred to collectively as "clients 130" or individually as "client 130." Multiple clients 130 may transmit to or receive from the AP 110 simultaneously by sharing the available bandwidth.
[0007] The client 130 may also be referred to as a user device or station (STA). The client 130 is any type of mobile device, stationary device, or portable device, including a mobile handset, station, unit, appliance, multimedia computer, multimedia tablet, internet exchange, communicator, desktop computer, laptop, notebook, netbook, tablet computer, personal communication system (PCS) device, personal navigation device, personal digital assistant (PDA), audio / video player, digital camera / camcorder, tracking device, television receiver, radio receiver, electronic book device, gaming device, or any combination thereof.
[0008] The AP 110 may be any suitable device that enables one or more clients 130 to connect to the wireless communication network in the example environment 100. As used herein, the AP 110 may include, be implemented as, or be known as a wireless router, a wireless transceiver, a switch, a Wi-Fi hotspot device, a Basic Service Set (BSS), an Extended Service Set (ESS), a wireless base station (RBS), or other terminology.
[0009] Communication in the example environment 100 may be performed according to wireless communication protocols such as the IEEE 802.11 (Institute of Electrical and Electronic Engineers) standards, Wi-Fi Alliance specifications, or other wireless communication standards. The IEEE 802.11 standards may include the IEEE 802.11ax standard (also referred to as Wi-Fi 6) or other wireless communication standards.
[0010] In the example environment 100, orthogonal frequency division multiple access (OFDMA) is used to divide the subcarriers into a plurality of RUs. For illustration, Fig. 1 The subcarriers used for communication with the AP 110 are divided into RU 120-1, RU 120-2, RU 120-3, ..., RU 120-M. These RUs may be collectively referred to as "RU 120" or individually as "RU 120." The term "RU" used below refers to a resource unit used for communication in a wireless communication network, and the RU may refer to a group of subcarriers with a specific bandwidth.
[0011] In some OFDMA-based communication networks, such as IEEE 802.11.ax, the subcarrier spacing is 78.125 kHz or 312.5 kHz, or another suitable frequency bandwidth. When subdividing a full-bandwidth communication channel, such as 20 MHz, 40 MHz, or another suitable bandwidth, the AP 110 can determine the number of subcarriers in an RU for communication, such as 26, 52, 106, or 242 subcarriers in an RU. For example, using the full bandwidth of 20 MHz and the subcarrier spacing of 78.125 kHz, the RU frequency bandwidth when grouping 26, 52, 106, or 242 subcarriers in an RU is approximately 2 MHz, 4 MHz, 8 MHz, or 20 MHz, respectively. The RU with a number of 26, 52, 106, or 242 subcarriers is referred to as RU 26, RU 52, RU 106, or RU 242, respectively. The number of subcarriers in each RU can be referred to as the "RU size" of the RU.For a given channel with a given full bandwidth, the RU size of an RU is related to the frequency bandwidth of the RU.
[0012] The AP 110 can specify the number of RUs with different RU sizes within each channel, e.g., 9 RUs of RU 26, 5 RUs of RU 52, 4 RUs of RU 26, and 2 RUs of RU 52, or any other number of RUs with different RU sizes. The AP can also specify the number of subcarriers in each RU or dictate the RU size of each RU. In a wireless communications network, the plurality of RUs 120 can have the same RU size (i.e., each RU has the same number of subcarriers) or different RU sizes (i.e., each RU has a different number of subcarriers).
[0013] It goes without saying that the full bandwidth value, the subcarrier spacing value, the number of subcarriers in each RU, and the number of RUs are for illustrative purposes only and do not imply any limitations. The communication channel may have a wider or narrower full bandwidth, the subcarrier spacing may be wider or narrower, the number of subcarriers in each RU may vary, and the number of RUs may also vary.
[0014] The Fig. 1 is for illustrative purposes only and is not limiting. The example environment 100 may include any number of APs, RUs, and clients configured to implement the present disclosure.
[0015] The wireless communications environment is typically multipath, including numerous obstacles, buildings, and other surrounding objects. Temporal dispersions such as diffraction, reflection, and scattering due to multipath effects can lead to frequency-selective fading, which degrades channel performance. As a result, for different clients located at different locations, some subcarrier signals are amplified while other subcarrier signals are attenuated. Therefore, the client's transmission rate is often limited by the weakest subcarrier signal strength in the RU used by the client. Low subcarrier signal strengths can even cause transmission errors.
[0016] Conventionally, the AP assigns RU(s) to the client(s) without considering the weakest subcarrier signal strength in the RU(s) assigned to the client(s). Rather, the AP simply considers the average subcarrier signal strength in the RU. If the client is located at a location where it perceives the weakest subcarrier signal strength in the RU, the client's transmit performance will be reduced due to frequency-selective fading. Therefore, it is desirable to improve the client's transmit performance by assigning the client an RU with good subcarrier signal strength for transmission.
[0017] Various example implementations of the present disclosure propose a more efficient method for assigning good RU(s) for client(s) based on the channel qualities of the RU(s) for the client(s). In particular, different clients of a wireless communication network may perceive different channel qualities of the RUs. For example, a client may perceive good channel quality from one RU but poor channel quality from another RU. Likewise, an RU that has good channel quality for one client may be poor for another client. According to the example implementations of the present disclosure, the AP may determine a target RU for a particular client based on a plurality of channel qualities of the plurality of RUs for the client. The AP then assigns the target RU to the client for a subsequent transmission with the AP.
[0018] By assigning a target RU with good channel quality to the client, transmission performance and reliability between the client and the AP can be improved and transmission errors reduced. Furthermore, by assigning multiple RUs to multiple clients while considering the respective channel quality of each RU, overall system performance can be further improved and a competitive advantage achieved.
[0019] Some example implementations of the present disclosure are discussed in detail below with reference to other figures.
[0020] Fig. Figure 2 shows a signaling flow 200 for RU assignment for a client in accordance with some example implementations of the present disclosure. For purposes of discussion, the signaling flow 200 will be described with reference to Fig. 1 to discuss example implementations of RU assignment between the AP 110 and the client 130. It should be understood that, although in Fig. 2, in allocating the plurality of RUs to more than one client, a method similar to the method described with respect to signaling flow 200 may be used to determine the destination RUs for the more than one client.
[0021] As briefly explained above, the AP 110 determines a destination RU for the client 130 based on a plurality of channel qualities of the plurality of RUs 120 for the client 130. The plurality of RUs 120 are configured to be available for communication with the multiple clients 130 to which the client 130 belongs. As mentioned above, each RU 120 comprises a group of subcarriers. The channel quality of the RU 120 can be determined as the channel quality of the weakest subcarrier of the group of subcarriers included in the RU.
[0022] There are a variety of ways to determine the plurality of channel qualities. In some implementations, transmissions such as non-beamformed transmissions 205 / 210 may be performed between the AP 110 and the client 130 prior to RU assignment. These prior RU assignment transmissions may be referred to as historical transmissions performed by the client 130 using the plurality of RUs 120. The client 130 may determine a variety of channel qualities, such as received signal strength (RSSI) or signal-to-noise ratio (SNR) indications of the plurality of RUs 120 based on these historical transmissions.
[0023] Thereafter, the client 130 may transmit (220) information indicating the plurality of channel qualities to the AP 110. The information may be transmitted to the AP 110, for example, via the physical layer (PHY). In response to receiving 225 the information, such as receiver PHY descriptors / registers, from the client 130, the AP 110 then determines 250 the plurality of channel qualities of the plurality of RUs 120 for the client 130. This type of channel quality determination passively collects the RSSI bitmap from uplink non-beamforming frames.
[0024] Alternatively, in some implementations, the AP 110 may actively poll the client 130. Specifically, the AP 110 may send a trigger frame 230 to the client 130 in the signaling flow 200 using the plurality of RUs 120. In response to receiving 235 the trigger frame from the AP 110, the client 130 may send a response frame 240 to the trigger frame to the AP 110 using the plurality of RUs. The response frame may, for example, be a full-bandwidth single-user (SU) frame, e.g., 20 MHz.
[0025] After receiving 245 the response frame, the AP 110 250 determines the plurality of channel qualities based on the response frame. For example, during reception 245 of the response frame, the AP 110 may determine a power distribution across the plurality of RUs. Then, the AP 110 250 determines the plurality of channel qualities based on the power distribution.
[0026] Specifically, the AP 110 can acquire full-bandwidth Fast Fourier Transmission (FFT) data of the response frame, such as the SU frame. The FFT (frequency domain) data can indicate the energy distribution between each subcarrier. The RSSI of each subcarrier can be calculated as the square root of I and Q (i.e., sqrt(I, Q)). I and Q refer to the real and imaginary parts of the FFT data, respectively. For each RU 120, the AP 110 can determine the RSSI of the weakest subcarrier as the channel quality for the RU 120.
[0027] As described above, there are a variety of ways to determine the plurality of channel qualities 250. In some implementations, the AP 110 may periodically determine the plurality of channel qualities 250. In this way, the AP 110 may update the plurality of channel qualities for a moving client 130.
[0028] After determining 250 of the plurality of channel qualities, the AP 110 265 determines a target RU for the client 130 based at least in part on the plurality of channel qualities. In some implementations, the AP 110 265 may determine a target RU for the client 130 from the plurality of RUs 120 based on comparisons between the plurality of RUs and a threshold quality set for the client 130. For example, the threshold quality set for the client 130 may be determined based on an average channel quality of the plurality of channel qualities.
[0029] Fig. 3 shows an example diagram 300 illustrating the channel quality across various subcarriers for the client 130. An average channel quality 310, such as the average SNR, may be calculated. In some examples, the threshold quality may be set as the average channel quality 310. Alternatively, in some examples, the threshold quality may be set around the average channel quality, for example, by subtracting a predefined offset value from the average channel quality 310, as represented by the channel quality 320. It should be noted that the threshold quality may be adjusted depending on the application, and the scope of the present disclosure is not limited in this regard.
[0030] Subcarriers in groups 330 and 340 with channel qualities below channel quality 320 (i.e., the threshold quality) may be designated as bad subcarriers for client 130. RUs containing one or more bad subcarriers may be designated as bad RUs for client 130. AP 110 does not determine a bad RU for client 130 based on the comparisons between the plurality of RUs and a threshold quality established for client 130. Instead, AP 110 may designate a good RU whose subcarriers have channel qualities that exceed the threshold quality as the target RU for client 130.
[0031] In some implementations, the AP 110 265 determines a target RU for the client 130 with a channel quality that exceeds the threshold quality and a frequency bandwidth that corresponds to a threshold frequency bandwidth. Alternatively, the AP 110 265 determines a target RU for the client 130 with a channel quality that exceeds the threshold quality and a frequency bandwidth that corresponds to or exceeds the threshold frequency bandwidth. The term "frequency bandwidth" may also be referred to as "frequency width," "bandwidth," or "width." In some implementations, the threshold frequency bandwidth may be predefined or preconfigured by the AP 110.
[0032] Alternatively, in some implementations, the client 130 may transmit 255 information about an RU size request to the AP 110, for example, via the PHY. The RU size request indicates the threshold frequency bandwidth required by the client 130. For example, the RU size request may be RU 52, which indicates a threshold frequency bandwidth of 4 MHz. Another example is RU 26, which indicates a threshold frequency bandwidth of 2 MHz. The threshold frequency bandwidth may be determined depending on the application, and the scope of the present disclosure is not limited in this regard.
[0033] In some implementations, in accordance with determining that a single RU from the plurality of RUs 120 has a channel quality that exceeds the quality threshold, the AP 110 may determine that the single RU is the target RU for the client 130. In the event that there is no RU with a channel quality that exceeds the threshold quality, the AP 110 may optionally select an RU with a channel quality around the threshold quality (or slightly less than the threshold quality) as the target RU for the client 130.
[0034] Additionally or alternatively, in accordance with determining that more than one client RU from the plurality of RUs 120 has a channel quality that exceeds the quality threshold, the AP 110 may determine a candidate RU set for the client 130 from the more than one RU. The candidate RU set includes at least one RU. The AP 110 may then select a candidate RU from the candidate RU set as the target RU for the client 130.
[0035] In some implementations, when determining the candidate RU set, the AP 110 may select at least one of the more than one RU with a frequency bandwidth equal to or greater than a threshold frequency bandwidth to form the candidate RU set. As described above, the frequency bandwidth may be predefined or preconfigured by the AP 110 or specified by the client 130.
[0036] After determining the candidate RU set, the AP 110 may determine the number of candidate clients for each RU in the candidate RU set. The respective channel quality of the RU for a candidate client exceeds a threshold quality specified for the candidate client. In some implementations, the threshold quality for each candidate client may be collectively set to the average channel quality for all candidate clients. Otherwise, the threshold quality for each candidate client may be individually set to the average channel quality for the candidate client. The AP 110 may select a particular RU with the fewest number of candidate clients as the target RU for the client 130. That is, the number of candidate clients for the particular RU is less than or equal to the number of candidate clients n for other RUs in the candidate RU set.
[0037] After determining 265 the destination RU for client 130, AP 110 270 may send a subsequent transmission to client 130 using the destination RU. Information about the RU assignment for client 130 may be included in the physical header of OFDMA frames. Client 130 may receive the transmission from the AP using destination RU 275.
[0038] Additionally or alternatively, the AP 110 may transmit information about the target RU to the client 130. For example, the AP 110 may transmit a trigger frame 280 containing the indication information to the client 130. After receiving 285 the indication, the client 130 may send a subsequent transmission to the AP 110 with the target RU. The AP 110 may then receive 295 this transmission from the client 130. It is understood that one or more subsequent transmissions may be performed between the AP 110 and the client 130 using the target RU.
[0039] As previously mentioned, the AP 110 may periodically determine the plurality of channel qualities for the client 130. Similarly, the AP 110 may also periodically determine the destination RU for the client 130.
[0040] Fig. 4 shows an example diagram illustrating the RU allocation 400 for the client 130 during a specific time period. As in Fig. 4, the AP 110 groups subcarriers in a full-bandwidth channel into a plurality of RUs 120 (e.g., RUs 120-1, 120-2, 120-3, ..., 120-M). For example, a group of subcarriers with the highest frequencies may be grouped into an RU 120-1, a group of subcarriers with the second-highest frequencies into an RU 120-2, a group of subcarriers with the third-highest frequencies into an RU 120-3, and so on. Then, a group of subcarriers with the lowest frequencies may be grouped into an RU 120-M. The AP 110 may periodically assign the plurality of RUs 120 to the client 130. The RU assignment period may be predefined by the AP 110 or dynamically adjusted during communication with the client 130. The client 130 may perform the transmission with the AP 110 using the periodically assigned RU.
[0041] As in Fig. 4, the AP 110 can assign different RUs 120 to the client 130 at different times. Using the example of the client 130-1, the client 130-1 is assigned different RUs 120 in the first and second time periods (ie, at T1 and T2 in Fig. 2) RU 120-2 is assigned for transmission with AP 110. Similarly, in other time periods, client 130-1 is assigned various RUs such as RU 120-1 (at T6), RU 120-3 (at T5), RU 120-M (at T4), and another RU (at T3) for transmission with AP 110. It goes without saying that Fig. 4 is for illustrative purposes only and does not imply any limitations.
[0042] This allows the access point to periodically assign a target RU with good channel quality to a moving client. This can ensure the reliability and performance of transmissions between the AP and the client, even when the client is constantly moving.
[0043] By determining a destination RU with good channel quality for the client, the client can avoid using a poor RU for transmission. When determining the destination RU, the AP can prefer a flat RU over an RU with higher variance (which may have a lower weakest subcarrier). Therefore, the present RU assignment can also be called flat RU assignment for selective fading. With the help of flat RU assignment for selective fading, the influence of selective fading is mitigated and the reliability and performance of transmissions such as OFDMA transmissions between the AP and the client is improved. It can also improve radio frequency discrimination between different clients and also brings competitive advantages.
[0044] Several example implementations for assigning a target RU for a client have been described above in relation to the Fig. 2-4. Further example implementations for assigning a plurality of RUs to a plurality of clients based on channel qualities are discussed in the following Fig. described.
[0045] Fig. 5 shows a flowchart of a method 500 for assigning the plurality of RUs 120 to the plurality of clients 130 according to some example implementations of the present disclosure. For purposes of discussion, the method 500 will be described with reference to Fig. 1 to discuss example implementations of RU assignment between the plurality of RUs 120 and the plurality of clients 130 connected to the AP 110. The method 500 may be performed by the AP 110 according to the implementations described herein.
[0046] Although only some blocks of the method 500 are illustrated, the method 500 may include other acts described herein. Although the method 500 is illustrated and described as a series of acts performed in a particular order, it should be understood and appreciated that the method is not limited by the order of sequence. For example, some acts may occur in a different order than that described herein. Furthermore, an act may occur concurrently with another act. Furthermore, in some cases, not all acts are required to perform the method described herein.
[0047] Some implementations regarding the assignment of a target RU for a client have been discussed with reference to Fig. 2. In contrast, method 500 uses a more complex process for allocating a plurality of RUs to a plurality of clients. Method 500 considers the channel qualities of each client using each RU and can thus ensure that each client is assigned an RU with good channel quality.
[0048] At 505, the AP 110 determines, for each client of the plurality of clients 130, a plurality of channel qualities of the plurality of RUs 120 for the client. The AP 110 may Fig. 2 or other suitable methods to determine the multiple channel qualities for each client. For example, a channel quality of an RU for the client may be determined as the RSSI of the weakest subcarrier of the group of subcarriers included in the RU.
[0049] At 510, the AP 110 may classify, for each client, the plurality of RUs into good RUs, bad RUs, and optionally normal RUs based on the plurality of channel qualities. If the channel quality of a particular RU is higher than a threshold quality, such as an average RSSI, or in other words, if the RSSI of all subcarriers of the particular RU is above the average RSSI, then the particular RU is a good RU. If the channel quality of a particular RU is below the threshold quality, such as the average RSSI, or if the RSSI of a portion of the subcarriers of the particular RU is lower than the average RSSI, then the particular RU is a bad RU. If the channel quality of a particular RU is around the threshold quality, such asthe average RSSI or slightly lower than the threshold quality, or in other words, if the RSSI of all subcarriers of the particular RU is around the average RSSI or slightly lower than the average RSSI, then the particular RU is a normal RU. It is understood that the threshold quality can be determined based on similar methods as described above with respect to . Fig. 2 described.
[0050] In some implementations, after grouping the plurality of RUs 120 into different RUs for each client 130, the AP 110 may randomly select a target RU from the good RUs for each client 130. Additionally or alternatively, in some implementations, the AP 110 may perform further operations to determine a target RU for each client 130. The further operations may include the following, in Fig. 5 operations, which are described in more detail below.
[0051] At 515, for each RU of the plurality of RUs 120 available for communication with the plurality of clients 130, the AP 110 may calculate an RU rating for each client 130 based on a channel quality of the RU for the client 130 and a frequency bandwidth of the RU. For example, a higher channel quality corresponds to a higher RU rating. Similarly, a larger frequency bandwidth corresponds to a higher RU rating. The RU rating may be determined simply by multiplying the channel quality and the frequency bandwidth or by other suitable methods. Table 1 shows an example table of RU ratings for each client and for each RU. Table 1 RU points table RU Größe RU 0 RU 1 RU 2 Durchschnitt Client 1 1 10 8 8 8.7 Client 2 1 7 3 6 5.3 Client 3 1 4 3 6 4.3 Client 21 14 20
[0052] Table 1 shows a client's RU rating for a specific RU. For example, client 1's RU rating for RU 1 is 8. Table 1 also shows an RU size requested by the client or predefined by the AP. The RU size can represent a threshold frequency bandwidth. The AP can assign an RU to the client based, in part, on the threshold frequency bandwidth. For example, the AP can assign an RU with a frequency bandwidth that equals or, optionally, exceeds the threshold frequency bandwidth for the client. For example, an RU size with a value of 1 represents RU 26 with a frequency bandwidth of 2 MHz, an RU size with a value of 2 (not shown) represents RU 52 with a frequency bandwidth of 4 MHz, and so on. The "Average" column in Table 1 also shows the average channel quality value (e.g.,The average RSSI value across all subcarriers can be used as a quality threshold for the client. A lower average value indicates a more distant client.
[0053] The AP 110 can determine whether an RU is a good RU for the client based on the delta between the RU rating and the average rating. For example, RU 0 is a good RU for Client 2 because the delta between the RU rating of 7 and the average rating of 5.3 (which is 1.7) is greater than 0. Another example: RU 1 is a bad RU for Client 2 because the delta between the RU rating of 3 and the average rating of 5.3 (which is -2.3) is less than 0. Another example: RU 0 is a normal RU for Client 3 because the delta between the RU rating of 4 and the average of 4.3 (which is -0.3) is around 0.
[0054] Thereafter, at 520, the AP 110 may determine a list of candidate clients for each RU. A potential candidate client (also referred to as a "good candidate client") has an RU rating for the RU that is higher than the average rating for the client. For example, in the example of Table 1, the list of candidate clients for RU 0 may include Client 1 and Client 2. Similarly, the list of candidate clients for RU 1 may include Client 1, and for RU 2, the list of candidate clients may include Client 1 and Client 3. Additionally or alternatively, a client whose RU rating for the RU is around the average rating for the client may be considered a normal candidate. Subsequently, the list of candidate clients for each RU may be expanded. For example, RU 0 has one more normal candidate client, i.e., Client 3, and RU 2 has one more normal candidate client, i.e., Client 2.
[0055] At block 525, the AP 110 may sort the plurality of RUs in descending order of the number of candidate clients in the candidate client lists for the plurality of RUs. In the example of Table 1, the number of candidate clients for the plurality of RUs may be represented in Table 2 below. Table 2: Candidate client numbers for the RUs RU Größe RU 0 RU 1 RU 2 Durchschnitt Client 1 1 10 8 8 8.7 Client 2 1 7 3 6 5.3 Client 3 1 4 3 6 4.3 Summe. 21 14 20 Kandidat Nr. (gut + normal) 2+1 1 2+1
[0056] As shown in Table 2, RU 0 has 2 good candidate clients and 1 normal candidate client; RU 1 has only 1 good candidate client, while RU 2 has 2 good candidate clients and 1 normal candidate client. Then, the AP 110 can sort the plurality of RUs to be {RU 1; RU 0; RU 2} or {RU 1; RU 2; RU 0}.
[0057] In block 530, the AP 110 may select the first RU from the sorted RU list. In the example of Table 2, the first RU is RU 1. Next, in block 535, the AP 110 may assign the first RU to a specific candidate client of the first RU. The first RU has the highest RU rating for the respective candidate client. That is, the AP 110 may assign RU 1 to a specific candidate client of RU 1. As shown in Table 2, RU 1 has only one good candidate client, namely Client 1. In this case, the AP 110 may assign RU 1 to Client 1.
[0058] Then, in block 540, the AP 110 may remove the particular candidate client from the candidate client lists for other RUs. Also in the example of Table 1 and Table 2, the updated candidate client list of RU 0 includes a good candidate client (Client 2) and a normal candidate client (Client 3), while the updated candidate client list of RU 2 includes a good candidate client (Client 3) and a normal candidate client (Client 2).
[0059] In block 545, the AP 110 may determine if the sorted RU list includes a next RU. If it is determined that there is a next RU, the method 500 may proceed to block 550. In block 550, the AP 110 may assign the next RU to a candidate client of the next RU. The next RU has the highest RU rating for the candidate client. Since RU 0 and RU 2 have the same number of candidate clients, the AP 110 may randomly select a next RU, e.g., RU 0. For RU 0, there is one good candidate client (i.e., Client 2) with an RU rating of 7 and one normal candidate client (i.e., Client 3) with an RU rating of 4. Then, the AP 110 may assign RU 0 to Client 2 because RU 0 has the highest RU rating for Client 2.
[0060] In block 555, the AP may remove the candidate client from the candidate client lists for other RUs. For example, AP 110 may remove Client 2 from the candidate client list for RU 2. After that, the candidate client list for RU 2 contains only one good candidate client, Client 3. After block 555, the method 500 returns to block 545.
[0061] Similarly, AP 110 may repeat blocks 545, 550, and 555 for RU 2. That is, AP 110 may determine that a next RU is RU 2, assign RU 2 to Client 3, and remove Client 3 from the candidate client lists for other RUs. In some examples, if RU 2 has no good candidate clients but only normal ones, AP 110 may assign RU 2 to the normal candidate client with the highest RU rating.
[0062] If it is determined in block 545 that there is no next RU, the method 500 continues with block 560. In block 560, the method 500 ends. That is, the AP 110 completes the assignment of RUs to the plurality of clients 130. Finally, in the example of Table 1 and Table 2, RU 1 is assigned to client 1, RU 0 is assigned to client 2, and RU 2 is assigned to client 3. In this example, all clients receive good RUs.
[0063] It is understood that method 500 may be performed at regular intervals. Periodic execution of method 500 can ensure that mobile clients can also be assigned a good or normal RU.
[0064] In some example implementations, if the AP 110 cannot assign a good or normal RU to each client by performing the above processes 530-555 once, it may start the next round of processes 530-555. In the next round, the AP 110 may not always select the best candidate RU, but may also consider the second- or third-best candidate RU. For example, in the first round, the AP may select {1 st , 1 st , 1 st , x} candidate clients for {RU 0, RU 1, RU 2, RU 3} and finally find no good or normal candidate client for RU 3. The AP 110 may perform a second round. In the second round, the AP 110 may select {1 st , 1 st , 2 nd, x} candidate clients for these RUs. If still no good or normal candidate client is found for RU 3, the AP 110 can perform another round. Finally, in round N, the AP 110 may succeed in finding {1 st , 1 st , 3 rd , 2 nd} candidate clients for {RU 0, RU 1, RU 2, RU 3}. In round N, each RU is assigned a good or normal candidate, then the process terminates.
[0065] By sorting a large number of RUs in descending order of the number of candidate clients and then assigning the RUs to each client, the complexity of the calculations is reduced and computational resources are saved. Without sorting and individual assignment, the RU assignments require a large number of calculations. In contrast, the computational effort using the above methods is ∏1n(NCi−(n−1)), where n is the total number of RUs and NC i for the number of candidate clients for the i-th RU among the total n RUs.
[0066] It should be understood that Table 1 and Table 2 are for illustrative purposes only and do not imply any limitations. The AP 110 can assign any number of RUs to any number of clients. In some implementations, the AP 110 can determine a portion of the channel qualities for the clients and for the RUs. The AP 110 can use a portion of the channel qualities to avoid assigning a poor RU to a client. The more information about the channel qualities available to the AP 110, the better it can perform RU assignment. In some corner cases, the AP 110 may not be able to guarantee a good / normal RU to all clients. In this case, the AP 110 may exclude the client with the lowest score (i.e., with low frequency bandwidth and low RSSI). The AP 110 can then attempt to assign a good RU to the client in subsequent periods.
[0067] For simplicity, in the example in Table 1, each client is assigned an RU of 26. In some example implementations, different RU sizes or frequency bandwidths may be required for each client. For example, if Client 1 and Client 2 are assigned RU of 52, and Client 3 is assigned RU of 26, the assignment process is similar and somewhat more complex. Specifically, the AP 110 may determine two tables, one per RU of 26 (similar to Table 1), and another per RU of 52 (similar to Table 1, but the RU size may be represented by the value 2). Then, the AP 110 may begin assigning RUs to the clients requesting the largest RU size. In this example, the AP 110 may begin by assigning RUs to Client 1 and Client 2, using a procedure similar to the one described above.After Client 1 and Client 2 are both assigned a good or normal RU, AP 110 can assign RUs to clients requesting a smaller RU size. In this example, AP 110 can assign the RU for Client 3, which requests an RU of 26.
[0068] Fig. 6 shows an example RU assignment 600 for the multiple clients 130 according to some examples of the present disclosure. For purposes of discussion, the example RU assignment 600 is described with reference to Fig. 1. After performing the RU assignment, e.g., using method 500 for the plurality of clients 130, the AP 110 may designate RU 120-1 as the destination RU for client 130-1, designate RU 120-M as the destination RU for client 130-2, ..., and designate RU 120-2 as the destination RU for client 130-N. Then, the AP 110 may send a subsequent transmission to client 130 using the corresponding destination RU 120. In addition, the AP 110 may transmit indication information 610-1, 610-2, ..., and 610-N to clients 130-1, 130-2, ..., and 130-N. The indication information 610-1, 610-2, ..., and 610-N may be collectively referred to as "indication information 610" or individually as "indication information 610." The indication information 610 may indicate the destination RU for each client 130. After receiving the indication information 610, the client 130 may send a follow-up transmission to the AP 110 using the destination RU indicated by the indication information 610.One or more subsequent transfers may be performed between the AP 110 and the client 130 using the corresponding destination RU 120.
[0069] Through the Fig. With the RU assignment described in sections 5-6, the AP can assign the RU to the correct subcarriers based on each client's perspective and frequency preference. Through the overall assignment, it can ensure that each client is assigned an RU with good or normal channel quality. This means that a client can be prevented from being assigned a poor RU, thus avoiding potential transmission errors. Such scientifically sound and reasonable assignment can ensure better resource utilization.
[0070] Assigning multiple RUs to multiple clients also eliminates the need for clients to compete for a single RU for transmission. In cases where each client has multiple options, the process can fully consider the channel qualities of each client and ultimately find an allocation option that ensures transmission performance for each client. This win-win allocation improves system performance and reliability.
[0071] Fig. 7 shows a flowchart of a method 700 in accordance with some example implementations of the present disclosure. The method 700 may be performed by the AP 110 according to the implementations described herein. While only some blocks are shown in the method 700, the method 700 may include other operations described herein.
[0072] At 710, the AP 110 determines a plurality of channel qualities of a plurality of RUs for a client. The plurality of RUs are configured to be available for communication with multiple clients, including the client. In some example implementations, in determining the plurality of channel qualities, the AP 110 may receive information indicative of the plurality of channel qualities from the client, where the channel quality information is determined based on historical transmissions performed by the client using the plurality of RUs.In some example implementations, in determining the multiple channel qualities, the AP 110 may transmit a trigger frame to the client using the multiple RUs; detect a power distribution across the multiple RUs while receiving a response frame to the trigger frame transmitted from the client using the multiple RUs; and determine the multiple channel qualities based on the power distribution across the multiple RUs.
[0073] At 720, the AP 110 determines a target RU for the client from the plurality of RUs based at least in part on the plurality of channel qualities. In some example implementations, in determining a target RU for the client from the plurality of RUs, the AP 110 may determine a target RU for the client based on comparisons between the plurality of channel qualities and a threshold quality specified for the client. The target RU is to be used by the AP to perform a transmission with the AP 110. In some example implementations, the threshold quality is determined based on an average channel quality from the plurality of channel qualities.
[0074] In some example implementations, the AP 110 may communicate to the client advertisement information that indicates the destination RU to be used by the client to transmit a subsequent transmission to the AP 110.
[0075] In some example implementations, when determining the target RU for the client based on the comparisons corresponding to a determination that a single RU from the plurality of RUs has a channel quality that exceeds the threshold quality, the AP 110 may designate the single RU as the target RU for the client. In some example implementations, when determining the target RU for the client based on the comparisons corresponding to a determination that more than one RU from the plurality of RUs has a channel quality that exceeds the threshold quality, the AP 110 may designate a candidate RU set for the client from the more than one RU whose channel quality exceeds the threshold quality, the candidate RU set including at least one RU, and select one candidate RU from the candidate RU set as the target RU for the client.
[0076] In some example implementations, when determining the candidate RU set, the AP 110 may select at least one of the more than one RU with a frequency bandwidth equal to or exceeding a threshold frequency bandwidth to form the candidate RU set. In some example implementations, the AP 110 may also receive information from the client regarding an RU size request, where the RU size request indicates the threshold frequency bandwidth.In some example implementations, in selecting the target RU from the candidate RU set, the AP 110 may determine the number of candidate clients for each RU in the candidate RU set, where a corresponding channel quality of the RU for a candidate client exceeds a threshold quality specified for the candidate client; and in accordance with a determination that the number of candidate clients for a particular RU in the set of RUs is less than or equal to the number of candidate clients for other RUs in the candidate RU set, the AP 110 may select the particular RU as the target RU for the client.
[0077] Fig. 8 shows a flowchart of a method 800 in accordance with some example implementations of the present disclosure. The method 800 may be performed by the client 130 according to the implementations described herein. Although only some blocks of the method 800 are illustrated, the method 800 may also include other operations described herein.
[0078] At 810, the client 130 performs transmissions with an AP using a plurality of RUs. The plurality of RUs are configured to be available for communication with multiple clients to which the client 130 belongs. In some example implementations, in performing the transmissions, the client 130 may transmit a response frame to a trigger frame using the plurality of RUs in response to receiving the trigger frame from the AP using the plurality of RUs.
[0079] At 820, the client 130 receives indication information from the AP indicating a target RU from the plurality of RUs for the client 130. In some example implementations, the target RU has a channel quality that exceeds a threshold quality. The threshold quality is determined based on an average of a plurality of channel qualities of the plurality of RUs for the client. In some example implementations, the target RU has a frequency bandwidth equal to or greater than a threshold frequency bandwidth.
[0080] In block 830, the client performs a subsequent transmission with the AP using the destination RU.
[0081] In some example implementations, the client 130 may also transmit information about an RU size request to the AP. The RU size request specifies the threshold frequency bandwidth.
[0082] In some example implementations, the client 130 may further determine a plurality of channel qualities of the plurality of RUs based on the transmissions performed by the client using the plurality of RUs and transmit information indicative of the plurality of channel qualities to the AP.
[0083] Fig. Figure 9 shows a block diagram of an example device 900 in accordance with some embodiments of the present disclosure. The device 900 includes at least one processor 910 and a memory 920 coupled to the at least one processor 910. The memory 920 stores instructions that cause the at least one processor 910 to perform acts of a method.
[0084] As in Fig. As shown in Figure 9, memory 920 stores instructions 922 for determining a plurality of channel qualities of a plurality of RUs for a client. The plurality of RUs are configured to be available for communication with multiple clients to which the client belongs.
[0085] In some example implementations, instructions 922 for determining the multiple channel qualities of the plurality of RUs for the client include instructions for receiving information indicating the multiple channel qualities from the client. The channel quality information is determined based on historical transmissions performed by the client using the plurality of RUs.
[0086] In some example implementations, instructions 922 for determining the multiple channel qualities of the multiple RUs for the client include instructions to, in determining the multiple channel qualities, transmit a trigger frame to the client using the multiple RUs; detect a power distribution across the multiple RUs during receipt of a response frame to the trigger frame transmitted by the client using the multiple RUs; and determine the multiple channel qualities based on the power distribution across the multiple RUs.
[0087] Memory 920 further stores instructions 924 to determine a target RU for the client from the plurality of RUs based at least in part on the plurality of channel qualities. In some example implementations, instructions 924 to determine the target RU include instructions to determine a target RU for the client from the plurality of RUs based on comparisons between the plurality of channel qualities and a threshold quality specified for the client. The target RU is to be used by the client for a subsequent transmission with device 900.
[0088] In some example implementations, memory 920 further stores instructions for transmitting indication information to the client that specifies the destination RU to be used by the client to transmit a subsequent transmission to device 900.
[0089] In some example implementations, the threshold quality is determined based on an average channel quality of the multiple channel qualities.
[0090] In some example implementations, the instructions for determining the target RUs based on the comparisons include instructions for determining the individual RU as a target RU for the client in accordance with a determination that an individual RU of the plurality of RUs has a channel quality that exceeds the threshold quality. In some example implementations, the instructions for determining the target RU based on the comparisons include instructions for determining a candidate RU set for the client from the more than one RU whose channel quality exceeds the threshold quality, the candidate RU set including at least one RU, and selecting one candidate RU from the candidate RU set as a target RU for the client in accordance with a determination that more than one RU of the plurality of RUs has a channel quality that exceeds the threshold quality.
[0091] In some example implementations, the instructions for determining the candidate RU set include instructions for selecting at least one of the more than one RUs with a frequency bandwidth equal to or greater than a threshold frequency bandwidth to form the candidate RU set. In some example implementations, memory 920 further stores instructions for receiving information related to an RU size request from the client, where the RU size request specifies the threshold frequency bandwidth.In some example implementations, the instructions for selecting the target RUs from the candidate RU set include instructions for determining the number of candidate clients for each RU in the candidate RU set, wherein a respective channel quality of the RU for a candidate client exceeds a threshold quality specified for the candidate client; and in accordance with a determination that the number of candidate clients for a particular RU in the group of RUs is less than or equal to the number of candidate clients for other RUs in the candidate RU set, selecting the particular RU as the target RU for the client.
[0092] Fig. Figure 10 shows a block diagram of an example device 1000 in accordance with some example implementations of the present disclosure. The device 1000 includes at least one processor 1010 and a memory 1020 coupled to the at least one processor 1010. The memory 1020 stores instructions that cause the at least one processor 1010 to perform acts of a method.
[0093] As in Fig. 10, memory 1020 stores instructions 1022 for performing transmissions with an AP using a plurality of RUs. The plurality of RUs are configured to be available for communication with multiple clients comprising device 1000. In some example implementations, instructions 1022 for performing transmissions include instructions for transmitting a response frame to a trigger frame to the AP using the plurality of RUs in response to receiving the trigger frame from the AP using the plurality of RUs.
[0094] Memory 1020 further stores instructions 1024 to receive indication information from the AP indicating a target RU from the plurality of RUs to device 1000. In some example implementations, the target RU has a channel quality that exceeds a threshold quality. The threshold quality is determined based on an average of a plurality of channel qualities of the plurality of RUs for the client. In some example implementations, the target RU has a frequency bandwidth equal to or greater than a threshold frequency bandwidth.
[0095] Also stored in memory 1020 are instructions 1026 for performing a subsequent transmission with the AP using the target RU.
[0096] In some example implementations, memory 1020 further stores instructions for transmitting information to the AP related to an RU size request. The RU size request specifies the threshold frequency bandwidth.
[0097] In some example implementations, memory 1020 further stores instructions to determine a plurality of channel qualities of the plurality of RUs based on the transmissions performed by device 1000 using the plurality of RUs and to transmit information indicative of the plurality of channel qualities to the AP.
[0098] The present disclosure also provides at least one computer program product stored on a non-transitory, computer-readable storage medium. The computer program product includes program code or instructions executable to perform the method described above with reference to Fig. 7 and / or the method described above with reference to Fig. 8 described procedures.
[0099] While the above discussion used a Wi-Fi communication standard as an illustrative example, other implementations may use a variety of communication standards and, more generally, wireless communication technologies. Furthermore, while some of the operations in the preceding implementations were implemented in hardware or software, in general, the operations in the preceding implementations may be implemented in a wide variety of configurations and architectures. Therefore, some or all of the operations in the preceding implementations may be performed in hardware, software, or both.
[0100] It should be noted that specific terms disclosed in the present disclosure are suggested for ease of description and better understanding of example implementations of the present disclosure, and the use of these specific terms may be changed to another format within the technical scope or spirit of the present disclosure.
[0101] 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 code 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.
[0102] In the context of this disclosure, a computer-readable medium may be any tangible medium capable of containing or storing a program for use by or in connection with an instruction execution system, apparatus, or device. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. A computer-readable medium may be, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing.More specific examples of a computer-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.
[0103] 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 operations presented must be performed to achieve the desired results. Multitasking and parallel processing may be advantageous under certain circumstances. Certain features described in connection with separate implementations may also be implemented in combination in a single implementation. Conversely, various features described in connection with a single implementation may also be implemented in multiple implementations, separately or in any suitable subcombination.
[0104] 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] A process comprising: Determining, at an access point (AP) (110), a plurality of channel qualities of a plurality of resource units (RUs) (120) for a client, wherein the plurality of RUs (120) are configured to be available for communication with a plurality of clients (130) comprising the client; and Determining a target RU for the client from the plurality of RUs (120) based on comparisons between the plurality of channel qualities and a threshold quality specified for the client by: in accordance with a determination that more than one RU of the plurality of RUs (120) has a channel quality that exceeds the threshold quality, determining a candidate RU set for the client from the more than one RU whose channel quality exceeds the threshold quality, the candidate RU set comprising at least one RU, and Selecting a candidate RU from the candidate RU set as a target RU for the client by determining a number of candidate clients for each RU in the candidate RU set, wherein the respective channel quality of the RU for a candidate client exceeds a threshold quality specified for the candidate client; and in accordance with a determination that the number of candidate clients for a particular RU in the candidate RU set is less than or equal to the number of candidate clients for other RUs in the candidate RU set, selecting the particular RU as the target RU for the client; where the destination RU is to be used by the client for a subsequent transmission with the AP (110). [2] The method of claim 1, wherein the threshold quality is determined based on an average channel quality of the plurality of channel qualities. [3] The method of claim 1, wherein determining the target RU for the client based on the comparisons comprises: in accordance with a determination that an individual RU of the plurality of RUs (120) has a channel quality that exceeds the threshold quality, designating the individual RU as a target RU for the client. [4] The method of claim 1, wherein determining the candidate RU set comprises: Selecting at least one of the plurality of RUs having a frequency bandwidth equal to or greater than a threshold frequency bandwidth to form the candidate RU set. [5] The method of claim 4, further comprising: Receiving information from the client related to an RU size request, where the RU size request specifies the threshold frequency bandwidth. [6] The method of claim 1, wherein determining the plurality of channel qualities comprises: Receiving information from the client indicative of the plurality of channel qualities, wherein channel quality information is determined based on historical transmissions performed by the client using the plurality of RUs (120). [7] The method of claim 1, wherein determining the plurality of channel qualities comprises: transmitting a trigger frame to the client using the plurality of RUs (120); detecting a power distribution across the plurality of RUs (120) during reception of a response frame to the trigger frame transmitted by the client using the plurality of RUs (120), and Determining the plurality of channel qualities based on the power distribution across the plurality of RUs (120). [8] The method of claim 1, further comprising: Transmitting indication information (610) to the client indicating the destination RU to be used by the client to transmit a subsequent transmission to the AP (110). [9] The method of claim 1, wherein the plurality of RUs (120) comprises a group of subcarriers. [10] The method of claim 1, wherein the AP (110) regularly determines at least one of the plurality of channel qualities and the target RU. [11] A method (800) comprising: Performing (810) transmissions with an access point (AP) (110) at a client using a plurality of resource units (RUs) (120), the plurality of RUs (120) configured to be available for communication with a plurality of clients (130) comprising the client; Receiving (820), from the AP (110), indication information (610) indicating a target RU from the plurality of RUs (120) for the client based on comparisons between the plurality of channel qualities and a threshold quality specified for the client; wherein, in accordance with a determination that more than one RU of the plurality of RUs (120) has a channel quality that exceeds the threshold quality, a candidate RU set is determined for the client from the more than one RU whose channel quality exceeds the threshold quality, the candidate RU set comprising at least one RU, wherein a candidate RU from the candidate RU set is selected as the target RU for the client by determining a number of candidate clients for each RU in the candidate RU set, wherein the respective channel quality of the RU for a candidate client exceeds a threshold quality specified for the candidate client; and wherein, in accordance with a determination that the number of candidate clients for a particular RU in the candidate RU set is less than or equal to the number of candidate clients for other RUs in the candidate RU set, the particular RU is selected as the target RU for the client; and Performing (830) a subsequent transmission with the AP (110) using the target RU. [12] The method (800) of claim 11, wherein the target RU has a channel quality that exceeds a threshold quality, and wherein the threshold quality is determined based on an average of a plurality of channel qualities of the plurality of RUs (120) for the client. [13] The method (800) of claim 11, wherein the target RU has a frequency bandwidth equal to or greater than a threshold frequency bandwidth. [14] The method (800) of claim 11, further comprising: Transmitting information regarding an RU size request to the AP (110), wherein the RU size request indicates the threshold frequency bandwidth, where the target RU has a frequency bandwidth equal to or greater than the frequency bandwidth. [15] The method (800) of claim 11, further comprising: Determining a plurality of channel qualities of the plurality of RUs (120) based on the transmissions performed by the client using the plurality of RUs (120); and Transmitting information indicating the plurality of channel qualities to the AP (110). [16] The method (800) of claim 11, wherein performing the transmissions comprises: in response to receiving a trigger frame from the AP (110) using the plurality of RUs (120), transmitting a response frame to the trigger frame to the AP (110) using the plurality of RUs (120). [17] A communication device comprising: at least one processor; and a memory coupled to the at least one processor, the memory storing instructions that cause the at least one processor to perform actions that include: Determining a plurality of channel qualities of a plurality of resource units (RUs) (120) for a client, wherein the plurality of RUs (120) are configured to be available for communication with the client and at least one other client; and Determining a target RU for the client from the plurality of RUs (120) based on comparisons between the plurality of channel qualities and a threshold quality defined for the client and the at least one other client by: in accordance with a determination that more than one RU of the plurality of RUs (120) has a channel quality that exceeds the threshold quality, determining a candidate RU set for the client and the at least one other client from the more than one RU whose channel quality exceeds the threshold quality, the candidate RU set comprising at least one RU, Selecting a candidate RU from the candidate RU set as a target RU for the client and the at least one other client by determining a number of candidate clients for each RU in the candidate RU set, wherein the respective channel quality of the RU for a candidate client exceeds a threshold quality specified for the candidate client; and in accordance with a determination that the number of candidate clients for a particular RU in the candidate RU set is less than or equal to the number of candidate clients for other RUs in the candidate RU set, selecting the particular RU as a target RU for the client and the at least one other client, wherein the target RU has a channel quality higher than a threshold quality specified for the client and the at least one other client, wherein the target RU is to be used by the client and the at least one other client for a subsequent transmission with the communication device. [18] The communication device of claim 17, wherein the threshold quality is determined based on an average channel quality from the plurality of channel qualities. [19] The communication device of claim 17, wherein the acts further comprise: Receiving information from the client related to an RU size request, where the RU size request specifies a threshold frequency bandwidth. [20] The communication device of claim 17, wherein determining the plurality of channel qualities comprises: transmitting a trigger frame to the client using the plurality of RUs (120); detecting a power distribution across the plurality of RUs (120) during reception of a response frame to the trigger frame sent by the client using the plurality of RUs (120), and Determining the plurality of channel qualities based on the power distribution across the plurality of RUs (120).
Citation Information
Patent Citations
Allocating a Resource Unit to a Station
US20210075580A1