The Delay Distribution of IEEE 802.11e EDCA and 802.11 DCF

advertisement
The Delay Distribution of IEEE 802.11e EDCA and 802.11 DCF
Paal E. Engelstad
Olav N. Østerbø
UniK/Telenor R&D
1331 Fornebu, Norway
paal.engelstad@telenor.com
Telenor R&D
1331 Fornebu, Norway
olav-norvald.osterbo@telenor.com
Abstract
A number of works have focused on the mean delay
performance of IEEE 802.11 [1]. The main contribution of
this paper is that it provides a method to obtain the full
distribution of the delay, and not only mean values or higher
order moments. Hence, any desirable delay percentiles can
be found. The distribution is found by inverting the ztransform of the delay numerically. The trapezodial rule is
used with a configurable error bound (- in this paper set to
10-14). The z-transform was derived in our previous works
from an analytical model that works in the whole range from
a lightly loaded, non-saturated channel to a heavily
congested, saturated medium. The model describes the
priority schemes of the Enhanced Distributed Channel
Access (EDCA) mechanism of the IEEE 802.11e standard
[2]. By setting the number of traffic classes (Access
Categories) to one, and by using an appropriate parameter
setting, the results presented are also applicable to the legacy
802.11 Distributed Coordination Function (DCF) [1].
1. Introduction
Due to the inherent capacity limitations of wireless
technologies based on the IEEE 802.11 standard [1], the
WLAN easily becomes a bottleneck for communication. In
these cases, the Enhanced Distributed Channel Access
(EDCA) of the IEEE 802.11e standard [2] will be beneficial to
prioritize for example voice and video traffic over more
elastic data traffic.1 EDCA allows for differentiation between
four different access categories (ACs) at each station and a
transmission queue associated with each AC. Each AC at a
station has a conceptual module responsible for channel
access for each AC, and in this paper the module is referred to
as a ”backoff instance”.
1
This issue is relevant to the OBAN project, which supported this work. The
OBAN project is funded by the European Commissions 6th Framework
Program. However, the information in this document is provided as is, and
no guarantee is given that the information is fit for any purpose. Other
OBAN partners are not committed under any circumstances by its content.
The majority of analytical work on the performance of
802.11e EDCA focuses on predicting the mean throughput [36] and on the mean delay of the medium access [4-6], i.e. the
first order moment of the delay. In [6] the second order
moment of the delay is also found, in order to estimate the
queueing delay. However, in many cases these moments are
not sufficient. Instead, one needs to know the full distribution
of the delay, for instance to obtain various delay percentiles.
This paper provides a method of obtaining the full delay
distribution. It also demonstrates how the distribution can be
found, how it looks like and how the associated delay
percentiles can be calculated.
As pointed out in [6], the actual delay experienced by an
arbitrary packet may be divided into two main parts; the delay
for a packet to reach the front of the transmission queue,
named the queueing delay, and the delay while the packet is in
the front of the transmission queue competing for the wireless
channel and attempts to transmit, named the medium access
delay. Hence, the total delay consists of the medium access
delay (also referred to as the "MAC delay") as well as the
queueing delay. Consequently, the paper derives the
distributions of the MAC delay, the queueing delay and the
total delay.
The delay distribution is found by inverting the ztransform of the delay. The z-transform was derived in our
previous work [6] from an analytical model that works in the
whole range from a lightly loaded, non-saturated channel to a
heavily congested, saturated medium. The model describes the
priority schemes of the Enhanced Distributed Channel Access
(EDCA) mechanism of the IEEE 802.11e standard [2]. By
setting the number of ACs, N, to one, and by using an
appropriate parameter setting, the results presented are also
applicable to the legacy 802.11 Distributed Coordination
Function (DCF) [1].
The remaining part of this paper is organized as follows:
The next section presents the analytical model that is used to
derive the z-transform, while the resulting transform is
presented in Section 3. In Section 4 we present a method to
find the delay distribution by inversion of the transform, and
in Section 5 we demonstrate how this can be done
numerically. Based on these distributions, we find some delay
percentiles in Section 6, since finding percentiles is an
attractive application of our presented method. Concluding
remarks are given in Section 7.
2. Analytical Model
probability q i∗ , it moves to a corresponding state in the
second row with a packet waiting for transmission. Otherwise,
it remains in the first row with no packets waiting for
transmission.
2.1. Contention Windows (CWs)
For each AC, i (i = 0,...,3) , let Wi, j denote the contention
window size in the j th backoff stage i.e. after the j th
unsuccessful transmission; hence the minimum contention
window is given as Wi , 0 . Let also j = m i denote the j th
backoff stage where the contention window has reached the
maximum contention window, given by 2m Wi , 0 . Finally, let
i
Li denote the retry limit of the retry counter. Then:
 2 jW
