You are on page 1of 20

Dynamic Resource Allocation for MCCA-Based

Streaming in Wi-Fi Mesh Networks

Evgeny Khorov, Artem Krasilov, Andrey Lyakhov, and Dmitry Ostrovsky

Institute for Information Transmission Problems of Russian Academy of Sciences


(IITP RAS), Bolshoy Karetny per. 19, Moscow, 127994, Russia,
{khorov, krasilov, lyakhov, ostrovsky}@iitp.ru

Abstract. The IEEE 802.11s standard defines a novel deterministic


channel access method called MCCA. In preliminarily reserved time in-
tervals, MCCA allows packet transmission from the owner of the reser-
vation to the intended receiver, while their neighbors are forbidden to
access the channel. Such a protection decreases the interference from hid-
den stations, allowing to improve reliability of transmission between two
stations, which makes MCCA a promising method to transmit real-time
multimedia streams with parameterized QoS support. However, both
random noise and interference from the stations out of one-hop neigh-
borhood may cause transmission errors, increasing packet loss ratio. In
this paper, we consider various mechanisms for protecting reservations
from interference and propose a method to find the amount of reserved
channel resources and the type of protection needed to meet QoS re-
quirements while transmitting the data with MCCA in case of varying
channel conditions.

Keywords: Wi-Fi Mesh, MCCA, deterministic channel access method,


paremetrized QoS.

1 Introduction

Wireless networking technologies are rapidly evolving. Apart from the growth
of such apparent indices as capacity or throughput, wireless networks become
more intelligent: self-organization, robustness, and parameterized QoS support
for real-time multimedia traffic are today’s issues. Another evidence of this evo-
lution is the expansion of wireless technologies to those scenarios which the
technologies were not initially intended for, e.g. the increase of Wi-Fi network
coverage area by means of multihop operation or the usage of LTE femtocells as
local area networks.
Understanding the trends in the wireless networking market, IEEE 802.11
standards committee paid attention to self-organizing multihop networks and
developed the IEEE 802.11s standard [1] defining Wi-Fi Mesh which seems to
be a promising technology to expand the coverage area of wireless local area
networks (WLANs) and to increase their robustness. The standard is more than
just a routing framework. It defines a novel deterministic channel access method
A B

one-hop D

two-hop C

Fig. 1. One-hop and two-hop neighborhood of two stations A and B

called Mesh coordination function Controlled Channel Access (MCCA), which


can be used in addition to the random access method traditional to Wi-Fi. The
reason to introduce a new channel access method is clear: the performance of
random access in multihop networks significantly degrades with traffic growth
because of the hidden station problem [2]. So, random access is incapable of
providing high throughput and low packet loss ratio (PLR), which is strictly
necessary to meet QoS requirements while transmitting real-time multimedia
streams.
The key idea of MCCA is preliminary reservation of time intervals during
which a station transmits packets to another one, while neighbors of the sta-
tions are forbidden to transmit packets. Defining a method but not the rules
of its usage, the standard opens the door for many papers studying its effi-
ciency and proposing algorithms for reservation allocation. In particular, recent
studies [3,4] show that in some scenarios, MCCA does significantly reduce trans-
mission errors, but does not entirely eliminate them. Transmission attempts may
be unsuccessful due to random noise or interference caused by stations out of
one-hop neighborhood. To reduce PLR, [4] proposes to use two-hop protection,
i.e. to restrict transmission in two-hop neighborhood, see Fig. 1. Naturally, the
usage of two-hop protection limits spatial reuse and thus decreases network ca-
pacity; so it is necessary to find a trade off between the low PLR and the waste
of channel resources (more exactly, channel time). In other words, the type of
reservation protection should be dynamically chosen, according to the current
channel conditions. Another way to reduce PLR is to reserve more resources for
additional transmission attempts.
This paper addresses the issue of determining the amount of channel resources
and the type of protection needed to provide QoS support for a multimedia
stream in case of dynamic channel conditions.
To simplify our analysis we assume that:

1. The routing protocol, e.g. developed in [5], has found a stable path between
the source and destination stations.
2. The end-to-end QoS requirements (PLR and delay) are divided among all
hops in the path, e.g. according to the strategy presented in [6].

So, we need to develop a method to obtain the amount of reserved channel


resources with various protection types for the single hop case. This is rather a
challenging task, since no solutions have been developed yet even for the only
protection type.
The rest of the paper is organized as follows. In Section 2, we study the
possibility of providing parameterized QoS support with deterministic channel
access methods employed by various technologies, focusing on the MCCA open
issues, in particular, on the problem of dynamic resource allocation for MCCA-
based streaming. We develop our resource allocation method in Section 3. In
Section 4, we evaluate its efficiency in various scenarios. Section 5 concludes the
paper.

2 The problem of dynamic resource allocation for


MCCA-based streaming

2.1 Parameterized QoS support via deterministic access:


state-of-the-art

Parameterized QoS support in wireless networks is a challenging and still not


