Border Gateway Protocol (BGP) (RFC1105)
Original Publication Date: 1989-Jun-01
Included in the Prior Art Database: 2000-Sep-12
Internet Society Requests For Comment (RFCs)
K. Lougheed: AUTHOR [+2]
The Border Gateway Protocol (BGP) is an inter-autonomous system routing protocol. It is built on experience gained with EGP as defined in RFC 904  and EGP usage in the NSFNET Backbone as described in RFC 1092  and RFC 1093 .
Network Working Group K. Lougheed
Request for Comments: 1105 cisco Systems
T.J. Watson Research Center, IBM Corp.
A Border Gateway Protocol (BGP)
Status of this Memo
This RFC outlines a specific approach for the exchange of network
reachability information between Autonomous Systems.
At the time of this writing, the Border Gateway Protocol
implementations exist for cisco routers as well as for the NSFNET
Nodal Switching Systems. A public domain version for "gated" is
currently being implemented.
Distribution of this memo is unlimited.
The Border Gateway Protocol (BGP) is an inter-autonomous system
routing protocol. It is built on experience gained with EGP as
defined in RFC 904  and EGP usage in the NSFNET Backbone as
described in RFC 1092  and RFC 1093 .
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 autonomous
systems (AS's) that traffic must transit to reach these networks.
This information is sufficient to construct a graph of AS
connectivity from which routing loops may be pruned and policy
decisions at an AS level may be enforced.
BGP runs over a reliable transport level protocol. This eliminates
the need to implement explicit update fragmentation, retransmission,
acknowledgement, and sequencing. Any authentication scheme used by
the transport protocol may be used in addition to BGP's own
The initial BGP implementation is based on TCP , however any
reliable transport may be used. A message passing protocol such as
VMTP  might be more natural for BGP. TCP will be used, however,
since it is present in virtually all commercial routers and hosts.
In the following descriptions the phrase "transport protocol
connection" can be understood to refer to a TCP connection. BGP uses
TCP port 179 for establishing its connections.
2. Summary of Operation
Two hosts form a transport protocol connection between one another.
They exchange messages to open and confirm the connection parameters.
The initial data flow is the entire BGP routing table. Incremental
updates are sent as the routing tables change. Keepalive messages
are sent periodically to ensure the liveness of the connection.
Notification messages are sent in response to errors or special
conditions. If a connection encounters an error condition, a
notification message is sent and the connection is optionally closed.
The hosts executing the Border Gateway Protocol need not be routers.
A non-routing host could exchange routing information with routers