510 likes | 633 Views
On Selfish Routing In Internet-Like Evironments. Lili Qiu (Microsoft Research) Yang Richard Yang (Yale University) Yin Zhang (AT&T Research) Scott Shenker (ICSI). Motivation. Practical front A recent trend: end hosts choose routes Source routing (e.g., Nimrod)
E N D
On Selfish Routing In Internet-Like Evironments Lili Qiu (Microsoft Research) Yang Richard Yang (Yale University) Yin Zhang (AT&T Research) Scott Shenker (ICSI) System & Network Reading Group
Motivation • Practical front • A recent trend: end hosts choose routes • Source routing (e.g., Nimrod) • Overlay routing (e.g., Detour or RON) • Characteristics of routing by end hosts • Improve over today’s IP routing (e.g., delay, loss rate) • Selfish by nature (i.e., optimize user-centric performance without considering system-wide criteria) • Theory front • Roughgarden et al. showed selfish routing can result in serious performance degradation due to lack of cooperation System & Network Reading Group
Example: Selfish Routing May Yield Sub-Optimal Performance • Selfish routing • All traffic go through the lower link • Total latency = 1 • Optimal routing (i.e., minimize total latency) • Traffic split equally between the two links • Total latency = ¾ • The performance degradation can be unbounded for non-linear latency functions L(x)=1 src dest L(x)=x System & Network Reading Group
Open Issues • How does selfish routing perform in Internet-like environments? • Realistic network topologies • Realistic traffic demands • Realistic network delay functions • How does selfish overlay routing perform? • How does selfish traffic co-exist with the remaining traffic that uses traditional routing protocols? • How does users’ selfish routing interact with underlying network control process (e.g., traffic engineering) System & Network Reading Group
Outline • Overview • Related work • Network model • Approach to compute traffic equilibria • Performance results • Physical routing • Overlay routing • Multiple overlays • Interaction with traffic engineering • Summary and future work System & Network Reading Group
Overview • Approach • Use a game-theoretic approach to answer the above open issues • Focus on intra-domain scenarios • Recent advances in topology mapping and traffic estimation • Compare with theoretical results • Focus on equilibrium behavior • Compare the performance of Nash Equilibria with the global optima based on realistic topologies, traffic demands, latency functions System & Network Reading Group
Some of Key Results • Formulate and evaluate selfish overlay routing • Unlike the theoretical worst cases, selfish routing in Internet-like environments yields close to optimal latency • The above result is true for both source routing and overlay routing • Selfish routing can achieve good performance without hurting the traffic that is using default routing System & Network Reading Group
Some of Key Results (Cont.) • Mismatch between selfish routing and traffic engineering • Different objectives • Selfish routing: minimize e2e delay • Traffic engineering: aim to balance load • Selfish routing reduces latency at the cost of increased congestion • The adaptive nature of selfish routing makes traffic demands less predictable and reduces the effectiveness of traffic engineering System & Network Reading Group
Related Work • Measurement results • Detour and RON projects showed that default routing path is often sub-optimal in terms of latency, loss rate, and TCP throughput • Possible causes of routing inefficiency • Routing hierarchy • Routing policy • Different routing objectives used by ISPs • Stability problem in routing protocols, such as BGP • … System & Network Reading Group
Related Work (Cont.) • Theory results • Koutsoupias and Papadimitriou compared the worst-case Nash equilibrium with a global optimal in a two-node network • Price of anarchy (i.e., worst-case ratio between the total latency of a Nash equilibrium and that of the global optimal) can be unbounded [Roughgarden00] • The performance degradation due to selfish routing can be compensated for by doubling the bandwidth on all links [Roughgarden01] System & Network Reading Group
Network Model • Physical network • Directed graph G=(V,E) • Latency of each edge is a function of its load (e.g., M/M/1) • Demands • demand(i,j): the amount of traffic from a source i to a destination j • Overlays • A set of overlay nodes and a set of demands • Consider mesh-like overlay topologies • Users • Each user decides how its traffic should be routed to optimize performance (e.g., min latency) System & Network Reading Group
Network Model (Cont.) • Route controller • Uses network-level routing • OSPF/IS-IS: shortest-path with equal-weight splitting, with the following weight settings • Hop-count • Random-weight • Optimized-compliant weight: minimize network cost when assuming all traffic is compliant (i.e., following the routes determined by the network • MPLS: general multi-commodity flow routing System & Network Reading Group
Different Routing Schemes • Physical routing • Source routing (i.e., selfish routing studied in previous theoretical work) • Optimal routing • Overlay routing • Overlay source routing (i.e., selfish routing with routing constraints) • Overlay optimal routing • Compliant routing (i.e., normal Internet routing) System & Network Reading Group
Approach to Computing the Traffic Equilibria • General approach • Simulation-based: too expensive to derive traffic equilibria • We use a game-theoretic approach to compute the traffic equilibria directly • Computing the equilibria of physical routing • linear-approximation algorithm, a variant of Frank-Wolfe algorithm • Computing the equilibria of overlay routing • Symmetric: Modified linear approximation algorithm • Asymmetric: Jacob’s relaxation algorithm • Computing the equilibria of multiple overlays • Use the relaxation algorithm to guarantee the convergence System & Network Reading Group
Evaluation Methodology • Network topology • A large tier-1 ISP topology • Rocketfuel topologies • Random power-law topologies • Traffic demands • Real traffic demands from the ISP • Synthetic traffic demands • Link latency functions • M/M/1, M/D/1, P/M/1, P/D/1, BPR • Performance metrics • Average latency • Maximum link utilization • Network costs: piece-wise linear, increasing, convex function [FRT02] System & Network Reading Group
Outline • Overview • Related work • Network model • Approach to compute traffic equilibrium • Performance Evaluation • Source routing • Overlay routing • Multiple overlays • Interaction with traffic engineering • Summary and future work System & Network Reading Group
Selfish Source Routing • Questions • Are Internet-like environments among the worst-case? • What is the system-wide cost for selfish source routing? • Dimensions • Performance metrics: latency & network load • Effects of network topologies • Effects of network load • Effects of latency functions System & Network Reading Group
Selfish Source Routing: Latency • Effects of network topologies Selfish routing yields close to optimal latency, much better than compliant System & Network Reading Group
Selfish Source Routing: Network Load • Effects of network topologies Selfish routing tends to overload links. System & Network Reading Group
Summary: Selfish Source Routing • The performance is qualitatively the same as we vary latency functions and network load • Unlike the theoretical worst cases, selfish source routing yields close to optimal latency • Selfish routing tends to overload links on the shortest paths System & Network Reading Group
Outline • Overview • Related work • Network model • Approach to compute traffic equilibrium • Performance results • Source routing • Overlay routing • Multiple overlays • Interaction with traffic engineering • Conclusion and future work System & Network Reading Group
Selfish Overlay Routing • Questions • Does selfish overlay routing perform well? • How does the coverage of overlay network affect the performance? • Dimensions • Effects of network topologies • Effects of amount of overlay coverage • Effects of how overlay nodes are selected (e.g., random or edge nodes) System & Network Reading Group
Difference between Source Routing and Overlay Routing • Even if the overlay includes all network nodes, routing on an overlay is still different • Network-level routing can prevent any overlay traffic from using a link by setting the corresponding entry in routing matrix to 0 (in OSPF this is achieved by assigning a large weight) • Certain physical routes cannot be implemented by any overlay routing • Routing flexibility is further reduced when only a fraction of nodes belong to an overlay System & Network Reading Group
Selfish Overlay Routing (Full Overlay Coverage) System & Network Reading Group
Selfish Overlay Routing (Full Overlay Coverage) • Direct Link Shortest [DLS] • For any physically adjacent nodes A and B, all the traffic from A to B is routed through the direct link AB without involving any other links. (e.g., hop-count-based OSPF) • For an overlay that covers all network nodes and satisfies DLS • routing on the overlay = routing on the underlay • Hop-count-based OSPF and optimized OSPF weights satisfy DLS they perform similarly as source routing • Random OSPF weights violate DLS some links are pruned, and performance degrades System & Network Reading Group
Selfish Overlay Routing (Partial Overlay Coverage) • Overlay is formed from all edge nodes in ISPTopo System & Network Reading Group
Summary: Selfish Overlay Routing • For full overlay coverage • Overlay has full routing control when the underlay satisfies DLS • The only way in which OSPF affects overlay routing is by violating DLS, which reduces available network resources • Overlay selfish routing reduces latency at the expense of higher network cost • The effects of partial coverage are small in backbone topologies System & Network Reading Group
Outline • Overview • Related work • Network model • Approach to compute traffic equilibrium • Performance results • Source routing • Overlay routing • Multiple overlays • Interaction with traffic engineering • Conclusion and future work System & Network Reading Group
Interactions among Competing Overlays • Question • Can multiple overlays share network resources fairly and effectively? • Dimensions • Effects of network topologies • Effects of network-level routing schemes • Effects of network load and traffic distribution among overlays • Effects of the number of competing overlays System & Network Reading Group
Interactions among Competing Overlays (Cont.) • Effects of network-level routing System & Network Reading Group
Summary: Interactions among Competing Overlays • With reasonable OSPF weights (e.g., hop-count) • Different routing schemes co-exist without hurting each other • With bad OSPF weights • Selfish overlay improves both for themselves and for compliant traffic System & Network Reading Group
Outline • Overview • Related work • Network model • Approach to compute traffic equilibrium • Performance results • Source routing • Overlay routing • Multiple overlays • Interactions with traffic engineering • Conclusion and future work System & Network Reading Group
Selfish Routing vs. Traffic Engineering • So far we assume network is dumb (i.e., static underlay routing) • In practice, the network is smart due to traffic engineering (i.e., underlay routing adapts to varying traffic) • Question • Will the system reach a state with both low latency and low network cost, as selfish routing and traffic engineering each tries to optimize their objective by adapting to the other process? System & Network Reading Group
Specification of Vertical Interactions • Interactive process between two players • Traffic engineering • Given traffic matrix Tt, where Tt(s,d) denotes traffic from source s to destination d in time slot t • Compute routing matrix Rt for the underlay • Selfish routing • Given routing matrix Rt for the underlay • Produce new traffic matrix Tt System & Network Reading Group
One Round during Vertical Interaction T(t) = Traffic matrix when routing matrix is R(t-1) R(t) = OptimizedRoutingMatrix(T(t)) Traffic engineering installs R(t) to network Selfish routing redistributes traffic to form T(t+1) Note that different from traditional games System & Network Reading Group
Vertical Interaction with OSPF Optimizations OSPF route optimization interacts poorly with selfish routing System & Network Reading Group
Vertical Interaction with MPLS Optimization MPLS optimization interacts with selfish routing more effectively System & Network Reading Group
Summary: Selfish Routing vs. Traffic Engineering • OSPF route optimization interacts poorly with selfish routing • MPLS interacts with selfish routing more effectively • Despite the encouraging results from MPLS, several challenges exist • How to estimate traffic matrices accurately in presence of adaptive selfish traffic? • Large optimization problems System & Network Reading Group
Conclusion • When the network-level routing is static, selfish routing achieves close to optimal latency • The good latency achieved in selfish-routing comes at the cost of increased congestion • When selfish routing and traffic engineering each tries to minimize its own cost by adapting to the other process, the resulted performance could be much worse System & Network Reading Group
Future Work • Study impacts of multi-AS nature of the Internet • Study dynamics of selfish routing (i.e., how traffic equilibria are reached?) • Improve the interactions between selfish routing and traffic engineering • Study other selfish routing objectives (e.g., loss and throughput) System & Network Reading Group
Interactions among Competing Overlays (Cont.) • Effects of network topologies System & Network Reading Group
Interactions among Competing Overlays (Cont.) • Effects of network load and traffic distribution among overlays System & Network Reading Group
Interactions among Competing Overlays (Cont.) • Effects of the number of overlays System & Network Reading Group
Summary: Selfish Routing vs. Traffic Engineering • OSPF route optimization interacts poorly with selfish routing • MPLS interacts with selfish routing more effectively System & Network Reading Group
Selfish Source Routing: Latency • Effects of network load System & Network Reading Group
Selfish Source Routing: Latency (Cont.) • Effects of latency functions System & Network Reading Group
Selfish Source Routing: network load • Effects of network loads System & Network Reading Group
Selfish Source Routing: network load (Cont.) • Effects of latency functions System & Network Reading Group
Selfish Overlay Routing (Full Overlay Coverage) System & Network Reading Group
Selfish Overlay Routing (Full Overlay Coverage) (Cont.) System & Network Reading Group