completely solved task. Most of the related solutions proposed in recent years
are based on the usage of deterministic channel access methods which allow
to reserve exclusive channel resources needed for transmission of streams with
specific QoS requirements. To allocate resources for deterministic access, var-
ious technologies employ different resource reservation schemes, which can be
classified as centralized and distributed [7]. With centralized schemes, resource
scheduling is entirely conducted by coordinators, e.g. Access Points in infras-
tructure IEEE 802.11 WLANs or Base Stations in IEEE 802.16 and 3GPP LTE
networks. In contrast, with distributed schemes, there is no dedicated coordi-
nator and resources are allocated by means of a special negotiation procedure
which involves transmission of control messages between the intended transmit-
ter and receiver and also their neighbors. For instance, distributed reservation
schemes are implemented in IEEE 802.11s MCCA and ECMA 368 Distributed
Reservation Protocol (DRP) [8].
To date, many research works have been focused on providing parameterized
QoS support via centralized schemes. For example, dozens of algorithms have
been developed to allocate channel resources for Constant Bit Rate (CBR), e.g.
reference solution in [9], or Variable Bit Rate (VBR, e.g. video) [10, 11] streams
with IEEE 802.11 HCCA1 . Unfortunately, these algorithms cannot be directly
used in mesh networking, since they require reallocation of reserved resources on
the fly, which is provided in centralized schemes by the ability of the coordinator
to fully control the wireless channel. On the contrary, with distributed reservation
schemes which are usually applied in mesh networks, reallocation of resources
implies a long negotiation procedure not taken into account by the mentioned
above algorithms.
As for distributed reservation schemes, a number of papers present resource
allocation algorithms for ECMA 368 DRP. Based on the prediction of the max-
imum incoming bit rate [12] or traffic specification provided from the upper
layers [13], the algorithms estimate the amount of resources needed to trans-
mit CBR and VBR streams and allocate resources accordingly. However, these
algorithms assume that all transmissions in reserved time slots are successful,
which is not always valid due to error-prone nature of the wireless channel and
interference from other stations [4].
In [14] the authors have presented a mathematical model of MCCA-based
streaming in IEEE 802.11s networks. The model allows to estimate the amount
of resources needed to be reserved for transmission of a multimedia stream with
given QoS requirements, assuming that packet transmissions may fail with a fixed
probability due to noise. However, the authors have not provided any guidelines
on how to estimate this probability and how to reallocate resources if channel
conditions change. In this paper, we address these issues and propose an adap-
tive method which periodically estimates channel conditions and dynamically
allocates resources to meet QoS requirements of a transmitted stream.

2.2 MCCA-based streaming

In this section, we consider how to organize transmission of QoS-sensitive stream


with MCCA. Although the interested reader can study the standard [1] or at
least [4] to get detailed information about MCCA, let us give its brief descrip-
tion to simplify the reading of the paper. As mentioned in Section 1, MCCA is a
channel access method which allows stations to reserve time intervals, called MC-
CAOPs, for data transmissions. Specifically, each MCCAOP reservation (further:
reservation) represents a strictly periodic set of time intervals of equal duration,
in which the owner of the reservation obtains an exclusive access while neighbors
of the intended transmitter and receiver shall abstain from transmission.
To establish a new reservation, a station runs a special negotiation procedure
which can be shortly described as follows. By exchanging control messages sent
with the random channel access method, the intended transmitter and receiver
find an appropriate location for a new reservation so that it does not overlap with
existing reservations of their neighboring stations. Once the appropriate location
is negotiated, the transmitter and the receiver start advertising the established
1
Hybrid coordination function Controlled Channel Access (HCCA) implements a cen-
tralized resource reservation scheme in infrastructure IEEE 802.11 WLANs.
- packet
- MCCAOP
T

time

Fig. 2. Proposed resource reservation scheme

reservation to their neighboring stations, which then re-broadcast the advertise-


