19
A Simple BGP Alexander Azimov Qrator Labs

A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

A Simple BGP

Alexander Azimov

Qrator Labs

Page 2: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

BGP Policy is made by…

• Local Pref

• Prepends

• RPSL

• RPKI

• Communities

And other XX config options

Ha! Easy! Love flexibility!

Page 3: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

But is it simple?

140 RFC have already been written!

388 RFC drafts

Numerous BCPs…

KISS is not for BGP?

Page 4: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

It could be quite simple…

protocol bgp IAMOPERATOR {

local as MY_AS;

neighbor X.X.X.X as AS_PROVIDER;

}

Page 5: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

The Great Gap

Expectation BGP Configuration

Page 6: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

A Simple Result

A simple route leak!

Internal Session

local as MY_AS; neighbor X.X.X.X as AS_UPSTREAM_X;

local as MY_AS; neighbor Y.Y.Y.Y as AS_UPSTREAM_Y;

Page 7: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Route Leak: stats

0

100000

200000

300000

400000

500000

600000

August September October November*

Page 8: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Who is the leaker?

About ~1000 leakers affect… Everybody!

Page 9: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Newcomers

0

10000

20000

30000

40000

50000

60000

2010 2011 2012 2013 2014 2015

Page 10: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Imagine yourself on a highway…

Page 11: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Option 1: Regulation

bgpbusters! Are you afraid of leaks?

Page 12: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Option 2: A new BGP extension

Page 13: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Meet The Neighbor Role

4 Roles: customer, provider, peer, internal

Optional non-transit attribute – Role Marker

Role Import Marker

Internal Session No role marker change

Role Export Filter

Page 14: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Idle state: No role set

Page 15: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Notification: The Wrong Role

OPEN with customer role

OPEN with peer role

Capabilities

Notification Notification

3 pairs of non-conflict roles: 1. Peer <---> Peer 2. Customer <---> Provider 3. Internal <---> Internal

Page 16: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Strict Mode

OPEN with no role

OPEN with peer role

Notification

Notification if the role is not set in OPEN from the neighbor

Page 17: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

A Simple Config

protocol bgp IAMOPERATOR {

local as MY_AS;

neighbor X.X.X.X as AS_PROVIDER;

role provider

}

Page 18: A Simple BGP - RIPE 71 · A Simple BGP Author: mitradir Created Date: 11/19/2015 10:38:31 AM

Benefits

Backward compatibility

• Unknown optional non-transit attributes are just ignored

• Unknown capabilities should be just ignored!

Route leak extinction:

• No mistake leaks

• Opportunity to control neighbor configuration