This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
Routing can be characterized into 2 activities: finding the route paths and passing the group of packets through an internetwork. Passing packets through the network is easy but route determination is very difficult. A routing protocol can be defined as how routers communicate with each other to transfer data that allows them to select routes between any 2 nodes on a network. Each router has a correct knowledge only if it is directly attached to the network. A routing protocol can shares routing information successively, first among immediate neighbors and then throughout the entire network. In this way routers can get the information of the network topology. Confusion might occur between routing protocols and routed protocols. Routing protocol helps the router on which paths to send traffic, but a routed protocol is a network protocol that gives the information in its network layer address to allow a packet to be forwarded from one computer machine to another computer machine based on the addressing scheme, without knowing the entire path from source to destination.
Border Gateway Protocol (BGP) used to determine path very easily. In Transmission-Control Protocol/Internet Protocol (TCP/IP) networks BGP does inter-domain routing. BGP is an exterior gateway protocol (EGP), it means that it by using the BGP protocol we establish communication between multiple autonomous systems and Different service providers. By using BGP we can reduce the problems with EGP which is more efficient for the internet.
We can define Autonomous Systems as set of common routers under common administration or inter communication establishment between the university systems or the organization systems. In the internet thousands of autonomous systems interacted to deliver the data between the systems. An Autonomous System is a collection of routers and links administered by a single institution, such as an organization, university, or Internet service providers (ISPs). Neighboring ASes use the Border Gateway Protocol (BGP) to exchange routing information. In the BGP protocol every node contains its neighboring information. In BGP protocol we need not to maintain the global routing information. Here we are using the forwarding infrastructures. In BGP protocol just we need to pass out data to the neighbor node that node forwards to its neighbor in this way data reaches to the destination. BGP uses the routing policies to transmit the data in a best root.
Autonomous System (AS) applies local policies to select the feasible route (best route) and to decide whether or not to propagate this route to neighboring ASes, without knowing their policies and internal topology implementation to others. Border Gateway Protocol (BGP) policies show the relationships between neighboring ASes. Autonomous System (AS) pairs typically have a relationship like customer-provider or peer-peer. Customers receive the services provided by the service providers; peers provide connection between their respective customers. By using the local policies only autonomous systems pass to the next hop or next node using a best route. In BGP first it finds the all possible routes after that it finds the best route to transmit the data. 
The relationships between autonomous systems (ASes) convert into local rules that determine whether or not an AS exports its feasible routes or best routes to a neighboring Autonomous System. These local policies limit the possible paths between each pair of Internet nodes. Border Gateway Protocol (BGP) does not ensure that every pair of hosts can communicate, even if the underlying topology is connected. The link and router failures might cause an Autonomous System (AS) to withdraw a route, forcing some of the ASes to select alternate paths. However, these alternate paths are typically constructed by the commercial relationships between the Autonomous Systems. So as a result, some Autonomous System (AS) pairs may not have alternate routes in certain failure situations. Therefore, Autonomous Systems are greatly moving beyond traditional customer-provider and peer-peer relationships to form backup relationships to provide connectivity in the event of a network failure. These local policy backup arrangements between Autonomous Systems (ASes) introduce new BGP route advertisements that announce the backup routes. On another way, the declaration of backup routes should improve the robustness of the Internet in the face of link and router failures. However, the backup routes policies have negative shade on the global properties of the Internet routing system.
The backup routes could introduce global Border Gateway Protocol convergence problems that result in protocol divergence,that determines the robustness of the network. Even if the system converges, the use of backup routes increases a global cost in terms of increased convergence delay after the withdrawal of a route.
6.2 BGP Operation
BGP can perform 3 types of routing: inter-autonomous system routing, intra-autonomous system routing, and pass-through autonomous system routing.
The Interautonomous system routing happens between 2 or more BGP routers in different autonomous systems. The Peer routers in these systems routing use BGP to maintain a consistent view of the internetwork topology. BGP neighbors communicating between ASs should reside on the same physical network. The Internet serves as an example of an entity that uses this type of routing because it is comprised of ASs or common administrative domains. Many of these domains represent various organization, corporations, and entities that make up the Internet. Border Gateway Protocol is frequently used to provide path determination to provide optimal routing within the Internet.
The Intra-autonomous system routing occurs between 2 or more BGP routers located within the common AS. The Peer routers within the common AS use Border Gateway Protocol to maintain a consistent view of the system topology. The BGP is also used to determine which router can serve as the connection point for specific external ASs. For Interautonomous system routing, the best example is Internet. An organization, such as a university, can make use of BGP protocol to provide optimal routing within its own and common administrative domain or As. Both the intra and inter autonomous system routing services have been provided by the BGP protocol.
The Pass-through autonomous system routing occurs between 2 or more BGP peer routers that exchange traffic across an autonomous system (AS) that does not run BGP. In a pass-through autonomous system environment, the BGP traffic did not originate within the AS in question and is not destined for a node in the AS. The BGP protocol should interact with whatever intra-autonomous system routing protocol is being used to successfully transport BGP traffic through that autonomous system.
6.3 BGP Routing
As with any routing protocol, BGP maintains routing tables and it doesnâ€™t require global routing information, transmits routing updates, and bases routing decisions on routing metrics. The basic function of a BGP system is to exchange network-reachability information, including information about the list of possible paths, with other BGP systems. This information can be used to construct a graph of AS connectivity from which routing loops can be pruned and with which AS-level policy decisions could be enforced. Each and every BGP router maintains a routing table that lists all possible paths and feasible paths to a particular network. The BGP router does not refresh the routing table, however. Instead of that, the routing information received from peer routers is retained until and unless an incremental update is received. The BGP protocol devices exchange routing information upon initial data exchange and after incremental updates. When a router first connects to the network, BGP routers exchange their full BGP routing tables. Similarly, when the routing table changes occurred, routers send the portion of their routing table that has changed. The Border Gateway Protocol routers do not send regularly scheduled routing updates, and the Border Gateway Protocol routing updates advertise only the optimal path to a network. The BGP uses a single path routing metric to determine the feasible path or best path to a given network. This metric contains of an arbitrary unit number which specifies the degree of preference of a particular link. The BGP metric typically is assigned to each and every link by the network administrator. The value assigned to a link could be based on any number of criteria, including the number of ASs through which the path passes stability, speed, delay, or cost. [9 , 10]
6.4 BGP Message Types
In RFC 1771 we have 4 BGP message types, A Border Gateway Protocol 4 (BGP-4): open message, update message, notification message, and keep-alive message.
The open message opens a BGP communications session between nodes and is the first message sent by each side after a transport-protocol connection is established. The open messages are confirmed using a keep-alive message sent by the node device and must be confirmed before updates, notifications, and keep-oliveâ€™s can be exchanged.
An update message is used to give routing updates to other BGP nodes, allowing BGP routers to construct a consistent view of the network topology. BGP uses Transmission Control Protocol (TCP) to send the updates and ensures reliable delivery of information. The Update messages can withdraw one or more non feasible routes from the routing table and simultaneously can advertise a route while withdrawing other routes.
The notification message is sent when an error condition is detected on the route. Notifications are used to close a current session and to inform any connected routers why the session is being closed.
The keep-alive message notifies BGP nodes that a device is active. Keep-alive is sent often enough to keep the sessions from expiring.
In the above topic we have discussed briefly about the BGP protocol its background, how it works and operates in different networks and types of BGP messages available and their functions.