RRM in Multidimensional Wireless Networks

Flow Control
KAIST CS644
Advanced Topics in Networking
Jeonghoon Mo
<[email protected]>
School of Engineering
Information and Communications University
1
Acknowledgements

Part of slides is from
- tutorial of R. Gibbens and P. Key at
SIGCOMM 2000
- S. Low’s OFC presentation
Jeonghoon Mo
October 2004
2
Overview
Problem
 Objectives
 Kelly’s Framework - Wired Data Networks
 Extensions
- Quality of Service
- Wireless Network
- High Speed Network: Aggregated Flow
Control

Jeonghoon Mo
October 2004
3
Problem
Flows share links:
How to share the links bandwidth?
Jeonghoon Mo
October 2004
4
Problem

How to control the network to share the
bandwidth efficiently and fairly?
Jeonghoon Mo
October 2004
5
Link Model
Set of resources, J; set of routes, R
 A route r is a subset r  J.
 Let

A

jr

1
jr
0 otherwise
Capacity of resource j is Cj.
A’x  c
x0
Jeonghoon Mo
October 2004
6
A Few System Objectives
Max Throughput
 Max-min Fairness (Most Common)
 Proportional Fairness (Kelly)
 -Fairness (Mo, Walrand)

Jeonghoon Mo
October 2004
7
Max System Throughput
6
6
x2

Maximize:
x(1) + x(2) + x(3)

x*= (0,6,6)
maximizes the total
system throughput.

However, user 1 does
not get anything. =>
unfair
x1 x
3
Two links with capacity 6
 Three users: 1,2,3
 x(i) : bandwidth to user i
 x(1)+x(2) <= 6
 x(1)+x(3) <= 6

Jeonghoon Mo
October 2004
8
Max-Min Fairness
6
6
x2
x1 x
3

Most commonly used definition of fairness.
Maximize Minimum of the x(i), recursively.
x*= (3,3,3) is the max-min allocation.

However, user 1 uses more resources.


Jeonghoon Mo
October 2004
9
Proportional Fairness
6
6
x2





x1 x
3
Proposed by Frank Kelly
Social Welfare: Sum of Utilities of Users  log( xi )
i
Maximize the Social Welfare
x*= (2,4,4) is the Proportional Fair Allocation.
Can be generalized into “Utility Fairness”.
Jeonghoon Mo
October 2004
10
-Fairness
Generalized Fairness Definition
(1-)
x
 System Objective:
Max i pi

1-

includes proportional-fair, max-min-fair, max
throughput
-  = 0 : Maximum allocation (p=1)
-   1 : Proportional fair allocation
-  = 2 : TCP-fair allocation
-   : Max-min fair allocation (p=1)
Jeonghoon Mo
October 2004
11
-Fairness

Trade-off between Fairness and Efficiency
- Bigger  favors Fairness
- Smaller  favors Efficiency
(source: Is Fair Allocation Inefficient, INFOCOM 04)
Jeonghoon Mo
October 2004
12
Fairness and Efficiency (Infocom 04)

Counter-Example
Jeonghoon Mo
October 2004
13
Algorithms
How to achieve those system objectives?
14
Players
source
- controls its rate or window based on
(implicit or explicit) network feedback
 router (link)
- Generate (implicit) feedback or controls
packets

Jeonghoon Mo
October 2004
15
Source Algorithm
TCP Vegas, RENO, ECN
 XCP

Jeonghoon Mo
October 2004
16
Active Queue Management (AQM)





Priority Queue
WFQ
RED
REM
XCP Router
Jeonghoon Mo
October 2004
17
Kelly’s Model and Algorithm
18
User: rate and utility
Each route has a user: if xr is the rate on
route r, then the utility to user r is Ur(xr).
 Ur() --- increasing, strictly concave,
continuously differentiable on xr  [0 , ) --elastic traffic
 Let C=(Cj, j J), x=(xr, r  R) then Ax  C.

Jeonghoon Mo
October 2004
19
System problem

Maximize aggregate utility, subject to capacity
constraints
max
 U x 
