Stable Internet Routing Without Global Coordination Jennifer Rexford Princeton University

advertisement
Stable Internet Routing Without
Global Coordination
Jennifer Rexford
Princeton University
http://www.cs.princeton.edu/~jrex
Joint work with Lixin Gao, Michael Schapira, and Yi Wang
What is an Internet?
A
“network of networks”
– Networks run by different institutions
 Autonomous
System (AS)
– Collection of routers run by a single institution
 ASes
have different goals
– Different views of which paths are good
 Interdomain
routing is what reconciles those views
– To compute end-to-end paths through the Internet
Wonderful problem setting for game theory and mechanism design
An Open Question
Evolvable Protocols
(under-specified, programmable)
?
Autonomy
Global Properties
(autonomous parties, with
different economic objectives)
(stability, scalability, reliability,
security, managability, …)
Can we have all three? Under what conditions?
Autonomous Systems (ASes)
Path: 6, 5, 4, 3, 2, 1
4
3
5
2
7
1
6
Web server
Client
Interdomain Routing: Border Gateway Protocol
 ASes
exchange info about who they can reach
– Destination: block of IP addresses (an “IP prefix”)
– 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 d
via AS 1”
“I can reach d”
2
1
data traffic
d
3
data traffic
Interdomain Routing Convergence Challenges
 Must
scale
– Address blocks: 300,000 and growing
– Autonomous Systems: around 35,000
 Must
support flexible policy
– Path selection: which path your AS wants to use
– Path export: who can send packets through your AS
 Must
converge, and quickly
– Routing convergence can take several minutes
– … and the system doesn’t necessarily converge at all!
Goal: Guaranteed convergence of the global routing system with purely local control.
Stable Paths Problem (SPP) Model
 Model
of routing policy
– Each AS has a ranking of the permissible paths
 Model
of path selection
– Pick the highest-ranked path consistent with neighbors
2 23d
2d
12d
1d
 Flexibility
is not free
1
d
31d
3 3d
– Global system converges slowly, or not at all
– Depending on the way the ASes rank their paths
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
Valid and Invalid Paths
Valid paths: “6
“1 4
23
d”d”
and
and
“7“8
d”5 d”
Invalid
Invalidpaths:
path: “5
“6 85 d”
d” and “1 4 3 d”
1
d
5
Provider-Customer
Peer-Peer
4
3
2
7
8
6
Act Locally, Prove Globally
 Route
export
– Do not export routes learned from a peer or provider
– … to another peer or provider
 Global
topology
– Provider-customer relationship graph is acyclic
– E.g., my customer’s customer is not my provider
 Route
selection
– Prefer routes through customers
– … over routes through peers and providers
 Guaranteed
to converge to unique, stable solution
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
 Result
– Safety: guaranteed convergence to unique stable solution
– Inherent safety: holds under failures and policy changes
 Definitions
– System state: current best route at each AS
– Activating AS: re-do decision based on neighbor choices
 Sketch
of (constructive) proof
– Find an activation sequence that leads to a stable state
– Any “fair” sequence (eventually) includes this sequence
Rough Sketch of the Proof
 Two
phases
– Walking up the customer-provider hierarchy
– Walking down the provider-customer hierarchy
1
d
5
Provider-Customer
Peer-Peer
4
3
2
7
8
6
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
» 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
 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
Extensions 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
A Case For Customized Route Selection
 ISPs
usually have multiple paths to the destination
 Different paths have different properties
 Different neighbors may prefer different routes
Bank
Most secure
VoIP
provider
School
Lowest cost
Shortest latency
Neighbor-Specific Route Selection
A
node has a ranking function per neighbor

i
j
is node i’s ranking function for neighbor node j.
Stability Conditions for NS-BGP
 Surprisingly,
NS-BGP improves stability!
– Neighbor-specific selection is more flexible
– Yet, requires less restrictive stability conditions
 “Prefer
customer” assumption is not needed
– Choose any “permissible” route per neighbor
 That
is, need just two assumptions
– No cycle of provider-customer relationships
– Do not export routes learned from one peer/provider to
other peers/providers
Why Do Weaker Conditions Work?
1
120
10
0
310
30
 An
3
2
230
20
AS always tells its neighbor a route
– If it has any route that is permissible for that neighbor
Deploying NS-BGP
 An
AS can deploy NS-BGP alone
– Without upgrading their routers
– Without coordinating with all their neighbors
 Three
aspects to the solution
– Disseminating extra BGP routes
– Customized route selection
– Directing traffic from ingress to egress
 Can
