Internet Routing Protocols Lecture 01 & 02

Similar documents
Internet Routing Protocols Lecture 03 Inter-domain Routing

Internet Protocols Fall Lectures Inter-domain routing, mobility support, multicast routing Andreas Terzis

TELE 301 Network Management

Interdomain Routing Reading: Sections P&D 4.3.{3,4}

Routing. Jens A Andersson Communication Systems

L11 : Inter-domain Routing with BGP Lecture14 Michaelmas, 2016

Routing Unicast routing protocols

Interdomain Routing Reading: Sections K&R EE122: Intro to Communication Networks Fall 2007 (WF 4:00-5:30 in Cory 277)

PART III. Implementing Inter-Network Relationships with BGP

BGP. Autonomous system (AS) BGP version 4

Routing part 2. Electrical and Information Technology

BGP. Autonomous system (AS) BGP version 4

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

CS 268: Computer Networking. Next Lecture: Interdomain Routing

BGP. Autonomous system (AS) BGP version 4

Next Lecture: Interdomain Routing : Computer Networking. Outline. Routing Hierarchies BGP

CS 640: Introduction to Computer Networks. Intra-domain routing. Inter-domain Routing: Hierarchy. Aditya Akella

COMP/ELEC 429 Introduction to Computer Networks

CS4700/CS5700 Fundamentals of Computer Networks

Border Gateway Protocol (an introduction) Karst Koymans. Monday, March 10, 2014

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

Lecture 16: Interdomain Routing. CSE 123: Computer Networks Stefan Savage

Professor Yashar Ganjali Department of Computer Science University of Toronto.

Interdomain Routing. EE122 Fall 2011 Scott Shenker

BGP Configuration. BGP Overview. Introduction to BGP. Formats of BGP Messages. Header

Inter-Domain Routing: BGP

Internet Routing : Fundamentals of Computer Networks Bill Nace

internet technologies and standards

CSCD 433/533 Network Programming Fall Lecture 14 Global Address Space Autonomous Systems, BGP Protocol Routing

CS 268: Computer Networking

Interdomain Routing. EE122 Fall 2012 Scott Shenker

Outline Computer Networking. Inter and Intra-Domain Routing. Internet s Area Hierarchy Routing hierarchy. Internet structure

Important Lessons From Last Lecture Computer Networking. Outline. Routing Review. Routing hierarchy. Internet structure. External BGP (E-BGP)

Configuring BGP community 43 Configuring a BGP route reflector 44 Configuring a BGP confederation 44 Configuring BGP GR 45 Enabling Guard route

Interdomain Routing BGP. Benjamin Baron

Lecture 18: Border Gateway Protocol

APNIC elearning: BGP Basics. 30 September :00 PM AEST Brisbane (UTC+10) Revision: 2.0

Introduction to IP Routing. Geoff Huston

15-744: Computer Networking BGP

Routing on the Internet. Routing on the Internet. Hierarchical Routing. Computer Networks. Lecture 17: Inter-domain Routing and BGP

BGP. BGP Overview. Formats of BGP Messages. I. Header

Internet Interconnection Structure

Lecture 17: Border Gateway Protocol

Routing Between Autonomous Systems (Example: BGP4) RFC 1771

Table of Contents. BGP Configuration 1

Table of Contents 1 BGP Configuration 1-1

Protecting an EBGP peer when memory usage reaches level 2 threshold 66 Configuring a large-scale BGP network 67 Configuring BGP community 67

Internet inter-as routing: BGP

CS4450. Computer Networks: Architecture and Protocols. Lecture 15 BGP. Spring 2018 Rachit Agarwal

Inter-domain Routing. Outline. Border Gateway Protocol

An overview of how packets are routed in the Internet

Border Gateway Protocol

Exterior Gateway Protocols: EGP, BGP-4, CIDR

Configuration prerequisites 45 Configuring BGP community 45 Configuring a BGP route reflector 46 Configuring a BGP confederation 46 Configuring BGP

Interdomain routing CSCI 466: Networks Keith Vertanen Fall 2011

Introduction to BGP. ISP Workshops. Last updated 30 October 2013

Lecture 16: Border Gateway Protocol

