PROFEE: A Probabilistic-Feedback Based Speed Rate Adaption for IEEE 802.11bc

: WiFi is a widely used wireless technology for data transmission. WiFi can also play a crucial role in simultaneously broadcasting content to multiple devices in multimedia transmission for venues such as classrooms, theaters, and stadiums, etc. Broadcasting allows for the efﬁcient dissemination of information to all devices connected to the network, and it becomes crucial to ensure that the WiFi network has sufﬁcient capacity to transmit broadcast multimedia content without interruptions or delays. However, using WiFi for broadcasting presents challenges that can impact user experience, speciﬁcally the difﬁculty of obtaining real-time feedback from potentially hundreds or thousands of users due to potential collisions of feedback messages. This work focuses on providing accurate feedback to the Access Point about the percentage of users not receiving broadcast trafﬁc correctly so it can adjust its Modulation and Coding Scheme (MCS) while transmitting broadcast multimedia content to many users. The proposed method is comprised of two sequential algorithms. In order to reduce the probability of a collision after transmitting each message, an algorithm searches for the best probability value for users to transmit ACK/NACK messages, depending on whether messages are received correctly or not. This feedback allows the Access Point to estimate the number of STAs correctly/incorrectly receiving the messages being transmitted. A second algorithm uses this estimation so the Access Point can select the best MCS while maintaining the percentage of users not receiving broadcast content correctly within acceptable margins, thus providing users with the best possible content quality. We implemented the proposed method in the ns-3 simulator, and the results show it yields quick, reliable feedback to the Access Point that was then able to adjust to the best possible MCS in only a few seconds, regardless of the user density and dimensions of the scenario.


Introduction
A series of requirements are being established for the 802.11bc standard to provide efficient broadcast transmission without interfering with the existing 802.11 family standard.This new standard defines the parameters and functionalities necessary for optimal data dissemination within WiFi networks.The 802.11bc standard seeks to establish the foundations to optimize the transmission of information to multiple recipients simultaneously, such as in scenarios where it is necessary to send entertainment content to many users, for example, in stadiums or concert halls.The ultimate goal is to improve the efficiency and quality of broadcast transmission, maximizing the performance and capacity of the WiFi network without compromising compatibility with the existing 802.11 standards.
Various requirements have been placed on this new standard, described in [1].First, the new 802.11bcmust comply with the Project Authorization Request (PAR) and Criteria for Standards Development (CSD) established for it.It should provide authenticity protection for broadcast data messages.It must support modes of operation in a BSS (Basic Service System) infrastructure with association between the transmitter and receivers and cases without association.It must also include a mechanism to facilitate efficient diffusion in terms of energy consumption.Finally, it should provide a mechanism for the discovery of 11bc-compatible STAs and for the discovery of STAs that consume a specific broadcasting service.
The single most problematic aspect of WiFi broadcast is the inability of the Access Point (AP) to obtain real-time feedback from stations (STAs), as it becomes troublesome for users to send ACKs after receiving each message without causing a collision.Developing efficient and scalable feedback mechanisms from STAs in WiFi broadcast applications has historically been addressed through four distinct approaches.Each of these approaches offers advantages but also entails inevitable trade-offs.The first approach tries to decrease the number of transmitted feedback messages [2,3] but requires previous management among STAs (along with its signaling costs) so they all agree on which STAs can send feedback.The second approach makes the feedback messages collision-resistant [4,5].However, implementing the scheme under this approach requires complex coding or sending the messages through a different communication channel.The third approach decreases the size of the feedback messages [6]; nevertheless, the problem remains as the number of STAs increases, even for small feedback messages.Finally, some approaches transmit broadcast messages into unicast [7][8][9][10].However, such solutions must be properly scaled since it may take a long time to complete the feedback transmission process, depending on the number of receivers.One aspect they all have in common is that they seek to ensure that the ACKs do not collide, thus allowing the AP to obtain feedback from the STAs.
In this work, we propose a method comprised of two sequential algorithms to reduce the collision probability of the feedback messages.Our method is based on the foundation that STAs should not send feedback messages every time after receiving a message correctly/incorrectly from the AP but should transmit ACK/NACK only with a given probability.The first algorithm allows the AP to search for the best probability value for STAs to transmit ACK/NACK messages, depending on the percentage of successfully received feedback messages, collided feedback messages, or no feedback (silences).This feedback allows the AP to estimate the number of STAs receiving messages correctly/incorrectly.In the second algorithm, the AP uses this feedback to adjust the MCS to increase the data rate at the physical layer while keeping the percentage of STAs that do not receive messages correctly within a predefined range.This data rate adaption allows the AP to send better-quality content to a high proportion of the STAs in the venue, thus improving user experience.We tested the proposed method in different scenarios, varying the number of STAs and the venue's dimensions and showing that it provides fast-reliable feedback, allowing the AP to select the best MCS in only a few seconds.The method proposed in this work goes around most of the trade-offs in previous works.Our proposal does not require previous management among STAs or a different channel to send feedback messages, it has no limitations on the number of STAs, and it takes only a few seconds to complete, independent of the size and density of the scenario.An essential distinguishing feature of our proposal is its ability to monitor collisions related to feedback messages, allowing for the estimation of the number of STAs receiving messages accurately or encountering errors.
There are many challenges for next-generation networks to improve communications capabilities.As stated in [11], these shortcomings include spectral efficiency, coverage, interference, security, and privacy.These concerns and those presented in this work contribute to developing next-generation networks that enable high-throughput, low-delay communications.
This work makes the following specific contributions: • We propose a method that quickly finds the best probability value for STAs to send ACK/NACK messages back to the AP.This allows a fast and accurate estimation of the number of STAs receiving messages correctly/incorrectly.• Apart from using the number of ACK/NACK messages received correctly to estimate the number of STAs receiving messages correctly/incorrectly, the algorithm can also perform the very same estimation by counting the number of collisions of feedback messages and even the number of no feedback transmissions (silences) occurring after the transmission of each broadcast message.This technique allows redundancy as it provides the AP with three simultaneous and independent ways to perform the same estimation of STAs receiving messages correctly/incorrectly.