be done exploiting existing mechanisms
– Designed for Virtual Private Networks (VPNs)
Disseminating Extra BGP Routes
 Advertising
more than one BGP route
– Route distinguisher feature for VPNs
– Multiple internal BGP sessions
– ADD-PATHs extensions to internal BGP
Customized Route Selection
 Multiple
virtual routing and forwarding tables
– Cisco: Virtual Routing and Forwarding (VRF)
– Juniper: Virtual Router
R3’s forwarding table (FIB) entries
D: (red path): R6
D: (blue path): R7
Directing Traffic from Ingress to Egress
 Tunnels
from ingress to egress
– IP-in-IP tunneling
– MPLS
?
Customized Route Selection
 Customized
route selection as a service
– Select a different best route for different neighbors
 Different
menu options
– Cheapest route (e.g., “prefer customer”)
– Best performing routes, or most secure routes
– Routes that avoid undesirable ASes (e.g., censorship)
 Nice
practical features of NS-BGP
– An individual AS can deploy NS-BGP alone
– … without compromising global stability!
Conclusions
 Avoiding
convergence problems
– Hierarchical of provider-customer 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
References Related to This Talk

“The stable paths problem and interdomain routing”
– Tim Griffin, Bruce Shepherd, and Gordon Wilfong
– http://portal.acm.org/citation.cfm?id=508332

“Stable Internet routing without global coordination”
– Lixin Gao and Jennifer Rexford
– http://www.cs.princeton.edu/~jrex/papers/sigmetrics00.long.pdf

“Inherently Safe Backup Routing with BGP”
– Lixin Gao, Tim Griffin, and Jennifer Rexford
– http://www.cs.princeton.edu/~jrex/papers/infocom01.pdf

“Neighbor-Specific BGP: More flexible routing policies while
improving global stability”
– Yi Wang, Michael Schapira, and Jennifer Rexford
– http://www.cs.princeton.edu/~jrex/papers/nsbgp_sigmetrics09.pdf
Other Related Research Papers

Inherently Safe Backup Routing with BGP
– http://www.cs.princeton.edu/~jrex/papers/infocom01.pdf

Design Principles of Policy Languages for Path Vector Protocols
– http://conferences.sigcomm.org/sigcomm/2003/papers/p61-griffin.pdf

Implications of Autonomy for the Expressiveness of Policy Routing
– http://conferences.sigcomm.org/sigcomm/2005/paper-FeaBal.pdf

Meta-routing
– http://conferences.sigcomm.org/sigcomm/2005/paper-GriSob.pdf

An Algebraic Theory of Interdomain Routing
– http://portal.acm.org/citation.cfm?id=1103561

Searching for Stability In Interdomain Routing
– http://www.cs.yale.edu/homes/schapira/PID808559.pdf
Related Papers With Game Theory

Interdomain Routing and Games
– http://www.cs.huji.ac.il/~mikesch/routing_games-full.pdf

Rationality and Traffic Attraction: Incentives for Honest Path Announcements in BGP
– http://ccr.sigcomm.org/online/?q=node/395

Incentive-Compatible Interdomain Routing
– http://cs-www.cs.yale.edu/homes/jf/FRS.pdf

Mechanism Design for Policy Routing
– http://cs-www.cs.yale.edu/homes/jf/FSS.pdf

The Complexity of Game Dynamics: BGP Oscillations, Sink Equlibria, and Beyond
– http://www.cs.berkeley.edu/~alexf/papers/fp08.pdf

Specification Faithfulness in Networks with Rational Nodes
– http://www.eecs.harvard.edu/econcs/pubs/podc04.pdf

Distributed Algorithmic Mechanism Design
– http://cs-www.cs.yale.edu/homes/jf/AGTchapter14.pdf

Partially Optimal Routing
– http://www.stanford.edu/~rjohari/pubs/por.pdf
36
Background on Interdomain Economics






http://drpeering.net/a/Home.html
http://www.fcc.gov/Bureaus/OPP/working_papers/oppwp32.pdf
http://www.potaroo.net/papers/1999-6-peer/peering.pdf
http://www.cisco.com/en/US/about/ac123/ac147/ac174/ac201/about_
cisco_ipj_archive_article09186a00800c83a5.html
http://www.cisco.com/en/US/about/ac123/ac147/ac174/ac200/about_
cisco_ipj_archive_article09186a00800c8900.html
http://www.vjolt.net/vol3/issue/vol3_art8.html
37
Download