Michael Schapira Yale University and UC Berkeley Joint work with Yaping Zhu and Jennifer Rexford Princeton University Once Upon a Time Internet InterNetwork Routing ID: 243778
Download Presentation The PPT/PDF document "Putting BGP on the Right Path: A Case fo..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Putting BGP on the Right Path: A Case for Next-Hop Routing
Michael
Schapira(Yale University and UC Berkeley)Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)Slide2
Once Upon a Time…
Internet Inter-Network Routing:
Small networkSingle administrative entityNSFNET
Shortest-path routing
distance-vector routing
Then....Slide3
Interdomain Routing
Over 35,000 Autonomous
Systems (ASes)Interdomain routing = routing between ASes
Border Gateway Protocol (BGP)
AT&T
Qwest
Comcast
SprintSlide4
Today’s Path-Based Routing With BGP
Complex!
configuration errors, software bugs, …Bad convergence!persistent route oscillations, slow convergence, …Vulnerable to attacks!malicious, economically-driven, inadvertent, … and more, and more, and more …bad performance, clumsy traffic engineering, …Slide5
How Can We Fix
Interdomain Routing?
One approach: add mechanisms to an already complex protocolroute flap damping, S-BGP, …Another approach: redesign interdomain routing from scratchHLP, NIRA, pathlet routing, consensus routing, …Our approach
:
simplify BGP!Slide6
Agenda
Our proposal: next-hop routingFast convergence andIncentive-compatibility
More scalable
multipath routing
Security, performance,
traffic engineering
Conclusions and future research
meritsSlide7
Background
: Today’s Path-Based Routing With BGP
AS i’s routing policy:ranking of simple routes from i to each destination d
export policy
BGP
is a
path-vector protocol
Receive
route updates from neighbors
Choose
single
“best”
route
(ranking)
Send route updates to neighbors
(export policy)Slide8
3
d
12
Background
:
Today’s Path-Based Routing With BGP
32d > 31d
Don’t export 2d to 3
1, 2, I’m available
3, I’m using 1d
a
stable state
is reachedSlide9
AS-PATH = the Route of All Evil
AS-PATH
: list of all ASes on pathoriginally meant for loop-detectionThe AS-PATH is to blame!error-prone, software bugsno/slow convergencelarge attack surfacebad scalability, clumsy traffic engineering, bad performance, …Slide10
Getting Off the AS-PATH
No way back to shortest-path routing…
Our proposal: next-hop routingmake routing decisions based solely on the “next hop”relegate the AS-PATH to its original roleSlide11
Wish List
Loop freedom
Fast ConvergenceSecurityIncentive compatibilityBusiness policiesGood performanceTraffic engineeringScalabilitySimplicitySlide12
Expressiveness vs. Complexity
complexity
expressiveness
not expressive
enough
sufficiently
expressive
extremely
expressive
simple
too complex
shortest-path
routing
next-hop
routing!
BGP’s
path-based
routingSlide13
Next-Hop Routing Rules!
Rule 1: use next-hop rankings
4d3
5
1
2
4 > 3
541d > 53d > 542dSlide14
Next-Hop Routing Rules!
Rule 1
: use next-hop rankings Rule 2: prioritize current routeto minimize path exploration [Godfrey-Caesar-Hagen-Singer-Shenker]2d
3
1
2=3
Break ties in favor of lower AS number
2=3
Prioritize current routeSlide15
Next-Hop Routing Rules!
Rule 1
: use next-hop rankings Rule 2: prioritize current routeRule 3: consistently exportto avoid disconnecting upstream nodes [Feigenbaum-S-Ramachandran]
3
d
4
1
2
1 > 2,
Export 32d, but not 31d, to 4
1 > 2,
Export 31d
to 4Slide16
Next-Hop Routing Rules!
Rule 1
: use next-hop rankings Rule 2: prioritize current routeRule 3: consistently exportDefn: Node i consistently exports w.r.t. neighbor j if there is some route
R
s.t
. each route Q is exportable to j iff R ≤i Q.Defn: Node i
consistently exports
if it consistently exports with respect to each neighboring node j.Slide17
Next-Hop Routing Rules!
Rule 1
: use next-hop rankings Rule 2: prioritize current routeRule 3: consistently export3 deployment schemesConfigure today’s routersCreate new router configuration interfaceBuild new router softwareSlide18
Wish List Revisited
Loop freedom
Fast convergenceSecurityIncentive compatibilityBusiness policiesGood performanceTraffic engineeringScalability
SimplicitySlide19
Wish List Revisited
Loop freedom
Fast convergence?SecurityIncentive compatibility?Business policiesGood performanceTraffic engineeringScalability?SimplicitySlide20
Agenda
next-hop routingFast convergence andIncentive-compatibility
More scalable
multipath routing
Security, performance,
traffic engineering
Conclusions and future research
meritsSlide21
Existence of Stable State
Existence of stable state not guaranteed
even with next-hop rankings (Rule 1) [Feamster-Johari-Balakrishnan]Thm: If the next-hop routing rules hold, then a stable state exists in the network.What about (fast!) convergence?Slide22
BGP Oscillations
BGP not guaranteed to converge even with next-hop routing! [Griffin-Shepherd-Wilfong]1d
2
2 > d
1 > dSlide23
The Commercial Internet
ASes
sign long-term contracts.Neighboring pairs of ASes have:a customer-provider relationshipa peering relationship
peer
providers
customers
peerSlide24
Gao-Rexford Framework
3 simple conditions that are naturally induced by
the AS-business-hierarchy.Topology condition, Preference condition, Export conditionIf the Gao-Rexford conditions hold, then BGP is guaranteed to converge to a stable state.
[
Gao
-Rexford]
But, this might require exponentially-many forwarding changes! [Syed-Rexford]Slide25
Fast BGP Convergence
Thm
: In the Gao-Rexford framework, next-hop routing convergence to a stable state involves at most O(|L|2) forwarding changes (|L| = # links).all network topologiesall timings of AS activations and update message arrivalsall initial routing statesall initial “beliefs”Slide26
Simulations
C-BGP simulator
Cyclops AS-level topology,Jan 1st 201033,976 ASes, ~5000 non-stubsProtocolsBGP, Prefer Recent Route (PRR), next-hop routingSlide27
Simulations
Metrics
# forwarding changes, # routing changes, # updates Eventsprefix up, link failure, link recoveryMethodology500 experiments10,000 vantage points (all non-stubs, 5000 stubs)Slide28
Simulation Results
(# Forwarding Changes)
maximum number of BGP forwarding changes > 20maximum number of routing changes in next-hop routing = 3
maximum number of forwarding changes
in PRR = 10Slide29
Simulation Results
(# Routing Changes)
maximum number of BGP routing changes > 160maximum number of routing changes in next-hop routing < 20
maximum number of routing changes
in PRR > 40Slide30
Simulation Results
(# BGP Updates, Non-Stub ASes)
maximum number of BGP updates > 6000maximum number of updates in next-hop routing < 300
maximum number of updates in PRR > 1000Slide31
Simulation Results
(# Routing Changes, The 0.1% Position)Slide32
Incentive Compatible
Routing Configurations
2d31
d > 2
3 > d > 1
2
Each node is getting its best
feasible
next-hopSlide33
Next-Hop Routing is
Incentive Compatible
Thm [Feigenbaum-Ramachandran-S]: In the Gao-Rexford framework, next-hop routing is incentive compatible. (each node is guaranteed its best feasible next-hop)Slide34
Agenda
next-hop routingFast convergence andIncentive-compatibility
More scalable
multipath routing
Security, performance,
traffic engineering
Conclusions and future research
meritsSlide35
Multipath Routing
Exploiting path diversity to
realize the AS’s own objectivescustomize route selection for neighboring ASesBut... multipath routing is not scalable!disseminate and store multiple routesSlide36
Multipath Routing is Not Scalable!
d
123
4
P
1
P
2
Q
1
Q
2
I’m using P
1
and P
2
I’m using Q
1
and Q
2
I’m using P
1
, P
2
, Q
1
and Q
2Slide37
From AS-PATH to AS-SET
Next-hop routing is more amenable to multipath
nodes don’t care about entire paths… other than for loop detectionDon’t announce routes, announce sets!set = union of ASes on all routesBGP route aggregationSlide38
Neighbor-Specific
Next-Hop Routing
Customizing route selection for neighborsoperational motivation [Kushman-Kandula-Katabi-Maggs]economic motivation [Wang-S-Rexford]
C
1
z
C2C3
d
?
R
1
R
2
R
3
Secure!
Short!
Cheap!Slide39
Neighbor-Specific
Next-Hop Routing
Neighbor-Specific BGP [Wang-S-Rexford]implementable using existing toolsResults for convergence and incentive compatibility extend to multipath!Slide40
Wish List Revisited
Loop freedom
Fast convergenceSecurityIncentive compatibilityBusiness policiesGood performanceTraffic engineeringScalabilitySimplicitySlide41
Agenda
next-hop routingFast convergence andIncentive-compatibility
More scalable
multipath routing
Security, performance,
traffic engineering
Conclusions and future research
meritsSlide42
Security, Performance,
Traffic Engineering
Still open research questionsHandled (mostly) outside the routing protocoland what is handled within the protocol is not effective!Next-hop routing makes the situation betterSlide43
Security, Performance,
Traffic Engineering
AS-PATH does not helplarge attack surface, shorter is not better, …Next-hop routing is bettersmaller attack surface, multipath! [Andersen-Balakrishnan-Kaashoek-Rao] [Motiwala-Elmore-Feamster-Vempala] [
Xu
-Rexford]
End-to-end mechanisms
[Wendlandt-Avaramopoulos-Andersen-Rexford]Slide44
Agenda
next-hop routingFast convergence andIncentive-compatibility
More scalable
multipath routing
Security, performance,
traffic engineering
Conclusions and future research
meritsSlide45
Conclusions and
Future Research
BGP is far too complicated!New approach: simplify BGPwithout compromising global and local goals!Directions for future research:getting rid of the AS-PATH?software / configuration complexitymore theoretical and experimental workSlide46
Thank You