•
We propose a second algorithm that uses the previous estimation to allow for the AP to adapt the MCS to increase the data rate at the physical layer while maintaining the percentage of STAs that do not receive broadcast messages correctly within acceptable limits, thus allowing for higher-quality content to be sent to most STAs, improving user experience.

•
We implemented the complete method in ns-3 under diverse network conditions.We found that it provides quick (only a few seconds on average) and reliable (less than 5% estimation error) feedback, allowing the AP to rapidly adjust the MCS to maximize the users' experience.
The rest of the paper is organized as follows: Section 2 shows the most relevant works in the literature related to WiFi broadcast and how the proposed method sets apart from them.Section 3 presents an algorithm that searches for the best probability of transmitting ACK/NACK messages to estimate the number of STAs receiving messages correctly/incorrectly.Section 4 presents an algorithm that uses this estimation to select the best MCS to increase the speed rate at the physical layer, thus allowing for better-quality content to be sent to users.Section 5 details the implementation of the two algorithms, the conducted experiments, and the obtained results.Next, Section 6 presents a discussion of the findings and drawbacks of the proposed method.Finally, Section 7 presents our conclusions.

Related Work
Inherently, broadcast in the 802.11standards is defined to be implemented without any acknowledgment (ACK) [12].As mentioned, if more than one STA receives the broadcast message correctly, their corresponding ACKs will likely collide in the AP.However, sending no acknowledgment brings up many problems related to the uncertainty of the broadcast mechanism because it is impossible for the AP to know whether broadcast messages are beingreceived correctly.This problem makes it difficult for any rate-adaption algorithms to work properly.A trivial solution for this problem is continuously broadcasting messages with the lowest MCS available.Although this measure ensures that the maximum number of STAs receive broadcast messages correctly, the data rate will be the lowest, which might lead to a degradation in the quality of the broadcast content and the associated poor user experience.
The problem of adapting the data rate has been addressed from four different perspectives in the past.In general terms, the first approach tries to decrease the number of feedback messages, the second approach makes the feedback messages collision-resistant, the third approach decreases the size of the feedback messages, and the last approach turns the broadcast messages into unicast (thus avoiding collisions since unicast ACKs are transmitted at different times).However, one aspect they all have in common is that they seek that the ACKs do not collide, thus allowing the AP to obtain feedback from the receiving STAs.
In the first category, we have solutions to minimize the number of feedback messages sent by receiving STAs.The LBP [2] (Leader Based Protocol) uses the Automatic Repeat Request (ARQ) mechanism with ACK combined with leader-based techniques to minimize the number of sent ACKs, thus increasing the probability of ACK reception.Later, Ref. [3] used probabilistic NACK suppression to decrease the number of sent NACKs.
A second approach tries to decrease the size of the feedback messages to decrease their probability of collision.In [6], the authors explored using ARQ messages combined with virtual ACK bitmaps significantly shorter than the actual ACK/NACK messages.The AP assigns small time slots to each STA in which they will answer with ACK pulses.Although this technique prevents collisions, it assumes that STAs previously received the time distribution correctly.
A third solution makes the ACK/NACK collision-resistant, as in [4].Although this proposal needs extra hardware, it increases the probability that the feedback is received correctly, even if obtained from collisions.Later, HIMAC [5] proposes using Unary Channels to transmit the feedback to overcome collisions.
The last approach is to turn the broadcast messages into individual unicast messages as introduced in the BMW protocol proposed in [7], which was further improved in the BMMM protocol in [8] by grouping the transmissions into a single one and introducing Request for ACK (RAK) messages.Then, the author of [9] proposed an improvement that reduced the number of RAK transmissions.Later, a similar approach in which clients can request the AP to send a multicast stream as unicast was incorporated in the Directed Multicast Service (DMS) of the IEEE 802.11v amendment [10].
Apart from these four general categories, other particular approaches deal with similar problems.One of these approaches overcomes reception errors of multicast messages using the Groupcast with Retries (GCR), adopted in the IEEE 802.11aa amendment [13].Further, [14] combined GCR with the Adaptive Auto Rate Fallback (AARF) method to change the modulation to decrease the Packet Loss Ratio.
More recent solutions, such as the one presented by T. Kanda et al. [15], use the RSSI of unicast ACKs coming from non-eBCS APs and deep reinforcement learning to estimate the eBCS STAs.Their work assumes that the distribution on the eBCS and non-eBCS STAs is the same, which might only sometimes occur.Further, the authors use distributional reinforcement learning in [16] and evaluated their algorithm regarding the data rate of the broadcast messages and the reception success rate at STAs.In [17], the authors proposed MuDRA, a rate adaption algorithm for multicast flows.MuDRA relies on the information of the K STAs with the worst channel conditions, which the AP selects.Once selected, these STAs send their packet delivery ratio after a short random interval to avoid collisions.In order to reach the target rate, the proposed algorithm monitors the number of devices switching from PDR of 100% to 0% to satisfy the maximum permitted number of abnormal devices.Authors in [18] designed and tested AMuSe, a mechanism to broadcast packets to a large group of STAs.AMuSe relies on the cluster formation of adjacent neighbors and feedback from cluster heads.Although this might be a good technique in static scenarios, cluster formation might lead to long delays and lots of overhead in the presence of mobility.AMuSe provides rate adaption provided by MuDRA [17] to transmit at the highest possible bitrate while meeting some constraints.AMuSe is the only proposal verified on a testbed with over 150 STAs [19].
Further, the authors of [20] proposed ATRaCt, a cross-layer rate control for wireless multicast that takes information from the transport layer to modify the data rate of the link layer.The transport layer information is taken using the NORM protocol [3].Also, ATRaCt periodically sends MSRq control messages using the base transmission rate to get statistics that are obtained via MSRp messages.
Table 1 shows a summary of the above literature review, which denotes that most efforts related to feedback acquisition in broadcast services consider feedback from ACKs and/or NACKs in various ways.Other works use RTS/CTS messages to avoid collisions, and many seek the reception of every message from all STAs.Different from all these works, our proposal not only introduces a probability in the transmission of ACK/NACK messages that allows for the estimation of the number of STAs receiving messages correctly/incorrectly but also, from the percentage of both, collisions and absent periods (silence).The latter refers to the scenario in which the AP does not receive an ACK/NACK message in response to the transmission of a broadcast message.In other words, our pro-posal can estimate the number of STAs receiving messages correctly/incorrectly from three different events simultaneously and independently of each other (i.e., successfully received ACK/NACK messages, ACK/NACK collisions, and ACK/NACK silences).The proposed method relies on traditional ACK/NACK transmissions.It requires no additional signaling or hardware to quickly and reliably estimate the percentage of STAs receiving messages correctly/incorrectly at the present MCS, which only takes a few seconds to converge to the actual number of STAs.On top of that, our method can use this estimation to select the best possible MCS while keeping the percentage of STAs that do not receive broadcast transmission under the desired levels.
Table 1.Comparison of the state-of-the-art algorithms (fb: feedback).

