CS 672 1 Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance.

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.
Border Gateway Protocol Ankit Agarwal Dashang Trivedi Kirti Tiwari.
CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.
Lecture 9 Overview. Hierarchical Routing scale – with 200 million destinations – can’t store all dests in routing tables! – routing table exchange would.
Path Vector Routing NETE0514 Presented by Dr.Apichan Kanjanavapastit.
Routing: Exterior Gateway Protocols and Autonomous Systems Chapter 15.
© 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)
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.
CS Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance.
1 Network Architecture and Design Routing: Exterior Gateway Protocols and Autonomous Systems Border Gateway Protocol (BGP) Reference D. E. Comer, Internetworking.
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.
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.
CS Summer 2003 Quiz 1 Q1) Answer the following: List one protocol that is commonly used for intra AS routing? List one protocol that is used for.
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.
Unicast Routing Protocols: RIP, OSPF, and BGP
CSE5803 Advanced Internet Protocols and Applications (8) Introduction Some basic concepts of routing inside an autonomous system was introduced in.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Exterior Gateway Protocols: EGP, BGP-4, CIDR Shivkumar Kalyanaraman Rensselaer Polytechnic Institute.
15-744: Computer Networking L-5 Inter-Domain Routing.
Border Gateway Protocol (BGP). 2 CORE, PEERs Autonomous Systems BGP Basic Operations The BGP Routing Process.
Feb 12, 2008CS573: Network Protocols and Standards1 Border Gateway Protocol (BGP) Network Protocols and Standards Winter
© 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.
Inter-domain Routing Don Fussell CS 395T Measuring Internet Performance.
14 – Inter/Intra-AS Routing Network Layer Hierarchical Routing scale: with > 200 million destinations: can’t store all dest’s in routing tables!
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
1 Interdomain Routing (BGP) By Behzad Akbari Fall 2008 These slides are based on the slides of Ion Stoica (UCB) and Shivkumar (RPI)
CS 3700 Networks and Distributed Systems Inter Domain Routing (It’s all about the Money) Revised 8/20/15.
CS 3830 Day 29 Introduction 1-1. Announcements r Quiz 4 this Friday r Signup to demo prog4 (all group members must be present) r Written homework on chapter.
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.
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Exterior Gateway Protocols: BGP-4, CIDR Shivkumar Kalyanaraman Rensselaer Polytechnic Institute.
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.
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.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429/556 Introduction to Computer Networks Inter-domain routing Some slides used with.
Internet Protocols. ICMP ICMP – Internet Control Message Protocol Each ICMP message is encapsulated in an IP packet – Treated like any other datagram,
CSCI-1680 Network Layer: Inter-domain Routing Based partly on lecture notes by Rob Sherwood, David Mazières, Phil Levis, Rodrigo Fonseca John Jannotti.
An internet is a combination of networks connected by routers. When a datagram goes from a source to a destination, it will probably pass through many.
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—6-1 Scaling Service Provider Networks Scaling IGP and BGP in Service Provider Networks.
BGP and ICMP. Exterior Gateway Protocol (EGP) Like RIP, but no metrics. Just if reachable. Rtr inside a domain collects reachability information and informs.
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.
Text BGP Basics. Document Name CONFIDENTIAL Border Gateway Protocol (BGP) Introduction to BGP BGP Neighbor Establishment Process BGP Message Types BGP.
Inter-domain Routing Outline Border Gateway Protocol.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 11 - Inter-Domain Routing - BGP (Border Gateway Protocol)
Border Gateway Protocol BGP-4 BGP environment How BGP works BGP information BGP administration.
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
1 Internet Routing 11/11/2009. Admin. r Assignment 3 2.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
Boarder Gateway Protocol (BGP)
Border Gateway Protocol
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
Border Gateway Protocol
BGP supplement Abhigyan Sharma.
BGP Overview BGP concepts and operation.
CSCI-1680 Network Layer: Inter-domain Routing
Department of Computer and IT Engineering University of Kurdistan
BGP Overview.
CSCI-1680 Network Layer: Inter-domain Routing
Computer Networks Protocols
Network Layer: Internet Inter-Domain Routing
Presentation transcript:

CS Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance

CS Summer 2003 Stub-AS Routing Options Provider may use one of the following options to learn about customer routes: Static routing IGP BGP Customer may use one of the following options: Default routing IGP BGP

CS Summer 2003 Multihomed Stub AS Routing Provider may use one of the following options to learn about customer routes: IGP BGP (preferable for better load balancing) Customer may use one of the following options: IGP BGP (preferable for better load balancing)

