Distance Vector: Link Cost Changes. Interdomain Routing. Distance Vector: Count to Infinity Problem. Distance Vector: Poisoned Reverse

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

Chapter 4: Network Layer. TDTS06 Computer networks. Subnets. Subnets. Subnets. IP Addressing: introduction

Chapter 4: outline. Network Layer 4-1

Chapter IV: Network Layer

Chapter 4: Network Layer

Chapter 4: Network Layer. Lecture 12 Internet Routing Protocols. Chapter goals: understand principles behind network layer services:

Last time. Transitioning to IPv6. Routing. Tunneling. Gateways. Graph abstraction. Link-state routing. Distance-vector routing. Dijkstra's Algorithm

Hierarchical Routing. Our routing study thus far - idealization all routers identical network flat not true in practice

DATA COMMUNICATOIN NETWORKING

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 14, 2013

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

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

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

Chapter 4: Network Layer, partb

CSCE 463/612 Networks and Distributed Processing Spring 2018

Inter-AS routing and BGP. Network Layer 4-1

Computer Networking Introduction

CSCI Topics: Internet Programming Fall 2008

PART III. Implementing Inter-Network Relationships with BGP

CSC 4900 Computer Networks: Routing Protocols

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

CS 457 Networking and the Internet. Shortest-Path Problem. Dijkstra s Shortest-Path Algorithm 9/29/16. Fall 2016

Routing in the Internet

COMP 3331/9331: Computer Networks and Applications

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

Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation:

Announcements. CS 5565 Network Architecture and Protocols. Project 2B. Project 2B. Project 2B: Under the hood. Routing Algorithms

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

CS555, Spring /5/2005. April 12, 2005 No classes attend Senior Design Projects conference. Chapter 4 roadmap. Internet AS Hierarchy

BGP. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Internet rou)ng. V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst

Master Course Computer Networks IN2097

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

Routing. Jens A Andersson Communication Systems

EE 122: Intra-domain routing

Routing Unicast routing protocols

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

Introduction to BGP. BGP Basics BGP. Border Gateway Protocol. Path Vector Protocol. Path Vector Protocol INET 2000 NTW

Network layer: Overview. Network layer functions Routing IP Forwarding

COMP/ELEC 429 Introduction to Computer Networks

IP Forwarding Computer Networking. Graph Model. Routes from Node A. Lecture 11: Intra-Domain Routing

CS4700/CS5700 Fundamentals of Computer Networks

CSc 450/550 Computer Networks Internet Routing

Chapter 4 Network Layer

Introduction to Communication Networks Spring Unit 16 Global Internetworking

What is Routing? EE 122: Shortest Path Routing. Example. Internet Routing. Ion Stoica TAs: Junda Liu, DK Moon, David Zats

Lecture 19: Network Layer Routing in the Internet

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

Inter-domain Routing. Outline. Border Gateway Protocol

Network Routing. Packet Routing, Routing Algorithms, Routers, Router Architecture

IP Forwarding Computer Networking. Routes from Node A. Graph Model. Lecture 10: Intra-Domain Routing

IP Addressing & Interdomain Routing. Next Topic

Routing. Outline. Algorithms Scalability

COMP/ELEC 429/556 Introduction to Computer Networks

Internet inter-as routing: BGP

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

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

Topics for This Week

Interdomain Routing. EE122 Fall 2011 Scott Shenker

COMP211 Chapter 5 Network Layer: The Control Plane

BGP Attributes and Policy Control. BGP Attributes. Agenda. What Is an Attribute? AS-Path. AS-Path loop detection. BGP Attributes

Network Layer: Routing

CS118 Discussion 1A, Week 7. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m.

5.1 introduction 5.5 The SDN control 5.2 routing protocols plane. Control Message 5.3 intra-as routing in Protocol the Internet

More on Network Routing and Internet Protocol

Interdomain Routing. EE122 Fall 2012 Scott Shenker

Dynamics of Hot-Potato Routing in IP Networks

Internet Routing : Fundamentals of Computer Networks Bill Nace