Estimation of the Number of STAs Receiving Broadcast Messages Correctly/Incorrectly
This section presents an algorithm that allows for the AP to estimate the number of STAs that are receiving broadcast messages correctly (n ACK ) or incorrectly (n N ACK ).The solution uses probabilistic ACKs/NACKs as feedback from STAs.When an STA correctly decodes the preamble and the corresponding message payload, it sends an ACK to the AP with probability p ACK .Similarly, when an STA correctly decodes the preamble of a message but incorrectly decodes the rest of the payload, it sends a NACK to the AP with probability p N ACK .This scheme is aided by the preambles being always sent using BPSK with a 1/2 coding rate [12] (the lowest MCS) to maximize the probability of preamble reception.STAs know precisely which values of p N ACK and p ACK to use because the AP includes those probabilities within each message it transmits.In this algorithm, the AP performs an active role in selecting the best values of p N ACK and p ACK that will result in the best estimation of n ACK and n N ACK .On the other hand, STAs play a passive role as they simply react to sending feedback messages according to the probabilities included in each message.
To avoid ACK and NACK colliding in the AP after each transmitted message, NACKs are only sent in response to the odd-sequenced AP messages, and ACKs are sent only in response to even-sequenced AP messages.This work assumes no previous association of STAs with the AP, as this is one requirement of the new 802.11bcstandard.This condition makes the problem harder, as the AP does not know the total number of listening STAs and their distribution over the network area.However, in those scenarios in which the number of STAs is known in advance, it will simplify the protocol's operation as it is only necessary to estimate either n ACK or n N ACK to calculate the other.
Figure 1 illustrates the operation of the proposed algorithm with three STAs, where transmitted NACKs and ACKs are represented as red and blue rectangles, respectively.After sending message M 1 , STA 1 and STA 3 received it incorrectly, while STA 2 received it correctly.STA 1 and STA 3 will transmit a NACK with probability p N ACK .In this example, only STA 1 sends the NACK, which is received in the AP.Message M 2 is received correctly by STA 1 and STA 2 , and both transmit an ACK with probability p ACK .In the example, both STAs transmitted an ACK, resulting in a collision in the AP.For message M 3 , none of the three STAs received it correctly, and none transmitted a NACK, resulting in a silence event.
Similarly, message M 4 resulted in a correct reception of one ACK, M 5 resulted in a collision of NACKs, and M 6 resulted in a silence event.To estimate the number of STAs receiving messages correctly/incorrectly, the AP waits for 2 f messages ( f messages for NACKs and f messages for ACKs)-which we call a frameand counts how many of these messages resulted in receiving ACK/NACK messages from only one STA (no collision), received no ACK/NACK feedback (silence), and received multiple ACK/NACK messages from more than one STA (collisions).The AP then counts the number of messages that fall into each of the previous three categories, as shown in Figure 2, where it is possible to see in this example that, for 20% of transmitted messages, the AP could decode a feedback message (i.e., correct feedback), for 50% of the messages no feedback response was received (i.e., silence), and for 30% of the messages more than one response was received causing a collision.In most cases, the distribution of the three events will be different depending on whether it corresponds to ACK or NACK messages, the probabilities of sending ACK/NACK feedback, the density of STAs, and the dimensions of the scenario.Not all possible values for p ACK and p N ACK allow the AP to accurately estimate the number of STAs receiving messages correctly/incorrectly for a finite number of messages (2 f ).However, when p ACK and p N ACK are tuned correctly, the probabilistic estimation of either number of STAs becomes quite accurate, as shown later.With the transmitted messages associated with one of the three possible events, the AP can estimate the number of STAs receiving messages correctly/incorrectly using standard probability functions.
The expected number of correct ACK/NACK receptions after 2 f messages are transmitted is shown in Equations ( 1) and (2), respectively.
E[ACKCorrect] and E[N ACKCorrect] are the number of ACKs and NACKs received correctly by the AP after transmitting 2 f messages, respectively.p ACK and p N ACK are the probabilities that a STA transmits an ACK or NACK message.Finally, n ACK and n N ACK are the number of STAs that received messages correctly/incorrectly after 2 f messages were transmitted, respectively.
Similarly, the expected number of silences related to ACK and NACK messages after 2 f messages were transmitted become Finally, the expected number of collisions related to ACK and NACK messages after 2 f messages were transmitted become From these equations, the AP can compute n ACK using either Equations ( 1), (3), or (5).Similarly, the AP can compute n N ACK using either Equations ( 2), (4), or (6).Thus, the AP has three different, independent, and simultaneous ways of computing the number of STAs receiving messages correctly/incorrectly.In theory, the three ways should provide the same estimation, which adds robustness to the system; however, as we will see soon, depending on the chosen probabilities, not all three alternatives provide an accurate estimation for a finite number of messages.Similarly, in some scenarios, the capture effect might change a collision into a correct reception in the AP, thus introducing additional errors while using the correct feedback and collision estimators.
The only equation with a closed form when solving for n ACK is Equation (3), and the only equation with a closed form when solving for n N ACK is Equation (4), Equation ( 7) is valid while 0 < p ACK < 1 and E[ACKSilence] > 0, while Equation ( 8) is valid when 0 < p N ACK < 1 and E[N ACKSilence] > 0. Although there is no closed form for the other equations, they can be solved via numerical methods.
In order to illustrate the error and estimation convergence time, we evaluated the expected error by comparing the number of STAs obtained from Equation (8), and the number of STAs obtained via simulations for estimating n N ACK using the silence estimator.
The experiment was performed in Python for f = 1000 messages and 10, 100, and 1000 STAs.Each STA transmitted with probability p N ACK in each slot and did not transmit with probability 1 − p N ACK .When no STA transmitted a NACK, a silence event was counted.A collision event was counted when more than one STA transmitted a NACK, and when exactly one STA transmitted a NACK, a successful NACK reception was counted.After 1000 messages, n N ACK was estimated using Equation ( 8), and the estimation error was computed.This process was repeated 10,000 times to obtain the expected error for such probability.Figure 3 shows the results of the simulations for evaluating the expected error for estimating n N ACK for different values of p N ACK using the expected number of silences E[N ACKSilence].The plots also show the analytic plot of Equation ( 4) for n N ACK = 10, n N ACK = 100, and n N ACK = 1000.These plots show an area (red rectangle) where the percentage of silences minimizes the expected error in estimating n N ACK after 1000 messages.Notice that, in these figures, this is between 15% and 45% of silence events, which we will call prop in f N ACK and prop sup N ACK , respectively.Notice that, although the simulations are performed for estimating n N ACK , the same process coincides with estimating n ACK .To achieve the percentage of silences that minimizes the expected error in the estimation of n ACK and n N ACK , we propose a simple algorithm that iterates over different values of p ACK and p N ACK , respectively, until it finds one that satisfies that the target percentage of silence events, in this case, is between prop if f messages passed until the last check then state prop ←percentage of silence/collision/reception detected 5: .When an appropriate value of p ACK or p N ACK is found, the expected error in the estimation will be the minimum, which means that the AP will estimate n ACK or n N ACK as accurately as possible.Figure 4 shows an example of how the first algorithm works for ACKs when prop in f ACK = 15% and prop sup ACK = 45% as defined earlier.In Frame 1, the algorithm chooses p ACK = 10 −2 .Since the percentage of silences is below 15% at the end of Frame 1, p ACK switches to 10 −3 for Frame 2. Now the percentage of silence events is over prop sup ACK = 45%, and p ACK switches to the logarithmic halfway between 10 −2 and 10 −3 (p ACK = 10 −2.5 ) for Frame 3, that is 10 −2. 5 .Finally, at the end of Frame 3, the percentage of silences is 30%, which is within prop

