MAC Layer Admission Control and Priority Re ... - Semantic Scholar

3 downloads 63887 Views 366KB Size Report
Oct 24, 2005 - C 2005 Springer Science + Business Media, Inc. Manufactured in The Netherlands. .... smaller. Enhanced Distributed Coordinator Function (EDCF). [6] is the ... 3 are basically best-effort flows, while those whose priorities.
 C

Mobile Networks and Applications 2005 Springer Science + Business Media, Inc. Manufactured in The Netherlands. DOI: 10.1007/s11036-005-4451-7

MAC Layer Admission Control and Priority Re-allocation for Handling QoS Guarantees in Non-cooperative Wireless LANs MING LI and B. PRABHAKARAN Department of Computer Science, University of Texas at Dallas, USA Published online: 24 October 2005

Abstract. Providing QoS guarantee with appropriate service differentiation in IEEE 802.11 wireless LANs is quite desirable. However, users may be selfish and thus rigorously try to maximize their performance by demanding high services even though the network has already saturated. On the other hand, user misbehaviors such as misuse of priority and over-rate transmission pose further harm to performance of existing flows. These application layer non-cooperation makes successful resource allocation very challenging with existing contention based CSMA/CA channel access. In this paper, we propose a MAC layer coordinated QoS framework of admission control and priority re-allocation for quality of services of real-time applications in wireless LANs. Our focus is on priority based MAC schedulers where each user can set its flow priority in order to receive appropriate level of services. With channel condition information such as available bandwidth and mean delay exchanged among neighboring stations, users can enforce admission control based on the perceived channel status and may re-allocate their priorities to accommodate existing flows as desired. User misbehaviors are identified by estimating the flow transmitting rate and matching priority setting, or even punished by assigning appropriate low priorities. Extensive simulations results show that the proposed framework can effectively coordinate wireless users on keeping reserved transmission rate, using appropriate MAC priority, and allocating sufficient resource. Keywords: IEEE 802.11 wireless LAN, admission control, priority re-allocation, QoS, non-cooperative behavior

1. Introduction Providing service differentiation in IEEE 802.11 wireless LANs has generated a lot of interest in recent years. The common idea of existing scheduling strategies [1,2,5–7,21,24] is to minimize packet transmission collision either by varying the contention window size for different service classeses, or by employing appropriate backoff interval calculation methods to control the channel access of wireless stations. With emerging prioritized MAC schedulers such as EDCF, it is a natural demand that various classes of user-specific QoS requirements are satisfied through appropriate priority mapping so that the MAC scheduler is able to provide different levels of channel access for flows of different priorities. Actually, all of the existing strategies implicitly assume that wireless users are well-behaved. However, in non-cooperative network environment, a wireless user may be selfish and try to rigorously maximize its performance without considering the network condition. For example, a user may change its flow priority to a much higher value than necessary, or transmit at a much higher rate than its demand. A well-behaved user may insist to demand high level service even though there is no enough resource to support its QoS requirements. Another well known issue related to non-cooperation is false admission, which means that multiple flows arrive within a short period of time and are incorrectly admitted even though the available resource can only support some of them. When false admission occurs, flows compete with each other for channel access and none of them is able to receive guaranteed service.

For prioritized MAC schedulers such as EDCF, fixed or static mapping from application layer priority to MAC priority may lead to different flow performance with different network configurations, such as minimum contention window (CWmin ), arbitration interframe spacing (AIFS), or transmission opportunity (TXOP). With static priority setting, a new flow still demands high level services in order to achieve desired QoS, even when traffic load increases. However, with serious channel contention, this high service demand (with high priority) not only affects existing real-time flows, but also violates QoS guarantee for the new flow. Since all parameters are prioritized, it maybe desired that priorities of flows can be tuned according to the network condition so that both objectives of maintaining high overall throughput and providing QoS guarantee for existing flows are achieved. All these types of self-motivated, aggressive application layer behaviors largely violate the objective of effective service differentiation and make it very challenging to provide guaranteed quality of services of multimedia applications in current high speed wireless LANs. We believe that this noncooperative nature in wireless networks requires a coordinated, fully distributed scheme to provide an efficient resource management that is able to identify misbehaviors and make appropriate adjustment based on the exchanged channel condition information among neighbors. From the analysis of per-flow throughput and mean delay, we find that providing sufficient QoS for real-time flows requires per-class admission control and priority re-allocation. For this purpose, a MAC layer framework of flow admission

LI AND PRABHAKARAN

control and priority re-allocation for prioritized distributed schedulers in IEEE 802.11 wireless LANs is devised. MAC layer mean delay is measured on a per service class basis to provide protection for different multimedia traffics such as voice and video. Then, network condition information such as available bandwidth and MAC mean delay is disseminated periodically to neighbors by efficient MAC layer broadcast. Admission control is handled locally at the source of an incoming flow. By enforcing admission control, the unnecessarily severe channel contention between real-time flows can be significantly reduced. Furthermore, we propose a fair priority re-allocation strategy to adapt QoS of new flows to ensure sufficient support for existing flows. The idea of priority re-allocation is that a good distribution of service classes among all flows can be achieved by adjusting MAC priorities in order to support effective service differentiation as well as guaranteed realtime flow protection. With this strategy, new real-time flows decrease their MAC priorities based on the perceived per service class mean delays and therefore can avoid serious channel contention with existing flows. Also, best-effort flows automatically backoff themselves when real-time flows announce certain performance degradation. Other interesting features of this framework are • Control over misuse of priority can be made with minimum cost by correcting/decreasing flow priorities upon packet arrival at MAC layer. • False admission can be easily addressed by coordinated flow dropping. Extensive simulations in single hop ad hoc wireless LANs have been conducted to evaluate the proposed scheme. It is shown that considerable improvement is obtained in terms of satisfying both throughput and delay requirements of real-time high-priority flows. Therefore, the proposed framework provides guaranteed quality of service for real-time audio/video flows and hence helps wireless networks support multimedia applications in a better manner. This paper is organized as follows. Section 2 reviews the related works. Section 3 introduces the architecture of the proposed framework. Section 4 analyzes the performance of service differentiation in IEEE 802.11 wireless LANs. Section 5 describes the admission control scheme and Section 6 discusses the proposed priority re-allocation and flow dropping protocol. Section 7 discusses the handling of two common user misbehaviors. Section 8 discusses simulation results of the proposed framework and Section 9 concludes this paper.

2. Related work Distributed Coordinator Function (DCF) is the basic medium access mechanism in IEEE 802.11 [10]. DCF is contentionbased and it uses Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) algorithm to coordinate the