ment to ensure that all stations in the two-hop neighborhood become aware of
this reservation. According to the standard, stations advertise periodically all
established reservations in beacons. Thus, reservations can not be established or
released “on the fly”, because at least one beacon interval is needed to notify all
neighboring stations about the changes.
As reservations provide regular and controlled access to the wireless channel,
it is very suitable to use MCCA for transmission of multimedia streams with
strict QoS requirements. Typically, QoS requirements are expressed as follows:
the delay of each delivered packet of the stream shall not exceed the maximum
delay DQoS , and the packet loss ratio (PLR) shall not exceed the threshold
P LRQoS .
As an example, let us consider how to organize the transmission of a CBR
stream (e.g. voice stream) between two stations with MCCA. Suppose that pack-
ets of the stream arrive at the transmitter with a fixed interval T . At first sight,
the solution looks very simple: we need to establish a reservation with the interval
between consequent MCCAOPs equal to T , and the duration of each MCCAOP
sufficient for the transmission of a packet itself and a MAC acknowledgement.
However, as already discussed in Section 1, despite all neighbors of the trans-
mitter and the receiver abstaining from accessing the channel during MCCAOP,
transmission inside MCCAOP is not always successful, which, in turn, may lead
to the violation of the PLR requirement. There are two reasons of transmis-
sion failures inside MCCAOP: (i) random noise and (ii) interference caused by
stations outside one-hop neighborhood, which is not always negligible as shown
in [4].
One of the ways to meet the PLR requirement is to reserve more resources so
that failed packets have additional transmission attempts. It is evident that the
amount of resources needed to meet the PLR requirement depends on the current
channel conditions. As we show in Section 4, the conditions may significantly
vary over time because of unstable nature of wireless channel and unpredictable
interference from stations outside the one-hop neighborhood of transmitter and
receiver. So we need to dynamically reallocate reservations according to the
observed channel conditions.
The resources may be reserved as the only series of MCCAOPs, i.e. the only
reservation with the period less than T , as it is considered in [14]. However,
when we need to reallocate resources we have two options. According to the
first one, we release the current reservation and then establish a new one, which
leads to a service gap caused by the negotiation procedure. According to the
second one, we keep using the old reservation during the negotiation procedure,
doubling consumed resources. As both options degrade network performance, we
use another approach shown in Fig 2. According to this approach the station
establishes a number of reservations with a period T so that each packet is
transmitted a fixed number of times. If we need to change the amount of reserved
resources, we just release or establish some reservations, keeping others. Note
that with such approach the delay requirement can be considered to be satisfied
since all transmission attempts of the same packet can be arranged not farther
than DQoS from the packet arrival.
Another way to meet PLR requirement is to increase the reliability of trans-
mission with MCCA by reducing the interference from stations outside the
one-hop neighborhood of transmitter and receiver. For this purpose, in [4] it
is proposed to forbid all stations in two-hop neighborhood to transmit during
MCCAOPs (i.e. to use two-hop protection for reservations instead of one-hop
protection specified in the standard). It has been shown that the usage of two-hop
protection allows to significantly increase the probability of successful transmis-
sion in MCCAOPs, but on the other hand, it decreases network capacity by
limiting spatial reuse of the channel. So, the protection type used for a reserva-
tion should be chosen according to the current channel conditions. Unfortunately,
the standard [1] supports only one-hop protection for all reservations. Thanks to
the advances of the ICT FP7 FLAVIA research project [15] which proposes an
architectural solution for making the channel access programmable, it is possible
to add the required functionality to MAC protocol and easily implement such
an adaptive choice [4].
Summing up, in case of the violation of the PLR requirement we have two
options which can be applied simultaneously: (i) to establish additional reserva-
tions to provide more transmission attempts and (ii) to use two-hop protection
instead of one-hop protection for new reservations to improve reliability of trans-
mission in MCCAOPs. The method developed in this paper uses both of these
options.

2.3 Problem statement


Let us define the requirements for our method more strictly.

1. As the use of the resource reservation scheme proposed in Section 2.2 and
shown in Fig. 2 leads to meeting the delay requirement, our goal is to develop
a method which allows to meet the PLR requirement. PLR may change over
time, so we consider a series of time intervals of fixed duration and measure
PLR for each interval I as the number of lost packets (LI ) divided by the
number of sent packets WI (which is constant for a CBR stream: WI ≡ W )
during interval I. At first sight, the PLR requirement may be written as
LI QoS
W ≤ P LR , but the wireless channel unpredictably changes over time.
Adjusted to meet the PLR requirement with current channel conditions, the
method may violate it after the conditions change. So, strictly speaking, the
PLR requirement should be rewritten as
 
LI QoS
P ≤ P LR ≥ α, (1)
W
where P{A} is the probability of event A and confidence α is close to 1, say
0.95.
2. Providing QoS support, the proposed method shall consume as few channel
resources as possible. Taking into consideration that channel resource con-
sumption of two-hop protection is higher than that of one-hop protection, we
assign various costs to the reservations with different protection types. Let
the cost of a reservation with two-hop protection be cth times higher than
the cost of a reservation with one-hop protection. For example, cth may equal
the ratio of the number of stations in two-hop neighborhood to the number
of stations in one-hop neighborhood of transmitter and receiver. We obtain
that among all sets of reservations which allow to satisfy (1), the method
shall select the set of the lowest possible cost.
3. Finally, we shall take into consideration that the method shall not fluctu-
ate, i.e. shall not establish or release reservations too frequently, since every
change in the set of reservations increases overhead and may take some time.
Indeed, to establish a new reservation, the stations run a negotiation pro-
cedure and then advertise the established reservation. It takes some time
tsetup which is about the beacon interval. When a station releases an ex-
isting reservation, its neighbors become aware of this action after the next
advertisement. So, actually, the resources are released only after tsetup .

In Section 3, we present the developed method which satisfies the require-


ments specified above.

3 Proposed method

3.1 Key ideas

As described in Section 2.2, the number of reservations (i.e. the number of packet
transmission attempts) needed to meet QoS requirements for each particular
stream depends on the channel conditions, which may significantly vary over
time. So, the key idea of the proposed method consists in the periodical running
of the procedure which considers the current set of reservations, estimates chan-
nel conditions, and, if needed, adds or removes some reservations, forming the
new set. The procedure consists of three steps.
At the first step, we describe the transmission of the stream by a statistical
model which allows to find the probability that an arbitrary packet of the stream
will be successfully transmitted with set R of reservations as function Pθ (R)
with parameter θ corresponding to current channel conditions. In Section 3.2,
we present an example of the statistical model. However, other models may also
be used. We use the statistics of all transmission attempts in the current set
Rcur of reservations for the last h packets to tune the model. In other words, we
find θ = θ̂ which optimally describes channel conditions, using the maximum-
likelyhood approach [16].
At the second step, we use the model to find the cheapest set R∗ of reser-
vations meeting the PLR requirement. To check if it is met for set R, we find
the probability that for W packets the number of lost packets is less or equal to
bW · P LRQoS c. Assuming that transmissions of various packets are statistically
independent, we obtain that this probability equals FW,1−Pθ̂ (R) (bW · P LRQoS c),
where
k
X W!
FW,1−Pθ̂ (R) (k) = (1 − Pθ̂ (R))i Pθ̂ (R)W −i
i=0
(W − i)! i!