Adaptive Modulation Algorithm
The general purpose of an adaptive modulation algorithm is to find the best MCS that maximizes the physical transmission speed at the physical layer with a low Bit Error Rate (BER).Historically, these algorithms have been used in unicast scenarios, where the AP adapts the MCS independently for each user.Each MCS changes the number of bits encoded in each symbol and the coding rate, resulting in a different transmission speed at the physical layer.Figure 5 shows an example of the network coverage for MCS(0)-MCS (8).A disk with a different color represents the area covered by a different MCS.Notice that MCS(0) covers 53.41% of the total area, while MCS(8) covers only 0.01%.Table 2 shows the different MCSs and their characteristics for the IEEE 802.11ax standard.The same table shows (in the right-hand part) the various H.265 video levels that can be supported by the corresponding MCS on the left.Each H.265 level provides a different video resolution and refresh rate, generating a different transmission bandwidth.This table does not show an exhaustive list of all the different H.265 levels but lists some to illustrate how a different MCS will support all H.265 levels up to a particular level.For example, MCS (5) can support all H.265 levels up to level 5.1.In summary, the proposed method in this work will look for the best MCS(i) that supports the best video quality to users yet keeps the percentage of STAs receiving no video content correctly within the desired tolerated limits.(11) 121.9 1024-QAM, R = 5/6 In the case of WiFi broadcast, one transmission performed by the AP is expected to reach hundreds, if not thousands, of receiving STAs simultaneously.Thus, the concept of an adaptive modulation algorithm takes a slightly new turn, and now it seeks to find the best MCS that maximizes the transmission speed with a low BER for a given percentage of STAs.
In the previous section, we proposed an algorithm that estimates, for a current MCS(i), n ACK and n N ACK .Thus, we can compute the percentage of STAs receiving messages incorrectly (%n N ACK ) as We now define %n range N ACK = %n min N ACK , %n max N ACK as a range of values of %n N ACK that is considered acceptable, and then the Algorithm 2 modifies (or not) the current MCS(i) at the end of each frame of 2 f messages according to From Equation (10), it results that the MCS(i) will be increased by one index if %n N ACK is lower than the minimum tolerated percentage (%n min N ACK ) to test a higher MSC that provides higher data speed, decreased by one if %n N ACK is above the maximum tolerated percentage (%n max N ACK ) to increase the number of STAs that received messages correctly.The MCS will remain the same index for the following 2 f messages as long as %n N ACK is within %n range N ACK .The purpose of the adaptive modulation algorithm in the broadcast scenario will be to reach the third case, where the MCS(i) in the current frame remains the same in the next one (as long as the distribution of users does not change).
The reason why we defined a range to determine an acceptable percentage of STAs not receiving messages correctly (%n range N ACK ) is to force the AP to find an MCS(i) that keeps %n N ACK under the desired maximum tolerated level (%n max N ACK ), but at the same time allows the AP to tolerate a minimum percentage of STAs with bad reception by setting %n min N ACK ≥ 0. This strategy allows the AP to select a higher MCS(i), likely providing most users better-quality broadcast content.Ultimately, it is up to the network administrator and the specific media content to set the %n range N ACK .In the experiments section and for performance testing purposes, we used a %n range N ACK = [10,20] MCS ← MCS(i) 8: end if

