Path selection and
multipath congestion control
Peter Key, Laurent Massoulie, Don
Towsley
Infocom 07
presented by
Park HoSung
1
Motivation
• multipath data transfer
– efficiency : performance gain
– robustness : overcome node failure
• already a large fraction of internet traffic
• we need multipath congestion control
2
Recent P2P strategies
• Kazaa
– choose multiple paths manually
• Skype
– select paths automatically
• Bittorrent
– maintain 4 active paths
– periodically select 1 random path
– retain best paths (by throughput)
3
Questions
• 1. several paths vs all paths
– we want to keep overhead small
– using several paths is okay?
• 2. effect of RTT bias
– loss of efficiency with RTT bias
• 3. uncoordinated vs coordinated
– uncoordinated : using parallel connections (TCP)
– coordinated : balancing load across paths
(revised protocol or application)
4
Answers
• 1. several paths vs all paths
– using a small number of paths does
as well as using all the paths
• 2. effect of RTT bias
– loss of efficiency with RTT bias
• 3. uncoordinated vs coordinated
– static case :
coordinated controller is better
– path reselection, no RTT bias case :
uncoordinated controller does as well as
coordinated controller
5
Solution Approach
• set the modeling framework
• make assumptions
– coordinated or uncoordinated
– RTT biased or unbiased
– route resampling or not
• derive results mathematically
• No Experiments!
6
Outline
• 1. With Static random path
– fixed randomly selected routes
• 2. Allow users to change set of routes
– users seek to selfishly maximize their own net
utilities
• 3. With simple path selection policy
– random path resampling with moving to paths
with higher benefit
7
Modeling Framework
• Uncoordinated Congestion Control
– assume that each user try to maximize their
throughput
– uses have to same # of connections
– rate is achieved by some default congestion
control mechanism (e.g. TCP)
– criterion for optimality is achieved rate
8
(cont’d)
• constraint
• outcome of congestion control is defined
to the solution of the welfare
maximization problem
9
(cont’d)
Ns’ : # of s-user
Ns : # of connection of s-user
Ns = b*Ns’
Nr = total # of connection of s-user,
through route r
• Ur(λr) : utility function of λr rate
• Λ = {Λr} vector of aggregate rate
• Γ : penalty function
•
•
•
•
10
Modeling Framework
• Coordinated Congestion Control
– assume that s-user can user concurrentyl
paths from collection c ( c is subse of R(s) )
– C(s) is path collections allowed
• subset of R(s) of size b
– Nc : # of users using c paths
– Ns : # of s-users
– Use single utility function Us with s-user
11
(cont’d)
• constraint
• optimal rates Λr actually solves the
following
12
Static, Random Route Selections
• N resources with unit capacity
• penalty step function
• a*N users
• each user selects b resources at random
• measure worst case rate allocation
13
(cont’d)
• A. uncoorinated congestion control
– λi : total rate of user i from all its connection
– worst case allocation decreases like log(log(N))/log(N)
• B. coordinated congestion control
– λi* : optimal allocation, there exists x > 0
– worst case allocation is bounded away from 0 as N tends to
infinity
14
(cont’d)
• In static random path case
– coordinated is better than uncoordinated
– coordinated is better than greedy leastloaded resource selection [ 1/log(log(N)) ]
– better use of resources by actively balancing
load among available resoureces
15
(cont’d)
16
Nash Equilibria for ThroughputMaximizing Users
• users can choose the set of routes
• users greedily search for throughput
optimal routes
• coordinated, uncoordinated without RTT
bias
– these equilibria achieve welfare maximization
• uncoordinated with RTT bias
– yields inefficient equilibria
17
(cont’d)
• Nash equilibrium
– If each player has chosen a strategy and no
player can benefit by changing his or her str
ategy while the other players keep theirs un
changed
18
(cont’d)
• A. uncoordinated, unbiased congestion control
– s-user would maintain a connection along route r
only if it cannot find a better route r'
(better route allocates a larger rate)
– this case achieves a Nash equilibrium, solving
coordinated optimization problem
19
(cont’d)
• B. uncoordinated, biased congestion
control
– TCP utility function
regarding RTT
– bad example
• short(s), long(l) connection
– s : RTT t, capacity c
– l : RTT T, capacity C
– a->a’, b->b’, c->c’
• s-l-s is Nash equilibrium
• but throughput of s-l-s is smaller than l-s-l’s
20
(cont’d)
• C.coordinated congestion control
– Nash equilibirum if
is satisfied
– path allocation solve the welfare
maximization problem
21
Dynamic Route Selection
• User with route set c proposes a new route
set c’ at fixed rate Acc’
• New route set is accepted if net benefit is
higher than that of the current set
• both coordinated, uncoordinated case
lead to welfare maximizing equilibrium
22
(cont’d)
• simple path selection policy
– random path resampling with moving to
paths with higher benefit
– can lead welfare maximizing equilibria
• do as well as if the entire path choice
was available to each user
23
Conclusion
• Without path reselection
– uncoordinated control can perform poorly
• Small # of routes choice does as well as whole set
• With no RTT bias
– both coordinated and uncoordinated control
leasd to a system optimal
• Good design for multipath rate controller
– coordinated controller
– uncoordinated controller with no RTT bias
24
Comment
• How can it work with existing controllers
– Is it possible to deploy gradually?
• How can we implement?
• No experimental data
– there will be many other variables
• Good guideline for a design
25
© Copyright 2026 Paperzz