is the c.d.f. of binomial distribution with W independent experiments. The PLR


requirement is satisfied with confidence α if the following condition is true:

FW,1−Pθ̂ (R) (bW · P LRQoS c) ≥ α. (2)

At the third step, taking recommended set R∗ and the statistics for current
set Rcur into account, we form a new set Rnew of reservations to be used further.
Actually, Rnew may differ from both R∗ and Rcur .
The described above procedure is run periodically. The time interval between
two executions of the procedure depends on packet interarrival time T and the
result of the previous execution. If no reservations were added, next time the
procedure is run after τ packets are sent, τ ≤ h. If one or several reservations
were added, it is necessary to establish them, which takes tsetup , and then to
obtain statistics for new reservations, which requires h packets to be sent via the
t
new reservations. If T is constant, the procedure is run after τ 0 = d setup
T e+h
packets are sent.
To describe the procedure in detail, let us start with the case when all reser-
vations are of the same cost, e.g. only one-hop protection is used for all reser-
vations. For this case, we develop a basic procedure described in Section 3.2
and two enhancements of its third step which improve QoS support and reduce
fluctuation (see Sections 3.3 and 3.4, respectively). These enhancements may be
used separately or together. We consider the complex case with reservations of
various costs in Section 3.5.

3.2 Basic procedure

At the first step, we tune the statistical model. We develop the model, based on
the following ideas:

1. Transmission attempts in various reservations are statistically independent


and, generally speaking, may have different success probabilities.
2. Success transmission probability for an existing reservation is estimated via
the statistics for this reservation.
3. Success transmission probability for a new reservation (i.e. reservation which
may be established in addition to existing ones) is approximated as the mean
of success probabilities for existing reservations.
Speaking more formally, let pi be the success transmission probability for
existing reservation i, i = 1, r, where r = |Rcur | is the size of the current set
Rcur of reservations. The proposed statistical model is parameterized by vector
θ = (p1 , .., pr ). We fit θ using the maximum-likelyhood approach, which yields
the estimate of pi :
h
1X
p̂i = Xij , i = 1, r, (3)
h j=1

where X is the binary matrix of r rows and h columns, Xij = 1 if the transmission
of packet j via reservation i was successful.
We estimate pi0 for a new reservation i0 > r as the mean value of pˆi :
r
1X
p̂i0 = pˆi . (4)
r i=1

Since transmission attempts in different reservations are assumed to be in-


dependent, the probability of successful packet transmission for a given set R of
reservations and vector θ̂ = (p̂1 , .., p̂r ) can be expressed as
Y
Pθ̂ (R) = 1 − (1 − p̂i ). (5)
i∈R

At the second step, we use the model to obtain the cheapest set R∗ of reser-
vations which allows to meet the PLR requirement. For that, if requirement (2)
is not met for the current set Rcur , we add new reservations one by one until
(2) holds. Otherwise, we remove the reservations with the lowest pi one by one
until removing of the reservation breaks (2).
At the third step, we merely follow the statistical model recommendation and
choose Rnew ← R∗ . Such a simple step of the basic procedure is enhanced below.

3.3 Enhancement to improve QoS support


The statistical model described above operates under the assumption that trans-
mission attempts in various reservations are statistically independent. In fact,
this assumption may not hold. Let us consider a simple example shown in Fig. 3.
Station A (refer to Fig. 1) transmits a stream to station B via two reservations.
The other stream is transmitted via one reservation from C to D, which are
both two-hop neighbors of B. Packet interarrival time of stream C → D is twice
as long as that of A → B. In this case, transmission attempts for odd packets
of stream A → B may fail because their MCCAOPs (crossed in Fig. 3) overlap
with MCCAOPs of stream C → D, while transmission attempts of even packets
are always successful. So, the transmission errors via two reservations of stream
A → B correlate.
A→B

C→D

Fig. 3. Correlated transmission errors

This example shows that the statistical model may overestimate Pθ̂ (R), which
means that choosing Rnew = R∗ may violate the PLR requirement (2). Taking
this fact into account, we develop an enhancement of the third step: we check if
the use of set R∗ given by the statistical model may violate the PLR requirement
and adjust the set if needed.
To
Q check if the use of set R violates the PLR requirement, we consider δR (j) =
1− (1−Xij ), which is the indicator that the j-th packet has been successfully
i∈R
transmitted by at least one of the reservations from set R. Then we calculate
the successful packet transmission probability for reservation set R as
h
1X
Pδ (R) = δR (j). (6)
h j=1

This estimate is more accurate than (5) and may be used instead of it:

FW,1−Pδ (R) (bW · P LR0 c) ≥ α. (7)

However, (6) is undefined for R * Rcur , and, in this case, we obey the recom-
mendation of the statistical model: Rnew ← R∗ .
Otherwise, i.e. if R∗ ⊆ Rcur , we form Rnew as follows.

– If PLR requirement (7) is not met for the current set Rcur , we need to
establish more reservations. R∗ ⊆ Rcur means that the statistical model
does not increase the number of reservations, because it overestimates the
probability of successful packet transmission. So, we ignore recommendation
R∗ and establish an additional reservation: Rnew = Rcur ∪ i0 .
– Otherwise, i.e. if PLR requirement (7) is met for current set Rcur , it may be
possible to reduce the number of reservations. Starting from R = Rcur , we
remove reservations from R one by one until |R|= |R∗ | or further removal
of reservations breaks PLR requirement (7). Each time we select the worst
reservation as the candidate to be removed from given set R, i.e. we select
reservation i = iw which maximizes value Pδ (R \ {i}).

