What is BGP…?Border Gateway Protocol (BGP) is the protocolwhich is backing the core routing decisions onthe Internet. It maintains a table of IP networksor prefixes which designate network reach-ability among autonomous systems (AS).It is described as a path vector protocol (whichmaintains the path information that getsupdated dynamically).
Count… BGP is one of the most important protocols of the Internet. BGP was created to replace the Exterior Gateway Protocol (EGP) to allow fully decentralized routing. BGP is used internally between the gateways to determine which gateway offers the best route to a given destination network.
BGP Peering Peering is the term used to describe the transit arrangements between ISPs. There are really two levels of peering, either you are a peer or a client. Peer networks agree to carry traffic of a peer without charging for it. Connections between networks can be private point-to-point links or through an exchange. Many NSPs are tending to move to private connections due to the overload situation at many of the NAPs. BGP is the protocol used to exchange routing information between the various networks.
Types of BGP SessionsWhile the stated purpose of BGP is to allow for the conveyanceof routing information between autonomous systems. Clearly,BGP routers must communicate differently when they share acommon AS (as opposed to being in different ASs).In fact, this is the distinction between1. Internal BGP (IBGP)2. External BGP (EBGP)These two variations on the same protocol act virtually the samein most instances. The differences between them lie in threeareas.1. Routing update processing2. Handling of route attributes3. Connectivity requirements
BGP Message TypesThere are four types of BGP messages, each with its ownrole in setting up, maintaining, or tearing down a BGPpeering session.They are listed below:1. OPEN messages2. UPDATE messages3. KEEPALIVE messages4. NOTIFICATION messages None of these messages may be exchanged until two BGP routers have first set up a TCP session between themselves on port 179. Errors on that TCP link will trigger BGP NOTIFICATION messages that will close the connection.
BGP Attribute CategoriesAttributes are used in the routing decision process.They might also be used in the input and outputpolicy definition process.The four categories of attributes are described below:1. Well-known Mandatory2. Well-known Discretionary3. Optional Transitive4. Optional Nontransitive
BGP Routing ProcessMost routing protocols receive routing information, useit to build and maintain a routing table, and share thattable (or a subset of the table) with other routers in thenetwork.
BGP ProblemsWith a lots of benefits and importance of BGP innetwork, it also have some problem on it’smaintenance.The main problems are follow:1. Internal BGP scalability2. Instability3. Routing table growth4. Load-balancing problem5. IP Hijacking
Implementations Bird Internet routing daemon, a GPL routing package for Unix-like systems. GNU Zebra, a GPL routing suite supporting BGP4. OpenBGPD, a BSD licensed implementation by the OpenBSD team. Quagga, a fork of GNU Zebra for Unix-like systems. XORP, the extensible Open Router Platform, a BSD licensed suite of routing protocols. VNE, a C# software library implementing BGP