MAC Protocol Enhancements for QoS Guarantee and Fairness over the IEEE 802.11 Wireless LANs Qiu Qiang, Lillykutty Jacob*, R. Radhakrishna Pillai, and B. Prabhakaran** Laboratories for Information Technology, 21 Heng Mui Keng Terrace, Singapore 119613 * Department of Computer Science, National University of Singapore, Singapore 119260 ** Department of Computer Science, University of Texas at Dallas, TX 75083-0688
[email protected],
[email protected],
[email protected],
[email protected] guarantee. In [6], a distributed control algorithm, named as virtual source (VS) algorithm, is designed to extend the DCF to provide service differentiation by continuously keeping track of the health of the channel. From all these studies, the original IEEE 802.11 MAC protocol does not appear satisfactory to provide the QoS guarantees. Most of the work on QoS guarantees over IEEE 802.11 are focused on analyzing the performance of real-time transmission over original IEEE 802.11 WLANs, tuning of parameters such as the value of CFP repetition interval [4] to achieve better performance, or introducing some priority queuing scheme such as varying the back-off value [8] to the original MAC protocol. Some novel schemes are proved to be effective to provide QoS guarantees over WLANs, such as the blackburst scheme[5]; however, they are not totally compatible to IEEE 802.11 and may impose extra requirements on high priority stations, such as constant access intervals. Also, at higher loads, low priority traffic under those schemes normally suffers from starvation.
Abstract—In future wireless networks, different traffic classes will exhibit a large variety of characteristics and QoS requirements, such as transmission rate, maximum tolerable bit error rate and timeout specifications. However, currently there is no standard way of guaranteeing QoS in wireless access networks like Wireless LAN based on IEEE 802.11. In this paper, we propose medium access control protocol enhancements and a distributed scheduler for QoS guarantees and fairness over IEEE 802.11 WLAN. The proposed scheme uses distributed scheduling at both the access point and the user terminals to schedule the transmission of packets according to their delay requirements. The algorithms used for both scheduling are the same. A flexible and fair resource allocation method among the traffic classes and the user terminals is provided by this scheme. Its performance has been evaluated using UCB/LBNL/VINT Network Simulator and an implementation in the Linux kernel. Keywords- Wireless LAN, QoS guarantees, fairness, IEEE 802.11 MAC protocol
I.
The new access mechanism called Enhanced DCF (EDCF) [9] developed by the IEEE 802.11e task group is an enhancement of the access mechanisms of IEEE 802.11 for service differentiation. EDCF combines two measures to provide differentiation. The minimum contention window (CWmin) of the back-off mechanism can be set differently for different priority classes, yielding higher priority to classes with smaller CWmin. For further differentiation, different interframe spaces can be used by different traffic classes. The EDCF could be combined with generalized PCF features to be the Hybrid Coordination Function (HCF) to simplify the QoS conformance model. The HCF is a coordination function on top of the EDCF to provide contention free and controlled contention transfers during both CP and CFP. The EDCF mechanism is an improvement over the original PCF. However, it suffers from a high rate of collisions. It could give low average delay to high priority traffic, unfortunately, the distribution of delays is however such that at high loads, a rather large fraction of the packets have very long delays, which might render them useless to real-time applications. At higher loads, low priority traffic also suffers from starvation just like using Blackburst. In many cases it is not desirable to starve low priority traffic, but rather to give a relative differentiation.
INTRODUCTION
Wireless local area networks (WLANs) have come into great use in recent years. However, currently there is no standard way of guaranteeing QoS in IEEE 802.11 WLAN. The MAC protocol for IEEE 802.11 incorporates two access methods. The basic access method is the DCF which is used to support asynchronous data transfer on a best effort basis. The DCF is based on the Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) protocol. The contention free service is provided by the PCF which basically implements a “polling” access method. The PCF uses a Point Coordinator (PC), usually at the Access Point (base station), which cyclically polls stations giving them the opportunity to transmit and thus avoiding contention for the channel. When both the access methods are used, contention free period (CFP) and contention period (CP) could alternate. Within a CFP repetition interval, a portion of the time is allocated as CFP during which the PCF is active and the remaining time is allocated as CP during which the DCF is active. In [1], a very good description on IEEE 802.11 MAC protocol can be found. Recently, QoS guarantees over IEEE 802.11 wireless LANs have been the subject of intensive study in networking literature. Performance evaluations of real-time traffic transmission in [3],[4],[7] have shown how the performance varies with the polling scheme and also with the IEEE 802.11 parameters setting using PCF for traffic requiring QoS
0-7803-7533-X/02/$17.00 (C) IEEE
Our study focuses on a more complete QoS solution to IEEE 802.11 WLANs by enhancing the original MAC protocol with better demand assignment features and also by integrating
628
the MAC with a novel distributed scheduler seamlessly. The proposed scheme uses distributed scheduling at both the access point and the user terminals to schedule the transmission of packets according to their delay requirements. The algorithms used for both scheduling are the same. A flexible and fair resource allocation method among the traffic classes and among the user terminals is provided by this scheme. Because of the short-term reservations, it is best suited for variable bit rate real time applications. Its performance has been evaluated using NS2 and an implementation in the Linux kernel. II.
Pnr: the total number of non-real time data units (NRTDUs) reported to the master scheduler, N: the total number of data units that can be accommodated during a given CFPRI in both contention and contention free modes together, To(i):
the time out value for data unit i,
Tnr: a predefined large time out value for NRTDU. Tcfp is calculated as fraction f of Tcfri, the contention-free period repetition interval. Assuming a maximum bandwidth allocation of 25% (this could be set to any value) for the nonreal time class, the factor f is calculated as follows,
THE DISTRIBUTED SCHEDULER
The proposed distributed MAC-layer scheduler comprises one master scheduler (MS) and many slave schedulers (SSs) (Fig. 1). The concept of distributed scheduling for QoS guarantees over wireless ATM network has been considered in [2].
Case 1: 0 < P Pr
f=
≤ 0 . 25 N
nr
1
∑ To ( i ) Pr
i =1
1
∑ To ( i ) + i =1
P nr T nr
By re-using the bandwidth unused (by the non-real time class) for the guaranteed class, the waiting time of the RTDUs could be reduced. It is obvious that more RTDUs with tight delay specification will lead to more bandwidth allocation for the CFP.
Figure 1. Distributed scheduler architecture
Tnr is a predefined large timeout value, e.g., 10 in our simulations (in unit of length of CFPRI), which will be assigned to each NRTDU when they enter the queue at slave scheduler. The initial timeout value of each NRTDU is defined at the application layer, e.g. it could base on the port number. At the slave scheduler, like the TO values of the RTDUs, the Tnr value of each NRTDU will be decremented with time, and at some point it will fall within the range of TO values of the RTDUs. When Tnr falls within the range of TO values of the RTDUs, such NRTDU will be treated as RTDU, and its delay requirement start to be reflected at the master scheduler.
It is to be noted that at Access Point (AP), both the MS and an SS co-exist while at each STA only an SS is implemented. Basically, the MS allocates time slots to the SSs based on the information it receives. Each SS then redistributes the allocated slots among its connections. The distributed scheduler operates according to the negotiation between the MS and each SS. A. Computation of The CFP Within a CFP repetition interval (CFPRI), a portion of the time is allotted to contention-free traffic, and the remainder is available for contention-based traffic. The CFPRI is initiated by a beacon frame transmitted by the AP. One of its primary functions is synchronization and timing. The duration of the CFPRI is a manageable parameter that is always an integral number of beacon frames. It is up to the AP to determine the length of the CFP during any given repetition interval, and AP may terminate the CFP by sending a CFP-End frame.
Case 2: Pnr >0.25N f = 0.75 Bandwidth allocation for non-real time class is bounded to 25%. Since the Tnr value is reducing for each non-real time data unit, those NRTDUs which stay in the queue for more than certain duration will eventually get the bandwidth allocation. Some of the stations may receive more slots for the real time traffic when Pr + Pnr < N. When a slave scheduler has not enough RTDUs for transmission during its allocated slots in the CFP, it can pass the extra slots to the remaining stations. Eventually, AP may send CFP-End frame to end the CFP and return the unused bandwidth to CP.
By adopting a revised PCF frame transfer (discussed in the following section), AP is informed of the current traffic demand of both local queue (at the SS of AP) and the remote queues (at the SSs of STAs). The length of CFP in each CFPRI is determined as a function of the number of non-real time data units (NRTDUs) and real time data units (RTDUs) each with its own delay requirement specification.
Case 3: Pnr = 0 When a new station enters a cell, it associates with the AP by sending an Association Request (AR) frame during the CP. In order to facilitate this, the maximum CFP duration should be limited to the CFP repetition interval minus the time required to successfully transmit an AR frame; otherwise when there is no non-real time traffic (Pnr = 0), no AR frame may be transmitted since fraction f will be 1 and no CP is allocated. Let
Let: Tcfri: length of contention-free period repetition interval Tcfp: length of contention-free period (CFP), Pr: the total number of real time data units (RTDUs) reported to the master scheduler,
629
ARTimeout be the duration to send one AR frame successfully, that includes the time for RTS/CTS handshaking and ACK.
where fi is as given in Equation 2. The fraction of bandwidth allocated for SS k:
Thus, the length of CFP is computed as
Gk =
Tcfri – ARTimeout , if Pnr = 0 Pr
Tcfp=
T cfri *
i =1
Pr
1 P nr + ∑ T nr i =1 To (i )
Tcfri * 0.75 , otherwise
, 0 < Pnr ≤ 0.25 N
The maximum number of time slots allocated to an SS by the MS under high bandwidth demand conditions is determined as follows. Let MAC_FragmentationThreshold be the maximum MAC fragment length (bytes). Consider an SS k with a maximum transmission rate Rk (bps), and weight Gk. The number of time slots Sk allocated to it is caculated as:
(1)
Sk =
i: the category of data units (data units with the same specified time out value),
The fraction of bandwidth allocated for DUs in category i out of the bandwidth allocated to SS k by AP is:
the association ID (AID) of SS,
Nki: the number of data units of the ith category waiting at SS k,
f ki
Ek: the channel error rate at SS k. In priority calculation, the fair share of bandwidth allocation among both the different DU categories as well as the different STAs is considered. Note that the category of a DU changes in each CFPRI because of its decreasing TO value with time.
fi =
∑ i
Then, according to the share, SS k will select data units to transmit during the time slots assigned to it. The size of data from ith category should not exceed the category share fki* Sk* MAC_FragmentationThreshold. The total size of data to be sent for SS k should not exceed Sk* MAC_FragmentationThreshold. C. Protocol Enhancements We propose some modifications in the IEEE 802.11 MAC protocol in order to make it a more efficient demand assignment protocol and also for the purpose of the integration of the distributed scheduler. In the revised MAC protocol, the mobile stations (STAs) notify the access point (AP) about their requirements and then send their packets to the AP if the requests are granted according to the transmission schedule that the AP broadcast to the entire cell. Protocol overhead introduced in the reservation phase is carefully reduced to be as
The fraction of bandwidth allocated for DUs in category i at SS k:
G ki = f i *
N ki ∑ N ki i
1
∑ 1− E k
* k
(6)
fki * Sk * MAC_FragmentationThreshold
(2)
1 * 1 − Ek
N ki Ti = N ki ∑i T i
This corresponds to an amount of data (byte):
The fraction of bandwidth allocated for DUs in category i : N ki Ti k N ki ∑k T i
(5)
Let the parameters i, Ti, Nki, Sk be defined as in 2.2.
the specified timeout value for the ith category of data
∑
T cfp * Gk 8 * MAC _ Fragmentat ionThreshh old / Rk
Each SS will schedule the NRTDUs to be transmitted in CP. For RTDUs as well as for those NRTDUs whose Tnr values fall within the range of the TO values of the RTDUs, SS will keep sending AI to MS by piggybacking it in the uplink data to update the AP. Upon receiving total number of time slots Sk assigned to SS k for the current frame (computed in Eqn.(5)) via the Polling Information (PI) frame from the MS, SS k will select data units to send during these time slots based on the weight assigned to the data units by itself (to be described next).
Let:
k:
(4)
The share of bandwidth allocated for DUs in category i at SS k is inversely proportional to the number of periods left before the data units timeout in order to minimize data losses and directly proportional to the number of DUs waiting and the channel error rate at SS k (in some predefined range).
B. The Master Scheduler The Master Scheduler (MS) at AP determines the bandwidth share for each SS based on the data unit priorities. This computation is done at the beginning of every CFPRI as discussed below. The assigned priority value is a function of the remaining times before the data units time out (when they are no longer useful and are discarded) and the channel error. When any STA or AP has new data ready for transmission, the association information (AI) needs to be passed to the MS at AP (piggybacked in the uplink data for remote SS). From AI, the MS at AP will know how many data units are ready for transmission at each SS and when each real time data unit will time out.
Ti: units,
ki
i
1
∑ To (i )
∑G
(3)
N ki ∑ N ki i
630
small as possible. All MAC frames in the revised MAC protocol (discussed in the full paper) are designed to be compatible with the original IEEE 802.11 standard. Revision is made on the CFP to support demand assignment and to reduce the protocol overhead (Fig. 2).
(VBR) audio and video sessions as the bandwidth allocation by the master to the slaves and by each slave to the different traffic sessions are done in every CFPRI. The data rate of cross traffic session was increased from 0 to 8Mbps to evaluate the performance at different traffic load. The total channel bandwidth was set to 11Mbps and the packets size used was 210 bytes unless otherwise specified. All simulations were run for 200 CFPRI. An error-free channel was assumed for these simulations.
Figure 3. Sessions setup for simulation experiments
A. Delay and Throughput Guarantees for Real Time Traffic The packet delay and throughput behaviour of the real-time sessions under the proposed scheme are presented in Figs. 4-7. Notice that the traffic load and session throughput listed in all the figures include both the application data and the protocol overheads, i.e., the frame headers. Therefore, after including the overheads of both MAC and physical layers, the real channel consumption for 1.5Mbps video session will be 2.014Mbps and for 64Kbps audio session will be 85.94Kbps. In the figures, the graphs labelled PCF represent the results of the proposed scheme and those labelled DCF represent the results without any contention free period.
Figure 2. Example of revised PCF frame transfer DL = data frames sent by AP
Ux = data frames sent by STAs
AI = Association Information
B = Beacon frame
Instead of polling STAs individually, AP will broadcast the polling information (PI) once just after the beacon frame. The polling information will contain the order of STAs that are permitted to send in the current frame along with the number of time slots assigned to each STA. The downlink data transmission is always scheduled at the beginning of a CFP so that the stations can send their ACK by piggyback during the same CFP.
Clearly, under the proposed scheme the delay and throughput for the real-time audio and video sessions are guaranteed and not affected by other sessions. However for the DCF case, the video and audio packet delays (Figs. 4&5) are small only for light load. These delays dramatically increase and become unacceptable when the load increases beyond certain level. The bounded (though unacceptable) delay under DCF is due to two factors. Firstly, there is only a fixed number of users/sessions, and the offered load is increased by increasing the data rate of the non-real time cross traffic session, and not by increasing the number of users/sessions. Secondly, those packets which encounter delay more than certain timeout value are dropped.
For downlink data units, if the destination owns time slots in the current CFP, the ACK along with the association information (AI) will be piggybacked in its uplink data; for those stations, which do not get time slots assigned, mini slots will be allocated by the AP to send the ACK and AI before the CFP-End message. Instead of sending ACK for each uplink data unit, AP will broadcast one ACK that contains a bitmap for all the uplink data units received successfully in the current CFP. III.
PERFORMANCE EVALUATION
Similar behaviour is observed for the throughput of these real time sessions. The throughput shown in Fig. 7 is the combined throughput for all the three audio sessions. It is not much affected under the DCF because of the relatively low data rate requirement. However, the throughput of the video session (Fig. 6) gets much degraded under DCF. Again, the bounded throughput under DCF is due to the fixed number of sessions/users. With increased number of sessions/users, both the throughput and the delay will be much degraded under DCF while they will be unaffected under the proposed scheme because of the adaptation of the CFP length, provided the oversubscription by real time audio/video sessions is prevented via admission control mechanisms. Notice that the channel
NS2 is used for the simulation experiments. A simple simulation set up with six sessions was used (Fig 3): three constant bit rate (CBR) real-time audio sessions at the rate of 64 Kbps with a timeout value of 0.2 sec, one CBR real-time video session at the rate of 1.5 Mbps with a timeout value of 0.3 sec, one low data rate non-real time computer data session with an average rate of 56 Kbps. One non-real time cross traffic session was also used, by controlling its rate the total offered load to the network was varied. All these sessions were unidirectional and used UDP as the transport protocol. Though, in the preliminary experiments, we used CBR audio and video sessions, our scheme is best suited for the variable bit rate
631
Throughput (Mbps)
utilization will also be affected by the simulation parameters; e.g., when we increased the packet size from 210 bytes to 1000 bytes for NRTDUs alone, the channel utilization under the proposed scheme increased from 37% to 65% (Fig. 8). B. Fairness In addition to providing delay bound and throughput guarantees, an equally important aspect of our scheme is fairness. To demonstrate the fairness properties, first we consider the services received by two sessions with different QoS specifications.
7.72
9.06
10.4
2 10 Bytes 1K B ytes
Throughput (Mbps)
7 6 5 4 3 2 2 .3 4 7
3 .6 9 0 2
5 .0 3 3
6 .3 7 5
7 .7 1 8 7
9 .0 6 1 6
1 0 .4 0 5
11
O f f er ed T r a f f ic L o a d (M b p s)
Mean Packet Delay (sec.)
Figure 8. Overall throughput vs. channel load for all sessions --effect of packet size 0.08
Video
0.075
Audio
0.07 0.065 0.06 0.055 0.05 2.35
3.02
3.69
4.36
5.03
5.7
6.38
7.05
7.72
8.39
9.06
9.73
10.4
Figure 9(a). Packet delay for real-time CBR video and audio 2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0
DCF
11
Video Audio
2.35
3.02
3.69
4.36
5.03
5.7
6.38
7.05
7.72
8.39
9.06
9.73
10.4
11
Offered Traffic Load (Mbps)
Figure 9(b). Throughput for real-time CBR video and audio
PCF
1.4
Mean Packet Delay
DCF
1.2 1 0.8 0.6 0.4 0.2 0 3.02
3.69
4.36
5.03
5.7
6.38
7.05
7.72
8.39
9.06
9.73
10.4
STA 1
0.075 0.074 0.073 0.072 0.071 0.07
STA 3
2.347 3.0187 3.6902 4.3616 5.033 5.7045 6.375 7.0473 7.7187 8.3901 9.0616 9.7331 10.405
Offered Traffic Load (Mbps)
11
Offered Traffic Load (Mbps)
Figure 10(a). Delay for CBR audio at STA 1 & 3
Figure 5. Packet delay vs. channel load for real-time CBR audio Throughput (Mbps)
11
Offered Traffic Load (Mbps)
(sec.)
(sec.)
Mean Packet Delay
6.38
8
Figure 4. Packet delay vs. channel load for real-time CBR video Mean Packet Delay (sec.)
5.03
9
Offered Traffic Load (Mbps)
2.35
3.69
Figure 7. Throughput vs. channel load for real-time CBR audio
PCF
6.38 7.05 7.72 8.39 9.06 9.73 10.4
DCF
Offered Traffic Load (Mbps)
Next, we consider the fairness between two sessions with the same QoS requirements from different stations. See Figs. 10 (a) & (b) for services received by the audio sessions at STA 1 and STA 3. The services received by the audio sessions at STA 1 and STA 3 are nearly identical. Again, the proposed scheme ensures fairness among the sessions with same QoS requirement at different STAs by use of Equation 3.
2.35 3.02 3.69 4.36 5.03 5.7
PCF
2.35
See Figs. 9(a) & (b) for services received by the video session of rate 2.014Mbps with bounded delay specification of 0.3 sec and by the three audio sessions of rate 85.94Kbps each with bounded delay specification of 0.2 sec. The difference between the delay experienced by the video and audio sessions is constant in spite of the offered load variation. Similarly, the difference between the throughput received by the video and audio sessions is also constant. The proposed scheme ensures fairness among the sessions with different QoS requirements by use of Equation 2.
1.4 1.2 1 0.8 0.6 0.4 0.2 0
0.5 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0
0.087
2.4 2.3 2.2 2.1 2 1.9 1.8 1.7 1.6 1.5 1.4
STA 1
PCF DCF
STA 3
0.086 0.085 0.084 2.35 3.02 3.69 4.36 5.03
2.35 3.02 3.69 4.36 5.03 5.7
6.38 7.05 7.72 8.39 9.06 9.73 10.4 11
5.7 6.38 7.05 7.72 8.39 9.06 9.73 10.4
Offered Traffic Lo ad (M bps)
Offered Traffic Load (Mbps)
Figure 10(b). Throughput for CBR audio at STA 1 & 3
Figure 6. Throughput vs. channel load for real-time CBR video
632
11
11
C. Implementation In Linux Kernel A software prototype has been developed, which can be ported on to an IEEE 802.11 WLAN hardware. In order to emulate the distributed scheduling using commercially available WLAN hardwares which do not support QoS, it was implemented between networks layer and datalink layer rather than within the data link layer. Two different Linux modules were implemented for AP and STA respectively: the first one includes a revised PCF emulator, the master scheduler and a slave scheduler; the second one includes a revised PCF emulator and a slave scheduler.
IV.
CONCLUSION
In this paper, IEEE 802.11 MAC protocol enhancements and a distributed scheduler are proposed to provide QoS guarantees over IEEE 802.11 WLAN. The proposed scheme provides overall improvement in delay and throughput performance while guaranteeing the delay bound and throughput requirements of the real time traffic. This scheme also guarantees fair resource allocation among traffic classes and user terminals. The experimental results from an emulation of the system in Linux kernel closely match the simulation results. Future work includes the study of packet loss behavior, the effect of channel error and the number of users on the system performance, the performance of VBR traffic, and also the refinement of the slave scheduler.
1) The Linux Protocol Stack In Linux, network devices form the bottom layer of the protocol stack; they use a link layer protocol to communicate with other devices to send and receive traffic. Input interfaces copy packets from a medium, perform some error checks, and then forward them to the network layer. Output interfaces receive packets from the network layer, perform some error checks, and then send them out over the medium. IP is the standard network layer protocol. It maintains a database of routes for outgoing packets; it addresses and fragments them if necessary before sending them down to the link layer. TCP and UDP are the most common transport layer protocols in Linux. Both of them copy the packet's payload between user and kernel spaces. IP Specific INET Sockets are the data elements and implementations of generic sockets. They have associated queues and code that executes socket operations such as reading, writing, and making connections. They act as the intermediary between an application's generic socket and the transport layer protocol. Generic BSD Sockets are more abstract structures that contain INET sockets. Applications read from and write to BSD sockets; the BSD sockets translate the operations into INET socket operations.
REFERENCES [1]
[2]
[3]
[4]
[5]
[6]
2) Implementation Details In DCF, when broadcast or multicast MPDUs are transferred, no RTS/CTS exchange shall be used regardless of the length of the frame; In addition, no ACK shall be transmitted by any of the recipients of the frame. Therefore, MAC broadcasting was used for all frames during the CFP, so that the channel allocation could be controlled by the AP and thus CFP could be emulated. So the destination MAC address of all the outgoing frames during the CFP were changed to the broadcast MAC address.
[7]
[8] [9]
The PCF emulation frames, e.g. the beacon frame, AI frame, Polling frame etc., are all encapsulated into IP packets for transmission. The incoming packet routine handler stops those PCF functional frames before they enter the normal protocol stack and retrieves the information for PCF operation.
633
Brian P. Crow, Indra Widjaja, Jeong Geun Kim and Prescott T.Sakai, “IEEE 802.11 Wireless Local Area Networks,” IEEE Communications Magazine, Sept. 1997, pp. 116-126. Chi Hang Tse, Brahim Bensaou, and Kee Chaing Chua, “Efficient Distributed Scheduling Architecture for Wireless ATM Networks,” IEICE Trans. Commun., No. 1, January 1999. A. Ganz, A. Phonphoem, Z. Ganz, "Robust SuperPoll Protocol for IEEE 802.11 Wireless LANs", IEEE Military Communications Conference, Boston, MA, October 1998 Veeraraghavan, M., Cocker, N., Moors, T., “Support of voice services in IEEE 802.11 wireless LANs,” IEEE INFOCOM 2001, Vol. 1, pp. 488 – 497. J. L. Sobrinho and A. S. Krishnakumar, "Quality-of-Service in Ad Hoc Carrier Sense Multiple Access Wireless Networks," Jl. Select. Areas Commun., Vol. 17, No. 8, August 1999. Michael Barry, Andrew T. Campbell, Andras Veres, "Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks, " IEEE INFOCOM 2001, Anchorage, Alaska Suzuki, T., Tasaka, S., “Performance evaluation of integrated video and data transmission with the IEEE 802.11 standard MAC protocol,” Global Telecommunications Conference 1999. (GLOBECOM '99), Vol. 1b, pp. 580 –586. Nitin H. Vaidya, Paramvir Bahl, Seema Gupta, "Distributed Fair Scheduling in a Wireless LAN," IEEE MobiCom 2000 M. Benveniste, G. Chesson, M. Hoeben, A. Singla, H. Teunissen, and M. Wentink. EDCF proposed draft text. IEEE working document 802.11-01/131r1, March 2001.