Wi , j =  mi i , 0
2 Wi , 0
j = 0,1,...., mi − 1
j = mi ,...., Li
.
(1)
2.2. The Markov Model
The behavior of 802.11e EDCA is analyzed by
considering a bi-dimensional Markov chain S ni , Bni (for AC
(
)
i
n
i ) where S is a stochastic process representing the backoff
stage and Bni is the backoff counter. To model the postbackoff properly we add an “extra” state S ni = −1
representing the case where the post-backoff starts with an
empty queue, and we take S ni = 0 for the case when the postbackoff starts with a non-empty queue. The state space of the
Markov chain
S ni , Bni
is denoted ( j , k ) where
k = 0,1,...., Wi , j and j = −1,0,1,...., Li and where we also have
(
)
Wi , −1 = Wi ,0 . Figure 1 illustrates the Markov chain for the
transmission process of a backoff instance of priority class i .
Let ρ i• represents the probability that there is a packet
waiting in the transmission queue of the backoff instance of
AC i at the time a transmission is completed (or a packet
dropped). Now, the backoff instance selects a backoff interval
k at random and goes into post-backoff. If the queue is
empty, at a probability 1 − ρ i• , the post-backoff is started by
entering the state ( −1, k ) . If the queue on the other hand is
non-empty, the post-backoff is started by entering the state
•
(0, k ) . In section 2.6 the connection between ρ i and the
utilization factor of the queue, ρ i , is outlined. Hence, ρ i
balances the fully non-saturated situation with the fully
saturated situation.
While in the states (−1, k ) where k > 0, the probability
that a backoff instance of AC i is sensing the channel busy
and is thus unable to count down the backoff slot from one
timeslot to the other, is denoted with the probability p i∗ . If it
has received a packet while in the previous state at a
http://heim.ifi.uio.no/~paalee/
Figure 1. Markov Chain (both saturation and nonsaturation) for a backoff instance of Access Category i.
While in the state (−1,0) , the backoff instance has
completed post-backoff and is only waiting for a packet to
arrive in the queue. If it receives a packet during a timeslot at
a probability q i , it does a ”listen-before-talk” channel sensing
and moves to a new state in the second row, since a packet is
now ready to be sent. If the backoff instance senses the
channel busy, at a probability p i , it performs a new backoff.
Otherwise, it moves to state (0,0) to do a transmission attempt.
The transmission succeeds at a probability 1 − pi . Otherwise,
it doubles the contention window and goes into another
backoff. For each unsuccessful transmission attempt, the
backoff instance moves to a state in a row below at a
probability p i . If the packet has not been successfully
transmitted after Li + 1 attempts, the packet is dropped.
2.3. The Transition Probabilities
Based on the description above (see Figure 1), it is
possible to express the non-null transition probabilities
Pi (l , m, j , k ) = Pi ( S ni = l , Bni = m, S ni −1 = j , Bni −1 = k )
of
the
bi , −1, 0 =
Markov chain as follows:
Pi (−1,0 − 1,0) = 1 − qi
,
pq
Pi (0,0 − 1,0) = qi (1 − pi ) + i i
Wi ,0
pi qi
Pi (0, k − 1,0) =
Wi , 0
∗
Pi (−1, k − 1, k ) = pi
∗
∗
Pi (−1, k − 1 − 1, k ) = (1 − pi )(1 − qi )
∗
∗
Pi (0, k − 1 − 1, k ) = (1 − pi )qi
(1 − ρi∗ )(1 − pi )
Pi (−1, k j,0) =
Wi ,0
1 − ρi∗
Pi (−1, k Li ,0) =
Wi ,0
ρi∗ (1 − pi )
Pi (0, k j,0) =
Wi ,0
Pi (0, k Li ,0) =
ρ
∗
i
Wi ,0
pi
Pi ( j + 1, k j,0) =
Wi , j +1
Pi ( j, k j, k ) = pi
for 1 ≤ k ≤ Wi ,0 − 1
,
for 1 ≤ k ≤ Wi ,0 − 1
for 1 ≤ k ≤ Wi ,0 − 1
,
,
for 1 ≤ k ≤ Wi ,0 − 1
,
bi , −1, k =
,
for 0 ≤ k ≤ Wi ,0 − 1
,
∗
i,0 −k
; k = 1,..., Wi , 0 − 1 ,
(6)
pij bi ,0,0 ; j = 1,..., Li , k = 1,...,Wi ,0 − 1 .
(7)
Wi , 0 (1 − p i∗ )
Wi , j (1 − pi∗ )
bi,0,0
for 0 ≤ k ≤ Wi ,0 − 1
q i∗
W −1
L 
Wi, j − k  j
1
= ∑ 1 +
 pi
∗ ∑
j =0 
 1 − pi k =1 Wi , j 