Experiments
We used ns-3 to implement and test the probability and modulation selector algorithms.We consider a scenario where n STAs are homogeneously distributed in a disk of radius R meters with one AP at its center, as shown in Figure 6.Table 3 shows the configuration used in the simulations.Finally, this work assumes that only the AP transmits broadcast messages, and STAs do not transmit any messages independently.However, the proposed method should work even if STAs are allowed to send unicast traffic to the AP.In this case, STAs will only reply with ACK and NACK messages to broadcast messages transmitted by the AP using the probabilities included in those messages.However, mixing downlink broadcast content with uplink traffic is not recommended since the available bandwidth for broadcast will shrink considerably, potentially compromising the quality of the transmitted video stream.This assumption can be relaxed by applying a protocol as the one described in [21].

Performance of the Three Estimators
The first part of the experiments is to analyze the performance of each of the three estimators for positive feedback (one ACK, ACK collision, and ACK silence) and negative feedback (one NACK, NACK collision, and NACK silence).As mentioned before in Section 3. Ideally, the three estimators should provide a similar estimation of either n ACK or n N ACK , provided the AP transmits a vast number of messages (in theory is an infinite number).However, the AP is interested in obtaining an accurate estimation as soon as possible using a few messages.As we will see, for a small finite number of messages, each estimator will show a different accuracy and convergence time depending on the particular scenario and the probabilities being used (p ACK and p N ACK ).
Figure 7 shows the results of the experiments.The AP computes the number of STAs receiving messages correctly/incorrectly using the three estimators and for three different probabilities (0.1, 0.01, and 0.001).There are 1000 STAs distributed in a disk of 100m radius.Receiving STAs used even-numbered messages to transmit ACKs and odd-numbered messages for transmitting NACK messages to the AP.The highest MCS (MCS( 5)) was used in all these figures.The green horizontal line shows the real number of STAs receiving messages correctly/incorrectly in each experiment.As can be observed, each estimator has a different accuracy and convergence time depending on the used probability.However, each estimator presents some general behavior.The ACK/NACK estimator (see Figure 7a,b) presents significant errors and takes longer to converge to a steady state.The collision estimator (see Figure 7c,d) presents even more significant error variations, and it takes even longer to reach a steady state.Finally, the silence estimator (see Figure 7e,f) has good accuracy and reaches a steady state after a few hundred messages.Table 4 shows the absolute estimation error (measured in the number of STAs) in the steady state for 10, 100, and 1000 STAs distributed in the same 100m radius disk.The table shows results after 2000 and 5000 messages.The estimation that presents the smaller error in each cell for a given number of messages is highlighted for each probability.As verified in the table, the silence estimator offers the most accurate estimation in 14 out of the 18 cells shown for 2000 messages and in 15 out of 18 cells for 5000 messages, the ACK/NACK correct feedback estimator in 4 out of 18 cells for 2000 messages and in 3 out of 18 cells for 5000 messages, and the collision estimator in 4 out of 18 cells for 2000 messages and in 5 out of 18 cells for 5000 messages.Cells where the silence estimator did not achieve the lowest error occurred when p ACK or p N ACK were far from their optimal value.Figure 7 shows that the silence estimator also reaches the steady state faster than the other two.
As Table 4 shows, it becomes clear why we cannot use all three estimators and why we selected the silence estimator for the first algorithm of the proposed method that searches for a probability that guarantees low estimation error in a short time.It is worth noticing from this table that the estimation obtained after 2000 messages is very similar to the one obtained for 5000 messages, which shows that it is unnecessary to wait for 5000 messages to get an accurate estimate on n ACK and n N ACK .