3.4 Enhancement to reduce fluctuation


Even applied to the channel with a constant probability of successful packet
transmission, the procedure described above may fluctuate, i.e. give various sets
Rt∗ of reservations at different time moments t. Let us describe how to reduce
such fluctuation.
We propose to choose set Rtnew at moment t, based on the recommendations
Rt∗ , Rt−1
∗ ∗
given at moments t, t − 1, . . . , t − l + 1, where l is a history
, . . . , Rt−l+1
size limit. Note that if l = 1 the enhancement has no effect.
We remove reservations only after several repeats of such recommendation.
Strictly speaking, if |Rt∗ |< |Rcur | we may remove not more than min |Rt−k ∗
|−|Rcur |.
k=0,1,...l−1
We remove reservations in the way described in Section 3.3.
However, if we need to add new reservations, we do it immediately: if |Rt∗ |>
|R | then Rnew ← R∗ .
cur

3.5 Adaptive selection of reservation type

In this Section, we extend the procedure to select the appropriate type of protec-
tion. For this purpose, we consider separately sets Roh and Rth of reservations
with one-hop and two-hop protection, and then apply ideas discussed in Sec-
tions 3.1 – 3.4.
The first step of the procedure is the same as in Section 3.2 except for (4).
Namely, we estimate pi0 for a new reservation i0 of type y considering only the
existing reservations of the same type Rycur ⊂ Rcur :

1 X
p̂i0 = pˆi . (8)
|Rycur | cur
i∈Ry

If there is no reservation of type y, then (8) is not valid. In this case, we


assume that the value of p̂i0 has not changed since the last time it was calculated.
If we have no statistics for type y for z times of the procedure execution, we set
p̂i0 = 1 for this type of reservations to try it.
At the second step, we find the cheapest set R∗ = Roh
∗ ∗
∪ Rth that satisfies (2).
As reservations with two-hop protection are cth times more expensive than reser-
vations with one-hop protection, the total cost of set R∗ is CR∗ = |Roh
∗ ∗
|+cth |Rth |.
At the third step, we improve QoS support and reduce fluctuation similarly
to Sections 3.3 and 3.4.
To improve QoS support, we analyze whether the model recommendation
meets PLR requirement (7) and form a new set of reservations as follows.

– Consider the case when (7) is not met for the current set Rcur . In this
case, the procedure should establish new reservations but should not release
existing ones. It is performed as follows.
1. If the statistical model recommends to add at least one reservation, we
add it without removing existing ones.
2. Otherwise, i.e. if model does not recommend to add reservations, we
consider that the model fails and add a new reservation. The type of
this reservation is selected as follows.
Let p̂oh0 and p̂th0 be estimates (8) for new reservations with one-hop
and two-hop protection, respectively. Assuming that errors are not cor-
related, we can estimate the least number κ of reservations with one-hop
protection that provide the same or less PLR as compared to one reserva-
tion with two-hop protection: (1 − p̂oh0 )κ ≤ (1 − p̂th0 ). If κ > cth then we
select two-hop protection for the new reservation. Otherwise, we choose
one-hop protection.
– Now consider the case when PLR requirement (7) is met for the current
set Rcur . The model may recommend to add new reservations, to release
existing reservations, or both to add reservations of one type and to release
reservations of another type.
1. If the model recommends only to add some reservations, we follow this
recommendation.
2. If the model recommends only to release reservations of the same type
or of different types, we try to release these reservations greedily one by
one, while PLR requirement (7) is met. As reservations differ by both
quality and cost, each time we select the reservation with the smallest
net utility uR (i):

Pδ (R) − Pδ (R \ {i})
uR (i) = , (9)
ci
where ci is the cost of reservation i. For reservations with one-hop pro-
tection it equals coh = 1, and for reservations with two-hop protection
it equals cth .
3. If the model recommends to remove reservations of one type and to add
reservations of the other type, we, first, try to release reservations of the
first type while PLR requirement (7) is met and then add reservations
of the second type.

To reduce fluctuation, we perform actions similar to those described in Section


3.4, except for that we consider sets of reservations with one-hop and two-hop
protection separately.

4 Performance evaluation

4.1 Simulation setup

To evaluate the efficiency of the proposed method, we use a simulation environ-