W
(W − 1)qi pi
1 − ρi∗ 1 − (1 − qi∗ )
(1 + i ,0
) .
+
∗
qi
2(1 − pi* )
Wi ,0 qi
i, j
i
and 0 ≤ j ≤ Li − 1
,
for 0 ≤ k ≤ Wi ,0 − 1
,
By performing the summations in Eq. (8) above and by
assuming mi ≤ Li , Eq. (3) might be expressed as:
and 0 ≤ j ≤ Li − 1
for 1 ≤ k ≤ Wi , j − 1
,
and 0 ≤ j ≤ Li
,
for 1 ≤ k ≤ Wi , j − 1
and 0 ≤ j ≤ Li
1
(2)
1 − piLi +1
.
1 − pi
=
τi
+
(1 − 2 pi* )
2(1 − pi* )
(
Wi ,0 (1 − pi )(1 − (2 pi ) mi ) + (1 − 2 pi )(2 pi ) mi (1 − piLi − mi +1 )
.
+(
2(1 − p )(1 − 2 pi )(1 − p
*
i
1 − pi
1− p
Li +1
i
)
1 − ρ i∗ 1 − (1 − qi∗ )
qi
Wi ,0 qi∗
Wi , 0
(1 +
Li +1
i
)
(Wi ,0 − 1)qi pi
2(1 − pi* )
)
(9)
) .
The various terms of the expression in Eq. (8) [and thus
also of Eq. (9) ] – and their physical interpretations - have
been explained in detail in [7].
Eq. (9) is the key result in the analysis of the model, and
gives a set of N equations that must be solved. The remaining
parameters pi , pi* , ρ ∗ qi∗ and qi will be estimated in the
i
following.
regularities we have bi , j , 0 = p j bi ,0,0 , hence the probability, τ i ,
of a transmission attempt in a generic time slot is given as:
(3)
2.5. Finding Expressions for pi and pi*
If each station is transmitting traffic of more than one
AC, there will be virtual collision handling between the
queues [8]. Then, the probability of unsuccessful
transmission, p i , is given by:
pi = 1 −
In [6] it is shown that 2:
2
(8)
i,0
Let bi , j ,k denote the steady state distributions of the
Markov chain, and a backoff instance transmits when it is in
any of the states ( j ,0) where j = 0,1,..., Li . Due to chain
j =0
(4)
(bi , 0,0 + qi pi bi , −1,0 ) ; k = 1,...,Wi ,0 − 1 , (5)
(1 − ρ i∗ )bi ,0,0 1 − (1 − q i∗ )W
1
2.4. Finding the Transmission Probability
Li
,
Finally, the normalization yields [6]:
Observe that the state (−1,0) represents the idle period of
the model; and thus 1 − qi represents the probability that an
ongoing idle period will not end during a generic slot period.
The fractions 1 Wi , j in the expressions above represent the
uniform distribution of the backoff counter in the j th
transmission attempt for a packet.
τ i = ∑ bi , j , 0 = bi , 0, 0
Wi ,k − k
Wi ,0 (1 − pi∗ )
Wi , j − k
bi , j ,k =
for 0 ≤ k ≤ Wi ,0 − 1
and 0 ≤ j ≤ Li − 1
i,0
and
for 0 ≤ k ≤ Wi , j +1 − 1
∗
Pi ( j, k − 1 j, k ) = 1 − pi
bi , 0,k + bi , −1,k =
,
(1 − ρ i∗ )bi , 0, 0 1 − (1 − qi∗ )W
Wi , 0 qi
qi∗
Note that [6] contains some typos that have been corrected in Eq. (4), Eq.
(6) and Eq. (8) above. Note also that the states (j,k) and (-1,k) above are
1 − pb
,
i
∏ (1 − τ
c
(10)
)
c =0
denoted by "(i,j,k)" and "(i,0,k,e)", respectively, in [6]. Furthermore, ρ i in
[6] is replaced by ρ i∗ above.
where p b denotes the probability that the channel is busy:
N −1
pb = 1 − ∏ (1 − τ i ) ni .
(11)
i =0
Note also for the denominator in Eq. (10) that in this
paper AC[N-1] is by definition of the highest priority
(normally equal to the “AC_VO” of 802.11e) and AC[0] of
the lowest (normally equal to the “AC_BK” of 802.11e). With
a scenario where only one queue is used at each node (e.g. if
IEEE 802.11 DCF is being considered), virtual collision
handling will not happen, and the denominator of Eq. (10)
should be replaced by (1 − τ c ) , as shown for example in [6].
Without loss of generality, we will consider scenarios with
virtual collision handling in this paper.
Unlike the collision probability, pi , the blocking
probability, p i∗ , is the probability that the backoff instance
remains in the state between two transmission slots. Different
analytical models use different settings for this parameter. The
original Bianchi model [3] uses:
pi∗ = 0 ,
(Bianchi [3]) (12)
which assumes that the backoff counter is decremented in
each slot, even when there is a transmission or collision on the
channel. The model by Xiao [5], on the contrary, assumes that
the countdown is blocked in busy slots, by setting:
pi∗ = pi .
(Xiao [5]) (13)
Finally, the model in [6] incorporates
differentiation into the blocking probability:

A p 
pi∗ = min1, pi + i b  ,
1 −τ i 

