How to Construct a Correct and Scalable iBGP Configuration - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

How to Construct a Correct and Scalable iBGP Configuration

Description:

New approach ('BGPSep') to configure iBGP that is both correct and scalable ... Local Pref. AS path length. MED. IGP cost to egress ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 24
Provided by: mythi4
Category:

less

Transcript and Presenter's Notes

Title: How to Construct a Correct and Scalable iBGP Configuration


1
How to Construct a Correct and Scalable iBGP
Configuration
  • Mythili Vutukuru
  • Joint work with
  • Paul Valiant, Swastik Kopparty and Hari
    Balakrishnan

2
BGP
eBGP and iBGP
18.0.0.0/8
eBGP
iBGP
Border router/ Egress
Autonomous System (AS)
Route
3
Our contribution
  • Status quo in configuring iBGP
  • Full-mesh (not scalable)
  • Route reflection (no correctness guarantees)
  • New approach (BGPSep) to configure iBGP that is
    both correct and scalable
  • Uses the results on graph separators from graph
    theory

4
Outline of the talk
  • More background
  • What is the status quo?
  • What are the problems with it?
  • Problem statement
  • Our solution

5
Background - iBGP
18.0.0.0/8
  • iBGP sessions run on TCP
  • Overlay over the intra-domain routing protocol or
    Interior Gateway Protocol (IGP) like OSPF
  • Routing messages and data packets forwarded via
    IGP within AS
  • iBGP Rule to avoid routing loops
  • Routes from iBGP session not propagated to
    another iBGP session

iBGP
IGP
Route
6
Approach1 Full-mesh iBGP
18.0.0.0/8
B
A
D
  • Every router has an iBGP session to every border
    router
  • Large number of iBGP sessions not scalable

C
iBGP session
Route
7
Scalable alternative Route reflection
Route reflector
B
18.0.0.0/8
A
  • Reflects routes to and from client iBGP
    sessions
  • Avoids full-mesh
  • Hierarchy of reflectors

D
C
Client iBGP session
Route
8
Problems with route reflection 1
  • Problem 1 Routers may not choose best route
  • Why? Route reflector reflects only its best route

B
A
18.0.0.0/8
Client session
D
Route
Data packets
C
  • B chooses the sub-optimal route through C
  • In full-mesh B would have chosen route through A
  • Sub-optimal path assignments

Lower cost to egress
9
Problem2 Forwarding loops
18.0.0.0/8 goto A
To 18.0.0.1
IGP
To 18.0.0.1
Client iBGP session
Route
18.0.0.0/8 goto D
IGP link
Data packets
10
Background - Summary
iBGP configuration Correctness Scalability
Full-mesh v
Route reflection v
We need v v
11
Outline of the talk
  • More background
  • What is the status quo?
  • What are the problems with it?
  • Problem statement
  • Our solution

12
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.

13
Outline of the talk
  • More background
  • What is the status quo?
  • What are the problems with it?
  • Problem statement
  • Our solution

14
Key insight for emulating full-mesh
  • For every BGP 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
R
C
18.0.0.0/8
B
18.0.0.0/8
15
Our solution BGPSep
18/8
S
  • 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
  • Recursion terminates when component small enough

D
A
?
B
G2
G1
18/8
16
Evaluation
  • 2.5 to 5X fewer iBGP sessions on ISP topologies
    Source Rocketfuel

17
Features of BGPSep
  • Efficient implementation
  • 100 lines of Matlab
  • Runs in a few seconds
  • Convenient to use
  • Need not be re-run when link costs change or
    nodes/links fail
  • Small number of top-level route reflectors
  • Not incremental need to be re-run when
    nodes/links added

18
Conclusion
  • First algorithm to construct correct iBGP
    configurations with route reflection.
  • Reduces iBGP sessions compared to full-mesh
  • Efficient implementation
  • Convenient and practical to use
  • Questions?

19
Questions?
20
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

21
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

22
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

23
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

To R
R goto D
R
R
To R
To R
Client iBGP session
Route
R goto A
IGP link
Data packets
Write a Comment
User Comments (0)
About PowerShow.com