Available online at www.sciencedirect.com
Computer Communications 31 (2008) 1638–1652 www.elsevier.com/locate/comcom
A cross layer rate adaptation solution for IEEE 802.11 networks S. Khan *, S.A. Mahmud, K.K. Loo, H.S. Al-Raweshidy School of Engineering and Design, Brunel University, Uxbridge, Middlesex UB83PH, London, UK Available online 26 January 2008
Abstract Optimizing the performance of wireless networks for emerging network applications is a highly challenging issue. Cross layer solutions offer promising possibilities of joint optimization across the protocol suite. This paper proposes a cross layer framework for rate adaptation in 802.11 networks. Previous approaches for rate adaptation mainly focused on the factors related to the wireless medium. However, the applications’ demands and timing constraints of the underlying protocols were not considered. The solution proposed in this paper tackles these shortcomings with a novel approach by performing rate adaptation according to the changing channel conditions, application preferences and timing constraints of the underlying protocols. The proposed rate adaptation is based on a loss differentiation mechanism which identifies the real cause of channel variations and takes an appropriate action thereafter. The design provides flexibility of tuning various parameters according to application type and offers minimal complexity. The simulation results assert considerable improvements over the previous solutions in terms of the algorithm response to application requirements and dynamic adjustment with variation in underlying protocol performance. Ó 2008 Elsevier B.V. All rights reserved. Keywords: Cross layer design; WLAN; Rate adaptation
1. Introduction The transition from wired to wireless networks opened up new horizons for research. There is a multitude of emerging network applications designed for personal and mobile devices. To support such a variety of applications, there is an ever growing trend to optimize the performance of the wireless networks. However, the communication stack which handles the end to end communication in data networks was initially designed for wired networks. During the transition from wired to wireless only a few protocols at the underlying layers in the communication stack were replaced with new protocols for wireless networks. In other words, the higher layers and their residing protocols remained ignorant of the fact that now they are operating without a wire. This lack of knowledge about the new protocols and different characteristics of a new physical layer (PHY) consequently caused wrong assumptions at the *
Corresponding author. Tel.: +44 7973138171; fax: +44 1895258728. E-mail address:
[email protected] (S. Khan).
0140-3664/$ - see front matter Ó 2008 Elsevier B.V. All rights reserved. doi:10.1016/j.comcom.2008.01.035
higher layers. While layer to layer abstraction was a goal of the layered protocol suite; in case of wireless networks it presented a few problems. In order to cope with these problems an idea of cross layer information exchange was coined [2–7]. The idea behind cross layer information exchange is to use various parameters from different layers for joint optimization of protocols across the communication stack. Based on a similar approach, this paper presents a solution for rate adaptation in IEEE 802.11 networks. Wireless devices operating under IEEE 802.11 standards, have the ability to transmit at various data-rates. However, the mechanism of selecting a particular value is not specified in the standard [1]. Device manufacturers and research community provide different solutions to address this problem. All of previous solutions focused on dynamic adjustment of data-rate according to the changing conditions of the wireless medium, where the medium status is determined using various methods. However, these solutions completely ignored the application preferences and the underlying protocol limitations and timing constraints. Different network applications have different requirements
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
in terms of delay, throughput and resilience to packet losses, etc. Likewise, the design of Medium Access Control (MAC) protocol imposes certain timing constraints on stations in order to regulate access to a shared medium. Such timing constraints in general causes overhead in terms of time. Therefore, the underlying rate adaptation algorithm should be capable of adjusting its behavior according to the application requirements and variation in the timing overhead as a result of varying node density or user movement. The solution presented in this paper handles these shortcomings with a novel approach by performing rate adaptation according to changing channel conditions, application preferences and timing constraints of the underlying protocols. The proposed design is based on a cross layer framework involving two way (application layer with rate adaptation algorithm) communications. It also incorporates a frame loss differentiation mechanism for assessing the channel variations while performing rate adaptation. The following Section 2 provides detail about the background of rate adaptation mechanisms and the related work. Various aspects e.g. types of algorithms, implementation issues, timing constraints and state of the art is discussed in Section 2. Section 3 gives complete detail of the proposed solution for rate adaptation. The proof of concept is established in Section 4 with the help of various simulation results and analysis. Finally, Section 5 concludes the paper. 2. Background and related work
1639
to avoid hidden node problem. Before the start of data transmission the sender sends RTS frame. The receiver calculates the Signal to Noise Ratio (SNR) for the received RTS frame. Based on the SNR value the receiver calculates a transmission rate for the data transmission between itself and the sender. It sends the selected data rate information in the CTS frame to the sender. The standard RTS/CTS frames are modified to accommodate the new information. However, for a number of reasons SNR-based algorithms have not been successfully used in practical/commercial products e.g. the relationship between various values of SNR and data-rates on which these algorithms are built; cannot give optimum performance in all conditions. Likewise, algorithms using SNR for CSI estimation rely on the receiver side; which implies that the standard RTS/CTS frames has to be modified to accommodate the new information as in the case of RBAR which makes it incompatible with the existing 802.11 networks. 2.1.2. Statistics-based algorithms To determine the CSI without the explicit feedback from a receiver; certain performance metrics (which are generally related to the outcome of a frame transmission) are monitored at the source. Examples of such performance metrics used in various statistics-based rate adaptation mechanisms are: frame error rate (FER), throughput and ‘multiple retries at various rates’, etc. Statistics-based approaches are easier to implement but are inherently slow and take time to converge to the real channel conditions. According to [10], all known vendors of IEEE 802.11 standard equipment use statistical approaches for rate control.
2.1. Overview of rate adaptation mechanisms The objective of rate adaptation mechanisms is to determine the current channel state-information (CSI) and accordingly select a data-rate value which can give optimum performance in terms of throughput, delay and other performance metrics. There are various approaches to determine the CSI [20–28]; some algorithms use Signal to Noise Ratio (SNR) estimation at the receiver while others use statistical feedback or use a hybrid approach by combining the SNR and statistical information. Likewise, the algorithms are also categorized as sender-based/receiverbased algorithms on the basis of whether the rate adaptation is performed either at the sender side or the receiver side [8]. 2.1.1. SNR-based algorithms The channel state is mainly determined using SNR values at the receiver and hence algorithms using SNR estimations are receiver side algorithms. SNR-based approaches are hard to calculate but truly reflect the real channel conditions. Reference [9] introduces Receiver-Based Auto Rate (RBAR) algorithm. RBAR predetermines the transmission rate between a sender and receiver node with the help of modification in the RTS/CTS (Request To Send/ Clear To Send) protocol. The RTS/CTS protocol is employed
2.1.2.1. Throughput-based algorithms. In throughput-based approach, a decision window in terms of time is defined. Within a specific decision window, the algorithm sends a small fraction of data at adjacent lower or upper values of the current data-rate. At the end of every decision window it selects a data-rate which gives the highest throughput. SampleRate [11] is a rate adaptation mechanism which aims to maximize throughput by sending packets at a data-rate that has the smallest packet transmission time. Every 10th transmission, SampleRate selects a random value of data-rate from available values (supported datarate according to the IEEE 802.11 standard values) which may give higher throughput than at the current data-rate. However, a data-rate value is not sampled if four previous successive transmissions fail or the throughput is lower than the current value. Likewise, it stops probing at datarate values that experiences several successive failures. 2.1.2.2. FER-based algorithms. FER mechanism estimates channel conditions from the incoming acknowledgements (ACKs). Every successfully received frame is acknowledged by its receiver. FER exceeding a threshold value triggers bad channel condition and a lower data-rate value is selected. Similarly, a higher data-rate is selected when the
1640
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
number of successfully acknowledged packets exceeds a corresponding threshold. According to [12], Auto Rate Fallback (ARF) [13], is the first published rate adaptation algorithm and because of its use in most of the commercial IEEE 802.11 based equipment for rate adaptation, this is one of the most cited algorithm in research community working on rate adaptation. The key idea behind ARF is that each wireless station should select a higher data-rate after a predefined number of successful transmissions (which is 10 frames) or at a timer expiry. The timer is reset after selecting a higher data-rate. The transmitter stays at the newly selected (higher) value of data-rate if the number of successful transmissions at the new value is more than 2. Otherwise (in case if the first 2 transmissions fail at the newly selected higher data-rate) a lower data-rate is selected once again. Adaptive ARF (AARF) [12] is a proposed to improve the performance of ARF by introducing Binary Exponential Backoff for adaptively selecting the threshold value which is used for selecting a higher rate. For instance, in case of AARF, when the transmission of probing packets fails at a higher data-rate, the algorithm switches to a lower data-rate value. But after this failure the threshold value for the number of successful transmissions (which in case of ARF is always 10) is multiplied by two with a maximum bound set to 50. The threshold is reset to the default value of 10 if the data-rate is decreased because of two successive transmission failures. This mechanism incorporates an ability in the ARF to hold back from increasing the rate after every 10 successful transmissions. In other words it lengthens the duration between successive failed attempts. Onoe [14] is a credit based algorithm and works by incrementing/decrementing credits for a particular datarate value if the frame loss percentage is lower/higher than 10% in a periodic fashion with a default period of 1second. A higher data-rate value is selected if the number of credits crosses a specific threshold (10 or more). If no packets are successfully transmitted the data-rate is lowered to the lower available value. The credits are reset to zero each time a new data-rate value is selected. Opportunistic Auto Rate (OAR) [15] protocol aims at exploiting the duration of high-quality channel conditions. The core idea of OAR is to send back-to-back data packets whenever the channel conditions are good. OAR works in coordination with another rate adaptation algorithm (RBAR and optionally with ARF). Primarily, the rate adaptation algorithms are responsible for determining a suitable transmission value, and the OAR then maintains the selected transmission rate for successive transmissions when the channel conditions are good. 2.1.2.3. Multi rate retry algorithm. In this approach, different counters (threshold values) are associated with various data-rates. If the number of retries corresponding to a specific data-rate exceeds a threshold, then a lower data-rate is selected. Multiband Atheros Driver for WiFi (MADWiFi) is a Linux driver for 802.11 a/b/g using Atheros chipsets
[12,14]. In this implementation a hardware abstraction layer (HAL) provides an interface to the chipset. Up to nine unbounded first in first out (FIFO) queues of transmission descriptors can be created. A transmission descriptor holds a pointer to the data to be transmitted, size of the data, transmission status information and an ordered set of four pairs of rate and transmission count fields (r0/c0, r1/c1, r2/c2, r3/c3). The driver initializes a transmission descriptor and loads it in a FIFO. Initialization involves setting the pointer fields to point to the data buffer, its size and setting the values of rate and transmission count fields. While at the head of the FIFO, a transmission descriptor along with the data buffer is loaded in the local RAM as soon as an interrupt is generated by the chipset and transmission starts at a rate specified in r0. If for some reason the transmission fails, the driver tries to send it at the same rate c0 1 times. This mechanism helps cover up short term channel variations and it does not drop the transmission rate. But if the transmission keeps on failing it switches the rate to r1 and tries it c1 1 times. This process continues and the driver tries to send data at other rates. The status field is set at the end of data transmission and indicates the transmission status. Changing the rates from r0 to r1 and so on after a certain number of retries at each rate covers up the long term variations. However, the inherent retry mechanism in this algorithm makes it unsuitable for wireless nodes which are running real-time applications. Adaptive Multi Rate Retry (AMMR) [12] introduces Binary Exponential Backoff to the MADWIFI algorithm to adaptively set the length of time used for changing the values of rate/count pairs. The authors in [12] claim performance improvements over original Multi Rate Retry algorithm used in the MADWIFI. 2.1.3. Hybrid (SNR and statistics) algorithms Hybrid algorithms use a combination of statistical and SNR-based mechanisms for estimation of CSI. Reference [16] highlights an adaptive data-rate solution which uses a statistics-based (throughput-based) core controller and SNR-based feedback which can override the decisions of the core controller. During stable conditions data-rate values are selected according to the throughput-based algorithm. However, under volatile conditions detected by variations in SNR, the algorithm selects lower data-rates in order to minimize the probability of packet losses. 2.2. Timing constraints on algorithm design Rate control algorithm is a part of the Medium Access Control (MAC) layer whose implementation is device specific and involves combination of dedicated hardware and software. The design and combination of hardware and software for MAC implementation influences the communication latency and thus it also affects the rate control algorithm. Reference [12] identifies two classes of 802.11 standard devices: low-latency and high-latency systems. In low-latency systems per-frame rate adaptation
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
algorithms can be implemented while high-latency systems require periodic analysis of channel state and update certain parameters which enable rate adaptation. For lowlatency systems to work the communication latency between the physical layer and the rate control algorithm should be less than Tsuccess. According to the authors Tsuccess is the time interval between the end of a successful transmission and start of another and is equal to the distributed inter-frame space (DIFS) the smallest value being 28 ls for IEEE 802.11g. However, we cannot term it a perframe rate control algorithm if we consider DIFS as the time interval for decision making in a rate controller. It can be called as per-transmission rate control mechanism. However, for a per-packet rate adaptation algorithm, the latency should be less than Short Interframe Space (SIFS). As mentioned in [1], the successive transmission of fragments (fragment burst) and acknowledgments (ACKs) are spaced with SIFS. SIFS is fixed per PHY, defined in the Management Information Base in [1]. SIFS in turn depends on MAC processing delay and a number of other parameters (sum of aRxRFDelay, aRxPLCPDelay, aMACPrcDelay, aRxTxTurnaroundTime given in [1]). The timing detail for different versions of IEEE 802.11 standard is given in Table 1. 2.3. Analysis Generally majority of rate adaptation mechanisms do the following in one way or another: (i) Assess the channel state and come with a conclusion. (ii) Using the conclusion about the channel state, take an action which can improve network performance. The widely adopted approach for assessing the channel state is based on the status of the most recent frame transmissions. And as a result the general conclusion is to decrease the data-rate if there are frame losses. However, such a conclusion may not hold true for all situations because there may be several other reasons which may cause frame losses e.g. presence of hidden nodes and thus the conventional assumption will cause performance degradation [17]. Likewise, the adaptation interval (response time of a rate adaptation algorithm) after which the data-rate is either incremented or decremented also plays an important role in the overall performance of a rate Table 1 Timing detail for various 802.11 standards IEEE standard
PHY
aMACPrcDelay
aSIFTime
802.11 (1997)
FHSS DSS IR OFDM
2 2
28 10 7 16
802.11a (1999)
128 50 11 34
Note: aMACPrcDelay, aSIFTime and DIFS are defined in Management Information Base (MIB) of [1].
1641
Fig. 1. Data-rate and coverage area in 802.11.
adaptation algorithm. For instance, consider the scenario in Fig. 1 where a wireless source station is transmitting data to another wireless station in ad-hoc configuration and ARF is used for rate adaptation with the initial data-rate of 1 Mbps. ARF reacts to short term variations very well and quickly drops the transmission rate. But inherently it tries to go at a higher rate after every 10 successful transmissions or the timer expiry. This behavior can cause back and forth rate switching as a result of traxnsmission failures as the algorithm tries to go at higher rates. In this scenario, the receiving station is located in the third circle where the source can transmit with a data-rate of 5.5 Mbps. As the transmission begins, ARF will change the data-rate from 1 to 2 Mbps and then to 5.5 Mbps. Assuming that there are no sources of interruption in this communication; the source node should be able to successfully transmit data at the rate of 5.5 Mbps as the receiver is within its coverage area. During the course of data transmission, the algorithm will then select 11 Mbps. At that moment, some or all of the packets might be lost as the receiver will be out of coverage area. In that case, the algorithm will decrease the data-rate to the previous value of 5.5 Mbps. After successful transmission of packets, it will again select the higher rate which will again cause retransmissions and lowering of data-rate to the previous value. Such a scenario will definitely result in a ping-pong effect; causing several retransmissions and severe MAC layer delay. And if similar conditions persist because of user movement (across the circles, shown inf Fig. 1); frequent retransmissions will occur because of the repeated attempts by the algorithm to try a higher rate; making it undesirable for real-time applications. Almost similar behavior will be shown by AARF, Onoe, SampleRate, AMRR and OAR if ARF is replaced in this scenario by either of these rate adaptation mechanisms.
1642
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
The performance of wireless networks is highly variable and depends on a number of factors e.g. mobility, distance between the transmitter and receiver, presence of hidden nodes, number of contending stations within the same basic service set, interference from neighboring 802.11 networks and so on. Likewise, there is a rich variety of network applications; having dissimilar requirements from the underlying networking protocols in terms of delay, throughput and mobility. The prevailing tendency of achieving higher throughput by increasing the data-rate among majority of the existing rate adaptation algorithms might sometimes achieve positive results. However, it is normally done at the expense of relatively higher delays as transmissions may frequently fail at higher data-rates. While some applications may be favored by higher throughput, others will be penalized by the resultant higher delay. Therefore, apart from controlling the data-rate according to the changing channel conditions the rate adaptation mechanism should be capable of fulfilling requirements of various classes of network applications. In order to handle, a similar scenario [18] proposes a method in which three rate adaptation algorithms are used at the MAC layer. The rate adaptation algorithm is integrated in a cross layer framework, where a wireless adaptation layer (WAL) communicates important system parameters e.g. Type of traffic, rate of various types of traffic, application preferences and also MAC layer indication. WAL adaptation layer selects one of the three algorithms according to the type of traffic which suite the traffic requirements while dynamically selecting data-rate. The solution in [18] is lucid and very logical but the rate adaptation algorithm designed for real-time applications do not take into account the timing constraints of the MAC protocol. Without this consideration (e.g. the backoff and contention delays, etc. at the MAC layer) it will be very uncertain when the algorithm tries to over match the traffic requirements and thus the requirements will not be fulfilled. To support this argument consider Fig. 2 showing five scenarios with varying number of wireless nodes. In all five scenarios the data-rate of transmitter remained fixed. Because of the higher contention delays and higher
Fig. 2. Throughput during different scenarios with varying device density.
backoff the amount of data transmitted by a source to a particular destination decreases as the number of participating stations increase. Therefore, without taking care of the timing constraints and limitations of the underlying protocols, merely overmatching the data-rate requirements (as estimated at the transport layer) will not be useful. 3. Cross-layer rate adaptation (CLRA) 3.1. Motivation A rate adaptation mechanism is required for enabling the IEEE 802.11 MAC to adaptively select a data-rate according to varying channel conditions such that the selected data-rate yields highest achievable performance in that situation. Nevertheless, the reality is that there are a number of factors due to which the performance of wireless networks can be affected. Likewise, various network applications have different requirements which require adaptive tweaking of network performance metrics. Therefore, it is important that a rate adaptation mechanism should be capable to do the following: (i) Quickly react to the variations in wireless channel’s performance. (ii) Identify the actual reasons of variations and act accordingly. (iii) Select an efficient adaptation interval (which determines how often the rate adaptation mechanism will probe/sense the channel’s performance in order to recover after frame losses or at times of continuous good channel conditions). (iv) Perform rate adaptation according to application preferences. However, analysis of existing solutions establishes the fact that majority of these solutions are based on certain deterministic thresholds which may be misleading at times. Likewise, there is no solution which incorporates an ability of two way communication between application and the rate adaptation mechanism. Therefore, lack of authentic information (actual reason of variation) while determining channel state and lack of knowledge about application requirements are two common drawbacks in majority of existing solutions and motivate for further research in this field. This paper proposes a solution according to the above mentioned outline. The rate adaptation mechanism is integrated in a cross layer framework. The channel conditions are constantly monitored using a statistical approach (using number of frame losses as a measure to identify the channel state). However, loss differentiation is used in order to make intelligent decisions about assessing bad channel conditions. Consequently, variations in channel performance because of user movement, changes in the environment or presence of hidden nodes in a BSS can be differentiated before rate adaptation. The proposed rate
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
adaptation closely matches applications requirements while keeping in consideration the timing constraints of the underlying network protocols. The core idea is: to select such a data-rate value for the transmitter so that the amount of outgoing traffic (outbound network traffic generated by applications which is received by MAC sublayer) is equal to the traffic which can effectively be transmitted by the transmitter within a particular time under given MAC sublayer timing constraints. The proposed approach is self gauging and logically based on the timing constraints imposed by the IEEE 802.11 MAC protocol. 3.2. CLRA-rate matching The CLRA is essentially based on a rate matching (matching outbound traffic rate with effective transmission rate) approach. Therefore, to establish an analytical model for analysis of CLRA, it is important to consider the MAC sublayer timing constraints. For ease of explanation, time is divided in blocks where a time block includes the contention delay, DIFS interval, back-off duration and time for data transmission, as shown in Fig. 3. Consider a time block number ‘x’ of duration TBx, where the contention delay is TCx, backoff duration is bx and the time required for transmission of data during TBx is TDx. Therefore, T Bx ¼ T Cx þ mDIFSx þ bx þ T Dx
ð1Þ
Here, duration of every TB may vary because of the variable TC, single/several DIFS and b. Let the transmission time of an ith MAC Protocol Data Unit (MPDU) during TBx is Txi where i = {0, 1, . . . ,n} and ‘n’ is the total number of fragments (MPDUs). Txi depends upon the MPDU size and the data-rate of a transmitter. According to [1], all MPDUs except the last
1643
one of a fragmented MAC Segment Data Unit (MSDU) are of equal size and therefore Tx0 to Tx(n1) will be equal (if the data-rate remains the same). Therefore, the total effective time for transmission of data within a particular TBx can be denoted by TEx where T Ex ¼ tx0 þ tx1 þ tx2 þ . . . txn
ð2Þ
The maximum size of data which can be transmitted within a certain TBx is equal to the size of an MSDU (in case of no fragmentation) or sum of size of all MPDUs (in case of fragmentation). Let us denote the size of transmitted data and the corresponding protocol overhead during a TBx by dx. Therefore, the operational data-rate of a transmitter denoted by gT is gT ¼
dx T Ex
ð3Þ
Although the transmitter may be operating at a higher data-rate but because of the timing overhead (contention, backoff and inter-frame space delays) imposed by the MAC protocol the effective data-rate denoted by gE is essentially lower than gT. gE ¼
dx T Bx
ð4Þ
As TBx > TEx, therefore, gE < gT. If the outbound traffic (generated by the higher layers and received by the MAC sublayer for transmission) is generated at a rate denoted by gHL. Then within a TBx duration the amount of data arriving from higher layers is = gHL TBx. The data-rate controlling algorithm should adaptively select gT in such a way so that the amount of data generated by higher layers during any TB can be transmitted with in that period of time. In other words; gT T Ex ¼ gHL T Bx or dx ¼ gHL T Bx
Fig. 3. IEEE 802.11 MAC timing block diagram.
ð5Þ
1644
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
This relation can only hold when the amount of data arriving from higher layers is less than or equal to the MSDU size within any TB. Considering Fig. 3, let TCx + bx + mx DIFS=cx Then, T Bx ¼ cx þ T Dx
ð6Þ
For transmitting n-MPDUs, using RTS/CTS mechanism, the timing overhead imposed by the MAC sublayer is equal to the sum of (1 + 2n) times SIFS, n times ACKs, 1 CTS and 1 RTS duration. Therefore, T Dx ¼ T Ex þ ð1 þ 2nÞ SIFS þ n ACK þ CTS þ RTS
ð7Þ
Let, nx = (1 + 2n) SIFS + n ACK + CTS + RTS If RTS/CTS is not used then nx = (2n 1) SIFS + n ACK Therefore, (7) becomes: T Dx ¼ T Ex þ nx
ð8Þ
Replacing TEx in (8) with gdTx and then using value of TDx from (8) in (6): T Bx ¼ cx þ
dx þ nx gT
ð9Þ
Using TBx from (9) in (5): gT ¼
gHL dx dx gHL ðcx þ nx Þ
ð10Þ
The data-rate selection algorithm has to select from a discrete set of values allowed under a particular 802.11 PHY (e.g. 1, 2, 5.5, 11 upto 54 Mbps). Therefore, values obtained from (10) are rounded up to the nearest value in the data-rate set. Here, n is dependent on the number of MPDUs during a fragment burst. As a standard rule of operation in 802.11 based networks, every transmitting station indicates the duration of usage of wireless medium in its outgoing MAC frames and according to [1] in order to allow the transmitting station to calculate the duration of usage of the medium, the responding station shall transmit its control response frames (CTS/ACK) at the same rate as the immediately previous frame in the frame exchange sequence or else at the highest possible rate belonging to the PHY rates indicated by the BSSBasicRateSet in the MIB. The transmitting station will have the information about the number of anticipated ACKs in response to the number of transmitted frames and their corresponding inter-frames spaces; and assuming that the responding station will use the highest rate for transmission of CTS/ACK frames, the duration of n can be calculated for a particular TB. dx is dependent on the MSDU size and on the fragmentation threshold. 3.2.1. c-Estimation c is variable and may have different values in every TB. The duration of c provides important information about
the current channel and BSS characteristics. In general it depends on: (i) TC, which in turn depends on the number of contending stations and channel conditions. (ii) DIFS, it has a fixed value per PHY. (iii) b depends on the status of previous transmissions which in turn depends on channel conditions and on the number of contending stations. In order to measure c within a certain TBx, a timer is started whenever a station has a frame for transmission, or at the end of successful reception of ACK for the last MSDU during a previous time block (TB(x1)) when the station has many frames for transmission. During TBx the timer is stopped when the backoff counter reaches a value of zero and station can start transmission as shown in Fig. 3. The interval between ‘A’ (starting point of timer) and ‘B’ (when the timer is stopped) is the total duration of cx during TBx. Higher values of c may be because of higher device density inside a BSS or transmission failures which may cause higher backoff counters. Every time when medium is found busy, the backoff counters are frozen within all contending wireless stations. The worst scenario where c has a larger value is when a wireless station has to freeze its backoff counter several times until it reaches zero. In such a scenario, there may be several DIFS and longer contention delays (when other stations are using the medium) and as a result the overall TB will be considerably longer. Consequently, the CLRA would have to select a considerably higher value of gT even for a small value of gHL. 3.2.2. Constraints It is important to emphasize that the relationship given in (10) which is based on (5) can only hold when the amount of data arriving from higher layers is less than or equal to the d. However, if c is considerably longer and/ or gHL is close to the highest values of gT (various PHY support different values for gT), then the amount of data coming from higher layers may be more than the amount of data which could be successfully transmitted within a particular TB. In other words, such a scenario implies that the MAC sublayer cannot match the higher layer’s traffic requirements within the physical limits of an 802.11 wireless station. In such situation, the algorithm would keep gT at the highest data-rate value and the application should be triggered to lower the load through a MAC-application crosslayer interface. 3.2.3. Estimation dilemma In order to evaluate (10) during a TBx, it is critical to provide a correct value of gHL. However, the required value of gHL during a TBx has to be determined based on the exact value of TBx. But TBx can only be determined if (10) is evaluated and gT is determined. Therefore, to solve this predicament, the average value of gHL during previous
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
10 time blocks are used as an estimate of gHL during the current time block i.e. Px1 g gHLx ¼ i¼x10 HLi ð11Þ 10 Here, we use average of 10 previous values; increasing this value further will disable the ability of this algorithm to respond to sudden rise or fall in data-rate of higher layers. Similarly, we believe that decreasing it further will not truly reflect the current estimation. 3.2.4. Cross-layer information exchange There is a variety of network applications; every application has different requirements in terms of delay, throughput and resilience to packet losses etc. Therefore, apart from matching higher layer’s traffic rate it is important to convey application preferences (delay thresholds, packet losses, etc.) to the rate adaptation algorithm. An argument can be raised as how to convey individual application’s preferences to the MAC sublayer and even if it is done, it may further complicate the overall system design. However, a logical solution to this concern is that applications can be categorized in to a limited and discrete number of categories as it is done in the case of IEEE 802.11e [19]. Each application category would have its own parameter (various performance parameters e.g. delay, internal priority, etc.) configuration. Every network application would belong to any one of the listed categories. Therefore, instead of conveying individual application preferences to
1645
the MAC sublayer, information relating to a category of applications would be conveyed. Similarly, it is important to inform the applications about the current status of MAC sublayer in the form of MAC-specific parameters e.g. the highest data-rate which can be supported, number of packet losses and average delay, etc. Such two way information can be conveyed with the help of cross layer interfaces which extend across the protocol suite. Fig. 4 gives an overview of the proposed cross-layer framework. Here, a Wireless Adaptation Layer (WAL) is responsible for the cross layer communication among various layers. The functionality of WAL can be embedded in various modules across the protocol suite both in simulation modeling softwares and practical implementation. However, we represent it as a separate entity or a central database of various network parameters with the aim to highlight its role and to keep it in conjunction with our previous work. As mentioned previously, all successfully received frames are acknowledged by the receiver in 802.11 based networks. The time interval between the arrivals of a frame from higher to the MAC layer till the time when an ACK is received provides an easy way of estimating the delay experienced by frames. The actual delay estimation used herein is then calculated by subtracting the time of reception of an ACK frame and two SIFS durations from the time interval mentioned above. Apart from conveying network parameters (e.g. delay), the rate adaptation algorithm also provides an indication to the WAL about the optimum value of gHL which can be supported
Fig. 4. Cross layer communication framework.
1646
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
by the underlying protocols when either the delay threshold is exceeded or at times when the outcome of (10) is higher than the highest data-rate supported by the PHY. The indicated value of gHL can be derived from: gHL ¼
gT dx dx þ gT ðcx þ nx Þ
ð12Þ
Here, gT has either the highest value of data-rate supported by a PHY, or has the value which result in a higher delay more than the threshold value. In the former case, the current value of gHL is such that it can no longer be supported by the underlying protocols and the relationship given in (10) is void. Therefore, (12) provides a recommended value of gHL which can be supported by the MAC layer at a given time. The later case, however, is not necessarily the case when gT is at the highest data-rate supported by PHY. It might be because of the reason that the current value of gT is not suitable for delay sensitive applications (when the MAC layer delay exceeds a threshold); therefore, lowering the data-rate by one step in the supported data-rate values of an 802.11 standard should be done e.g. if the gT is at 11 Mbps, lowering one step will cause gT to be at 5.5 Mbps. In both of these cases, gT is known and the values of c, d, n are also known; therefore, (12) can easily be evaluated to provide the recommended value of gHL. 3.3. CLRA-loss differentiation Majority of existing rate adaptation mechanisms rely on assumption that in case of packet losses the data-rate should be lowered for performance improvement. This assumption works in scenarios where packet losses occur because of user’s physical movement (away from receiver). Therefore, operating at higher data-rates (implies shorter coverage area) would cause loss of connectivity between transmitter and receiver and thus lowering the data-rate might improve the performance. However, this scenario cannot be generalized for all situations as packet losses can occur because of hidden nodes in a BSS. In such scenario the receiver might well be in the range of a transmitter, however, the transmission will be corrupted because of
a simultaneous transmission by a hidden node. In this scenario, lowering the data-rate further deteriorates the performance. Therefore, it is important to perform loss differentiation while assessing CSI for rate adaptation [30]. The loss differentiation mechanism in CLRA is based on a simple idea: which is to differentiate frame losses because of variation in wireless channel from losses which occur as a result of simultaneous transmission of hidden nodes. The loss differentiation works as follows: (i) Maintain a frame loss window (flwin) which records the transmission status of the previous flwin number of frames. (ii) If loss ratio within an flwin is greater than frame loss threshold (flthr) then enable RTS/CTS procedure for the transmission of next flwin number of frames. (iii) At the end of current flwin (where RTS/CTS was enabled) compare the loss ratio with the loss ratio in the previous flwin (with no RTS/CTS). (iv) If the loss ratio in the flwin (with RTS/CTS) is more or equal to the loss ratio in the flwin (without RTS/CTS) then it implies that the frame losses are because of mobility (causing loss of connectivity between the transmitter and receiver) or because of some other channel variations. Therefore, it is favorable to lower the operational data-rate of the transmitter to a one step lower value. (v) On the other hand if the loss ratio in the flwin (with RTS/CTS) is less than the loss ratio in the flwin (without RTS/CTS) it means that there are some hidden nodes which are simultaneously transmitting and causing loss of frames. In this case, the data-rate remains unchanged. Here, flwin is the size of frame loss window in terms of number of frames; the default value used in simulations is four frames. Frame loss threshold (flthr) can be specified by applications however, the default value is two frames. Frame losses because of the presence of hidden nodes can be minimized with the usage of RTS/CTS procedure
Fig. 5. Loss differentiation using selective RTS/CTS.
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
but it also induces overhead in terms of MAC time. Therefore, it is important to use RTS/CTS to the minimal in order to minimize such an overhead. CLRA uses a collision-counter for deciding whether to use RTS/CTS in the next flwin or send frames without RTS. The default value of the collision-counter is zero, however, when the loss ratio within an flwin is greater than frame loss threshold (flthr) the collision-counter is incremented to 1. Therefore, for the next group of frames in the flwin an RTS/CTS procedure will be used. However, no RTS/CTS will be used in the following flwin. If the frame loss ratio in the current flwin (with no RTS/CTS) is more than that in the previous flwin then it implies that there are collision losses and hidden nodes are still operating. It is important to note that the collision-counter at this stage has a value of 1 which is incremented to 2. Therefore, the next two flwin will have RTS/CTS frames followed by an flwin without RTS/CTS. The maximum value of collision-counter used in simulations is 10 which mean that an flwin without RTS/CTS is used after 10 RTS/CTS flwin. The collision-counter is reset to 1 when frame loss ratio in an flwin with no RTS/CTS is less than that in the flwin with RTS/CTS irrespective of the current value of collision-counter. This procedure is explained in Fig. 5.
4. Simulation results and comparative analysis A simulation model based on (3) is modeled in OPNET modeler [29]. To analyze various performance parameters relating to rate adaptation, a number of scenarios with varying device density, traffic rates and mobility patterns were simulated. Likewise, special cases of channel varia-
1647
tions because of hidden node problems are also investigated and its effect on rate adaptation schemes is discussed. In order to simulate higher layer’s traffic, we generated variable-bit rate (VBR) traffic with a maximum bit rate of 1 Mbps. Likewise; we modeled scenarios with varying device density (2, 10, 25 and 35 nodes) in order to analyze the effect of device density on performance of the proposed algorithm. Fig. 6 shows the backoff delay variation in various scenarios. It is considerably lower for scenarios having 2 and 10 nodes only. However, it increases as the number of nodes is increased further. Higher backoff delay implies that the duration of cx within a time block (TBx) is increased and the rate adaptation algorithm needs to shrink TDx within the PHY limits in order to meet the higher layers’ traffic requirements. In other words, if cx is longer enough within a particular time block, it means that added amount of data will arrive from higher layers before the transmitter gets a turn to transmit on the medium. If the amount of data, arriving at a particular rate is higher than the MSDU size within a time block, the algorithm will operate at the highest possible transmission rate determined by a PHY standard. However, (3) will not be valid and higher layer data needs to be buffered. If this situation prevails for some time, it may result in packet losses in case of buffer overflows. Fig. 7 shows the contention delay in scenarios with 2 and 10 wireless nodes. It is obvious that as the number of nodes increases, medium usage is increased as well and therefore, other nodes have to contend for longer time till the medium becomes free and find their turn to transmit. Like, backoff delay, it also contributes to values of cx. Variations in cx due to either or both of these factors will imply that the transmitter rate should vary accordingly, even if
Fig. 6. Backoff delay in different scenarios with varying node density.
1648
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
Fig. 7. Contention delay in different scenarios with varying node density.
there is no variation in the higher layers’ traffic rates. Fig. 8 shows a comparison of gHL (Higher layer’s traffic), gT (Effective data-rate of transmitter according to (3)) and the operational data-rate of the transmitter (because the transmitter can only select from a discrete set of values) in a scenario with only source and destination nodes. It is obvious from Figs. 6 and 7 that in case of two nodes, the contention and backoff delays are considerably lower. Even then in order to match the higher layers’ traffic rate, the transmitter should be operating at slightly higher rate.
The red marks at the top of blue lines show the difference in data rate which is required to cover up for the time wasted in contention and backoff process. As the wasted time within every time block increases because of longer contention and backoff delays, this difference in data rate mounts higher and higher till it reaches the maximum data-rate supported by a corresponding PHY. Fig. 9 shows a similar situation where the values of gT from various scenarios having different number of nodes are plotted together with the gHL values. It is evident that
Fig. 8. Comparison of gHL, gT and operational data-rate of a transmitter in a two node scenario.
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
1649
Fig. 9. Data-rate selection in scenarios with varying device density.
for the same higher layers’ traffic requirements, the transmitter data-rate should go higher if the number of nodes increases. This difference is lower in case of two nodes but considerably increases as the number of nodes increases. For number of nodes higher than 15 up to 35 (as shown in the simulation results), the transmitter’s data-rate should be between the range of 2–4 times of the data-rate requirements of higher layers. From these results it can be assumed that even though the transmitter may be able to operate at higher data-rates (up to 54 Mbps), however, because of the MAC layer timing constraints (contention and backoff delays) the effective data-rate supported by the MAC layer is never equivalent to the highest value. At times of higher contention delays, the effective data-rate might be reduced to half, one third or one fourth of the highest data-rate supported by a PHY. When this situation arises, such that the application requirements cannot be fulfilled by the underlying MAC protocol there is a need for signaling this information to the application layer. Such information can be conveyed through a cross layer interface as mentioned in the previous section. The application layer can further utilize it to take necessary action. It is important to note that Fig. 9 only shows the actual values of gHL and gT as given by (3). However, in practice the values of gT are rounded up to the nearest values in the data rate array supported by a particular PHY e.g. values of 1.3 Mbps as given by (3) are rounded up to 2, 3.4 Mbps are rounded up to 5.5 Mbps, etc. Real-time applications are delay sensitive and excessive MAC layer retransmissions because of frame losses degrade their performance. However, most of the rate adaptation algorithms inherently try to operate at higher data-rate. In scenarios where the transmitter moves away
from the destination (or vice versa) or is positioned at a distance where higher rate transmission could not be possible; such a behavior (of always trying to select a higher rate) can cause severe retransmissions. To analyze this effect we modeled a scenario where: a destination node starts moving exactly after 1 min to a position almost 200 m away from the source station. At that position it stays for about 3 min and then moves further by 140 m to another position where it stops till the end of simulation period. Fig. 10 shows a comparison of the number of retransmissions per second in three different runs of the same scenario modeling ARF, AARF and without a rate adaptation scheme. It is quite clear that when the distance between the source and destination increases then transmissions at higher data-rate have fewer chances to reach the destination. Therefore, in case of ARF and AARF the rate adaptation select higher data-rate values which
Fig. 10. Analysis of retransmissions in various scenarios (ARF,AARF and no rate adaptation).
1650
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
Fig. 11. ARF.
cause relatively higher retransmissions. The number of retransmissions is comparatively lower in the case of AARF because of the backoff after successive frame failures. The data-rate values selected in this scenario by the ARF algorithm are given in Fig. 11. An important observation that can be made from this scenario is that: it is not always good to operate at the highest data-rate. In the previous scenario, the application requirements could have been met even by operating at a much lower data-rate. That’s why the number of retransmission was comparatively lower when the station operated at a constant 11 Mbps (in the no rate adaptation scenario). Therefore, the CLRA algorithm which closely follows the application requirements under the prevailing MAC layer timing constraints can clearly perform better in such scenarios. One might argue that operating at lower data-rates will occupy the channel for a longer time. This is true for cases when the BSS has a number of contending stations, in that case, operating at a lower data-rate will penalize rest of the contending stations. However, as stated before, CLRA adjusts the operational data-rate according to the MAC layer timing constraints. In other words, if the device density increases, an accordingly higher operational data-rate is selected. To demonstrate this fact, we modeled a scenario with 11 IEEE 802.11g based wireless stations, in a 100 100 m area and CLRA was enabled for rate adaptation. In this scenario, one node was configured with constant bit rate (CBR) higher layer traffic of 5 Mbps. This station was configured to start communication after 20 s of simulation time. Another station was configured to start communication after 180 s with 500 Kbps traffic. In this discussion, we will refer to this station as a Light Load station. Four other stations with a higher layer traffic of 2 Mbps each was configured to start at 240, 360, 480 and 540 s of simulation time. This was followed simultaneously
Fig. 12. CLRA in a Light Load scenario.
by four more stations at 600 s simulation time. Fig. 12 shows that till 480 s time, the Light Load station was transmitting at lowest possible rate. However, soon after that when new more stations started communication, the medium usage became higher resulting in longer contention. As a result, even for low traffic, the station has to operate at considerably higher data-rate to cope up with the traffic requirements of higher layers. CLRA assess channel variations using frame loss-differentiation mechanism before performing a rate adaptation. Most of existing rate adaptation mechanisms selects a lower data-rate in case of frame losses. However, it can be misleading and can cause performance degradation if
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
1651
References
Fig. 13. Loss-differentiation.
the exact reason of channel variatons is not determined. To analyze a similar situation, we modeled a hidden node scenario. In this scenario, all wireless stations remained stationary during the whole simulation. Therefore, we can ignore the effects of channel variations because of node’s mobility. Fig. 13 shows throughput comparision of ARF (without loss differentiaion) and CLRA using its loss differentiation. The hidden nodes are configured to start transmission (turn on during the simulation) after 3 min (180 s). Before the hidden nodes started transmission, the throughput of ARF is much higher than CLRA. However, after the frame losses started as a result of the presence of hidden nodes, the performance of ARF clearly started to suffer (after 180 s). 5. Conclusion This paper reviewed most of data-rate control algorithms. We analyzed the suitability and shortcomings of these algorithms from various performance perspectives. The analysis established a key fact that: the rate adaptation mechanism should adaptively select a data-rate according to channel variations and application requirements. However, it is highly challenging to meet the application requirements and the underlying network constraints. Likewise, certain conventional assumptions about channel variations which are adopted by most of the existing solutions are not always true. Therefore, we proposed a cross-layer rate adaptation mechanism which closely matches run time traffic requirements according to the underlying MAC sublayer timing constraints. The proposed scheme responds to channel variations in almost a similar fashion as existing algorithms. However, inherently it tries to match higher layer traffic requirements in terms of various network performance metrics (retransmissions, delay, etc.). Likewise, it employs loss differentiation mechanism while assessing channel state. Consequently the proposed rate adaptation mechanism performs better than the existing solutions.
[1] IEEE Std 802.11-1997 Information Technology-Telecommunications and Information Exchange Between Systems-Local and Metropolitan Area Networks-Specific Requirements-Part 11: Wireless Lan Medium Access Control (MAC) And Physical Layer (PHY) Specifications, IEEE Std 802. 11-1997, 1997, pp. i–445. [2] S. Shakkottai, T. Rappaport, P. Karlsson, Cross-layer design for wireless networks, Communications Magazine, IEEE 41 (2003) 74–80. [3] V. Srivastava, M. Motani, Cross-layer design: a survey and the road ahead, Communications Magazine, IEEE 43 (2005) 112–119. [4] M. van Der Schaar, Cross-layer wireless multimedia transmission: challenges, principles, and new paradigms, Wireless Communications, IEEE [See also IEEE Personal Communications] 12 (2005) 50–58. [5] Haitao Zheng, Optimizing wireless multimedia transmissions through cross layer design, Multimedia and Expo, 2003. ICME ’03. Proceedings of 2003 International Conference on. 1 (2003) I-185–188. [6] Ning Yang, Improving ad hoc network performance using cross-layer information, Communications, 2005. ICC 2005. 2005 IEEE International Conference on. 4 (2005) 2764–2768. [7] V. Kawadia, P. Kumar, A cautionary perspective on cross-layer design, IEEE Wireless Communications 12 (2005) 3–11 (See also IEEE Personal Communications). [8] Z. Li, A. Das, A. Gupta, S. Nandi, Full auto rate MAC protocol for wireless ad hoc networks, Communications, IEE Proceedings 152 (2005) 311–319. [9] G. Holland, N. Vaidya, P. Bahl, A rate-adaptive MAC protocol for multi-hop wireless networks, (2001) 236–251. [10] I. Haratcherev, J. Taal, K. Langendoen, R. Lagendijk, H. Sips, Automatic IEEE 802. 11 rate control for streaming applications, Wireless Communications and Mobile Computing, Special Issue on Radio Link and Transport Protocol Engineering for Future-Generation Wireless Mobile Data Networks 5 (2005) 421–437. [11] J.C. Bicket, Bit-rate Selection in Wireless Networks, MS Thesis, MIT, February 2005. [12] M. Lacage, M.H. Manshaei, T. Turletti, IEEE 802.11 rate adaptation: a practical approach, Proceedings of the Seventh ACM International Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems (2004) 126–134. [13] A. Kamerman, L. Monteban, WaveLANÒ-II: a high-performance wireless LAN for the unlicensed band, Bell Labs Technical Journal 10 (1997) 119. [14] http://madwifi.org/. [15] B. Sadeghi, V. Kanodia, A. Sabharwal, E. Knightly, Opportunistic media success for multirate ad hoc networks, 2002, pp. 24–35. [16] I. Haratcherev, K. Langendoen, I. Lagendijk, H. Sips, Hybrid rate control for IEEE 802.11, 2004, pp. 10–18. [17] S.H.Y. Wong, S. Lu, H. Yang, V. Bharghavan, Robust rate adaptation for 802.11 wireless networks, 2006, pp. 146–157. [18] S. Khan, S.A. Mahmud, H.S. Al-Raweshidy, A cross-layer solution for dynamic selection of data-rate in WLAN using traffic differentiation, Mobile & Wireless Communication Summit, 16th IST (2007) 1–5. [19] IEEE Standard for Information Technology-Telecommunications and Information Exchange Between Systems-Local and Metropolitan Area Networks-Specific Requirements Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications Amendment 8: Medium Access Control (MAC) Quality of Service Enhancements, IEEE Std 802. 11e-2005 (Amendment to IEEE Std 802. 11, 1999 Edition (Reaff 2003), 2005, pp. 0_1–189. [20] P. Chevillat, J. Jelitto, A. Barreto, H. Truong, A dynamic link adaptation algorithm for IEEE 802.11 a wireless LANs, 2003. [21] S. Pal, S.R. Kundu, K. Basu, S.K. Das, IEEE 802.11 Rate Control Algorithms: Experimentation and Performance Evaluation in Infrastructure Mode, PAM’06, 2006. [22] Q. Pang, V.C.M. Leung, S.C. Liew, A rate adaptation algorithm for IEEE 802.11 WLANs based on MAC-layer loss differentiation, 2005, pp. 709–717.
1652
S. Khan et al. / Computer Communications 31 (2008) 1638–1652
[23] D. Qiao, S. Choi, Fast-responsive link adaptation for IEEE 802.11 WLANs, 2005. [24] B.E. Braswell, Modeling Data Rate Agility in the IEEE 802.11a Wireless Local Area Networking Protocol, MS Thesis, NAVAL POSTGRADUATE SCHOOL MONTEREY CA, March 2001. [25] B. Girod, M. Kalman, Y.J. Liang, R. Zhang, Advances in channeladaptive video streaming, Wireless Communications and Mobile Computing 2 (2002) 573–584. [26] J. Kim, H. Tode, K. Murakami, MAC-layer support for real-time video over IEEE 802.11 DCF Networks, IEICE Transactions on Communications, vol. E89-B, April 1, 2006, pp. 1382–1391.
[27] S.H. Shah, K. Chen, K. Nahrstedt, Available bandwidth estimation in IEEE 802.11-based wireless networks, 1st Bandwidth Estimation Workshop, 2003. [28] J.-C. Wu, Hung-Huan Liu, Yi-Jen Lung, An adaptive multirate IEEE 802.11 wireless LAN, in: Proceedings of 15th International Conference on Information Networking, 2001, pp. 411–418. [29] www.opnet.com. [30] Jongseok Kim, Seongkwan Kim, Sunghyun Choi, Daji Qiao, CARA: Collision-aware rate adaptation for IEEE 802.11 WLANs, in: Proceedings of IEEE INFOCOM’2006, Barcelona, Spain, April 23– 27, 2006.