Probability Selection Algorithm
Something to extract from Figure 7 is that each of the three estimators performs better in accuracy and convergence for a particular probability, which is the basis of the probability selector algorithm.Now, we will show the algorithm's operation that searches for a probability that provides the best estimation of the number of STAs receiving messages correctly/incorrectly, employing the silence estimator only.
Figure 8 shows three plots of simulations in ns-3 of the probability selector algorithm (p N ACK ) for 10, 100, and 1000 STAs positioned within a 100m disk and the AP uses MCS (5) to transmit messages.The silence percentage (%Silences) bounds prop in f N ACK , prop sup N ACK for these experiments were set between 15% and 45% as discussed before in Section 3. The red line represents the actual number of STAs that did not receive the messages correctly (which may vary over time depending on channel variations at the physical layer).The green line represents the estimation of the number of STAs that did not receive the messages correctly up to the given message (that is, using the number of silences up to that time) using the silence estimator.Every 2000 messages, the algorithm changes p N ACK according to Algorithm 1, and at this time, the counter of silence events restarts.This operation generates significant estimation errors after the counter restarts since it could involve divisions by a small number, as defined in Equation ( 7) and (8).
Figure 8a shows that for 10 STAs, the probability selector algorithm increased the value of p N ACK until it reached 0.1 at the end of Frame 4, which provides a 56% of silence events.Notice that even if this percentage is higher than the upper limit (45%), 0.1 is the maximum probability allowed by the algorithm.Due to the reduced number of STAs in this simulation, the error is of, at most, one STA in a steady state.On the other hand, Figure 8b shows the results for 100 STAs (the number of STAs that did not receive the messages correctly is around 70).For 100 STAs, p N ACK started at 0.005 in Frame 1 and ended at 0.015 in Frame 5, where the percentage of silences reached 18.4%, within the desired range.Finally, Figure 8c shows the results for 1000 STAs.In this case, the value of p N ACK went up and down in various Frames until it reached 0.0015 at the end of Frame 4, achieving a 33% of silence events, which is between the 15-45% bounds.From these plots, it is possible to notice that the final value of p N ACK selected by the algorithm corresponds to approximately   Transmitted messages Actual n nack Estimated n nack (c) One thousand STAs. Figure 8. Algorithm for obtaining the p N ACK that minimizes the error for n N ACK using the silence estimator.

