PATH VECTOR ROUTING AND THE BORDER GATEWAY PROTOCOL 1.

Slides:



Advertisements
Similar presentations
BGP Convergence Jennifer Rexford. Outline Border Gateway Protocol (BGP) –Prefix-based routing at the AS level –Policy-based path-vector protocol –Incremental.
Advertisements

Network Layer: Internet-Wide Routing & BGP Dina Katabi & Sam Madden.
CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.
© 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.
Fundamentals of Computer Networks ECE 478/578 Lecture #18: Policy-Based Routing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
Professor Yashar Ganjali Department of Computer Science University of Toronto
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.
Distance-Vector and Path-Vector Routing Sections , 4.3.2, COS 461: Computer Networks Spring 2011 Mike Freedman
PATH VECTOR ROUTING AND THE BORDER GATEWAY PROTOCOL READING: SECTIONS PLUS OPTIONAL READING COS 461: Computer Networks Spring 2010 (MW 3:00-4:20.
Internet Routing (COS 598A) Today: Addressing and Routing Jennifer Rexford Tuesdays/Thursdays 11:00am-12:20pm.
CS 164: Global Internet Slide Set In this set... More about subnets Classless Inter Domain Routing (CIDR) Border Gateway Protocol (BGP) Areas with.
Interdomain Routing and The Border Gateway Protocol (BGP) Courtesy of Timothy G. Griffin Intel Research, Cambridge UK
1 Policy-Based Path-Vector Routing Reading: Sections COS 461: Computer Networks Spring 2006 (MW 1:30-2:50 in Friend 109) Jennifer Rexford Teaching.
Computer Networking Lecture 10: Inter-Domain Routing
Economic Incentives in Internet Routing Jennifer Rexford Princeton University
Distance-Vector and Path-Vector Routing COS 461: Computer Networks Spring 2009 (MW 1:30-2:50 in COS 105) Michael Freedman Teaching Assistants: Wyatt Lloyd.
1 Interdomain Routing Policy Reading: Sections plus optional reading COS 461: Computer Networks Spring 2008 (MW 1:30-2:50 in COS 105) Jennifer Rexford.
© 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.
Stable Internet Routing Without Global Coordination Jennifer Rexford AT&T Labs--Research Joint work with Lixin Gao.
Interdomain Routing and the Border Gateway Protocol (BGP) Reading: Section COS 461: Computer Networks Spring 2011 Mike Freedman
Lecture Week 3 Introduction to Dynamic Routing Protocol Routing Protocols and Concepts.
ROUTING PROTOCOLS PART IV ET4187/ET5187 Advanced Telecommunication Network.
Border Gateway Protocol(BGP) L.Subramanian 23 rd October, 2001.
ROUTING ON THE INTERNET COSC Aug-15. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
Computer Networks Layering and Routing Dina Katabi
Inter-domain Routing Outline Border Gateway Protocol.
Internet Routing: Measurement, Modeling, and Analysis Dr. Jia Wang AT&T Labs Research Florham Park, NJ 07932, USA
Inter-domain Routing: Today and Tomorrow Dr. Jia Wang AT&T Labs Research Florham Park, NJ 07932, USA
Introduction to BGP.
Routing and Routing Protocols Routing Protocols Overview.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking BGP, Flooding, Multicast routing.
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.
CSE 461: Interdomain Routing
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
Lecture 4: BGP Presentations Lab information H/W update.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
Chapter 9. Implementing Scalability Features in Your Internetwork.
David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Hierarchical Routing (§5.2.6)
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.
Interdomain Routing EE 122: Intro to Communication Networks Fall 2010 (MW 4-5:30 in 101 Barker) Scott Shenker TAs: Sameer Agarwal, Sara Alspaugh, Igor.
1 CSCD 433/533 Network Programming Fall 2013 Lecture 14 Global Address Space Autonomous Systems, BGP Protocol Routing.
Routing protocols. Static Routing Routes to destinations are set up manually Route may be up or down but static routes will remain in the routing tables.
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.
1 7-Jan-16 S Ward Abingdon and Witney College Dynamic Routing CCNA Exploration Semester 2 Chapter 3.
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)
1 Agenda for Today’s Lecture The rationale for BGP’s design –What is interdomain routing and why do we need it? –Why does BGP look the way it does? How.
Routing Protocols Brandon Wagner.
Michael Schapira, Princeton University Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks
Inter-domain Routing Outline Border Gateway Protocol.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 11 - Inter-Domain Routing - BGP (Border Gateway Protocol)
1 Internet Routing: BGP Routing Convergence Jennifer Rexford Princeton University
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.
Border Gateway Protocol
COS 561: Advanced Computer Networks
BGP supplement Abhigyan Sharma.
Introduction to Internet Routing
CS 457 – Lecture 14 Global Internet
Department of Computer and IT Engineering University of Kurdistan
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 461: Computer Networks
BGP Instability Jennifer Rexford
Computer Networks Protocols
Presentation transcript:

PATH VECTOR ROUTING AND THE BORDER GATEWAY PROTOCOL 1

Goals of Today’s Lecture Path-vector routing – Faster convergence than distance vector – More flexibility in selecting paths Interdomain routing – Autonomous Systems (AS) – Border Gateway Protocol (BGP) BGP convergence – Causes of BGP routing changes – Path exploration during convergence 2

Interdomain Routing and Autonomous Systems (ASes) 3

Interdomain Routing Internet is divided into Autonomous Systems – Distinct regions of administrative control – Routers/links managed by a single “institution” – Service provider, company, university, … Hierarchy of Autonomous Systems – Large, tier-1 provider with a nationwide backbone – Medium-sized regional provider with smaller backbone – Small network run by a single company or university Interaction between Autonomous Systems – Internal topology is not shared between ASes – … but, neighboring ASes interact to coordinate routing 4

Autonomous System Numbers 5 AS Numbers are 16 bit values. Level 3: 1 MIT: 3 Harvard: 11 Yale: 29 Princeton: 88 AT&T: 7018, 6341, 5074, … UUNET: 701, 702, 284, 12199, … Sprint: 1239, 1240, 6211, 6242, … … Currently over 50,000 in use.

whois –h whois.arin.net as ASNumber: ASName: UMICH-AS-5 ASHandle: AS36375 RegDate: Updated: Ref: OrgName: University of Michigan OrgId: UNIVER-118 Address: IT Communications Services Address: 4251 Plymouth Road, Suite City: Ann Arbor StateProv: MI PostalCode: Country: US RegDate: Updated: Comment: For DMCA info see Ref: OrgTechHandle: UA11-ORG-ARIN OrgTechName: UMnet Administration …

whois –h whois.arin.net # The following results may also be obtained via: # =false # RIPE Network Coordination Centre RIPE-ERX-141 (NET ) University of Michigan UMICH-3 (NET ) University of Michigan College of Engineering UMICH-10 (NET )

AS Number Trivia AS number is a 16-bit quantity – So, 65,536 unique AS numbers Some are reserved (e.g., for private AS numbers) – So, only 64,510 are available for public use Managed by Internet Assigned Numbers Authority – Gives blocks of 1024 to Regional Internet Registries – IANA has allocated 39,934 AS numbers to RIRs (Jan’06) RIRs assign AS numbers to institutions – RIRs have assigned 34,827 (Jan’06) – Only 21,191 are visible in interdomain routing (Jan’06) Recently started assigning 32-bit AS #s (2007) 8

Growth of AS numbers 9

Interdomain Routing AS-level topology – Destinations are IP prefixes (e.g., /8) – Nodes are Autonomous Systems (ASes) – Edges are links and business relationships Client Web server

Challenges for Interdomain Routing Scale – Prefixes: 200,000, and growing – ASes: 20,000+ visible ones, and 60K allocated – Routers: at least in the millions… Privacy – ASes don’t want to divulge internal topologies – … or their business relationships with neighbors Policy – No Internet-wide notion of a link cost metric – Need control over where you send traffic – … and who can send traffic through you 11

Path-Vector Routing 12

Shortest-Path Routing is Restrictive All traffic must travel on shortest paths All nodes need common notion of link costs Incompatible with commercial relationships 13 Regional ISP1 Regional ISP2 Regional ISP3 Cust1 Cust3 Cust2 National ISP1 National ISP2 YES NO

Link-State Routing is Problematic Topology information is flooded – High bandwidth and storage overhead – Forces nodes to divulge sensitive information Entire path computed locally per node – High processing overhead in a large network Minimizes some notion of total distance – Works only if policy is shared and uniform Typically used only inside an AS – E.g., OSPF and IS-IS 14

Distance Vector is on the Right Track Advantages – Hides details of the network topology – Nodes determine only “next hop” toward the dest Disadvantages – Minimizes some notion of total distance, which is difficult in an interdomain setting – Slow convergence due to the counting-to-infinity problem (“bad news travels slowly”) Idea: extend the notion of a distance vector – To make it easier to detect loops 15

Path-Vector Routing Extension of distance-vector routing – Support flexible routing policies – Avoid count-to-infinity problem Key idea: advertise the entire path – Distance vector: send distance metric per dest d – Path vector: send the entire path for each dest d d “d: path (2,1)” “d: path (1)” data traffic

Faster Loop Detection Node can easily detect a loop – Look for its own node identifier in the path – E.g., node 1 sees itself in the path “3, 2, 1” Node can simply discard paths with loops – E.g., node 1 simply discards the advertisement “d: path (2,1)” “d: path (1)” “d: path (3,2,1)”

Flexible Policies Each node can apply local policies – Path selection: Which path to use? – Path export: Which paths to advertise? Examples – Node 2 may prefer the path “2, 3, 1” over “2, 1” – Node 1 may not let node 3 hear the path “1, 2”

