BGP, Border Gateway Protocol

Description Glossary RFCs Publications Obsolete RFCs

Description:

Protocol suite: TCP/IP.
Protocol type:Application layer distance vector routing protocol.
Port:179 (TCP) server.
SNMP MIBs:iso.org.dod.internet.mgmt.mib-2.bgp (1.3.6.1.2.1.15).
Working groups: bgp, Border Gateway Protocol.
bgpdepl, BGP Deployment and Application.
bmwg, Benchmarking Methodology.
grow, Global Routing Operations.
idr, Inter-Domain Routing.
softwire, Softwires.
Links: 
IANA: BGP parameters.
BGP Well-Known Communities.
Wiki: BGP.

RFC 4271:

BGP is an inter-Autonomous System routing protocol. The primary function of a BGP speaking system is to exchange network reachability information with other BGP systems. This network reachability information includes information on the list of Autonomous Systems that reachability information traverses. This information is sufficient for constructing a graph of AS connectivity for this reachability, from which routing loops may be pruned and, at the AS level, some policy decisions may be enforced.


BGP-1:

BGP-2:
This version removed the concept of "up", "down", and "horizontal" relations between autonomous systems that were present in version 1. BGP-2 introduced the concept of path attributes. In addition, BGP-2 clarified parts of the protocol that were "under-specified".

BGP-3:
This version lifts some of the restrictions on the use of the NEXT_HOP path attribute, and added the BGP Identifier field to the BGP OPEN message. It also clarifies the procedure for distributing BGP routes between the BGP speakers within an autonomous system.

BGP-4:
This version redefines the previously class-based network layer reachability portion of the updates to specify prefixes of arbitrary length in order to represent multiple classful networks in a single entry. The AS_PATH attribute has been modified so that sets of autonomous systems, as well as individual ASs may be described. In addition, The INTER-AS METRIC attribute has been redefined as the MULTI-EXIT DISCRIMINATOR. The LOCAL-PREFERENCE and AGGREGATOR attributes have been added.


MAC header IP header TCP header BGP header Data :::

BGP-4 header:

0001020304050607 0809101112131415 1617181920212223 2425262728293031
Marker
-
-
-
Length Type Data :::

Marker. 16 bytes.

Length. 16 bits.

Type. 8 bits.

TypeDescriptionReferences
0  
1OPEN. RFC 4271
2UPDATE. RFC 4271
3NOTIFICATION. RFC 4271
4KEEPALIVE. RFC 4271
5ROUTE-REFRESH. RFC 2918
6
-
255
  

Data. Variable length.


Path attributes.

ValueDescriptionReferences
0  
1ORIGIN. RFC 4271
2AS_PATH. RFC 4271
3NEXT_HOP. RFC 4271
4MULTI_EXIT_DISC. RFC 4271, RFC 4451
5LOCAL_PREF. RFC 4271
6ATOMIC_AGGREGATE. RFC 4271
7AGGREGATOR. RFC 4271
8COMMUNITY. RFC 1997
9ORIGINATOR_ID. RFC 1998, RFC 4456
10CLUSTER_LIST. RFC 1998, RFC 2796, RFC 4456
11DPA. 
12ADVERTISER. RFC 1863
13RCID_PATH / CLUSTER_ID. RFC 1863
14MP_REACH_NLRI. RFC 2283, RFC 2858
15MP_UNREACH_NLRI. RFC 2283, RFC 2858
16EXTENDED COMMUNITIES. RFC 4360
17NEW_AS_PATH.RFC 4893
18NEW_AGGREGATOR.RFC 4893
19SSA, SAFI Specific Attribute (deprecated). 
20Connector Attribute.RFC 6037
21AS_PATHLIMIT (deprecated). 
22PMSI_TUNNEL.RFC 6514
23Tunnel Encapsulation Attribute.RFC 5512
24Traffic Engineering.RFC 5543
25IPv6 Address Specific Extended Community. RFC 5701
26  
27PE Distinguisher Labels.RFC 6514
28
-
127
  
128ATTR_SET.RFC 6368
129
-
254
  
255reserved. 

Layer 2 Encapsulation Types.