ment consisting of two components.
The first component is the popular network simulator ns-3 [17], which imple-
ments PHY and MAC layers of the IEEE 802.11 standard quite accurately. Using
ns-3, we carry out a set of experiments, in which we observe the transmission of
a CBR stream between two appointed stations by means of MCCA2 in different
scenarios. Specifically, we transmit a voice stream with packet interarrival time
T = 20 ms corresponding to G.729 codec [18] between two stations by means
of a fixed number N of reservations. In different scenarios described in detail
2
We have extended ns-3 with the MCCA model in [4]
below, transmissions of voice packets in established MCCAOPs are affected by
a random noise and interference caused by transmissions of other stations. As
a result, in each experiment we obtain a binary matrix X̃N ×Texp representing
statistics of all transmission attempts in N reservations with experiment dura-
tion Texp = 106 . Unless explicitly stated, we suppose that all time intervals are
measured in time units T .
The second component of the simulation environment is the proposed method
itself implemented in the R software environment [19]. The method takes matrix
X̃ as the input data and keeps set Rcur of active reservations. Note that each
reservation from set Rcur corresponds to a particular row in X̃. If the method
decides to establish a new reservation, it randomly chooses an unused reserva-
tion (unused row) and adds it to the Rcur . We assume that the stations have
enough channel resources to do it. Otherwise, if the method decides to release a
reservation it simply removes it from Rcur . At the beginning of each experiment,
Rcur contains the only reservation randomly chosen from {1, .., N }.
To verify if the proposed method meets requirements specified in Section 2.3,
we measure the following performance indices:
1. QoS Violation Ratio (QVR), which is the fraction of time when the PLR
requirement (1) is not met;

2. Mean Cost of the Reservation set (MCR), which is the sum of the mean
number of reservations with one-hop protection and two-hop protection in
Rcur weighted by their costs coh and cth ;

3. Frequency of Adding (FA), which is the mean number of reservations with


one-hop or two-hop protection, added by the method to Rcur during interval
tsetup .

In all experiments presented bellow, we use the following values of parame-


ters: P LRQoS = 0.05, α = 0.95, W = 50. We suppose that tsetup = 50, cth = 4.
The maximum number of reservations N = 15, which is more than enough to
satisfy QoS requirements in all scenarios.

4.2 Statistical model adjustment


In the first series of experiments, we consider the basic procedure described in
Section 3.2 and analyze the influence of the parameters τ and h on the ability of
the method to react to the changes of channel conditions. For that, let us consider
a scenario in which transmissions of voice packets are affected by random noise
modeled as follows. We divide the time of experiment Texp into intervals of equal
duration Tchange . At the beginning of each interval, we randomly choose the noise
level from four possible values and keep it constant until the end of the interval.
These four levels are preliminary chosen in such a way that at each particular
level we need 1, 2, 3, or 4 reservations to meet the PLR requirement. So, in this
scenario, Tchange characterizes the mean rate of channel conditions changes.
● Tchange = 1250 ● 7FKDQJH 
7FKDQJH 

0.15
Tchange = 2500

2.65
Tchange = 5000 7FKDQJH 
Tchange = 50000 7FKDQJH 

2.60


0.10

2.55
● ●

● ●

MCR
QVR


2.50
● ●
● ●

● ●
● ● ●
0.05

2.45

● ● ●

2.40
2.35
0.00

0 200 400 600 800 1000 1200 0 200 400 600 800 1000 1200

h h
● 7FKDQJH 
7FKDQJH 

7FKDQJH 
0.15

7FKDQJH 
0.10
FA, 10−3


0.05


● ● ● ● ● ● ● ● ● ●
0.00

0 200 400 600 800 1000 1200

Fig. 4. Results of experiments for different values of h and Tchange , τ =50

We carry out an extensive evaluation of our method in a wide range of τ ,


h and Tchange values. The results show that with any values of h and Tchange ,
using smaller values of τ allows to decrease QV R and M CR without significant
growth of F A. In other words, it is worth choosing the value of τ as low as
possible. On the other hand, τ cannot be less than tsetup as the reservations
can be established or released only after tsetup interval. So, further we use the
minimal possible value of τ = tsetup = 50.
As for parameter h that limits the amount of statistics used to tune our
model, the results3 presented in Fig. 4 show that we should choose neither too
low nor too high values. Choosing too low values of h (h < 100) leads to errors in
estimates (3) and (4) of the model parameters, which, in turn, results in violation
of the PLR requirement and high fluctuation. On the other hand, too high values
of h (h > 300) reduce fluctuation, but do not allow to react timely to the changes
3
We repeat the experiments as many times as needed to achieve the error less than
5%.
of channel conditions. In particular, this occurs in the case of small values of
Tchange . Though the optimal value of h depends on the particular scenario, we
recommend to use values h ∈ [100, 300]. We also check this recommendation in
the following experiments.

4.3 Performance evaluation of enhanced procedures


