Sie sind auf Seite 1von 23

BGP for Link-State Distribution

Vinit Jain
CCIE# 22854
Twitter - @vinugenie
ATE-CL037
Agenda
• Introduction
• BGP Link-State (BGP-LS) Overview
• How BGP-LS Works
• Use Cases for BGP-LS
• Demo
BGP-LS Overview
BGP-LS Overview
Background
• There is a growing interest in getting an abstracted view of the entire network so
that higher level applications can provide useful functionalities to businesses
• Applications like ALTO and PCE use such network abstractions on a real time
basis to enable users the ability to plan and optimize the network usage
• It is possible for ALTO/PCE to form a peering with one of the nodes in an area
and get the full link-state data for that area only – this will not be for the entire
network
• Also, providers are not keen on allowing IGP access to an external application
where they will not be able to control what information is available to the
application

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
BGP-LS Overview
PCE & ALTO Servers
• Path Computation Elements (PCE)
• Defined in RFC 4655
• Used for calculating optimal paths for TE in an Inter-Area TE deployment
• Requires complete topology and resource information database

• Application Layer Traffic Optimization (ALTO)


• Defined in RFC 5693
• Requires L3 topology (BGP / IGP) to compute network distance between various end
points

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 5
BGP-LS Overview
Why BGP?
• BGP scales well where millions of prefixes and paths needs to be transported
which will make it possible to not have to impact the IGP scale
• BGP is widely deployed and already part of the service provider infrastructure
and hence deploying a new feature will not be a major hurdle
• As is becoming the common practice, BGP will be used to transport the link-
state information and make is accessible to the external applications
• A hierarchical RR can collect all the link-state information from the various areas
so that the external information can access that information from single point of
contact

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 6
BGP-LS Overview
Overview
• Defined in RFC 7752
• Used to distribute IGP topology information to other BGP speakers using a BGP
NLRI
• PCE or ALTO servers peer with BGP to collect both IGP and BGP topology
information
• In order to implement new link-state AFI is defined
• BGP Uses AFI 16388 and SAFI 71 for non-VPN links, node and prefix
information
• Uses AFI 16388 and SAFI 72 for VPN based links, node and prefix information

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 7
BGP-LS Overview
Architecture Example

PCE
RR IGP area
IGP area
BGP
BGP

BGP

IGP network/AS IGP area

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 8
How BGP-LS Works
How BGP-LS Works
NLRI Information
• Type 1 – Node NLRI
• Type 2 – Link NLRI
• Type 3 – IPv4 Topology prefix NLRI
• Type 4 – IPv6 Topology prefix NLRI

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
How BGP-LS Works
Node NLRI
• Consists of Node Identifier and Node Descriptor fields.
• Typically the OSPF Router ID or IS-IS System ID are carried in the Node
Description field.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
| Protocol-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identifier |
| (64 bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Local Node Descriptors (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
How BGP-LS Works
Link NLRI
• Link NLRI is used to uniquely identify a link in the network
• The Link Descriptor field – TLV format
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
| Protocol-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identifier |
| (64 bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Local Node Descriptors (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Remote Node Descriptors (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Link Descriptors (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
How BGP-LS Works
IPv4/IPv6 Prefix NLRI
• Prefix Descriptor used to uniquely identify a prefix originated by a node
• Both IPv4 and IPv6 have the same prefix NLRI format
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
| Protocol-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identifier |
| (64 bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Local Node Descriptors (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// Prefix Descriptors (variable) //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 13
How BGP-LS Works
BGP-LS Path Attributes
• Node Attribute • Link Attributes
• Multi-Topology Id • IPv4 / IPv6 Router-Id (local & Remote)
• Node Flag Bits • IGP metric
• Opaque Node Attribute • Administrative group
• Node Name • Max. link bandwidth
• IS-IS Area Id • Max. reservable bandwidth
• IPv4 Router-Id (local node) • Unreserved bandwidth
• IPv6 Router-Id (local node) • TE default metric
• Link protection type
• MPLS protocol mask
• Shared risk link group
• Opaque link attribute
• Link name
ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
How BGP-LS Works
System Flow

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 15
How BGP-LS Works
Configuration

 BGP
router bgp <asn>
address-family link-state unicast
neighbor <addr>
remote-as <remote_asn>
address-family link-state unicast
 OSPF
router ospf <id>
distribute bgp-ls [throttle-time <interval>]
area 0
 ISIS
router isis <id>
distribute bgp-ls <level> [throttle-time <interval>]

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
How BGP-LS Works
Link-State BGP Prefixes
• Node Descriptor Prefix
*> [V][L2][I0x0][N[c100][b192.168.2.2][s0000.0000.0002.00]]/328
0.0.0.0 0 i
• Link Descriptor Prefix
*>
[E][L2][I0x0][N[c100][b192.168.2.2][s0000.0000.0001.00]][R[c100][b192.168.2.
2][s0000.0000.0004.01]][L[i10.1.14.1][n10.1.14.4]]/704
0.0.0.0 0 i
• Prefix Descriptor Prefix
*>
[T][L2][I0x0][N[c100][b192.168.2.2][s0000.0000.0003.00]][P[p10.1.23.0/24]]/392
0.0.0.0 0 i

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 17
How BGP-LS Works
Node Descriptor Prefix
*> [V][L2][I0x0][N[c100][b192.168.2.2][s0000.0000.0002.00]]/328
0.0.0.0 0 i

• [V] – Node Descriptor Route


• [L2] – IS-IS Level-2 Node
• [s0000.0000.0002.00] – ISO System ID 0000.0000.0002.00

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 18
How BGP-LS Works
Link Descriptor Prefix
*>
[E][L2][I0x0][N[c100][b192.168.2.2][s0000.0000.0001.00]][R[c100][b1
92.168.2.2][s0000.0000.0004.01]][L[i10.1.14.1][n10.1.14.4]]/704
0.0.0.0 0 i

• [E] – Link Descriptor route


• [s0000.0000.0001.00]][R[c100][b192.168.2.2][s0000.0000.0004.01]] –
Describes half-link between ISO node 0000.0000.0001 which is the local node
and 0000.0000.0004.00 which is the remote node.
• [L[i10.1.14.1][n10.1.14.4]] – Describes that the local link address is 10.1.14.1
and the remote end IP is 10.1.14.4.

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 19
How BGP-LS Works
Prefix Descriptor Prefix
*>
[T][L2][I0x0][N[c100][b192.168.2.2][s0000.0000.0003.00]][P[p10.1.23.0
/24]]/392
0.0.0.0 0 i

• [T] – Prefix Descriptor route


• [s0000.0000.0003.00]][P[p10.1.23.0/24]] – tells that the prefix 10.1.23.0/24 is
being advertised by node with ISO ID 0000.0000.0003.00.

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 20
Demo
BGP-LS Demo
Topology
SDN
R1 Controller

R11 R12

ATE-CL037 © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
ATE-CL037