Top Banner
Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)
44

Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Dec 17, 2015

Download

Documents

Delphia Carson
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Putting BGP on the Right Path: A Case for Next-Hop

Routing

Michael Schapira

Joint work with Yaping Zhu and Jennifer Rexford

(Princeton University)

Page 2: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Once Upon a Time… Internet Inter-Network Routing:

•Small network

•Single administrative entity NSFNET

•Shortest-path routing distance-vector routing

•Then....

Page 3: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Interdomain Routing

Over 35,000 Autonomous Systems (ASes)

Interdomain routing = routing between ASes– Border Gateway Protocol (BGP)

AT&T

Qwest

Comcast

Sprint

Page 4: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

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, …

Page 5: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

How Can We FixInterdomain Routing?

•One approach: add mechanisms to an already complex protocol– route flap damping, S-BGP, …

•Another approach: redesign interdomain routing from scratch– HLP, NIRA, pathlet routing, consensus routing, …

•Our approach: simplify BGP!

Page 6: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

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

Receiveroute updates

from neighbors

Choose single “best”route

(ranking)

Send route updates to neighbors

(export policy)

Page 7: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

3 d

1

2

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 reached

Page 8: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

AS-PATH = the Route of All Evil

•AS-PATH: list of all ASes on path– originally meant for loop-detection

•The AS-PATH is to blame!– error-prone, software bugs– no/slow convergence– large attack surface– bad scalability, clumsy traffic engineering, bad

performance, …

Page 9: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Getting Off the AS-PATH

•No way back to shortest-path routing…

•Our proposal: next-hop routing

–make routing decisions based solely on the “next hop”

–relegate the AS-PATH to its original role

Page 10: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Wish List• Loop freedom• Fast Convergence• Security• Incentive compatibility• Business policies• Good performance• Traffic engineering• Scalability• Simplicity

Page 11: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Expressiveness vs. Complexity

complexity

expressivenessnot expressive

enoughsufficientlyexpressive

extremelyexpressive

simple

too complex

shortest-pathrouting

next-hoprouting

BGP’spath-based

routing

Page 12: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Next-Hop Routing Rules!

• Rule 1: use next-hop rankings

4 d

3

5

1

2

4 > 3

541d > 53d > 542d

Page 13: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Next-Hop Routing Rules!

• Rule 1: use next-hop rankings • Rule 2: prioritize current route

– to minimize path exploration [Godfrey-Caesar-Hagen-Singer-Shenker]

2

d

3

1

2=3Break ties in

favor of lower AS number

2=3Prioritize current route

Page 14: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Next-Hop Routing Rules!

• Rule 1: use next-hop rankings • Rule 2: prioritize current route• Rule 3: consistently export

– to avoid disconnecting upstream nodes [Feigenbaum-S-Ramachandran]

3 d41

2

1 > 2,Export 32d, but not 31d,

to 4

1 > 2,Export 31d

to 4

Page 15: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Next-Hop Routing Rules!

• Rule 1: use next-hop rankings • Rule 2: prioritize current route• Rule 3: consistently export

– Defn: 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.

Page 16: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Next-Hop Routing Rules!

• Rule 1: use next-hop rankings • Rule 2: prioritize current route• Rule 3: consistently export

• 3 deployment schemes– Configure today’s routers– Create new router configuration interface– Build new router software

Page 17: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Wish List Revisited

Page 18: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Wish List Revisited• Loop freedom• Fast convergence?• Security• Incentive compatibility [Feigenbaum-S-Ramachandran]

• Business policies• Good performance• Traffic engineering• Scalability?• Simplicity

Page 19: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

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?

Page 20: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

BGP Oscillations

BGP not guaranteed to converge even with next-hop routing! [Griffin-Shepherd-Wilfong]

1

d

22 > d 1 > d

Page 21: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

The Commercial Internet

•ASes sign long-term contracts.

•Neighboring pairs of ASes have:– a customer-provider relationship– a peering relationship

peerproviders

customers

peer

Page 22: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Gao-Rexford Framework

• 3 simple conditions that are naturally induced by the AS-business-hierarchy.– Topology condition, Preference condition, Export condition

• If 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]

Page 23: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Fast BGP Convergence