access to the wireless channel. DCF suffers from collision seriously under high loads, and it does not provide any traffic differentiation. Point Coordinator Function (PCF) is an optional mechanism for IEEE 802.11. PCF coexists with DCF by providing a Contention Free Period (CFP), during which the Point Coordinator (PC) polls high priority stations and allocates time slots for them to transmit data frames. PCF is designed to offer QoS for real-time applications. But it is a centralized approach and suffers from location-dependent errors. Distributed Fair Scheduling (DFS) [24] is proposed for achieving fairness in IEEE 802.11. DFS borrows the idea of SCFQ but is a distributed approach. The basic idea of DFS is that the backoff interval of flows with larger weight should be smaller. Enhanced Distributed Coordinator Function (EDCF) [6] is the newly proposed medium access mechanism by task group E of IEEE 802.11 working group. In EDCF, differentiated DCF access is provided to the wireless medium for prioritized access categories (ACs). Values for AIFS, TXOP, CWmin , and CWmax are set on per-AC basis. EDCF provides good service differentiation for flows with different priorities. However, it uses static QoS parameter setting and it may starve low priority flows in high traffic load [17]. A detailed survey of existing MAC schedulers can be found in [31]. Some QoS schemes for IEEE 802.11 have been proposed. Aad and Ni [2] suggest to slowly decrease CW after each successful packet transmission to reduce collision rate and retransmissions. Then, Romdhani and Ni [21] propose Adaptive EDCF (A-EDCF) to address the issue of static QoS parameter setting of EDCF. In A-EDCF, the contention window of each flow is adapted according to the estimated collision rate in attempt to improve the performance of EDCF under heavy traffic loads. Chen and Lin [9] propose Priority-based Contention Control (PCC), an admission control strategy similar to PCF. In PCC, contention window is dynamically changed in the same way as DFS. Benveniste [7] makes further enhancement on EDCF in Tiered Contention Multiple Access (TCMA) and Aad and Castelluccia [1] discuss several perflow differentiation methods. Kanodia and Li [13] propose distributed priority scheduling for end-to-end quality of service guarantee in multi-hop Ad-hoc networks. However, the MAC access mechanism proposed is different from the IEEE 802.11 standard. Several admission control schemes have been proposed in order to guarantee QoS in wireless LANs. Barry et al. [5] propose a Virtual MAC algorithm that passively monitors the channel by using virtual MAC frames and estimates local service level (i.e. throughput and delay) by the measurement of virtual frames. Valaee and Li [25] propose a service curve based admission procedure using a sequence of probe packets. Shah and Chen [23] propose an application layer admission control based on MAC layer measurement using data packets. Banchs and P´erez [4] propose ARME, an extension of DCF, that uses a token bucket based algorithm to detect whether or not the network is in an overloaded condition, and thus improves the performance of system by adjusting contention window appropriately. Pong and Moors [19] propose a call

MAC LAYER ADMISSION CONTROL AND QOS GUARANTEES

admission control strategy for QoS of flows in IEEE 802.11 single-hop networks. In their scheme, they also suggest to adjust TXOP for admission control when the underlying MAC is EDCF. Zhu and Chlamtac [30] extend a Markov model to EDCF and analyze the performance. Xiao [27] develops a prioritybased model to analyze the performance of multi-class service differentiation in MAC access. Zhao and Zhang [29] present a class-based analytical model for multiple QoS supports in IEEE 802.11. In their approach, QoS guarantee is formulated as an optimization problem with constraints on bandwidth requirements of each class l. However, this approach is not computationally efficient, especially when the number of active stations is large.

3. Architecture Before the introduction of the proposed framework, several assumptions are made as follows: • It is assumed that all stations in a WLAN are within the broadcast region of each other and all stations share a single wireless medium. • Wireless stations are willing to share information with neighbors at MAC layer. Also, we assume that cross-layer [8] is enabled, e.g., MAC layer can obtain flow characteristics such as flow id and priority from IP layer. • Flows are not guaranteed to be well-behaved, i.e, a flow may set its priority to be much higher than necessary, or a flow can generate packets at a rate faster than the reserved one. • User misbehaviors are at application layer and users are not allowed to change MAC layer parameters as they wish. Thus, coordination among stations at MAC layer does not necessarily change the characteristics of the noncooperative nature. Usually, the priorities of flows are set by applications according to Table 1. Users can set up to 8 different priorities for a flow. It is noted that traffic types with priority from 0 to 3 are basically best-effort flows, while those whose priorities are from 4 to 7 are real-time flows. Table 1 Priority assignment of traffic types. Priority

Access Category (AC)

Traffic type

7 6 5

3 3 2

Voice Voice Video

4 3 2

2 1 0

Video Video probe Best effort

1 0

0 0

Best effort Best effort

Broadcast traffic/network information to neighbors

Obtain information from incoming packets

Node

Re-allocate priorities for outgoing packets Admission control Priority re-allocation

wireless channel monitoring and estimation

Coordinated flow dropping Control over flow misbehaviors Wireless channel

Figure 1. System architecture of MAC layer admission control and priority re-allocation.

In the newly updated draft of EDCF [6], QoS parameters such as CWmin , AIFS, and TXOP are set per AC. Although we set these parameters per priority, we can easily set only one priority to each traffic type and then change QoS parameters of a certain AC, making our scheme completely compatible with the new specification. For example, CWmin [7] in our scheme corresponds to CWmin [3] in EDCF and then the priority change of voice traffic in our scheme corresponds to the change of CWmin [3] in EDCF. In this paper, we focus on the differentiation of CWmin only. The architecture of the proposed framework is depicted in figure 1. The proposed framework resides between the MAC layer and higher layers. But essentially, it’s a sub-layer of the MAC layer. Within this framework, each wireless station monitors the wireless channel and collects useful information about network condition such as available bandwidth and mean delay, and flow characteristics such as flow id and priority. Then, misbehaving flows are handled by measuring transmitting rate, or checking QoS requirements and mapping appropriate priorities. Finally, admission control and dynamic priority re-allocation are enforced locally based on local information as well as information obtained through information exchange with neighbors, leading to better channel utilization and support of multimedia audio/video applications. In addition, coordinated flow dropping is designed to resolve the problem of false admission. Misbehavior at both network layer [11] and MAC layer [14,20] has been investigated to address node selfishness. Our work complements these studies by focusing on application layer user misbehavior and non-cooperation. Although we assume users cannot modify MAC layer parameters, misbehaviors in sub-layers can be handled with existing schemes if necessary. Traffic shaping and policing [22,26] have been well studied in ATM networks. However, traffic policing and shaping usually deal with bursty traffics and try to keep accepted flows maintain the declared parameters in order to prevent QoS degradation. In wireless networks, due to the shared medium and non-cooperative nature, even though stations maintain declared parameters, it is still possible that QoS degradation occurs because of high traffic load or inappropriate service demand.

LI AND PRABHAKARAN

4. Analysis of IEEE 802.11 service differentiation

Let m be the retransmission limit after packet collision occurs, τ (l) is calculated by the following equation.

The notations involved in our analysis are listed as follows: S overall throughput; S(l) total throughput received by service class l; MAC delay perceived by service class l; d(l) active stations of service class l; N(l) initial contention window of service class l; CW(l) probability of a class l station transmits at a τ (l) randomly chosen time slot; total probability of successful transmission for Ps stations of all service classes. probability that a class l station succeeds; Ps (l) probability of collision; Pc probability that at least one station transmits; Ptr probability that at least one of other stations Pcoll (l) transmit. length of a successful transmission of class l; Ts (l) length of collision event; Tc T the delay for a packet transmission at MAC layer; average packet size of class l; msg(l) L average packet size of all flows; σ duration of slot time. 4.1. Overall throughput Our analysis is based on an analytic model [29] for multiple service classes QoS support in IEEE 802.11. Basic formulae in this model are introduced briefly as follows. Let there be totally M service classes. The service class of a flow is represented by priority of the flow, l, from 0 to M-1 (with 0 being the lowest and M-1 the highest), and a class l has N(l) active stations. According to [29], overall throughput of the system with CW differentiation is given as  M−1  (l) Ps msg(l) l=0 S= (1)  (l) (l)  1−Ptr  Ps Ts + Ptr σ Pc Tc + M−1 l=0 Where successful transmission probability of class l packets is calculated by Ps(l) = N (l) τ (l) (1 − τ (l) )N

