Received 15 May 2016; accepted 22 July 2016; published 26 July 2016
The latest IEEE 802.11-REVmc Standard (WiFi), created and maintained by the IEEE LAN/MAN Standards Committee (IEEE 802.11)  that embedded and updated the IEEE 802.11ac amendment, is currently the most effective solution within the range of Wireless Local Area Networks (LAN). Since its first release in 1997, the standard provides the basis for Wireless network products using the WiFi brand, and has since been improved upon in many ways. One of the main goals of these improvements is to optimize the Throughput of the MAC layer, and to improve its Quality-of-Service (QoS) capabilities.
To fulfill the promise of increasing IEEE 802.11 performance and QoS capabilities, and to effectively support more client devices on a network, the IEEE 802.11 working group introduced the fifth generation in IEEE 802.11 networking standards; the IEEE 802.11ac amendment, also known as Very High Throughput (VHT)   . IEEE 802.11ac is intended to support fast, high quality data streaming and nearly instantaneous data syncing and backup to notebooks, tablets and mobile phones. The IEEE 802.11ac final version, 11ac-2013, released in 2013  , leverages new technologies to provide improvements over previous generation, i.e. IEEE 802.11-2012  . Both versions are now included in IEEE 802.11-REVmc  which will be published as IEEE 802.11-2016.
The IEEE 802.11ac amendment  improves the achieved Throughput coverage and QoS capabilities, com- pared to previous generations, by introducing improvements and new features in the PHY and MAC layers. In the PHY layer, IEEE 802.11ac (VHT) continues the long-existing trend towards higher Modulation and Coding rates (256 QAM 5/6 modulation), working in wider bandwidth channels (up to 160 MHz) and using 8 spatial streams that enable higher spectral efficiency.
In the MAC layer IEEE 802.11ac includes many of the improvements first introduced with IEEE 802.11e and IEEE 802.11n  , also known as High Throughput (HT). Integrated with the following two key performance features are the ability to aggregate packets in order to reduce transmission overheads in the PHY and MAC layers, and to use Reverse Direction (RD) which enables stations to exchange frames without the need to con- tend for the channel. We now describe these features.
Frame aggregation is a feature of the IEEE 802.11n and IEEE 802.11ac that increases Throughput by sending two or more consecutive data frames in a single transmission, followed by a single acknowledgment frame, denoted Block Ack (BAck). Aggregation schemes benefit from amortizing the control overhead over multiple packets. The achievable benefit from data aggregation is often interesting, especially in light of several factors that can impact its performance, e.g., link rates, collisions, error-recovery schemes, inter-frame spacing options, QoS guarantee, etc. IEEE 802.11n introduces, as a pivotal part of its MAC enhancements, three kinds of frame aggregation mechanisms: The Aggregate MAC Service Data Unit (A-MSDU) aggregation, the Aggregate MAC Protocol Data Unit (A-MPDU) aggregation and the Two-Level aggregation that combines both A-MSDU and A-MPDU. The last two schemes group several Mac Protocol Data Units (MPDU) frames into one large frame. IEEE 802.11ac also uses these three aggregation schemes, but enables larger frame sizes.
The basic idea behind the Reverse Direction (RD) feature is a time interval denoted Transmission Opportunity (TXOP). A station gains a TXOP by gaining access to the wireless channel and in a TXOP the station can transmit several PHY Protocol Data Units (PPDU) without interruption. This station is denoted the TXOP holder. The TXOP holder can also allocate some of the TXOP time interval to one or more receivers in order to allow data transmission in the reverse link. This is termed as Reverse Direction (RD). For scenarios with bidirectional traffic, such as Transmission Control Protocol (TCP) Data segments/TCP Acks, RD is very attractive because it reduces contention in the wireless channel (no collision).
The IEEE 802.11ac standard also defines an Automatic Repeat-Request (ARQ) protocol that enables a transmitter to retransmit lost MPDUs and guarantee in-order reception of MPDUs at the receiver. This protocol is also used to improve quality of the wireless channel.
Another feature in IEEE 802.11ac related to QoS capabilities is the use in Access Categories (AC). There are 4 ACs: Best Effort (BE), BackGround (BK), Video (VI) and Voice (VO). The difference between the 4 ACs is in the parameters that control access to the channel, namely the Arbitrary Inter-Frame Space (AIFS) length and the values of and. These vary in the various ACs and are intended to provide priority to traffic streams with QoS requirements such as Video and Voice.
1.2. Research Question
In this paper we investigate a model to transmit TCP traffic in an infrastructure IEEE 802.11 that optimizes the combined performance of the IEEE 802.11 MAC layer and the L4 TCP protocol using the new features that were developed in the latest generation of the IEEE 802.11, i.e. IEEE 802.11ac. These features enable to use IEEE 802.11 in a completely different way than before, as we now specify.
The issue of TCP performance over IEEE 802.11 networks has been investigated in many papers in the past, e.g.  -  . In this past research, however, it is assumed that stations compete to get access to the channel using the contention based CSMA/CA access method. Collisions are possible between stations that are involved in different TCP connections and between the AP and stations with which it has TCP connections due to the exchange of TCP Data/Ack segments. Both the AP and the station(s) try to get access to the channel simul- taneously and this results in collisions.
As far as we know, there was no development of models to transmit TCP traffic over IEEE 802.11 using new features of the standard. In the model we suggest in this paper the AP controls the TCP transmissions in the cell by configuring the stations to use large BackOff intervals such that effectively they never gain access to the channel and the AP enables the stations to transmit only through time periods delivered by the AP, the TXOP holder, i.e. the Reverse Direction (RD) capability. The AP communicates with one station during a TXOP and in this paper we evaluate the performance of such communication between the AP and the station. Establishing policies for the communication between the AP and several stations with which it maintains TCP connections is the issue for further research.
Therefore, as a first step we assume that the AP communicates with a single station and they have a single TCP connection between them. The AP is the TCP transmitter, transmitting TCP Data segments, and the station is the TCP receiver transmitting TCP Acks. Our performance criteria is the Goodput, defined as the number of MSDUs' bits (TCP Data segments) that are successfully transmitted and acknowledged by TCP Acks, in the wireless channel, on average, in a second. Such a scenario is possible, for instance in a home environment where a Network-Attached Storage (NAS) device  is attached to the AP, and a PC downloads data files from the NAS device. It uses the aggregation and RD capabilities of the IEEE 802.11ac MAC layer.
We use the four features of the MAC layer of the IEEE 802.11ac mentioned above, namely aggregation, Reverse Direction (RD), the ARQ protocol and the four Access Categories. Concerning aggregation, we assume the Two-Level aggregation scheme. This scheme enables transmission of several TCP Data segments and several TCP Acks in a single transmission over the wireless medium. Up to 64 MPDUs can be transmitted in a single transmission and every MPDU can contain several MSDUs. We measure the influence of aggregation on the Goodput.
Notice that in a TCP connection over IEEE 802.11ac both sides of the connection compete for the wireless channel-one for transmitting TCP Data segments and the other for transmitting TCP Acks. This competition can result in collisions and reduced Goodput. We examine two operation modes for the transmission of TCP traffic over the wireless medium. In one operation mode, using RD, the TCP transmitter allocates a TXOP when it acquires the wireless medium, and enables the TCP receiver to transmit TCP Acks during the TXOP without collisions. In the second operation mode, for comparison purposes, which we denote by No-RD, the traditional CSMA/CA random access MAC is used. The TCP transmitter and the TCP receiver contend for the wireless medium in every transmission attempt. The operation mode using RD is more complicated than the contention based one, and we want to check if, and to what degree, using RD improves the Goodput of the No-RD operation mode.
In addition to all the above we assume the ARQ protocol of the IEEE 802.11ac standard at the MAC layer. This protocol guarantees an in-order delivery of MPDUs between communicating entities. However, due to its Transmission Window, the ARQ protocol can sometimes limit the number of MPDUs transmitted in each transmission, i.e. this protocol can limit the amount of aggregation.
Finally, we check the influence of the values of the access parameters in the four ACs on the Goodput, namely the Arbitrary Inter Frame Space (AIFS), Contention Window min., , and Contention Window max..
We assume that the AP and the station are the end points of the TCP connection. Following e.g.     it is quite common to consider short Round Trip Times (RTT) in this kind of high speed networks such that no retransmission timeouts occur. Notice also that due to the MAC ARQ protocol, the L4 TCP protocol always receives TCP Data segments in order. Therefore, the TCP congestion window increases up to the TCP receiver advertised window. We assume that the TCP receiver window is large enough such that the TCP Transmitter Transmission window can always provide as many MSDUs to transmit as the MAC layer enables. We assume the above following the observation that aggregation is useful in scenario where the offered load on the channel is high. We therefore do not consider the TCP Transmission Window and our goal is to find the maximum possible Goodput that the wireless channel enables to a single TCP connection, where the TCP itself does not impose any limitations on the offered load, i.e. on the rate that MSDUs are given for transmission to the MAC layer of the IEEE 802.11ac.
Following the above we also do not consider a particular flavor of TCP, e.g. TCP NewReno, Westwood, Cubic  -  if to mention only a few. All the TCP flavors differ in the way they handle the TCP congestion window but in this paper, as mentioned, we assume that the TCP Transmission Window is limited only by the TCP receiver advertised window.
Regarding the wireless channel quality we first assume an error-free channel, i.e. the Bit Error Rate (BER) equals 0. Then we assume another three BERs: and. The scenario of a single TCP connection with various BER values is possible for instance in the mentioned home environment where a Network-Attached Storage (NAS) device  is attached to the AP, and a PC, which is a client in the IEEE 802.11 system, is located close to the NAS and downloads data files from the NAS device. The various BERs are a function of the channel conditions between the client (e.g. PC) and the AP. If they are stable and have a low path loss channel between them. the BER is very low. However, if the PC is located in the basement for instance, the BER can be larger.
An additional feature that we use was introduced in  . In  a repetition scheme is introduced, in which several MPDUs in a single transmission are transmitted several times. This feature improves the achieved Goodput in large BERs, as will later become clear.
1.3. Our Results
We show that for an error-free channel, i.e. BER = 0, using RD improves the Goodput over not using RD by 20%. Moreover, using TXOPs of about 20 ms are sufficient to achieve that improvement, and this outcome has an impact on the delay at the TCP protocol from the time the TCP transmitter transmits TCP Data segments until it receives the corresponding TCP Acks.
For error-prone channels we show that using RD improves the Goodput in almost 50% and when also using the Repetition scheme of  the improvement can even reach 60%. TXOPs of about 4 ms are sufficient to achieve these Goodput improvements.
1.4. Previous Work
From the point of view of Transport protocols, the performance of the IEEE 802.11 protocol has been investigated in two models: UDP-like traffic and TCP traffic, i.e. when there is bi-directional traffic that can result in collisions. By UDP-like traffic we mean that the Data receiver does not transmit an Ack at the Transport layer, nor, in terms of IEEE 802.11, does it generate an MSDU for transmission. In TCP traffic, the receiver of TCP Data segments generates an MSDU which contains a TCP Ack, and depends on the channel for its transmission.
Regarding UDP-like traffic, the performance of IEEE 802.11 (taking into account the aggregation schemes) has been investigated in dozens of papers over the years. For example, in  -  the Throughput and Delay performance of the A-MSDU, A-MPDU and Two-Level aggregation schemes are investigated. Several papers assume an error-free channel with no collisions, several papers assume an error-prone channel and others also assume collisions. In  -  the performance of 802.11ac is investigated. Papers   consider the performance of the aggregation schemes in 802.11ac and compare the performance of 802.11ac to that of 802.11n.
Another set of papers  -  deals with QoS together with the aggregation schemes. In particular, in  the use of the ARQ protocol of the IEEE 802.11 standard  , together with the aggregation schemes, is in- vestigated in relation to QoS guarantee.
Concerning TCP traffic, we can specify a first set of papers that deal with TCP’s Throughput, Delay and Fairness performance over legacy IEEE 802.11/a/b/g networks. There are dozens of such papers, such as  -   -  to mention only a few. None of the papers from this set consider Access Categories or aggregation schemes that were introduced in later versions of the standard, i.e. IEEE 802.11e and IEEE 802.11n res- pectively.
As the IEEE 802.11e was introduced, many papers appeared concerning this standard and the performance of TCP. In IEEE 802.11e the Access Categories are defined, enabling change to the fix values of the DIFS (now called AIFS) and of the previous versions of the standard. Also introduced is the TXOP time interval that enables the AP/stations to transmit several frames in a single transmission opportunity. Such frames are acknowledged in the MAC layer, all together, by a new defined frame; the Block-Ack frame. Papers regarding TCP investigate the use of the above changes in improving TCP performance   . None of the papers concerning IEEE 802.11e and TCP deal with ACs and aggregation schemes, as does our paper, since aggre- gation schemes were only introduced in a later version of the standard, namely IEEE 802.11n.
In relation to IEEE 802.11n/ac where aggregation is introduced, we are aware of only three research papers that handle the Throughput performance of TCP in the various aggregation schemes    . In  the authors also assume the model of the AP and a single station that maintain a TCP connection. The paper considers the A-MSDU and A-MPDU aggregation schemes only, and does not consider the Two-Level aggre- gation scheme, the RD and the various ACs. In the analysis the authors assume a TCP Transmission window of one TCP Data segment. On the other hand, in this paper we also handle the Two-Level aggregation scheme, the various ACs, the RD and a TCP Transmission window larger than one Data segment, which complicates the analysis.
In  it is argued that aggregation increases the discrepancy among upload TCP connections. The model is an AP with several stations that initiate TCP upload connections. The A-MPDU aggregation is considered and there is no a reference to Two-Level aggregation, to RD and to the standard ACs. The authors suggest an algorithm to reduce the discrepancy among TCP connections. Our paper deals with another model: we explore the influence of aggregation on the Goodput of a single TCP connection, e.g. in a home environment, consider Two-Level aggregation, RD and check the performance of the 4 ACs defined in IEEE 802.11 .
In  the performance of a single TCP connection is evaluated using all three aggregation schemes and four standard ACs. However, only an error-free channel is considered and there is no reference to RD, i.e. there can be collisions between the two parties of the TCP connection. The current paper is a next step to the research in  in the sense that it also considers an error-prone channel and explores the elimination of collisions by RD.
Regarding RD, there are several papers such as  -  that deal with RD’s Goodput performance, also in relation to TCP. However, these papers do not consider aggregation, ACs and the IEEE 802.11ac ARQ protocol all together.
Finally, none of the papers mentioned in this literature survey consider the Repetition scheme of  and its influence on the Goodput performance.
The rest of the paper is organized as follows: In Section 2 we describe in detail the features of the IEEE 802.11ac that we use in this paper. In Section 3 we describe the model we suggest for TCP transmission over IEEE 802.11 using RD. In Sections 4 and 5 we compute the Goodput performance of the error-free and error- prone channels respectively. Section 6 concludes the paper and in the Appendix we present a Markov chain model for the scenario in which there is no use in RD and both the AP and the station contend for the channel in every transmission attempt.
2. Network Model
2.1. Aggregation Schemes
Three aggregation schemes are defined in IEEE 802.11n/ac: Aggregate MAC Service Data Unit (A-MSDU), Aggregate MAC Protocol Data Unit (A-MPDU) and Two-Level aggregation, which combines the former two.
In A-MPDU aggregation several MPDUs are combined together into a single PHY Service Data Unit (PSDU) denoted A-MPDU frame, and are transmitted in one PHY Protocol Data Unit (PPDU), thus saving PHY overhead. The Two-Level aggregation scheme is shown in Figure 1. In this aggregation scheme several MPDUs are again inserted for transmission into one A-MPDU frame. However, an MPDU can contain several MSDUs. Every MSDU is preceded by a SubFrame Header of 14 bytes and every MSDU, with its SubFrame Header, is rounded by a PAD to a size that is an integral multiple of 4 bytes. Every MPDU is preceded by a MAC Delimiter of 4 octet and is rounded by a PAD with its delimiter, to a length that is an integral multiple of 4 octets. Such MPDUs are denoted A-MSDU frames. The Two-Level aggregation scheme achieves a better ratio than the other aggregation schemes between the amount of Data octets transmitted to the PHY and MAC layers’ overhead.
In 802.11ac the maximum A-MPDU’s size is 1,048,575 octets and the MPDUs’ maximum length is 11,454 octets. The maximum number of MPDUs in an A-MPDU frame is 64.
Assume an A-MPDU frame that contains K MPDUs and Y MSDUs. Let L be the length of an MSDU in bytes. Recall that according to the IEEE 802.11ac standard   , every MSDU within an MPDU frame is preceded
Figure 1. The Two-Level aggregation process.
by a SubFrame Header of 14 bytes, and with this field it is rounded to an integral multiple of 4 bytes. The
received size is such that. Recall also that every MPDU within a PSDU is preceded by a
MAC Delimiter. To compose an MPDU one also adds the MAC Header and Frame Control Sequence (FCS) fields to the MSDUs of the MPDU. Thus, the length of the PSDU in bytes is
where. MacDelimiter, MacHeader and FCS denote the sizes in
bytes of the MAC delimiter, MAC Header and FCS fields respectively.
The receiver of an A-MPDU frame acknowledges its reception by a Block Ack (BAck) control frame. In BAck the receiver separately acknowledges the reception of every MPDU in the received A-MPDU frame.
Let and let be the BackOff interval that a station uses in a given transmission. The transmission time without collisions of the above A-MPDU is  :
The additional 22 bits are due to the SERVICE (16 bits) and TAIL (6 bits) fields that are added to every transmission by the PHY layer Conv. Protocol  .
In Equation (1) we assume the OFDM PHY layer. is the duration of one Transmission Symbol in OFDM, and it is 4 ms. equals 4 in OFDM and R is the PHY rate in Mbps. Any transmission in OFDM must be of an integral number of Symbols.
2.2. The Error Model
We assume that the process of frame loss in a wireless fading channel can be modeled with a good approximation by a low order Markovian chain, such as the two state Gilbert model   .
In this model the state diagram is composed of two states, “Good” and “Bad”, meaning successful or un- successful reception of every bit arriving at the receiver, respectively. Bit-Error-Rate (BER) is the probability of moving from the Good state to the Bad state. is the probability of staying at the Good state. According to the above model, the success probability of a frame of length B bits is and the failure probability p is given by Equation (2):
By the above model one can see that as the frame length B increases, so does the failure probability. Thus, in every aggregation scheme, increasing the aggregation amount increases the frame’s size as well as the trans- mission delay of the frame. The failure probability can sometimes also increase.
We would like to mention that there are other models to represent the quality of the indoor wireless channel, e.g. the one in  . This model shows burstiness in the channel quality. In this paper however, we assume that the communicating stations use Link Adaptation by which they keep the effective SNR stable and in such a scenario the BER is stable.
2.3. IEEE 802.11ac ARQ Protocol
We give only a brief description of the IEEE 802.11ac ARQ protocol. A more detailed description can be found in  and in sections 220.127.116.11 - 18.104.22.168 in  .
Consider the transmission of a series of MPDUs from one entity to another in IEEE 802.11ac. MPDUs are numbered, and the recipient signals the transmitter which MPDUs arrived successfully and which in error. Failed MPDUs are retransmitted by the transmitter. The number of retransmissions of an MPDU is limited.
The transmitter maintains a Transmission Window (TW) over the sequence numbers of the MPDUs. We denote this transmission window by MAC TW, to distinguish it from transmission windows of higher levels’ protocols, such as the one of TCP. Only MPDUs within the MAC TW are allowed for transmission to the re- cipient. The maximum size of the TW is 64 consecutive sequence numbers because the recipient can acknow- ledge at most 64 MPDUs in one BAck control frame  .
Let X be the smallest sequence number in the MAC TW and X + 63 be the largest. As long there is no acknowledgment from the recipient that MPDU X arrived successfully, the MAC TW does not change. When an acknowledgment for MPDU X arrives, the MAC TW moves one position (number) along the sequence numbers’ space: X is taken out and X + 64 is inserted into the MAC TW.
Let K be the maximum number of MPDUs that can be transmitted in one PPDU in Two-Level aggregation. Assume that MPDU X has been transmitted several times with no success. In this case the MAC TW is unchanged and it is possible that only M MPDUs within the MAC TW, are unacknowledged by the recipient. In such a case only M MPDUs are transmitted and the MAC TW limits the number of transmitted MPDUs. As K is larger the probability for such a scenario is larger.
We assume the following values for the time intervals used in IEEE 802.11ac and we assume that the reader is familiar with the basic access scheme of IEEE 802.11ac networks. For the OFDM PHY layer SlotTime = 9 ms and SIFS = 16 ms. The BAck and Ack frames are 32 and 14 bytes long respectively. Their transmission times, denoted and respectively are 32 ms and 28 ms respectively, using the Basic PHY Rate of 24 Mbps. These times include the PHY preamble preceding the transmissions of these frames. If the PHY rate R used for data frame transmissions is lower than 24 Mbps, then R is also used for the BAck and Ack transmissions. However, in this paper we assume a PHY rate of 1299.9 Mbps assuming working point MCS9 with 3 spatial streams and an 80 MHz channel. With 3 spatial streams the PHY Preamble is 48 ms  .
2.4.1. Successful Transmissions
In Figure 2 we show the activity on the channel where a successful transmission occurs, i.e. without collisions. In this case, after a station senses an idle channel for a duration equal to its AIFS and BackOff intervals, it transmits the data frame. After a SIFS and a PHY Preamble the receiver acknowledges reception. In the case of Two-Level aggregation the BAck frame is used.
2.4.2. Collision Events
In Figure 3 we show the activity on the channel in the event of collisions. We show two stations, A and B. After the channel is clear, and assuming that the Network Allocation Vector (NAV) at both stations is equal to 0, both stations wait the AIFS interval. If their BackOff intervals are equal, both stations begin together to transmit their data frames when the BackOff intervals terminate. If the data frame of B is shorter than that of A, then when B terminates its transmission it detects a carrier on the channel; that of A’s transmission. Thus, it recognizes that they have collided. When A terminates its transmission, it waits the SIFS interval, recognizes that it has not received an acknowledgment and so detects the collision. Both A and B now wait the interval Extended Inter Frame Space (EIFS) after the transmission of A terminates. The channel then becomes clear and the BAckOff intervals at the stations start again. EIFS is the interval that stations wait in IEEE 802.11ac after a collision is detected  .
2.5. Access Categories
As mentioned, we consider the four ACs defined in the IEEE 802.11ac standard, i.e. BE, BK, VO and VI. The ACs defer in the values of the parameters that control the access to the channel, namely AIFS, and. For every AC the value of AIFS, denoted AIFS [AC], equals to. The various Access Category Numbers (AIFSN [AC]), and appear in Table 1. The values are taken from the WiFi Alliance (WFA) publications  . The EIFS used in every AC, denoted, equals to. For the computation of EIFS, it is assumed that the Ack frame is transmitted in the smallest basic PHY rate of 6 Mbps, i.e. the for the computation of the EIFS is 44 ms. The value of AIFS [AC] and EIFS for every AC also appear in Table 1.
3. TCP Traffic Model over IEEE 802.11
In this section we describe our model for the transmission of TCP traffic over IEEE 802.11. In Figure 4 we show the Traffic flow considered.
We assume an application with a massive Data stream, for example a Video stream that uses TCP, and its Data bytes are mapped into equal length TCP segments. A TCP segment is mapped into an IP Datagram. IP Datagrames are given to the MAC layer of the IEEE 802.11ac as MAC Service Data Units (MSDU) and these are packed into MPDUs (A-MSDUs). MPDUs are kept in a Transmission Queue and are transmitted using Two-Level aggregation. Recall that we assume a saturation scenario in which the TCP always has an unlimited number of Data segments to transmit. Also notice the MAC TW mentioned in Section 2.3.
Figure 2. The activity on the channel in the case of a successful transmission.
Figure 3. The activity on the channel in the case of a collision.
3.1. Operation Modes for TCP Usage of the Channel
We consider 2 operation modes for the transmission of TCP Data/Ack segments over the channel.
3.1.1. Operation Mode 1-No-RD, Competition
Both the TCP transmitter and the TCP receiver contend for the channel in every transmission attempt, i.e. when the TCP receiver has TCP Acks to transmit, it contends for the channel with the TCP transmitter in every transmission. Both stations use the Two-Level aggregation.
3.1.2. Operation Mode 2-Reverse Direction
Reverse Direction is a mechanism in which the owner of a Transmission Opportunity (TXOP) can enable its receiver to transmit back during the TXOP, so that the receiver does not need to contend for the channel. This is particularly efficient for a bi-directional traffic such as TCP Data segments and TCP Acks.
We examine an operation mode in which the TCP transmitter (AP) transmits A-MPDU frames containing MPDUs of TCP Data segments to the TCP receiver (station), and enables the TCP receiver to answer with an A-MPDU frame containing MPDUs frames of TCP Acks. Both stations use the Two-Level aggregation.
We assume the following scenario to use RD, as is illustrated in Figure 5:
After waiting AIFS and BackOff the TCP transmitter (AP) transmits n A-MPDU frames in a row in the TXOP. In Figure 5 we assume. The TCP receiver (station) responds to every transmission by a BAck frame. In its last A-MPDU frame the TCP transmitter sets the RDG bit  , enabling the TCP receiver to respond with an A-MPDU frame. The TCP transmitter then responds with a BAck frame and terminates the TXOP with the CF-End frame  .
We assume that there are no collisions on the channel after the end of a TXOP because the TCP receiver is configured in a way that prevents collisions. For example, the TCP receiver is configured to choose its BackOff interval from a very large contention interval, other than the default ones in Table 1. Thus, the TCP transmitter always wins the channel without collisions. The transmissions on the channel are composed of TXOPs that repeat themselves one after the other. We denote by the case where the TCP transmitter transmits n A-MPDU frames in the TXOP.
4. Error-Free Channel Results
In this section we assume an error-free channel, i.e. BER = 0, and in this case the operation mode using Reverse Direction (RD) is as follows: Every transmission of the TCP transmitter contains MPDUs,. Assuming TCP Data segments of bytes, the resulting IP Datagrams are of 1500 bytes (20 bytes of IP Header are added) and together with the SubHeader field and rounding to an integral multiple of 4 bytes, every MSDU is of bytes. Due to the limit of 11,454 bytes on the MPDU size, 7 such MSDUs are possible in one MPDU. The total number of MSDUs transmitted by the TCP transmitter in one TXOP is
Figure 4. The traffic model.
Figure 5. The operation mode that uses reverse direction.
Table 1. The values of, , AIFS number, AIFS and EIFS in the four access categories of IEEE 802.11ac for a station (Access point).
The TCP receiver transmits TCP Acks. Every TCP Ack is of bytes (20 bytes of TCP Header + 20 bytes of IP header + 8 bytes of LLC SNAP). Adding 14 bytes of the SubHeader field and rounding to an integral multiple of 4 bytes, every MSDU of the TCP receiver is bytes, and every MPDU, again due to the size limit of 11,454 bytes, can contain 178 MSDUs. Every transmission of the TCP receiver can contain up to 64 MPDUs.
The receiver can transmit up to TCP Acks (MSDUs) in a single transmission. Therefore, the number n of transmissions of the TCP transmitter in a TXOP should be limited by the following inequality:. Using larger n’s will not increase the Goodput.
Let and denote the length, in ms, of the AIFS, BackOff, PHY Preamble and SIFS time intervals, and BAck, CF-End denote, in ms, the transmission times of the BAck and CF-End control frames respectively. Let be the total length of the MAC Delimiter, MAC Header and FCS fields of an MPDU in bytes respectively. We assume that the MAC Header is of 28 bytes and the FCS is 4 bytes. Therefore, bytes.
Since there are no collisions when using RD, holds, where we refer to the
of the AP. See Table 1. We now define C to be. The last in C is the one preceding the transmission of the station.
Let and be the transmission times of the AP and the station’s A-MPDU frames res- pectively. is given by the following (the details of how Equations (3)-(5) are derived can be found in  ):
and is as follows:
where is the number of MPDUs in the station’s A-MPDU frame and.
The length of a TXOP is therefore given by
and the Goodput of the system is
Neglecting the rounding of and the Goodput can be written as :
One can see that as n increases and/or increases, so does the Goodput. Notice that since BER = 0, the MAC ARQ protocol does not impose any limitation on the number of MPDUs that are transmitted by the TCP transmitter in every transmission, as long as. Also, it is most efficient to contain 7 MSDUs in every MPDU because this choice best amortizes the PHY/MAC overheads over the MSDUs.
In Figures 6(A)-(D) we show the Goodput results for the BK, BE, VI and VO ACs respectively, as a function of. These results are derived from Equation (7) and were validated by simulation. The simulation is carried out by a software that we wrote and it is verified by analysis using a Markov chain model (in the Appendix).
Figure 6. The Goodput of the various ACs with and without RD, 1 TCP Ack per 1 TCP Data segment, BER = 0.
In every graph there are curves for. There is also a curve for the Goodput in the operation mode where RD is not used, i.e. the AP and the station use the “regular” IEEE 802.11ac MAC and compete for the channel in every transmission attempt. We denote this scenario by No-RD. This curve was obtained by simulation and the station always tries to transmit as many MPDUs as it can (up to 64), that are in its Transmission Queue at the time it acquires the right to transmit. The results for the No-RD scenario are also validated by an analysis based on a Markov chain. In the Appendix we present the Markov chain and its design.
We see in all the graphs that as the number of transmissions increases and/or as increases, so does the Goodput. We also include a curve showing the maximum possible Goodput using RD. This curve is obtained as follows: For every we first find the maximum number of possible transmissions, , such that
. Recall that is the maximum number of TCP Acks that the receiver can transmit in
a TXOP. Then, we compute the received Goodput for using Equation (7). For example, for
holds that and for holds.
Notice that in the VI and VO ACs and for s larger than 15, the difference in performance between No-RD and using RD is the largest among all the ACs. This happens because in these ACs and are the smallest among the ACs and so the probability for collisions is the largest. In large s collisions waste relatively long intervals of time and so the decrease in the Goodput is significant. As and decrease, the difference between using RD and No-RD increases. Notice that in VO and so the collision probability is 25%. In VI and the collision probability is 12.5%. For the BK and BE and the collision probability is only 6.25%.
For smaller s, i.e., notice that No-RD sometimes outperforms. In BK and BE the collision probability is small and the AP and the station transmit almost alternately. Therefore, No-RD and have almost the same performance, except that in there is an extra overhead of CF-End and at the end of every TXOP.
As the value of AIFS is larger, this overhead is less significant. In BE the AIFS is 43 ms compared to 79 ms in BK and therefore the is more significant in BE and No-RD slightly out- performs, while in BK they perform equally.
In VI and VO the AIFS is smaller than in BK and BE and so the overhead is more significant. Moreover, the AP in these ACs has a higher probability of accessing the channel than the station because its AIFS is shorter by one Slot-Time. This enables the AP in No-RD to transmit several times in a row before the station replies. This also enables a better Goodput in No-RD than in where the AP and the station transmit alternately. On the other hand, the collision probability is larger in VI and VO. However, the AP transmits many times without competition in No-RD when the TCP receiver has no TCP Acks to transmit. The overall outcome is a slightly larger Goodput in No-RD, compared to, than in BK and BE.
In Figure 7 we show the same results as in Figure 6 but now every TCP Ack acknowledges two TCP Data segments, a feature known as TCP Delayed Acks. For clarity, for the No-RD scheme we only show the simulated results. The analytical results are similar, as can be seen in Figure 6. Normally, the TCP receiver does not send an Ack the instant it receives data. Instead, it delays the Ack, hoping to have data going in the same direction as the Ack, so the Ack can be sent along with the data. This delay is usually in the order of 200 ms. However, if meanwhile another data segment arrives, the TCP receiver immediately generates an Ack to send.
Using TCP Delayed Acks enables the TCP transmitter to transmit more TCP Data segments in one TXOP: the limiting condition is now. Comparing between the curves of the Maximum Goodputs in the cases of with and without TCP Delayed Acks reveals an improvement of only about 2% in the Goodput for large s in the case of TCP Delayed Acks. The reason for the small improvement can be understood from Equation (7): the main impact of TCP Delayed Acks is in enabling more transmissions of the TCP transmitter during a TXOP. However, increasing the number of transmissions n does not increase the Goodput significantly for “large” n’s.
Finally, in Figure 8 we show the Goodput of the various ACs as a function of the TXOP duration. In Figure 8(A) and Figure 8(B) we assume that TCP Delayed Acks are not in use and in use respectively. The curves were computed as follows: For every S TCP Data segments, (for TCP Delayed Acks)
Figure 7. The Goodput of the various ACs with and without RD, 1 TCP Ack per 2 TCP Data segment (TCP Delayed Acks), BER = 0.
Figure 8. The maximum Goodput vs. the duration of the TXOPs in the various ACs, with and without TCP Delayed Acks, BER = 0.
we explored the most efficient way (Maximum Goodput) to transmit these segments, and the achieved Goodput. The most efficient way is to transmit as many MPDUs as possible in a single transmission, up to 64, while every MPDU contains 7 MSDUs except the last one, when S is not divided by 7. We then checked the cycle length, and how the curves relate between cycles’ lengths and Goodputs. For example, if we find that transmitting S TCP Data segments with the largest Goodput G takes, it is easy to verify that G is the largest Goodput possible in.
We see that all the ACs achieve the same Goodput for “long” TXOP. This happens because the cycles in the various ACs differ only in the AIFS and BackOff time intervals which become negligible in long cycles. In shorter cycles the VI and VO ACs achieve the same best performance because their AIFS are the shortest, 25 ms for the AP. BE outperforms BK because its AIFS is 43 ms (AP) compared to 79 ms in BK. See Table 1.
There are two important outcomes from Figure 8. First, using a TXOP of 20 - 30 ms is sufficient to achieve almost the largest Goodput possible. This is important since it enables short time-outs in the TCP protocol and so the TCP transmitter can receive TCP Acks sooner, while still using the wireless channel efficiently. Second, in a scenario where there are several TCP connections between the AP and several stations, it is sufficient for the AP to use TXOPs of 20 - 30 ms in order to use the channel efficiently. This has an impact on the fairness among the stations and is the basis for further research.
5. Error-Prone Channel Results
In this Section we assume the BERs of and. We concentrate only on the BE AC. The results for the other ACs are similar, with the same differences compared to BE as described in Section 4. In Figures 9(A)-(D) we show the Goodput vs. the maximum number of MPDUs per transmission of the TCP transmitter in the BE AC for respectively. First notice that the title of the X-axis in Figure 9(A) is different than those of parts (B), (C) and (D). This is because the positive BER can cause the MAC TW to limit the number of transmitted MPDUs in a single transmission to be smaller than, and so is only the maximum allowed MPDUs in a single transmission.
In general using RD results in a larger Goodput. Notice however that as the BER increases, the advantage of over No-RD decreases. As the BER increases, the number of MPDUs that the TCP transmitter is able to transmit in every transmission decreases. The MAC TW is not always able to slide so that it will contain MPDUs, i.e. the maximum allowed number of MPDUs. This results in two outcomes: First, as the BER increases a smaller number of MPDUs are transmitted in No-RD and, and a smaller number of MPDUs arrive successfully at the TCP receiver in both schemes. However, shorter A-MPDU frames have an advantage in No-RD because the penalty of collisions is smaller. These two outcomes cause and No-RD to coincide as the BER increases.
Figure 9. The Goodput of the Best Effort AC with and without RD for various BERs, 1 TCP Ack per 1 TCP Data segment.
In there is a second transmission in every TXOP which increases the probability that MPDUs arrive successfully. Thus the MAC TW slides faster, enabling more successful transmissions of MPDUs. This causes a significant improvement in the Goodput of compared to No-RD.
Notice that Figure 9(A) is for BER = 0 and it is the same as Figure 6(A). In Figure 9(A) we can provide a curve showing the maximum possible Goodput. However, for BER > 0, in order to find such a curve one needs to know, given, the actual average number of transmitted MPDUs in every transmission of the TCP transmitter. This number might be smaller than, especially for large s, because it is possible that the MAC TW does not contain MPDUs. Such a computation is difficult   and it is out of the scope of this paper. This is also the reason why we cannot provide analytical results for the No-RD scheme as for the case BER = 0. Notice again that for small s No-RD slightly outperforms for the same reasons given for this phenomena in Section 4.
Figure 10. The Goodput of the Best Effort AC with and without RD for various BERs, 1 TCP Ack per 2 TCP Data segments (TCP Delayed Acks).
TCP Delayed Acks does not improve the performance of the No-RD scheme because in the case of collisions, the time wasted is the time of transmitting the TCP Data segments. The shorter time of transmitting the TCP Acks has no influence in this case. On the other hand, in the schemes that use RD the reduced time of transmitting TCP Acks has an influence because the TXOP length is shorter. Therefore, one can see that the difference between the performance of the RD schemes to that of No-RD is larger than in the case of not using TCP Delayed Acks.
In Figure 11 we show the use in the scheme of  where each of the first 3 MPDUs in every A-MPDU frame of the TCP transmitter is transmitted twice, i.e. MPDU repetition. Only the first 3 MPDUs are transmitted twice because it is the most efficient scheme (max. Goodput), as was shown in  . This scheme, which we denote, has two effects. First, it increases the arrival success probabilities of the first 3 MPDUs in the A-MPDU frames. As an outcome, it enables the MAC TW to slide faster and to contain more MPDUs ready for transmission, compared to the case of not using Rep. On the negative side the transmission time of the A-MPDU frames increases by transmitting the first 3 MPDUs twice. Therefore, for BER = 0 it is clear that the performance of Rep. is worse than not using it. As the BER increases, the advantage of Rep. increases. We also found that for BER = 10−7 it is inefficient to use Rep. However, for BER = 10−5, 10−6 Rep. improves the achieved Goodput as we show in Figure 11.
In order to demonstrate the improvement consider Figure 11(A) for BER = 10−5 without TCP Delayed Acks. One can see that all the schemes, namely No-RD, RD(1), RD(2) and, benefit from using Rep. in the case of large s, while for small s it is not efficient. Notice that in the case of small s the probability that the MAC TW will contain MPDUs ready for transmission is much larger than in the case of larger s. Therefore using Rep. in the former case only increases the transmission time of the TCP transmitter A- MPDU frames with no benefit.
Figure 11. Comparing transmissions with and without Rep. in the Best Effort AC.
In Figure 12 we show the maximum received Goodputs vs. the BER for the No-RD, RD(1), RD(2) and schemes. In Figure 12(A) and Figure 12(B) we consider the cases without and with TCP Delayed Acks respectively. We see that for every BER, using RD is more efficient than not using RD. For BER = 10−5 and in several cases when BER = 10−6 using Rep. even improves the Goodput further. For example, in BER = 10−5 the Goodput of is 780 Mbps, compared to 600 Mbps in the No-RD case. With using Rep. the Goodput of is 860 Mbps, over 40% improvement compared to No-RD. For BER = 10−7 and BER = 0 using Rep. decreases the performance for the reasons mentioned previously.
Finally, in Figure 13 we show the maximum received Goodput as a function of the TXOP for BER = 10−5. Recall that for BER > 0 it is difficult to find the number of actually transmitted MPDUs in every transmission of the TCP transmitter. Therefore, we cannot use the same technique to compute the maximum Goodput as in Section 4, BER = 0.
Instead, we computed the average TXOP duration for. For every received Goodput G we looked for the that achieves G with the shortest TXOP duration.
Figure 12. The maximum Goodput in the various transmission schemes vs. BER, for the Best Effort AC.
The outcomes and conclusions are similar in trend to those in Figure 8 except that the achieved Goodputs are much lower because of the positive BER. On the other hand the delays, i.e. the length of the TXOPs, are shorter. In BER = 0 there is no benefit to using TXOPs of more than 20 ms while for BER = 10−5 there is no benefit to
Figure 13. The maximum Goodput vs. the duration of the TXOPs in the various ACs, with and without TCP Delayed Acks, BER = 0.
using TXOPs of more than 4 ms.
This paper shows an example of the benefit achieved when different layers in the protocol stack co-operate. In particular, we show the improvement in the TCP Goodput that is achieved when the MAC layer of the IEEE 802.11ac standard is aware of TCP traffic. Using Reverse Direction, the contention between the TCP transmitter and receiver is eliminated, and no time is wasted due to collisions.
Using also the Two-Level aggregation scheme, in an error-free channel the TCP Goodput is improved by 20% compared to contension based channel access. In an error-prone channel the TCP Goodput is improved by 60% also blindly using retransmission of frames in A-MPDU frames.
This paper assumes only one TCP connection in the system, which is a scenario that is possible in small systems such as in the Home environment. A next research step is to investigate the performance of Reverse Direction and aggregation when the AP maintains several TCP connections at the same time.
In this Appendix we describe a Markov chain model for the No-RD scheme and for an error-free channel. The Markov chain is based on two assumptions: First, we assume that the case of 3 or more consecutive collisions on
the channel is very rare. Notice that for the VO AC the probability for 2 consecutive collisions is.
Therefore, we assume that only two sizes of contention intervals are used, and . Second, as already mentioned, we assume the saturated scenario where the TCP transmitter always has TCP Data segments to transmit and that the TCP transmission window does not limit the offered load. In particular, we assume that for every, the TCP transmitter can always transmit MPDUs in a single transmission. Every MPDU contains 7 MSDUs of TCP Data segments. The TCP receiver transmits all the TCP Acks it has in one A-MPDU, up to in one transmission.
We also assume that every TCP Ack acknowledges one TCP Ack. The extension to the case of Delayed Acks is immediate.
We first present a Markov chain for the BE and BK ACs, which are symmetrical in the sense that the AIFS of the AP and the station are equal, Table 1. We later show what changes are needed for the VI and VO ACs that are a-symmetrical.
The Markov chain follows after the channel access state. The set of its states, together with the transitions among the states, is shown in Figure 14. A state, except for the Initial State, represents 3 variables, and is
Figure 14. Groups (A)-(D) of the Markov chain for the No-RD scheme and BE, BK ACs. C stands for. “*” means there is no BackOff number.
denoted. X denotes the number of TCP Acks that the TCP receiver accumulated to transmit. and are the values of the BackOff numbers of the AP and the station respectively, to be used in their next transmission attempt. These numbers are multiplied by SlotTime to get the BackOff intervals. When the station does not have TCP Acks to transmit, it does not have a BackOff number, denoted by “*” in Figure 14.
The Markov chain is based on 4 groups of states, denoted Groups (A)-(D). In the first group, Group (A), there is only one state, the Initial State. In this case the AP randomly chooses its first BackOff number, and move to
the appropriate state in Group (B). Every transition probability is where C stands for and notice
that the BackOff number is chosen at this stage from the interval.
In Group (B) there are states of the form. A state in this group denotes that the station does not have TCP Acks to transmit. The number of states in this group is. The transitions from every state in this group are according to the randomly chosen and, which are chosen from the interval.
In group (C) the station has TCP Acks to transmit. We explain what is M later. Notice that there are three types of transitions from a state in this group-a transition when the AP transmits, when the station transmits and when there is a collision. The transitions and their corresponding probabilities are straight forward. Notice that after the station transmits it is left without TCP Acks, and the transition is to a state in Group (B). We later explain why we assume that the station is left without TCP Acks.
Notice that in principal the size of the Markov chain is unlimited. We therefore look for a finite size that will give analytical results within say 1% of those of the simulation. This seems to be a reasonable error range. We
Figure 15. Groups (A)-(D) of the Markov chain for the No-RD scheme and VI, VO ACs. C stands for. “*” means there is no BackOff number.
therefore assume that the station cannot accumulate more than TCP Acks, and gives the desired error range. Therefore, in every state in Group (C) the station can transmit all the TCP Acks it has in one transmission. (The station can accumulate up to TCP Acks and transmit them in one A-MPDU).
Group (D) of states is similar to Group (B), except that the station already has TCP Acks to transmit, and every another A-MPDU that the AP transmits is dropped by the station.
We attach a metric to every state. The metric denotes the time elapsed on the channel in this state. The metric of the Initial State is 0. A state in which the AP transmits has a metric equals to. T(DATA) is the transmission time of an A-MPDU frame containing MPDUs of 7 TCP Data segments each. A state in which the station transmits has a metric equals to. T(ACK) is the transmission time of an A- MPDU frame containing all the TCP Acks that the station has. For a state in which there is a collision the metric equals to. T(COL) is the maximum between and of the frames involved in the collision. We denote by the Time metric of state S.
We also attach a metric to every state. Recall that we consider a transmission of a TCP Data segment to be a successful one only when a TCP Ack segment is received for this segment. Thus, the metrics of the Initial State, every state in which the AP transmits and every state that denotes a collision are all 0. For any other state the metric is the amount of bits of TCP Data segments, where X is the number of TCP Acks that are transmitted in the state, divided by the metric of the state. We denote by the Goodput metric of state S.
The Goodput G of the system is where and are the stationary pro-
bability, metric and metric respectively of every state S in the Markov chain.
Concerning the VI and VO ACs, the AIFS of the AP is shorter than that of the station by one SlotTime, Table 1. Therefore, a collision occurs when, the AP transmits when and the station transmits when. The modified Markov chain for these ACs is shown in Figure 15.
Submit or recommend next manuscript to SCIRP and we will provide best service for you:
Accepting pre-submission inquiries through Email, Facebook, LinkedIn, Twitter, etc.
A wide selection of journals (inclusive of 9 subjects, more than 200 journals)
Providing 24-hour high-quality service
User-friendly online submission system
Fair and swift peer-review system
Efficient typesetting and proofreading procedure
Display of the result of downloads and visits, as well as the number of cited articles
Maximum dissemination of your research work
Submit your manuscript at: http://papersubmission.scirp.org/