Chapter 2 Overview of IEEE 802.11 system
2.2 IEEE 802.11e EDCA
2.2 IEEE 802.11e EDCA
EDCA mechanism is an enhanced DCF for supporting service differentiation. In IEEE 802.11e standard, Service prioritization is achieved through eight prioritized
“access categories” (ACs). Packets are classified into eight “traffic categories” (TCs).
Stations decide priorities of those TCs by mapping to one of the access categories.
Among eight ACs, four ACs are reserved for EDCA TCs, so one or more TCs may be mapped to one AC.
Priority differentiation between each TC is achieved by varying the value of CWmin, CWmax, and IFS. For the ith TC (TC[i] i=0,1, 2,…,7), the CWmin, CWmax, and AIFS are marked as CWmin[i], CWmax[i], and AIFS[i]. The length of AIFS is set as
AIFS=SIFS+AIFS[i]*slottime(us) (2-3)
Another new feature in IEEE 802.11e standard is the definition of “Transmission Opportunity” (TXOP). TXOP is the period of time that a station has the right to access the medium after a successful contention, with maximum duration defined in TXOPLimit[AC]. An EDCA-TXOP is obtained through contention process. A
transmitter station is allowed to transmit packets continuously after waiting a SIFS following a successful completion of a packet exchange sequence, while the total transmission time does not exceed TXOPLimit[AC].
Fig. 2.4 shows different AIFS values of every access categories. Low priority service has a longer backoff timer as compared to high priority services. The contention window of low priority service is larger compared with that of high priority services. The assumption of contention window is also shown in Table2.1.
Table 2.1 lists parameters of different service priorities defined in [2] and Table 2.2 is service priority of different services. Table 2.1 shows that service of high priority contends for channel with short AIFS and CW and EDCA-TXOP of high priority is longer than that of low priority service. So QoS of high priority service can be better than that of low priority service.
Fig. 2.5 shows a EDCA buffer structure of the MAC layer implemented in a station.
Under the definition of [2], packets of different priorities from the upper layer are put into different buffers according to their traffic categories. Every buffer has its own backoff timer. Backoff timers of each traffic category start when the medium keeps idle longer than AIFS[i] period. So, every TC in a station contends for the chance to transmit packet just like what a station does in the DCF mechanism. In a station, two or more ACs may try to send packets at the same time. This means collision happens in a station and this phenomenon is called “virtual collision”, which means not a really collision. In this situation, packet of the higher AC always gets the right to transmit packet. All of these contention and virtual collision processes will be implemented in the EDCA scheduler.
Fig. 2. 4 EDCA mechanism. Different AIFS value are set according to the packet ' s priority
Table2. 1Default values of different ACs. aCWmin=15 and aCWmax=1023
AC [i] CWmin CWmax AIFS TXOP Limit(ms)
0(best effort) aCWmin aCWmax 2 0
1(excellent effort) aCWmin aCWmax 1 1.5
2(Video) Floor(aCWmin/2) aCWmin 1 3
3(VoIP) Floor(aCWmin/4) Floor(aCWmin/2) 1 1.5
Table2. 2Access categories defined in the IEEE 802.11
Service priority Traffic class Targeted services
7 Network Control Network control service has critical requirements. Although packet size of network control service is very low, but the delay bound and reliability are very
important.
6 Voice Voice service is very sensitive to delay and jitter.
5 Video QoS requirement of video streaming
services are not as critical as voice service.
The maximum 100 ms one-way delay is tolerable.
4 Controlled load Controlled load service is assigned to important applications accessing the LAN.
3 Excellent effort Excellent service is intended to be better than best-effort service.
2 Best-effort Best effort service is currently the most utilized traffic class. No delay or throughput guarantee to this kind of service.
1 Not specified
0 Background Background service is for applications such as bulk transfer of large files. This kind of service can exist in the background of a LAN.
Fig. 2. 5 EDCA buffer structure of the MAC layer implemented in a station
2.3 802.11 PHY Layer
Physical layer defined in IEEE 802.11g [18] is briefly described in this section.
Table 2.3 lists parameters that would be used to estimate packet transmission period.
In IEEE 802.11 MAC layer, each MAC data frame, or MPDU (MAC protocol data unit), are composed by the following components: MAC header, variable length information frame body, which is called MSDU (MAC service data unit), and frame check sequence (FCS). MAC layer overhead, including MAC header and FCS, is 28 bytes in length. Besides, the information frame body can be up to 2312 bytes when encryption is applied. Based on the definition of [1], data fields of a RTS, CTS and ACK frame is 20 bytes, 14 bytes and 14 bytes, respectively.
Except MAC header, PHY layer also adds its control field to packets. A period of signal preamble and PHY header, which are transmitted with the BPSK modulation and rate-1/2 convolutional coding, takes 20 us to transmit in total. There are also six zero tails bits which is used to make the channel decoder returns to the zero and the pad bits are used to make the resulting bit string into a multiple of OFDM symbols. A 16-bits SERVICE field in the header is transmitted with the same transmission rate of data field. Each OFDM symbol interval, which is labeled TSI, is 4 us. How many data
When the data field are transmitted at a supported data rate, all the control frame, including RTS, CTS, and ACK frame, have to be transmitted at one of the basic rate set{6Mbps, 12 Mbps, 24 Mbps}to make sure that they can be understood by all the stations in the network. In addition, RTS and CTS frame will be transmitted at 6 Mbps while the ACK frame is transmitted at the highest rate in the basic rate set that is less than or equal to the rate of the data packet it is acknowledging.
After the introduction of packet components, the required transmission period is calculated below. First, when the packet transmits Bdata bytes data payload over IEEE 802.11g PHY using the data rate Rdata, the transmission period will be
T
SI Note that the Data Bytes per Symbol(Rdata) is shown in
Table 2.4. The data bytes per symbol means how many bytes are contained in a symbol which is modulated in the OFDM technique. Similarly, the transmission period of a RTS frame isT
SIThe packet transmission period of CTS frame is calculated in the same way:
T
SI And the transmission duration of an ACK frame using the PHY mode Rdata* is equal
toSI
From the description above, the transmission period is only related to the MSDU size and the transmission mode in the PHY layer.
Table2. 3 System parameters accepted and parameters used to calculate the packet transmission period
B
Bdata(Data length of the data packet) 0~2312 bytes
R
data(PHY layer transmission rate) 6~54 Mbps
R
data* (PHY layer transmission rate for ACK
frame) {6 Mbps,12 Mbps,24 Mbps}
T Slot (Slot time)
9 μ
ST
SIFS(SIFS time) 16μ
ST
DIFS(DIFS time) 34μ
ST
SI(OFDM Symbol interval) 4μ
ST
preamble+ T
SIGNAL(PHY layer Preamble field & signal field) 20μ
SMAC_Header + FCS
(Mac layer header field and frame check sequence)
20 bytes
Service_field (PHY layer service filed) 2 bytes Tail_bits (tail nits for the convolutional codes
returns to zero) 6 bits
RTS_Control_field(Data field of RTS frame) 20 bytes
CTS_Control_field(Data field of CTS frame) 14 bytes
ACK_Control_field(Data field of ACK frame) 14 bytes
CWmin minimum contention window size 15
Table2. 4 Modulation and Coding scheme in the 802.11g spec
Mode Data
rate (Mbits/s)
Modulation Coding rate
Data bytes per OFDM symbol
Data rate for the ACK frame (Mbits/s)
1 6 BPSK 1/2 3 6
2 9 BPSK 3/4 4.5 6
3 12 QPSK 1/2 6 12
4 18 QPSK 3/4 9 12
5 24 16-QAM 1/2 12 24
6 36 16-QAM 3/4 18 24
7 48 64-QAM 2/3 24 24
8 54 64-QAM 3/4 27 24
Chapter 3 Quality of Service and Related Works
In this chapter, QoS controls and prior works are discussed. Section 3.1 introduces the basic concept of QoS. Sections 3.2 describes the related works that how the QoS could be implemented in the WLAN network.
3.1 Definition of QoS
The original attempt of IEEE 802.11 is to extend the wire LAN services in wireless environment. So applications in WLAN are all like web browsing, FTP services, VoIP services, and etc. According to the International Telecommunication Union telecommunication standardization sector (ITU-T), QoS is defined as below [18]:
“Quality of Service is the collective effect of service performances that determine the degree of satisfaction of a user of the service”
Take data transformation for example; the integrity of the file is undoubtedly the most important one in its QoS. But for real-time service such as VoIP or video streaming, they have more stringent requirements than data services because of the sensitivity of human ears and eyes about packet loss. Packet loss means distortion in the speech or video signal and users can only tolerate for a certain amount of distortion. In the WLAN network, packet loss happens more often than the wired network. As a result, lost packets could degrade the service quality.
ITU has proposed an indication of suitable performance requirements for different types of services in the network [19]. A part of the performance targets is shown in
in a wired network or wireless network.
Table3. 1 Proposed QoS requirements defined in [13] about some familiar services in the network
Data services
QoS parameters and tolerable thresholds Application Degree of
symmetry
Typical Data
amount One-way delay Delay Jitter
QoS parameters and tolerable thresholds Application Degree of
symmetry
Typical Data
amount One-way delay Delay Jitter
QoS parameters and tolerable thresholds Application Degree of
symmetry
Typical Data
amount One-way delay Delay Jitter
PLR
VoIP Two-way 64 Kbps Preferred<150ms Limit 400ms
< 1 ms < 1%
Video phone
Two-way 384 Kbps Preferred<150ms Limit 400ms
N.A. <1%
3.2 Related Work in QoS Management
There are already many studies on how to support QoS in the WLAN. Basically, all related QoS controls can be categorized into three approaches:
Service differentiation Call admission control Bandwidth reservation
3.2.1 Service Differentiation
Many studies have addressed on how to achieve service differentiation in the DCF-based access mechanism. A Persistent Factor DCF (P-DCF) is proposed in [7]
based on the 802.11 DCF. In this algorithm, each traffic class is associated with a persistent factor and the high priority service has smaller P in this algorithm. Then, a uniformly distributed random number γ is generated in every slot time when the station is decreasing its backoff timer. The station will stop the backoff timer and start to transmit packet only if γ> P in the current slot time. So the backoff interval is a geometrically distributed random variable with P and the service of high priority can access the channel easier.
Distributed Fair Scheduling (DFS) is proposed in [8] and [20]. The concept of distributed fair scheduling is to differentiate the backoff interval (BI) based on the packet size and service priority. The length of backoff interval is proportional to the packet size and is inversely proportional to the priority of the service.
Distributed Weighted fair Queue (DWFQ) is proposed in [9] where the size of contention window of any station is adjusted based on the difference between the actual throughput and expected throughput. CW of different stations will be decreased in order to increase the station’s priority if the actual throughput of the station is lower than its expected throughput. A ratio of the actual throughput and the corresponding weight of station is used to calculate the priority of the station. A station can adjust its CW by comparing its current ratio value. The station will decrease its CW if its ratio value is smaller than other stations.
Distributed deficit round robin (DDRR) is proposed in [10]. In this algorithm, service priority is assigned with a service quantum rate equal to the throughput it
counter is assigned to accumulate service quantum rate and the deficit counter will be decreased by the packet length when a packet is transmitted successfully.
3.2.2 Call Admission Control
Service differentiation is a good method to provide better QoS. But no service performs well when the system loading is saturated. So, call admission control is necessary to maintain QoS of existing services by rejecting new services requests.
Call admission control can be categorized in two types: calculation-based algorithm and measurement-based algorithm.
3.2.2.1 Calculation-based Algorithm
Calculation-based schemes construct performance criteria for evaluating the status of network and predict the QoS of services in the system. The call admission control in [20] provides guaranteed throughput performances in a statistical sense: A predicted achievable throughput is calculated based on some estimated probability such as the probability of the MAC buffer is empty; the probability of a new packet arrives in one slot time and the probability that the channel is busy, etc. The call admission control tries to satisfy throughput of services in the system. Otherwise, new service will be rejected. Call admission control in [20] has not taken delay and jitter, which are concerned by the QoS of real-time services, into account. Pong, D. and Moors, T. [13] estimates achievable throughput of every active traffic flow for call admission control and scheduling controls. This algorithm first admits the new service to transmit data in a period of time when a new service is coming. Then, the scheduler tries to satisfy the requested throughput of the new service by changing the CWmin and TXOP. But the new service is discarded when the CWmin and TXOP reach the upper limit of the scheduler. The drawbacks of this algorithm are: (1)It limits the throughput of every traffic flow below its estimated “achievable throughput”. The algorithm does not provide a solution when other QoS criteria of the service become intolerable. (2) The algorithm decides to admit a new coming service in a loose way and it does not estimate the influence of this new service to other serving traffic stream. It means that the QoS of other services may be intolerable after the admission of the new service but the algorithm can not prevent it. (3) The algorithm only
estimates the throughput of every service but ignores the packet delay. According to the research results in [21], system performance can be divided as “not congested”,
“delay limited” and “throughput limited”. “Not congested” state means that channel can probably serve the new traffic flow without severely degrading channel state.
Delay limited means that the system can not fulfill the service’s request on the packet delay. Throughput limited means system can not fulfill service throughput. The channel usually becomes delay limited before becoming throughput limited based on the observation in [21]. So, simply applying call admission control based on service’s throughput is not enough.
3.2.2.2 Measurement-based Algorithm
Measurement-based call admission control makes decision based on the measurements of existing system condition. Yang Xiao, and Haizhon Li [6] proposed a simple and effective measurement-based call admission control and bandwidth reservation algorithm. They reserve transmission period of a beacon interval for users of different priority, i.e. voice data can most occupy time period up to 0.4 * beacon interval and video beacon interval can occupy time period up to 0.2 * beacon interval.
Except the call admission, [6] uses some parameters Txlimit[i], Txmenory[i] and Txreminder[i] to control the available bandwidth of AC[i] in the network. CWmax[i], CWmin[i] and AIFS[i] are also adjusted dynamically with packet collision rate of every access categories. Zhen-ning et al proposed a measurement-assisted model-based call admission control in the 802.11e EDCA [20]. Valaee and Li [12]
proposed a measurement-based admission procedure using a sequence of probe packets for ad hoc networks.In [12], it introduces a distributed call admission control in the ad hoc network. The call admission control makes decision based on a “service curve” provisioning. Service curve reflects the status of network and depends on the number of stations, their activity index, and the backoff procedure used for contention.
The service curve along with the aggregated services can be used to calculate maximum delay and maximum backlog. Backlog means packets stay in the MAC buffer. The call requests are accepted if the service curve is bounded below by some non-decreasing deterministic function which is called the universal service curve.
Universal service curve is independent of the number of stations and services.
Universal service curve acts as a worst-case reference curve. All stations want to establish a new service should compare the performance of network to the universal service curve.
3.2.3 Bandwidth Reservation
Call admission control is applied to reject a new service request. Another important
topic is how to reserve bandwidth or resources for serving application with varied traffic demands, which is called bandwidth reservation.Shah et al [15] proposed a bandwidth management method. A scheduler records the minimum bandwidth and maximum bandwidth of this application. The scheduler estimates total bandwidth of the system and perceives bandwidth for every serving application to satisfy their minimum required bandwidth. Scheduler reserves bandwidth by reserving the time period of each application and controlling packet transmission rate of each application. This algorithm may be useful in the 802.11 PCF, which is a centralized coordinate function. But the algorithm in [15] is difficult to be implemented in EDCA. Another drawback is the overhead of this algorithm.
Scheduler has to negotiate with stations many times. Each traffic flow re-negotiates its bandwidth once every 14 seconds on average and each of these re-negotiations takes 35 ms delay in maximum.
Ming Li et al proposed a call admission control based on estimated throughput [16].
In the assumption of [16], new real-time service sends minimum tolerable bandwidth when it requests to access the system. System accepts a new real-time service based on the First Come First Serve policy until the new bandwidth request cannot be satisfied. After the call admission, there is a priority re-allocation algorithm trying to re-allocate the service priority of real-time services. An existing new service will be dropped when system can not fulfill its minimum bandwidth request. This algorithm only guarantees the QoS of real-time service is better than that of low priority services.
Another disadvantage is that it will drop a service even when it is undergoing. But service drop is intolerable for real-time service such as VoIP or video streaming.
Liu et al [17] defines a reservation-based MAC access protocols called adaptive acquisition collision avoidance (AACA) protocol with multi-channel supports. AACA adopts the RTS/CTS access mechanism on a common channel solely for reservation purposes. After a successful reservation, the station pair transmits packets in the reserved channel. The AACA mechanism is designed to solve the hidden point in multi-hop networks and it is implemented in a multi-channel system. Nevertheless, it can also be used to achieve bandwidth reservation.
Chapter 4 QoS Based Call Admission Control
Many studies have shown that the packet transmission delay and number of collision times increases rapidly when the WLAN system is saturated. In order to prevent a new requesting service from further degrading system performance, a call admission control is necessary in WLAN network. In this chapter, a calculation-based call admission control is proposed. This call admission control estimates system loading based on a virtual traffic source estimation (VTSE) algorithm. Basic concept of the proposed virtual traffic source estimation algorithm is introduced in Section 4.1.
Section 4.2 describes features of proposed VTSE algorithm. Except the proposed call admission control for real-time services, a bandwidth reservation is proposed to steady the QoS of real-time services.
4.1 Virtual MAC Algorithm
The basic concept of virtual MAC algorithm is to estimate system condition, which can be found in the journal proposed by Veres. A, Campbell. A, Barry. M and Li-Hsiang Sun [21-22]. The virtual MAC algorithm is basically composed of a virtual source and virtual MAC. Functions of these algorithms are explained below.
First, when a station decides to serve a new real-time service, the station starts to generate a virtual source. The function of the virtual source is generating “virtual packets” periodically to test the system performance. Parameters of the virtual traffic source are set based on a statistical database. So, stations has to record traffic characters in the network. Except the virtual source, there is a “virtual MAC”
mechanism in the requesting station to handle the contention procedure of those
packets. Fig.4.1 shows how the virtual MAC estimates the delay time of virtual packets. Packet delay is defined as the duration from the packet is stacked into the buffer to the start successful transmission. Stations utilize virtual MAC algorithm only if the new service is a real-time service. It is because that real-time service generates packets periodically and the QoS requirements of real-time service are strict.
Fig. 4. 1Virtual delay estimation in the virtual MAC algorithm
Advantages of virtual MAC algorithm:
(1) Virtual MAC algorithm can be implemented in the ad hoc network in [21-22]. In the ad hoc network, there is no central controller to control the packet transmission and to monitor the system performance, so the QoS control is hard to realize in the ad hoc network. Virtual MAC algorithm is a good choice because it
(1) Virtual MAC algorithm can be implemented in the ad hoc network in [21-22]. In the ad hoc network, there is no central controller to control the packet transmission and to monitor the system performance, so the QoS control is hard to realize in the ad hoc network. Virtual MAC algorithm is a good choice because it