+ All Categories
Home > Documents > How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul...

How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul...

Date post: 05-Jan-2016
Category:
Upload: lorena-dickerson
View: 215 times
Download: 0 times
Share this document with a friend
21
How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan
Transcript
Page 1: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

How to Construct a Correct and Scalable iBGP Configuration

Mythili Vutukuru

Joint work withPaul Valiant, Swastik Kopparty and Hari Balakrishnan

Page 2: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

BGP

RR

R

R

eBGPiBGP

R

Border routers/Egress

Internal routers

AB

C D

FEAutonomous System (AS)

BGP routers

eBGP and iBGP

Route

Page 3: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Our contribution

Status quo in configuring iBGP Full-mesh (not scalable) Route reflection (no correctness guarantees)

Problems with both approaches New approach to configure iBGP that is

both correct and scalable Uses elegant results from graph theory

Page 4: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Outline of the talk

More background What is the status quo? What are the problems with it?

Problem statement Our solution

Page 5: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Background - iBGP

iBGP sessions run on TCP Overlay over the intra-

domain routing protocol (IGP) like OSPF

Routing messages and data packets forwarded via IGP within AS

Routes from iBGP session not propagated to another iBGP session

iBGP

AB

C D

FE

IGP

R

Route

Page 6: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Approach#1: Full-mesh iBGP

R

RR

R

R

Every router has an iBGP session to every border router

Not scalable

AB

C

DE

F

RouteiBGP session

Page 7: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Approach#2: Route reflection

R

“Reflects” routes to and from client iBGP sessions

Avoids full-mesh Hierarchy of reflectors

Route reflector

A

B

CD

E

F

RouteClient iBGP session

Page 8: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Problems with route reflection: #1 Problem #1: Routers may not choose best route Why? Route reflector reflects only its best route

B chooses the sub-optimal route through C In full-mesh B would have chosen route through A

RA

B

C

D

E

F

Lower cost to egress

RouteClient session

Data packets

Page 9: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Problem#2: Forwarding loops

A

B

C

DR1 R2

R

R

R: goto A

R: goto D

To: R

To: R

IGP

Route

Client iBGP session

Data packetsIGP link

Page 10: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

iBGP configuration Correctness Scalability

Full-mesh √ ×

Route reflection × √

We need √ √

Background - Summary

Page 11: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Outline of the talk

More background What is the status quo? What are the problems with it?

Problem statement Our solution

Page 12: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Problem Statement Input: IGP (IP-level connectivity) graph Output: iBGP configuration

Route reflectors and clients iBGP sessions

Constraints Emulate full-mesh More scalable than full-mesh

Previous work [GW02] – how to check for correctness, not how to construct correct configurations

[GW02] T. Griffin and G. Wilfong, “On the Correctness of iBGP Configuration”, In Proc. ACM SIGCOMM 2002, Pittsburg, PA, August 2002.

Page 13: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Outline of the talk

More background What is the status quo? What are the problems with it?

Problem statement Our solution

Page 14: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Key insight for emulating full-mesh For every router P, every egress E

P and E have iBGP session, OR P should be the client of a route reflector on the

shortest path between P and E

A

B

C

DR1 R2R

R

R: goto D

R: goto A

To: R

To: RTo: R

RouteClient iBGP session

Data packetsIGP link

Page 15: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Our solution

S is graph separator Nodes in graph

separator S are route reflectors

u in G1 or G2, v in S: u is a client of v

Full-mesh in G1, G2

Recurse on G1, G2

G1G2

SR

R

A

B

D

?

Page 16: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Evaluation 2.5 to 5X fewer iBGP sessions on ISP topologies

[Source: Rocketfuel]

0

2000

4000

6000

8000

10000

12000

14000

AS1221 AS1755 AS3257 AS3967 AS6461

Nu

mb

er o

f iB

GP

ses

sio

ns

Full-mesh

Our algorithm

Page 17: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Conclusion

First algorithm to construct correct iBGP configurations with route reflection.

Efficient implementation 2.5 to 10X fewer iBGP sessions compared

to full-mesh iBGP

Page 18: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Questions?

Page 19: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Best route selection

BGP best route selection rules Local Pref AS path length MED IGP cost to egress

Best route selected by route reflector might not be the best route for the client

Page 20: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Route reflection

2 types of iBGP sessions Client iBGP session Normal (“peer”) iBGP session

Route from client → all clients and peers Route from peer → all clients Multiple route reflectors Hierarchy of route reflectors

Page 21: How to Construct a Correct and Scalable iBGP Configuration Mythili Vutukuru Joint work with Paul Valiant, Swastik Kopparty and Hari Balakrishnan.

Problems with route reflection Lack of complete visibility: every router is not guaranteed

to see its best available route. Forwarding loops

Some router along the forwarding path chooses a different egress

Packets do not make progress towards egress and loop forever

Not robust to IGP changes IGP link failures trigger forwarding loops

Full-mesh iBGP has none of these problems


Recommended