An Analytical Model of the Virtual Collision Handler of 802.11e Paal E. Engelstad Olav N. Østerbø Telenor R&D/ UniK 1331 Fornebu, Norway Tel: +47-41633776 Telenor R&D 1331 Fornebu, Norway Tel: +47-48212596 paal.engelstad@telenor.com olav-norvald.osterbo@telenor.com ABSTRACT A number of analytical models have been proposed to describe the priority schemes of the Enhanced Distributed Channel Access (EDCA) mechanism of the IEEE 802.11e standard. EDCA provides a class-based differentiated Quality of Service (QoS) to IEEE 802.11 WLANs. Many have used a multiple number of nodes to study the differentiation behaviour of the model. However, in many real-life usage scenarios Internet traffic is often asymmetric with much downlink traffic from the access point to the stations and little traffic in the reverse direction. Hence, most of the overall traffic differentiation will happen in the Virtual Collision Handler (VCH) of the access point. If the access point uses EDCA, it should know the characteristics of the VCH to be able to control the differentiation of the downlink traffic. The main contribution of this paper opposed to other works is that it demonstrates how a generic channel model of 802.11e can be modified to predict the behaviour of the VCH with a remarkably good accuracy. In doing so, we first introduce virtual collision handling into the generic model. We observe good match between the analytical model and simulations. Categories and Subject Descriptors C.2.5 [Computer-Communication Networks]: Local and WideArea Networks; C.4 [Performance of Systems]: Modeling techniques, Performance attributes, Reliability, availability, and serviceability. General Terms Performance, Reliability, Theory, Verification. Keywords 802.11e, Virtual Collision Handler, Performance Analysis, EDCA, Non-Saturation, AIFS, Starvation. 1. INTRODUCTION In daily life, IEEE 802.11 WLAN [1] is mainly used for Internet access or for access to a wired Local Area Network (LAN) infrastructure. In both cases, the wireless station (STA) is often a Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Conference’04, Month 1–2, 2004, City, State, Country. Copyright 2004 ACM 1-58113-000-0/00/0004…$5.00. client that retrieves a large amount of information from the wired network (e.g. video streaming from a server on the Internet). In other words, traffic patterns are normally asymmetric, with little uplink traffic from the STAs, but a large amount of downlink traffic from the Access Point (AP). The new IEEE 802.11 amendment [2] provides 802.11 with mechanisms for Quality of Service (QoS). Since traffic patterns normally are asymmetric, ensuring QoS and appropriate differentiation of the downlink traffic is therefore of utmost importance when 802.11e is being used. We point out that the majority of other works that do analytical performance evaluations, empirical simulations and/or validations between analytical numerical results and simulations, seem to focus on the uplink traffic problem. They present results with a number of STAs contending for the channel, and with fairly equal shares of traffic allocated to each station and to each AC. The situation where the majority of traffic is downlink traffic from the QoS-enabled Access Point (QAP) to the QoS-enabled STAs (QSTAs) is of higher practical interest. This paper focuses on situations where the mandatory Enhanced Distributed Channel Access (EDCA) of 802.11e is being used. EDCA works as an extension to the Distributed Coordination Function (DCF) of legacy 802.11. EDCA enhances DCF by allowing four different access categories (ACs) at each station and a transmission queue associated with each AC. Each AC at a station has a conceptual module responsible for channel access for each AC and in this paper the module is referred to as a ”backoff instance”. A key point is that the different backoff instances in a station do not access the channel completely independently, due to the virtual collision handling between the queues in the station. If two or more backoff instances on the same station try to access the channel in the same timeslot, the station attempts to transmit the frame of the highest priority AC, while the lower priority frames will enter backoff. When EDCA is being used, a QAP will be interested in ensuring appropriate QoS of all traffic it is transmitting. Not only is it important to ensure appropriate QoS on the wireless channel. The QAP must also somehow control the performance of the Virtual Collision Handler (VCH), which performs the virtual collision handling internally in the node. With the analytical model presented in this paper, the QAP can predict how the VCH responds to different traffic patterns and different parameters settings of each AC. http://folk.uio.no/paalee/ Needless to say, being able to predict and control the performance of the VCH can be useful not only for a QAP, but also for any QSTA using EDCA. As such, the results presented in this paper can be useful for any QSTA, although this paper primarily focuses on the VCH of a QAP. When modelling the behaviour of the VCH, we assume for simplicity the extreme situation where all traffic is downlink traffic from the QAP - in contrast to most other relevant work. Then, the VCH is always free to use the wireless channel, and will not experience collision from any other station. This actually means that all traffic contention will occur in the VCH. The VCH represents a “virtual” traffic channel, and we can use analytical models that incorporate virtual collision handling to derive the performance of the VCH. In this paper we extend the model presented extensively in [3] and show how it can be used to model the behaviour of the VCH of e.g. a QAP. The reader is encouraged to consult [3] for more details and explanations of the model used in this paper. This model is capable of predicting the performance not only in the saturated case, but in the whole range from a non-saturated medium to a fully saturated channel. It also describes the use of AIFSN as a differentiating parameter, in addition to the other differentiation parameters encompassed by other works. A simple closed-form equation that predicts with satisfactory accuracy the starvation point (or ”freeze point”) of each traffic class is also provided. The only prerequisite for a station (e.g. a QAP) to determine that starvation of an AC has occurred, is to know the access parameters (such as the AIFSN values of each AC i, AIFSN [i] ]) and the traffic load on the channel. Hence, the QAP can simply predict from the downlink traffic load that it pours into the transmission queues, whether any AC will face starvation when the traffic is handled by the VCH. In order to predict the behaviour of the VCH, this paper first introduces virtual collision handling into the aforementioned model. The remaining part of the paper is organized as follows: The next section incorporates virtual collision handling into the generic model presented in [3] and demonstrates how it can be used to model the behaviour of a VCH (e.g. on a QAP). Then, Section 3 shows how this adaptation influences on the expression of the throughput. In Section 4 the model is validated against simulations. Concluding remarks follow in Section 5. 2. ANALYTICAL MODEL 2.1 Markov Model The Markov model for the transmission process of a backoff instance of priority class i under non-saturation and saturation conditions is presented and explained in detail in [3]. For each AC, i (i = 0., , ,.3) on a QSTA, the transmission probability, τ i , is expressed as: τ i = bi ,0,0 1 − piL +1 , 1 − pi where bi , 0, 0 is given as: i 1 bi ,0,0 Wi , j − k Li Wi , j − k j 1 − ρ i 1 − (1 − qi∗ )Wi , 0 (Wi ,0 − 1)qi pi . 1 = ∑ 1 + (1 + ) pi + ∗ ∑ ∗ 1 1 − − 2(1 − pi ) p W q W q j =0 k 0 = i i j , i , 0 i i (2) Like in [3], Wi, j here denotes the contention window size in the j -th backoff stage i.e. after the j -th unsuccessful transmission, and Li is the retry limit. We refer to [3] for the calculations of the traffic parameters ρi , qi and q i∗ . According to [3], the countdown blocking probability, pi∗ , which occurs in Eq. (2), is defined as: pi∗ = min(1, pi + ( AIFSN [i ] − 2) pb , ) 1 −τi According to [3], the AP can in fact use this expression to predict, from the traffic load that it pours into the transmission queues, whether any AC will face starvation when the traffic is handled by the VCH. An expression for pb appearing in Eq. (3) will be provided below [see Eq. (9)]. The only remaining parameter in Eqs. (1)-(3) is the collision probability, p i , which will be affected by the virtual collision handling. Expressions for p i will be derived below. 2.2 Collision Probabilities without Virtual Collision Handling The probability of unsuccessful transmission, p i , from one specific backoff instance is given when at least one of the other backoff instances does transmit in the same slot: pi = 1 − N −1 ∏ (1 − τ c )n . c (4) c =0,c ≠i Here, ni denotes the number of backoff instances contending for channel access in each priority class i , and N denotes the total number of classes. 2.3 Collision Probabilities with Virtual Collision Handling It is possible to make modifications to take virtual collisions into account in the analytical model. Consider for example a situation with n stations, and four active transmission queues on each station. A backoff instance can transmit packets if other backoff instances don’t transmit, except the backoff instances of the lower priority ACs on the same QSTA. The reason for this exception is that the virtual collision handling mechanism ensures that upon virtual collision the higher priority AC will be attempted for transmission while the colliding lower priority traffic goes into backoff. This can be generalized by the expression: (1) N −1 pi = 1 − ∏ (1 − τ c =0 i c )n ∏ (1 − τ c ) c =0 http://www.unik.no/personer/paalee (3) c . (5) If this expression replaces our original expression in Eq. (4), virtual collisions are correctly incorporated in the model. 2.4 Collision Probabilities within the Virtual Collision Handler (VCH) With virtual collisions incorporated in the model, one may in fact use it to study the behaviour of the Virtual Collision Handler (VCH). Here the VCH represents the channel, while there are only N (typically four) queues contending for access, i.e. one queue per AC i. Hence, one may model the throughput of the VCH by setting ni = 1 for all i. In this case, Eq. (4) is simply replaced by: pi = 1 − N −1 ∏ (1 − τ c ) . Here, we note that the highest priority class will correctly have p N −1 = 0 , which means that it is never blocked and never experiences a collision when it tries to access the channel for transmission. According to the original model in [3], the probability that a packet from any of the backoff instances of class i is transmitted successfully in a time slot, p i , s , is: (7) p i , s Ti , MSDU (1 − p b )Te + p s Ts + ( p b − p s )Tc , (8) where Te , Ts and Tc are the real-time duration of an empty slot, of a slot containing a successfully transmitted packet and of a slot containing two or more colliding packets, respectively. TMDSDU is the average real-time required to transmit the MSDU part of a data packet. p b , which occurs both in Eq. (3) and in Eq. (8), denotes the probability that the channel is busy (i.e. at least one backoff instance transmits during a slot time): N −1 p b = 1 − ∏ (1 − τ i ) . . (10) If there is one transmission queue of each AC on each station, on the contrary, there will be virtual collision handling between the queues on each station. Then, higher priority traffic does not need to take into account transmission of lower-priority queues on the same station. Their transmission probabilities will not affect the throughput of the higher priority AC. Thus, Eq. (7) above must be replaced by: N −1 pi,s nτ = i i (1 − τ i ) (1 − τ c ) n ∏ c =0 i ∏ (1 − τ c ) c . (11) c =0 Using this expression for p i , s , p s is calculated as before using 3.3 Throughput of the Virtual Collision Handler (VCH) One can use Eq. (11) to look at the throughput of a VCH within one station by setting ni = 1 for all i. Then, we get: pi , s = τ i (1 − pi ) . (12) Using this new expression for p i , s , both p s and S i of the VCH Then, the throughput of class i , S i , can be written as the average real-time duration of successfully transmitted packets by the average real-time duration of a contention slot that follows the special time scale of our model: Si = i, s i =0 the summation in Eq. (10), and S i is calculated using Eq. (8) above. 3. THROUGHPUT 3.1 Throughput without Virtual Collision Handling n iτ i N −1 ∏ (1 − τ c ) nc . (1 − τ i ) c = 0 N −1 ∑p 3.2 Throughput with Virtual Collision Handling (6) c = i +1 pi,s = ps = (9) i =0 Finally, p s is the probability that a packet from any class is transmitted successfully in a time slot: are calculated as earlier, i.e. using Eq. (8) and Eq. (10). 4. VALIDATIONS We compared numerical computations of the model with simulations. Mathematica was used for the computations and the TKN implementation of 802.11e for ns-2 [4] was used for the ns2 simulations. We selected 802.11b [5] with the mandatory long preamble [5] and used the default 802.11e values summarized in Table 1 of [3]. We use Poisson distributed traffic consisting of 1024 bytes packets sent at 11 Mbps without the optional RTS/CTS mechanism. The corresponding values for Te , Ts , Tc and TMDSDU are calculated in [3]. For simplicity, we assumed that the QAP generated the same amount of downlink traffic for each of the four ACs. role is only to acknowledge all MAC frames that the QAP successfully transmit on the channel. This corresponds to the downlink scenarios presented in the frequently cited paper by Mangold et al. [6], except that here we consider 802.11b instead of 802.11a. QAP QSTA 1 Figure 2 compares numerical calculations of the analytical model with the actual simulation results. We observe that our analytical model of the VCH, which describes the performance on the full range from a non-saturated (finite queues) to a saturated (infinite queues) system, gives a good match when compared with simulations. QSTA 5 QSTA 2 QSTA 4 QSTA 3 Figure 1. Simulation setup to validate numerical results of downlink traffic. We consider a scenario with a QAP that implements a VCH and uses four transmission queues. This configuration is depicted in Figure 1. Here, the QSTAs are not actively initiating traffic. Their In Figure 3 we repeat the validations using different values for the contention window. Here we have doubled all minimum and maximum contention windows compared to the recommended values given in Table I. We have also shown the results on a larger scale (up till 20000 Kbps per AC) to illustrate the remarkably good accuracy between model and simulation results in the saturation part of the figure. 802.11b/802.11e: Analysis vs. Simulation of the Virtual Collision Handler Throughput per AC [Kb/s] 6000 5000 AC[0]: Simulations AC[1]: Simulations AC[2]: Simulations AC[3]: Simulations AC[0]: Numerical AC[1]: Numerical AC[2]: Numerical AC[3]: Numerical 4000 3000 2000 1000 0 -1000 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 Traffic generated per AC [Kb/s] Figure 2. Comparison between analytical results and simulation results using Recommended 802.11e parameter settings. 802.11b/802.11e: Analysis vs. Simulation of the Virtual Collision Handler (Doubled CW values) Throughput per AC [Kb/s] 5000 4500 4000 AC[0]: Simulations AC[1]: Simulations AC[2]: Simulations AC[3]: Simulations AC[0]: Numerical AC[1]: Numerical AC[2]: Numerical AC[3]: Numerical 3500 3000 2500 2000 1500 1000 500 0 -500 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Traffic generated per AC [Kb/s] Figure 3. Comparison between analytical results and simulation results (using doubled CWmin values). 802.11b/802.11e: Analysis vs. Simulation of the Virtual Collision Handler (Small Scale) 5000 4500 Throughput per AC [Kb/s] 4000 3500 AC[0]: Simulations AC[1]: Simulations AC[2]: Simulations AC[3]: Simulations AC[0]: Numerical AC[1]: Numerical AC[2]: Numerical AC[3]: Numerical 3000 2500 2000 1500 1000 500 0 -500 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 Traffic generated per AC [Kb/s] Figure 4. Comparison between analytical results and simulation results (on a small scale). However, there are ranges of Figure 2 and Figure 3 where there are noticeable discrepancies between the curves. For Figure 3, this range is expanded and shown on a smaller scale in Figure 4. Here, we observe that the model – probably the AIFS-approximation - is a little too rough on the lowest priority AC, AC[0]. Due to the fact that AC[0] and partly also AC[1] are underestimated here, the model incorrectly gives a throughput of AC[3] that exceeds the 1to-1 linear line. This would mean that AC[3] transmits more traffic than is generated, which is obviously not correct. It is indeed possible to do some improvements of the model in this region, although one must keep in mind that the model is approximate, and a complete match might be difficult to find without adding considerable complexity to the model. 5. CONCLUSIONS This paper shows how virtual collision handling can be incorporated into an analytical model that covers the full range from a non-saturated to a fully saturated channel. Using a model that encompasses virtual collision handling, we demonstrate that it is also possible to describe the behaviour of a Virtual Collision Handler internally on a node, such as on an Access Point. The Virtual Collision Handler is treated as a "virtual" channel. An access point that uses EDCA for massive downlink traffic is therefore able to predict the levels of QoS that the data traffic it is transmitting will obtain by its own Virtual Collision Handler. In this way it is to a larger extent in control of the QoS of the traffic it is sending. (Needless to say, any station – whether it is an access point or not – may benefit from predicting the behaviour of the Virtual Collision Handler, although we anticipate that the model will be mostly appreciated by the access points.) The model is calculated numerically and validated against simulations, using 802.11b and variations of the default parameter settings for 802.11e. The analytical model of the Virtual Collision Handler corresponds well with our simulations. 6. REFERENCES [1] IEEE 802.11 WG, "Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specification", IEEE 1999. [2] IEEE 802.11 WG, "Draft Supplement to Part 11: Wireless Medium Access Control (MAC) and physical layer (PHY) specifications: Medium Access Control (MAC) Enhancements for Quality of Service (QoS)", IEEE 802.11e/D13.0, Jan. 2005. [3] Engelstad, P.E. and Østerbø, O.N, "Non-Saturation and Saturation Analysis of IEEE 802.11e EDCF with Starvation Prediction", Proceedings of the Eighth ACM/IEEE International Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems (MSWiM‘05), Montreal, Canada, Oct. 10-13, 2005. [4] Wietholter, S. and Hoene, C., "Design and verification of an IEEE 802.11e EDCF simulation model in ns-2.26", Technische Universitet at Berlin, Tech. Rep. TKN-03-019, November 2003. [5] IEEE 802.11b WG, "Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specification: High-speed Physical Layer Extension in the 2.4 GHz Band, Supplement to IEEE 802.11 Standard", IEEE, Sep. 1999. [6] Mangold, S., Choi, S., Hiertz, G., Klein, O. and Walke, B., "Analysis of IEEE 802.11e for QoS support in wireless LANs", IEEE Wireless Comm, Dec. 2003, pp. 40-50.