(l)

−1

 N (i) 1 − τ (i)

1−Ptr Ptr

σ

=

Ps(l) msg(l) (3) T

where T is the expected renewal period for a packet transmission at the MAC layer. For a transmitting station of service class l, the probability that at least one of other stations transmits, i.e., the collision probability, is calculated as follows. (l) = 1 − (1 − τ (l) )N Pcoll

(l)

−1

 N (i) 1 − τ (i) i=l

1 + CW (l) +

m−1  (l) i i=0 2Pcoll

(5)

Equations (4) and (5) can be jointly solved to obtain τ (l) and (l) . Then, Ps(l) can be obtained from (2). Pcoll To design effective QoS strategy for per-flow guarantee, we would like to investigate the relationship between per-flow throughput/delay and parameters about network configuration such as flow priority, number of flows, and flow rates. Since the model we are using is for saturation analysis, i.e., every station always has an outstanding packet to be transmitted, flow rates is not considered relevant. Therefore, we focus on the analysis of priority and number of flows, which are tunable at the run-time. 4.2. Individual throughput and delay From (3), per-flow average throughput is represented as S (l) Ps(l) msg(l) msg(l) = = · avg(Ps(l) ) (6) N (l) N (l) · T T Where avg(Ps (l) ) = Ps (l) /N(l) is the per-flow average successful transmission probability. We can see that the average throughput received by a flow within a certain class depends on network configuration, priority, and number of flows within that class. Given the network configuration, higher per-flow throughput can only be achieved by a high priority class provided that the number of flows in that class is small enough. Similar to Little’s law, the overall average MAC delay (in bits/sec) can be formulated as avg(S (l) ) =

avg(d (l) ) =

msg(l) T N (l) T = = (l) (l) avg(S ) Ps avg(Ps(l) )

(7)

Therefore, given the same network configuration (same T), flows of different classes receive different MAC delays. Furthermore, mean MAC delay of a certain class is inversely proportional to the per-class successful transmission probability of packets and proportional to the number of flows in that class. 4.3. Successful transmission probability

Per-class throughput can be calculated as follows. Ps(l) msg (l) M−1  (l) (l)  Pc Tc + l=0 Ps Ts +

2 (l) Pcoll CW (l)

(2)

i=l

S (l) =

τ (l) =

(4)

From equation (6) and (7), we find that given the network configuration (including packet size), both per-flow throughput avg(Ps (l) ) and delay avg(d (l) ) only depend on the per-flow average successful transmission probability. If avg(Ps (l) ) is greater, then avg(S (l) ) is greater and avg(d (l) ) is smaller, and vice versa. Next, we will study avg(Ps (l) ) by relating it with overall successful transmission probability Ps and flow priority distribution. From equation (2), the total probability of successful transmissions Ps =

M−1  l=0

Ps(l) =

M−1  l=0

N (l)

M−1 N (i) τ (l)   1 − τ (i) (l) 1 − τ i=0

(8)

MAC LAYER ADMISSION CONTROL AND QOS GUARANTEES

Ps vs. number of active flows

Per-priority Ps vs low priority traffic 0.4 p=7 p=6 even

0.3

CWmin=30 0.3

Ps

Ps

CWmin=25 CWmin=20 CWmin=15

0.1

0.2 0

5

10 Number of active flows

15

0.2

0

20

0

10

20

30

40

Number of low priority flows

Figure 2. Ps vs. number of active flows.

Per-flow Ps vs low priority traffic

First, Ps is analyzed for four different cases under various numbers of flows for each priority. For each case, we vary CWmin [0] to 15, 20, 25, and 30, respectively. For i > 8, CWmin [i] = CWmin [i − 1] + 5. For each set of CWmin configuration, the number of flows with the same priority is increased by 1, from 1 to 20, gradually. In figure 2, we can see that given different configuration of CWmin , Ps does not vary much if number of active flows is between 5 to 15. And for all configurations, the maximum Ps is about 0.37. With this limited total value of Ps , to guarantee that avg(Ps (l) ) is no less than certain bound for some class l, we must restrict the number of flows in that class. To further investigate avg(Ps(l) ), we consider various possible network configurations. By its definition, avg(Ps(l) ) is determined by two factors, total transmission probability Ps (l) , and number of flows in class l, N(l) . We calculate avg(Ps(l) ) for three scenarios. In all scenarios, there are 8 high priority flows. In scenario 1 and 2, all 8 flows are set to priority 7 and 6, respectively. In scenario 3, 8 flows are set to priority 7, 6, 5, and 4, with 2 flows within each class (we call “even” priority distribution [16]). The initial contention windows for all cases are set as 5, 10, 15 and 20, respectively. For flows with priority of 3, 2, 1, and 0, the corresponding CWmin ’s are 25, 30, 35, and 40, respectively. In all three cases, we increase number of low priority flows of each class in 0-3 by 4, gradually. We can see from figure 3 that with the increase of number of low priority flows, Ps(l) decreases in all scenarios due to the serious contention. Since higher priority flows have more chance of accessing channel, the higher the flow priorities, the higher the Ps(l) is, given the same number of flows. However, for scenario 3 (even distribution), avg(Ps(l) ) for the 4 high priority flows is higher than for 8 high priority flows in scenario 1 and 2, for any number of low priority flows. In non-cooperative networks, even when the mean delay of a certain class reaches the upper bound, users may still insist to demand the same service to maximize their performance. In this case, the number of flows in that class will be unnecessarily large and none of the flows within the class will receive satisfactory performance. Therefore, it is beneficial to limit or adjust the number of flows per class in order to guarantee good quality of service for real-time flows. For this purpose, two approaches are required: • Admission control: When the mean delay of a certain class reaches the upper bound, new flows are not allowed for transmission within this class.

Per-flow P s

0.08 p=7, n=8 p=6, n=8 even

0.06 0.04 0.02 0

0

10

20

30

40

Number of low priority traffic

Figure 3. Ps over number of low priority flows.

• Priority re-allocation: Here, some flows of a certain class decrease their priorities in order to reduce the number of flows in a certain class. This approach is necessary when admitted flows experience severe performance degradation due to severe channel contention from low priority flows or worse link condition. Interestingly, these two approaches are complementary to each other. Based on this analysis, we intend to design a coordinated admission control and priority re-allocation scheme to guarantee the performance of real-time flows.