Border Gateway Protocol (BGP) 19

Border Gateway Protocol Interdomain routing protocol for the Internet – Prefix-based path-vector protocol – Policy-based routing based on AS Paths – Evolved during the past 18 years : BGP-1 [RFC 1105], replacement for EGP 1990 : BGP-2 [RFC 1163] 1991 : BGP-3 [RFC 1267] 1995 : BGP-4 [RFC 1771], support for CIDR 2006 : BGP-4 [RFC 4271], update

BGP Operations 21 Establish session on TCP port 179 Exchange all active routes Exchange incremental updates AS1 AS2 While connection is ALIVE exchange route UPDATE messages BGP session

Incremental Protocol A node learns multiple paths to destination – Stores all of the routes in a routing table – Applies policy to select a single active route – … and may advertise the route to its neighbors Incremental updates – Announcement Upon selecting a new active route, add node id to path … and (optionally) advertise to each neighbor – Withdrawal If the active route is no longer available … send a withdrawal message to the neighbors 22

Export active routes In conventional path vector routing, a node has one ranking function, which reflects its routing policy 23

BGP Route Destination prefix (e.g., /16) Route attributes, including – AS path (e.g., “ ”) – Next-hop IP address (e.g., ) 24 AS 88 Princeton /16 AS path = 88 Next Hop = AS 7018 AT&T AS 237 Merit /16 AS path = Next Hop =

ASPATH Attribute 25 AS /16 AS Path = 88 AS 1239 Sprint AS 1755 Ebone AT&T AS 3549 Global Crossing /16 AS Path = /16 AS Path = AS /16 Princeton Prefix Originated AS RIPE NCC RIS project AS 1129 Global Access /16 AS Path = /16 AS Path = /16 AS Path = /16 AS Path =

BGP Path Selection Simplest case – Shortest AS path – Arbitrary tie break Example – Three-hop AS path preferred over a five-hop AS path – AS prefers path through Global Crossing But, BGP is not limited to shortest-path routing – Policy-based routing /16 AS Path = AS /16 AS Path = AS 3549 Global Crossing AS RIPE NCC RIS project Global Access

AS Path Length != Router Hops AS path may be longer than shortest AS path Router path may be longer than shortest path 27 2 AS hops, 8 router hops s d 3 AS hops, 7 router hops

BGP Convergence 28

Causes of BGP Routing Changes Topology changes – Equipment going up or down – Deployment of new routers or sessions BGP session failures – Due to equipment failures, maintenance, etc. – Or, due to congestion on the physical path Changes in routing policy – Changes in preferences in the routes – Changes in whether the route is exported Persistent protocol oscillation – Conflicts between policies in different ASes 29

BGP Session Failure BGP runs over TCP – BGP only sends updates when changes occur – TCP doesn’t detect lost connectivity on its own Detecting a failure – Keep-alive: 60 seconds – Hold timer: 180 seconds 30 AS1 AS2 Reacting to a failure – Discard all routes learned from the neighbor – Send new updates for any routes that change – Overhead increases with # of routes Why many tier-1 ASes filter prefixes < /24

Routing Change: Before and After (1,0) (2,0) (3,1,0) (2,0) (1,2,0) (3,2,0)

Routing Change: Path Exploration AS 1 – Delete the route (1,0) – Switch to next route (1,2,0) – Send route (1,2,0) to AS 3 AS 3 – Sees (1,2,0) replace (1,0) – Compares to route (2,0) – Switches to using AS (2,0) (1,2,0) (3,2,0)

Routing Change: Path Exploration Initial situation – Destination 0 is alive – All ASes use direct path When destination dies – All ASes lose direct path – All switch to longer paths – Eventually withdrawn E.g., AS 2 – (2,0)  (2,1,0) – (2,1,0)  (2,3,0) – (2,3,0)  (2,1,3,0) – (2,1,3,0)  null (1,0) (1,2,0) (1,3,0) (2,0) (2,1,0) (2,3,0) (2,1,3,0) (3,0) (3,1,0) (3,2,0)

BGP Converges Slowly Path vector avoids count-to-infinity – But, ASes still must explore many alternate paths – … to find the highest-ranked path that is still available Fortunately, in practice – Most popular destinations have very stable BGP routes – And most instability lies in a few unpopular destinations Still, lower BGP convergence delay is a goal – Can be tens of seconds to tens of minutes – High for important interactive applications – … or even conventional application, like Web browsing 34

35 BGP Not Guaranteed to Converge Example known as a “dispute wheel” (3 d) is available (2 d) is available (3 d) is not available (1 d) is available (2 d) is not available (1 d) is not available

Conclusions BGP is solving a hard problem – Routing protocol operating at a global scale – With tens of thousands of independent networks – That each have their own policy goals – And all want fast convergence Key features of BGP – Prefix-based path-vector protocol – Incremental updates (announcements and withdrawals) Next lecture: Tricks for setting policy! 36