ValueDescriptionReferences
0  
1Frame Relay.RFC 4446
2ATM AAL5 SDU VCC transport.RFC 4446
3ATM transparent cell transport.RFC 4816
4Ethernet (VLAN) Tagged Mode.RFC 4448
5Ethernet Raw Mode.RFC 4448
6Cisco HDLC.RFC 4618
7PPP.RFC 4618
8SONET/SDH Circuit Emulation Service.RFC 4842
9ATM n-to-one VCC cell transport.RFC 4717
10ATM n-to-one VPC cell transport.RFC 4717
11IP Layer 2 Transport.RFC 3032
12
-
14
  
15Frame Relay Port mode.RFC 4619
16  
17Structure-agnostic E1 over packet.RFC 4553
18Structure-agnostic T1 (DS1) over packet.RFC 4553
19VPLS.RFC 4761
20Structure-agnostic T3 (DS3) over packet.RFC 4553
21Nx64kbit/s Basic Service using Structure-aware.RFC 5086
22
-
24
  
25Frame Relay DLCI.RFC 4619
26
-
39
  
40Structure-agnostic E3 over packet.RFC 4553
41Octet-aligned payload for Structure-agnostic DS1 circuits.RFC 4553
42E1 Nx64kbit/s with CAS using Structure-aware.RFC 5086
43DS1 (ESF) Nx64kbit/s with CAS using Structure-aware.RFC 5086
44DS1 (SF) Nx64kbit/s with CAS using Structure-aware.RFC 5086
45
-
251
  
252
-
255
experimental. RFC 6624

Glossary:

AS, Autonomous System.

AS Confederation.
(RFC 3065) A collection of autonomous systems advertised as a single AS number to BGP speakers that are not members of the confederation.

AS Confederation Identifier.
(RFC 3065) An externally visible autonomous system number that identifies the confederation as a whole.

Community.
A group of destinations which share some common property. The COMMUNITIES path attribute may be used with BGP version 2 and all subsequent versions of BGP unless specifically noted otherwise.

CommunityDescription
0x00000000
-
0x0000FFFF
reserved.
0x00010000
-
0xFFFEFFFF
 
0xFFFF0000reserved.
0xFFFFFF01 NO_EXPORT. All routes received carrying a communities attribute containing this value MUST NOT be advertised outside a BGP confederation boundary (a stand-alone autonomous system that is not part of a confederation should be considered a confederation itself).
0xFFFFFF02 NO_ADVERTISE. All routes received carrying a communities attribute containing this value MUST NOT be advertised to other BGP peers.
0xFFFFFF03 NO_EXPORT_SUBCONFED. All routes received carrying a communities attribute containing this value MUST NOT be advertised to external BGP peers (this includes peers in other members autonomous systems inside a BGP confederation).
0xFFFFFF04 NOPEER. This is an advisory qualification to readvertisement of a route prefix, permitting an AS not to readvertise the route prefix to all external bilateral peer neighbour AS's. It is consistent with these semantics that an AS may filter received prefixes that are received across a peering session that the receiver regards as a bilateral peer sessions.
0xFFFFFF05
-
0xFFFFFFFF
reserved.

Member-AS.
(RFC 1965) An autonomous system that is contained in a given AS confederation.


RFCs:

[RFC 1265] BGP Protocol Analysis.

[RFC 1266] Experience with the BGP Protocol

[RFC 1267] A Border Gateway Protocol 3 (BGP-3).

[RFC 1397] Default Route Advertisement In BGP2 And BGP3 Versions Of The Border Gateway Protocol.

[RFC 1403] BGP OSPF Interaction.

[RFC 1482] Aggregation Support in the NSFNET Policy-Based Routing Database.

[RFC 1745] BGP4/IDRP for IP---OSPF Interaction.

[RFC 1772] Application of the Border Gateway Protocol in the Internet.

[RFC 1773] Experience with the BGP-4 protocol.

[RFC 1774] BGP-4 Protocol Analysis.

[RFC 1812] Requirements for IP Version 4 Routers.

[RFC 1817] CIDR and Classful Routing.

[RFC 1930] Guidelines for creation, selection, and registration of an Autonomous System (AS).

[RFC 1997] BGP Communities Attribute.

[RFC 1998] An Application of the BGP Community Attribute in Multi-home Routing.

[RFC 2042] Registering New BGP Attribute Types.

[RFC 2270] Using a Dedicated AS for Sites Homed to a Single Provider.