5. Coordinated admission control and flow reservation The notations involved in the following two sections are listed as follows: N total number of wireless stations; experienced channel available bandwidth at bava,i station i; available bandwidth of station i consumed by Bi,j jth traffic in the network; rate of the flow j; Rj Q the payload of a packet; α percentage in time that the channel is busy; the time when a packet arrives at MAC layer; tenqueue the time when a station receives a MAC ACK; tack bi the minimum perceived available bandwidth at station i; the maximum perceived mean delay for lth Di l priority at station i; D Max[k] the MAC delay bound for kth priority flows; The threshold for priority re-allocation; Thpr The threshold for flow dropping. Thfd

LI AND PRABHAKARAN

5.1. Bandwidth reservation Assume that there are totally N stations. Let bava,i be the experienced channel available bandwidth at station i, Bi,j be the available bandwidth of station i consumed by jth traffic in the network. Then for a new flow j to be admitted at station i, the available bandwidth it consumes must not exceed the current available bandwidth at each station i. Thus, we have Bi,j ≤ bava,i

for 1 ≤ i ≤ N

(9)

Note that Bi,j = 0 does not necessarily hold all the time. If station i is not within the interference range of stations transmitting/forwarding flow j, then Bi,j = 0. However, if flows j goes through station i or some other stations that are within the interference range of station i, it shall consume part of bava,i , i.e., Bi,j = 0. In multi-hop networks, station i may be interfered by packet transmission of flow j at several hops and Bi,j may be multiple times the rate of the flow j, Rj . But in single hop wireless LANs, due to the shared IEEE 802.11 wireless channel, when one station is transmitting, all other stations cannot send or receive, i.e., the introduction of flow j will result in the loss of available bandwidth of maximally Rj at all stations. Therefore, we have that in wireless LANs Bi,j ≤ Rj

for 1 ≤ i ≤ N

(10)

Then, combining (9) and (10) gives us the sufficient condition of admitting a new flow j with rate Rj as follows. Rj ≤ bava,i

for 1 ≤ i ≤ N

(11)

From equation (11), we can see that the success of the flow reservation largely relies on the accurate estimation of the channel available bandwidth. However, estimation of channel availability is not a trivial task [12,19,23]. We adopt the measurement based approach in [12], where the available bandwidth at station i, bava,i is calculated as   Q (12) bava,i = (1 − α) · avg tack − tenqueue Here, Q is the payload of the packet, α is the percentage in time that a station senses the busy channel. tenqueue and tack are the time when a packet arrives at MAC layer of a station and when the station receives a MAC ACK about the same packet, respectively. Compared with calculation-based algorithms, this measurement can effectively reflect the available channel bandwidth experienced by a station dynamically, especially when channel condition is far from being ideal. However, there are three major limitations on enforcing (11) and (12) for admission control in IEEE 802.11 wireless LANs. First, equation (12) is based on the assumption that station i is always transmitting packets so that tack -tenqueue is available. However, if a station does not send any packet, i.e., it is only the receiver of packets originated from other wireless stations or it is not sending/receiving any packet, this assumption may not hold since it is not possible for the station to calculate available bandwidth through equation (12). In this case, a mechanism needs to be devised so that a station can obtain

knowledge of channel available bandwidth from neighboring stations. Second, it incurs high protocol and communication overhead to admit/reject a new flow at all stations in the WLAN and then combine these decisions together for a final one. To overcome this difficulty, we propose that every station transmitting real-time flows (or high priority station) estimates the available bandwidth locally and then broadcasts this information periodically. The reason for using only information of high priority stations is that we do not want that the introduction of a new flow affects the QoS of existing real-time flows. Let K be the list of a station i’s high priority neighbors attempting real-time flow transmission. Then, station i enforces admission control according to the following. Rj ≤ bi

(13)

Where bi is the minimum perceived available bandwidth of neighbors and is calculated as   bi = min min (bava,k ), bava,i (14) ∀k∈K

5.2. MAC delay based admission control Finally, to provide sufficient protection for real-time flows, it would be desirable to also check delay requirement at the time of admission control. We propose to monitor the channel by calculating the MAC level packet delay in (12), i.e., t = tack -tenqueue . If channel is not very busy, t will be small, indicating that packets experiences low delay and high bandwidth. However, if channel is very busy, it will be difficult for a packet to grab the channel within very short period of time and the corresponding packet delay will be quite large, yielding low flow throughput. As concluded from Section 4, admission control needs to be per-class basis for prioritized MAC schedulers such as EDCF. Let Di m be the average MAC delay experienced by station i on transmitting the mth priority flow packets. Correspondingly, let D Max[m] be the maximum MAC delay that can be tolerated for mth priority flows. Then the following must be satisfied for admission of class m flows: Dil ≤ D Max[l] for each high priority class l

(15)

Where Di l is the maximum perceived mean delay of neighbors for priority l and is obtained from broadcast as     Dil = max max Dkl , Dil (16) ∀k∈K

Note that Di l = 0 if mean delay information of priority l is not available at station i. Condition (15) makes sure that all existing high priority flows have received satisfactory quality of service in term of low delays. Note that condition (13) already ensures that overall channel available bandwidth is enough for flow j, i.e., admission of flow j does not affect existing flows. Therefore, with (13) and (15) combined, we can guarantee that both the overall network performance, i.e., network is not overloaded,

MAC LAYER ADMISSION CONTROL AND QOS GUARANTEES

and each of the existing reserved flows receive the desired quality of service in terms of high throughput and low delay. It should be noted that compared to higher layer broadcast [18], broadcast in MAC layer is very efficient because of the broadcast nature of wireless medium in IEEE 802.11. Broadcasting of short packets has been adopted in MAC protocols such as priority scheduling [28] for information exchange. With appropriate broadcast interval (we set as 1 second) and small beacon frame size, broadcast does not consume much channel bandwidth. Furthermore, since only stations transmitting real-time flows broadcast, the number of broadcast is minimized and is O(n) with number of stations in the network be n. With the proposed distributed admission control scheme, flows are admitted/rejected only at senders. We assume that before a station starts transmission, it should have been listening to the channel for more than BROADCAST INTERVAL so that it is aware of the channel condition and able to make correct admission control decision. When a source attempts to transmit a flow, it checks the channel availability and MAC mean delays obtained either locally or from neighbors. If conditions are satisfied, the flow is accepted into the network and allowed for transmission. Otherwise, it will be dropped anyway. The proposed admission control scheme has several desired features. First, compared to centralized approaches [18,23], it is purely distributed and thus flow admission control can be enforced locally at the source station without the necessity of sending reservation requests to some central points. Second, no probing packets [25] are necessary for appropriate admission decisions. Finally, unlike some service differentiation schemes [5,13], the proposed scheme is fully compatible with the existing standard and no modification of frame formats is required. One special situation that needs to be taken care of is false admission [3], where several requests arrive at the network during a very short period of time and all get admitted, even though only a few of them can be sufficiently supported. In this case, the network traffic load will be unnecessarily heavy and over-commitment for all flows occurs. This issue can be addressed by canceling some recently admitted flows and will be discussed in the following section.

