Border Gateway Protocol
Border Gateway Protocol
The Border Gateway Protocol (BGP) is a standardized exterior gateway protocol designed to exchange routing and reachability information among autonomous systems (AS) on the Internet. It is the core routing protocol of the Internet, responsible for making decisions based on paths, network policies, and rule sets configured by network administrators. BGP is classified as a path-vector protocol and operates over TCP (port 179).
BGP was first defined in RFC 1105 in 1989 and has since evolved through several versions, with the current standard being BGP-4, defined in RFC 4271 (2006). It replaced the earlier Exterior Gateway Protocol (EGP) and has become essential for inter-domain routing.
Features
- Path Vector Protocol: BGP maintains a table of IP networks and the paths (sequences of AS numbers) that packets must follow to reach each network. It uses this information to avoid routing loops.
- Policy-Based Routing: Unlike interior gateway protocols (IGPs), BGP allows network operators to apply complex policies (e.g., preferring certain paths for economic or performance reasons) using route maps, prefix lists, and community attributes.
- Scalability: BGP can handle the full Internet routing table, which exceeds 900,000 routes as of the 2020s, by using path aggregation and route summarization.
- Reliability: BGP uses TCP for transport, ensuring reliable delivery of routing updates, and implements keepalive messages to detect peer failures.
- Multiprotocol Extensions (MP-BGP): Defined in RFC 4760, MP-BGP extends BGP to carry routing information for protocols other than IPv4 (e.g., IPv6, MPLS, VPNs).
History
BGP was developed to address the limitations of the earlier Exterior Gateway Protocol (EGP) used on the ARPANET. The first BGP specification (RFC 1105) was published in 1989, followed by BGP-2 (RFC 1163, 1990), BGP-3 (RFC 1267, 1991), and finally BGP-4 (RFC 1771, 1995), which introduced Classless Inter-Domain Routing (CIDR) and route aggregation. Subsequent updates (especially RFC 4271) refined the protocol and added security considerations. The protocol has seen widespread adoption and remains the de facto standard for inter-AS routing.
Security
BGP was initially designed with little inherent security, making it vulnerable to route hijacking and misconfiguration. Efforts to improve security include the Resource Public Key Infrastructure (RPKI) for route origin validation and the BGPsec extension for path validation. Despite these, many networks still rely on manual filters and trust.