PDF Communication Networks An Optimization Control and Stochastic Networks Perspective Srikant R. download
PDF Communication Networks An Optimization Control and Stochastic Networks Perspective Srikant R. download
com
https://ebookultra.com/download/communication-
networks-an-optimization-control-and-stochastic-
networks-perspective-srikant-r/
https://ebookultra.com/download/control-techniques-for-complex-
networks-1st-edition-sean-meyn/
ebookultra.com
https://ebookultra.com/download/multi-objective-optimization-in-
computer-networks-using-metaheuristics-1st-edition-yezid-donoso/
ebookultra.com
Multiwavelength optical networks architectures design and
control 2nd Edition Thomas E. Stern
https://ebookultra.com/download/multiwavelength-optical-networks-
architectures-design-and-control-2nd-edition-thomas-e-stern/
ebookultra.com
https://ebookultra.com/download/data-communication-and-computer-
networks-a-business-user-s-approach-ninth-edition-west/
ebookultra.com
https://ebookultra.com/download/stochastic-simulation-optimization-an-
optimal-computing-budget-allocation-1st-edition-chun-hung-chen/
ebookultra.com
https://ebookultra.com/download/optimization-of-the-communication-
system-for-networked-control-systems-1st-edition-rainer-blind/
ebookultra.com
Communication Networks blends control, optimization, and stochastic network theories with
features that support student learning to provide graduate students with an accessible, modern
approach to the design of communication networks.
• Covers a broad range of performance analysis tools, including important advanced topics
that are made accessible to graduate students for the first time.
• Taking a top-down approach to network protocol design, the authors begin with the
deterministic model and progress to more sophisticated models.
• Network algorithms and protocols are tied closely to the theory, engaging students and
helping them understand the practical engineering implications of what they have learnt.
• The background behind the mathematical analyses is given before the formal proofs and
is supported by worked examples, enabling students to understand the big picture before
going into the detailed theory.
• End-of-chapter exercises cover a range of difficulties; complex problems are broken
down into several parts, many with hints to guide students. Full solutions are available
to instructors.
R. Srikant is the Fredric G. and Elizabeth H. Nearing Endowed Professor of Electrical and
Computer Engineering, and a Professor in the Coordinated Science Laboratory, at the
University of Illinois at Urbana-Champaign, and is frequently named in the university’s list of
teachers ranked as excellent. His research interests include communication networks, stochas-
tic processes, queueing theory, control theory, and game theory. He has been a Distinguished
Lecturer of the IEEE Communications Society, is a Fellow of the IEEE, and is currently the
Editor-in-Chief of the IEEE/ACM Transactions on Networking.
Lei Ying is an Associate Professor in the School of Electrical, Computer and Energy
Engineering at Arizona State University, and former Northrop Grumman Assistant Professor at
Iowa State University. He is a winner of the NSF CAREER Award and the DTRA Young Inves-
tigator Award. His research interests are broadly in the area of stochastic networks, including
wireless networks, P2P networks, cloud computing, and social networks.
Communication
Networks
AN OPTIMIZATION, CONTROL, AND STOCHASTIC
NETWORKS PERSPECTIVE
R. SRIKANT
University of Illinois at Urbana-Champaign
LEI YING
Arizona State University
University Printing House, Cambridge CB2 8BS, United Kingdom
Published in the United States of America by Cambridge University Press, New York
www.cambridge.org
Information on this title: www.cambridge.org/9781107036055
c Cambridge University Press 2014
This publication is in copyright. Subject to statutory exception
and to the provisions of relevant collective licensing agreements,
no reproduction of any part may take place without the written
permission of Cambridge University Press.
First published 2014
Printed in the United Kingdom by TJ International Ltd, Padstow Cornwall
A catalog record for this publication is available from the British Library
Library of Congress Cataloging in Publication data
Srikant, R. (Rayadurgam)
Communication networks : an optimization, control, and stochastic networks perspective /
R. Srikant, University of Illinois at Urbana-Champaign, Lei Ying, Arizona State University.
pages cm
Includes bibliographical references and index.
ISBN 978-1-107-03605-5 (Hardback)
1. Telecommunication systems. I. Ying, Lei (Telecommunication engineer) II. Title.
TK5101.S657 2013
384–dc23 2013028843
ISBN 978-1-107-03605-5 Hardback
Additional resources for this publication at www.cambridge.org/srikant
Cambridge University Press has no responsibility for the persistence or accuracy of
URLs for external or third-party internet websites referred to in this publication,
and does not guarantee that any content on such websites is, or will remain,
accurate or appropriate.
v
Preface page xi
1 Introduction 1
References 340
Index 349
PREFACE
Acknowledgements
This book grew out of courses offered by us at the University of Illinois at Urbana-
Champaign, Iowa State University, and Arizona State University. The comments of the
students in these courses over the years have been invaluable in shaping the material in
the book. We would like to acknowledge Zhen Chen, Javad Ghaderi, Juan Jose Jaramillo,
Xiaohan Kang, Joohwan Kim, Siva Theja Maguluri, Chandramani Singh, Weina Wang,
Rui Wu, Zhengyu Zhang, and Kai Zhu in particular, who read various parts of the book
carefully and provided valuable comments. We also gratefully acknowledge collaborations
and/or discussions with Tamer Başar, Atilla Eryilmaz, Bruce Hajek, Frank Kelly, P. R.
Kumar, Sean Meyn, Sanjay Shakkottai, Srinivas Shakkottai, Ness Shroff, and Don Towsley
over the years, which helped shape the presentation of the material in this book.
1 Introduction
layering and is fundamental to the design of large communication networks. This allows
engineers who develop protocols at one layer to abstract the functionalities of the protocols
at other layers and concentrate on designing efficient protocols at just one layer.
Next, we assume that the network layer has been well designed and that it somehow
generates routes for packets from each possible source to each possible destination in the
network. Recall that the network is just an interconnection of links. Each link in the net-
work has a limited capacity, i.e., the rate at which it can transfer data as measured in bits per
second (bps). Since the communication network is composed of links, the sources produc-
ing data cannot send packets at arbitrarily high rates since the end-to-end data transfer rate
between a source and its destination is limited by the capacities of the links on the route
between the source and the destination. Further, when multiple source-destination (S-D)
pairs transfer data over a network, the network capacity has to be shared by these S-D pairs.
Thus, a set of protocols has to be designed to ensure fair sharing of resources between the
various S-D pairs. The set of protocols that ensures such fair sharing of resources is called
the transport layer. Transport layer protocols ensure that, most of the time, the total rate
at which packets enter a link is less than or equal to the link capacity. However, occasion-
ally the packet arrival rate at a link may exceed the link capacity since perfectly efficient
transport layer protocol design is impossible in a large communication network. During
such instances, packets may be dropped by a link and such packet losses will be detected
by the destinations. The destinations then inform the sources of these packet losses, and
the transport layer protocols may retransmit packets if necessary. Thus, in addition to fair
resource sharing and congestion control functionalities, transport layer protocols may also
have end-to-end (source-destination) error recovery functionalities as well.
The final set of protocols used to communicate information over a network is called the
application layer. Application layer protocols are specific to applications that use the net-
work. Examples of applications include file transfer, real-time video transmission, video
or voice calls, stored-video transmission, fetching and displaying web pages, etc. The
application layer calls upon transport protocols that are appropriate for their respective
applications. For example, for interactive communication, occasional packet losses may be
tolerated, whereas a file transfer requires that all packets reach the destination. Thus, the
former may use a transport protocol that does not use retransmissions to guarantee reliable
delivery of every packet to the destination, while the latter will use a transport protocol that
ensures end-to-end reliable transmission of every packet.
In addition to the protocol layers mentioned above, in the case of wireless communi-
cations, signal propagation over one link may cause interference at another link. Thus, a
special set of protocols called Medium Access Control (MAC) protocols are designed to
arbitrate the contention between the links for access to the wireless medium. The MAC
layer can be viewed as a sublayer of the link layer that further ensures reliable operation of
the wireless “links" so that the network layer continues to see the links as reliable carriers
of data. A schematic of the layered architecture of a communication network is provided
in Figure 1.1. To ensure proper operation of a communication network, a packet generated
by an application will not only contain data, but also contain other information called the
header. The header may contain information such as the transport protocol to be used and
the address of the destination for routing purposes.
The above description of the layered architecture of a communication network is an
abstraction. In real communication networks, layering may not be as strict as defined
3 Introduction
medium
Shared
Link layer: reliable transmission of frames (collections of bits).
destination 2
source 1 destination 1
source 2
Network layer: data transmitted in the form of packets. Each packet has source and destination addresses, and data.
Each node in the network contains routing information to route the packets.
data packets
source 1 destination 1
feedback
Transport layer: reliable end-to-end data transmission. Sources may use feedback from destinations to retransmit lost packets.
Sources may also use the feedback information to adjust data transmission rates.
Application layer: applications. Protocols such as HTTP, FTP, and SSH transmit data over the network.
above. Some protocols may have functionalities that cut across more than one layer.
Such cross-layer protocols may be designed for ease of implementation or to improve
the efficiency of the communication network. Nevertheless, the abstraction of a layered
architecture is useful conceptually, and in practice, for the design of communication
networks.
Having described the layers of a communication network, we now discuss the scope
of this book. In Part I, we are interested in the design of protocols for the transport, net-
work, and MAC sublayers. We first develop a mathematical formulation of the problem of
resource sharing in a large communication network accessed by many sources. We show
how transport layer algorithms can be designed to solve this problem. We then drill deeper
4 Introduction
into the communication network, and understand the operation of a single link and how
temporary overload is handled at a link. Next, we discuss the problem of interconnecting
links through a router in the Internet and the problem of contention resolution between
multiple links in a wireless network. The algorithms that resolve contention in wireless
links form the MAC sublayer. As we will see, the algorithms that are used to interconnect
links within a wireline router share a lot of similarities with wireless MAC algorithms.
We devote a separate chapter to network protocols, where we discuss the actual protocols
used in the Internet and wireless networks, and relate them to the theory and algorithms
developed in the earlier chapters. Part I concludes with an introduction to a particular set
of application layer protocols called peer-to-peer networks. Traditional applications deliver
data from a single source to a destination or a group of destinations. They simply use the
lower layer protocols in a straightforward manner to perform their tasks. In Peer-to-Peer
(P2P) networks, many users of the network (called peers) are interested in the same data,
but do not necessarily download these data from a single destination. Instead, peers down-
load different pieces of the data and share these pieces among themselves. This type of
sharing of information make P2P systems interesting to study in their own right. Therefore,
we devote a separate chapter to the design of these types of applications in Part I.
Part II is a collection of mathematical tools that can be used for performance analysis
once a protocol or a set of protocols have been designed. The chapters in this part are
not organized by functionalities within a communication network, but are organized by
the commonality of the mathematical tools used. We will introduce the reader to tools
from queueing theory, heavy-traffic methods, large deviations, and models of wireless
networks where nodes are viewed as random points on a plane. Throughout, we will
apply these mathematical tools to analyze the performance of various components of a
communication network.
Part I Network architecture and
algorithms
2 Mathematics of Internet architecture
In this chapter, we will develop a mathematical formulation of the problem of resource allo-
cation in the Internet. A large communication network such as the Internet can be viewed
as a collection of communication links shared by many sources. Congestion control algo-
rithms are protocols that allocate the available network resources in a fair, distributed,
and stable manner among the sources. In this chapter, we will introduce the network util-
ity maximization formulation for resource allocation in the Internet, where each source
is associated with a utility function Ur (xr ), and xr is the transmission rate allocated to
source r. The goal of fair resource allocation is to maximize the net utility r Ur (xr ) sub-
ject to resource constraints. We will derive distributed, congestion control algorithms that
solve the network utility maximization problem. In a later chapter, we will discuss the
relationship between the mathematical models developed in this chapter to transport layer
protocols used in the Internet. Optimality and stability of the congestion control algorithms
will be established using convex optimization and control theory. We will also introduce
a game-theoretical view of network utility maximization and study the impact of strategic
users on the efficiency of network utility maximization. Finally, routing and IP addressing
will be discussed. The following key questions will be answered in this chapter.
between x and y, a convex set can be pictorially depicted as in Figure 2.1: given any two
points x, y ∈ S, the line segment between x and y lies entirely in S.
S ⊆ R2
y
Definition 2.1.2 (Convex hull) The convex hull of set S, denoted by Co(S), is the smallest
convex set that contains S, and contains all convex combinations of points in S, i.e.,
k
k
Co(S) = αi xi xi ∈ S, αi ≥ 0, αi = 1 .
i=1 i=1
Figure 2.2 The solid line forms the boundary of the convex hull of the shaded set.
x y
x y
where
∂f ∂f ∂f
f (x) = (x), (x), . . . , (x)
∂x1 ∂x2 ∂xn
and xi is the ith component of vector x. Pictorially, if x is one-dimensional, this condition
implies that the tangent of the function at any point lies below the function, as shown in
Figure 2.5.
Note that f (x) is strictly convex if the inequality above is strict for any x = y.
f (y )
f(x ) + f⬘(x ) (y − x )
f (x )
x y
Result 2.1.4 (Strict separation theorem) Let S ⊂ Rn be a convex set and x be a point
that is not contained in S. Then there exists a vector β ∈ Rn , β = 0, and constant δ > 0
such that
n
n
βi yi ≤ βi xi − δ
i=1 i=1
Definition 2.1.6 (Local maximizer and global maximizer) For any function f (x) over
S ⊆ Rn , x∗ is said to be a local maximizer or local optimal point if there exists an > 0
such that
f (x∗ + δx) ≤ f (x∗ )
for δx such that δx ≤ and x + δx ∈ S, where · can be any norm; x∗ is said to be a
global maximizer or global optimal point if
f (x) ≤ f (x∗ )
for any x ∈ S. When not specified, maximizer refers to global maximizer in this book.
Result 2.1.5 If f (x) is a continuous function over a compact set S (i.e., S is closed and
bounded if S ⊆ Rn ), then f (x) achieves its maximum over this set, i.e., maxx∈S f (x)
exists.
Result 2.1.6 If f (x) is differentiable, then any local maximizer x∗ in the interior of S ⊆ Rn
satisfies
f (x∗ ) = 0. (2.3)
If f (x) is a concave function over S, condition (2.3) is also sufficient for x∗ to be a local
maximizer.
Result 2.1.7 If f (x) is concave, then a local maximizer is also a global maximizer. In gen-
eral, multiple global maximizers may exist. If f (x) is strictly concave, the global maximizer
x∗ is unique.
Result 2.1.8 Results 2.1.6 and 2.1.7 hold for convex functions if the max in the optimiza-
tion problem (2.2) is replaced by min, and maximizer is replaced by minimizer in Results
2.1.6 and 2.1.7.
Result 2.1.9 If f (x) is a differentiable function over set S and x∗ is a maximizer of the
function, then
f (x∗ )dx ≤ 0
for any feasible direction dx, where a non-zero vector dx is called a feasible direction if
there exists α such that x + adx ∈ S for any 0 ≤ a ≤ α.
12 Mathematics of Internet architecture
subject to
hi (x) ≤ 0, i = 1, 2, ..., I, (2.5)
gj (x) = 0, j = 1, 2, ..., J. (2.6)
A vector x is said to be feasible if x ∈ S, hi (x) ≤ 0 for all i, and gj (x) = 0 for all j. While
(2.5) and (2.6) are inequality and equality constraints, respectively, the set S in the above
problem captures any other constraints that are not in equality or inequality form.
A key concept that we will exploit later in the chapter is called Lagrangian duality.
Duality refers to the fact that the above maximization problem, also called the primal
problem, is closely related to an associated problem called the dual problem. Given
the constrained optimization problem in (2.4)–(2.6), the Lagrangian of this optimization
problem is defined to be
I
J
L(x, λ, μ) = f (x) − λi hi (x) + μj gj (x), λi ≥ 0 ∀i.
i=1 j=1
The constants λi ≥ 0 and μj are called Lagrange multipliers. The Lagrangian dual function
is defined to be
D(λ, μ) = sup L(x, λ, μ).
x∈S
Let be the maximum of the optimization problem (2.4), i.e., f ∗ = maxx∈S f (x). Then,
f∗
we have the following theorem.
Proof The convexity comes from a known fact that the pointwise supremum of affine
functions is convex (see Figure 2.6). To prove the bound, note that hi (x) ≤ 0 and gj (x) = 0
for any feasible x, so the following inequality holds for any feasible x:
L(x, λ, μ) ≥ f (x).
This inequality further implies that
sup L(x, λ, μ) ≥ sup f (x) = f ∗ .
x∈S x∈S
h(x)≤0 h(x)≤0
g(x)=0 g(x)=0
13 2.1 Mathematical background: convex optimization
Figure 2.6 The solid line is the pointwise supremum of the four dashed lines, and is convex.
Since removing some constraints of a maximization problem can only result in a larger
maximum value, we obtain
sup L(x, λ, μ) ≥ sup L(x, λ, μ).
x∈S x∈S
h(x)≤0
g(x)=0
Theorem 2.1.1 states that the dual function is an upper bound on the maximum of
the optimization problem (2.4)–(2.6). We can optimize over λ and μ to obtain the best
upper bound, which yields the following minimization problem, called the Lagrange dual
problem:
Let d∗ be the minimum of the dual problem, i.e., d∗ = infλ≥0,μ D(λ, μ). The difference
between d∗ and f ∗ is called the duality gap. For some problems, the duality gap is zero. We
say strong duality holds if d∗ = f ∗ . If strong duality holds, then one can solve either the
primal problem or the dual problem to obtain f ∗ . This is often helpful since sometimes one
of the problems is easier to solve than the other. A simple yet frequently used condition to
check strong duality is Slater’s condition, which is given below.
As mentioned earlier, when strong duality holds, we have a choice of solving the original
optimization in one of two ways: either solve the primal problem directly or solve the dual
problem. Later in this chapter, we will see that resource allocation problems in communi-
cation networks can be posed as convex optimization problems, and we can use either the
primal or the dual formulations to solve the resource allocation problem. We now present
a result which can be used to solve convex optimization problems.
∂f ∗ ∂hi ∂gj
(x ) − λ∗i (x∗ ) + μ∗j (x∗ ) = 0, ∀k, (2.8)
∂xk ∂xk ∂xk
i j
Further, (2.8) and (2.9) are also necessary and sufficient conditions for (λ∗ , μ∗ ) to be a
global minimizer of the Lagrange dual problem given in (2.7). If f is strictly concave, then
x∗ is also the unique global maximizer.
The KKT conditions (2.8) and (2.9) can be interpreted as follows. Consider the Lagrangian
L(x, λ, μ) = f (x) − λi hi (x) + μj gj (x).
i j
Condition (2.8) is the first-order necessary condition for the maximization problem
maxx∈S L(x, λ∗ , μ∗ ). When strong duality holds, we have
f (x∗ ) = f (x∗ ) − λ∗i hi (x∗ ) + μ∗j gj (x∗ ),
i j
which results in condition (2.9) since gj (x∗ ) = 0 ∀j, and λ∗i ≥ 0 and hi (x∗ ) ≤ 0 ∀i. We
remark that condition (2.9) is called complementary slackness.
1 For convex set S, any point in the relative interior is a point x such that for any y ∈ S there exist z ∈ S and
0 < λ < 1 such that x = λy + (1 − λ)z.
15 2.2 Resource allocation as utility maximization
Next, we present an example of such a resource allocation problem and its solution.
16 Mathematics of Internet architecture
Example 2.2.1
x0
x1 x2 x3 xL
L
max log xr (2.13)
x
r=0
with constraints
x0 + xl ≤ 1, ∀l = 0, 1, . . . , L
x ≥ 0,
L
L
L(x, p) = log xr − pl (x0 + xl − 1).
r=0 l=1
pl (x0 + xl − 1) = 0 and pl ≥ 0, ∀l ≥ 1.
Thus, the optimal data rates for the sources are given by
1 L
x0 = , xr = , ∀r ≥ 1.
L+1 L+1
We note an important feature of the solution. The optimal rate of each source in (2.14)
explicitly depends on the sum of the Lagrange multipliers on its route. Thus, if a simple
algorithm exists to compute the Lagrange multipliers on each link and feed back the sum
of the Lagrange multipliers on its route to each source, then the source rates can also be
computed easily. This feature of the optimal solution will be exploited later to derive a
distributed algorithm to solve the resource allocation problem.
..............................................................................................................................
A closed-form solution, as in Example 2.21, will not be easy to obtain for a network
such as the Internet. The number of sources is typically in the millions, the number of
links is in the thousands, and there is no central entity that even knows the topology of
the network in its entirety. Therefore, we will develop distributed algorithms to solve the
resource allocation problem later.
where {xr } is any other set of feasible rates. An allocation with such a property is called
proportionally fair. The reason for this terminology is as follows: if one of the source
rates is increased by a certain amount, the sum of the fractions (also called proportions) by
which the different users’ rates change is non-positive. A consequence of this observation
is that, if the proportion by which one user’s rate changes is positive, there will be at least
one other user whose proportional change will be negative. If the utility functions are of
the form wr log xr for some weight wr > 0 for user r, the resulting allocation is called
weighted proportionally fair.
18 Mathematics of Internet architecture
In other words, if we attempt to increase the rate for one user, the rate for a less-fortunate
user will suffer. The definition of max-min fairness implies that
for any other allocation {xr }. To see why this is true, suppose that there exists an allocation
such that
This implies that, for any s such that minr xr∗ = xs∗ , the following holds: xs∗ < xs . Oth-
erwise, our assumption (2.16) cannot hold. However, this implies that if we switch the
allocation from {xr∗ } to {xr }, we have increased the allocation for s without affecting a less-
fortunate user (since there is no less-fortunate user than s under {xr∗ }). Thus, the max-min
fair resource allocation attempts first to satisfy the needs of the user who gets the least
amount of resources from the network.
Yet another form of fairness that has been discussed in the literature is called minimum
potential delay fairness. Suppose that user r is associated with the utility function −1/xr .
The goal of maximizing the sum of the user utilities is equivalent to minimizing r 1/xr .
The term 1/xr can be interpreted as follows: suppose user r needs to transfer a file of unit
size. Then, 1/xr is the delay associated with completing this file transfer since the delay
is simply the file size divided by the rate allocated to user r. Hence, the name minimum
potential delay fairness.
All of the different notions of fairness discussed above can be unified by considering
utility functions of the form
xr1−α
Ur (xr ) = , (2.17)
1−α
for some α > 0. Resource allocation using the above utility function is called α-fair. Dif-
ferent values of α yield different ideas of fairness. First consider α = 2. This immediately
yields minimum potential delay fairness. Next, consider the case α = 1. The utility func-
tion is not well defined at this point, but note that maximizing the sum of xr1−α /(1 − α)
yields the same optimum as maximizing the sum of
xr1−α − 1
.
1−α
Now, by applying l’Hospital’s rule, we obtain
xr1−α − 1
lim = log xr ,
α→1 1 − α
Next, we argue that the limit α → ∞ gives max-min fairness. Let xr∗ (α) be the α-fair
allocation. Assume that xr∗ (α) → xr∗ as α → ∞ and x1∗ < x2∗ < · · · < xn∗ . Let be the
∗
minimum difference of {xr∗ }, i.e., = minr (xr+1 − xr∗ ). Then, when α is sufficiently large,
we have |xr∗ (α) − xr∗ | ≤ /4, which implies that x1∗ (α) < x2∗ (α) < · · · < xn∗ (α).
Now, by the property of concave functions mentioned earlier (inequality (2.15)),
xr − x∗ (α)
r
≤ 0.
r
xr∗α (α)
s−1
x∗α (α)
n
x∗α (α)
(xr − xr∗ (α)) s∗α + (xs − xs∗ (α)) + (xi − xi∗ (α)) s∗α ≤ 0.
xr (α) xi (α)
r=1 i=s+1
s−1
x∗α (α) n
x∗ + /4
α
(xr − xr∗ (α)) s∗α + (xs − xs∗ (α)) − |xi − xi∗ (α)| s∗ α ≤ 0.
r=1
xr (α)
i=s+1
xi − /4
Note that xi∗ − /4 − (xs∗ + /4) ≥ /2 for any i > s, so, by increasing α, the third term
in the above expression will become negligible. Thus, if xs > xs∗ (α), the allocation for at
least one user whose rate satisfies xr∗ (α) < xs∗ (α) will decrease. The argument can be made
rigorous and extended to the case xr∗ = xs∗ for some r and s. Therefore, as α → ∞, the
α-fair allocation approaches max-min fairness.
ẋ = f (x), f : Rn → R n , (2.18)
where ẋ is the derivative of x with respect to the time t. The time variable t has been omitted
when no confusion is caused. Assume that x(0) is given. Throughout, we will assume that
f is a continuous function and that it also satisfies other appropriate conditions to ensure
that the differential equation has a unique solution x(t), for t ≥ 0.
A point xe ∈ Rn is said to be the equilibrium point of the dynamical system if f (xe ) = 0.
We assume that xe = 0 is the unique equilibrium point of this dynamical system.
Theorem 2.3.2 (Lyapunov global asymptotic stability theorem) If, in addition to the
conditions in the previous theorem, we assume that V(x) is continuously differentiable
and also satisfies the following conditions:
(1) V(x) ≥ 0 ∀x and V(x) = 0 if and only if x = 0,
(2) V̇(x) < 0 for any x = 0 and V̇(0) = 0,
the equilibrium point xe = 0 is globally, asymptotically stable.
Proof We prove this theorem by contradiction. Suppose x(t) does not converge to the
equilibrium point 0 as t → ∞.
Note that V(x(t)) is non-increasing because its derivative with respect to t is non-positive
(V̇(x) ≤ 0) for any x. Since V(x(t)) decreases as a function of t and is lower bounded (since
V(x) ≥ 0, ∀x), it converges as t → ∞. Suppose that V(x(t)) converges to, say, > 0.
Define the set
C {x : ≤ V(x) ≤ V(x(0))}.
The set C is bounded since V(x) → ∞ as ||x|| → ∞ and it is closed since V(x) is a
continuous function of x. Thus, C is a compact set.
Let
−a = sup V̇(x),
x∈C
where a > 0 is finite because V̇(x) is continuous in x and C is a compact set. Now we write
V(x(t)) as
t
V(x(t)) = V(x(0)) + V̇(x(s)) ds
0
≤ V(x(0)) − at,
21 2.4 Distributed algorithms: primal solution
The Lyapunov global asymptotic stability theorem requires that V̇(x) = 0 for any x = 0.
In the case V̇(x) = 0 for some x = 0, global asymptotic stability can be studied using
Lasalle’s invariance principle. The proof of the theorem is omitted in this book.
Theorem 2.3.3 (Lasalle’s invariance principle) Replace condition (2) of Theorem 2.32 by
V̇(x) ≤ 0, ∀x,
and suppose that the only trajectory x(t) that satisfies
ẋ(t) = f (x(t)) and V̇(x(t)) = 0, ∀t,
is x(t) = 0, ∀t. Then x = 0 is globally, asymptotically stable.
than the real capacity, in which case, even if the arrival rate exceeds cl , one may still be
operating within the link capacity. While it is not apparent in the deterministic formulation
here, later in the book we will see that, even when the arrival rate on a link is less than its
capacity, due to randomness in the arrival process, packets in the network will experience
delay or packet loss. The function Bl (·) may thus be used to represent average delay, packet
loss rate, etc.
We assume that Bl is a continuously differentiable convex function so that it can be
written equivalently as
s:l∈s xs
Bl xs = fl (y)dy, (2.21)
s:l∈s 0
where fl (·) is an increasing, continuous function. We call fl (y) the congestion price func-
tion, or simply the price function at link l, since it associates a price with the level of
congestion on the link. It is straightforward to see that Bl defined in the above fash-
ion is convex, since integrating an increasing function results in a convex function (see
Result 2.1.1). Note also that the convexity of Bl ensures that the function (2.20) is a strictly
concave function.
We will assume that Ur and fl are such that the maximization of (2.20) results in a
solution with xr > 0, ∀r ∈ S. Then, the first-order condition for optimality states that the
maximizer of (2.20) must satisfy
Ur (xr ) − fl xs = 0, r ∈ S. (2.22)
l:l∈r s:l∈s
Clearly, it is not practically feasible to solve (2.22) offline and implement the resulting data
rates in the network since, as mentioned earlier, the topology of the network is unknown.
Therefore, we will develop a decentralized algorithm under which each user can collect
limited information from the network and solve for its own optimal data rate. A natural
candidate for such an algorithm is the so-called gradient ascent algorithm from optimiza-
tion theory. The basic idea behind the gradient ascent algorithm is intuitive, especially if
the concave function is a function of one variable: since a concave function has a deriva-
tive which is a decreasing function and the optimal solution is obtained at the point where
the derivative is zero, it makes sense to seek a solution by moving in the direction of the
derivative. More generally, for a function of many variables, the gradient ascent algorithm
suggests moving in the direction of the gradient.
Consider the algorithm
ẋr = kr (xr ) Ur (xr ) − fl xs . (2.23)
l:l∈r s:l∈s
The right-hand side of the above differential equation is simply the derivative of (2.20)
with respect to xr , while kr (·) is simply a step-size parameter which determines how far
one moves in the direction of the gradient. The scaling function kr (·) must be chosen such
that the equilibrium of the differential equation is the same as the optimal solution to the
resource allocation problem. For example, if kr (xr ) > 0, setting ẋr = 0 for all r yields the
same set of equations as (2.22). Algorithm (2.23) is called a primal algorithm since it arises
from the primal formulation of the utility maximization problem. Note that the primal
23 2.4 Distributed algorithms: primal solution
algorithm is a congestion control algorithm for the following reasons: when the route price
qr = l:l∈r fl ( s:l∈s xs ) is large, the congestion controller decreases its transmission rate.
Further, if xr is large, U (xr ) is small (since Ur (xr ) is concave) and thus the rate of increase
is small. Thus, the network can be viewed as a control system with the network providing
the feedback to allow the sources to adjust their rates. Control systems are typically viewed
as block diagrams, and to visualize our congestion control algorithm as a block diagram,
we introduce some notation.
Let R be the routing matrix of the network, i.e., the (l, r) element of this matrix is
given by
1, if route r uses link l,
Rlr =
0, otherwise.
Let
yl = xs (2.24)
s:l∈s
y = Rx. (2.25)
Then the price of a route is just the sum of link prices pl of all the links in the route. So we
define the price of route r to be
qr = pl . (2.27)
l:l∈r
Also let p be the vector of all link prices and q be the vector of all route prices. We thus
have
q = RT p. (2.28)
This notation allows us to depict the primal algorithm as a block diagram, as shown in
Figure 2.8.
We now establish the global asymptotic stability of (2.23) using the Lyapunov technique
described in Section 2.3. Since W(x) is a strictly concave function, it has a unique mini-
mizer x̂. Further, W(x̂) − W(x) is non-negative and is equal to zero only at x = x̂. Thus,
W(x̂) − W(x) is a natural candidate Lyapunov function for the system (2.23). We use this
Lyapunov function to prove the following theorem.
24 Mathematics of Internet architecture
R
x sources y links
source link
control control
q p
RT
Figure 2.8 A block diagram view of the congestion control algorithm. The controller at the
source uses congestion feedback from the links to perform its action.
Theorem 2.4.1 Consider a network in which all sources adjust their data rates according
to the primal control algorithm (2.23). Define V(x) = W(x̂) − W(x), where W(x) is given
by (2.20). Assume that the functions Ur (·), kr (·) and fl (·) are such that V(x) → ∞ as
||x|| → ∞, x̂i > 0 for all i, and the equilibrium point of (2.23) is the maximizer of (2.20).
Then, the controller in (2.23) is globally asymptotically stable.
and V̇ = 0 if x = x̂. Thus, all the conditions of the Lyapunov theorem are satisfied, and so
the system state will converge to x̂, starting from any initial condition.
In the proof of Theorem 2.4.1, we have assumed that the utility, price, and scaling
functions are such that W(x) satisfies the conditions required to apply the Lyapunov sta-
bility theorem. It is easy to find functions that satisfy these properties. For example, if
Ur (xr ) = wr log(xr ) and kr (xr ) = xr , the primal congestion control algorithm for source r
becomes
ẋr = wr − xr fl (yl ),
l:l∈r
and thus the unique equilibrium point can be obtained by solving wr /xr = l:l∈r fl (yl ).
Further, if fl (·) is such that Bl (·) is a polynomial function, W(x) goes to −∞, as ||x|| → ∞,
and thus V(x) → ∞ as ||x|| → ∞.
simply needs to know the sum of the link prices on its route to adjust its data rate as sug-
gested by the algorithm. Suppose that every packet has a field (a certain number of bits)
set aside in its header to collect the price of its route. When the source releases a packet
into the network, the price field can be set to zero. Then, each link on the route can add
its price to the price field so that, by the time the packet reaches its destination, the price
field will contain the route price. This information can then be fed back to the source to
implement the congestion control algorithm. A noteworthy feature of the congestion con-
trol algorithm is that the link prices depend only on the total arrival rate to the link, and
not on the individual arrival rates of each source using the link. Thus, each link has only
to keep track of the total arrival rate to compute the link price. If the algorithm required
each link to keep track of individual source arrival rates, it would be infeasible to imple-
ment since the number of sources using high-capacity links could be prohibitively large.
Thus, the primal algorithm is both amenable to a distributed implementation and has low
overhead requirements.
Packet headers in the Internet are already crowded with a lot of other information, such
as source/destination addresses to facilitate routing, so Internet practitioners do not like
to add another field in the packet header to collect congestion information. In view of
this, the overhead required to collect congestion information can be further reduced to
accommodate practical realities. Consider the extreme case where there is only one bit
available in the packet header to collect congestion information. Suppose that each packet
is marked with probability 1 − e−pl when the packet passes through link l. Marking simply
means that a bit in the packet header is flipped from a 0 to a 1 to indicate congestion. Then,
along a route r, a packet is marked with probability
1−e l:l∈r pl .
If the acknowledgement for each packet contains one bit of information to indicate whether
a packet is marked or not, then,
by computing the fraction of marked packets, the source
can compute the route price l:l∈r pl . The assumption here is that the xr ’s change slowly
so that each pl remains roughly constant over many packets. Thus, one can estimate pl
approximately.
While marking, as mentioned above, has been widely studied in the literature, the pre-
dominant mechanism used for congestion feedback in the Internet today is through packet
drops. Buffers used to store packets at a link have finite capacity, and therefore a packet
that arrives at a link when its buffer is full is dropped immediately. If a packet is dropped,
the destination of the packet will not receive it. So, if the destination then provides feed-
back to the source that a packet was not received, this provides an indication of congestion.
Clearly, such a scheme does not require even a single bit in the packet header to collect
congestion information. However, strictly speaking, this type of congestion feedback can-
not be modeled using our framework since we assume that a source’s data rate is seen by
all links on the route, whereas, if packet dropping is allowed, some packets will not reach
all links on a source’s route. However, if we assume that the packet loss rate at each link
is small, we can approximate the rate at which a link receives a source’s packet by the rate
at which the source is transmitting packets. Further, the end-to-end drop probability on a
route can be approximated by the sum of the drop probabilities on the links along the route
if the drop probability at each link is small. Thus, the optimization formulation approx-
imates reality under these assumptions. To complete the connection to the optimization
26 Mathematics of Internet architecture
framework, we have to specify the price function at each link. A crude approximation to
the drop probability (also known as packet loss rate) at link l is ((yl − cl )/yl )+ , which is
non-zero only if yl = r:l∈ r xr is larger than cl . This approximate formula for the packet
loss rate can serve as the price function for each link.
xr ≥ 0, ∀r ∈ S. (2.32)
The Lagrange dual of the above problem is obtained by incorporating the constraints into
the maximization by means of Lagrange multipliers as follows:
D(p) = max Ur (xr ) − pl xs − cl . (2.33)
{xr ≥0}
r l s:l∈s
Here the pl ’s are the Lagrange multipliers that we saw in Section 2.1. The dual problem
may then be stated as
min D(p).
p≥0
As in the case of the primal problem, we would like to design an algorithm that ensures
that all the source rates converge to the optimal solution. Note that, in this case, we are
looking for a gradient descent (rather than the gradient ascent we saw in the primal for-
mulation), since we would like to minimize D(p). To find the direction of the gradient, we
need to know ∂D/∂pl .
We first observe that, in order to achieve the maximum in (2.33), xr must satisfy
Ur (xr ) = qr , (2.34)
where, as usual, qr = l:l∈r pl is the price of a particular route r. Note that we have
assumed that xr > 0 in writing down (2.34). This would be true, for example, if the utility
function is an α-utility function with α > 0. Now,
∂D ∂xr ∂yk
= Ur (xr ) − (yl − cl ) − pk
∂pl r
∂pl ∂pl
k
∂xr ∂xr
= Ur (xr ) − (yl − cl ) − pk
r
∂pl ∂pl
k r:k∈r
27 2.6 Feedback delay and stability
∂xr ∂xr
= Ur (xr ) − (yl − cl ) − pk
r
∂pl r
∂pl
k:k∈r
∂xr ∂xr
= Ur (xr ) − (yl − cl ) − qr .
r
∂pl r
∂pl
and
ṗl = hl (yl − cl )+
pl , (2.37)
Note that pl is not allowed to become negative because the KKT conditions impose such a
condition on the Lagrange multipliers. Also, we remark that pl has the same dynamics of
the queue length at the link when hl ≡ 1. It increases at rate yl , which is the arrival rate,
and decreases at rate cl , the capacity of the link. Thus, the links do not have to compute
their dual variables explicitly when hl ≡ 1; the dual variables are simply the queue lengths.
The stability of this algorithm follows in a manner similar to that of the primal algorithm
by considering D(p) as the Lyapunov function, since the dual algorithm is simply a gradient
algorithm for finding the minimum of D(p).
In Chapter 7, we will discuss practical TCP protocols based on the primal and dual
formulations. When we discuss these protocols, we will see that the price functions
and congestion control mechanisms obtained from the two formulations have different
interpretations.
Consider a simple system with one link of capacity c and one source with utility func-
tion log x. In this case, the proportionally fair congestion controller derived in Section 2.4
becomes
1
ẋ = k(x) − f (x) .
x
Choosing k(x) = κx for some κ > 0, so that when x is close to zero the rate of increase is
bounded, this controller can be written as
ẋ = κ(1 − xf (x)). (2.38)
Suppose that f (x) is the loss probability or marking probability when the arrival rate at the
link is x. Then, the congestion control algorithm can be interpreted as follows: increase x
at rate κ and decrease it proportional to the rate at which packets are marked, with κ being
the proportionality constant.
In reality, there is a delay from the time at which a packet is released at the source to the
time at which it reaches the link, called the forward delay, and a delay for any feedback to
reach the source from the link, called the backward delay. So, one cannot implement the
above congestion controller in the form (2.38). Let us denote the forward delay by Tf and
the backward delay by Tb . Taking both delays into consideration, we have
y(t) = x(t − Tf )
and
q(t) = p(t − Tb )
= f (y(t − Tb ))
= f (x(t − Tf − Tb ))
= f (x(t − T)),
where T = Tf + Tb is called the Round-Trip Time (RTT). The congestion controller
becomes the following delay differential equation:
ẋ = κ(1 − x(t − T)f (x(t − T))). (2.39)
Let x̂ be the unique equilibrium point of this delay differential equation, i.e.,
1 − x̂f (x̂) = 0.
To analyze this system, we will assume that x(t) is close to the equilibrium and derive
conditions under which the system is asymptotically stable, i.e.,
z(t) x(t) − x̂
converges to zero as t → ∞. To this end, we will linearize the system around the equi-
librium point and derive conditions under which the resulting linear delay differential
equation is asymptotically stable.
Clearly, we would like to study the global, asymptotic stability of the system instead
of just the asymptotic stability assuming that the system is close to its equilibrium, but
typically studying the global, asymptotic stability is a much harder problem when there
are many links and many sources.
29 2.6 Feedback delay and stability
2.6.1 Linearization
To study the asymptotic stability of (2.39), we substitute x(t) = x̂ + z(t) and linearize the
delay differential equation as follows:
ż = κ 1 − (x̂ + z(t − T))f (x̂ + z(t − T))
≈ κ 1 − (x̂ + z(t − T))( f (x̂) + f (x̂)z(t − T)) ,
where in the second line we only retain terms linear in z in Taylor’s series. The rationale is
that, since x is close to x̂, z is close to zero and z = x − x̂ dominates z2 , z3 , etc. Now, using
the equilibrium condition
1 − x̂f (x̂) = 0,
we obtain
ż = −κ( f (x̂) + x̂f (x̂))z(t − T), (2.40)
where we have again dropped z2 terms for the same reasons as before.
To understand the stability of the linear delay differential equation (2.40), we introduce
the following theorem, which characterizes the necessary and sufficient condition for a
general linear delay differential equation to be asymptotically stable.
Theorem 2.6.1 Consider a system governed by the following linear delay differential
equation:
ẋ(t) = −ax(t) − bx(t − T), (2.41)
where the initial condition x(t), −T ≤ t ≤ 0, is specified. For any choice of the initial
condition, x(t) converges to zero (the unique equilibrium of the system) as t → ∞ if and
only if there exists a χ such that
π χ
0 < χ < , a = −c cos χ T, c = , and − a ≤ b ≤ c. (2.42)
T sin χ T
If a = 0, the condition simplifies to
π
0≤b≤ .
2T
The shaded area in Figure 2.9 is the set of a and b that satisfies condition (2.42). Theorem
2.6.1 is a well-known result in the field of delay differential equations, and we will not
prove it here. The following proposition is an immediate result of the theorem.
Proposition 2.6.2 The linearized version of the proportionally fair controller, given in
(2.40), is asymptotically stable if and only if
π
κT( f (x̂) + x̂f (x̂)) ≤ . (2.43)
2
Equation (2.43) suggests that the parameter κ should be chosen inversely proportional
to T. This means that the congestion control algorithm should react more slowly when
the feedback delay is large. This is very intuitive since, when T is large, the algorithm is
30 Mathematics of Internet architecture
(0, p/(2T ))
(−1/T, 1/T )
0 a
reacting to events that occurred a long time ago and thus should change the source rate x
very slowly in response to such old information.
In this section, we considered the problem of deriving delay differential equation models
for congestion control protocols operating on a single link accessed by a single source.
The modeling part can be easily extended to general networks with an arbitrary number of
links and sources. However, the stability analysis of the resulting equations is considerably
more challenging than in the case of the simple single-source, single-link model. We will
not address this problem in this book, but we provide references in the Notes section at the
end of the chapter.
understand how far away we are from the team-optimal solution if users are strategic, i.e.,
the users are not price-takers. We will address this issue in this section and present a lower
bound on the total network utility if the users are strategic.
subject to
xr ≤ cl , ∀l,
r:l∈r
where xr is the rate allocated to user r, Ur is the user’s utility function, and cl is the capacity
of link l.
In a large network such as the Internet, it is not feasible to solve the utility maximization
problem in a centralized fashion. However, to understand the game-theoretic implica-
tions of the solution, let us suppose that the network is small and that a central network
planner wants to solve the utility maximization problem. To solve the problem, the net-
work planner first has to ask each user to reveal its utility function. However, there may be
an incentive for a user to lie about its utility function; for example, by incorrectly reporting
its utility function, a user may receive a larger data rate. Suppose that user r reveals its
utility function as Ũr (xr ), which may or may not be the same as Ur (xr ). Then, the network
will solve the maximization problem
max Ũr (xr )
x≥0
r
subject to
xr ≤ cl , ∀l,
r:l∈r
and allocate the optimal rate x̃r to user r. Suppose that the user is charged a price qr by
the network for receiving this rate allocation. The goal is to select the price such that there
is no incentive for each user to lie about its utility function. Surprisingly, the following
simple idea works: user r is charged an amount equal to the reduction in the sum utility of
the other users in the network due to the presence of user r. Specifically, the network first
obtains the optimal solution {x̄s } to the following problem, which assumes that user r is not
present in the network:
max Ũs (xs )
x≥0
s=r
subject to
xs ≤ cl , ∀l.
s=r:l∈s
32 Mathematics of Internet architecture
which represents the increase in the sum utility of other users due to the absence of user r.
This pricing mechanism is called the Vickrey–Clarke–Groves (VCG) mechanism.
Let us now consider how users will report their utilities knowing that the network plans
to implement the VCG mechanism. Clearly, each user r will announce a utility function
such that its payoff, i.e., the utility minus the price, is maximized:
Ur (x̃r ) − qr .
We will now see that the payoff obtained by user r when lying about its utility function
is always less than or equal to the payoff obtained when it truthfully reports its utility
function. In other words, we will show that there is no incentive to lie.
If user r reveals its utility function truthfully, its payoff is given by
⎛ ⎞
U t = Ur (x̃rt ) − ⎝ Ũs (x̄st ) − Ũs (x̃st )⎠ ,
s=r s=r
where {x̃st } is the allocation given to the users by the network and {x̄st } is the solution of
the network utility maximization problem when user r is excluded from the network, both
being computed using the submitted utility functions. The superscript t indicates that user
r has revealed its utility function truthfully. Next, suppose that user r lies about its utility
function and denote the network planner’s allocation by x̃l , where superscript l indicates
that user r has lied. Now, the payoff for user r is given by
⎛ ⎞
U l = Ur (x̃rl ) − ⎝ Ũs (x̄st ) − Ũs (x̃sl )⎠ .
s=r s=r
Since {x̄st } is the allocation excluding user r, it is independent of the utility function
submitted by user r.
If truth-telling were not optimal, U l > U t for some incorrect utility function of user r,
which would imply
Ur (x̃rl ) + Ũs (x̃sl ) > Ur (x̃rt ) + Ũs (x̃st ).
s=r s=r
The above expression contradicts the fact that x̃t is the optimal solution to
max Ur (xr ) + Ũs (xs )
x≥0
s=r
subject to the capacity constraints. It is worth noting that we have not made any assump-
tions about the strategies of other users in showing that user r has no incentive to lie.
A strategy that is optimal for a user, independent of the strategies of others, is called a
dominant strategy in game theory parlance. Thus, truth-telling is a dominant strategy under
the VCG mechanism.
Other documents randomly have
different content
että oli paljon parempi, jos esitelmät tahi rehtorin niihin antamat
luvat kokonansa lakkaisivat.
Vaikka minä olin vakuutettu siitä, että tämä minun kantani olisi
saavuttanut yliopiston hyväksymisen, tuntui kuitenkin
vastenmieliseltä siten ehkäistä ylioppilasten kansanvalistustyö siinä
muodossansa, mikä sillä pitkät ajat oli ollut, ja sitäkin enemmän,
koska tätä toimintaa oli pidettävä sangen sopivana tekijänä
johtamaan nuorison voimakasta tarvetta toimia ulospäin ja varsinkin
tähän aikaan. Tämä tarve olisi helposti saattanut suinpäin syöksyä
vastuuttomampaan, suorastaan poliittiseen yllytystyöhön, joka ei olisi
ollut toivottavaa. Minä päätin senvuoksi yrittää saada kanslerin luona
tämän uuden määräyksen peruutetuksi. Tilaisuus tähän tarjoutui
etsimättä sen käynnin aikana, jonka sijaiskansleri ja minä muutamia
päiviä myöhemmin, joulukuun 17 päivänä, kutsun saatuamme
teimme Plehwen luokse sen johdosta, että toimenpiteitä oli
suunniteltu muutamia professoreja vastaan "hallitusvihamielisen"
esiintymisen johdosta.
Kun tämä asia siten päättyi onnellisemmin, kuin oli voitu toivoa, ei
minun tarvinnut, niinkuin aikomukseni oli ollut, pyytää päästä
vapaaksi valvonnasta, tai, jollei sitä olisi myönnetty, kehoittaa
ylioppilaita luopumaan esitelmien kautta tekemästänsä
kansanvalistustyöstä.
Ylioppilaat ja asevelvollisuuskutsunnat.
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
ebookultra.com