# A Novel QoS-Aware ARQ Scheme for Multi-User Transmissions in IEEE802.11 ax WLANs
## 3 Methods
### The Greedy Algorithm
As a result, the range of candidates in each step is dramatically narrowed. Moreover, parallel processing is available thanks to the characteristics of the greedy algorithm. One of the characteristics is that the result of each step is part of the final solution for the optimization problem, and the result of each step is not changed by those obtained in the subsequent steps. According to the characteristic, the result of each step can be conveyed to the aggregation mechanism step by step. Consequently, the selection of the subsequent backups and the aggregation of the obtained backups can be conducted in parallel so that the overall processing time is shortened. Figure 9 illustrates the sequence diagrams without or with parallel processing. The BP-ARQ scheme introduces the modification to contain backups in the A-MPDU and the selection algorithm to determine which packets are replicated. The algorithm and the aggregation of backups are both implemented in the originator of A-MPDUs. The originator is AP in the DL MU transmissions, and the station acts as the originator in the UL MU ones. The procedure of the BP-ARQ scheme in the originator is shown in Figure 10. The sub-frame error rate is calculated according to the estimation of SNR and BER when the BlockACK/ACK frames are received. When a user is scheduled to transmit, the originator first tries to aggregate the packets from the AC buffer for the user based on the limitations of duration, frame size, and aggregation window. The parameters used in the backup procedure are then prepared. After the prepared packets are determined, the status of the reordering buffer is established according to Equation (3). The scheduled duration is equal to the maximum duration among the users for the downlink or the transmission duration indicated in the basic trigger frame for the uplink. After that, the greedy algorithm is conducted to solve  
\[\vec{R^{\prime}}_{l}=(r^{\prime}_{1}\ \ r^{\prime}_{2}\ \...\ r^{\prime}_{l}+1\ \...\ r^{\prime}_{L-1}\ r^{\prime}_{L}), \tag{13}\]0 The sequence diagrams of the calculation of the backup solution and the aggregation of the backups. (**a**) The sequence diagram without parallel processing. (**b**) The sequence diagram with parallel processing. the optimization problem step by step until there is not enough space or duration left to contain a sub-frame in the A-MPDU, or the objective value is considered to converge to the upper bound. At the end of each step, the replication of the selected packet and the aggregation of the backup are executed in the aggregation mechanism. \[\vec{R^{\prime}}_{l}=(r^{\prime}_{1}\ \ r^{\prime}_{2}\ \...\ r^{\prime}_{l}+1\ \...\ r^{\prime}_{L-1}\ r^{\prime}_{L}), \tag{13}\]1 The procedure of the BP-ARQ scheme. The pseudo-code of the algorithm (Algorithm 1) is as follows. ```
0:\(SN_{l}\) { The sequence numbers of the prepared packets.} 0:\(SN_{END}\) {The \(SN_{END}\) is the latest sequence number assigned by the originator and can be obtained from the sequence number allocation function.} 0: Bit error rate (BER) {The BER in the channel can be estimated using the signal to noise ratio (SNR).} 0:\(T_{sche}\){The scheduled duration of the MU transmission.} 0:\(len_{maxampdu}\){The maximum length of the A-MPDU frame.} 0:\(rate\){The physical data transmission rate of the user.} 0:\(C\){The convergence accuracy.} 0:\(\vec{R}\) {The backup solution.}