r
rR
Jeonghoon Mo
October 2004
subject to
Ax  C
over
x0
r
20
User problem

User r chooses an amount to pay per unit time
wr, and receives in return a flow xr = wr/r
 wr 
max U r    wr
 r 
over wr  0
Jeonghoon Mo
October 2004
21
Network problem

As if the network maximizes a logarithmic
utility function, but with constants (wr, rR)
chosen by the users
max
 w log x
rR
Jeonghoon Mo
October 2004
r
subject to
Ax  C
over
x0
r
22
Three optimization problems

SYSTEM(U,A,C)

USERr(Ur;r)

NETWORK(A,C;w)
Jeonghoon Mo
October 2004
23
Decomposition theorem

There exist vectors  , w and x such that
1. wr = rxr for r  R
2. wr solves USERr(Ur; r)
3. x solves NETWORK(A, C; w)
The vector x then also solves SYSTEM(U, A, C).
Jeonghoon Mo
October 2004
24
Thus the system problem may be solved by
solving simultaneously the network and user
problems
Jeonghoon Mo
October 2004
25
Result

A vector x solves NETWORK(A, C; w) if and
only if it is proportionally fair per unit charge
Jeonghoon Mo
October 2004
26
Solution of network problem
Strategy: design algorithms to implement
proportional fairness
 Several algorithms possible: try to mimic
design choices made in existing standards

Jeonghoon Mo
October 2004
27
Primal algorithm
d


xr t     wr  xr t   j t  
dt


rR


 j t   p j   xs t 
 s: js

Jeonghoon Mo
October 2004
28
Interpretation of primal algorithm
Resource j generates feedback signals at rate j(t)
 signals sent to each user r whose route passes
through resource j
 multiplicative decrease in flow xr at rate proportional
to stream of feedback signals received
 linear increase in flow xr at rate proportional to wr

Jeonghoon Mo
October 2004
29
Related Work
Optimization Flow Control (S. Low)
 Window based Model (Mo, Walrand)

Jeonghoon Mo
October 2004
30
Optimization Flow Control



Distributed algorithm to share network resources
Link algorithm: what to feed back
- RED
Source algorithm: how to react
- TCP Tahoe, TCP Reno, TCP Vegas
Source alg
Link alg
Jeonghoon Mo
October 2004
31
Welfare maximization
Primal problem:
max
ms  x s  M s
subject to
U ( x )
s
s
s
x
sS ( l )
s
 cl , l  L
Capacity cl can be less than real link
capacity
 Primal problem hard to solve & does not adapt

Jeonghoon Mo
October 2004
32
Model
Network: Links l each of capacity cl
 Sources s:
(L(s), Us(xs), ms, Ms)
L(s) - links used by source s
Us(xs) - utility if source rate = xs

x1
ms  xs  M s
x1  x2  c1
x1  x3  c2
c1
c2
x2
x3
Jeonghoon Mo
October 2004
33
Distributed Solution
D(p)
Dual problem: min
p 0
D( p)   Bs ( p s )   pl cl
s
l
Bs ( p )  max U s ( xs )  xs p s
s
ms  x s  M s
ps 
p
l L ( s )
BW price along path of s
l
s
 Given p sources can max own benefit individually
s
s
 xs ( p ) indeed primal optimal if p is dual optimal
 Solve dual problem!
Jeonghoon Mo
October 2004
34
Distributed Solution (cont…)
min D(p)

Dual problem:

Grad projection alg:

Update rule:
p 0
p(t  1)  [ p(t )  D( p(t ))]
pl (t  1)  [ pl (t )   ( xl (t )  cl )]
xs (t  1)  U s'1 ( p s (t ))

A distributed computation system to solve the dual
problem by gradient projection algorithm
Jeonghoon Mo
October 2004
35
Source Algorithm
xs ( p s ) = U s '-1 ( p s )
ps
s
Decentralized: Source s needs only U s ' ( xs ) and p
Jeonghoon Mo
October 2004
36
Router (Link) Algorithm
pl (t  1)  [ pl (t )   ( x l (t )  cl )]
aggregate
source
rate
Decentralized
 Rule of supply and demand
 Any work-conserving service discipline
 Simple