[RFC 2385] Protection of BGP Sessions via the TCP MD5 Signature Option.

[RFC 2439] BGP Route Flap Damping.

[RFC 2519] A Framework for Inter-Domain Route Aggregation.

[RFC 2545] Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing.

[RFC 2791] Scalable Routing Design Principles.

[RFC 2858] Multiprotocol Extensions for BGP-4.

[RFC 2918] Route Refresh Capability for BGP-4.

[RFC 3065] Autonomous System Confederations for BGP.

[RFC 3107] Carrying Label Information in BGP-4.

[RFC 3166] Request to Move RFC 1403 to Historic Status.

[RFC 3167] Request to Move RFC 1745 to Historic Status.

[RFC 3221] Commentary on Inter-Domain Routing in the Internet.

[RFC 3345] Border Gateway Protocol (BGP) Persistent Route Oscillation Condition.

[RFC 3392] Capabilities Advertisement with BGP-4.

[RFC 3765] NOPEER Community for Border Gateway Protocol (BGP) Route Scope Control.

[RFC 3882] Configuring BGP to Block Denial-of-Service Attacks.

[RFC 4098] Terminology for Benchmarking BGP Device Convergence in the Control Plane.

[RFC 4223] Reclassification of RFC 1863 to Historic.

[RFC 4264] BGP Wedgies.

[RFC 4271] A Border Gateway Protocol 4 (BGP-4).

[RFC 4272] BGP Security Vulnerabilities Analysis.

[RFC 4273] Definitions of Managed Objects for BGP-4.

[RFC 4274] BGP-4 Protocol Analysis.

[RFC 4275] BGP-4 MIB Implementation Survey.

[RFC 4276] BGP-4 Implementation Report.

[RFC 4277] Experience with the BGP-4 Protocol.

[RFC 4278] Standards Maturity Variance Regarding the TCP MD5 Signature Option (RFC 2385) and the BGP-4 Specification.

[RFC 4360] BGP Extended Communities Attribute.

[RFC 4364] BGP/MPLS IP Virtual Private Networks (VPNs).

[RFC 4365] Applicability Statement for BGP/MPLS IP Virtual Private Networks (VPNs).

[RFC 4384] BGP Communities for Data Collection.

[RFC 4451] BGP MULTI_EXIT_DISC (MED) Considerations.

[RFC 4456] BGP Route Reflection: An Alternative to Full Mesh Internal BGP (IBGP).

[RFC 4486] Subcodes for BGP Cease Notification Message.

[RFC 5291] Outbound Route Filtering Capability for BGP-4.

[RFC 5292] Address-Prefix-Based Outbound Route Filter for BGP-4.

[RFC 5701] IPv6 Address Specific BGP Extended Community Attribute.

[RFC 6608] Subcodes for BGP Finite State Machine Error.


Publications:


Obsolete RFCs:

[RFC 1105] A Border Gateway Protocol (BGP).

[RFC 1163] A Border Gateway Protocol (BGP).

[RFC 1164] Application of the Border Gateway Protocol in the Internet.

[RFC 1268] Application of the Border Gateway Protocol in the Internet.

[RFC 1269] Definitions of Managed Objects for the Border Gateway Protocol (Version 3).

[RFC 1364] BGP OSPF Interaction.

[RFC 1654] A Border Gateway Protocol 4 (BGP-4).

[RFC 1655] Application of the Border Gateway Protocol in the Internet.

[RFC 1656] BGP-4 Protocol Document Roadmap and Implementation Experience.

[RFC 1657] Definitions of Managed Objects for the Fourth Version of the Border Gateway Protocol (BGP-4) using SMIv2.

[RFC 1771] A Border Gateway Protocol 4 (BGP-4).

[RFC 1863] A BGP/IDRP Route Server alternative to a full mesh routing.

[RFC 1965] Autonomous System Confederations for BGP.

[RFC 1966] BGP Route Reflection. An alternative to full mesh IBGP.

[RFC 2283] Multiprotocol Extensions for BGP-4.

[RFC 2547] BGP/MPLS VPNs.

[RFC 2796] BGP Route Reflection - An Alternative to Full Mesh IBGP.

[RFC 2842] Capabilities Advertisement with BGP-4.


Description Glossary RFCs Publications Obsolete RFCs