250 likes | 399 Views
Path selection and multipath congestion control. Peter Key, Laurent Massoulie , Don Towsley Infocom 07 presented by Park HoSung. M otivation. multipath data transfer efficiency : performance gain robustness : overcome node failure already a large fraction of internet traffic
E N D
Path selection and multipath congestion control Peter Key, Laurent Massoulie, Don Towsley Infocom 07 presented by Park HoSung
Motivation • multipath data transfer • efficiency : performance gain • robustness : overcome node failure • already a large fraction of internet traffic • we need multipath congestion control
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)
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)
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
Solution Approach • set the modeling framework • make assumptions • coordinated or uncoordinated • RTT biased or unbiased • route resampling or not • derive results mathematically • No Experiments!
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
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
(cont’d) • constraint • outcome of congestion control is defined to the solution of the welfare maximization problem
(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
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
(cont’d) • constraint • optimal rates Λr actually solves the following
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
(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
(cont’d) • In static random path case • coordinated is better than uncoordinated • coordinated is better than greedy least-loaded resource selection [ 1/log(log(N)) ] • better use of resources by actively balancing load among available resoureces
Nash Equilibria for Throughput-Maximizing 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
(cont’d) • Nash equilibrium • If each player has chosen a strategy and no player can benefit by changing his or her strategy while the other players keep theirs unchanged
(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
(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
(cont’d) • C.coordinated congestion control • Nash equilibirum if is satisfied • path allocation solve the welfare maximization problem
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
(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
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
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