AIFS
(E/Ø [7,9]) (14)
where
Ai = AIFSN [i ] − AIFSN [ N − 1] .
(15)
Our results are valid for any of the three models presented
in Eq. (12), Eq. (13) and Eq. (14).
2.6. Finding Expressions for ρ i and ρ i*
In order to find the model parameter ρ i* it is first
necessary to determine the utilization factor, ρ i .
Let λi denote the traffic rate - in terms of the average
number of packets per seconds - of traffic class i on one
station. Then the utilization factor, ρ i , is given by ρi = λi si
[10], where si is the mean service time of a backoff instance
of class i. As pointed out in [6], the MAC delay plays a role as
the service time of the queuing model.
Let DiSAT and DiNON − SAT denote the MAC delay where the
post-backoff delay is or is not taken into account, respectively.
The reason we use the "SAT" and "NOT-SAT" superscripts is
that under full saturation ("SAT") the post-backoff delay is
always taken into account when calculating the delay, because
when a packet is successfully transmitted there is already a
packet in the queue waiting to be sent. On the contrary, the
post-backoff is never taken into account under perfect nonsaturation conditions ("NON-SAT"), because after a
successful transmission one can assume that the post-backoff
will be completed before a new packet arrives in the empty
queue ready for transmission. Expressions for the mean values
Di SAT and Di NON − SAT are provided later in the paper.
While in [6] it is argued that ρ i must be somewhere in
the region min(1, λi Di NON −SAT ) ≤ ρ i ≤ min(1, λi DiSAT ) , this paper
determines exactly where ρ i lies within this interval. This is
best determined by referring to Figure 2. The figure shows
that the backoff instance is busy while contending for channel
access ("CA") for a packet, while the packet is being
transmitted ("Tr"), and while the post-backoff ("PB") of the
packet is undertaken. 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.
Otherwise, the length of the busy period associated with a
packet would be dependent on the arrival time of the previous
packet, in which the system would obviously not be
Markovian.
Packet 1:
Packet 2:
Packet 3:
CA Tr PB CA Tr PB
BUSY
CA Tr PB
IDLE
BUSY
IDLE
Figure 2. The system is busy during channel access
("CA"), transmission ("Tr") and post-backoff ("PB").
In summary, the busy period should include a postbackoff period for each packet that is transmitted, and Di SAT
represents the service time of the system. Hence,
ρ i = min(1, λi Di SAT ) ,
(16)
where Di SAT is expressed by Eq. (34) in Section 3.2 below.
This means that the system is idle only while in the state (-1,0)
shown in Figure 1, and busy otherwise. This is also consistent
with the fact that the expected time spent in this state (i.e. the
average length of an idle period) equals 1 / λi as a first order
approximation, as shown in Appendix 1. (In any case, the
mean duration of the idle periods is not anticipated to be
exactly equal to 1 / λi , since the model is slotted.)
By definition, 1 − ρ i is the probability that the queue is
empty at the time the service period ends [10], i.e. at the time
the backoff instance leaves the state (-1,1) or leaves the state
(0,1). This equals the probability that the queue is empty at the
end of the packet transmission, (1 − ρi∗ ) , times the probability,
Pi PB , of not receiving any packets in the transmission queue
while performing a complete empty-queue post-backoff
procedure. Thus, ρi∗ can be determined by3:
1 − ρi = Pi PB (1 − ρi∗ ) .
(17)
As explained in [7], the probability Pi PB can be expressed in
terms of qi∗⋅ by:
Pi PB =
1 − (1 − q i* )
Wi , 0
(18)
.
Wi ,0 q i*
To estimate q i , we first need to determine the
probability, p s , that a time slot contains a successfully
transmitted packet. It is given as [6]:
N −1
p s = ∑ pi , s .
(19)
i =0
Here, pi ,s is the probability that a packet from any of the
ni backoff instances of class i is transmitted successfully (at
probability τ i (1 − pi ) ) in a time slot:
pi ,s = niτ i (1 − pi ) .
(20)
By definition, q i is the probability that at least one packet
will arrive in the transmission queue during the following
generic time slot under the condition that the queue is empty
at the beginning of the slot. For the estimation of q i , it is
assumed that the traffic arrives according to Poisson
processes. Thus, q i is calculated as [6]:
(
qi = 1 − ps e − λiTs + (1 − pb )e − λiTe + ( pb − ps )e − λiTc
)
.
(21)
where Te , Ts and Tc denote the real-time duration of an empty
slot, of a slot containing a successfully transmitted packet and
of a slot containing two or more colliding packets,
respectively, as detailed in [6].
On the other hand, qi* is the probability that a packet
arrives during countdown blocking. In appendix 2, we show
that qi* can be expressed as:
qi* = 1 −
e
(1 − p )
*
i
p
p
1 − p  s e −λ T + (1 − s )e −λ T
p
p
b
 b
*
i
i s
i c