LACNIC XIII. Using BGP for Traffic Engineering in an ISP

Master Course Computer Networks IN2097

IP Addressing & Interdomain Routing. Next Topic

BGP Attributes and Path Selection

LARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF

BGP Routing and BGP Policy. BGP Routing. Agenda. BGP Routing Information Base. L47 - BGP Routing. L47 - BGP Routing

Lecture 4: Intradomain Routing. CS 598: Advanced Internetworking Matthew Caesar February 1, 2011

BGP. Border Gateway Protocol A short introduction. Karst Koymans. Informatics Institute University of Amsterdam. (version 18.3, 2018/12/03 13:53:22)

EE 122: Inter-domain routing Border Gateway Protocol (BGP)

Ravi Chandra cisco Systems Cisco Systems Confidential

Advanced Computer Networks

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

How does a router know where to send a packet next?

BGP. Border Gateway Protocol (an introduction) Karst Koymans. Informatics Institute University of Amsterdam. (version 17.3, 2017/12/04 13:20:08)

Module 6 Implementing BGP

Connecting to a Service Provider Using External BGP

CSCI-1680 Network Layer: Inter-domain Routing Rodrigo Fonseca

CSE/EE 461 Lecture 11. Inter-domain Routing. This Lecture. Structure of the Internet. Focus How do we make routing scale?

Dynamics of Hot-Potato Routing in IP Networks

Operation Manual BGP. Table of Contents

6.829 BGP Recitation. Rob Beverly September 29, Addressing and Assignment

CSCI-1680 Network Layer: Inter-domain Routing Rodrigo Fonseca

This appendix contains supplementary Border Gateway Protocol (BGP) information and covers the following topics:

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 16, 2017

CS Networks and Distributed Systems. Lecture 8: Inter Domain Routing

CS BGP v4. Fall 2014

Inter-AS routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

Computer Networking Introduction

BGP Attributes (C) Herbert Haas 2005/03/11 1

BGP. Attributes 2005/03/11. (C) Herbert Haas

Inter-Domain Routing: BGP

BGP Attributes and Policy Control

Routing(2) Inter-domain Routing

CSCI-1680 Network Layer: Inter-domain Routing Rodrigo Fonseca

CS519: Computer Networks. Lecture 4, Part 5: Mar 1, 2004 Internet Routing:

CS 457 Networking and the Internet. The Global Internet (Then) The Global Internet (And Now) 10/4/16. Fall 2016

CS 43: Computer Networks. 24: Internet Routing November 19, 2018

Introduction. Keith Barker, CCIE #6783. YouTube - Keith6783.

CSc 450/550 Computer Networks Internet Routing

Advanced Computer Networks

! Distance vector routing! Link state routing.! Path vector routing! BGP: Border Gateway Protocol! Route aggregation

Master Course Computer Networks IN2097

BTEC Level 3 Extended Diploma

Transcription:

Internet Routing Protocols Lecture 01 & 02 Advanced Systems Topics Lent Term, 2010 Timothy G. Griffin Computer Lab Cambridge UK Internet Routing Outline Lecture 1 : Inter-domain routing architecture, the Border Gateway Protocol (BGP) Lecture 2: More BGP. Lecture 3 : BGP traffic engineering and protocol dynamics Lecture 5 : Locator/ID split to the rescue? Lecture 6 : How has the global Internet changed in the last 10 years? 1

IP is a Network Layer Protocol Application Presentation Session Transport Separate physical networks glued together into one logical network Router Application Presentation Session Transport Network Network Network DataLink 1 DataLink 1 DataLink 2 DataLink 2 Physical 1 Physical 1 Physical 2 Medium 1 Medium 2 Physical 2 3 The CL net 2

JANET JANET Design 3

JANET and the Internet 4

GARR-B 5

WorldCom (UUNet) Architecture of Dynamic Routing IGP AS 1 BGP IGP = Interior Gateway Protocol. Metric based. IGP OSPF, IS-IS, RIP, EIGRP (cisco) EGP = Exterior Gateway Protocol. Policy Based. Only one: BGP AS 2 The Routing Domain of BGP is the entire Internet 6

