A Class Based Dynamic Admitted Time Limit Admission Control Algorithm for 802.11e EDCA Aleksander Bai Telenor R&D/ University of Oslo aleksab@ifi.uio.no Bjørn Selvig Simula Research Laboratory bjornese@ifi.uio.no Abstract This paper presents a class based dynamic admission control algorithm for the IEEE 802.11e Enhanced Distributed Channel Acccess (EDCA) standard. The strength of our admission control is the dynamic and flexibility of the algorithm, which adapts to the situation and thus achieves higher throughput than other admission controls for 802.11 EDCA. The achievements of our admission control are presented and evaluated. Class and flow utilization is discussed before a special case of our admission control algorithm aimed at flow utilization is given. Keywords: 802.11e, admission control, ATL 1. Introduction IEEE 802.11 WLAN [1] is the most widely used technology for wireless access to wired Local Area Network (LAN) infrastructures and to the Internet. This technology is being adopted and deployed at a high rate both in private homes and in enterprise networks. Parallel to this development, new multimedia applications, including Internet gaming, IP telephony, and Internet conferencing, are emerging. Their quality requirements are putting higher demands on Quality-ofService (QoS) differentiation between different types of traffic in the wireless access network. To meet these demands, the new IEEE 802.11e amendment [2] to the standard was developed, and it has recently been accepted as a new standard. IEEE 802.11e includes the Enhanced Distributed Channel Access (EDCA), which provides differentiation between four different priority classes – called Access Categories (AC). Normally, traffic differentiation alone is not sufficient to accommodate appropriate levels of QoS. In addition, some sort of admission control mechanism is needed to enforce that the users get their agreed QoS. The mechanism also ensures that traffic not entitled for network resources is not destroying the quality of the admitted traffic by consuming network resources. The IEEE 802.11e [2] standard does not specify how admission control should be implemented, and this is left to the implementer. Admission control for 802.11e is the main focus in this paper. Many good solutions on admission control for 802.11e have been proposed. However, as will be explained in Tor Skeie Simula Research Laboratory tskeie@simula.no Paal Engelstad Telenor R&D paal.engelstad@telenor .com detail in the next section, they all assume that the network is fully saturated with traffic. Hence, they are all imperfect for the non-saturation scenarios [3]. Another problem with several of the proposed admission control solutions is that the resources are allocated statically among the QoS classes. With this approach the resources may not be used optimally because all the QoS classes do not utilize all available resources at any time. In this paper we remedy those weaknesses and propose a solution where the resources are shared dynamically between the classes. If a class has allocated resources that are not in use, some other class can dynamically utilize the resources. Thus, the resource utilization and effectiveness of the network is increased compared to existing solutions. The next section gives an overview on 802.11e and related work done on admission control for 802.11e. In section 3 the drawbacks of static Admitted Time Limit (ATL) algorithms are presented, and the dynamic ATL admission control algorithm is proposed and explained. The proposed solution is validated in section 4, and simulation results are presented. Flow utilization is discussed, and an alternative flow based algorithm is presented in section 5. Finally, conclusions are drawn in section 6, and directions for future work are outlined out in section 7. 2. Background 2.1. 802.11e IEEE 802.11e is a standard for QoS improvements of the 802.11 MAC layer, approved by IEEE in July 2005 [4]. 802.11e basically adds priorities to the MAC layer, and provides improvements of the MAC access mechanisms known from the legacy 802.11 WLAN [1]. The 802.11e implements a Hybrid Coordination Function (HCF) with two different Medium Access mechanisms; Enhanced Distributed Channel Access (EDCA) and HCF Controlled Channel Access (HCCA). The channel access time is divided into super frames, which consist of periods split by the two medium access mechanisms. Those periods are called the Contention Period (CP) and the Contention Free Period (CFP). In the Contention Free Period the HCCA medium access mechanism is used, and the stations are polled periodically by the QAP (QoS enabled Access Point). The HCCA mechanism may also be used in the Contention Period, in periods called Controlled Access Periods (CAP). The Controlled Access mechanism requires a central node function, called the Hybrid Coordinator (HC), which is usually located in the QAP. When the QAP is in the Contention Period, the EDCA medium access mechanism is used. EDCA introduces four Access Categories (AC), and eight user priorities called traffic classes, which are mapped down to these four ACs. Each of the AC’s has its own output queue for transmission on the channel. Moreover, before a frame is put into one of these queues a mapping from a traffic class to an AC takes place in the 802.11e node. The four ACs are called the AC Voice (AC_VO), AC Video (AC_VI), AC Background (AC_BK) and the AC Best effort (AC_BE). AC_VO has the highest priority and is meant for voice traffic with strict latency, jitter and bandwidth requirements. AC_VI is meant for video traffic that has strict bandwidth demands, but some looser latency and jitter demands than voice. AC_BK is meant for background traffic and AC_BE for best effort traffic. Admission control is not mandatory in an 802.11e network, but is required in order to give any resource guarantees to flows. In an 802.11e network the QAP is the entity that performs the eventual admission control, and will announce to attached stations if admission control is mandatory for each AC. The actual admission control implementation in the network is vendor specific. TXOPBugdet[i] = max(ATL[i] – TxTime[i] x SurPlusFactor[i], 0) (1) The ATL (Admitted Time Limit) is a statically set value which determines the maximum transmission time a class can have. TxTime is the time used for uplink and downlink transmissions including all overhead. The SurplusFactor represents the ratio of over-the-air bandwidth that is needed to send successfully. The ATL[i] must be set manually before the QAP is started, and can not change during runtime. Best effort traffic is controlled by adjusting the contention windows and the Arbitration Inter Frame Space (AIFS) parameters [4]. Since best effort traffic is not controlled by the budgets, the stations can send as much best effort traffic as they want. If there is much best effort traffic on the channel, many collisions will occur and the channel performance will go down. That is why the contention windows and AIFS parameters are adjusted according to the channel quality. When the algorithm noticed that the channel quality is degraded, the parameters are increased. By increasing the parameters, best effort traffic will have a smaller chance of winning the contention. If the algorithm notices that the channel quality improves, the parameters are decreased. 3. Dynamic admission control 2.2. Static ATL admission control 3.1 Problems with static ATL Admission control for IEEE 802.11(e) networking has lately gained a lot of interest in academia, where several algorithms have been proposed possessing interesting features [4-12]. There are two main approaches for admission control in 802.11e; measurement based and model based admission control [3]. The model based admission control approach uses a mathematical model to determine if flows should be admitted or not [9-12]. However, most of the models rely on a saturation model and are therefore not a very good solution since saturation of the channel is not very common in real life. Measurement based admission control algorithms use measurement of some network parameters to decide if a flow should be accepted [4-8]. In the measurement based admission control field, the two-level protection scheme [4] by Xiao and Li. is one of the most accepted approaches. They have achieved very good results with their admission control algorithm, but they have also based their work on assuming saturation conditions. The algorithm proposed by Xiao and Li [4-6] uses transmissions budgets to control the traffic. The QAP announces the budget for each class through the beacon frames. The budget gives the available transmission time for each class that can be utilized in addition to what is already used. When the budget for a class is depleted, new streams will not be allowed to receive any more transmission time. The QSTAs calculate an internal transmission time for each class which the local transmission time can not exceed. The QAP calculates the budget for each AC according to the following equation: The static ATL algorithm proposed by Xiao and Li works very well under saturation for every traffic class. Practice has shown that saturation for all the traffic classes simultaneously is not very common. A more common situation is when a user is pushing a lot of traffic through one or perhaps two classes. In this case, the scenario will be quite different and the static ATL algorithm can not utilize the available bandwidth resources effectively. http://folk.uio.no/paalee Transmission time available (%) 0,8 0,7 0,6 Not utilized transmission time 0,5 0,4 0,3 0,2 ATL Transmission time used 0,1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Beacon periods Figure 1. Difference between transmission time used and the ATL value. Figure 1 illustrates the disadvantage of a static ATL. If the used transmission time for a class is below the ATL limit for that class, a lot of available transmission time is unutilized (wasted). Unutilized transmission time means lower throughput and should be avoided. A scenario is presented in order to illustrate just how much transmission time that can be wasted in the worst case. In this scenario there are 10 nodes that each is transmitting a video flow. There is one node transmitting at startup time and then a new node starts transmission every two second. Each flow tries to transmit at 3.2 Mbits with a packet length of 988 bytes. There is no other traffic than video in order to make the scenario simple. The ATL for class AC_VI is set to 10% in this scenario. The goal is to accommodate sufficient throughput for each video session and at the same time to support as many video sessions as possible. Ideally, the admission control algorithm should notice if there are unused resources and reallocate them in order to achieve this target. 30 Throughput 25 20 Video flow 1 Video flow 2 Total throughput 15 10 5 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 Seconds Figure 2. Throughput using Xiao's algorithm. Figure 2 shows the total throughput for a scenario using the two-level-protection scheme of Xiao and Li. Two video streams are admitted by the admission control. The first flow is admitted the requested bandwidth of 3.2 Mbps, while the second flow is only admitted approximately 1.3 Mbps. The total throughput using the static ATL approach is close to 4.5 Mbits. In additions to the two admitted flows, there are more AC_VI streams that are waiting to be admitted. They are not allowed to transmit, however, because then the total throughput would then exceed the ATL limit for the class AC_VI. With a static ATL setting, there are two ways to increase the throughput of the AC_VI traffic class. The first is to send the additional traffic as another access category, but this is clearly not in line with the general QoS thinking. It may also cause an application problem, since traffic will go through different 802.11e queues. The second approach is to increase the ATL level for the video class. But this must be done manually (using the two level admission control) and is therefore not a good option. 30 25 Video flow 1 Video flow 2 Video flow 3 Video flow 4 Video flow 5 Video flow 6 Video flow 7 Video flow 8 Total throughput Throughput 20 15 10 5 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 Seconds Figure 3. Throughput using the dynamic ATL algorithm. Figure 3 shows the total throughput using our dynamic ATL algorithm (explained in detail later). A total of eight video flows are admitted, and the first seven flows get the full 3.2 Mpbs bandwidth as requested. The ATL starts at 10%, but instead of keeping the ATL constant, it is dynamically adapting to the situation. It is observed from Figure 3 that the total throughput of the dynamic ATL algorithm is 25 Mbits, and more than five times higher than the total throughput of the static ATL algorithm. Other simulations shows that the highest total throughput that can be achieved with this set of nodes is about 27 Mbits, so the dynamic ATL algorithm achieves close to optimal network utilization. In contrast to the static ATL algorithm, the dynamic ATL algorithm takes into account that there are unused resources. Since the video class is the only class transmitting, the ATL for this class can therefore be raised. This is the main reason why the dynamic ATL algorithm achieves higher total throughput. Since static ATL does not consider when traffic-pattern changes, it is not a good option when traffic is not in saturation for all classes. This gives poor utilization of the bandwidth, and therefore some techniques for adjusting the ATL should be available. This is what the dynamic ATL algorithm aims to do. 3.2. Dynamic ATL model The proposed dynamic ATL model builds on the work by Xiao and Li [4-6], since their two-level protection mechanism seems to be the most promising 802.11e admission control algorithm to the best of our knowledge. However, our dynamic model could also easily be used with other algorithms that use static allocation between differentiated classes. The proposed mechanisms require modifications only in the implementation of the QAP (assuming that Xiao and Li’s two level algorithm is already implemented in the QAP and QSTAs), since this is where the ATL limits are adjusted. The QSTA implementations, on the contrary, do not require changes. The QSTAs do not have any knowledge of the new dynamic ATL algorithm, since all that they observe is the TXOPBudget[i] received in the beacon frames. Using the received TXOPBudget[i], the QSTAs operate according to the 802.11e standard. The dynamic ATL model also makes use of TSPEC. The TSPEC is specified by the 802.11e standard and is used for negotiating QoS parameters between the QAP and the QSTAs. The QSTAs use the TSPEC to inform the QAP about a flow’s requirements. If the QAP can not satisfy the demands, the flow is rejected. Otherwise the flow is accepted. 0,9 0,7 0,8 0,6 Transmission time available (%) Transmission time available (%) 0,8 Transmission time to give away 0,5 0,4 0,3 ATL TSPEC sum 0,2 0,1 0,7 ATL window 0,6 0,5 0,4 ATL ATL max ATL min 0,3 0,2 0,1 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Beacon periods Beacon periods Figure 4. The dynamic ATL algorithm. Figure 6. ATL window Figure 4 shows the basic concept of the class based dynamic ATL algorithm. The algorithm wants to reduce the gap between the TSPEC sum and the ATL. In order to achieve that goal, two new parameters are introduced; TSum and TxAvailable. The TSum is the sum of the maximum throughput for all flows that are admitted for a specific QoS class, and shown in Figure 4 as TSPEC sum. In other words, the TSPEC sum is the maximum throughput for an AC. TxAvailable is the time that a class is not utilizing and that can be allocated to another class. This is shown in Figure 4 as the gap between the ATL and the TSPEC sum. There are two processes that take place inside the QAP; The calculation of the TxAvailable (eq 2) and the process of giving and taking transmission time. TSum[i] is calculated by adding the TSpec’s maximum bandwidth for all the flows. A class can give away transmission time if the TxAvailable variable is larger than some predefined value (for example 20% of the initial ATL value). This calculation is done every K beacon period to avoid oscillation. However, if the TxAvailable is very close to zero, the class must try to take transmission time from another class. Hence a small TxAvailable indicates that there is much traffic that wants to transmit through this class. ATL max ensures that a class does not take all of the available transmission time and represents the upper bound for the ATL. A class cannot take more transmission time from another class if the ATL for that class has reached the ATL max value. This is to make sure that a class does not take all the available transmission time. Figure 6 shows the ATL, ATL min and ATL max values for a class. The ATL max and ATL min is kept for each class and are independent of each other just like the ATL values. By rising the ATL min, a class gets more guaranteed transmission time, and by lowering the ATL min, a class gets more dynamic transmission time. The transmission time between ATL max and ATL min is called the ATL window and it represents how dynamic and flexible the algorithm is configured. A large ATL window will be a very dynamic configuration while a small ATL window will be a very static configuration. If ATL max is equal to ATL min, the algorithm is equal to the algorithm of Xiao and Li [4-6]. When a class request more transmission time and there is transmission time marked as redundant, the class does not take all the available transmission time at once. Instead, the dynamic ATL algorithm follows the principle of taking in small steps. The step value can be constant or variable. The step value can also be different for different classes to ensure for instance that higher classes always get more than lower classes. TxAvailable[i] = ATL[i] – Tsum[i] (2) 4. Results If a class calculates that it can give away transmission time, the time is marked by the class as redundant time. Then the classes that need more transmission time can take over the time marked as redundant. Priorities are used when two classes try to take the same redundant time, and the highest class gets to take from the redundant time first. If there is more redundant time left after the highest class has taken what it wants, the lower class can proceed. Two limits, ATL min and ATL max, are also introduced in our admission control algorithm. ATL min ensures that a class does not give away all of its transmission time and represents the lower bound of the ATL for that class. The reason for this is to make sure that a class always has some guaranteed transmission time. The ns-2 discrete event simulator (version 2.26) is used for the evaluations, together with an 802.11e EDCA extension model implemented by the TKN group at the Technical University of Berlin [13-14]. We have implemented Xiao and Li’s two level algorithm [4] and our dynamic class based algorithm. To illustrate in which way the dynamic ATL model achieves higher throughput than the static ATL algorithms, a typical scenario is constructed. The scenario only uses voice and video traffic and each node transmits at 3.2 Mbps. At startup there is one voice node (a node sending voice traffic only) and one video node (a node sending video traffic only) transmitting. A new voice node and a new video node join every second until there are 10 of each. Initially the nodes send as much traffic as possible, and after 40 seconds all video traffic is ceased. After 80 seconds all voice traffic is ceased and video traffic is started again. Figure 7 shows the results from the scenario when running the static ATL method, as proposed by Xiao and Li. Maximum throughput is achieved up until 40 seconds has passed. Video and voice traffic shares the medium and gets approximately half of the bandwidth each. Full saturation for both the video and voice class is achieved, and the static ATL algorithm works very well. 30 Total throughput Throughput for voice Throughput for video 25 0,06 15 0,05 10 0,04 ATL Throughput 20 At 80 seconds, voice traffic drops to zero and video traffic starts transmitting again. Because the voice class has an ATL min value, it can start transmitting at once. Since the voice nodes are not transmitting any more, video's ATL will increase additively. Figure 8 shows that the video class takes more and more transmission time until it reaches the maximum throughput. Even though a higher throughput is achieved, it is not on the cost of the QoS quality. Figure 8 shows that the flows are stable at all times. Since the dynamic ATL algorithm uses Xiao and Li’s algorithm underneath, latency will be as for Xiao and Li [4-6]. 5 12 5 11 5 95 10 5 83 85 75 81 55 65 43 45 35 41 15 25 7 9 3 0,02 5 1 0 Voice Video 0,03 Seconds 0,01 Figure 7. Throughput using the static ATL algorithm. 0 1 At 40 seconds the video traffic drops to zero. Voice traffic continues to send at the same transmission rate, even though it has more traffic to send. This is because of the static ATL. At 80 seconds, voice traffic drops to zero and the video nodes start transmitting again. Video traffic throughput increases steadily until it reaches its ATL limit. Figure 7 shows that the total throughput after 40 seconds is much lower than before 40 seconds. This is because the classes are restricted by their ATL values even though no other classes are using the available transmission time. 30 Total throughput Throughput for voice Throughput for video 25 Throughput 20 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 Seconds Figure 9. ATL values for voice and video. In Figure 9 the ATL values for voice and video traffic which were used during the simulation are shown. From 0 to 40 seconds they are at their initial value (0.03). After 40 seconds the ATL for the video class quickly drops to 0.01 which is the ATL min for the video class. The ATL for the voice class increases until the ATL min for the video class is reached. ATL max for both the video and voice class is set to 0.06, but neither reaches that value since the ATL min value is reached first. At 80 seconds the video and voice traffic switches, and the ATL values is reflecting this in Figure 9. 15 5. Flow utilization 10 5 12 5 11 5 95 10 5 85 83 81 75 65 55 45 43 41 35 25 15 7 9 3 5 1 0 Seconds Figure 8. Throughput using the dynamic ATL algorithm. When the scenario is used with the dynamic ATL algorithm, a much higher total throughput is achieved as shown in Figure 8. Up until 40 seconds the results are the same, because the scenario is in saturation. After 40 seconds when the video traffic drops to zero, the results are very different. Then the voice class starts taking transmission time from the video class’s ATL until it reaches the ATL max for the voice class or until the ATL min for the video class is reached. The voice class will take as much transmission time as it can, and therefore the voice traffic is allowed to transmit more. The ATLs is adjusted dynamical. There are two kinds of transmission time that can be wasted with a static ATL algorithm; wasted transmission time per class and wasted transmission time per flow. Wasted transmission time per class is the transmission time that is not utilized by all the flows in a class (the gap between the TSPEC sum and the ATL level). This is the kind of transmission time that has been discussed so far and is what the dynamic ATL algorithm has improved. Wasted transmission time per flow has not been discussed yet. Wasted transmission time per flow is the transmission time that is not utilized by an individual flow. Every flow has a maximum available transmission time amount and if the flow does not utilize 100% of its available transmission time, some transmission time is wasted. Figure 10 illustrates both wasted transmission time per class and wasted transmission time per flow. Every flow has been admitted 10% of the available transmission time, and the figure shows that none of the flows are utilization 100% of their available transmission time. Trying to eliminate wasted transmission time per flow is much harder than eliminating wasted transmission time per class Transmission time available (%) 0,8 0,7 Not utilized transmission time per class 0,6 0,5 0,4 Flow 5 Flow 4 Flow 3 Flow 2 Flow 1 TSPEC sum ATL 0,3 Not utilized transmission time per flow 0,2 0,1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Beacon periods Figure 10. Transmission time wasted per flow and per class. The problem with wasted transmission time per flow is not how to calculate when or how much transmission time that can be given away, but the problem lies in what to do with the transmission time that can be given away. If a flow does not utilize all of its transmission time and decides to give it away, it must be able to retrieve the transmission time immediately when it needs it back again. Otherwise the QoS requirements would not be fulfilled for that flow. So a class that decides to take the transmission time marked as redundant by a flow must give it back immediately once the flow needs it back again. This makes it very difficult for the class that takes transmission time to do anything useful with it. The class could admit new flows, but then would have to terminate these new flows once the class must give back the transmission time. This is not a very reliable approach regarding QoS. 5.1. Bursty voice and scalable video Let us now consider a specific scenario where it is possible to utilize the wasted transmission time on a per flow basis. If the voice class sends bursty voice and the video class sends scalable video, the video class can utilize the wasted transmission time per flow from the voice class. Scalable video adapts to the link quality and adjusts the quality of a stream [15]. The video class can exploit this by using the temporary taken transmission time to upgrade the quality of a stream for a period. In other words; if a voice flow can give away transmission time while it is not using it, the video class can use the transmission time meanwhile to improve the video quality. The video class knows that the transmission time can be revoked at any moment, so it will not admit new streams, but will instead upgrade the quality of already existing streams. Upgrading the quality is easy with scalable video and there are different approaches on how to adjust the quality with scalable coding schemes like SNR, Temporal, Spatial and Fine Grained [16]. The basic idea for the schemes is to send more frames or layers of the same stream. 6. Conclusion In this paper our class based dynamic ATL algorithm has been presented. Several results show that our algorithm achieves much higher throughput than the static ATL algorithm. Our admission control also adapts to the traffic pattern dynamically. The static ATL algorithm is not very flexible for none saturation situations because it does not achieve optimal throughput, and the algorithm adapts very poorly when the classes are not in saturation as shown in section 3.1. The algorithms using static ATL is not able to utilize the network resources as good as the dynamic ATL model. The main difference is that the ATL is dynamically adjusted for each class during runtime. Adjusting the ATL is done by taking and giving transmission time. Since our algorithm is built on top of the static ATL algorithm, all results that are valid for the static ATL algorithm is also valid for our algorithm. Hence, latency is not sacrificed at the cost of higher throughput. Our dynamic ATL admission control algorithm considers both saturation and none saturation in other words. Implementing our admission control only requires modification of the QAP if the QAP and QSTAs already have the two level algorithm implemented. Finally an alternative flow based admission control algorithm has been presented for a very specific scenario. Utilizing wasted transmission time per flow is very difficult as explained in section 5, but with scalable video it is possible. The idea is to temporarily use the not utilized transmission time to upgrade the video quality for a short period. As scalable video streaming will be more widely used, this scenario will be more relevant. 6. Future Work More study of how to exploit the wasted transmission time per flow would be very interesting. We have found one scenario where the wasted transmission time per flow can be successfully used, but there are probably more scenarios. A more detailed study on how to set the parameters (K, step size, ATL max and min) for the dynamic ATL algorithm would be beneficial to achieve better efficiency. Neither the static ATL nor the dynamic ATL algorithm considers the QAP as a special node. It would be very interesting to find out if the QAP should be treated differently than the rest. Some sort of QAP protection must then be included in the algorithm 7. References [1] [2] [3] Wireless LAN medium access control (MAC) and Physical layer (PHY) specifications Amendment 2: higher-speed physical layer (PHY)extensions in the 2.4GHz band, IEEE standard 802.11b-1999 Wireless Medium Access Control (MAC) and Physical Layer (PHY) specifications: Medium Access Control (MAC) Quality of Service enhancements, IEEE draft standard P802.11e/D13.0, July 2005 Deyun Gao, Jianfei Cai, King Ngi Ngan, “Admission Control in IEEE 802.11e Wireless LANs”, IEEE Network, Aug. 2005 [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] Yang Xiao, Haizhon Li, “Voice and Video Transmissions with Global Data Parameter Control for the IEEE 802.11e Enhanced Distributed Channel Access”, IEEE Transactions on parallel and distributed systems vol. 15, Nov. 2004 Yang Xiao, Haizhon Li, Sunghyun Choi, “Protection and Guarantee for Voice and Video Traffic in IEEE 802.11e Wireless LANs”, IEEE, 2004 Yang Xiao, Haizhon Li, “Evaluation of Distributed Admission Control for the IEEE 802.11e EDCA”, IEEE Radio Communications, Sep. 2004 Daqing Gu, Jinyun Zhang, “A New Measurement-Based Admisson Control Method for IEEE802.11 Wireless Local Area Networks”, IEEE, 2003 Liqiang Zhang, Sherali Zeadally, “HARMONICA: Enhanced QoS Support with Admissin Control for IEEE 802.11 Contention-based Access”, IEEE RTAS, 2004 Dennis Pong, Tim Moors, “Call Admisson Control for IEEE 802.11 Contention Access Mechanism”, Globecom, 2003 Yu-Liang Kuo, Chi-Hung Lu, Eric Hsaio-Kung Wu, GenHuey Chen, “Ad Admission Control Strategy for Differentiated Services in IEEE 802.11”, Globecom, 2003 Zhen-ning Kong, Danny H.K. Tsang, Brahim Bensaou “Measurement-assisted Model-based Call admission Control for 802.11e WLAN Contention-based Channel Access”, IEEE LANMAN, 2004 Chun-Ting Chou, Sai Shankar, Kang G. Shin, ”Achiving Per-Stream QoS with Distributed Airtime Allocation and Admission Control in IEEE 802.11e Wireless LANs”, IEEE, 2005 Sven Wietholter, Christian Hoene, 'Design and Verification of an IEEE 802.11e EDCF Simulation Model in ns-2.26', Technical University Berlin, Telecommunications Networks Group, Berlin November 2003 Kevin Fall, Kannan Varadhan, 'The ns Manual', http://www.isi.edu/nsnam/ns/doc/index.html Ralf Steinmets, Klara Nahrstedt: Multimedia Fundamentals, “Volume 1: Media Coding and Content Processing (2nd Edition)”, Prentice Hall, 2002 Vivek K. Goyal, “Multiple Description Coding: Compression Meets the Network”, IEEE Signal Processing Magazine, Sep. 2001