3.1. The z-Transform of the MAC Delay
Due to the slotted operation of the wireless protocol, the
z-transform (rather than Laplace transform) is applied in order
to describe the delay [9].
The weighted average delay while being blocked during
p
p
countdown can be written as s Ts + (1 − s )Tc . Hence, the
pb
pb
corresponding z-transform is simply:
D( z ) =
2.7. Finding Expressions for qi and qi∗
− λiTe
3. Analysis of the MAC Delay
.
(22)
ps Ts
p
z + (1 − s ) z Tc .
pb
pb
While the backoff instance is counting down, the
probability of facing an empty slot is 1 − pi∗ while the
probability of being blocked is pi∗ . Hence, the z-transform of
this blocking delay is:
Dbli ( z ) =
1 − pi*
.
1 − pi* D ( z )
(24)
When it is not blocked anymore, the backoff instance will
spend an empty time-slot, Te , when moving to the next
countdown state. Hence, the z-transform of the total delay
associated with one countdown state is:
i
Dstate
( z) = zTe Dbli ( z) .
(25)
The total delay in a backoff stage is derived by a
geometric sum over the probabilities associated with each
countdown state:
i
Dstage
, j ( z) =
Wij
i
1 1 − ( Dstate
( z ))
i
Wij 1 − Dstate ( z)
,
i
For simplicity the term Dlevel , j ,s ( z ) is introduced as:
j
i
i
Dlevel
, j ,s ( z ) = ∏ Dstage ,l ( z ) .
to as the utilization factor.
(27)
l =s
Here, s is set to 0 under saturation conditions, because the
post-backoff is undertaken before the transmission of each
packet. Then the transform for the saturation delay may be
written as:
Li
i
i
DSat
( z ) = (1 − pi )∑ pij z Ts + jTc Dlevel
, j ,0 ( z )
+ piLi +1 z
Note that in our earlier works, such as [7-9], ρi∗ was inaccurately referred
(26)
where the factor 1 / Wij reflects the uniform distribution of the
selection of the number of backoff slots at each stage.
*
j =0
3
(23)
( Li +1)Tc*
(28)
i
Dlevel
, Li , 0 ( z ) .
Under extreme non-saturation conditions, on the contrary,
the post-backoff is always completed before a new packet
arrives in the transmission queue. Thus, under these
conditions the post-backoff will not add to the transmission
(−1, k ) . Then these probabilities are given as
1 ∗
f k ,l =
qi (1 − qi* ) l −k , and the probability that a packet
Wi ,0
delay, as it did when the saturation delays were calculated
above, and s is now set to 1 in Eq. (27). Then, the transform
of the non-saturation delay can be found as:
Li
arrives in a post-backoff period exactly in state (−1, k )
i
j Ts + jTc
i
DNon
Dlevel
− Sat ( z ) = (1 − pi )∑ pi z
, j ,1 ( z )
*
(29)
j =0
*
i
+ piLi +1 z ( Li +1)Tc Dlevel
, Li ,1 ( z ) ,
i
where Dlevel
, 0i ,1 ( z ) = 1 has been defined for convenience.
The first part of Eq. (28) and of Eq. (29) represent the
delay associated with packets that are eventually transmitted
successfully on the channel, where pi is the probability of
colliding after each jth stage, adding an extra delay of a slot
containing colliding packets, Tc∗
i
i
i
DSat
( z ) = Dstage
, 0 ( z ) DNon − Sat ( z ) .
*
Wi , 0 −1
∑f
k =1
2.
k
i
i
( z ) k −1 D Non
Dstate
− Sat ( z ) =
i
D Non
− Sat ( z )
i
DSat
(z ) . Otherwise, with probability (1 − pi ) , it goes to
−1
i
(1 − qi* ) i , 0 − Dstate
( z)
*
i
(1 − qi ) − Dstate
( z)
Wi , 0 −1

 .


After summing up over all the three cases above, the
following the z-transform, D i ( z ) , of the MAC delay is found:
i
D i ( z ) = DSat
( z) +
(30)
The queue is non-empty when the post-backoff starts. In
this case the z-transform of the MAC delay equals
i
DSat
(z ) and occurs with probability ρ i∗ .
The queue is empty when the post-backoff starts and with
no arrivals during the whole post-backoff period. This
occurs with probability (1 − ρ i∗ ) Pi PB = (1 − ρ i ) . When a
packet finally arrives at the queue, it will with
probability pi perform a new backoff with the
corresponding z-transform of the MAC delay taken to be
(31)
W −1
i
( z) i,0
1  1 − Dstate
−
i

Wi ,0  1 − Dstate ( z )
W
(1 − qi* )
i
i
i
(1 − ρ i∗ )( D ∗ stage,0 ( z ) − Dstage
, 0 ( z )) D Non− Sat ( z ) + (32)
To find the exact form of the z-transform of the MAC
delay we must distinguish between three main cases:
1.
W −k
f k ,l =
i
k −1 i
transform is Dstate (z) DNon−Sat ( z) . By summing over all
the states k = 1,..., Wi ,0 − 1 we obtain the corresponding ztransform as:
T
(thus the factor z c per
stage). Furthermore, (1 − pi ) is the probability of finally
transmitting the packet after a stage, which adds an extra
T
delay of Ts (leading to the factor z s ). The last part of Eq.
(28) and of Eq. (29) represent the delay of packets that go
through all 0,..., Li stages without being transmitted
successfully, and they are therefore finally dropped.
Observe also that it is possible to factor out the delay for
the post-backoff period from Eq. (27). By this definition, we
i
i
i
have Dlevel
, j , 0 ( z ) = Dstage, 0 ( z ) Dlevel , j ,1 ( z ) and therefore
Wi , 0 −1
1 − (1 − qi* ) i , 0
. The
∑
Wi ,0
l =k
corresponding part of the post-backoff starting at state
(0, k − 1) has to be added to the MAC delay, and its z-
may be written as f k =
i
i
(1 − ρ i ) pi ( DSat
( z ) − DNon
− Sat ( z )) .
Here
D
∗i
stage , 0
we
have
defined
the
“extra”
z-transform,
( z ) , stemming from the post-backoff period:
i
D∗ stage,0 ( z ) =
(33)
W −1
i
1  1 − Dstate
( z) i,0

−
i
Wi ,0  1 − Dstate
( z)
W
(1 − qi* )
−1
Wi , 0 −1
i
(1 − qi* ) i , 0 − Dstate
( z)
*
i
(1 − qi ) − Dstate ( z )

 + Pi PB .


i
(It is easily checked that D ∗ stage,0 (1) = 1 and D i (1) = 1 .)
the state (0,0) , and the corresponding z-transform of the
i
3.
MAC delay is then DNon−Sat (z ) . In summary, the ztransform of the MAC delay for this case is
i
i
pi DSat
( z ) + (1 − pi ) DNon
− Sat (z ) .
The queue is empty when the post-backoff starts, with
probability (1 − ρ i∗ ) , and there is at least one packet
arrival during the post-backoff period. In this case the
Markov chain changes from a state (−1, k ) to state
(0, k − 1) , and part of the post-backoff has to be included
in the delay. Let f k ,l denote the probability that the postbackoff counter starts at the state (−1, l ) (for l ≥ j ) and
that the first arrival of a packet occurs while in state
3.2. Mean Medium Access Delay
Finally, the mean medium access delay under saturation,
Di , is found directly from the transform in Eq. (28):
SAT
(1)
i
(1) = (1 − p iLi +1 )(Ts + Tc*
Di SAT = DSat
pi
Ri
) + Di state 1 , (34)
1 − pi
2
where Distate is defined as the mean delay associated by a
countdown state:
p
 pi*