6. Priority re-allocation and flow dropping From the analysis in Section 4, we concluded that both network condition and traffic patterns have significant impact on how many flows can be supported with satisfactory performance within each service class. Therefore, it is necessary to enable priority adaptation to tune the priorities among realtime flows and best-effort flows. In addition, with the similar technique, false admission can be easily addressed. We choose the measured per class MAC mean delay as the indicator of network condition. Three reasons for this are explained. First, as pointed out in Section 5.2, MAC mean delays provide very useful information on how fast the channel delivers data packets, i.e., how busy the channel is. Second,

per class mean delays well reflect the traffic load of each specific class. For example, if the total traffic load of a particular class is high, due to high contention among those traffics, the experienced mean delay will be high. Third, low mean delay of one class usually infers low mean delays of higher classes, since flows of higher classes have more chances of accessing the channel than flows of this class. Therefore, if the mean delay of the same or a higher class is high, low priority is preferred to avoid severe channel contention with existing real-time flows. Of course, this will decrease the performance of low priority flows. However, this priority re-allocation provides effective protection for flows of higher classes. To accurately detect the channel condition change, we monitor the channel and estimate the average mean delay per class every 0.5 second and this information is disseminated to neighbors with available bandwidth every 1 second. In order to maintain good performance for existing flows, only priorities of new flows are decreased. Also, to keep the fairness among different service classes, priorities are decreased only by 1 and are re-allocated temporarily for channel access of each packet. When the network traffic decreases, a flow may detect lower mean delay and change its priority back so that it continues to receive the expected performance. For best-effort flows, we adopt the fast decrease scheme (set priority to 0) to make sure low priority traffics have minimum possible effect to real-time traffics. However, it is possible that several stations may choose to re-allocate priority at the same time. To synchronize the action of priority change, we use a simple technique as follows. When a station finds that the MAC mean delay for the same priority of a flow is higher than a threshold, it decreases the priority of the flow and broadcasts the “event.” When neighbors receives the message, they will suspend priority changing, start a new mean delay estimation period, and then check mean delay at the next round for possible priority re-allocation. When a station changes back its priority, it broadcasts to neighbors, which will suspend the action of changing the priority back (if necessary) and then make decision until the next estimation is available. A Best effort flow changes its priorities back only when all regulated flows have already changed their priorities back. Note that the above synchronization technique also helps resolve false admission. By checking mean MAC delays, we can effectively detect false admission and then drop flows one by one gradually and quickly reduce the network traffic to an acceptable level. To avoid that all newly admitted flows get dropped, when an existing flow experience much higher delay than a threshold, the source broadcasts a message to neighbors to announce this event. When a station receives this announcement, it checks whether a new flow was just admitted (within 0.5 s after arrival). If so, it immediately drops the flow and broadcasts the event to notify other stations. When other stations get this message, they suspend the action of flow dropping, start a new mean delay estimation period, and then check mean delay at the next round for possible flow dropping. Since dropping flows reduce the network traffic, remaining flows shall detect reduced mean delay and eventually only

LI AND PRABHAKARAN

minimum number of newly admitted flows get dropped and both the admitted flows and existing flows keep receiving guaranteed quality of services. Let a station i attempts transmission of a packet of flow k and Dik denote the mean f with original priority k. Let Di,0 MAC delay of priority k in the last and the current estimation periods, respectively. We define Thpr and Thfd as the threshold for priority re-allocation and flow dropping, respectively. Usually, Thpr ≤ 1 ≤ Thfd , depending on the corresponding mean delay upper bound. The proposed admission control (with flow dropping) and priority re-allocation algorithm is described as follows. For real-time flow f: • If f is a new flow and Thpr ·D Max[k]< Di k ≤ D Max[k], then Station i temporarily decreases the priority to k-1 for f; Station i broadcasts a message m prio dec. • If f is a new flow, then If either condition (13) or (15) is not satisfied, then Station i drops flow f; • If Di k >Thfd ·D Max[k], then Station i checks if it has admitted a flow since last mean delay estimation period. If station i just admitted a flow Station i drops the flow. Station i broadcasts a message m drop. Otherwise Station i broadcasts a message m high delay. • If Di,0 k ≤ Thpr ·D Max[k] and Di k ≤ Thpr ·D Max[k], then If priority of f has been re-allocated Keep the original priority; Station i broadcasts a message m prio old. • Upon receipt of message m prio old at station j: If priority of f has been re-allocated Station j stops changing flow priority back; Station j makes decision at next estimation period; • Upon receipt of message m high delay at station j: Station i checks if it has admitted a flow since last mean delay estimation period. If station i just admitted a flow Station i drops the flow; Station i broadcasts a message m drop; • Upon receipt of message m drop at station j: If station i just admitted a flow Station j stops dropping newly admitted flows; Station j makes decision at next estimation period; For best-effort flow f: • If f is a new flow and Di l > Thpr ·D Max[l] for any real-time class l, then Station i temporarily decrease the priority to 0 for f; Otherwise Station i keep the original priority for flow f; • Upon receipt of message m prio dec from station j: Station i temporarily decrease its priority to 0 for f;

• Upon receipt of message m prio old from station j: If all regulated flows have changed priorities back Station i changes priority back for f;

7. Control over misbehaving flows In this paper, we focus on two common application layer misbehaviors related to the proposed framework as follows: • Misuse of flow priority: users try to specify unnecessarily much higher priorities in order to grab more channel time and receive highest possible performance. This greedy behavior of specifying highest possible priority may result in network congestion and performance degradation for well-behaved real-time flows. • Over-rate transmission: a station may transmit flows in a rate higher than its demand. In this case, if those flows are of high priority, they may consume a much larger bandwidth share than expected. Either one of these misbehaviors may fail service differentiation schemes since they violate the normal QoS differentiation between individual flows. For the first one, we can check the QoS requirement of flows (we assume that information such as bit rate, application type, and priority are available at the source and can be obtained at the MAC layer through cross-layer interaction) and map application types to priorities according to Table 1. If the specified priority is higher than necessary, the flow is determined for misuse of flow priority and an appropriate priority will be assigned for it throughout its transmission period. For the latter one, we can monitor (at application layer) the transmitting rate of a flow. If the transmitting rate is higher than the specified bit rate for some threshold, the flow is determined for over-rate transmission and the flow will be assigned a lower priority for punishment. We state the handling of a misbehaving flow f with priority p and rate Rf as follows. • If p is not in accordance with f ’s traffic type, then Assign an appropriate priority p’ for f. • If the estimated transmission rate is higher than Rf , then Assign a low priority (0–3) for f for punishment.

8. Performance evaluation ns-2 network simulator is used to validate the proposed scheme. The physical channel bandwidth is set to be 11 Mbps for data packet and 1 Mbps for control packets. We assume that all stations are within the broadcast region of each other, i.e., all communications among stations are within a single hop. Also, all stations are fixed, i.e., there is no mobility in the network. Furthermore, the wireless channel is clear, i.e., collision is the only cause of transmission failure. Three different traffic types are involved in all simulations. Each voice stream is a CBR flow with rate of 64 Kbps, generated by a constant inter-arrival time of 25 ms and a fixed

MAC LAYER ADMISSION CONTROL AND QOS GUARANTEES

Table 2 CWmin of different priorities in EDCF. Priority

0

1

2

3

4

5

6

7

CWmin

1023

512

255

127

63

31