CS Summer 2003 Transit AS Routing In addition to advertising its own routes, a transit AS also advertises routes learned from other AS’s. Upon learning routes advertised by a transit AS, other AS’s direct traffic toward transit AS for certain routes. A transit AS uses BGP-4 for routing between other AS’s

CS Summer 2003 Transit AS AS 1 destinations (d1,d2,d3) destinations (d4,d5,d6) AS 2 AS 3 destinations (d7,d8,d9) BGP (d4,d5,d6) (d1,d2,d3) (d1,d2,d3,…, d8,d9)

CS Summer 2003 Guidelines for BGP Usage The Internet may be considered as an interconnection of transit, multihomed (non-transit), and stub AS’s. Single- and Multihomed Stub Autonomous Systems  may use protocols other than BGP (e.g., EGP, IGP, static routes)  however, use of BGP for advertising reachability information is recommended Transit Autonomous Systems  use BGP-4 for distributing routing information between multiple transit AS’s. Using BGP inside an AS BGP is mainly used for exchanging routing information between autonomous systems (inter-AS) However, BGP can be used to carry routing information across inside the AS

CS Summer 2003 Introduction to BGP-4 Border Gateway Protocol (BGP) is an an exterior gateway protocol main function of BGP is to allow exchange of routing information between BGP peers in different AS’s. routers that run BGP are known as BGP speakers. BGP version 4 (BGP-4) is the de-facto standard for inter-AS routing BGP-4 obsoletes the earlier versions 1-3 BGP can also be used inside of an AS (e.g., as a pipe) to carry external routing information across the AS. Use of BGP inside an AS protects non-BGP speakers from potentially large number of external routing information. Provides better control in selecting the exit and entrance points for the AS’s traffic.

CS Summer 2003 Motivations for BGP-4 Existing IGP (e.g., OSPF, IS-IS, RIP) protocols are not designed for routing in large global networks. Some of the factors include: Lack of mechanism to partition large networks into politically independent technical administrations (e.g., governments, institutions etc.) Count to infinity limitation of distance vectors protocols such as RIP Excessive control traffic generated by periodic updates of entire routing table (e.g., RIP).

CS Summer 2003 Motivations for BGP-4 Lack of mechanism to suppress excessive control traffic generated due unstable links flaps (i.e., up/down events) in link state protocols (e.g., OSPF) The processing and path recompilations due to excessive control traffic can easily overload control processor in the router Lack of support for route aggregation and CIDR Growth of table size becomes unmanageable in large networks Lack of effective mechanism to enforce policies (e.g., selection of routes,control of route redistribution)

CS Summer 2003 BGP Routing Model BGP is a path vector protocol because it exchanges complete AS path information between peers. A BGP speaker can constructs a graph of autonomous systems interconnection based on the exchanged routing information The use of full path information enables: Detection of BGP speaker routing loops Elimination of count-to-infinity problems associated with distance vector protocols Enforcement of policies based on configurations  Provides effective mechanisms for route selection and controlling redistribution of routing information. BGP supports CIDR and aggregation of routing information Reduction of table size Scalability

CS Summer 2003 AS Topology Graph Vertex – represents an AS Path (or edge) – represents interconnection between two AS. Route – collection of path information form a route. AS1 AS2 AS3 AS4 Path Routing Flow Traffic flow Route – (AS1, AS2, AS3)

CS Summer 2003 BGP Session BGP uses TCP for reliable delivery of its messages For establishing connection with neighbors, BGP uses TCP port 179 Before any routing exchange can take place, a TCP connection must be established between two BGP peers To establish TCP connection, BGP uses TCP port 179 After TCP connection establishment, BGP session parameters are negotiated. After BGP session parameters have been negotiated: during the initial update the complete entire routing table information is exchanged between neighbors afterwards, only incremental updates take place.

CS Summer 2003 External BGP Session BGP speakers may reside in the same AS or different AS’s A BGP session between two speakers in different AS’s is known as external BGP (eBGP) session. An eBGP session requires that the two BGP peers be directly connected (e.g., shared data between two AS’s) Cisco routers have removed the requirement of physical connectivity for eBGP session.

CS Summer 2003 Internal BGP Session A session between two speakers in the same AS is known as internal BGP (iBGP) session. An eBGP session can be established between directly or indirectly connected BGP speakers.

CS Summer 2003 eBGP and iBGP Sessions How does a BGP speaker know whether a BGP session internal or external? During BGP session establishment, BGP peers exchange AS numbers. Therefore, determination of a BGP session as iBGP or eBGP is based on comparison of AS numbers. If the AS numbers are same, the session is iBGP. Otherwise, eBGP.

