# Implementation of a Fast Link Rate Adaptation Algorithm for WLAN Systems
## 2 Link Adaptation Algorithm Basics  
The target system supposed in the paper is made up of one TX antenna and one RX antenna, as drawn in Figure 1. The system supports IEEE 802.11a, 11b, 11g, 11n, and 11 ac WLAN standards in the AP and the non-AP modes, and leverages an open-loop type link adaptation (LA) in which the RX of the station (STA) does not support MCS feedback. The goal of the link rate adaptation implementation in this paper, based on adaptive modulation and coding, is to select an MCS that can achieve the maximum throughput. In comparison, with ideal link adaptation, the RX estimates the SNR and accordingly selects an MCS that enables the maximum available throughput and feeds this MCS back to the TX via a control wrapper, which is a closed-loop type link adaptation, as drawn in Figure 2. Assuming the feedback delay is negligible, this type of link adaptation with MCS feedback can predict the link most accurately and swiftly. In case the MCS feedback of the RX being not available, illustrated in Figure 3, an acknowledgment (ACK) success or fail (S/F) of the data frame sent by the TX can be leveraged by the target system for link adaptation. However, it takes long for this method to obtain the channel information. Another method is to utilize the preamble [35] in the frames (ACK frame, beacon frame, etc.,) received by the RX. It has the upside of acquiring the channel information swiftly and has the downside of degrading the performance in the event that the channel information is inaccurate. Figure 1: Target system. Figure 2: Ideal link adaptation. One of the most well-known and widely used traditional link adaptation algorithm is ARF. In ARF, the MCS value steps up by 1 (upgrade or UG) if ten consecutive ACKs are received whereas the MCS value steps down by 1 (downgrade or DG) if two consecutive no ACKs (namely, two consecutive failures to receive ACK) occur or if a no ACK is received immediately after the MCS value steps up by 1. Table 1 shows the modulation scheme and the throughput for each of the MCS values or indices, along with the code rate (R). Each throughput value in the parenthesis indicates the throughput value when two streams are used instead of a single stream. Table 1 is specified for 20 MHz channels and 600 ns guard intervals in WLAN standards. Figure 4 shows the simulation results that compare ARF with ILA or ideal link adaptation. ARF, since it selects an MCS according to its qualifications described above even if the channel is in favorable conditions, has its MCS altered at a slow pace, as opposed to ILA which has its MCS altered fast accordingly as the channel varies, since it selects an MCS that achieves maximum throughput according to the channel condition. With ARF, packet numbers 12 and 25 correspond to the case when a no ACK comes in immediately after the MCS value is upgraded, at which an ARF function called probing comes into play, whose role is to one step downgrade the MCS value. In this case, ARF probing interprets a no ACK directly after an upgrade in MCS occurs as an erroneous decision. \begin{table}
\begin{tabular}{c c c c c c c} \hline \hline
**MCS** & **Modulation** & **R** & \
\begin{tabular}{c} **Throughput** \\ **[Mbps]** \\ \end{tabular} & **MCS** & **Modulation** & **R** &
\begin{tabular}{c} **Throughput** \\ **[Mbps]** \\ \end{tabular} \\ \hline
0 & BPSK & 1/2 & 6.5 (13.0) & 4 & 16-QAM & 3/4 & 39.0 (78.0) \\ \hline
1 & QPSK & 1/2 &
\begin{tabular}{c} 13.0 \\ (26.0) \\ \end{tabular} & 5 & 64-QAM & 2/3 & 52.0 (104.0) \\ \hline
2 & QPSK & 3/4 &
\begin{tabular}{c} 19.5 \\ (39.0) \\ \end{tabular} & 6 & 64-QAM & 3/4 & 58.5 (117.5) \\ \hline
3 & 16-QAM & 1/2 &
\begin{tabular}{c} 26.0 \\ (52.0) \\ \end{tabular} & 7 & 64-QAM & 5/6 & 65.0 (130.0) \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Modulation and throughput for each of the modulation and coding scheme (MCS) values. Figure 3: Link adaptation in case of no modulation and coding scheme (MCS) feedback from the receiver (RX) antenna.