Network layer: Overview. Network layer functions Routing IP Forwarding

Basic Idea. Routing. Example. Routing by the Network

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

Routing by the Network

Shortest Paths Algorithms and the Internet: The Distributed Bellman Ford Lecturer: Prof. Chiara Petrioli

Introduction to IP Routing. Geoff Huston

CS BGP v4. Fall 2014

CS 204: BGP. Jiasi Chen Lectures: MWF 12:10-1pm Humanities and Social Sciences

CS118 Discussion Week 7. Taqi

Network service model. Network service model. Network Layer (part 1) Virtual circuits. By the end of this lecture, you should be able to.

Top-Down Network Design, Ch. 7: Selecting Switching and Routing Protocols. Top-Down Network Design. Selecting Switching and Routing Protocols

Network Layer: Routing

Chapter 5 Network Layer: The Control Plane

BGP. Autonomous system (AS) BGP version 4

Planning for Information Network

Third Generation Routers

Routing Concepts. IPv4 Routing Forwarding Some definitions Policy options Routing Protocols

BGP. Autonomous system (AS) BGP version 4

Configuring BGP. Cisco s BGP Implementation

Inter-Domain Routing: BGP

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

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding

BGP. Autonomous system (AS) BGP version 4

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

Lecture 4. The Network Layer (cont d)

Department of Computer and IT Engineering University of Kurdistan. Computer Networks II Border Gateway protocol (BGP) By: Dr. Alireza Abdollahpouri

Internet Routing Protocols Lecture 01 & 02

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

Top-Down Network Design

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

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

Internet Routing Protocols, DHCP, and NAT

Transcription:

istance Vector: Link ost hanges 7 loop: Interdomain Routing 8 wait (until sees a link cost change to neighbor V 9 or until receives update from neighbor V) 0 if ((, V) changes by d) for alldestinations Y through V do 2 (,Y) = (,Y) + d 3 else if (update ( V, Y) received from V) (,Y) = (,V) + (V, Y); 5 if (there is a new minimum for destination Y) 6 send (, Y) to all neighbors 7 forever 50 EES 89 omputer etworks http://www.eecs.umich.edu/~zmao/eecs89 Z. Morley Mao Tuesday Sept 2, 200 ode ode 5 5 2 2 good news travels fast cknowledgement: Some slides adapted from Kurose&Ross and Katz&Stoica Link cost changes here time lgorithm terminates 2 istance Vector: ount to Infinity Problem istance Vector: Poisoned Reverse 7 loop: ode ode 5 8 wait (until sees a link cost change to neighbor V 9 or until receives update from neighbor V) 0 if ((, V) changes by d) for alldestinations Y through V do 2 (,Y) = (,Y) + d ; 3 else if (update ( V, Y) received from V) (,Y) = (,V) + (V, Y); 5 if (there is a new minimum for destination Y) 6 send (, Y) to all neighbors 7 forever 6 5 6 7 60 50 time Link cost changes here; recall from slide 2 that also maintains shortest distance to through, which is 6. Thus (, ) becomes 6! 8 2 bad news travels slowly 3 If routes through to get to : ode ode 5 - tells its ( s) distance to is infinite (so won t route to via ) - Will this completely solve count to infinity problem? 60 5 60 50 Link cost changes here; updates (, ) = 60 as has advertised (, ) = 8 5 50 60 50 5 50 time lgorithm terminates Link State vs. istance Vector re We one? Per-node message complexity LS: O(e) messages - e: number of edges V: O(d) messages, many times - d is node s degree omplexity/onvergence LS: O(n 2 ) computation V: convergence time varies - may be routing loops - count-to-infinity problem Robustness: what happens if router malfunctions? LS: - node can advertise incorrect link cost - each node computes only its own table V: - node can advertise incorrect path cost - each node s table used by others; error propagate through network We now know how to route scalably What more is there to do? 5 6