15

7

payload size of 200 bytes. Each video stream is traffic-shaped CBR flow with rate of 320 Kbps, generated by generated by a constant inter-arrival time of 20 ms and a fixed payload size of 800 bytes. We also introduce background data traffic, which is a CBR flow with rate of 800 Kbps, generated by an inter-arrival time of 20 ms and payload size of 2000 bytes. For voice data, we set priority 6 and MAC delay bound as 10 ms. For video data, we set priority of 5 and MAC delay bound of 15 ms. Thpr and Thfd are set to 0.65 and 1.8, respectively. CWmax is set to 1023 for all priorities. CWmin is set according to Table 2.

guarantee for both voice and video are provided. We can see that almost 100% throughput is received for both video and voice. For voice and video data, mean delays are around 8 ms and 40 ms, respectively. Data application (flow 1 and 2) also benefit due to limited traffic load in the network. In addition, we find that the overall throughput of AC is 5% greater than NO-AC. Therefore, very good protection of voice and video data are supported by the proposed admission control scheme. We also analyze the accuracy of the proposed AC scheme. From figure 5, we see that around the time flow 23 arrives (25 second), the delays of both voice and video increase significantly, indicating that due to increased traffic load and channel contention the network is approaching to saturation.

Throughput vs Time

We describe the scenario as follows. There are 15 stations in the network with station 0 specified as AP. Initially, station 1 and 2 start transmission of data applications. Then, at each non-AP station i, a voice and video flow is setup from station i to AP at time 1 + 2 ∗ (i−1), and 1.25 + 2 ∗ (i−1), respectively. For convenience, we call the scheme of not using admission control and the proposed admission control scheme NO-AC and AC, respectively. Figure 4 shows the effectiveness of the coordinated admission control strategy. Even though senders themselves do not have local information about the network condition initially, the information exchange makes the admission control possible. With AC, flows from 23 to 26 are rejected and good

400 300 Voice - AC Video - AC Voice - No AC Video - No AC

200 100 0 0

10

20

30

40

50

Time (s)

Packet delay vs Time 0.4 Packet delay (s)

8.1. Admission control (AC)

Throughput (Kbps)

500

Voice - AC 0.2

0 0

10

30

20

40

50

40

50

40

50

Time (s) NO-AC

Comparison of throughput

Packet delay vs Time

AC

1

Packet delay (s)

Throughput (Kbps)

400 300 200 100

Video - AC

0.6

Video - No AC 0.4 0.2 0

0 1

3

5

7

9

11

13 15 Flow id

17

19

21

23

0

25

10

20

30 Time (s)

Packet delay vs Time

NO-AC

Comparison of flow mean delay

AC

0.4 Packet delay (s)

10000

Mean Delay (ms)

0.8

1000 100

Voice - No AC 0.2

10

0 1

0 1

3

5

7

9

11

13 15 Flow id

17

19

21

23

25

Figure 4. Throughput/delay comparison for admission control.

10

20

30 Time (s)

Figure 5. Time variant throughput and delay for voice and video for admission control.

LI AND PRABHAKARAN

However, the proposed AC scheme can effectively prevent network from actually being congested. The overhead of broadcast is evaluated for the same scenario. It is shown that only 16 Kbps bandwidth is wasted with periodical broadcast, which is less than 0.5% of the total received throughput. Therefore, the overhead of the proposed scheme is quite acceptable.

Throughput vs Time Throughput (Kbps)

500 400 300 200

False AC Flow Drop

100 0 0

5

10

15

8.2. Flow dropping scheme

20 Time (s)

25

30

35

40

35

40

Packet delay vs time

Comparison of throughput

False AC Flow Drop

Throughput (Kbps)

350 300 250 200 150 100 50 0 1 2 3 4 5 6

2 Packet delay (s)

In this simulation, we use video flows only for better illustration. Starting from 3 second, 12 video flows arrive one by one every 1 second. Then, after 1 second of the arrival of the last video flow, 9 video flows arrive within 0.2 s. At the time of flows 13 to 21 arrive, since network has enough available bandwidth for one flow, all these flows get admitted simultaneously. Then, due to serious channel contention, several flows among flow 1 to 13 announce the high MAC delay and flows from 13 to 21 begin to be dropped one by one, depending on the new network condition. Finally, only flow 17 and 19 are left and totally 14 flows are accepted. Figure 6 compares throughput and mean delay of all the flows. It is obvious that false admission is very harmful and may waste the effort of early admission control. With totally 21 video flows in the network, all of them experience low throughput and high mean delay. However, with coordinated dropping flows after false admission occurs, final accepted video flows receive much higher throughput and very less end to end delay. The two admitted flows, flow 17 and 19 are also well protected. Therefore, the proposed scheme can effectively resolve false admission. The time variant throughput/delay is depicted in figure 7. We can see that at the time when the burst of flows from 13 to 21 arrive, existing flows suddenly experience very serious

1.5 1 False AC Flow Drop

0.5 0 0

5

10

20

25

30

Time (s)

Figure 7. Time variant throughput/delay for flow dropping.

channel contention, if there is no coordinated flow dropping, the delay will increase very quickly to magnitude of seconds. But with successive dropping of flows, the high delay reduces quickly after 20 s and then maintains at the very low vales and the mean delay is less than 100 ms. Finally, we investigate the effect of Thfd on the performance of the algorithm. From Table 3, we can see that Thfd = 1.2 gives worst performance. The reason is that when Thfd is small, more flows will sense high delay and decide to drop flows and the overall throughput becomes low. Thus, we recommend Thfd from 1.5 to 2.1 for best results. 8.3. Priority re-allocation (PR) In this section, we demonstrate the effectiveness of the proposed priority re-allocation scheme. In this simulation, starting from 3 second, 20 video flows and 6 data flows arrive one by one every 1 second. The corresponding results are depicted in figures 8 and 9. Without priority re-allocation, none of the video flows receive satisfactory QoS in term of either throughput or delay. However, with priority re-allocation, flows 11 to 20 decrease their priorities to prevent serious contention with flow 1 to 10. Thus, the QoS of flow 1 to 10 are guaranteed and

7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Flow ID

Comparison of mean delay

Table 3 Effect of Thfd .

False AC Flow Drop

10000

Mean delay (ms)

15

1000 100 10 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Flow ID

Figure 6. Throughput/delay comparison for flow dropping.

Thfd

Number of flows dropped

Average throughput for admitted flows (Kbps)

Overall throughput (Mbps)

1.2

8

312.4

3.392

1.5 1.8 2.1

6 6 6

310.1 311.1 312.6

3.764 3.759 3.750

2.4 2.7

7 6

312.6 311.2

3.555 3.766

MAC LAYER ADMISSION CONTROL AND QOS GUARANTEES

Table 4 Effect of Thp .

Comparison of throughput 400

Throughput (Kbps)

NO PR

Thpr

Number of flows decreasing priorities

Average throughput for flows keeping original priorities (Kbps)

Overall throughput (Mbps)

0.55

11

312.10

3.839

0.65 0.75 0.85

10 9 8

310.62 309.74 289.51

3.825 3.815 3.787

0.95

5

276.94

3.766

PR

300

200