Modulation Selection Algorithm
Now that the probability selector algorithm has found the best probabilities for transmitting ACKs and NACKs that accurately estimate the number of STAs receiving messages correctly/incorrectly, we can proceed with the second algorithm that selects the best MCS.As Section 4 mentions, the AP seeks to choose the highest MCS possible while keeping the percentage of STAs that do not receive messages correctly within the desired range.
Figures 9 (for 100 STAs) and 10 (for 1000 STAs) show the simultaneous operation of the probability selector algorithm (left column) and the modulation selector algorithm (right column) for a network area of radius 100m (first row), 200m (second row), and 300m (third row).In each row, the left plot shows the behavior of the probability selector algorithm for transmitting ACKs and NACKs after every 2 f = 2k messages (1000 odd-numbered messages used for NACK and 1000 even-numbered messages used for ACK).As mentioned in Section 3, the desired percentage of silence events that guarantees low error estimation is set between [15, 45]%.Once the percentage of silences of both n N ACK and n ACK falls within this range, the AP moves to the second algorithm and decides to increase, decrease, or keep the current MCS depending on whether the percentage of STAs receiving messages incorrectly is below, above, or within the desired range (set to [10, 20]% of STAs in all experiments), respectively.In all plots, the initial MCS is MCS (5).However, any other initial MCS strategy should work (i.e., the lowest or the middle MCS.).
As we can see in the figures, the probability selector algorithm takes about 4000-8000 messages to reliably estimate the number of STAs receiving messages correctly/incorrectly every time the second algorithm changes the MCS.Similarly, as the scenario increases the network radius, more MCS changes are needed as more STAs become further away from the AP, thus requiring a lower MCS to receive messages correctly.As for the number of STAs, we can see that it takes fewer messages for the probability selector algorithm to converge for 1000 STAs (see Figure 10) compared to 100 STAs (see Figure 9).
While the 20,000-30,000 messages transmitted for the two combined algorithms to converge to the desired behavior could appear too many, in practice, it will take only a few seconds, depending on the number of messages per second being transmitted by the AP.We consider the H.265 codec as an example of the AP sending video/audio content to STAs.Table 5 shows the number of seconds this particular codec takes to reach 24k messages for some of its resolution modes.
Overall, Figures 9 and 10 show that the proposed method can find the best MCS that maintains the number of STAs receiving messages incorrectly within the desired limits independently of the number of STAs and the size of the scenario.Similarly, as Table 5 illustrates, the proposed method takes only a few seconds to find the best possible MCS.

Discussion
When evaluating the performance of the three estimators for Algorithm 1, the initial expectation was that all three would yield similar estimations, thereby enhancing the system's robustness.However, it became evident that the silence estimator outperformed the others for a finite number of messages, providing superior results.The explanation for this outcome is the frequent occurrence of packet capture during the experiments.Packet capture enables a receiver to retrieve a single packet (typically the one with the highest signal-to-noise ratio (SNR) from a collision of packets.This mechanism transforms a collision event into a successful reception event, introducing discrepancies or errors in the collision and correct feedback estimators.Interestingly, the silence estimator remained unaffected by this issue and consistently delivered accurate estimations of the number of STAs receiving messages, demonstrating remarkable accuracy (within a 1% margin of the actual number of STAs).
In the evaluation of Algorithm 2 in Section 5.3, focusing on the adjustment of MCS, the experiments were conducted using a high value for MCS(i).However, alternative strategies, such as commencing with a middle-valued MCS(i), can be explored.Furthermore, instead of the incremental or decremental adjustment of the current MCS(i) by one step per frame, Algorithm 2 could evaluate the percentage of STAs experiencing message reception errors to execute larger jumps across multiple MCS indexes after each frame.Irrespective of the initial MCS index chosen, the results illustrate that the ultimate MCS outcome remains consistent-solely the time taken to achieve convergence varies.Yet, commencing with a higher MCS offers an advantage by expediting the transmission of broadcast messages.This facilitates a quicker estimation by the AP of the number of STAs that receive messages inaccurately, in contrast to initiating the process with a lower MCS.Due to limitations in space, we only presented the results of experiments using a NACK range set between 10% and 20%.Nevertheless, experiments were conducted with varying NACK ranges, revealing that a reduction in the NACK range (e.g., 5% to 10%) led to the AP selecting a lower MCS index.Conversely, a higher NACK range (e.g., 20% to 40%) resulted in a higher MCS index compared to the findings detailed in Section 5.3.
While the present analysis exclusively focuses on static scenarios, it is worth noting that, even in scenarios where STAs are mobile, the time it takes for an STA to traverse a single disk associated with a specific MCS(i) (under the scenario depicted in Figure 5) ranges between 15 to 50 s.Considering that the proposed method achieves convergence to the optimal MCS within 1 to 8 s, the convergence will most likely occur before an STA transitions to a different disk area due to movement.It's also essential to emphasize that the 802.11bc standard mainly envisions static scenarios.This assumption aligns with the understanding that engaging in activities like viewing multimedia content while walking should be discouraged.
Nonetheless, the proposed method presents its limitations and tradeoffs.On one hand, the time it takes to converge is directly proportional to the rate of broadcast messages.In some high-quality video stream applications, it will take the method a very short time to converge (less than one second); however, if the content is being sent at a slow pace, convergence times to find the optimum MCS will take much longer.Also, this work assumes that only one AP operates in the venue.Having one or more APs interfering with the AP sending broadcast content might cause a collision of broadcast and feedback messages, adding errors in the estimation process.In the future, we plan on modifying the base method to make it resilient to this constraint.
Finally, we evaluated the performance of the method in a simulation environment.Thus, future work should focus on implementing the presented strategy to validate its operation in real-world conditions.However, we anticipate several discrepancies impacting the proposed method's performance in a real-world setting.On the one hand, SNR variations are similar from one instant to the next in the simulations.However, this may not happen in real-world conditions where, due to channel conditions, SNR might experience significant changes in a very short time.On the other hand, the simulation assumes symmetric channels.This condition will not always happen in real-world situations, thus introducing errors in the number of events the AP counts for each of the three estimators.Then, more experiments must be conducted in heterogeneous networks where devices have different hardware features, such as antennas or transceiver capabilities.