• Thm: In the Gao-Rexford framework, next-hop routing convergence to a stable state involves at most O(L2) forwarding changes (L = # links).– all network topologies– all timings of AS activations and update

message arrivals– all initial routing states– all initial “beliefs”– implications for routing changes and number of

BGP updates

Page 24: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Simulations

• C-BGP simulator. Cyclops AS-level topology, Jan 1st 2010 (33,976 ASes, ~5000 non-stubs)

• Protocols: BGP, Prefer Recent Route (PRR), next-hop routing

• Metrics: # forwarding changes, # routing changes,# updates, AS-PATH length

• Events: prefix up, link failure, link recovery

• Methodology: 500 experiments, 10,000 vantage points (all non-stubs, 5000 stubs)

Page 25: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Simulation Results(# Forwarding Changes)

maximum number of BGP

forwarding changes > 20

maximum number of routing changes in next-hop routing

= 3maximum number of forwarding

changesin PRR = 10

Page 26: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Simulation Results(# Routing Changes)

maximum number of BGP routing changes

> 160

maximum number of routing changes in next-hop routing

< 20

maximum number of

routing changesin PRR > 40

Page 27: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Simulation Results(# BGP Updates, Non-Stub ASes)

maximum number of BGP updates > 6000

maximum number of

updates in next-hop routing <

300

maximum number of updates in PRR >

1000

Page 28: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Simulation Results(# Routing Changes, The 0.1%

Position)

Page 29: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Incentive Compatible Routing Configurations

2

d

3 1d > 2

3 > d > 1

2

Each node is getting its best feasible next-hop

Page 30: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Next-Hop Routing isIncentive 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)

Page 31: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Wish List Revisited• Loop freedom• Fast convergence• Security?• Incentive compatibility• Business policies• Good performance?• Traffic engineering?• Scalability• Simplicity

Page 32: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Limitations of Next-Hop Routing

•AS-PATH length

•AS-avoiding policies

•AS-name prepending

•AS-PATH-based traffic engineering

Page 33: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Security, Performance,Traffic Engineering

•Still open research questions.

•Handled mostly outside the routing protocol.

•We argue that next-hop routing makes things mostly better.

Page 34: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Performance• Faster/better convergence than BGP.

• much more scalable.

• But…potential increase in path lengths.• b

– loosely correlated with performance (# routers, physical distance… throughput…).

– still, significant increase clearly undesirable!

– Simulation results: same path length for 97-99% of ASes; big increase only for ~0.1%.

Page 35: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Security• Reduces BGP’s attack surface (AS-PATH

length plays no role in routing decisions).

• More resilient to economically-driven attacks (incentive compatible).

• More resilient to misconfigurations (in progress)

• But… AS-avoiding policies impossible.– come with no guarantees. e2e?

Page 36: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Traffic Engineering

•We discuss how traffic engineering can be done without relying on the AS-PATH.

– using different next-hop rankings for different (groups of) prefixes

– using the BGP communities attribute

– …

Page 37: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Multipath Routing

• Performance, security and traffic engineering can greatly benefit from multipath routing.– multiple working paths

– immediate response to failures

– load balancing among multiple next-hops

– …

• Next-hop routing lowers the barrier for making this a reality (work in progress).

Page 38: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Multipath Routing

•Exploiting path diversity to– realize the AS’s own objectives–customize route selection for neighboring ASes

•But... multipath routing is not scalable!– disseminate and store multiple routes

Page 39: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Multipath Routing is Not Scalable!

d

1

2

34

P1

P2

Q1

Q2

I’m using P1 and P2

I’m using Q1 and Q2

I’m using P1, P2, Q1 and Q2

Page 40: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

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 detection

•Don’t announce routes, announce sets!– set = union of ASes on all routes– BGP route aggregation

Page 41: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Neighbor-SpecificNext-Hop Routing

•Customizing route selection for neighbors– operational motivation [Kushman-Kandula-Katabi-Maggs]

– economic motivation [Wang-S-Rexford]

C1

zC2

C3

d

?R1

R2

R3

Secure!

Short!

Cheap!

Page 42: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Neighbor-SpecificNext-Hop Routing

•Neighbor-Specific BGP [Wang-S-Rexford]

– implementable using existing tools

•Results for convergence and incentive compatibility extend to multipath!

Page 43: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Conclusions andFuture Research

• BGP is far too complicated!

• New approach: simplify BGP– without compromising global and local goals!

• Directions for future research:– getting rid of the AS-PATH?– software / configuration complexity– more theoretical and experimental work

Page 44: Putting BGP on the Right Path: A Case for Next-Hop Routing Michael Schapira Joint work with Yaping Zhu and Jennifer Rexford (Princeton University)

Thank YouThank You