How many prefixes are used today? http://bgp.potaroo.net 318,415 Jan 13, 2010 How many ASNs are used today? 33,527 http://bgp.potaroo.net Jan 13, 2010 7

The connectivity of ASNs is hard to visualize The graph is huge. Transit and stub networks. How can this be displayed in a meaningful way? and protocol dynamics My favorite approach: Visualizing Internet Evolution on the Autonomous Systems Level Boitmanis, Krists and Brandes, Ulrik and Pich, Christian (2008) 1998 8

2000 2002 9

2004 2006 10

Technology of Distributed Routing Link State Topology information is flooded within the routing domain Best end-to-end paths are computed locally at each router. Best end-to-end paths determine next-hops. Based on minimizing some notion of distance Works only if policy is shared and uniform Examples: OSPF, IS-IS Vectoring Each router knows little about network topology Only best next-hops are chosen by each router for each destination network. Best end-to-end paths result from composition of all nexthop choices Does not require any notion of distance Does not require uniform policies at all routers Examples: RIP, BGP The Gang of Four IGP Link State OSPF IS-IS Vectoring RIP EGP BGP 11

Happy Packets: The Internet Does Not Exist Only to Populated Routing Tables RIP Process BGP Process RIP Routing tables BGP Routing tables BGP OSPF Process OSPF Routing tables RIP Domain OSPF Domain Forwarding Table Manager Forwarding Table 23 Before We Go Any Further IP ROUTING PROTOCOLS DO NOT DYNAMICALLY ROUTE AROUND NETWORK CONGESTION IP traffic can be very bursty Dynamic adjustments in routing typically operate more slowly than fluctuations in traffic load Dynamically adapting routing to account for traffic load can lead to wild, unstable oscillations of routing system 12

Autonomous Routing Domains A collection of physical networks glued together using IP, that have a unified administrative routing policy. Campus networks Corporate networks ISP Internal networks Autonomous Systems (ASes) An autonomous system is an autonomous routing domain that has been assigned an Autonomous System Number (ASN). the administration of an AS appears to other ASes to have a single coherent interior routing plan and presents a consistent picture of what networks are reachable through it. RFC 1930: Guidelines for creation, selection, and registration of an Autonomous System 13

AS Numbers (ASNs) ASNs are 16 bit values (soon to be 32 bits) 64512 through 65535 are private Currently nearly 30,000 in use. JANET: 786 MIT: 3 Harvard: 11 UC San Diego: 7377 AT&T: 7018, 6341, 5074, UUNET: 701, 702, 284, 12199, Sprint: 1239, 1240, 6211, 6242, ASNs represent units of routing policy Policy-Based vs. Distance-Based Routing? Minimizing hop count can violate commercial relationships that constrain interdomain routing. Cust1 ISP1 Host 1 YES NO ISP3 ISP2 Host 2 Cust3 Cust2 28 14

Why not minimize AS hop count? National ISP1 National ISP2 YES NO Regional ISP3 Regional ISP2 Regional ISP1 Cust3 Cust2 Cust1 29 Customers and Providers provider provider customer IP traffic customer Customer pays provider for access to the Internet 15

The Peering Relationship peer provider traffic allowed peer customer traffic NOT allowed Peers provide transit between their respective customers Peers do not provide transit between peers Peers (often) do not exchange $$$ Peering Provides Shortcuts Peering also allows connectivity between the customers of Tier 1 providers. peer provider peer customer 16

Peering Wars Peer Reduces upstream transit costs Can increase end-to-end performance May be the only way to connect your customers to some part of the Internet ( Tier 1 ) Don t Peer You would rather have customers Peers are usually your competition Peering relationships may require periodic renegotiation Peering struggles are by far the most contentious issues in the ISP world! Peering agreements are often confidential. BGP-4 BGP = Border Gateway Protocol Is a Policy-Based routing protocol Is the de facto EGP of today s global Internet Relatively simple protocol, but configuration is complex and the entire world can see, and be impacted by, your mistakes. 1989 : BGP-1 [RFC 1105] Replacement for EGP (1984, RFC 904) 1990 : BGP-2 [RFC 1163] 1991 : BGP-3 [RFC 1267] 1995 : BGP-4 [RFC 1771] Support for Classless Interdomain Routing (CIDR) 2006 : BGP-4 [RFC 4271] 34 17

