Border Gateway Protocol Ankit Agarwal Dashang Trivedi Kirti Tiwari.

Slides:



Advertisements
Similar presentations
1 Copyright  1999, Cisco Systems, Inc. Module10.ppt10/7/1999 8:27 AM BGP — Border Gateway Protocol Routing Protocol used between AS’s Currently Version.
Advertisements

BGP.
CS Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance.
CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.
Path Vector Routing NETE0514 Presented by Dr.Apichan Kanjanavapastit.
© J. Liebeherr, All rights reserved 1 Border Gateway Protocol This lecture is largely based on a BGP tutorial by T. Griffin from AT&T Research.
Border Gateway Protocol Autonomous Systems and Interdomain Routing (Exterior Gateway Protocol EGP)
Fundamentals of Computer Networks ECE 478/578 Lecture #18: Policy-Based Routing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
Chapter 4: Network Layer 4. 1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What’s inside a router 4.4 IP: Internet Protocol –Datagram format.
1 Network Architecture and Design Routing: Exterior Gateway Protocols and Autonomous Systems Border Gateway Protocol (BGP) Reference D. E. Comer, Internetworking.
Practical and Configuration issues of BGP and Policy routing Cameron Harvey Simon Fraser University.
CS Summer 2003 Lecture 3. CS Summer 2003 What is a BGP Path Attribute? BGP uses a set of parameters known as path attributes to characterize.
1 ELEN 602 Lecture 20 More on Routing RIP, OSPF, BGP.
CS Summer 2003 Lecture 4. CS Summer 2003 Route Aggregation The process of representing a group of prefixes with a single prefix is known as.
The Border Gateway Protocol (BGP) Sharad Jaiswal.
Computer Networking Lecture 10: Inter-Domain Routing
More on BGP Check out the links on politics: ICANN and net neutrality To read for next time Path selection big example Scaling of BGP.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco PublicBSCI Module 6 1 Configuring Basic BGP BSCI Module 6.
CSE5803 Advanced Internet Protocols and Applications (8) Introduction Some basic concepts of routing inside an autonomous system was introduced in.
Ion Stoica October 2, 2002 (* this presentation is based on Lakshmi Subramanian’s slides) EE 122: Inter-domain routing – Border Gateway Protocol (BGP)
14 – Inter/Intra-AS Routing
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—6-1 Connecting an Enterprise Network to an ISP Network Considering the Advantages of Using BGP.
Border Gateway Protocol(BGP) L.Subramanian 23 rd October, 2001.
Inter-domain Routing Don Fussell CS 395T Measuring Internet Performance.
BGP Training. Terms IGP (Interior Gateway Protocol) - RIP, IGRP, EIGRP, OSPF = Routing protocol used to exchange routing information within an autonomous.
Explaining BGP Concepts and Terminology
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—6-1 Connecting an Enterprise Network to an ISP Network BGP Attributes and Path Selection Process.
Routing and Routing Protocols Routing Protocols Overview.
CS 3700 Networks and Distributed Systems Inter Domain Routing (It’s all about the Money) Revised 8/20/15.
BGP Border Gateway Protocol By Amir and David. What Is BGP ? Exterior gateway protocols are designed to route between autonomous systems. AS’s : A set.
Border Gateway Protocol Presented BY Jay Purohit & Rupal Jaiswal GROUP 9.
Chapter 9. Implementing Scalability Features in Your Internetwork.
Border Gateway Protocol
BGP V1.1. When is BGP Applicable Basic BGP Peer Configuration Troubleshooting BGP Connections BGP Operation and Path Attributes Route Import/Export Selected.
Xuan Zheng (modified by M. Veeraraghavan) 1 BGP overview BGP operations BGP messages BGP decision algorithm BGP states.
© 2001, Cisco Systems, Inc. A_BGP_Confed BGP Confederations.
Copyright 2012 Kenneth M. Chipps Ph.D. Cisco CCNA Exploration CCNA 2 Routing Protocols and Concepts BGP Last Update
BGP4 - Border Gateway Protocol. Autonomous Systems Routers under a single administrative control are grouped into autonomous systems Identified by a 16.
Border Gateway Protocol (BGP) W.lilakiatsakun. BGP Basics (1) BGP is the protocol which is used to make core routing decisions on the Internet It involves.
More on Internet Routing A large portion of this lecture material comes from BGP tutorial given by Philip Smith from Cisco (ftp://ftp- eng.cisco.com/pfs/seminars/APRICOT2004.
Internet Protocols. ICMP ICMP – Internet Control Message Protocol Each ICMP message is encapsulated in an IP packet – Treated like any other datagram,
© 2006 Cisco Systems, Inc. All rights reserved.Cisco PublicBSCI Module 6 1 Configuring Basic BGP BSCI Module 6.
Routing in the Inernet Outcomes: –What are routing protocols used for Intra-ASs Routing in the Internet? –The Working Principle of RIP and OSPF –What is.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 11 - Inter-Domain Routing - BGP (Border Gateway Protocol)
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—1-1 BGP Overview Understanding BGP Path Attributes.
1 Border Gateway Protocol (BGP) and BGP Security Jeff Gribschaw Sai Thwin ECE 4112 Final Project April 28, 2005.
BGP and ICMP. Exterior Gateway Protocol (EGP) Like RIP, but no metrics. Just if reachable. Rtr inside a domain collects reachability information and informs.
Routing Protocols COSC 541 Data Commun. System & Networks Yue Dou.
BGP Transit Autonomous System
BGP Basics BGP uses TCP (port 179) BGP Established unicast-based connection to each of its BGP- speaking peers. BGP allowing the TCP layer to handle such.
Route Selection Using Attributes
Text BGP Basics. Document Name CONFIDENTIAL Border Gateway Protocol (BGP) Introduction to BGP BGP Neighbor Establishment Process BGP Message Types BGP.
Border Gateway Protocol BGP-4 BGP environment How BGP works BGP information BGP administration.
Border Gateway Protocol DPNM Lab. Seongho Cho
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
Border Gateway Protocol
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
Border Gateway Protocol
CCNP – Advanced Rou– BGP (Part I)
BGP (cont) 1. BGP Peering 2. BGP Attributes
Explaining BGP Concepts and Terminology
BGP supplement Abhigyan Sharma.
Lixin Gao ECE Dept. UMASS, Amherst
Module Summary BGP is a path-vector routing protocol that allows routing policy decisions at the AS level to be enforced. BGP is a policy-based routing.
Cours BGP-MPLS-IPV6-QOS
BGP Route Selection.
BGP Instability Jennifer Rexford
Computer Networks Protocols
Presentation transcript:

Border Gateway Protocol Ankit Agarwal Dashang Trivedi Kirti Tiwari

What is BGP…? Border Gateway Protocol (BGP) is the protocol which is backing the core routing decisions on the Internet. It maintains a table of IP networks or 'prefixes' which designate network reach-ability among autonomous systems (AS). It is described as a path vector protocol (which maintains the path information that gets updated dynamically). -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.

When to use BGP and when not to use BGP Use BGP when the effects of BGP are well understood and one of the following conditions exist: The AS allows packets to transit through it to reach another AS (transit AS). The AS has multiple connections to other AS’s. The flow of traffic entering or exiting the AS must be manipulated. This is policy based routing and based on attributes.

BGP Message Types There are four types of BGP messages, each with its own role in setting up, maintaining, or tearing down a BGP peering session. They are listed below: 1.OPEN messages 2.UPDATE messages 3.KEEPALIVE messages 4.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 Message Types Each BGP Message contains the following header: Marker: The marker field is used to either authenticate incoming BGP messages or to detect loss of synchronization between two BGP peers. Length: The length field indicates the total BGP message length, including the header.

Type 1:BGP Open Message After the TCP session is established, both neighbors send Open messages. This message is used to establish connections with peers. Each neighbor uses this message to identify itself and to specify its BGP operational parameters including: BGP version number (defaults to version 4) AS number: AS number of the originating router, determines if BGP session is EBGP or IBGP. BGP identifier: IP address that identifies the neighbor using the same method as OSPF router ID. Optional parameter: authentication, multiprotocol support and route refresh.

Type 2: BGP Keepalive Message This message type is sent periodically between peers to maintain connections and verify paths held by the router sending the keepalive. If a router accepts the parameters specified in its neighbor’s Open message, it responds with a Keepalive. Subsequent Keepalives are sent every 60 seconds by Cisco default or equal to one-third the agreed-upon hold time (180 seconds). If the periodic timer is set to a value of zero (0), no keepalives are sent.

Type 3: BGP Update Message The UPDATE messages contain all the information BGP uses to construct a loop-free picture of the internetwork. Update messages advertises feasible routes, withdrawn routes, or both. The three basic components of an UPDATE message are: -Network-Layer Reachability Information (NLRI) -Path Attributes -Withdrawn Routes

Type 3: BGP Update Message Network-Layer Reachability Information (NLRI) This is one or more (Length, Prefix) tuples that advertise IP address prefixes and their lengths /19 Prefix = Prefix Length = 19 Path Attributes This is described later, providing the information that allows BGP to choose a shortest path, detect routing loops, and determine routing policy. Withdrawn Routes These are (Length, Prefix) tuples describing destination that have become unreachable and are being withdrawn from service. An update message that has no NLRI or path attribute information is used to advertise only routes to be withdrawn from service.

When BGP is running inside an AS, it is referred to as Internal BGP (IBGP). When BGP runs between autonomous systems, it is called External BGP (EBGP). ▫ Routers that sit on the boundary of an AS and use EBGP to exchange information with the ISP are called border routers. IBGP vs EBGP EBGP IBGP

 Routers A and B are running EBGP (BGP), and Routers B and C are running IBGP.  Note that the EBGP (BGP) peers are directly connected and that the IBGP peers are not. (They can be.)  As long as there is an IGP running that allows the two neighbors to reach one another, IBGP peers do not have to be directly connected.

BGP Configuration To begin configuring a BGP process:  Router(config)#router bgp AS-number  Router(config-router)#network network-number [mask network- mask]  Router(config-router)#neighbor ip-address remote-as AS-number

If the AS-number configured in the router bgp command is identical to the AS-number configured in the neighbor statement, BGP will initiate an internal session - IBGP. If the field values are different, BGP will build an external session - EBGP. BGP Configuration

RTA(config)#router bgp 100 RTA(config-router)#neighbor remote-as 200 RTB(config)#router bgp 200 RTB(config-router)#neighbor remote-as 100 Because the two AS numbers are different, BGP will start an EBGP connection with RTA. EBGP Configuration

IBGP Configuration RTB(config)#router bgp 200 RTB(config-router)#neighbor remote-as 200 RTB(config-router)#neighbor update-source loopback 0 RTC(config)#router bgp 200 RTC(config-router)#neighbor remote-as 200 RTC(config-router)#neighbor update-source loopback 0 Since the remote-as value (200) is the same as RTB ’ s BGP AS number, BGP recognizes that this connection will occur within AS 200, so it attempts to establish an IBGP session.

BGP Attributes Attributes allows BGP to choose a shortest path, detect routing loops, and determine routing policy. The four categories of attributes are described below: 1.Well-known Mandatory 2.Well-known Discretionary 3.Optional Transitive 4.Optional Nontransitive

BGP Attributes The NEXT_HOP attribute is a well-known mandatory attribute The next hop is the IP address of the EBGP neighbor from which the route was learned. The WEIGHT attribute This is a special Cisco attribute that is used in the path selection process when there is more than one route to the same destination. There are three ways to set the weight for updates coming in from Router A: 1.neighbor weight Command 2.Access List 3. Route Map

The Weight Attribute weight 200 weight 100 Higher weight preferred Router C router bgp 300 neighbor remote-as 100 neighbor weight 200 neighbor remote-as 200 neighbor weight 100 Result: Router C to send traffic through Router A.

BGP Attributes The LOCAL_PREF Attribute Degree of preference given to a route to compare it with other routes for the same destination ▫ Higher LOCAL_PREF values are preferred The MED attribute The MULTI_EXIT_DISC (Multi-Exit Discriminator) Informs external neighbors about the preferred path into an AS that has multiple entry points. A lower MULTI_EXIT_DISC (or MED) is preferred over a higher MED.

BGP Routing BGP is so flexible Routing Protocol. Routes are exchanged between BGP peers via UPDATE messages. BGP routers receive the UPDATE messages, run some policies or filters over the updates, and then pass on the routes to other BGP peers. The Cisco implementation of BGP keeps track of all BGP updates in a BGP table separate from the IP routing table.

BGP Route Selection Algorithm Summary of the BGP Path Selection Process BGP selects only one path as the best path. When the path is selected, BGP puts the selected path in its routing table and propagates the path to its neighbors. BGP uses the following criteria, in the order presented, to select a path for a destination: 1.If the path specifies a next hop that is inaccessible, drop the update 2. Prefer the path with the largest weight. 3. If the weights are the same, prefer the path with the largest local preference. 4. If the local preferences are the same, prefer the path that was originated by BGP running on this router.

BGP Route Selection Algorithm 5. If no route was originated, prefer the route that has the shortest AS_path. 6. If all paths have the same AS_path length, prefer the path with the lowest origin type (where IGP is lower than EGP, and EGP is lower than Incomplete). 7. If the origin codes are the same, prefer the path with the lowest MED attribute. 8. If the paths have the same MED, prefer the external path over the internal path. 9. If the paths are still the same, prefer the path through the closest IGP neighbor. 10. Prefer the path with the lowest IP address, as specified by the BGP router ID.

BGP IMPLEMENTATION

Topology

On R1 we see the next hop of /24 is > the network originated by a “network” command has the next-hop of

Thank You