Optimizing Cost and Performance for Multihoming Nick Feamster CS 6250 Fall 2011
Multihoming & Smart Routing Multihoming –A popular way of connecting to Internet Smart routing –Intelligently distribute traffic among multiple external links 2 User ISP 1 ISP K Internet ISP 2
Potential Benefits Improve performance –Potential improvement: 25+% [Akella03] –Similar to overlay routing [Akella04] Improve reliability –Two orders of magnitude improvement in fault tolerance of end-to-end paths [Akella04] Reduce cost 3 Q: How to realize the potential benefits?
Goals Goal –Design effective smart routing algorithms to realize the potential benefits of multihoming Questions –How to assign traffic to multiple ISPs to optimize cost? –How to assign traffic to multiple ISPs to optimize both cost and performance? –What are the global effects of smart routing? 4
Network Model Network performance metric –Latency (also an indicator for reliability) –Extend to alternative metrics log (1/(1-lossRate)), or latency+w*log(1/(1- lossRate)) ISP charging models –Cost = C 0 + C(x) –C 0 : a fixed subscription cost –C : a piece-wise linear non-decreasing function mapping x to cost –x : charging volume Total volume based charging Percentile-based charging (95-th percentile) 5
Percentile Based Charging 6 Interval Sorted volume N 95%*N Charging volume: traffic in the (95%*N)-th sorted interval
Why cost optimization? A simple example: –A user subscribes to 4 ISPs, whose latency is uniformly distributed –In every interval, the user generates one unit of traffic To optimize performance –ISP 1: 1, 0, 0, 0, … –ISP 2: 0, 1, 0, 0, … –ISP 3: 0, 0, 1, 0, … –ISP 4: 0, 0, 0, 1, … –95th-percentile = 1 for all 4 ISPs –95th-percentile = 1 using one ISP Cost(4 ISPs) = 4 * cost(1 ISP) 7 Optimizing performance alone could result in high cost!
Cost Optimization: Problem Specification (2 ISPs) 8 Time Volume P1 P2 Goal: minimize total cost = C1(P1)+C2(P2) Sorted volume
Issues & Insights Challenge: traditional optimization techniques do not work with percentiles Key: determine each ISPs charging volume Results –Let V0 denote the sum of all ISPs charging volume –Theorem 1: Minimize cost Minimize V0 –Theorem 2: V0 1- k=1..N (1-q k ) quantile of original traffic, where q k is ISP ks charging percentile 9
Cost Optimization: Problem Specification (2 ISPs) 10 Time Volume P1 P2 P1 + P2 90-th percentile of original traffic Sorted volume
Intuition for 2-ISP Case ISP 1 has 5% intervals whose traffic exceeds P1 ISP 2 has 5% intervals whose traffic exceeds P2 The original traffic (ISP 1 + ISP 2 traffic) has 10% intervals whose traffic exceeds P1+P2 P1+P2 90-th percentile of original traffic 11
Algorithm Sketch 1.Determine charging volume for each ISP –Compute V0 –Find p k that minimize k c k (p k ) subject to k p k =V0 using dynamic programming 2.Assign traffic given charging volumes –Non-peak assignment: ISP k is assigned p k –Peak assignment: First let every ISP k serve its charging volume p k Dump all the remaining traffic to an ISP k that has bursted for fewer than (1-q k )*N intervals 12
Additional Issues Deal with capacity constraints Perform integral assignment –Similar to bin packing (greedy heuristic) Make it online –Traffic prediction Exponential weighted moving average (EWMA) –Accommodate prediction errors Update V0 conservatively Add margins when computing charging volumes 13
Optimizing Cost + Performance One possible approach: design a metric that is a weighted sum of cost and performance –How to determine relative weights? Our approach: optimize performance under cost constraints –Use cost optimization to derive upper bounds of traffic that can be assigned to each ISP –Assign traffic to optimize performance subject to the upper bounds 14
Evaluation Method Traffic traces (Oct – Jan. 2004) –Abilene traces (NetFlow data on Internet2) RedHat, NASA/GSFC, NOAA Silver Springs Lab, NSF, National Library of Medicine Univ. of Wisconsin, Univ. of Oregon, UCLA, MIT –MSNBC Web access logs Realistic cost functions [Feb Blind RFP] Delay traces –NLANR traces: 3 months RTT measurements between pairs of 140 universities –Map delay traces to hosts in traffic traces 15
Conclusions First paper on jointly optimizing cost and performance for multihoming Propose novel smart routing algorithms that achieve both low cost and good performance Under traffic equilibria, smart routing improves performance without hurting other traffic 16