Stable Internet Routing Without Global Coordination Jennifer Rexford AT&T Labs--Research
Download
Report
Transcript Stable Internet Routing Without Global Coordination Jennifer Rexford AT&T Labs--Research
Stable Internet Routing Without
Global Coordination
Jennifer Rexford
AT&T Labs--Research
Joint work with Lixin Gao
Internet Architecture
Divided
into Autonomous Systems
– Distinct regions of administrative control
– Set of routers and links managed by a single institution
– Service provider, company, university, …
Hierarchy
of Autonomous Systems
– Large, tier-1 provider with a nationwide backbone
– Medium-sized regional provider with smaller backbone
– Small network run by a single company or university
Interaction
between Autonomous Systems
– Internal topology is not shared between ASes
– … but, neighboring ASes interact to coordinate routing
Autonomous Systems (ASes)
Path: 6, 5, 4, 3, 2, 1
4
3
5
2
7
1
6
Web server
Client
Interdomain Routing Convergence Challenges
Must
scale
– Destination address blocks: 150,000 and growing
– Autonomous Systems: 20,000 visible ones, and growing
– AS paths and routers: at least in the millions…
Must
support flexible policy
– Path selection: selecting which path your AS wants to use
– Path export: controlling who can send packets through your AS
Must
converge, and quickly
– VoIP and video games need convergence in tens of milliseconds
– Routing protocol convergence can take several (tens of) minutes
– … and the routing system doesn’t necessarily converge at all!
Goal: Guaranteed convergence of the global routing system with purely local control.
Interdomain Routing: Border Gateway Protocol
ASes
exchange info about who they can reach
– IP prefix: block of destination IP addresses
– AS path: sequence of ASes along the path
Policies
configured by the AS’s network operator
– Path selection: which of the paths to use?
– Path export: which neighbors to tell?
“I can reach 12.34.158.0/24
via AS 1”
“I can reach 12.34.158.0/24”
2
1
data traffic
12.34.158.5
3
data traffic
Conflicting Policies Cause Convergence Problems
1
Better choice!
120
10
Only choice!
0
Top choice!
310
30
Only choice!
Better choice!
3
2
230
20
Only choice!
Pick the highest-ranked path consistent with your neighbors’ choices.
Global Control is Not Workable
Create
a global Internet routing registry
– Keeping the registry up-to-date would be difficult
Require
each AS to publish its routing policies
– ASes may be unwilling to reveal BGP policies
Check
for conflicting policies, and resolve conflicts
– Checking for convergence problems is NP-complete
– Link/router failure may result in an unstable system
Need a solution that does not require global coordination.
Think Globally, Act Locally
Key
features of a good solution
– Flexibility: allow diverse local policies for each AS
– Privacy: do not force ASes to divulge their policies
– Backwards-compatibility: no changes to BGP
– Guarantees: convergence even when system changes
Restrictions
based on AS relationships
– Path selection rules: which route you prefer
– Export policies: who you tell about your route
– AS graph structure: who is connected to who
Customer-Provider Relationship
Customer
pays provider for access to the Internet
– Provider exports its customer’s routes to everybody
– Customer exports provider’s routes only to downstream customers
Traffic to the customer
Traffic from the customer
d
provider
advertisements
provider
traffic
customer
d
customer
Peer-Peer Relationship
Peers
exchange traffic between their customers
– AS exports only customer routes to a peer
– AS exports a peer’s routes only to its customers
Traffic to/from the peer and its customers
advertisements
peer
d
traffic
peer
Hierarchical AS Relationships
Provider-customer
graph is a directed, acyclic graph
– If u is a customer of v and v is a customer of w
– … then w is not a customer of u
w
v
u
Our Local Path Selection Rules
Classify
routes based on next-hop AS
– Customer routes, peer routes, and provider routes
Rank
routes based on classification
– Prefer customer routes over peer and provider routes
Allow
any ranking of routes within a class
– E.g., can rank one customer route higher than another
– Gives network operators the flexibility they need
Consistent
with traffic engineering practices
– Customers pay for service, and providers are paid
– Peer relationship contingent on balanced traffic load
Solving the Convergence Problem
Restrictions
– Export policies based on AS relationships
– Path selection rule that favors customer routes
– Acyclic provider-customer graph
Result
– Safety: guaranteed convergence to a unique stable solution
– Inherent safety: holds under failures and policy changes
Sketch
–
–
–
–
of (constructive) proof
System state: the current best route at each AS, for one prefix
Activating an AS: revisiting decision based on neighbors’ choices
Stable state: find an activation sequence that leads to a stable state
Convergence: any “fair” sequence includes this sequence
Proof, Phase 1: Selecting Customer Routes
Activate ASes
in customer-provider order
– AS picks a customer route if one exists
– Decision of one AS cannot cause an earlier AS to change
its mind
3
An AS picks a customer
route when one exists
2
1
d0
Proof, Phase 2: Selecting Peer and Provider Routes
Activate
rest of ASes in provider-customer order
– Decision of one phase-2 AS cannot cause an earlier
phase-2 AS to change its mind
– Decision of phase-2 AS cannot affect a phase 1 AS
3
1
2
d0
8
4
6
7
AS picks a peer or provider
route when no customer
route is available
5
Economic Incentives Affect Protocol Behavior
ASes
already follow our rules, so system is stable
– High-level argument
» Export and topology assumptions are reasonable
» Path selection rule matches with financial incentives
– Empirical results [IMW’02]
» BGP routes for popular destinations are stable for ~10 days
» Most instability from failure/recovery of a few destinations
ASes
should follow our rules to make system stable
– Need to encourage operators to obey these guidelines
– … and provide ways to verify the network configuration
– Need to consider more complex relationships and graphs
Playing One Condition Off Against Another
All
three conditions are important
– Path ranking, export policy, and graph structure
Allowing
more flexibility in ranking routes
– Allow same preference for peer and customer routes
– Never choose a peer route over a shorter customer route
…
at the expense of stricter AS graph assumptions
– Hierarchical provider-customer relationship (as before)
– No private peering with (direct or indirect) providers
Peer-peer
Extension to Backup Relationships [INFOCOM’01]
Backups:
more liberal export policies, and different ranking
– The motivation is increased reliability
– …but ironically it may cause routing instability!
Generalize
rule: prefer routes with fewest backup links
– Need to maintain a count of the # of backup links in the path
Backup Provider
Peer-Peer Backup [RFC 1998]
provider
primary
provider
failure
backup path
failure
backup path
backup
provider
peer
Results Hold Under More Complex Scenarios
Complex AS
relationships
– AS pair with different relationship for different prefixes
– AS pair with both a backup and a peer relationships
– AS providing transit service between two peer ASes
Stability
under changing AS relationships
– Customer-provider to/from peer-peer
– Customer-provider to/from provider-customer
Conclusions
Avoiding
convergence problems
– Hierarchical AS relationships
– Export policies based on commercial relationships
– Path ranking based on AS relationships
Salient
features
– No global coordination (locally implementable)
– No changes to BGP protocol or decision process
– Guaranteed convergence, even under failures
– Guidelines consistent with financial incentives
Broader Influence of the Work
Influence
of AS relationships on BGP convergence
– Algebraic framework and design principles for policy languages
– Fundamental limits on relaxing the assumptions
Application
of the idea to internal BGP inside an AS
– Sufficient conditions for iBGP convergence inside an AS
– “What-if” tool for traffic engineering inside an AS
AS-level
analysis of the Internet topology
– Inference of AS relationships and policies from routing data
– Characterization of AS-level topology and growth
Practical
applications of knowing AS relationships
– Analyzing your competitors’ business relationships
– Identifying BGP routes that violate export conditions