CS Summer 2003 AS 300 AS 200 R1 R2 R3 R4 R6R7 R5 iBGP peers eBGP peers iBGP peers

CS Summer 2003 BGP Messages Each BGP message has a fixed size header that contains following fields: Marker Length Type (i.e., BGP message type) BGP defines following message types: Open KeepAlive Notification Update

CS Summer 2003 BGP Message Fixed Header Length (2 byte)Type (1 byte) Marker (16 byte) Total size of the fixed header = = 19 Byte

CS Summer 2003 BGP Open Message After establishing TCP connection, each speaker sends a BGP Open message BGP Open contains fields such as: Version My Autonomous System Hold Time BGP Identifier Optional Parameters If the values of the parameters are acceptable, the receiving side sends back KeepAlive message as an acknowledgement. Upon receipt of KeepAlive, other messages (e.g., Update, KeepAlive etc.) are exchanged.

CS Summer 2003 BGP Open Message Version (1 byte) My Autonomous System (2 byte) BGP Identifier (4 byte) Op Parameter Len (1 byte) TLV Encoded Optional Parameters

CS Summer 2003 BGP KeepAlive Message BGP peers send periodic KeepAlive messages to avoid Hold timer expiration For example, every 1/3 of Hold Timer period a KeepAlive message is sent The two BGP peers may negotiate to not send any KeepAlive. For example, If Hold Time = 0, KeepAlive is never sent. KeepAlive message only contains fixed length header (19 bytes)

CS Summer 2003 BGP Notification Message Whenever an error condition is encountered, BGP sends a Notification message. Following transmission of a notification message, the associated TCP connections is immediately closed. In addition to the fixed sized header, Notification message contains following fields: Error Code (e.g., 1= Message Hdr Error, 2=Open Msg Error, …) Error Subcode Data to help troubleshooting the error.

CS Summer 2003 OpenConfirm Established OpenSent ActiveConnect Idle 1,9,11,12 2-8,10,13(see note) 2,4,6, ,3, ,7 1 1,9 2-8,10,12,13 1, BGP Events: 1- BGP Start 8- Hold Timer Expired 2- BGP Stop 9- Keep Alive Timer Expired 3- BGP Transport Connection Open 10- Receive Open Message 4- BGP Transport Connection Closed 11- Receive Keep Alive Message 5- BGP Transport Connection Failed 12- Receive Update Message 6- BGP Transport Connection Fatal Error 13-Receive Notification Message 7- Connect Retry Timer Expired Note: Whenever BGP transitions Established to Idle state, it closed the TCP connection and withdraws all routes learned on that connection.

CS Summer 2003 BGP Update Message Update is the most important BGP message because it is used for exchanging routing information between BGP peers. Based on routing information exchanged via Update messages, BGP speakers construct graph of the AS’s topology. In short, BGP Update contains all the required information that enables BGP speakers to perform loop-free-routing. In addition to mandatory fixed-sized header, BGP Update may contain one or more of the following optional fields: Network Layer Reachability Information (NLRI) Withdrawn Routes Path Attributes

CS Summer 2003 Length (1 byte)Prefix (1 byte) Unfeasible Routes Length (2 bytes) Length (1 byte)Prefix (1 byte) Total Path Attribute Length (2 bytes) Withdrawn Routes (variable length) Path Attributes (a variable length sequence of path attributes such as AS_PATH, NEXT_HOP etc. NLRI Path Attributes Unfeasible Routes

CS Summer 2003 BGP Update Message In order to be able to exchange Update message, BGP session must be in established state Update message may simultaneously Advertise single feasible route But withdraw multiple routes What is a route? A route is an association of the path attributes with one or more IP destination prefixes contained in the NLRI. It is important to realize that all path attributes (carried in the Path Attribute field) apply to all IP destination prefixes listed in the NLRI field. This means, Update message cannot advertise more than one route

CS Summer 2003 BGP Update Message How come more than one routes can be withdrawn in a single message? A BGP speaker receiving an Update message can unambiguously can identify a route to be withdrawn based on an IP destination address listed in the withdrawn field. As a result, it is possible to withdraw multiple routes simultaneously.

CS Summer 2003 AS Topology Graph Vertex – represents an AS Path (or edge) – represents interconnection between two AS. Route – collection of path information form a route. AS1 AS2 AS3 AS4 Path Routing Flow Traffic flow Route – (AS1, AS2, AS3)