In the second series of experiments, we consider a more general scenario in which
transmissions of voice packets are affected by both random noise and interference
with transmissions of other stations. Specifically, using ns-3 we run experiments
in which we observe transmission of a voice stream between two stations A and
B in the middle of a 6x5 grid network by means of a fixed number of reservations
with one-hop protection. During the experiment other stations periodically start
voice streams of limited duration. The source-destination pairs for these streams
are chosen randomly, and on average each station is the source of one voice
stream. The voice streams are transmitted with MCCA. In addition to voice
streams, all stations are overloaded with background traffic which is transmitted
by means of the EDCA random access method in the intervals not occupied by
MCCA. Interested reader can find more detailed description of the similar ns-3
experiments (e.g. used PHY and MAC settings) in our previous paper [4].
We use the results obtained from the ns-3 experiment described above (i.e.
binary matrix X̃) as the input data for evaluation of our method. In particular,
we compare efficiency of procedures with and without enhancements introduced
in Sections 3.3–3.4. The results of this comparison are presented in Fig. 5. The
curve denoted as “Enhanced-l” corresponds to the procedure with both enhance-
ments improving QoS and reducing fluctuation in use, and history size limit l.
The obtained results show that the basic procedure (see curve “Basic”), which
rigorously follows recommendations of the statistical model, is incapable to meet
the PLR requirement (for any h, QV R is above 1 − α threshold). The cause of
such misbehavior is the assumption of the statistical model: transmission at-
tempts in various reservations are assumed to be independent. However, this
assumption does not hold in the considered scenario, because the interference
from the stations outside the one-hop neighborhood of A and B causes corre-
lated errors in different reservations. In such conditions, the statistical model
tends to overestimate the successful transmission probability (5) and therefore
to underestimate the required number of reservations.
The QoS improving enhancement developed in Section 3.3 allows to signif-
icantly reduce the QV R value (see curve “Enhanced-1” in Fig. 5). However,
without the enhancement reducing fluctuation, the PLR requirement is still not
met because of the following reason. When removing reservations, the procedure
makes a decision based only on the statistics of the last h packets. So, the proce-
dure often releases reservations and at the next execution establishes them back.
As shown in Fig.5, it leads to high fluctuation (F A is even higher than for the
basic procedure) and therefore violation of the PLR requirement.
When l > 1, both enhancements are in force. The results presented in Fig.5
confirm that the usage of the enhancement proposed in Section 3.4 allows to
12
● Basic ● Basic
Enhanced−1 Enhanced−1
Enhanced−5 Enhanced−5
● Enhanced−10 Enhanced−10

0.3
Enhanced−20 Enhanced−20

10

● ● ● ● ●
● ● ● ● ●

0.2

MCR
QVR

8
0.1

6
● ● ● ● ● ● ● ●





0.0

4
0 200 400 600 800 1000 1200 0 200 400 600 800 1000 1200

h h
● Basic
Enhanced−1
0.4

Enhanced−5
Enhanced−10
Enhanced−20


0.3
FA, 10−3
0.2


0.1





● ● ● ● ● ●
0.0

0 200 400 600 800 1000 1200

Fig. 5. Results of experiments for different procedures with and without enhance-
ments, τ =50

reduce fluctuation and, eventually, to meet the PLR requirement. However, too
high values of l increase resource consumption, as they introduce an additional
delay before removing reservations. So, to meet the PLR requirement, both en-
hancements should be used, while the actual value of l should be chosen, de-
pending on τ and h values. For example, in the considered scenario with τ = 50
and h = 300, we can choose l = 10.

4.4 Adaptive selection of protection type


The results obtained in Section 4.3 also show that in case of high interference
the usage of one-hop protection leads to high resource consumption. Indeed, the
mean probability of successful transmission in each reservation with one-hop
protection is very low (approximately 0.5), which forces us to establish at least
7 reservations to meet the PLR requirement. To decrease resource consumption,
in Section 3.5 we propose the procedure which adaptively selects protection type
C D

A B
Fig. 6. Network scenario considered in Section 4.4.

(one-hop or two-hop) for the established reservations, taking into account the
current channel conditions.
To obtain more tractable results and to evaluate the efficiency of the adaptive
procedure, let us consider a simpler scenario than in Section 4.3, shown in Fig.
6. As before, during the ns-3 experiment station A transmits a voice stream to
station B with a fixed number of reservations with either one-hop or two-hop
protection. Station C periodically (with a fixed period T0 ) starts transmission of
saturated EDCA traffic to station D (e.g., initiates a TCP session) which lasts
for σT0 , σ ∈ [0, 1]. The transmission of station C causes interference at station B.
Also during the whole experiment packet transmissions are affected by random
noise of a fixed level. Summing up, packet transmissions between stations A and
B are affected by both random noise and interference from station C during σT0
subinterval, and by random noise only during (1 − σ)T0 subinterval.
In the scenario described above, we compare the efficiency of our method
when for the established reservations the protection type is: i) only one-hop, ii)
only two-hop, iii) chosen adaptively, as defined in Section 3.5. The results are
presented in Fig.7. As the PLR requirement is always met and the fluctuation
is relatively low for all σ values, we omit QV R and F A plots.
Let us explain the obtained results. When transmissions in the established
reservations are affected by random noise only (σ = 0), the average number
of reservations established by our method is 1.6 regardless of the used type of
protection (one-hop or two-hop). However, the cost of reservations with two-hop
protection is 4 times greater than that with one-hop, so it is inefficient to use
two-hop protection in this case.
When reservations are affected by both random noise and interference (σ =
1), the usage of only one-hop protection leads to high resource consumption, as
the probability of successful transmission in reservations with one-hop protection
is very low. Two-hop protection allows to eliminate interference, so the average
number of reservations with two-hop protection established by our method is
the same as in case of σ = 0.
With adaptive selection of protection type in case of σ = 1, our method on
average establishes 1 reservation with two-hop protection and 1.3 reservations
with one-hop protection, which results in a lower cost comparing with non-
adaptive schemes. Moreover, for all σ values adaptive selection of protection type
● one−hop
two−hop
adaptive

10

8

MCR
6


2

0.0 0.2 0.4 0.6 0.8 1.0

sigma

Fig. 7. Channel resource consumption vs. σ, τ = 50, h = 300, l = 5

provides the lowest resource consumption, comparing with a fixed protection


type, which, in turn, proves the adaptive selection efficiency.