Conclusions
This work proposes a novel method to select the best possible MCS in a WiFi broadcast scenario where hundreds or thousands of STAs receive media content from a single AP.The proposed method is composed of two sequential algorithms.The first algorithm allows the AP to find the best probability for the STAs to send ACKs or NACKs to accurately estimate the number of STAs receiving broadcast content correctly/incorrectly.Then, a second algorithm selects the best possible MCS that maintains the number of STAs receiving broadcast content within the desired levels.We implemented both algorithms in ns-3 and found they choose the best possible MCS independently of the number of STAs and the scenario size in only a few seconds.The proposed method is a robust, lightweight, and scalable solution for the widespread adoption of WiFi broadcast, such as in the IEEE 802.11bc initiative that was recently released.
In future work, we plan to study mobility issues, ways to speed up the convergence time, and ways to allow for the protocol to operate in the presence of uplink unicast traffic and cases where other APs interfere in the vicinity.We also plan to study the behavior of the proposed method in heterogeneous scenarios.Finally, we plan to implement and test the proposed method in real conditions to learn more about potential issues missed in the simulation phase.

Figure 1 .
Figure 1.Example of ACK and NACK events for three receiving STAs.Black squares: transmitted messages, red squares: NACKs, blue squares: ACKs, white squares: correctly received messages, gray-crossed squares: incorrectly received messages.

Figure 2 .
Figure 2. Example of the distribution of the three events at the end of a frame.

Figure 3 .
Expected error obtained with the silence estimator after 1000 messages.

Algorithm 1
proposed algorithm is similar to a binary search algorithm as shown in Algorithm 1.On each iteration, the value of p ACK or p N ACK will logarithmically approach to a value that satisfies propin f ACK ≤ p ACK ≤ prop sup ACK (or prop in f N ACK ≤ p N ACK ≤ prop sup N ACK).Notice that the maximum value for p ACK and p N ACK is 0.1, as shown in lines 13-15 of the algorithm, which works well for more than 10 STAs.Algorithm to tune p ACK to achieve minimum expected error on n ACK estimation 1: p ACK ← 10 −2 2: di f f ← 1 magnitude order 3:

Figure 4 .
Figure 4. Algorithm for finding the p ACK or p N ACK that minimizes the error.

Figure 6 .
Figure 6.Scenario for the experiments.Randomly distributed STAs at 100 m, 200 m, and 300 m.
Actual n N ACK p N ACK = 0.1 p N ACK = 0.01 p N ACK = 0.001 (b) E1: Correct reception of one NACK.Actual n N ACK p N ACK = 0.1 p N ACK = 0.01 p N ACK = 0.001 (f) E3: NACK Silences.

Figure 7 .
Figure 7. Performance of three estimators for 1000 STAs randomly positioned at 100 m.In this scenario, 841 STAs receive messages correctly, and 159 STAs receive them incorrectly.
, which occurred without the AP having any previous knowledge about the number of STAs it is serving.p N ACK = 0.005 p N ACK = 0.01 p N ACK = 0.05 p N ACK = 0.1 %Silences = 97.1% %Silences = 95.4% %Silences = 77.2%%Silences =
Percentage of non-receiving STAs 200 m.
Although the algorithm is presented for n ACK , a similar one works for n N ACK by changing p ACK for p N ACK and prop

Table 2 .
OFDM MCS for 802.11ax for one spatial stream, 20 MHz channel, and 3.2 µs GI (first three columns).H.265 video resolution and approximate bandwidth required for different levels (last three columns). %.

Table 4 .
Absolute error of three estimators after 2 k and 5 k messages for 10, 100, and 1000 STAs, radius = 100 m.
STAs p (p ACK or p N ACK ) Estimator n ACK Error [STAs] n N ACK Error [STAs]

Table 5 .
Time [s]for H.265 codec to transmit 24,000 messages for various levels and 188 Bytes packet.