BGP Operations (Simplified) Establish session on TCP port 179 AS1 Exchange all active routes BGP session AS2 Exchange incremental updates While connection is ALIVE exchange route UPDATE messages 35 Two Types of BGP Sessions AS1 External Neighbor (EBGP) in a different Autonomous Systems Internal Neighbor (IBGP) in the same Autonomous System EBGP IBGP is routed (using IGP!) IBGP AS2 36 18

BGP Next Hop Attribute 12.125.133.90 AS 6431 AT&T Research AS 7018 AT&T 12.127.0.121 AS 12654 RIPE NCC RIS project 135.207.0.0/16 Next Hop = 12.125.133.90 135.207.0.0/16 Next Hop = 12.127.0.121 Every time a route announcement crosses an AS boundary, the Next Hop attribute is changed to the IP address of the border router that announced the route. 37 Join EGP with IGP For Connectivity 135.207.0.0/16 Next Hop = 192.0.2.1 135.207.0.0/16 10.10.10.10 Forwarding Table destination next hop 192.0.2.0/30 10.10.10.10 + EGP destination next hop 135.207.0.0/16 192.0.2.1 AS 1 AS 2 192.0.2.1 192.0.2.0/30 Forwarding Table destination next hop 135.207.0.0/16 10.10.10.10 192.0.2.0/30 10.10.10.10 19

Four Types of BGP Messages Open : Establish a peering session. Keep Alive : Handshake at regular intervals. Notification : Shuts down a peering session. Update : Announcing new routes or withdrawing previously announced routes. announcement = prefix + attributes values 39 BGP Attributes Value Code Reference ----- --------------------------------- --------- 1 ORIGIN [RFC1771] 2 AS_PATH [RFC1771] 3 NEXT_HOP [RFC1771] 4 MULTI_EXIT_DISC [RFC1771] 5 LOCAL_PREF [RFC1771] 6 ATOMIC_AGGREGATE [RFC1771] 7 AGGREGATOR [RFC1771] 8 COMMUNITY [RFC1997] 9 ORIGINATOR_ID [RFC2796] 10 CLUSTER_LIST [RFC2796] 11 DPA [Chen] 12 ADVERTISER [RFC1863] 13 RCID_PATH / CLUSTER_ID [RFC1863] 14 MP_REACH_NLRI [RFC2283] 15 MP_UNREACH_NLRI [RFC2283] 16 EXTENDED COMMUNITIES [Rosen]... 255 reserved for development From IANA: http://www.iana.org/assignments/bgp-parameters Most important attributes Not all attributes need to be present in every announcement 20

BGP Route Processing Open ended programming. Constrained only by vendor configuration language Receive BGP Updates Apply Policy = filter routes & tweak attributes Based on Attribute Values Best Routes Apply Policy = filter routes & tweak attributes Transmit BGP Updates Apply Import Policies Best Route Selection Best Route Table Apply Export Policies Install forwarding Entries for best Routes. IP Forwarding Table 41 Route Selection Summary Highest Local Preference Enforce relationships Shortest ASPATH Lowest MED i-bgp < e-bgp Lowest IGP cost to BGP egress Lowest router ID traffic engineering Throw up hands and break ties 21

ASPATH Attribute 135.207.0.0/16 AS Path = 1755 1239 7018 6341 AS 1129 Global Access 135.207.0.0/16 AS Path = 1239 7018 6341 AS 1239 Sprint AS 1755 Ebone 135.207.0.0/16 AS Path = 7018 6341 135.207.0.0/16 AS Path = 1129 1755 1239 7018 6341 AS 12654 RIPE NCC RIS project 135.207.0.0/16 AS Path = 6341 AS 6341 AT&T Research 135.207.0.0/16 Prefix Originated AS7018 AT&T 135.207.0.0/16 AS Path = 7018 6341 135.207.0.0/16 AS Path = 3549 7018 6341 AS 3549 Global Crossing 43 Interdomain Loop Prevention AS 7018 BGP at AS YYY will never accept a route with ASPATH containing YYY. Don t Accept! 12.22.0.0/16 ASPATH = 1 333 7018 877 AS 1 44 22

