Table of Contents

Border Gateway Protocol (BGP)

Return to Border Gateway Protocol 4 (BGP-4)

Border Gateway Protocol (BGP) is the standard exterior gateway protocol used for exchanging routing information between autonomous systems (AS) on the internet. As a path-vector protocol, BGP enables routers to make inter-domain routing decisions by evaluating network paths based on various attributes, such as the AS path and next-hop. This protocol plays a vital role in ensuring that traffic can be routed efficiently across different networks, providing the backbone for global internet connectivity. The related RFC is RFC 4271, which defines the technical specifications for BGP-4, the current version of BGP used on the internet. https://en.wikipedia.org/wiki/Border_Gateway_Protocol https://tools.ietf.org/html/rfc4271

One of the core functions of BGP is to exchange routing information between autonomous systems. An autonomous system is a collection of networks that operate under a common administrative domain and share a unified routing policy. BGP enables routers in different autonomous systems to advertise the routes they know about, allowing other BGP routers to build routing tables based on this information. This exchange of routes ensures that data can traverse multiple networks and reach its destination, even if it has to cross many different autonomous systems. The related RFC is RFC 4271, which details the operational mechanisms of route exchange in BGP. https://en.wikipedia.org/wiki/Autonomous_system_(Internet) https://tools.ietf.org/html/rfc4271

BGP uses a path-vector mechanism to select the best path for traffic to follow between autonomous systems. Each BGP router maintains a routing table that includes the paths to various networks, and the decision on which path to use is based on a series of attributes, such as the length of the AS path, next-hop reachability, and local preferences. The AS path attribute is particularly important because it records the sequence of autonomous systems that a route has traversed, allowing routers to avoid routing loops by discarding paths that include their own AS. The related RFC is RFC 4271, which explains how path selection and loop avoidance are managed in BGP. https://en.wikipedia.org/wiki/Routing_loop https://tools.ietf.org/html/rfc4271

Another key feature of BGP is its support for Classless Inter-Domain Routing (CIDR), which allows for more efficient allocation of IP address space and helps reduce the size of global routing tables. Before CIDR, address allocation followed a classful system, which often led to inefficient use of address space. With CIDR, BGP can aggregate multiple IP prefixes into a single route advertisement, reducing the number of individual routes that need to be maintained and improving the scalability of internet routing. The related RFC is RFC 1519, which introduced CIDR and its role in BGP for more efficient routing. https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing https://tools.ietf.org/html/rfc1519

BGP operates over TCP to ensure reliable communication between routers. BGP routers establish a TCP connection on port 179 and use this connection to exchange routing updates. The reliable nature of TCP guarantees that routing information is transmitted accurately, ensuring consistency between routers. If the TCP connection fails, the BGP session is terminated, and the routers must reestablish the connection to continue exchanging routes. This reliance on TCP provides BGP with a stable foundation for inter-domain routing. The related RFC is RFC 793, which defines the Transmission Control Protocol and its application for ensuring reliable data transmission in protocols like BGP. https://en.wikipedia.org/wiki/Transmission_Control_Protocol https://tools.ietf.org/html/rfc793

Security is a significant concern in BGP, as incorrect or malicious routing information can lead to route hijacking, traffic interception, or blackholing. To mitigate these risks, mechanisms such as BGP route filtering, BGP origin validation, and the use of the Resource Public Key Infrastructure (RPKI) have been introduced. RPKI allows network operators to cryptographically verify that a given AS is authorized to originate specific IP prefixes, reducing the risk of route hijacking. The related RFC is RFC 6811, which introduces BGP origin validation as a means of securing routing information. https://en.wikipedia.org/wiki/Resource_Public_Key_Infrastructure https://tools.ietf.org/html/rfc6811

The flexibility of BGP allows for its extension to support multiple protocols and additional features. Multiprotocol BGP (MP-BGP) extends the protocol to carry routing information for multiple network layer protocols, such as IPv6, MPLS, and VPNs. This makes BGP highly versatile and capable of handling a wide variety of routing scenarios, enabling networks to implement advanced services and technologies. The related RFC is RFC 4760, which defines the extensions necessary to support Multiprotocol BGP and its use in routing for multiple protocols. https://en.wikipedia.org/wiki/Multiprotocol_Extensions_for_BGP-4 https://tools.ietf.org/html/rfc4760

Conclusion

The title of this RFC is “Border Gateway Protocol 4 (BGP-4).” Border Gateway Protocol (BGP) is the backbone of inter-domain routing on the internet, enabling autonomous systems to exchange routing information and make decisions based on path attributes. Through features like CIDR, path-vector routing, and extensibility via MP-BGP, BGP has become an essential tool for managing global internet connectivity. Security measures, including BGP origin validation and route filtering, help protect the integrity of routing data. RFC 4271 provides the technical framework that defines the operation of BGP-4 and its role in maintaining efficient and scalable inter-domain routing.