Title: On Selfish Routing In Internetlike Environments
1On Selfish Routing In Internet-like Environments
- Lili Qiu (Microsoft Research)
- Yang Richard Yang (Yale University)
- Yin Zhang (ATT Labs Research)
- Scott Shenker (ICSI)
University of California, San Diego
2Selfish Routing
- IP routing is sub-optimal for user performance
- Routing hierarchy and policy routing
- Equipment failure and transient instability
- Slow reaction (if any) to network congestion
- Autonomous routing users pick their own routes
- Source routing (e.g. Nimrod)
- Overlay routing (e.g. Detour, RON)
- Autonomous routing is selfish by nature
- End hosts or routing overlays greedily select
routes - Optimize their own performance goals
- without considering system-wide criteria
3Bad News
- Selfish routing can seriously degrade performance
Roughgarden Tardos
- Worst-case ratio is unbounded
- - Selfish source routing
- All traffic through lower link
- ? Mean latency 1
- Latency optimal routing
- To minimize mean latency, set x 1/(n1) 1/n
- ? Mean latency ? 0 as n ? ?
4Questions
- Selfish source routing
- How does selfish source routing perform?
- Are Internet environments among the worst cases?
- Selfish overlay routing
- How does selfish overlay routing perform?
- Does the reduced flexibility avoid the bad cases?
- Horizontal interactions
- Does selfish traffic coexist well with other
traffic? - Do selfish overlays coexist well with each other?
- Vertical interactions
- Does selfish routing interact well with network
traffic engineering?
5Outline
- Our approach
- Performance results
- Physical routing
- Overlay routing
- Multiple overlays
- Interaction with traffic engineering
- Summary
- Ongoing and future work
6Our Approach
- Game-theoretic approach with simulations
- Equilibrium behavior
- Apply game theory to compute traffic equilibria
- Compare with global optima and default IP routing
- Intra-domain environments
- Compare against theoretical worst-case results
- Realistic topologies, traffic demands, and
latency functions - Disclaimers
- Lots of simplifications assumptions
- Necessary to limit the parameter space
- Raise more questions than what we answer
- Lots of ongoing and future work
7Routing Schemes
- Routing on the physical network
- Source routing
- Latency optimal routing
- Routing on an overlay (less flexible!)
- Overlay source routing
- Overlay latency optimal routing
- Compliant (i.e. default) routing OSPF
- Hop count, i.e. unit weight
- Optimized weights, i.e. FRT02
- Random weights
8Internet-like Environments
- Network topologies
- Real tier-1 ISP, Rocketfuel, random power-law
graphs - Logical overlay topology
- Fully connected mesh (i.e. clique)
- Traffic demands
- Real and synthetic traffic demands
- Link latency functions
- Queuing M/M/1, M/D/1, P/M/1, P/D/1, and BPR
- Propagation fiber length or geographical
distance - Performance metrics
- User Average latency
- System Max link utilization, network cost FRT02
9Outline
- Our approach
- Performance results
- Physical routing
- Overlay routing
- Multiple overlays
- Interaction with traffic engineering
- Summary
- Ongoing and future work
10Source Routing Average Latency
Good news Internet-like environments are far
from the worst cases for selfish source routing
11Source Routing Network Cost
Bad news Low latency comes at much higher
network cost
12Selfish Overlay Routing Full Overlay Coverage
Overlay source routing perform similarly as
source routing (except for very bad weight
settings)
13Selfish Overlay Routing Partial Overlay
Coverage (only edge nodes)
The effects of partial overlay coverage is
insignificant in backbone topologies.
14Horizontal Interactions(Two Overlays)
Different routing schemes coexist well without
hurting each other.
15Horizontal Interactions (Two Overlays) (Cont.)
With bad weights, selfish overlay improves the
performance of compliant traffic as well as its
own.
16Horizontal Interactions (Many Overlays) (Cont.)
Performance degradation due to competition among
overlays is insignificant.
17Vertical Interactions
- An iterative process between two players
- Traffic engineering minimize network cost
- current traffic pattern ? new routing matrix
- Selfish overlays minimize user latency
- current routing matrix ? new traffic pattern
- Question
- Does system reach a state with both low latency
and low network cost? - Short answer
- Depends on how much control underlay has
18Selfish Overlays vs. OSPF Optimizer
OSPF optimizer interacts poorly with selfish
overlays because it only has very coarse-grained
control.
19Selfish Overlays vs. MPLS Optimizer
MPLS optimizer interacts with selfish overlays
much more effectively.
20Conclusions
- Contributions
- Important questions on selfish routing
- Simulations that partially answer questions
- Main findings on selfish routing
- Near-optimal latency in Internet-like
environments - In sharp contrast with the theoretical worst
cases - Coexists well with other overlays regular IP
traffic - Background traffic may even benefit in some cases
- Big interactions with network traffic engineering
- Tension between optimizing user latency vs.
network load
21Ongoing Work Dynamics of Selfish Routing
- Questions
- How are traffic equilibria reached?
- What routing protocols enable us to reach
equilibria quickly? - Solution A probabilistic routing protocol based
on reinforcement learning - Distributed algorithm
- Provable convergence and stability
- Quick response to changes
22Lots of Future Work
- Extensions
- Multi-domain IP networks
- Model topology and traffic demands
- Reduce computation complexity
- Different overlay topologies
- Tree, ring, power-law, exponential
- What overlay topology to form to improve
performance and/or robustness? - Alternative selfish-routing objectives
- Throughput, loss rate,
- Improve interactions
- Between selfish routing traffic engineering
- Bi-level programming?
- Estimate traffic demands
23Thank you!
24Computing Traffic Equilibrium of Selfish Routing
- Computing traffic equilibrium of non-overlay
traffic - Use the linear approximation algorithm
- A variant of the Frank-Wolfe algorithm, which is
a gradient-based line search algorithm - Computing traffic equilibrium of selfish overlay
routing - Construct a logical overlay network
- Use Jacob's relaxation algorithm on top of
Sheffi's diagonalization method for asymmetric
logical networks - Use modified linear approximation algo. in
symmetric case - Computing traffic equilibrium of multiple
overlays - Use a relaxation framework
- In each round, each overlay computes its best
response by fixing the other overlays traffic
then the best response and the previous state are
merged using decreasing relaxation factors.
25Selfish Overlay Routing (Full Overlay Coverage)
- overlay-src with opt-weight and hop-count
performsimilarly as source routing - overlay-src with random-weight performs much
worse.
26Difference 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 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
27Selfish 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
28Selfish Overlay Routing
- Similar results apply for overlay routing
- Achieves close to optimal average latency
- Low latency comes at higher network cost
- Even if overlay covers a fraction of nodes
- Random coverage 20-100 nodes
- Edge coverage edge nodes only
29One 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 be
T(t1)
30How to achieve traffic equilibria?
- Challenges
- Distributed algorithm
- Responsive to changes in traffic
- Approach
- Probabilistic routing based on distributed
learning - For each destination k, node i maintains a
routing probability P(i, k, j) for each neighbor
j
31How to achieve traffic equilibria? (Cont.)
- Protocol
- For every T seconds
- Send latency Lik(t) to all neighbors
- Receive latency Ljk(t) to all neighbors
- Compute Lik(t1)
- Update pikj(t1) for all neighbors j
- Properties
- Converge to Wardrop equilibria or global minimum
latency - Responsive to traffic stimuli (e.g., spike, step
function, linear function)
32Selfish Overlay Routing (Partial Overlay
Coverage) (Cont.)
33Recap
- Good news
- 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 - Bad news Selfish routing achieves low latency at
the cost of overloading network