Jeonghoon Mo
October 2004
37
Random Exponential Marking (REM)

Source algorithm
- Identical but does not communicate source rate

Link algorithm
- At update time t, sets price to a fraction of buffer occupancy:

Theorem: Synchronous convergence
Under same conditions (with possibly smaller
- Price update maintains descent direction
- Gradient estimate converge to true gradient
- Limit point
is primal-dual optimal

Jeonghoon Mo
October 2004
):
38
RED
- Idea: early warning of congestion
- Algorithm
Link:
Source (Reno):
marking
window
1
queue
B
Jeonghoon Mo
October 2004
time
39
RED
- Idea: marks for estimation of shadow price
- Algorithm
Link
Source
marking
rate
1
queue
Q
1
fraction
of marks
Global behavior of network of REM: stochastic
gradient algorithm to solve dual problem
Jeonghoon Mo
October 2004
40
Window-based Model [Mo,Walrand]
d1
w1
q11
c1 x1
q21 c
2
x2 q
12
x3 q
23
d2
d3
xi  0, i = 1, 2, 3
qi  0, i = 1, 2,
x1 + x2  c1
q1(c1 - x1 - x2) = 0
Q = diag{qi }; X = diag{xi }.
A’x  c
Q(c - A’x) = 0
w = X(d + qA)
w1 = x1 d1 + x1 q1 + x1 q2
Jeonghoon Mo
October 2004
41
Window-based Algorithm
Theorem: [Mowlr98]
Let
dwi
ds
=-k i i
dt
ti wi
si := wi - xi di - pi
ti := end-to-end delay
Then x(t) -> unique weighted -fair point x*
Proof:
The function i (si /wi ) 2 is a Lyapunov function
Jeonghoon Mo
October 2004
42
Extensions
-
Aggregated Flow Control
Quality of Service
Wireless Network
Maxnet and Sumnet
Jeonghoon Mo
October 2004
43
Aggregate Flow Control
Motivations:
- High Capacity of Optical Fiber
 Idea:
- player are core routers and access routers.

access router: regulates the rate of aggregated
flow
 core router: provide feedbacks to access routers

Jeonghoon Mo
October 2004
44
Quality of Service
Only bandwidth is modeled.
 QoS is affected by
- loss and delay also
 How to incorporate other parameters?

Jeonghoon Mo
October 2004
45
Non-Convex Utility Function (Lee04)


Considered sigmoidal
utility function
Non-convex optimization
problem =>duality gap
(source: J. Lee et. al. Non-convexity Issues, INFOCOM 04)
Jeonghoon Mo
October 2004
46
Non-Convex Utility Functions
Dual Algorithm with
Self-Regulating Property
Without Self-Regulation
With Self-Regulation
(source: J. Lee et. al. Non-convexity Issues, INFOCOM 04)
Jeonghoon Mo
October 2004
47
Wireless Ad-Hoc Network [RAD04]

Physical Model:Rate r is an increasing function of SINR.
MAC : Each time slot determines power pn,which
determines rate xn

Routing matrix R and flow to path matrix F are given.

Jeonghoon Mo
October 2004
48
Random Topology Results
100m x100m grid
12 random node, with 6 pairs of transmissions
Jeonghoon Mo
October 2004
49
In the wireless Ad-hoc Networks

The max-min fair rate allocation of any
network has all rates equal to the worst node.

The capacity maximization objective leads to
starving users.

Proportional Fair Allocation give reasonable
trade-off between fairness and efficiency.
- The worst node does not starve.
Jeonghoon Mo
October 2004
50
MaxNet and SumNet
Source takes max(d1,d2,…, dN) in the maxnet
architecture
 Source takes sum(d1,d2,…,dN) in the sumnet
architecture.

Max
Si
Source
Jeonghoon Mo
October 2004
d1
Link 1
d2
Link 2
dN
Link N
Destination
51