Issues We Haven t ddressed Scaling Scaling - ddressing - Router table size Structure - utonomy - Policy Every router must be able to forward based on *any* destination IP address - Given address, it needs to know next hop (table) aive: Have an entry for each address - There would be 0^8 entries! etter: Have an entry for a range of addresses - ut can t do this if addresses are assigned randomly! ddresses allocation is a big deal 7 8 etwork Structure utonomous Systems (S) Internet is not a single network! Stub Large ISP Large ISP The Internet is a collection of networks, each controlled by different administrations ial-up ISP Small ISP ccess etwork n autonomous system (S) is a network under a single administrative control Stub Stub The Internet contains a large number of diverse networks 9 0 Implications Intradomain nd Interdomain Ss want to choose own local routing algorithm - S takes care of getting packets to/from their own hosts - Interdomain routing and Intradomain routing 2 GP 6 5 7 Intraomain 8 RIP Ss want to choose own nonlocal routing policy - Interdomain routing must accommodate this - GP is the current interdomain routing protocol 3 2 Intraomain 3 IGRP 6 3 0 OSPF Intraomain 3 2 2 2

Interconnection IP unifies network technologies - allows any network to communicate with another GP unifies network organizations - ties them into a global Internet OSPF (Open Shortest Path First) open : publicly available Uses Link State algorithm - LS packet dissemination - Topology map at each node - Route computation using ijkstra s algorithm OSPF advertisement carries one entry per neighbor router dvertisements disseminated to entires (via flooding) - arried in OSPF messages directly over IP (rather than TP or UP 3 OSPF advanced features (not in RIP) Hierarchical OSPF Security: all OSPF messages authenticated (to prevent malicious intrusion) Multiple same-cost paths allowed (only one path in RIP) For each link, multiple cost metrics for different TOS (e.g., satellite link cost set low for best effort; high for real time) Integrated uni- and multicast support: - Multicast OSPF (MOSPF) uses same topology data base as OSPF Hierarchical OSPF in large domains. 5 6 Hierarchical OSPF Outline Two-level hierarchy:local area, backbone. - Link-state advertisements only in area - each nodes has detailed area topology; only know direction (shortest path) to nets in other areas. rea border routers: summarize distances to nets in own area, advertise to other rea order routers. ackbone routers: run OSPF routing limited to backbone. oundary routers: connect to other S s. ddressing GP 7 8 3

ssigning ddresses (Ideally) Original ddressing Scheme Host: gets IP address from its organization or ISP Organization: gets IP address block from ISP ISP: gets address block from routing registry: - RI: merican Registry for Internet umbers - RIPE: Reseaux IP Europeens - PI: sia Pacific etwork Information enter - Whois h whois.arin.net <IP> Each S is assigned a 6-bit number (65536 total) - urrently 0,000 S s in use - Most stub, so don t really need own number 9 lass-based addressing schemes: - 32 bits divided into 2 parts: 0 8 - lass 0 network - lass - lass 0 0 0 0 network network host 6 host Original Vision: Route on network number 2 host 26 nets ~6M hosts ~6K nets ~65K hosts ~2M nets 25 hosts ll nodes with same net # are directly connected 20 lassless Interdomain Routing (IR) #: ddress Space Exhaustion Introduced to solve two problems: exhaustion of IP address space size and growth rate of routing table Example: an organization needs 500 addresses. - single class address not enough (25 hosts). - Instead a class address is allocated. (~65K hosts) - That s overkill, a huge waste! IR: networks assigned on arbitrary bit boundaries. - Requires explicit masks to be passed in routing protocols - Masks: identify the network portion of the address IR solution for example above: organization is allocated a single /23 address (equivalent of 2 class s). 2 22 IR ddressing More Formally Suppose fifty computers in a network are assigned IP addresses 28.23.9.0-28.23.9.9 - They share the prefix 28.23.9 Range: 0 0000 000000 00000000 to 0 0000 000000 00000 - How to write 0 0000 000000 00X? onvention: 28.23.9.0/26 - There are 32-26=6 bits for the 50 computers - 2 6 = 6 addresses Specify a range of addresses by a prefix: X/Y - The common prefix is the first Y bits of X. - X: The first address in the range has prefix X - Y: 2 32-Y addresses in the range Example 28.5.0/23 - ommon prefix is 23 bits: - 0000000 000000 00000 - umber of addresses: 2 9 = 52 Prefix aggregation - ombine two address ranges - 28.5.0/2 and 28.5./2 gives 28.5.0/23 Routers match to longest prefix 23 2

Problem #2: Routing Table Size Without IR: 232.7.0.0 232.7..0 232.7.2.0.. 232.7.255.0 service provider 232.7.0.0 232.7..0 232.7.2.0.. 232.7.255.0 Global internet order Gateway Protocol With IR: 232.7.0.0 232.7..0 232.7.2.0.. 232.7.255.0 service provider 232.7.0.0/6 Global internet ignore the details pay attention to the why 25 26 Internet inter-s routing: GP Who speaks GP? GP (order Gateway Protocol): the de facto standard S2 GP provides each S a means to:. Obtain subnet reachability information from neighboring Ss. 2. Propagate the reachability information to all routers internal to the S. 3. etermine good routes to subnets based on reachability information and policy. llows a subnet to advertise its existence to rest of the Internet: I am here S GP R2 R3 R R border router internal router Two types of routers order router (Edge), Internal router (ore) 27 28 Purpose of GP I-GP and E-GP you can reach net via me S2 I-GP IGP: Interior Gateway Protocol. Example: OSPF S traffic to R GP R2 R3 S R2 E-GP IGP S2 R3 announce table at R: R border router dest next hop R2 internal router Share connectivity information across Ses R R border router internal router R S3 R5 29 30 5

Issues hoice of Routing lgorithm What basic routing algorithm should GP use? How are the routes advertised? How are routing policies implemented? - policy routing: not always shortest path Peering, transit, and reachability onstraints: - scaling - autonomy (policy and privacy) Link-state? - requires sharing of complete network informatin - information exchanges doesn t scale - can t express policy istance Vector? - scales and retains privacy - can t implement policy - can t avoid loops if shortest paths not taken 3 32 Path Vector Protocol GP Routing Table istance vector algorithm with extra information - For each route, store the complete path (Ss) - o extra computation, just extra storage dvantages: - can make policy choices based on set of Ss in path - can easily avoid loops ner-routes>show ip bgp GP table version is 62879, local router I is.2.3.65 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP,? - incomplete etwork ext Hop Metric LocPrf Weight Path i3.0.0.0.0.6.2 000 50 0 70 * 80 i * i.0.0.0.2..35 0 00 0 i * i2.3.2.0/23 92.205.32.53 0 50 0 708 26 668? * e28.32.0.0/6 92.205.32.53 0 50 0 708 26 668 25 e Every route advertisement contains the entire S path an implement policies for choosing best route an detect loops at an S level 33 3 dvertising Routes GP routing policy One router can participate in many GP sessions. Initially node advertises LL routes it wants neighbor to know (could be > 50K routes) Ongoing only inform neighbor of changes W X Y legend: provider network customer network: S2 S GP Sessions S3 Figure.5 -GPnew: a simple GP scenario,, are provider networks X,W,Y are customer (of provider networks) X is dual-homed: attached to two networks - X does not want to route from via X to -.. so X will not advertise to a route to 35 36 6

GP routing policy (2) Why different Intra - and Inter-S routing? W advertises Figure.5to -GPnew: the path a simple W GP scenario advertises to X the path W Should advertise to the path W? X Y legend: provider network customer network: - o way! gets no revenue for routing W since neither W nor are s customers - wants to force to route to w via - wants to route only to/from its customers! Policy: Inter-S: admin wants control over how its traffic routed, who routes through its net. Intra-S: single admin, so no policy decisions needed Scale: hierarchical routing saves table size, reduced update traffic Performance: Intra-S: can focus on performance Inter-S: policy may dominate over performance 37 38 asic Messages in GP Routes Have ttributes Open: - Establishes GP session (uses TP port #79) - GP uses TP otification: - Report unusual conditions Update: - Inform neighbor of new routes that become active - Inform neighbor of old routes that become inactive Keepalive: - Inform neighbor that connection is still viable When a route is advertised it is described in terms of attributes: - next hop, S-path, etc. - We will discuss: Origin, ME, Local Preference Origin: - Who originated the announcement? Where was a prefix injected into GP? - IGP, EGP or Incomplete (often used for static routes) 39 0 Multi-Exit iscriminator (ME) Local Preference When S s interconnected via 2 or more links S announcing prefix sets ME (S2 in picture) S receiving prefix uses ME to select link way to specify how close a prefix is to the link it is announced on S Link Link ME=50 ME=0 S2 Used to indicate preference among multiple paths for the same prefix anywherein the Internet. The higher the value the more preferred Exchanged between IGP peers only. Local to the S. Often used to select a specific exit point for a particular destination 0.20..0/2 S S2 S3 S GP table at S: estina tion S Path Local Pref S S3 0.20..0/2 S3 S 300 0.20..0/2 S2 S 00 2 7

hoosing est Route Routing Process Overview hoose route with highest LOL_PREF - Preference-based routing Multiple choices: select route with shortest hop-count Multiple choices for same neighboring S: choose path with min ME value hoose route based on lowest origin type - IGP < EGP < IOMPLETE mong IGP paths, choose one with lowest cost Routes received from neighbors accept, deny, set preferences Import Policy Engine hoose best route ecision process Routes used by router forward, not forward set MEs Export Policy Engine Routes sent to neighbors Finally use router I to break the tie. GP table IP routing table 3 Import and Export Policies Transit vs. ontransit S Transit traffic = traffic whose source and destination are outside the S Inbound filtering controls outbound traffic - Filters route updates received from other peers - Filtering based on IP prefixes, S_PTH, community ontransit S: does not carry transit traffic dvertise own routes only o not propagate routes learned from other S s Transit S: does carry transit traffic dvertises its own routes PLUS routes learned from other S s Outbound filtering controls inbound traffic - Forwarding a route means others may choose to reach the prefix through you - ot forwarding a route means others must use another router to reach the prefix ISP r2 S r2 r2 ISP2 ISP r2, S r2 r2, ISP2 5 6 S Relationships and Export Rules ustomer-transit Problem S has customers, providers and peers Relationships between S pairs: - ustomer-provider - Peer-to-peer Type of relationship influences policies Exporting to provider: S exports its routes & its customer s routes, but not routes learned from other providers or peers Exporting to peer: (same as above) Exporting to customer: S exports its routes plus routes learned from its providers, peers and other customers r2, Large ISP r2 Small ISP r2, Large ISP ssume that the small ISP is a customer of two large ISPs If customer ISP does not obey export rules forwards advertisements from one large ISP to another arries huge volume of transit traffic between two large ISPs 7 8 8

Is Reachability Guaranteed? Peering & Transit In normal routing, if graph is connected then reachability is assured With policy routing, not always Peering - The business relationship whereby ISPs reciprocally provide to each other connectivity to each others transit customers Transit (customer) - The business relationship whereby one ISP provides (usually sells) access to all destinations in it s routing table 9 50 Peering Transit Figure from William. orton, Internet Service Providers and Peering Figure from William. orton, Internet Service Providers and Peering West and East Peer with USet but they can t reach each other 5 52 Reachability? GP and Performance epends on series of economic relationships ot a technical solution, but an economic one GP designed for policy not performance - Hot Potato routing common but suboptimal - 20% of internet paths inflated by at least 5 router hops Susceptible to router misconfiguration - lackholes: announce a route you cannot reach Incompatible policies - Solutions to limit the set of allowable policies 53 5 9

Research side What is one of the most important Internet design principles? In what way is GP robust? - an it protect against node failures? - an it protect against spoofing? - an it protect against lying? Semantic failures versus syntactic failures - GP can check who you are, but not what you say 55 0