100

0 1

3

5

7

9

11

13

15

17

19

21

23

25

Flow ID

Comparison of mean delay 10000

Mean delay (ms)

NO PR PR 1000

100

10 1

1

3

5

7

9

11

13 15 Flow ID

17

19

21

23

25

Figure 8. Throughput/delay comparison for priority re-allocation. Throughput vs time

Throughput (Kbps)

500 400 300 NO PR

200

8.4. Combined admission control and priority re-allocation scheme (AC + PR)

PR 100 0

0

5

10

15

20

25

30

35

30

35

40

Time (s)

Packet delay vs time 3

Packet delay (s)

2.5 No PR 2

PR

1.5 1 0.5 0

priority re-allocation does not suppress flows whose priorities are decreased. Therefore, for very large network traffic, admission control needs to be enforced. Nevertheless, in case that admission control capability is not provided, priority reallocation can still protect existing real-time flows, provided that traffic load is not very high. The effect of Thpr on the performance of the algorithm is shown in Table 4. We can see that as Thpr becomes larger, less flows decrease their priorities due to the higher threshold. However, when Thpr is close to 1, since most flows keep original priorities, the contention among high priority flows are very severe and the average throughput is less than 90% of the demand. Therefore, we recommend the value from 0.6 to 0.8 for best results, i.e., more flows receive satisfactory performance.

0

5

10

15

20 Time (s)

25

40

Figure 9. Time variant throughput/delay for priority re-allocation.

flow 11 to 20 experiences certain performance degradation. Also, due to the fast priority reduction of best-effort flows, data traffic has no much impact to the QoS of existing realtime flows and thus flows 1 to 10 are always well protected by the proposed priority re-allocation scheme. Of course, under this circumstance, data applications share only very small channel bandwidth. On the other hand, we also find that when number of video flows increase to 30 (corresponding to around 9.6 Mbps total traffic), flows 1 to 10 experience certain degradation due to the severe channel contention. This is actually expected because

Next, we combine the admission control and priority reallocation scheme together and show its effectiveness in providing full protection to real-time flows. The scenario remains the same as in 8.3 but we use the approach of admission control (AC) and admission control and priority re-allocation (AC + PR), respectively. Figure 10 compares the received throughput and delay of each flow with PR, AC, and AC + PR, respectively. We can see that with AC, 13 flows are admitted and existing video flows receive 100% the throughput and mean delay of 10– 15 ms, which is much lower than the mean delay for PR. With AC + PR, flow 14 is also admitted. The reason is that since the priorities of flows 11 to 13 are decrease to 3, less channel collision is experienced by flow 1 to 13 and less mean delay is experienced. Interestingly, it can be seen that due to less network traffic of video flows, even though flow 11 to 14 decrease their priorities, their delays are only slightly larger than that of flow 1 to 10. Ofcourse, compared to AC, data applications receive smaller throughputs with one more video flows admitted for AC + PR. We also compare the total throughput for different schemes and from Table 5, we see that AC + PR produces maximum total throughput, corresponding to higher channel utilization and less collision rate. With PR, the total throughput increases by around 1.8%, compared to No AC or PR. Therefore, priority re-allocation helps reduce channel collision and thus

LI AND PRABHAKARAN

Comparison of throughput

Throughput of the TCP flow 5000 PR AC AC+PR

300

200

Throughput (Kbps)

Throughput (Kbps)

400

AC/PR & No PR for TCP AC/PR & PR for TCP No AC/PR

4000 3000 2000 1000

100

0 0 1

3

5

7

9

11

13

15

17

19

21

23

0

25

5

10

15

20

25

30

35

40

Time (s)

Flow ID

Figure 11. Throughput of TCP background flow.

Comparison of mean delay PR AC AC+PR

1000

Packet delay distribution 100

100

10 1 1

3

5

7

9

11

13

15

17

19

21

23

25

Flow ID

Percentage (%)

Mean delay (ms)

10000

80 60

Voice - No AC/PR Video - No AC/PR Voice - AC/PR Video - AC/PR

40 20 0

Figure 10. Throughput/delay comparison for different schemes.

improve network utilization. Therefore, for the purpose of guaranteeing the QoS of real-time video flows while maintaining high overall throughput, we can safely say that AC + PR achieves the best performance among all schemes. 8.5. Performance of TCP flows Finally, it is important to investigate how TCP flows perform under the proposed framework. In this simulation, we adopt a similar approach to Section 8.1: at each non-AP station i from 1 to 15, a voice and a video flow are setup from i to AP at time 2.5 + 2i and 2.75 + 2i, respectively. Each flow lasts 25 seconds. Meanwhile, a background TCP flow with packet size of 2000 bytes is being transmitted throughout the simulation period. As can be seen from figure 11, without AC/PR, the TCP flow receives very low throughput after about 24 seconds when more voice/video flows arrive. Even though some flows finish after 30 seconds, due to the heavy real-time traffic, the TCP flow is almost starved. However, with AC/PR, much better performance of TCP is achieved. When the priority of the TCP flow is not re-allocated, the TCP flow receives slightly better performance. However, this results in rejecting one more video flow (flow 30). When the TCP flow decreases its priority to 0, it transmits less frequently with the larger CWmin and thus experiences temporary performance degradation. However, when some flows finish (after 30 seconds), priorities of regulated real-time flows are increased to their Table 5 Comparison of total throughput for different schemes. Throughput

No AC/PR

PR

AC

AC + PR

(Mbps)

3.757

3.825

3.818

3.873

0

0.02

0.04

0.06

0.08

0.1

Packet delay (s)

Figure 12. Packet delay distribution of voice/video flows.

original values and the TCP flow changes its priority back. Thereafter, the TCP flow receives better performance with its originally assigned priority. Of course, since one more flow is admitted, the throughput of the TCP flow is slightly lower. The performance of voice/video flows under the cases of with and without AC/PR is compared in figure 12. From the figure, we can see that when AC/PR is enforced, percentages of data packets that have delays less than 60 ms are 100% and 98%, respectively. If AC/PR is not enforced, the corresponding percentages are around 95% and 80%, respectively. Furthermore, if we set 100 ms as the maximum delay bound for video flows, then 20% packets would have to be dropped. Therefore, the proposed scheme provides sufficient QoS guarantee for voice/video real-time flows. 9. Conclusion We identified several self-motivated behaviors in noncooperative wireless networks. These behaviors are harmful to exiting service differentiation schemes. Based on the analysis of per-flow throughput and delay, we propose to enforce per service class admission control and priority re-allocation to provide quality of service guarantee with service differentiation schemes and attempt to address these issues through efficient MAC layer coordination. The proposed schemes are coupled to achieve the objective of fair QoS guarantee, i.e., existing real-time flows are not significantly affected by new real-time flows. Furthermore, priority re-allocation scheme overcomes the problem of static priority setting problem in EDCF. In multi-hop ad hoc networks, bandwidth management is more challenging due to the complicated interference

MAC LAYER ADMISSION CONTROL AND QOS GUARANTEES

issues. Our future work will be to extend the proposed scheme to multi-hop ad hoc networks to provide QoS guarantee of voice/video multimedia applications.

