Measuring gains from trade and an application to fair allocation
Proportionally Fair Resource Allocation in Multi-Rate WLANs
-
Upload
khangminh22 -
Category
Documents
-
view
0 -
download
0
Transcript of Proportionally Fair Resource Allocation in Multi-Rate WLANs
Proportionally Fair Resource Allocation
in Multi-Rate WLANs
Submitted in partial fulfillment of the requirements
of the degree of
Master of Technology
in
Communication and Signal Processing
by
Jaya Prakash Varma Champati
Roll No: 08307025
under the guidance of
Prof. Prasanna Chaporkar
Department of Electrical Engineering
Indian Institute of Technology, Bombay
2010
Dissertation aprroval
This dissertation entitled Proportionally Fair Resource Allocation in Multi-Rate WLANs
by Jaya Prakash Varma Champati is approved for the degree of Master of Technology.
Examiners
Supervisor
Chairman
Date:
Place:
Declaration
I declare that this written submission represents my ideas in my own words and where
others ideas or words have been included, I have adequately cited and referenced the orig-
inal sources. I also declare that I have adhered to all principles of academic honesty and
integrity and have not misrepresented or fabricated or falsified any idea/data/fact/source
in my submission. I understand that any violation of the above will be cause for disci-
plinary action by the Institute and can also evoke penal action from the sources which
have thus not been properly cited or from whom proper permission has not been taken
when needed.
Jaya Prakash Varma Champati
08307025
Acknowledgment
I would like to thank my guide, Prof. Prasanna Chaporkar for his valuable guidance,
support, encouragement and patience during the work.
I am thankful to Bharti Centre for Communications for providing me with all
the resources that are necessary for doing my project.
I would like to thank my friend, Sundaresan Krishnan for his valuable help while
doing this project. Finally, I am thankful to all my friends who helped and supported me
in completeing this project.
Jaya Prakash Varma Champati
iii
Contents
1 Introduction 1
1.1 Distributed Coordination Function (DCF) . . . . . . . . . . . . . . . . . . 1
1.2 Rate adaptation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Related work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.5 Our contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.6 Organization of the report . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Literature survey 5
2.1 ARF and its variants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 ARF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.2 Adaptive Auto Rate Fallback (AARF) . . . . . . . . . . . . . . . . 6
2.1.3 Closed-Loop Adaptive Rate Allocation (CLARA) . . . . . . . . . . 6
2.1.4 Loss Differentiation-ARF . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.5 Adaptive Multi-rate Auto Rate Fall Back (AMARF) . . . . . . . . 7
2.1.6 Collision Aware Rate Adaptation (CARA) . . . . . . . . . . . . . . 7
2.2 Received-Based Auto Rate protocol(RBAR) . . . . . . . . . . . . . . . . . 8
2.3 Rate adaptation in competitive scenario . . . . . . . . . . . . . . . . . . . 8
3 Loss Differentiation Techniques 11
3.1 Partial Loss Differentiation (PLD) . . . . . . . . . . . . . . . . . . . . . . . 11
3.2 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4 System model 14
4.1 Channel Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.2 Distributed Coordination Function . . . . . . . . . . . . . . . . . . . . . . 15
iv
5 Throughput Analysis and Problem Formulation 17
5.1 System Throughput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.2 Problem Formulation and Preliminary Results . . . . . . . . . . . . . . . . 20
6 Algorithms 24
6.1 Centralized Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.2 Distributed Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7 Simulation results 34
8 Conclusions and Future work 36
v
List of Figures
3.1 Throughput performance of rate adaptation algorithms using different loss
differentiation techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.1 Comparison of the error plots. Lines indicate ns-3 plots and points indicate
the function 1 − ei(r) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
vi
Abstract
Since IEEE has standardized 802.11 protocol for WLANs, significant work has been done
in developing rate adaptation algorithms. Most of the rate adaptation algorithms pro-
posed till now are heuristic, suboptimal and are competitive in nature. Even though these
algorithms have advantage of implementing in distributed fashion, their throughput per-
formance will be low as these schemes may converge to inefficient Nash equilibrium [1].
On the other hand users may cooperatively choose their rates so that a social optimum
can be achieved, but there are no known algorithms that do rate adaptation cooperatively
and still be implemented in a distributed fashion. In this paper, we aim at designing a
distributed algorithm that achieves a social optimum (by doing rate adaptation coopera-
tively) while guaranteeing proportional fairness. We also propose an efficient centralized
algorithm which serves the same purpose as the distributed algorithm.
vii
Chapter 1
Introduction
IEEE 802.11 [2] based Wireless Local Area Networks (WLANs) have emerged as the most
favoured access technology. WLANs provide wide range of applications, which include
enterprise applications, warehouse management and usage in academia. Major factors of
concern in a WLAN are security, reliability, range and speed. In this report we will be
considering aspects regarding speed of an infra-structured WLAN, where all the stations
will be communicating with a centralized access point. The speed is measured in terms
of system throughput, which is defined as the number of bits transmitted successfully per
unit time. Two key parts of IEEE 802.11 MAC that affects the throughput performance
are (a) distributed coordination function (DCF) and (b) rate adaptation scheme. These
are described briefly in the following sections.
1.1 Distributed Coordination Function (DCF)
The channel contention problem in a WLAN system is dealt by the DCF. It provides
random back-off algorithm to control the channel contention problem. In random back-
off algorithm a user chooses a back-off time from a contention window. It transmits data
when ever the back-off time counts down to zero. If it faces a collision, retransmission
of the data is deferred by choosing back-off time from a larger contention window. This
reduces the user’s channel access probability while improving it’s odds against collision.
One may tune DCF to improve the throughput performance, but it is time critical and is
typically implemented in hardware.
1
1.2 Rate adaptation
IEEE 802.11 standard provides flexibility of choosing multiple transmission rates by em-
ploying different modulation and channel coding schemes. For example, 802.11a [3] PHY
(physical layer) supports eight PHY rates, 6Mbps to 54Mbps at the 5GHz band. Similarly,
802.11b [4] and 802.11n provides 4 data rates and 20 data rates respectively at the 2.4GHz
band. This provides an avenue for improving throughput performance through appropri-
ate rate adaptation. We may choose higher data rate for achieving higher throughput
but it is counter acted by Packet Error Probability(PEP). Hence higher data rates can be
chosen only when PEP is low(i.e. SNR of the channel is high) and vice-versa. This tech-
nique of choosing rates of transmission that best fits the present channel conditions for
achieving higher throughputs is called rate adaptation. Rate adaptation is implemented
in software and can be easily modified. Hence, in this report, we aim at designing an
optimal rate adaptation scheme.
1.3 Motivation
Good design of a rate adaptation scheme is critical as the system throughput can be
lesser with a naive rate adaptation scheme than that when all users use the same fixed
rate, i.e. users do not perform rate adaptation [5]. This is mainly because users with
poor channel conditions use low rates and hence occupy the system resources for most
of the time. Thus, the system throughput is determined by the users with low SNR.
This is clearly undesirable. To counter this, one can design a rate adaptation scheme
to maximize the system throughput. But, such schemes allocate most of the resources
to the users with high SNR and starve the users with low SNR. Thus, these schemes
are also undesirable. Hence, one should aim for rate adaptation schemes that strike
good balance between throughput improvement and fairness. Kelly has shown that such
balance can be achieved by designing proportionally fair schemes [5]. In this report,
our main contribution is to design proportionally fair rate adaptation scheme that can be
implemented in the distributed fashion. Next, we briefly discuss the related work.
2
1.4 Related work
Initial effort in designing rate adaptation schemes has been to track the channel so as to
choose the largest rate for which the PEP is negligible. The channel condition is deter-
mined by the consecutive successes or the failures of past transmissions, e.g. see Auto
Rate Fallback (ARF) [6]. These schemes fail to track the channel accurately as they
treat transmission failures due to collisions also as the channel errors. Thus, these rate
adaptation schemes are pessimistic and result in poor system throughput. To alleviate
this limitation, schemes with loss differentiation have been developed, e.g. see [7], [8], [9].
Typically, these schemes use RTS/CTS exchange. Now, RTS failures are treated as col-
lisions, and only no ACK after successful RTS/CTS exchange is treated as loss due to
channel errors. These schemes provide much higher throughput than that of schemes
without loss differentiation. But, the schemes discussed until now are only heuristic and
are suboptimal as they do not strike the optimal trade-off between rate selection and its
corresponding PEP. Also, notice that these schemes are competitive in a sense that each
user is trying to choose a rate that is well suited for him without considering effect of his
choice on others. The system loss due to the greedy choice by each user has not been
quantified in these papers.
Recently, there has been some work towards designing provably optimal rate adapta-
tion schemes [10, 1]. This body of work typically assumes that the channel is slow fading
and links’ SNR measurements are known at the transmitters. In spite of these simplifica-
tions, the problem remains challenging mainly on account of complex interaction between
DCF and rate adaptation schemes of different users. In [1], authors have explored opti-
mal competitive and co-operative schemes. Here, authors have shown that the cooperative
schemes achieve much larger system throughput than that by competitive schemes. This
is because competitive schemes may converge to inefficient Nash equilibrium. Thus, for
optimal performance, it is imperative to design optimal cooperative strategies. We note
that [1] only provides the structural properties of the Pareto optimal cooperative strategy
and does not give explicit algorithm for its computation. To the best of our knowledge,
no known algorithm does rate adaptation cooperatively and can still be implemented in
distributed fashion to achieve a social optimum.
3
1.5 Our contributions
The main contributions of our work are:
1. We propose and evaluate a variant of loss differentiation technique called Partial
Loss Differentiation(PLD).
2. We propose a modified error function (compared to that used in literature) that
best approximates the channel error model used in practice.
3. We derive an expression for per user throughput in a generalized case, where all the
users have different channel conditions and use different transmission rates.
4. We propose an efficient centralized algorithm that does rate adaptation coopera-
tively and achieves optimally fair throughput allocation.
5. We propose a distributed algorithm which also does rate adaptation cooperatively
and achieves optimally fair throughput allocation.
1.6 Organization of the report
The rest of the report is organized as follows: Chapter 2 briefly discusses about the existing
rate adaptation algorithms. In Chapter 3 we propose a variant of loss differentiation
technique called partial loss differentiation. Using simulation results we compare the
throughput performance of rate adaptation algorithms when different loss differentiation
techniques are used. In Chapter 4 we present our system model. Chapter 5 provides
derivation of throughput expression for the scenario where users have differnt channel
conditions and use different rates of transmission. In Chapter 6 we presents our main
results. We propose both centralized and distributed algorithms doing rate adaptation
cooperatively while providing proportional fairness. We also provide guaratees on their
convergence. In Chapter 7 simulation results are presented. Finally, we present our
conclusions and future work in Chapter 8.
4
Chapter 2
Literature survey
In literature, there are numerous rate adaptation algorithms proposed. Here, we present
few of them. //
2.1 ARF and its variants
Auto Rate Fallback (ARF) is the most popular and commercially implemented rate adap-
tation algorithm. It is developed by Lucent for its WaveLAN-II WLAN product [6]. In
the following sections we discuss about ARF and some of it’s variants that were proposed
to improve the throughput performance of ARF.
2.1.1 ARF
ARF is designed for adapting rates between 1 Mbps and 2 Mbps. In ARF, the channel
estimation is done by counting the number of consecutive transmission failures and con-
secutive successful transmissions. The sender will decrease his rate of transmission if the
consecutive transmission failures count is 2 and increases his rate of transmission if the
consecutive successful transmissions count (success threshold) is 10 or a timeout happens.
Ideally, only transmission failures due to channel errors have to be taken into account to
estimate the channel condition. But, ARF considers transmission failures due to collisions
also to be transmission failures due to channel errors. This makes ARF ineffective when
failures are largely due to collisions(i.e. when the number of active stations are high).
Decreasing rates due to collisions will in turn increase the collision period leading to a
decrease in the throughput. Next, we discuss some of it’s variants.
5
2.1.2 Adaptive Auto Rate Fallback (AARF)
Unlike ARF, the success threshold value in Adaptive Auto Rate Fallback (AARF) [11]
continuously changes at runtime. When the success threshold is reached, a probing frame
is transmitted at a higher data rate and if it fails, the data rate is switched back imme-
diately and the success threshold is doubled. The threshold is reset to its initial value
of 10 when the rate is decreased because of 2 consecutive failed transmissions. In this
way,the authors claimed that it works better in a high latency system. However, AARF
still cannot solve the collision problem. To make matter even worse than ARF, when a
failed transmission is caused by collision, a doubled success threshold can further reduce
the chance of using an appropriate rate.
2.1.3 Closed-Loop Adaptive Rate Allocation (CLARA)
In Closed-Loop Adaptive Rate Allocation (CLARA) [7], collisions are differentiated from
channel errors using RTS/CTS exchange. If an RTS/CTS exchange is successful, the
consequent data loss is very likely due to channel error. On the otherhand, if RTS/CTS
exchange fails, it is very likely a collision has occurred. This technique is called Loss
Differentiation [12]. Even though it has the advantage of differentiating the losses, the
added overhead of RTS/CTS packets (which are transmitted at the basic rate) might
significantly reduce the throughput. A frame size threshold is considered in [7] to decide
whether or not to invoke RTS/CTS. However, as shown in [7], the threshold is quite
sensitive to the number of contending stations and channel condition, which may be highly
variable in practice, and a practical way to find the threshold has not been provided in [7].
Moreover, even if the threshold is known, when the data frame size is shorter than the
threshold the ability to differentiate losses using RTS/CTS is bypassed. Thus the collision
issue in the rate adaptation is not solved thoroughly by CLARA.
2.1.4 Loss Differentiation-ARF
In Loss Differentiation-ARF (LD-ARF) [8], loss Differentiaiotn is done in ARF using
Basic Access mechanism and with slight modifications to the 802.11 standard. This will
overcome the drawbacks of ARF in many scenarios. But, when ever channel is bad (SNR
is low) or the packet lengths are high this algorithm performs poorly because, whether
6
it is a collision or error the same amount of time (packet transmission time) is wasted
always. In addition to this if there are hidden nodes, then there will be severe degradation
in it’s performance.
2.1.5 Adaptive Multi-rate Auto Rate Fall Back (AMARF)
The authors in [13] have extended the idea of ARF3-10 [14] in which the success threshold
in ARF is adaptively changed. When the channel is slow varying a success threshold of
10 is chosen and when the channel is fast varying a success threshold of 3 is chosen. In
Adaptive Multi-rate Auto Rate Fallback (AMARF) [13] each data rate is assigned a unique
success threshold and the thresholds are changed adaptively according to the channel
conditions. Using simulations, authors in [13] have shown that AMARF outperforms
ARF. As loss differentiation is not considered in this algorithm, it still suffers from collision
problem.
2.1.6 Collision Aware Rate Adaptation (CARA)
Collision Aware Rate Adaptation (CARA) [9] is one of the variants of ARF. In CARA, a
station implements ARF using Basic Access mechanism until a transmission failure occurs.
When a failure happens RTS/CTS exchange is enabled to do loss differentiation [12].The
algorithm resets to Basic Access mechanism when a successful transmission happens. It
does partial loss differentiation based on the result of the previous transmission. CARA
has the inherited advantages of ARF, loss differentiation by RTS/CTS mechanism and
also reduced overhead of RTS/CTS packets.
Observe that, all the rate adaptation algorithms discussed till now are heuristic in
nature. They are sub-optimal, as they just try to adapt to rate at which the probability
of channel error is negligible. Also, these algorithms are competitive as the users imple-
menting these schemes do rate adaptation independently, choosing rates for their own
benifit. In the next section we present Receiver-Based Auto Rate Procol (RBAR), which
is idealistic but not practical.
7
2.2 Received-Based Auto Rate protocol(RBAR)
The algorithms discussed till now are open-loop algorithms in the sense that the chan-
nel estimation is solely done at the sender and no feedback information regarding chan-
nel condition is provided by the receiver. In contrast, the (Receiver-Based Auto Rate)
RBAR scheme [15] performs rate adaptation at the receiver. RBAR mandates the use of
RTS/CTS mechanism. On receiving an RTS frame, the receiver calculates the transmis-
sion rate to be used by the sender based on the SNR of the received RTS frame and on
a set of SNR thresholds calculated from a predefined wireless channel model. The rate
to be used to send the data frame is then returned to the sender in the CTS frame. The
RTS, CTS and data frames are modified to include information on the size and rate of the
data frame transmission to allow all the nodes within the transmission range to correctly
update their Network Allocation Vector (NAV). The drawbacks of RBAR are: First, the
RTS/CTS access procedure is always required, which incurs extra overhead. Secondly, it
requires a priori knowledge of the channel model to calculate the SNR thresholds and the
measurement of SNR may not be easy to realize in low cost WLAN devices.
2.3 Rate adaptation in competitive scenario
In [1] authors have studied the cross-layer interaction between DCF and rate adaptation.
They analytically formulated this problem for both the access mechanisms in a competitive
scenario. They propose to choose rates based on the back-off stage of the user. The set of
rates assigned to be used in different back-off stages is named as rate adaptation strategy.
The aim of the authors in [1] is to find the optimal rate adaptation strategy. The idea
for choosing rates based on back-off stages is that, if a user is in a lower back-off-stage he
can afford to try to transmit at a higher rate because even if he fails he gets a chance to
transmit with in small amount of time. But, if he is in a higher back-off stage he can not
take chance in transmitting the packet at higher data rate (making it sensitive to channel
errors) as he rarely gets chance to transmit. Thus the authors in [1] tried to minimize
the expected time between successful transmissions for each user based on the channel
conditions he observes.
Also, optimal rate adaptation strategy in a cooperative scenario is characterized. The
authors have shown that the throughput achieved in a cooperative scenario is much higher
8
compared to that in competitive scenario because, in a competitive scenario the system
may evolve in to inefficient Nash Equilibrium. The difference in the throughput perfor-
mance between the social optimum and the inefficient Nash Equlibria is called price of
anarchy.
ROCE : Return to zero On Channel Error. The authors in [1] proposed this as a new
way of reacting to channel errors. They have showed that ROCE decreases the price of
anarchy. ROCE is same as WLD except that, when ever a channel error occurs back-off
stage is reset to zero. The main advantage of ROCE is, it’s ease of analytical analysis.
The average probability of transmission of a station in a generic slot time is independent
of rate of transmission, in ROCE. Because, whether the transmission is in error or not
the station returns to 0 back-off stage with a probability that is independent of the error
probability. Hence, in our system model we assume that all the stations use ROCE. This
makes our throughput analysis simpler even for the complicated scenario considered.
We make a note that, even though the authors have characterized the optimal rate
adaptation strategy in a cooperative scenario, they have not provided an explicit algorithm
that achieves this social optimum in a distributed fashion.
We now discuss about achieving fairness in a multi rate wireless LAN. In literature
researchers have concluded that the standard 802.11 multi-access protocol achieves max-
min fiarness (in terms of channel access probabilty), see [16, 17]. Eventhough this is good
in terms of fairness, it has a severe impact on the system throughput as users with lower
data rates occupy channel for longer time. Hence, proportional fairness has been consid-
ered to strike a balance between fairness and efficiency (maximize system throughput).
Authors in [16] have proved that proportional fairness can be achieved by allowing the
users to get equal air-time (i.e. duration of channel usage) usage of the channel. To do
this, they propose two different approaches. One is to adjust channel access probabilities
by adjusting CWmin (minimum contention window size) and the other is to use equal
TXOP length for each user. In [18] authors have proposed a general framework, where
the criterion for proportional fairness is maximizing the logarithm of channel allocation
rate which also leads to a similar solution as in [16]. All these approaches need to tune
DCF. In contrast to this, our work focuses on achieving proportional fairness by adjusting
the bit rate transmission of the users. Our approach is easier in terms of implementation
as rate adaptaion is done in software where as DCF is implemented in hardware.
9
Also, in literature researchers have proposed a general approach to achieve an objective
cooperatively by maximizing a network utility function, see [19, 20]. They have designed
abstract algorithms to achieve the objective. But, their basic assumption is that the
network utility functions assigned to the users are concave. In our work, we prove that
the netwok utility function that we have chosen is concave and provide both centralized
and distributed algorithm for the case of wireless LAN.
Finally, we make a note that, proportional fiarness is addressed in case of wireless
networks and is solved using different criteria, see [21, 22], but to the best of our knowledge
we are the first to address the problem of achieving proportional fiarness in a wireless LAN
by doing rate adaptation.
10
Chapter 3
Loss Differentiation Techniques
In this chapter we discuss about different loss differentiation techniques and propose
partial loss differentiation which a variant of existing loss differentiation techniques.
3.1 Partial Loss Differentiation (PLD)
In general, any rate adaptation algorithm based on ACKs received, increases or decreases
rate based on the consecutive ACK count. Rate is increased if Ns consecutive successful
transmissions happen. While decreasing the rate, different rate adaptation algorithms
follow different methods. This is where loss differentiation techniques are used. They are:
1. WoLD : With out Loss Differentiation. Transmission failures can be due to channel
errors or collisions. In WoLD, transmission failures can not be differentiated. Hence,
all the algorithms doing WoLD treat transmission failures due to collisions to be
transmission failures due to channel errors. They increase both back-off stage and
failure count irrespective of what caused the transmission failure.
2. WLD : With Loss Differentiation. In WLD, collisions and channel errors can be
identified when a transmission failure happens. This can be done in two ways:
(a) Using RTS/CTS exchange. The authors in [12] claim that if an RTS/CTS ex-
change is successful, then there is no possibility for collision, hence the trans-
mission failure may happen only due to channel error. If the RTS/CTS ex-
change itself fails, it is claimed to be due to collision. This is because RTS
and CTS packets are less prone to channel errors as they are of small size and
11
are transmitted at a basic data rate. In WLD back-off stage is increased only
when collisions occur and transmission failures are counted only when channel
errors occur.
(b) Using Basic Access mechanism and with slight modifications to the 802.11
standard. The authors in [8] suggests that when ever a data packet is trans-
mitted the MAC header (due to its small size) can be received correctly even
if the body is corrupted by channel errors. If MAC header is also corrupted,
then it can be treated as collision. They propose that no ACK, can be treated
as collision. For the transmitter to know whether the packet is in error, the
receiver should check HEC (Header Error check) and send a NACK (Not Ac-
knowledged) if MAC is received properly and the body is in error. HEC and
NACK are the modification to be done to the original standard.
In this report unless otherwise specified loss differentiation by default refers to
loss differentiation using RTS/CTS exchange.
3. PLD : Partial Loss Differentiation. As the name suggests, loss differentiation or no
loss differentiation is done dynamically. For the next transmission, whether to do
loss differentiation or not is decided based on a criteria. The criteria we propose
here is simple, given a set of data rates R, choose an appropriate rate threshold
rth. If the transmission rate selected by a rate adaptation algorithm is below rth
then activate RTS/CTS exchange to do loss differentiation. Otherwise, transmit
the packet using Basic Access mechanism, without any loss differentiation. We can
make the rate adaptation algorithm to follow pure WoLD or pure WLD by choosing
very low rate threshold or very high rate threshold respectively. PLD based on the
rate of transmission is a simple enhancing feature that can be applied to most of
the rate adaptation algorithms proposed.
The main issue in PLD based on rate of transmission is choosing the rate threshold
rth. For IEEE 802.11a standard, based on simulation results we suggest that, doing
no loss differentiation above 36 Mbps (in general) and vice-versa will provide us
better throughputs for most of the algorithms.
In literature, the other rate adaptation algorithm that does parial loss differentiation
is CARA [9]. In CARA, the criteria is to do loss differentiation based the result of
12
the previous transmission. By default it does no loss differentiation. When ever an
error occurs, in the next transmission, loss differentiation using RTS/CTS exchange
is enabled.
Next, using simulation results, we present comparison between rate adaptation al-
gorithms using different loss differentiation techniques.
The simulation results presented in Fig. 3.1 are obtained using discrete event simulation
in C++. It compares the throughput performance of ARF, ARF using WLD (CLARA),
CARA, ARF using PLD and ROCE in competitive scenario [1].
0
500000
1e+06
1.5e+06
2e+06
2.5e+06
0 5 10 15 20 25 30 35 40 45
Ave
rage
Thr
ough
put(
bits
/sec
)
SNR(dB)
Number of stations = 10, Packet length = 8400 bits
ARFCLARA
CARAARF_PLD
ROCE
Figure 3.1: Throughput performance of rate adaptation algorithms using different loss
differentiation techniques.
3.2 Conclusions
From the discussion of different loss differentiation techniques and the simulation results
given in Fig. 3.1 we arrive at the following conclusions.
1. Algorithms doing loss differentiation perform far better than those doing no loss
differentiation. Hence, loss differentiation should be done.
2. Algorithms using PLD doesn’t provide significant improvement in throughput per-
formance.
3. ROCE in competitive scenario performs better or atleast equally well, compared to
other schemes.
13
Chapter 4
System model
In this cahpter we will go through the system model we have considered for our throughput
analysis.// We consider an infra-structure based network with N contending users, each
implementing IEEE 802.11 protocol. We assume that users can sense transmissions from
all the other users (required for CSMA/CA), i.e. the network is fully connected and
does not have hidden terminals. We note that analyzing the performance of IEEE 802.11
DCF in networks with hidden terminals is still an open problem even when all users have
the same channel conditions and use the same transmission rate. Moreover, in practice,
since sensing range is twice that of transmission range, network is unlikely to have hidden
terminals. We assume saturated system, i.e., users always have a packet to transmit. Let
Li be the mean packet length of the user i. The transmission rate of user i is denoted
by ri. Let R denote the set of all possible values of ri. For example, 802.11a [3] PHY
(physical layer) supports eight PHY rates between 6Mbps and 54Mbps in the 5GHz band.
Also, 802.11b [4] and 802.11n provides 4 and 20 data rates respectively in the 2.4GHz
band. Though in practice R contains finite elements, for analysis we allow R = ℜ+,
where ℜ+ is the set of positive real numbers. We relax this assumption in simulations.
Now, define rate vector r = ri : i ǫ 1, 2, . . . , N. The goal of rate adaptation scheme is
to choose optimal r. Next, we explain key items of our system model.
4.1 Channel Errors
We assume that the channels are slow fading. This assumption is valid in high latency
(low mobility) systems such as a WLAN in a workplace. Let ei(r) denote PEP for user i
14
for transmission rate r. We propose to use the following function:
ei(r) = 1(r≥ci)(1 − e−(r−ci)/si), (4.1)
where 1A is the indicator of event A, ci and si are functions of user i’s SNR. We consider
ci = k1SNRi and si = k2 log(SNRi) where, k1 and k2 are constants and SNRi is the ab-
solute value of the SNR of the ith user. Similar channel error models have been considered
before [1]. For verifying our channel error model, we compare PEP obtained under our
model with that under ns-3. We note that for k1 = 2.5× 106, k2 = 2× 106 and Li = 1500
bytes PEP in our case closely approximates that in ns-3 (see Fig. 4.1).
0
0.2
0.4
0.6
0.8
1
0 5 10 15 20
Prob
abili
ty o
f Su
cces
s
SNR(dB)
12 Mbps12 Mbps24 Mbps24 Mbps48 Mbps48 Mbps
Figure 4.1: Comparison of the error plots. Lines indicate ns-3 plots and points indicate
the function 1 − ei(r)
4.2 Distributed Coordination Function
Regarding DCF, we assume the standard binary exponential back-off (with minimum and
maximum window size W and 2MW , respectively) enhanced with return to 0 on channel
error (ROCE) loss differentiation scheme. ROCE has been proposed in [23, 1]. Under
ROCE, the back-off stage is incremented on collisions, but the back-off stage is reset to 0
on channel error. The logic behind ROCE is that the increments in the back-off stage is to
cooperatively reduce the collision probability by reducing the attempt probability of the
colliding users. But, in case of channel errors there is no channel contention, and hence
increasing the back-off stage is not warranted. There are other loss differentiation schemes
15
available in literature, e.g., a loss differentiation scheme that increaments back-off stage on
collision, but keeps the same back-off stage on channel error [7, 8]. The key reason of our
choice of ROCE is that it is shown to provide better or at least comparable performance
as that of other loss differentiation schemes [7, 8, 9]. Also, as we will demonstrate, ROCE
decouples DCF and rate adaptation functionalities in a sense that DCF remains unaffected
by the transmission rates chosen by the users. This property of ROCE aids in analysis.
Note that loss differentiation mandates RTS/CTS exchange. Let Trts denote the duration
for RTS/CTS exchange.
16
Chapter 5
Throughput Analysis and Problem
Formulation
Here, we first obtain throughput φi(r) for every i, and subsequently describe our problem
formulation.
5.1 System Throughput
The derivation of the system throughput in our system is similar to that by Bianchi in
his seminal work [24]. Key difference is that Bianchi has not considered rate adaptation
and assumed that the transimission is always successful in absence of collision, while in
our case different users may use different transmission rates and transmission may fail on
account of channel errors.
Like in [24], we also assume that the collision probability at each transmission, regard-
less of the back-off stage, remains unchanged. That is each transmission suffers collision
with fixed probability, say c, independent of collisions at other transmission attempts.
With this assumption, we can embbed a discrete time Markov chain (DTMC) in the
back-off process of a user i. The time ticks for the embeded DTMC are the epochs at
which i’s back-off counter changes its value. Time duration between the ticks of the
DTMC are referred to as slot. Slot can either be idle slot, whose duration is a prede-
fined value σ, or a busy slot, whose duration depends on whether there is a collision or
a collision free transmission. In case of collision, the busy slot duration is Trts, the time
required for RTS/CTS exchange; and in case of successful transmission, the duration is
17
Trts + Lj/rj if the transmission is by user j. Typically, the transition probabilities of the
DTMC will depend on rate adaptation scheme, but under ROCE this is not the case [1].
This is because under ROCE, back-off stage is reset to zero on collision free transmission
irrepective of whether it suffered channel error or not. Thus, stationary attempt proba-
bility, say p, and collision probability c for user i are obatained as a unique solution to
the following fixed point equation, which is the same as that in [24].
p =2(1 − 2c)
(1 − 2c)(W + 1) + cW (1 − (2c)N),
c = 1 − (1 − p)N−1.
Using these stationary attempt and collision probabilities, we can now compute the ex-
pected time between two consecutive successful transmissions of user i. This expected
duration is denoted by Si(r).
In a generic slot, a station will transmit with a probability p. Let a station i transmit
after X tries. Then X will be a random variable with geometric distribution given by,
P (X = n) = (1 − p)np.
The expected number of tries after which the station will transmit is, E[X] = (1 − p)/p.
The time wasted during these tries is given by
ξ =1 − p
pζ, (5.1)
where ζ is the expected slot duration when that station is not transmitting. We show it’s
computation a little later.
When the station transits, the transmission might end up in a collision or error. Also,
error occurs only when the transmission is collision free. This is because, when ever
collision happens there is no meaning in checking for errors. Hence, we next estimate the
time wasted due to collisions.
For each transmission failure due to collision, on an average ξ + Trts time is wasted.
When ever a station transmits, collision happens with probability c = 1− (1−p)N−1. Let
Y be the attempt number in which collision free transmission happens. Y is a random
variable with geometric distribution given by,
P (Y = n) = (1 − c)cn−1.
18
Hence, the expected number of transmissions that end up in collisions are E[Y ] − 1 =
11−c
− 1. The time wasted till a collision free transmission is given by,
γ =c
1 − c(ξ + Trts) + ξ. (5.2)
In the model we considered, the probability that a station i will transmits a packet with
out error is given by 1− ei(ri). The average time wasted in each transmission failure due
to error is γ + Lri
+ Trts, which is also the time spent during a successful transmission.
Let Z be the attempt number in which a successful transmission occurs. Z is again a
geometric random variable with the following distribution,
P (Z = n) = [ei(ri)]n−1(1 − ei(ri)).
Hence, the expected number of transmissions that end up in errors are E[Z] − 1 =
11−ei(ri)
− 1. Therefore, for a station i, the expected time for a successful transmission is
given by,
Si(ri) = (1
1 − ei(ri)− 1)[γ +
L
ri
+ Trts] + γ +L
ri
+ Trts
=1
1 − ei(ri)[γ +
L
ri
+ Trts]. (5.3)
Now, we show the computation of ζ. As described earlier ζ is the expected slot duration
given that a station is not transmitting. The remaining N − 1 users will be idle with
probability (1−p)N−1. Probability that a given station will transmit is given by p(1−p)N−2
and the probability that more than one station transmits is given by (1 − (1 − p)N−1 −
(N − 1)p(1 − p)N−2). We now mention the corresponding slot durations. The idle slot
duration is σ. When only station j is transmitting the slot duration will be Lrj
+ Trts for
both successful transmission and transmission failure due to error. When more than one
station is transmitting the slot duration will be Trts. From these observations, we give
the expression for ζ.
ζ = (1 − p)N−1σ +N
∑
j=1j 6=i
p(1 − p)N−2(L
rj
+ Trts)
+ [1 − (1 − p)N−1 − (N − 1)p(1 − p)N−2]Trts (5.4)
Now substituting the equations (5.1), (5.2), (5.4) and c = 1 − (1 − p)N−1 in (5.3) and
simplifying we obtain,
Si(r) =(1 − p)Nσ + p(1 − c)
∑Nj=1
Lj
rj+ (1 − (1 − p)N)Trts
p(1 − c)(1 − ei(ri)).
19
With in Si(r) duration a packet of length Li is transmitted, therefore the throughput of
the user i is given by,
φi(r) = Li/Si(r)
=Lip(1 − c)(1 − ei(ri))
(1 − p)Nσ + p(1 − c)∑N
j=1Li
rj+ (1 − (1 − p)N)Trts
. (5.5)
For brevity, let α = (1−p)Nσ+(1−(1−p)N)Trts, βi = Lip(1−c) and ∆(r) = α+∑N
i=1βi
ri.
Now, by sustituting the expression for ei(ri) (from equation (4.1)) we get,
φi(r) =
βie−(ri−ci)/si
∆(r)if ri > ci,
βi
∆(r)if ri ≤ ci.
(5.6)
The system throughput is given by,
φ(r) =N
∑
i=1
φi(r). (5.7)
Next, we formulate our problem.
5.2 Problem Formulation and Preliminary Results
Our aim is to find proportionally fair rate adaptation scheme. For that let us define the
following utility function:
U(r) =N
∑
i=1
log(φi(r)).
Definition 1. A rate vector r∗ is proportionally fair if U(r∗) ≥ U(r) for every r ∈ ℜ+
N .
Thus, to find proportinally fair rate vector one needs to find arg maxr∈ℜ+
N
U(r). One of
the difficulties in obtaining this solution is that the function φ(r) is not differentiable at
ci. We circumvent this difficulty by noting that for any rate ri chosen by the user i such
that ri ≤ ci, PEP value is equal to zero. Hence, to maximize the utility function, the user
should atleast choose ri = ci (so that in this case the expected slot time ∆(r) will be less
compared to that of ri < ci). Thus, finding arg maxr∈ℜ+
N
U(r) is equivalent to the following
constrained optimization:
maximizer∈ℜ+
NU(r)
subject to ri ≥ ci, ∀ i,
(5.8)
20
where U(r) is obtained by substituting φi(r) for the case of ri ≥ ci (from equation (5.6))
in U(r), i.e.,
U(r) =N
∑
i=1
(log βi − (ri − ci)/si) − N log(∆(r)). (5.9)
Now, we prove some preliminary results.
Lemma 1. The function U(r) is strictly concave.
Proof. Let Ω(r) = −U(r). It suffices to show that Ω(r) is strictly convex. Let D2Ω(r)
denote the hessian of Ω(r). We have,
D2Ω(r) = [Dij], ∀ i, j ǫ 1, 2, . . . , N,
Dii =∂2Ω(r)
∂r2i
=Nβi(2ri∆(r) − βi)
r4i [∆(r)]2
, (5.10)
Dij =∂2Ω(r)
∂ri∂rj
=−Nβiβj
r2i r
2j [∆(r)]2
for j 6= i. (5.11)
We now show that the Hessian, D2[Ω(r)] is a positive definite matrix. Note that it is a
symmetric matix, Dij = Dji. For every non zero vector y, S = yT D2[Ω(r)]y is given by,
S =∑
i
y2i Dii −
∑
i
∑
j 6=i
yiyjDij. (5.12)
Substituting the expressions for Dii and Dij given in (5.10)-(5.11) and letting vi = yi
√N
r2i ∆(r)
,
equation (5.12) yields
S =∑
i
v2i βi(2ri∆(r) − βi) −
∑
i
∑
j 6=i
vivjβiβj
= 2∑
i
v2i ri∆(r)βi −
∑
i
∑
j
vivjβiβj
(expand ∆(r) = α +N
∑
i=1
βi
ri
)
= 2∑
i
v2i riαiβi + 2(
∑
v22riβi)(
∑
j
βj
rj
) − (∑
i
viβi)2
(by Cauchy-Schwarz inequality)
> 2(∑
i
√
v2i riβi
√
βi
ri
) − (∑
i
viβi)2
= 2(∑
i
viβi)2 − (
∑
i
viβi)2
= (∑
i
viβi)2 ≥ 0.
21
Since S = yT D2[Ω(r)]y > 0, we conclude that, Hessian of the function Ω(r) is positive
definite. Also, the domain of the function is convex, as r ǫ ℜN+ where, ℜ+ is set of positive
real numbers. So, the function Ω(r) is strictly convex.
In the following Lemma we provide fixed point solution for the global maximum of
U(r).
Lemma 2. Let r = arg maxr∈ℜN
+
U(r), then
ri =−ηi +
√
η2i + 4αNβisi
2α,
where ηi =∑N
k=1 βk
√
βisi
skβk.
Proof. Since U(r) is strictly concave, it has a unique global maximum. To find the global
maximum, we take the gradient of U(r) and equate it to zero which leads to the following
condition:(r1)
2
s1β1
= . . . =(ri)
2
siβi
= . . . =(rN)2
sNβN
=N
∆(r). (5.13)
From the condition (5.13) we get 1rj
= 1ri
√
siβi
sjβj∀ j. Substitute this for every rj in the
expression ∆(r) = α+∑N
j=1βj
rj. Again using the condition (5.13) we arrive at the following
equation.(ri)
2
siβi
=N
α + 1ri
∑Nj=1 βj
√
βisi
sjβj
=⇒ α(ri)2 + ηiri − Nβisi = 0
=⇒ ri =−ηi ±
√
η2i + 4αNβisi
2α.
Note that√
η2i + 4αNβisi ≥ ηi. Thus, ignoring the negative root, we arrive at the fixed
point solution.
Definition 1 (KKT conditions). KKT conditions for the optimization problem (5.8) are
given below.−1
si
+Nβi
(r∗i )2∆(r∗)
+ λ∗i = 0,
λ∗i (r
∗i − ci) = 0,
λ∗i ≥ 0.
(5.14)
Lemma 3. A rate vector r∗, satisfying the KKT conditions given in Definition 1 is a
global maximum of the optimization problem (5.8).
22
Proof. U(r) is strictly concave and continuously differentiable. Also, the constraints in
the optimization problem (5.8) are concave and continuously differentiable, since they
are linear and increasing functions. Thus, the optimization problem (5.8) is a convex
program. For convex programs KKT conditions are both necessary and sufficient [25].
Hence, the result.
Next, we provide algorithms to compute the optimal rate allocation.
23
Chapter 6
Algorithms
In this chapter we present both centralized and distributed algorithms that aim at com-
puting the rate vector which satisfies Lemma 3.
6.1 Centralized Algorithm
In centralized algorithm, we assume that SNR, and there by ci and si values, for all the
users is known. The Pseudo code for the centralized algorithm is presented in Algorithm 1.
We note that during step 4, if ri ≤ ci ∀ i then, A(0)+ will be an empty set. Further, after
the first iteration if A(1)− becomes an empty set, i.e. after the first iteration if r
(1)i > ci ∀ i,
then in the second iteration steps 8-9 will yield,
r(2)i =
−η(1)i +
√
(η(1)i )2 + 4ν(1)Nβisi
2ν(1),
η(1)i =
N∑
j=1
βj
√
βisi
sjβj
We observe that r(2) is equal to r provided in Lemma 2. Thus r
(2) = r(0) as in the
initalization step 4. Hence, one might suspect oscillations in the algorithm. But, this case
is eliminated by the following Lemma.
Lemma 4. A(1)− won’t be an empty set when A
(0)+ is an empty set .i.e there exists an i
such that r(1)i ≤ ci.
Proof. Since A(0)+ is an empty set, in the first iteration, steps 8-9 and the term
∑
j∈A(0)+
βj
r(1)j
24
Algorithm 1 Centralized Algorithm to solve problem (5.8)
1: if ri ≥ ci ∀ i then
2: r is the optimal solution with all λi = 0. stop.
3: else
4: Initialize k = 0 and r(0)i = ri ∀ i.
5: repeat
6: A(k)− = i : r
(k)i ≤ ci and A
(k)+ = (A
(k)− )c.
7: for all i ∈ A(k)+ do
8: η(k)i =
∑
j∈A(k)+
βj
√
βisi
sjβj,
9: r(k+1)i =
−η(k)i +
r
(η(k)i )2+4(α+
P
j∈A(k)−
βj/cj)Nβisi
2(α+P
j∈A(k)−
βj/cj).
10: end for
11: for all i ∈ A(k)− do
12: ξ(k)i =
∑
j∈A(k)− ,j 6=i
βj/cj +∑
j∈A(k)+
βj/r(k+1)j ,
13: r(k+1)i = max
−βi+
q
β2i +Nξ
(k)i βisi
2ξ(k)i
, ci
14: end for
15: k := k + 1.
16: until r(k) 6= r
(k−1)
17: end if
25
in step 13 are redundant. Now, ∀ i, r(1)i is obtained as a solution to
Nβi
(r(1)i )2(α + βi
r(1)i
+∑
j 6=iβj
cj)
=1
si
. (6.1)
Notice that, LHS in equation (6.1) is a decreasing function of r(1)i .
Let us assume that there exists an i such that r(1)i ≤ ci. Now that r
(1)i ≤ ci and LHS
in equation (6.1) is a decreasing function of r(1)i , the following relation should hold.
1
si
=Nβi
(r(1)i )2(α + βi
r(1)i
+∑
j 6=iβj
cj)≥
Nβi
c2i (α +
∑Nj=1
βj
cj)
(6.2)
From equation (5.13) we have
(ri)2
siβi
=N
α +∑N
j=1βj
rj
=⇒1
si
=Nβi
(ri)2(α + βi
ri+
∑
j 6=iβj
rj). (6.3)
Form equations (6.2) and (6.3) we get,
Nβi
c2i (α +
∑Nj=1
βj
cj)≤
Nβi
(ri)2(α + βi
ri+
∑
j 6=iβj
rj)
=⇒ α((ri)2 − c2
i ) + βi(ri − ci) +∑
j 6=i
(c2i
βj
cj
− (ri)2βj
rj
) ≤ 0. (6.4)
First two terms in (6.4) are less than equal to zero as ri ≤ ci (since r = r(0)). Hence, for
the inequality (6.4) to hold it is sufficient to have c2i
βj
cj− (ri)
2 βj
ri≤ 0 ∀ j. This inequality
holds for an i such that ( ci
ri)2 ≥
cj
rj∀ j. We can always find such an i. Therefore, A
(1)− will
be non-empty.
Definition 2. During the kth iteration of the Algorithm 1, we define the rate vector ρ(k)
as ρ(k)i = r
(k)i , ∀ i ∈ A
(k)+ .
Lemma 5. In any iteration k, the update equation given in step 9 of the algorithm results
in a unique value, i.e., ρ(k) is unique.
We make a note that the update equation given in step 9 results in ρ(k) (Definition 2),
which is nothing but solution to the optimization problem given in (6.5).
maximize
ρ(k)∈ℜ|A
(k−1)+ |
+
Uk−1(ρ(k)), (6.5)
26
where
Uk(x) =∑
i∈N
log βi −∑
i∈A(k)+
(xi − ci)/si − N log(∆k(x)),
∆k(x) = αk +∑
j∈A(k)+
βj
xj
,
αk = α +∑
j∈A(k)−
βj
cj
.
Observe that the scalar functions Uk(.) and U(.) are similar. They only differ in dimen-
sionality and in constants. Nonetheless, Uk(.) will exhibit same properties as U(.). So all
the results that we have derived for U(.) also holds for Uk(.). Hence, Uk(ρ(k)) is strictly
concave. Now, problem (6.5) is a convex program and it’s solution will be unique. Hence,
the result.
Lemma 6. Let r(k) be the rate vector obtained in the kth iteration of the Algorithm 1,
then the partial derivative of the function U(r(k)) with respect to ρ(k)i is non-negative, i.e.,
∂U(r(k))
∂ρ(k)i
≥ 0, ∀ k ≥ 1.
Proof. From the proof of Lemma 5, we observe that ρ(k)i is obtained as a solution to,
maximize
ρ(k)∈ℜ|A
(k−1)+ |
+
Uk−1(ρ(k)). Hence, ρ
(k)i can be derived in a similar way as the procedure
provided in the proof of Lemma 2. Thus, ρ(k)i satisfies the following relation:
−1
si
+Nβi
(ρ(k)i )2[α +
∑
j∈A(k−1)−
βj
cj+
∑
j∈A(k−1)+
βj
ρ(k)j
]= 0. (6.6)
Now, let us consider the partial derivative of the function U(r(k)) with respect to ρ(k)i ,
which is given by
∂U(r(k))
∂ρ(k)i
= −1
si
+Nβi
(ρ(k)i )2[α +
∑
j∈Nβj
r(k)j
],
= −1
si
+Nβi
(ρ(k)i )2[α +
∑
j∈A(k−1)−
βj
r(k)j
+∑
j∈A(k−1)+
βj
ρ(k)j
].
From step 13 of the algorithm we have r(k)j ≥ cj, ∀ i ∈ A
(k−1)− . Hence, substituting cj for
27
r(k)j , ∀ i ∈ A
(k−1)− in Eq. (6.7) we arrive at,
∂U(r(k))
∂ρ(k)i
≥
−1
si
+Nβi
(ρ(k)i )2[α +
∑
j∈A(k−1)−
βj
cj+
∑
j∈A(k−1)+
βj
ρ(k)j
]= 0.
(from Eq. (6.6))
Hence, the result.
Lemma 7. Consider vector x ∈ ℜN+ . If x
(k) is a non-decreasing vector sequence and the
vector in kth iteration is obtained by, x(k) =√
Nβisi
∆(x(k−1)), then the partial derivative of the
function U(x(k)) with respect to x(k)i will be non-negative, i.e.,
∂U(x(k))
∂x(k)i
≥ 0 ∀ k ≥ 1.
Proof. The equation x(k)i =
√
Nβisi
∆(x(k−1))can be written as,
−1
si
+Nβi
(x(k)i )2[α +
∑
j∈Nβj
x(k−1)j
]= 0. (6.7)
Since x(k) is a non-decreasing sequence x
(k) ≥ x(k−1). Using this relation in Eq. (6.7), we
arrive at the relation−1
si
+Nβi
(x(k)i )2[α +
∑
j∈Nβj
x(k)j
]≥ 0.
This is nothing but the partial derivative of the function U(x(k)) with respect to x(k)i .
Hence, ∂U(x(k))
∂x(k)i
≥ 0 ∀ k ≥ 1.
Lemma 8. The sequence r(k) of rate vectors obtained in the kth iteration of the algorithm
is a non-decreasing sequence, i.e., r(k) ≤ r
(k+1) ∀ k ≥ 0
Proof. We need to prove that the updates obtained in step 8 and step 13 are non-
decreasing.
In any iteration k, the update in step 8 provides a unique vector ρ(k) which maximizes
Uk−1(x) (Lemma 5). We propose another approach that arrives at ρ(k) starting from
ρ(k−1). It is presented in the following algorithm.
Let us consider k = 1 in Algorithm 2. Since ci ≥ ri ∀ i ∈ A(0)− and ρ
(1)i,0 = ρ
(0)i =
ri ∀ i ∈ A(0)+ , we get the relation ∆0(ρ
(1)0 ) ≤ ∆(r). From step 5 of the Algorithm 2, note
that ρ decreases with ∆(.). Hence, ρ(1)i,1 ≥ ri ∀ i ∈ A
(0)+ which implies,
ρ(1)1 ≥ ρ
(0) = ρ(1)0 . (6.8)
28
Algorithm 2 Algorithm to solve problem (6.5)
1: j = 0.
2: ρ(k)i,j = ρ
(k−1)i ∀ i ∈ A
(k−1)+ , ρ
(k)j = ρ
(k)i,j .
3: repeat
4: for all i ∈ A(k−1)+ do
5: ρ(k)i,j+1 =
√
siNβi
∆k−1(ρj(k))
.
6: end for
7: j := j+1.
8: until ρ(k)j = ρ
(k)j−1
9: ρ(k) = ρ
(k)j
From Eq. (6.8) we will have ∆0(ρ(1)1 ) ≤ ∆0(ρ
(1)0 ). This implies ρ
(1)2 ≥ ρ
(1)1 . By repeating
the same argument we can conclude that ρ(1)j is a non decreasing sequence. Now, by using
Lemma 7, we claim that∂U(ρ
(1)j )
∂ρ(1)i,j
≥ 0. This ensures that the sequence of rate vectors are
bounded by the unique solution ρ(1). Hence, for k = 1 the Algorithm 2 converges to ρ
(1).
Observe that we have arrived at ρ(1) through a non-decreasing vector sequence, starting
from ρ(0). Hence, we conclude that ρ
(1) ≥ ρ(0)
Now consider k = 2. From step 2 of the Algorithm 2, we have ρ(2)i,0 = ρ
(1)i (which is
obtained from the update equation given in step 9 of Algorithm 1), hence, ρ(2)i,0 will satisfy
the following relation,
−1
si
+1
(ρ(2)i,0 )2(α +
∑
l∈A(0)−
βl
cl+
∑
l∈A(0)+
βl
ρ(1)l
)= 0. (6.9)
Also, from step 5, we have
−1
si
+1
(ρ(2)i,1 )2(α +
∑
l∈A(1)−
βl
cl+
∑
l∈A(1)+
βl
ρ(2)l,0
)= 0. (6.10)
From Eq. (6.9) and Eq. (6.10) we get,
(ρ(2)i,0 )2(α +
∑
l∈A(0)−
βl
cl
+∑
l∈A(0)+
βl
ρ(1)l
)
= (ρ(2)i,1 )2(α +
∑
l∈A(1)−
βl
cl
+∑
l∈A(1)+
βl
ρ(2)l,0
).
29
Consider the term,
α +∑
l∈A(1)−
βl
cl
+∑
l∈A(1)+
βl
ρ(2)l,0
= α +∑
l∈A(1)−
βl
cl
+∑
l∈A(0)− ∩A(1)
+
βl
ρ(1)l
+∑
l∈A(0)+
βl
ρ(1)l
(since, ρ(2)l,0 = ρ
(1)l )
≤ (α +∑
l∈A(0)−
βl
cl
+∑
l∈A(0)+
βl
ρ(1)l
).
(since, ρ(1)l ≥ cl ∀ l ∈ A
(0)− ∩ A
(1)+ )
Hence, to satisfy Eq. (6.11), ρ(2)i,1 ≥ ρ
(2)i,0 . This implies ∆1(ρ
(2)1 ) ≤ ∆1(ρ
(1)1 ). This implies
ρ(2)2 ≥ ρ
(2)1 . By repeating the same argument we can conclude that ρ
(2)j is a non decreasing
sequence. Now, by using Lemma 7, we claim that∂U(ρ
(2)j )
∂ρ(2)i,j
≥ 0. This ensures that the
sequence of rate vectors are bounded by the unique solution ρ(2). Hence, for k = 2 the
Algorithm 2 converges to ρ(2). Observe that we have arrived at ρ
(2) through a non-
decreasing vector sequence, starting from ρ(1). Hence, we conclude that ρ
(1) ≥ ρ(0). The
arguments to prove that ρ(k) ≥ ρ
(k−1) for any k > 2 is similar to that of k = 2. Thus, we
conclude ρ(k) is a non-decreasing sequence.
Now, we prove that the update in step 13 of the Algorithm 1 also results in non-
decreasing sequence of rates. Since ρ(k) is a non-decreasing sequence, we have r
(k+1)i ≥
r(k)i ∀ i ∈ A
(k)+ . Note that ξ
(k)i ∀ i ∈ A
(k)− decreases with r
(k+1)i ∀ i ∈ A
(k)+ . Now, consider
the expression,−βi+
q
β2i +Nξ
(k)i βisi
2ξ(k)i
, it is a decreasing function in ξ(k)i (this can be seen by
taking derivative of that expression with respect to ξ(k)i and finding that the derivative is
negative). Thus, r(k+1)i ∀ i ∈ A
(k)− increases for every iteration.
Hence, r(k) is a non-decreasing sequence.
Theorem 1. Algorithm 1 converges to the unique optimal solution in N iterations and
has complexity O(N2).
Proof. From Lemma 8 we know that the rate vectors obtained in the Algorithm 1 in
successive iterations are non-decreasing. From Lemma 7 we have, ∂U(r(k))
∂r(k)i
≥ 0, ∀ i ∈ A(k)+
and for i ∈ A(k)− , r
(k)i = ci. Hence, the rate vector r
(k) is bounded by the unique optimal
solution r∗. Hence, the algorithm converges to r
∗.
30
Due to monotone increasing nature of the rate vector sequence r(k), in kth iteration of
the Algorithm 1, one of following case may occur:
• One or more users move from set A(k)− to A
(k)+ .
• Users stay back in their respective sets.
In the later case, the rate vector obtained during the present iteration will be equal to
the rate vector of the previous iteration. Because, rate vector obtained in each iteration
of the algorithm is unique. That is the updates of the Algorithm 1 will result in a unique
rate vector if the number of users belonging to A− and A+ are fixed. Hence, in this case
the rate vector obtained will be the optimal solution and the algorithm stops.
The former case states that in each iteration atleast one rate crosses it’s corresponding
c value. But, note that all the rates won’t cross their corresponding c values, because if
this is the case then our algorithm could have obatined the solution in step 2. From this
argument and the two possible cases that can happen in each iteration, we can conclude
that the number of iterations that can take place will be not more than N.
We calculate λi values as follows:
λi =
0 if r∗i > ci,
1si− Nβi
c2i ∆(r∗)if r∗i = ci.
(6.11)
We claim that λi given by equation (6.11) satisfies λi ≥ 0. It is true for r∗i > ci. For
r∗i = ci, we justify our claim as follows: In kth iteration, our update in step 13 of the
Algorithm 1 actually finds solution to
1
si
−Nβi
r2i (α +
∑
j 6=i
j∈A(k)−
βj
cj+
∑
j∈A(k)+
βj
r(k+1)j
+ βi
ri)
= 0, (6.12)
and assigns r(k+1)i = maxri, ci. Now, r∗i = ci implies, in every iteration, ri ≤ ci and also
at convergence point r(k+1)i = r
(k)i = r∗i . At the convergence point, substituting ri = ci
and r(k+1)i = r∗i in Eq. 6.12, we get
1
si
−Nβi
c2i (α +
∑
j∈A(k)−
βj
cj+
∑
j∈A(k)+
βj
r∗j)≥ 0
=⇒1
si
−Nβi
c2i ∆(r∗)
≥ 0.
This justifies our claim.
31
6.2 Distributed Algorithm
In distributed algorithm each user only knows it’s own SNR (ci ans si values). It updates
the rates based on expected slot duration measurement that it performs locally. We
assume that the expected slot duration is measured over a sufficiently long duration so
that the measured values closely approximates the actual values.
Pseudo code for the distributed algorithm is given in Algorithm 3. A salient feature
Algorithm 3 Distributed Algorithm to solve problem (5.8)
1: For the user i, initialize r(0)i = ci.
2: n = 0.
3: repeat
4: Estimate ∆(r(n)) by observing the channel.
5: ri =√
Nβisi
∆(r(n)).
6: r(n+1)i = maxci, ri.
7: n := n + 1.
8: until r(n) = r
(n−1).
of the algorithm is, it is a stepsize-free design. Hence, our algorithm will have faster
convergence in general.
Theorem 2. Algorithm 3 converges to the unique optimal solution.
Proof. We note that r(0)i = ci and r
(1)i = maxci, ri, hence r
(1) ≥ r(0). As ∆(r) is
a decreasing function of r, we conclude ∆(r(1)) ≤ ∆(r(0)). Now, as r decreases with
∆(r), we get r(2) ≥ r
(1). Repeating the same argument we can conclude that r(n) is a
non-decreasing sequence. Hence, convergence of the sequence of rates is guaranteed.
Now, we prove that the rate vectors obatained in any iteration are bounded by the
unique optimal rate vector from below. Observe that in any iteration n, for the rates r(n)i
such that r(n)i = ci this is true. For the rates r
(n)i such that r
(n)i > ci we have r
(n+1)i =
ri =√
Nβisi
∆(r(n))and also, r
(n) is a non-decreasing sequence. Hence, by using Lemma 7, we
will have ∂U(r(k))
∂r(k)i
≥ 0 ∀ r(n)i > ci. This guarantees that r
(n)i such that, r
(n)i > ci is also
bounded. Combining this property with the monotone non-decreasing property of r(n),
we conclude that the algorithm converges to the unique optimal solution.
32
We make a note that, initializing data rates to ci is voluntarily done to prove the
convergence. Nonetheless, it can be verified that the algorithm converges for any arbitrary
initialization.
33
Chapter 7
Simulation results
In this chapter we present the simulation results to evaluate the performance of the
proposed algorithms. We have done the simulations using Discrete Event Simulation in
Table 7.1: Throughput comparison between different algorithms for N=10 and different
SNR values for the users. Optimal Sum Log Throughput = 149.47.
Algorithm System Throughput (Mbps) Log Throughput
Centralized 30.82 148.95
Distributed 30.82 148.95
ARF 5.96 132.98
CLARA 25.41 147.42
CARA 22.33 146.15
C++. We have used IEEE 802.11n data rates. Optimal log sum throughput presented
in the tabel is obtained by allowing continuous values to the data rates. Throughputs for
the centralized and distributed algorithms are obtained by approximating the continuous
values to the nearest IEEE 802.11n data rate.
Observe that both centralized and distributed algorithms converge to the optimal
solution. In distrubuted algorithm a user just needs to know his own channel condition,
still yields the same solution as that of centralized algorithm. Nonetheless, the advantage
of centralized algorithm is that, it’s complexity is less and convergence rate is known.
34
We can observe that ARF [6] performance is poor compared to the optimal through-
put. On the other hand CLARA [7] and CARA [9] perform fairly well compared to the
optimal throughput. Thus, we have provided an optimal point using which we can evalute
performance of different algorithms.
35
Chapter 8
Conclusions and Future work
Both the centralized and the distributed algorithms that we have proposed not only
achieves optimal sum log throughput but also provides significant improvement in system
throughput, compared to other rate adaptation algorithms considered. Note that, the
algorithms proposed are of step free design. Hence, there is no need for tuning step
size when the new system parameters (SNR values and number of users N) are given.
Nonetheless, the limitation of our algorithms is that, the user needs in prior the SNR values
and also needs to choose the ci and si values appropriately. This makes our algorithms
to be not being dynamic. However, they can be implemented in high latency systems like
work places where these values once estimated doesn’t change for sufficiently long time.
In our future work we would like to address the case where the channel characteristics
vary dynamically. Also, we are implementing the distributed algorithm synchronously.
We aim at studying it’s properties if it is implemented asynchronously.
36
Bibliography
[1] Prasanna Chaporkar, Alexandre Proutiere, and Bozidar Radunovic. Rate Adaptation
Games in Wireless LANs: Nash Equilibrium and Price of Anarchy. Technical report,
Microsoft Research, 2008.
[2] IEEE Std 802.11. Information Technology- telecommunications And Informa-
tion exchange Between Systems-Local And Metropolitan Area Networks-specific
Requirements-part 11: Wireless Lan Medium Access Control (MAC) And Physical
Layer (PHY) Specifications. IEEE Std 802.11, Nov 1997.
[3] IEEE Std 802.11a. Supplement to IEEE standard for information technology telecom-
munications 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: high-speed physical layer in
the 5 GHz band. IEEE Std 802.11a, 1999.
[4] IEEE Std 802.11b. Wireless LAN Medium Access Control (MAC) and Physical
Layer(PHY) Specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz
Band. IEEE Std 802.11b, 1999.
[5] F.Kelly. Charging the rate control for elastic traffic. European Transactions on
Telecommunications, 8(1), Jan 1997.
[6] Ad Kamerman and Leo Monteban. WaveLAN-II: A High-Performance Wireless LAN
for the Unlicensed Band. Luicent’s Network Systems, WaveLAN-II System Team,
Wireless Communication and Networking Division, Lucent’s Network Systems, The
Netherlands, 1997.
[7] Ceilidh Hoffmann, Mohammad Hossein Manshaei, and Thierry Turletti. CLARA:
closed-loop adaptive rate allocation for IEEE 802.11 wireless LANs. In Wireless
37
Networks, Communications and Mobile Computing, 2005 International Conference
on, volume 1, pages 668–673 vol.1, June 2005.
[8] Qixiang Pang, Victor C.M. Leung, and soung C. liew. An Enhanced Autorate Algo-
rithm for Wireless Local Area Networks Employing Loss Differentiation. Vehicular
Technology, IEEE Transactions on, 57(1):521–531, January 2008.
[9] Jongseok Kim, Seongkwan Kim, Sunghyun Choi, and Daji Qiao. CARA: Collision-
Aware Rate Adaptation for IEEE 802.11 WLANs. In INFOCOM 2006. 25th IEEE
International Conference on Computer Communications. Proceedings, April 2006.
[10] E. Altman, D.Kumar A.Kumar, and R.Venkatesh. Cooperative and Non-Cooperative
Control in IEEE 802.11. Research Report, INRIA, Mar 2005.
[11] Mathieu Lacage, Mohammad Hoss, and Thierry Turletti. IEEE 802.11 rate adapta-
tion: a practical approach. In MSWiM ’04: Proceedings of the 7th ACM international
symposium on Modeling, analysis and simulation of wireless and mobile systems,
pages 126–134, New York, NY, USA, 2004. ACM.
[12] Qixiang Pang, Victor C.M. Leung, and soung C. liew. Improvement of WLAN Con-
tention Resolution by Loss Differentiation. Wireless Communications, IEEE Trans-
actions on, 5(12):3605–3615, December 2006.
[13] Yong Xi, Byung-Seo Kim, Ji bo Wei, and Qing-Yan Huang. ADAPTIVE MUL-
TIRATE AUTO RATE FALLBACK PROTOCOL FOR IEEE 802.11 WLANS. In
Military Communications Conference, 2006. MILCOM 2006. IEEE, Oct 2006.
[14] P.Chevillat, J.Jelitto, A.Noll Barreto, and H.L.Truong. A dynamic link adaptation
algorithm for IEEE 802.11 a wireless LANs. In Communications, 2003. ICC ’03.
IEEE International Conference on, pages 1141–1145 vol.2, May 2003.
[15] Gavin Holland, Nitin Vaidya, and Paramvir Bahl. A rate-adaptive MAC protocol
for multi-Hop wireless networks. In MobiCom ’01: Proceedings of the 7th annual
international conference on Mobile computing and networking, pages 236–251, New
York, NY, USA, 2001. ACM.
[16] Li Bin Jiang and Soung Chang Liew. Proportional fairness in wireless LANs and Ad
Hoc Networks.
38
[17] Albert Banchs, Pablo Serrano, and Huw Oliver. Proportional fair throughput allo-
cation in multirate IEEE 802.11e wireless LANs. Wireless Networks, 13(5):649–662,
October 2007.
[18] Thyagarajan Nandagopal, Tae-Eun Kim, Xia Gao, and Vaduvur Bharghavan.
Achieving mac layer fairness in wireless packet networks. In Proceedings of the 6th
annual international conference on Mobile computing and networking, pages 87–98,
2000.
[19] C W Tan, D Palomar, and M Chiang. Distributed optimization of coupled systems
with applications to network utility maximization. In Proceedings of IEEE Interna-
tional Conference on Acoustic, Speech, and Signal Processing, 2006.
[20] Jianwei Huang. Distributed algorithm design for network optimization problems with
coupled objectives (invited). IEEE TENCON, November 2009.
[21] Holger Boche, Martin Schubert, and Slawomir Stanczak. Proportionally fair resource
allocation for wireless networks.
[22] Li (Erran) Li, Martin Pal, and Yang Richard Yang. Proportional fairness in multi-rate
wireless LANs. In INFOCOM 2008. The 27th Conference on Computer Communi-
cations., pages 1004–1012, April 2008.
[23] J. Papandriopoulos, J. Evans, and S. Dey. Optimal power control for rayleigh-faded
multiuser sysytems with constraints. IEEE Transactions on Wireless Communica-
tions, pages 2705–2715, Nov 2005.
[24] Giuseppe Bianchi. Performance Analysis of the IEEE 802.11 Distributed Coordina-
tion Function. Selected Areas in Communications,IEEE Journal on, 18(3), 2000.
[25] Stephen P. Boyd and Lieven Vandenberghe. Convex Optimization. Camebridge
University Press.
39