The Delay Distribution of IEEE e EDCA and DCF IPCCC 2006 April , Phoenix, Arizona Paal E. Engelstad UniK / Telenor R&D Olav N. Østerbø (presenter) Telenor R&D
Agenda Introduction A non-saturation model for e EDCA –... and for DCF as a special case Finding the z-transform of the MAC delay Deriving the z-transform of queueing delay from the z-transform Finding the delay distribution and precentiles Numerical examples
Introduction Fact 1: IEEE WLAN standard widely deployed as wireless access technology in –office environments –public hot-spots –in the homes. Fact 2: WLAN easily becomes bottleneck for communication. (shared medium with limited capacity, overhead etc..) Fact 3: Standard IEEE WLAN lacks QoS differentiation Fact 4: IEEE e Enhanced Distributed Channel Access (EDCA) allows for differentiation between four different access categories (ACs) at each station –relative QoS differentiations between ACs Wireless Channel
Why is the queueing delay so important? Delay consists of two major parts: –Queuing Delay –Transmit queues –IP buffering – Medium Access Delay (”MAC delay”) AC[0] (AC_BK) AC[1] (AC_BE) AC[2] (AC_VI) AC[3] (AC_VO)
The problem... Analytical work on the performance of e EDCA (Bianchi models) assume saturation conditions and focuses on predicting the –throughput –mean delay of the medium access Current analytical Bianchi models assume saturation conditions –The queue lengths and the queueing delay are assumed to be infinite ! –Not a realistic transmission scenario –No protocols will work under those circumstances! A non-saturation model is needed
The objective... Finding the MAC delay, by itself, is normally not so interesting The queueing delay can be significant –moments of the delay –full distribution of the delay, for instance to obtain various delay percentiles Important is to find the point when saturation occurs, i.e. when: –the queueing delay goes to infinity, and –the transmission of the flow breaks down
Uplink throughput example QSTA 1 QSTA 2 QSTA 3 QSTA 4 QSTA 5 QAP QSTA 1 QSTA 2 QSTA 3 QSTA 4 QSTA 5 QAP AC[0] (AC_BK) AC[1] (AC_BE) AC[2] (AC_VI) AC[3] (AC_VO)
Agenda Introduction A non-saturation model for e EDCA –... and for DCF as a special case Finding the z-transform of the MAC delay Deriving the z-transform of queueing delay from the z-transform Finding the delay distribution and precentiles Numerical examples
IEEE e EDCA channel access Differentiation parameters: –Contention Windows: –Arbitration IFS (AIFS): –(TXOP lengths)
A bi-dimensional Markov chain representing backoff stage and backoff counter Embedded Markov chain Post-backoff included Adding “extra” row representing the case where the post-backoff starts with an empty queue The state space where representing the backoff stage is the backoff counter
Markov chain- parameters -the probability that there is a packet waiting in the transmission queue at the time a transmission is completed -the collision probability -the probability that there is at least one packet arrives in the idle state (-1,0) during a generic time slot -the countdown blocking probability -the probability that at one packet arrives during the time the system is in post-backoff state (-1,j)
... some calculations... - the steady state distributions, Chain regularities gives a power-law expression - probability of a transmission attempt in a generic time slot Solving for b ijk gives
The transmission probability Before solving the equations, we first need to determine the remaining parameters –ρ i *, p i, p i *, q i and q i * in terms of i Non-Saturation part
The collision probabilities p i, p i * The probability of a busy slot: The collision probability of AC[i]- p i : –Without Virtual Collisions: –With Virtual Collisions: Countdown blocking probability: –Bianchi: –p i * = 0 –Xiao: –p i * = p i –Incorporating AIFS differentiation: –
Assuming Poisson arrivals of packets with rate i q i –prob. that at least one packet will arrive in the transmission queue during generic time slot p s -prob. that a time slot contains a successfully transmitted packet with p b -prob. of busy channel –T e duration of an empty slot, –T s a slot containing a successfully transmitted packet and –T c of a slot containing two or more colliding packets q i * -prob. that a packet arrives during countdown blocking. Expressions for q i and q i *
Expressions for the load i and i * Backoff instance is busy: while contending for channel access ("CA") while the packet is being transmitted ("Tr"), and during post-backoff ("PB") of the packet. The post-backoff period should be associated as part of the processing of the packet that has been transmitted, and not the next packet to be transmitted and therefore represents the mean service time (including CA,TR and PB) The following relation yields: P i PB -prob. of not receiving any packets in the transmission queue while performing a complete empty-queue post-backoff procedure.
Agenda Introduction A non-saturation model for e EDCA –... and for DCF as a special case Finding the z-transform of the MAC delay Deriving the z-transform of queueing delay from the z-transform Finding the delay distribution and precentiles Numerical examples
z-tranform of the MAC delay s=0 s=1
z-transform of the MAC delay With post-backoff (Saturation case) Without post-backoff (Non-saturation case) Exact form of the z-transform of the MAC delay by considering three cases: 1.The queue is non-empty when the post- backoff starts. Exact form of the z-transform of the MAC delay by considering three cases: 1.The queue is non-empty when the post- backoff starts. 2.The queue is empty when the post-backoff starts and with no arrivals during the whole post-backoff period. Exact form of the z-transform of the MAC delay by considering three cases: 1.The queue is non-empty when the post- backoff starts. 2.The queue is empty when the post-backoff starts and with no arrivals during the whole post-backoff period. 3.The queue is empty when the post-backoff starts, there is at least one packet arrival during the post-backoff period. where
Mean Medium Access Delay Diffrentiation of z-tramsforms gives: Mean Medium Access Delay: Higher order moments may also be found (e.g second order) (+ should be – in paper)
Agenda Introduction A non-saturation model for e EDCA –... and for DCF as a special case Finding the z-transform of the MAC delay Deriving the z-transform of queueing delay from the z-transform Finding the delay distribution and precentiles Numerical examples
Z-transform of the queueing delay Queueing delay is obtained by consider an M/G/1 queue with D i SAT as service time with z-transform D sat i (z): Total delay is sum of queueing delay and MAC delay z-transforms of complementary (tail) distributions obtain through
Agenda Introduction A non-saturation model for e EDCA –... and for DCF as a special case Finding the z-transform of the MAC delay Deriving the z-transform of queueing delay from the z-transform Finding the delay distribution and precentiles Numerical examples
Numerical procedure for obtaining tail distributions Inversion of the z-transforms by applying Cauchys integral formula By using the trapezoidal rule with step size /m of the inversion integral becomes: Discretization error:
Agenda Introduction A non-saturation model for e EDCA –... and for DCF as a special case Finding the z-transform of the MAC delay Deriving the z-transform of queueing delay from the z-transform Finding the delay distribution and precentiles Numerical examples
Numerical parameters Numerical computations in Mathematica. Applying b with long preamble and without the RTS/CTS-mechanism with time parameters Parameters CWmin and CWmax are overridden using e values Five different stations, QSTAs, contending for channel access. –Each QSTA uses all four ACs, and virtual collisions therefore occur. Poisson distributed traffic consisting of 1024-bytes packets was generated at equal amounts to each AC.
The complimentary distribution of the MAC delay of AC[3] at a generated traffic rate of 1250 kbps
The complimentary distribution of the queueing delay of AC[3] at 1250 kbps
The complimentary distribution of the total delay of AC[3] at 1250 kbps
The complimentary distribution of the MAC delay of AC[3] at a generated traffic rate of 1750 kbps
Percentiles of the MAC
Percentiles of the queueing delay
Percentiles of the total delay
Summary We have argued why the queuing delay is important. Describing the queueing delay requires a non-saturation model Based on an analytical model for the IEEE e the z-transform of the MAC delay is obtained in closed form The queueing delay and total delay is obtained by applying a slotted version of Pollaczek-Khintchine formula. The corresponding distributions are obtained by numerical inversion (by applying the trapezoidal rule), and different percentiles are calculated. The numerical results show that the complementary distribution of the MAC delay has a typical stepwise form where the levels of the steps are related to the probability and duration of a transmission. In a following up paper "Analysis of the Total Delay of IEEE e EDCA", Accepted for IEEE International Conference on Communication (ICC'2006), Istanbul, June 11-15, 2006 the mean and second order moments of the MAC delay and mean queueing delay is obtained
Backup slides...
Throughput We have shown that this expression is valid also under non- saturation
AIFS Differentiation We “scale down” the collision probability during countdown, depending on the AIFS setting: Starvation is thus predicted to occur when: where:
Preliminary Throughput Validations: Setup I b with long preamble and without RTS/CTS Poisson distributed traffic – 1024B packets
Preliminary Throughput Validations: Setup II We use the recommended (default) parameter settings of e EDCA: Simulations: –ns-2 –with TKN implementation of e from TUB Numerical computations: –Mathematica AC[3]AC[2]AC[1]AC[0] AIFSN2237 CWmin3715 CWmax Retry Limit (long/short) 7/4
Preliminary Throughput Validation: The non- saturation analysis
Preliminary Throughput Validation: The starvation predictions
Fixed number of nodes (n=5)
The effect of AIFS differentiation during countdown Packet Slots that AC[3] can use for countdown Packet Slots that AC[0] can use for countdown A higher AIFS value translates into a lower average countdown rate AC[3]’s perspective: AC[0]’s perspective:
Medium Access Starvation Packet Slots that AC[3] can use for countdown Packet No slots for AC[0]’s countdown AIFS differentiation leads to starvation at high traffic loads AC[3]’s perspective: AC[0]’s perspective: Packet
How to incorporate this effect into the analytical model? AIFSN[0] Packet A i = AIFSN[i] - AIFSN[0] (i.e. defined such that always A 0 = 0) Packet A i blocked slots unblocked empty slots one busy slot