IST304 BGP
BGP has five basic messages
1 OPEN Initialize communication 2 UPDATE Advertise or withdraw routes 3 NOTIFICATION Response to an incorrect message 4 KEEP ALIVE Actively test peer connectivity 5 REFRESH Request advertisement from peer
What is an Autonomous System (AS)
A set of routers under a single technical administration, using an interior gateway protocol (IGP) and common metrics to route packets within the AS and using an exterior gateway protocol (EGP) to route packets to other AS's Each AS assigned unique ID AS's peer at network exchanges
Uses of AS_Path and Next_Hop
AS_Path Path attribute can specify Next-hop for advertised destination A list of ASs along the path to the destination Whether the path information was learned from another autonomous system or derived from within the sender's autonomous system Avoid a particular AS Number of AS crossed Conceptually, the Path Attributes field contains a list of items, where each item consists of a triple: (type, length, value) Each item in the PATH attributes field can have one of eight possible type codes.
BGP peers functions
Each peer does initial peer acquisition and authentication Each BGP peer sends positive or negative reachability information Provides ongoing verification that the peers and the network connections between them are functioning correctly.
Exchanging Routing Information between Autonomous Systems
First, a border router collects information about networks inside its AS, and then advertises network reachability information with other border routers of other ASs. The role of Exterior Gateway Protocol is precisely to exchange routing information between Autonomous Systems. • EGP was the first protocol to do that. • Today we use Border gateway Protocol (BGP).
Border Gateway Protocol (BGP) Characteristics
Inter-AS Communication: Because BGP is designed as an exterior gateway protocol, its primary role is to allow one autonomous system to communicate with another. Coordination Among Multiple BGP Speakers: If an AS has multiple routers each communicating with a peer in an outside AS, a form of BGP known as iBGP can be used to coordinate among routers inside the system to guarantee they propagate consistent information. Propagation of Reachability Information: BGP allows an AS to advertise destinations that are reachable either in or through it, and to learn such information from other AS. Next-Hop Paradigm: Like distance-vector routing protocols, BGP supplies next-hop information for each destination. most widely used Exterior Gateway Protocol Policy Support: BGP can implement policies that local administrator chooses. Reliable transport: BGP uses TCP and assumes reliable transport. Path Information: Instead of specifying destinations that can be reached and a next-hop for each, BGP uses a path-vector paradigm in which advertisements specify path information that allows a receiver to learn a series of autonomous systems along a path to destination. Incremental updates: To conserve network bandwidth, BGP does not pass full information in each update message. Instead full information is exchanged once, and then successive messages carry incremental changes called deltas. Route aggregation: Allows a router to aggregate route information and send a single entry to represent multiple, related destinations.
How Should BGP be designed?
Link state or distance vector? No universal metric - policy decisions Problems with distance-vector: Bellman-Ford algorithm may not converge Problems with link state: Metric used by routers not the same LS database too large - entire Internet May expose policies to other AS's Solutions BGP does not use either distance-vector or the link-state algorithm. Instead, BGP
BGP operations
Two BGP routers exchanging information on a connection are called peers. Initially, BGP peers exchange the entire BGP routing table. A BGP router retains the current version of the entire BGP routing tables of all of its peers for the duration of the connection. Subsequently, only incremental updates are sent as the routing tables change. Keep alive messages are sent periodically to ensure that the connection between the BGP peers is alive. Notification messages are sent in response to errors or special conditions.
Exterior Gateway Protocols (EGP)
Used for routing between AS Official routing protocol used by the Internet is BGP
Interior Gateway Protocols (IGP)
Used for routing within an AS Include RIP, EIGRP, OSPF, and IS-IS
Message Types
When a peer accepts a OPEN message, the BGP speaking router responds by sending a KEEPALIVE message. They must send a OPEN and a KEEPALIVE before exchanging a routing information. KEEPALIVE To tell other routers that this router is still here UPDATE To advertise new destination that is reachable List of routes being withdrawn New destinations being advertised. Includes path info Origin (IGP or EGP) AS_Path (list of AS traversed) Next_hop (IP address of border router) Multi_Exit_Disc (Info about routers internal to AS) Local_pref (Inform other routers within AS) Atomic_Aggregate, Aggregator (Uses address tree structure to reduce amount of info needed)
BGP Routing Information Exchange
Within AS, router builds topology picture using IGP Router issues Update message to other routers outside AS using BGP These routers exchange info with other routers belonging to other AS They are called peer BGP routers Routers must then decide best routes