(1)
p
i
(1) = Te +  s Ts + (1 − s )Tc 
, (35)
Di state = Dstate
*
(
1
)
p
p
−
p
b
i
 b

The terms of the sequence
the Cauchy contour integral:
and the sum Ri is given by:
Li
R1i = ∑ pij (Wij − 1) .
(36)
j =0
By performing the summation above in Eq. (36) for the
case mi ≤ Li the following explicit expression for Ri is
obtained:
m +1
L +1
L +1
 1 − (2 pi ) mi +1
p i − pi i  1 − pi i
−
+ 2 mi i
R1i = Wi 0 
.
 1− p
1 − pi
i
 1 − 2 pi

(1)
(1)
i
i
SAT
Di NON − SAT = DSat
(1) − DStage
− Di state
, 0 (1) = Di
Wi 0 − 1
, (38)
2
where Di state is given in Eq. (35).
Under normal channel conditions the actual mean MAC
delay, Di , lies somewhere between the two extremities,
Di SAT and Di NON − SAT . The mean MAC delay can be found by
differentiating Eq. (32). This gives
Di = Di SAT − (1 − ρ i ) Di PB ,
(39)
where ρ i = min(1, λi DiSAT ) is given from Eq. (16) and where
DiPB =
1
Pi PB
′
′
′
∗i
i ′
i
i
( Dstage
, 0 (1) − D stage , 0 (1)) − pi ( DSat (1) − D Non − Sat (1))
is the
influence from the post-backoff periods. Evaluating the latter
gives:
Di
PB
W − 1  state
 1 − P PB
 Di
=  ∗ iPB + pi i , 0
.
2 
 qi Pi
(40)
4. Method for Finding the Delay Distributions
4.1. Distribution of the Medium Access Delay
It is possible to derive the full delay distribution by
inversion of its transform. By definition the probability
distribution of the delay, in terms of the probabilities d mi that
the delay will be exactly m microseconds, is given by
=
=
1
2πr m
2π
1
2πr m
2π
~i
∫ D (re
m=0
behavior (e.g. in terms of delay bounds and delay percentiles),
here we invert the z-transform of the tail probabilities
~
d mi = d mi +1 + d mi + 2 + ... .
The corresponding generating
function gives the complimentary delay distribution:
∞
1 − D i (z)
~
~
D i ( z ) ≡ ∑ d mi z m =
.
1− z
m =0
(41)
iu
(42)
)e −imu du
0
∫ [cos(mu ) Re( D (re
~i
0
iu
))
]
~
+ sin(mu ) Im(D i (re iu )) du .
The integration is done along a circle, Cr , around the
origin with a radius of r, where 0 < r < 1, and the integral is
performed by a change of variable z = reiu .
By using the trapezoidal rule with step size of π / m we
can approximate the inversion integral above as:
~
~
d mi ≈ d mi , Num
=
1
2πr m
1
=
2πr m
2m
∑ (−1)
m
~
Re( D i (re ijπ / m ))
(43)
j =1
 ~i
m ~i
 D (r ) + (−1) D (−r )

m −1

~
+ 2∑ (−1) m Re( D i (re ijπ / m )) .
j =1