5 Conclusion
The method proposed in this paper allows to use MCCA for streaming real-time
multimedia data with parameterized QoS support in presence of random noise
and interference dynamically changing over time. Numerous experiments show
that the method is robust in a vast range of scenarios. Apart from providing
QoS support, the method minimizes channel resource consumption, taking into
account the dynamic properties of the channel inherent to the real-life Wi-Fi
Mesh networks, which, in turn, increases network capacity. It worth to note
that the proposed method can be also applied with other technologies which use
deterministic access methods to reserve channel resources, e.g. with ECMA 368
DRP.
Although the presented method is developed for the case of transmission of
CBR streams, it can be extended for VBR streams (e.g. real-time video stream-
ing). For that, in addition to estimation of channel conditions the statistical
model should be able to estimate the incoming packet rate. This will be the
direction of our future research.

Acknowledgement
The reported study was partially supported by the Ministry of education and
science of Russian Federation, (research project No. 8766), by RFBR (research
project No. 12-07-33067 mol a ved) and by FP7 FLAVIA project (No. FP7-
257263).

References
1. IEEE 802.11s-2011: IEEE Standard for Information technology – Telecommunica-
tions and information exchange between systems -– Local and metropolitan area
networks — Specific requirements — Part 11: Wireless LAN Medium Access Con-
trol (MAC) and Physical Layer (PHY) specifications Amendment: Mesh Network-
ing, 2011
2. Lyakhov A., Pustogarov I., Safonov A., and Yakimov M.: Starvation effect study in
IEEE 802.11 mesh networks. In Proceedings of Third IEEE International Work-
shop on Enabling Technologies and Standards for Wireless Mesh Networking
(MeshTech’09), Macao SAR, P.R. China (2009)
3. C. Cicconetti, L. Lenzini, E. Mingozzi: Scheduling and Dynamic Relocation for IEEE
802.11s Mesh Deterministic Access. In Proceedings of 5th Annual IEEE Commu-
nications Society Conference on Sensor, Mesh and Ad Hoc Communications and
Networks (SECON’08), 19–27, California, USA (2008)
4. A. Krasilov, A. Lyakhov, A. Safonov: Interference, even with MCCA channel access
method in IEEE 802.11s mesh networks. In Proceedings of IEEE Eighth Interna-
tional Conference on Mobile Ad-Hoc and Sensor Systems (MASS’2011), 752–757.
Valencia, Spain (2011)
5. E. Khorov, A. Lyakhov, A. Safonov: Flexibility of Routing Framework Architecture
in IEEE 802.11 s Mesh Networks. In Proceedings of IEEE Eighth International Con-
ference on Mobile Ad-Hoc and Sensor Systems (MASS’2011), 777—782. Valencia,
Spain (2011)
6. E. Shvets, A. Lyakhov: Mathematical model of MCCA-based streaming process in
mesh networks in the presence of noise. In Proceedings of Wireless Communications
and Networking Conference (WCNC’2012), 1887–1892 (2012)
7. X. Yu, P. Navaratnam, K. Moessner: Resource Reservation Schemes for IEEE
802.11-Based Wireless Networks: A Survey. IEEE Communications Surveys & Tu-
torials, Issue 99, 1–20 (2012)
8. ECMA: High Rate Ultra Wideband PHY and MAC Standard, ECMA-368, Decem-
ber 2007
9. IEEE 802.11-2007: IEEE Standard for Information technology – Telecommunica-
tions and information exchange between systems – Local and metropolitan area
networks – Specific requirements – Part 11: Wireless LAN Medium Access Control
(MAC) and Physical Layer (PHY) Specifications, 2007
10. G. Boggia, P. Camarda, L. Grieco, S. Mascolo: Feedback-Based Control for Pro-
viding Real-Time Services With the 802.11e MAC. IEEE/ACM Transactions on
Networking, vol. 15, no. 2, 323–333 (2007)
11. D. Skyrianoglou, N. Passas, and A.K. Salkintzis: ARROW: An Efficient Traffic
Scheduling Algorithm for IEEE 802.11e HCCA. IEEE Transactions on Wireless
Communications, vol. 5, no. 12, 3558–3567 (2006)
12. W.-K. Kuo, C.-Y. Wu: Supporting Real-Time VBR Video Transport on WiMedia-
Based Wireless Personal Area Networks. IEEE Transactions on Vehicular Technol-
ogy, vol. 58, issue 4, 1965–1971 (2009)
13. M. Daneshi J. Pan, S. Ganti: Towards an Efficient Reservation Algorithm for Dis-
tributed Reservation Protocols. In Proceedings of the 29th conference on Informa-
tion communications (INFOCOM’10), 1855–1863 (2010)
14. E. Shvets, A. Lyakhov, A. Safonov, and E. Khorov: Analytical model of IEEE
802.11s MCCA-based streaming in the presence of noise. SIGMETRICS Perform.
Eval. Rev. 39, 2, September 2011, 38–40
15. FLAVIA: FLexible Architecture for Virtualizable future wireless Internet Access,
FP7 research project. [Online]: http://www.ict-flavia.eu/
16. I.A. Ibragimov: Maximum-likelihood method. Encyclopedia of Mathematics. ISBN
1-4020-0198-3
17. The ns-3 network simulator. [Online]: http://www.nsnam.org/
18. ITU-T: Recommendation G.729 Coding of speech at 8 kbit/s using conjugate-
structure algebraic-code-excited linear prediction (CSACELP). Tech. rep., January
2007
19. The R Project for Statistical Computing. [Online]: http://www.r-project.org/

You might also like