BGP Routing Tables show ip bgp BGP table version is 0, local router ID is 203.119.0.116 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, R Removed Origin codes: i - IGP, e - EGP,? - incomplete Thanks to Geoff Huston. http://bgp.potaroo.net on Feb 1, 2008 Network Next Hop Metric LocPrf Weight Path *> 0.0.0.0 193.0.4.28 0 12654 34225 1299 i * 3.0.0.0 193.0.4.28 0 12654 7018 701 703 80 i *> 203.50.0.33 0 65056 4637 703 80 i * 202.12.29.79 0 4608 1221 4637 703 80 i * 4.0.0.0 193.0.4.28 0 12654 7018 3356 i *> 203.50.0.33 0 65056 4637 3356 i * 202.12.29.79 0 4608 1221 4637 3356 i * 4.0.0.0/9 193.0.4.28 0 12654 7018 3356 i *> 203.50.0.33 0 65056 4637 3356 i * 202.12.29.79 0 4608 1221 4637 3356 i * 4.23.112.0/24 193.0.4.28 0 12654 7018 174 21889 i *> 203.50.0.33 0 65056 4637 174 21889 i * 202.12.29.79 0 4608 1221 4637 174 21889 i * 4.23.113.0/24 193.0.4.28 0 12654 7018 174 21889 i *> 203.50.0.33 0 65056 4637 174 21889 i * 202.12.29.79 0 4608 1221 4637 174 21889 i * 4.23.114.0/24 193.0.4.28 0 12654 7018 174 21889 i *> 203.50.0.33 0 65056 4637 174 21889 i * 202.12.29.79 0 4608 1221 4637 174 21889 i * 4.36.116.0/23 193.0.4.28 0 12654 7018 174 21889 i *> 203.50.0.33 0 65056 4637 174 21889 i * 202.12.29.79 0 4608 1221 4637 174 21889 i * 4.36.116.0/24 193.0.4.28 0 12654 7018 174 21889 i *> 203.50.0.33 0 65056 4637 174 21889 i * 202.12.29.79 0 4608 1221 4637 174 21889 i * 4.36.117.0/24 193.0.4.28 0 12654 7018 174 21889 i *> 203.50.0.33 0 65056 4637 174 21889 i * 202.12.29.79 0 4608 1221 4637 174 21889 i * 4.36.118.0/24 193.0.4.28 0 12654 7018 174 21889 i *> 203.50.0.33 0 65056 4637 174 21889 i * 202.12.29.79 0 4608 1221 4637 174 21889 i *> 4.78.22.0/23 193.0.4.28 0 12654 3257 19151 13909 13909 13909 13909 13909 13909 13909 13909 13909 13909 13909 i * 203.50.0.33 0 65056 4637 1299 1239 19151 13909 13909 13909 13909 13909 13909 13909 13909 13909 13909 * 202.12.29.79 0 4608 1221 4637 1299 1239 19151 13909 13909 13909 13909 13909 13909 13909 13909 13909 13 *> 4.78.56.0/23 193.0.4.28 0 12654 3257 19151 13909 13909 13909 13909 13909 13909 13909 13909 13909 13909 13909 i * 203.50.0.33 0 65056 4637 1299 1239 19151 13909 13909 13909 13909 13909 13909 13909 13909 13909 13909 * 202.12.29.79 0 4608 1221 4637 1299 1239 19151 13909 13909 13909 13909 13909 13909 13909 13909 13909 13 * 4.79.181.0/24 193.0.4.28 0 12654 3741 10310 14780 i *> 203.50.0.33 0 65056 4637 10310 14780 i * 202.12.29.79 0 4608 1221 4637 10310 14780 i AS Graphs Can Be Fun The subgraph showing all ASes that have more than 100 neighbors in full graph of 11,158 nodes. July 6, 2001. Point of view: AT&T route-server 23

AS Graphs Depend on Point of View peer provider peer customer 1 3 2 4 5 6 1 3 2 1 3 2 1 3 2 4 5 6 4 5 6 4 5 6 AS Graphs Do Not Show Topology! BGP was designed to throw away information! The AS graph may look like this. Reality may be closer to this 24