It has been shown (e.g. in [11]) that the error d~mi − d~mi , Num
introduced by this discretization follows directly from the
discrete Poisson summation formula and is bounded by:
~ ~
r 2m
d mi − d mi , Num ≤
.
1 − r 2m
(44)
4.2. Distribution of the Queueing Delay and the
Total Delay
Due to the use of the z-transform in a slotted time system,
we apply a slight modified form of the Pollaczek-Khintchine
formula to obtain the z-transform of the queueing delay. The
service time is determined by the saturation-delay, DiSAT .
Thus, the z-transform of the residual service time distribution
in the queue is:
∞
D i ( z ) ≡ ∑ d mi z m . Since we are most interested in the tail
i
m
~i
~
1 D ( z)
d mi =
dz
2πi C∫r z m+1
(37)
The mean non-saturation delay, Di NON − SAT , can be
calculated similarly using Eq. (29), or it may alternatively be
found by:
{ d~ } can be expressed by
i
( z) ≡
Dˆ Sat
=
1
Di
SAT
∞
∞
∑ ∑d
k =0 m = k +1
i , Sat
m
zk
(45)
λi ~ i
λ 1 − D ( z)
DSat ( z ) = i
.
ρi
ρi 1 − z
i
Sat
Then, the z-transform of the waiting time follows by
Pollaczek-Khintchine formula:
=
1 − ρi
i
1 − ρ i Dˆ Sat
( z)
(46)
(1 − ρ i )(1 − z )
.
i
1 − z − λi + λi DSat
( z)
Hence, when doing transform inversion to find the
complimentary distribution of the queueing delay, Eq. (41)
above is replaced by:
1 − ∆i ( z )
~
∆i ( z ) =
.
1− z
1,0
0,9
(47)
Accumulated Tail Probability
∆i ( z ) =
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0,0
Similarly, when finding the complimentary distribution of
the total delay, Eq. (41) is replaced by:
(48)
5. Numerical Computation of the Distributions
5.1. Numerical Parameters
We made numerical computations in Mathematica. The
scenario selected for validations is 802.11b with long
preamble and without the RTS/CTS-mechanism. The
parameter settings for 802.11b are found in [12]. Based on
these, the model parameters Te = 20µs , Ti ,MSDU = T1024 = 520µs
and Ts = Tc = 1321µs were estimated. Finally, setting the time a
colliding station has to wait when experiencing collision, Tc∗ ,
equal to the time a non-colliding station has to wait when
observing a collision on the channel, Tc , corresponds with the
ns-2 implementation used for validations in [6].
Parameters such as CWmin and CWmax are overridden
by the use of 802.11e [2]. For the validations, the default
802.11e values, also shown in Table 1 in [8], were used.
The node topology of the computed scenario uses 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.
This scenario corresponds to the simulations and
validations undertaken in [6], and the reader should consult
with [6] for more details on the selected scenario.
5.2. The Complimentary Delay Distributions
1
1,5
2
2,5
3
3,5
4
4,5
5
5,5
6
6,5
7
Figure 3. The complimentary distribution of the MAC
delay of AC[3] at a generated traffic rate of 1250 kbps.
Figure 3 shows the resulting distribution functions of the
medium access delay at 1250 kbps. As all traffic requires
1321 us of transmission delay, the distribution is at 1 until this
point. At 1321 us, the distribution drops to 0.062, which
corresponds to the collision probability p3 of AC[3] at 1250
kbps. For those transmissions that collide, the packets have to
wait at least another 1321 us, which corresponds to the
duration of a collision. Hence, the curve remains flat until
2642 us. Here the curve drops gradually to the next level,
depending on the selected backoff interval {0...3} that was
selected for the transmission. This explains the stepwise
behavior of the curve.
Furthermore, Figure 4 shows the resulting distribution
functions of the queueing delay at 1250 kbps. The function is
discontinuous at 0 and equals ρ 3 =0.0438 at 0+. From this
point, the curve decreases as anticipated and approaches zero
as the delay increases.
1,0
0,9
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0,0
0
The z-transform of the delay was inverted at a generated
traffic rate of 1250 kbps [6]. Here we set the error bound to as
little as 10−14 , because this high accuracy costs little in terms
of computation time of the numerical calculations. Then, we
2m
can easily approximate Eq. (44), using r
≈ r 2 m = 10−14 ,
1 − r 2m
and determine the corresponding radius, r, of the contour of
the integration. The rest of the numerical integration is
reduced to pure summation using Eq. (43). Due to space
limitations, the delay distributions of only the highest priority
AC (i.e. AC[3]) are presented here.
0,5
Delay [ms]
Accumulated Tail Probability
1 − D i ( z ) ∆i ( z )
~
T i ( z) =
.
1− z
0
0,5
1
1,5
2
2,5
Delay [ms]
Figure 4. The complimentary distribution of the queueing
delay of AC[3] at 1250 kbps.
50
0,9
45
0,8
40
0,7
Medium access delay (ms)
Accumulated Tail Probability
1,0
0,6
0,5
0,4
0,3
0,2
35
30
25
20
15
10
0,1
0,0
5
0
0,5
1
1,5
2
2,5
3
3,5
4
4,5
5
5,5
6
6,5
7
0
Delay [ms]
0
Figure 5. The complimentary distribution of the total
delay of AC[3] at 1250 kbps.
1000
1500
2000
Traffic generated per AC [Kb/s]
AC[3] - 90 percentile
1,0
0,9
0,8
AC[3] - 95 percentile
AC[3] - 99 percentile
10
8
Queueing delay (ms)
Figure 5 shows the distribution function of the total
queueing delay at 1250 kbps. The stepwise behavior derives
from the distribution of the medium access delay (described in
Figure 3 above). The curve decreases between the steps as a
result of the queueing delay distribution (described in Figure 4
above).
Accumulated Tail Probability
500
0,7
6
4
2
0,6
0,5
0
0,4
0
500
0,3
1000
1500
2000
Traffic generated per AC [Kb/s]
0,2
AC[3] - 90 percentile
AC[3] - 95 percentile
AC[3] - 99 percentile
0,1
0,0
0
0,5
1
1,5
2
2,5
3
3,5
4
4,5
5
5,5
6
6,5
10
7
Delay [ms]
8
Figure 6 shows the complimentary distribution at
1750kbps. At 2 ms, for example, the curve is higher due to a
higher collision probability p3 =0.147 (which results in a
higher value of the medium access delay at this point) and a
higher ρ 3 =0.0736 (which results in a higher value of the
queueing delay at this point).
Total delay (ms)
Figure 6. The complimentary distribution of the total
delay of AC[3] at 1750 Kbps.
6
4
2
0
0
6. Finding the Delay Percentiles
The z-transform of the delay was inverted to find the
delay distributions at other traffic loads as well. How the
delay distributions develop at varying traffic loads is well
described by the delay percentiles. Figure 7 shows the 90-,
95- and 99- percentiles of the medium access delay at varying
traffic loads. All curves follow the general trend of the mean
medium access delay and queueing delay described earlier.
500
1000
1500
2000
Traffic generated per AC [Kb/s]
AC[3] - 90 percentile
AC[3] - 95 percentile
AC[3] - 99 percentile
Figure 7. The delay percentiles of the MAC delay (top),
queueing delay (middle) and total delay (bottom).
7. Conclusions
Based on an analytical model for the IEEE 802.11e the ztransform of the MAC delay is obtained in closed form, and
further the z-transforms of 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.
The model presented in this paper is more exact than that
presented in [9] and [6], since exact expressions of the model
parameters qi∗ and ρ i are derived, and since the exact ztransform of the medium access delay is found. The
implications of this improvement on the estimation of the
mean medium access delay and the queueing delay will be
presented in a follow-up paper [13].
Appendix 1: The Duration of the Idle Period
References
[1]
IEEE 802.11 WG, "Part 11: Wireless LAN Medium Access
Control (MAC) and Physical Layer (PHY) specification", IEEE
1999.
[2]
IEEE 802.11 WG, "Draft Supplement to Part 11: Wireless
Medium Access Control (MAC) and physical layer (PHY)
specifications: Medium Access Control (MAC) Enhancements
for Quality of Service (QoS)", IEEE 802.11e/D13.0, Jan. 2005.
[3]
Bianchi, G., "Performance Analysis of the IEEE 802.11
Distributed Coordination Function", IEEE J-SAC Vol. 18 N. 3,
Mar. 2000, pp. 535-547.
[4]
Ziouva, E. and Antonakopoulos, T., "CSMA/CA performance
under high traffic conditions: throughput and delay analysis",
Computer Communications, vol. 25, pp. 313-321, Feb. 2002.
[5]
Xiao, Y., "Performance analysis of IEEE 802.11e EDCF under
saturation conditions", Proceedings of ICC, Paris, France, June
2004.
[6]
Engelstad, P.E. and Østerbø O.N., "Queueing Delay Analysis
of 802.11e EDCA", Proceedings of The Third Annual
Conference on Wireless On demand Network Systems and
Services (WONS 2006), Les Menuires, France, Jan. 18-20,
2006. (See also: http://www.unik.no/~paalee/research.htm .)
[7]
Engelstad, P.E., Østerbø O.N., "Non-Saturation and Saturation
Analysis of IEEE 802.11e EDCA with Starvation Prediction",
Proceedings of the Eighth ACM International Symposium on
Modeling, Analysis & Simulation of Wireless and Mobile
Systems (ACM MSWiM 2005), Montreal, Canada, Oct. 10-13,
2005. (See also: http://www.unik.no/~paalee/research.htm .)
[8]
Engelstad, P.E., Østerbø O.N., "Differentiation of the
Downlink 802.11e Traffic in the Virtual Collision Handler",
Proceedings of the Fifth International IEEE Workshop on
Wireless Local Networks (WLN ’05), Sydney, Australia, Nov.
15-17, 2005. (See also: http://www.unik.no/~paalee/PhD.htm .)
[9]
Engelstad, P.E., Østerbø O.N., "Delay and Throughput
Analysis of IEEE 802.11e EDCA with AIFS Differentiation
under Varying Traffic Loads", Proceedings of the Fifth
International IEEE Workshop on Wireless Local Networks
(WLN ’05), Sydney, Australia, Nov. 15-17, 2005.
Since the system is idle only while in the state (-1,0), the
duration of an idle period is given by the z-transform:
i
( z) =
TIDLE
qi
1 − (1 − qi ) (1 − pb ) z + p s z Ts + ( pb − p s ) z Tc
[
Te
]
,
(49)
where qi is given in Eq. (21) with the corresponding mean
idle period given by:
Ti IDLE =
(1 − q i )
[(1 − pb )Te + p s Ts + ( pb − p s )Tc ].
qi
(50)
If for instance the input rate is small compared to the
mean slot length i.e. λi << 1 − pb )Te + p s Ts + ( pb − p s )Tc then by
expanding the expression (21) to first order we find:
Ti IDLE ≈
1
(51)
λi
Appendix 2: The Expression for q
∗
i
i
As seen from Eq. (25), Dstate
( z) = z Te Dbli ( z) is the ztransform for the delay of the countdown of one backoff slot.
Since 1 − qi∗ is the probability that no packet being generated
within this time interval, and since the packets arrive
according to a Poisson process with rate λi , this probability
i
∗
i
equals Dstate
(e−λi ) , hence qi = 1 − Dstate (e
Eq. (23) and Eq. (24) and setting z = e
qi∗ in Eq. (22) is obtained.
− λi
−λi
) . By applying
the expression for
[10] Kleinrock, L., “Queuing Systems,Vol. 1”, John Wiley, 1975.
[11] Abate, J. and Whitt, W., “Numerical Inversion of Probability
Generating Functions.” Operations Research Letters, vol. 12,
No. 4, 1992, pp. 245-251. (http://www.columbia.edu/
~ww2040/generate.pdf. Last Visited: Jan 26 2006.)
[12] IEEE 802.11b WG, "Part 11: Wireless LAN Medium Access
Control (MAC) and Physical Layer (PHY) specification: Highspeed Physical Layer Extension in the 2.4 GHz Band,
Supplement to IEEE 802.11 Standard", IEEE, Sep. 1999.
[13] Engelstad, P.E., Østerbø O.N., "Analysis of the Total Delay of
IEEE 802.11e EDCA", To appear in the Proceedings of IEEE
International Conference on Communication (ICC'2006),
Istanbul, June 11-15, 2006.
Download