150 likes | 344 Views
Path Selection and Multipath Congestion Control by P. Key, L. Massoulie , and D. Towsley. R02 – Network Architectures Michaelmas term, 2013 Ulku Buket Nazlican ubn20@cam.ac.uk. Outline. Introduction The Multipath Framework Load Balancing Path Selection Game Random Path Selection
E N D
Path Selection and Multipath Congestion Controlby P. Key, L. Massoulie, and D. Towsley R02 – Network Architectures Michaelmas term, 2013 UlkuBuket Nazlican ubn20@cam.ac.uk
Outline • Introduction • The Multipath Framework • Load Balancing • Path Selection Game • Random Path Selection • Discussion and Deployment • Conclusion
Introduction • Multipath routing with rate control • Key ideas: • Coordinated control is much better in load balancing. • Nash equilibrium achieved to maximize welfare, when users try to maximize their own benefit. • More paths better for performance resampling for a small set of paths
Introduction • P2P applications use uncoordinated TCP rate control • Coordinated control: rates as a function of all paths • Load balancing • Worst case throughput > 0 • Lead to Nash equilibrium • More paths are better Greater welfare states and throughput capacity • Uncoordinated control: rates independent • Worst case throughput: log(log N) / log N • Worst case: as if each user has a single path • Lead to Nash equilibrium if no RTT-bias exists, maximizing welfare
The Multipath Framework • G = (V, E, C) • Cl: capacity of link l • S: set of session classes • Ns: # sessions in class s. • Us(x) :utility for a session in class s, sending data at rate x • Every class s session uses bs paths
Coordinated control • Objective function to max social welfare: • Utility is applied to aggregate sending rate. • Constraint: • Nc: number of class s sessions, which use set of paths c • Us: utility of class s session • λcr: sending rate of a class s session, that uses path r in c congestion controller • TCP congestion control solves it when each session is restricted to a single path.
Uncoordinated Control • Session with path set c • Independent rate controllers over each path in c. • Done by separate TCP connections for each path. • Objective function changes: • Utility is evaluated on each path and then summed over all paths.
Load Balancing • N resources with unit capacity • aN users • Each selects b>1 resources randomly • Load balance metric: worst-case user rate allocation • Unfair allocation more time to download data
Load Balancing • Uncoordinated multipath congestion control: • Resource: handling X connections • Connection gets 1/X rate allocation • Worst case rate allocation: log(log(N))/log(N) • Coordinated multipath congestion control: • Worst case rate allocation > 0 • Much more better load balancing than uncoordinated control.
Path Selection Game • Each session uses exactly b paths. • Same equilibrium with: • Coordinated control • Uncoordinated control if there is no RTT-bias. • Equilibrium solves optimization problem max welfare
Path Selection Game • Coordinated Congestion Control • Path allocations in Nash equilibrium solve the welfare maximization problem. • Type s players only use minimum cost paths. • Uncoordinated Congestion Control • Utility functions are path-independent • Users find throughput optimal paths Nash equilibrium • Not applies for TCP Reno!
Random Path Reselection • Coordinated control: • Aggregate utility increases with the number of paths. • Overhead Session uses a small set of paths (say 2). • In parallel tries new paths and replace with the better performing ones. • Resampling process converges to a state: used aggregate rates maximize the aggregate sum of utilities. • Uncoordinated control: • Random resampling beneficial if no RTT bias exists.
Discussion and Deployment • Workload of finite length flows • Capacity metric to handle these flows. • Coordinated control • produces monotonicity • More is better • Random reselection applies • Uncoordinated control • Small set of paths + random resampling higher capacity. • Deployment • Diversity • Congestion controller
Conclusion • Beneficial • Uncoordinated control: simpler, poorer performance • Coordinated control: better performing, harder. • Users selecting paths selfishly: • Coordinated control optimum rates • Uncoordinated achieves too, if RTT bias is removed. • Optimum can be achieved by a small set of paths and by resampling.
Conclusion • Beneficial • Uncoordinated control: simpler, poorer performance • Coordinated control: better performing, harder. • Users selecting paths selfishly: • Coordinated control optimum rates • Uncoordinated achieves too, if RTT bias is removed. • Optimum can be achieved by a small set of paths and by resampling. Thanks for listening… ubn20@cam.ac.uk