Acknowledgments This work is partially supported by the National Science Foundation under Grant No. 0237954 for the project CAREER: Animation Databases. We would like to thank reviewers and guest editors for their valuable comments and suggestions that significantly improve the quality of this paper.

References [1] [2]

[3]

[4] [5]

[6]

[7] [8]

[9] [10] [11] [12]

[13]

[14] [15]

[16]

[17]

[18]

I. Aad and C. Castelluccia, Remarks on per-flow differentiation in IEEE 802.11, in: Proc. of European Wireless (2002). I. Aad, Q. Ni, C. Castelluccia and T. Turletti, Enhancing IEEE 802.11 performance with slow CW decrease. IEEE 802.11e working group document 802.11-02/674r0, 2002. G. Ahn, A.T. Campbell, A. Veres and L.-H. Sun, Supporting service differentiation for real-time and best effort traffic in stateless wireless ad hoc networks (SWAN), IEEE Transactions on Mobile Computing, Sept. 2002. A. Banchs and X. P´erez, Providing throughput guarantees in IEEE 802.11 wireless LAN, in: Proc. of IEEE WCNC (2002). M. Barry, A.T. Campell and A. Veres, Distributed control algorithms for service differentiation in wireless packet networks, in: Proc. of IEEE INFOCOM (2001). IEEE 802.11b, Part 11: Wireless LAN Medium Access Control (MAC) and physical layer (PHY) specifications: Medium Access Control (MAC) Enhancements for Quality of Service (QoS), IEEE Std 802.11e/D4.3 (May 2003). M. Benveniste, Tiered contention multiple access’ (TCMA), a QOSbased distributed MAC protocol, in: Proc. of IEEE PIMRC (2002). K. Chen, S.H. Shah and K. Nahrstedt, Cross-layer design for data accessibility in mobile ad hoc networks, Journal of Wireless Personal Communications 21 (2002) 49–75. W.T. Chen, Y. Lin and S. Lo, priority-based contention control in IEEE 802.11 Wireless LANs, in: Proc. of CQR (2002). IEEE, IEEE Std 802.11 — Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specification (1997). Y. Hu, A. Perrig and D. Johnson, Ariadne: A secure on-demand routing protocol for ad hoc networks, in: Proc. of ACM MOBICOM (2002). M. Kazantzidis, M. Gerla and S.-J. Lee, Permissible throughput network feedback for adaptive multimedia in AODV MANETs, in: Proc. of ICC (2001). V. Kanodia, C. Li, A. Sabharwal, B. Sadeghi and E. Knightly, Distributed priority scheduling and medium access in ad hoc networks, Wireless Networks 8 (2002) 455–466. J. Konorski, Multiple access in ad-hoc wireless LANs with noncooperative stations, in: Proc. of NETWORKING (2002). S.B. Lee, G. Ahn, X. Zhang and A.T. Campbell, INSIGNIA: AnIPbased quality of service framework for mobile ad hoc networks, Journal of Parallel and Distributed Computing, 60(4) (2000) 374–406. M. Li and B. Prabhakaran, Dynamic priority re-allocation scheme for providing quality of service in IEEE 802.11e WLANs, in: Proc. of SPIE/ACM MMCN (2004). A. Lindgren, A. Almquist and O. Schel´en, Evaluation of quality of service schemes for IEEE 802.11 wireless LANs, in: Proc. of IEEE LCN (2001). C.E. Perkins, E.M. Belding-Royer and I. Chakeres, Ad hoc on demand distance vector (AODV) routing, IETF Internet draft, draft-perkinsmanet-aodvbis-00.txt, Oct 2003.

[19] D. Pong and T. Moor, Call admission control for IEEE 802.11 contention access mechanism, in: Proc. of IEEE GLOBECOM (2003). [20] P. Kyasanur and N.H. Vaidya, Detection and handling of MAC layer misbehavior in wireless networks, in: Proc. of DCC (2003). [21] L. Romdhani, Q. Ni and T. Turletti, Adaptive EDCF: Enhanced service differentiation for IEEE 802.11 wireless ad hoc networks, in: Proc. of IEEE WCNC (2003). [22] C. Rosenberg and B. Lagu¨e, A heuristic framework for source policing in ATM networks, IEEE/ACM Transaction on Networking 2(4) (1994) 387–397. [23] S.H. Shah, K. Chen and K. Nahrstedt, Dynamic bandwidth management for single-hop ad hoc wireless networks, ACM/Kluwer MONET, Algorithmic Solutions for Wireless, Mobile, Ad Hoc and Sensor Networks (2004). [24] N.H. Vaidya, P. Bahl and S. Gupta, Distributed fair scheduling in wireless LAN, in: Proc. of ACM MOBICOM (2000). [25] S. Valaee and B. Li, Distributed call admission control in wireless ad hoc networks, in: Proc. of IEEE VTC (Fall 2002). [26] G. de Veciana and J. Walrand, Effective bandwidths: Call admission, traffic policing and filtering for ATM networks, Queueing Systems, (20) (1995) 37–59. [27] Y. Xiao, A simple and effective priority scheme for IEEE 802.11, IEEE Communications Letters, 7(2) (2003) 70–72. [28] X. Yang and N.H. Vaidya, Priority scheduling in wireless ad hoc networks, in: Proc. of ACM MobiHoc (2002). [29] J. Zhao, Q. Zhang, W. Zhu and Y.-Q. Zhang, Throughput and qoS optimization in IEEE 802.11 LAN, in: Proc. of Third Generation Wireless and Beyond (2002). [30] H. Zhu and I. Chlamtac, An analytical model for IEEE 802.11e EDCF differential services, in: Proc. of ICCCN (2003). [31] H. Zhu, M. Li, I. Chlamtac and B. Prabhakaran, Survey of quality of service in IEEE 802.11 networks, IEEE Wireless Communications, Mobility and Resource Management, 11(4) (2004), 6–14. Ming Li received his B.S. and M.S. in Engineering from Shanghai Jiao Tong University, China, in 1995 and 1998, respectively. He is currently a Ph.D. candidate in department of Computer Science, University of Texas at Dallas, where he received M.S. degree in Computer Science in Dec. 2001. His research interest includes QoS schemes for mobile ad-hoc networks and multimedia over wireless networks. E-mail: [email protected] B. Prabhakaran is with the faculty of Computer Science Department, University of Texas at Dallas. He has been working in the area of multimedia systems: animation & multimedia databases, authoring & presentation, resource management, and scalable web-based multimedia presentation servers. Dr. Prabhakaran received the prestigious National Science Foundation (NSF) CAREER Award in 2003 for his proposal on Animation Databases. He has published several research papers in various refereed conferences and journals in this area. He has served as guest-editor (special issue on Multimedia Authoring and Presentation) for ACM Multimedia Systems journal. He is also serving on the editorial board of Multimedia Tools and Applications journal, Kluwer Academic Publishers. He has also served as program committee member on several multimedia conferences and workshops. B. Prabhakaran has served as a visiting research faculty with the Department of Computer Science, University of Maryland, College Park. He also served as a faculty in the Department of Computer Science, National University of Singapore as well as in the Indian Institute of Technology, Madras, India. E-mail: [email protected]