ITTC Introduction to Communication Networks The University of Kansas EECS 563 Network Routing

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

CSc 450/550 Computer Networks Internet Routing

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

Chapter 4: Network Layer, partb

Chapter 4: Network Layer

DATA COMMUNICATOIN NETWORKING

Internet Routing : Fundamentals of Computer Networks Bill Nace

Computer Networking Introduction

Chapter IV: Network Layer

Network layer: Overview. Network layer functions Routing IP Forwarding

CSCI Topics: Internet Programming Fall 2008

Chapter 4: outline. Network Layer 4-1

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

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

Master Course Computer Networks IN2097

Network Layer: Routing

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

CSCE 463/612 Networks and Distributed Processing Spring 2018

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

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

CSC 4900 Computer Networks: Routing Protocols

Inter-Domain Routing: BGP

Unit 3: Dynamic Routing

Routing in the Internet

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

CS321: Computer Networks Unicast Routing

Lecture 4. The Network Layer (cont d)

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

Lecture 19: Network Layer Routing in the Internet

Why dynamic route? (1)

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

DATA COMMUNICATOIN NETWORKING

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

COMP211 Chapter 5 Network Layer: The Control Plane

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

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

Internet inter-as routing: BGP

Routing, Routing Algorithms & Protocols

Routing Protocols. Autonomous System (AS)

Routing. Jens A Andersson Communication Systems

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

Chapter 4 Network Layer

Routing Unicast routing protocols

Internet Routing Protocols Tuba Saltürk

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

Chapter 7: Routing Dynamically. Routing & Switching

CSCD 330 Network Programming Spring 2018

Network Layer: Routing

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

CSCD 330 Network Programming Spring 2017

Routing(2) Inter-domain Routing

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

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

Lecture 9. Network Layer (cont d) Network Layer 1-1

Introduction to Routing

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

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

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

Routing Protocols. The routers in an internet are responsible for receiving and. forwarding IP datagrams through the interconnected set of

Routing(2) Inter-domain Routing

Planning for Information Network

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

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

Network layer: Overview. Network layer functions Routing IP Forwarding

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

Symbols. Numerics I N D E X

Interplay Between Routing, Forwarding

Chapter 4: Advanced Internetworking. Networking CS 3470, Section 1

CSCD 433/533 Advanced Networks Spring 2016

Routing(2) Inter-domain Routing

Basic Idea. Routing. Example. Routing by the Network

Dynamic Routing. The Protocols

Routing by the Network

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

CHAPTER 4: ROUTING DYNAMIC. Routing & Switching

CS118 Discussion Week 7. Taqi

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

EECS 122, Lecture 16. Link Costs and Metrics. Traffic-Sensitive Metrics. Traffic-Sensitive Metrics. Static Cost Metrics.

ETSF05/ETSF10 Internet Protocols Routing on the Internet

Overview. Information About Layer 3 Unicast Routing. Send document comments to CHAPTER

Routing Protocols. Technology Description BGP CHAPTER

PART III. Implementing Inter-Network Relationships with BGP

Routing. Advanced Computer Networks: Routing 1

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

CS BGP v4. Fall 2014

HY 335 Φροντιστήριο 8 ο

Internetworking: Global Internet and MPLS. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Open Shortest Path First (OSPF)

Course Routing Classification Properties Routing Protocols 1/39

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

ROUTING PROTOCOLS. Mario Baldi Routing - 1. see page 2

Interdomain routing CSCI 466: Networks Keith Vertanen Fall 2011

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

Internet Routing Protocols Lecture 01 & 02

Network Protocols. Routing. TDC375 Winter 2002 John Kristoff - DePaul University 1

COMP/ELEC 429 Introduction to Computer Networks

CSC 4900 Computer Networks: Routing Algorithms

ETSF10 Internet Protocols Routing on the Internet

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

Course on Computer Communication and Networks. Lecture 7 Network Layer, Chapter 4 (6/e) - Part B (7/e Ch5)

Transcription:

Introduction to Communication Networks The University of Kansas EECS 563 Network Routing James P.G. Sterbenz Department of Electrical Engineering & Computer Science Information Technology & Telecommunications Research Center The University of Kansas jpgs@eecs.ku.edu http://www.ittc.ku.edu/~jpgs/courses/intronets 26 October 2017 rev. 17.1 2004 2017 James P.G. Sterbenz

Network Routing Functions and Services NR.1 Functions and services NR.2 Routing algorithms NR.3 PSTN routing architecture and algorithms NR.4 Internet routing architecture and protocols 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-2

L8 L7 L5 L4 L3 L2.5 L2 L1.5 L1 Network Layer Control Hybrid Layer/Plane Cube data plane management plane control plane social application session transport network virtual link link MAC physical Layer 3: routing in control plane 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-3

Network Layer Service and Interfaces Network layer 3 is above link layer 2 addressing : network layer identifier for end systems (hosts) forwarding : transfers packets hop-by-hop using link layer services network layer responsible for determining which next hop routing : determination of path to forward packets signalling : messages to control network layer behaviour traffic management : management of traffic and congestion Network layer service to transport layer (L4) deliver TPDUs to destination transport entity 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-4

Network Layer Forwarding vs. Routing Forwarding transfers packets hop-by-hop each switch (router) makes decision on which link to send forwarding table (generally) used to make decision forwarding is per packet decision [analogy: determining which exits to take on a drive] Routing determines the path to take routing algorithm independent of forwarding forwarding table entries populated by routing routing is (generally) not done per packet [analogy: planning trip from source to destination] Forwarding and routing are very different 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-5

Switches Functions: Routing and Signalling Routing asynchronous w.r.t. forwarding not part of critical path may use topology and link state uses signalling to coordinate among nodes routing and signalling topology DB transfer control filter classify input processing link decaps signalling forwarding table data manipulation routing fabric control switch fabric network management traffic management cong control link sched output processing link encaps 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-6

Network Routing Routing Algorithms NR.1 Functions and services NR.2 Routing algorithms NR.3 PSTN routing architecture and algorithms NR.4 Internet routing architecture and protocols 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-7

Routing Network Model 1 Network is modeled as a graph N = (V,E) nodes are vertices v i V links are edges e ij = (v i, v j ) E v i and v j are neighbours edge weights are costs Example: V = {u, v, w, x, y, z} E = {(u,v),(u,w),(u,x),(v,x),(v,w),(x,w),(x,y),(w,y),(w,z),(y,z)} u 1 5 v 2 3 x 2 1 3 w y 1 5 2 z 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-8

Routing Network Model 2 Each link (edge) has a cost c(v i, v j ) cost is metric of interest, e.g. hop count, latency, capacity assume c (v i, v j ) = c (v j, v i ) graph is not directed (v i, v j ) E, c (v j, v i ) = Sequence of edges (links) is path between nodes path(v j, v i+n ) = (v i, v i+1, v j+n ) Cost of a path is sum of link costs c(path(v j, v i+n )) = c(v i, v i+1 ) Routing algorithm goal (ideal): find least cost path shortest path if all link costs equal (measures hops) 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-9

Routing Algorithms Classification by State State (topology and link costs) Global complete* state located in each switch * this will be relaxed for hierarchical routing example: link state routing 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-10

Routing Algorithms Classification by State State (topology and link costs) Global complete* state located in each switch * this will be relaxed for hierarchical routing example: link state routing Decentralised neighbourhood state only in each switch iterative process of route computation with neighbors example: distance vector routing 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-11

Routing Algorithms Classification by Dynamicity Dynamicity: response to topology and traffic changes Static routes do not change (directly) changed by human operators or network management Dynamic (adaptive): routes change in response to topology and traffic route computation may occur periodically in direct response to changes in topology and traffic 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-12

Load-sensitivity Routing Algorithms Classification by Load-Sensitivity Load-sensitive: routing responds to loads on links load contributes to link weight paths chosen along uncongested links Load-insensitive: routing doesn t respond to link load 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-13

Stability Routing Algorithms Characteristics and Goals routes to do not oscillate between paths harder to maintain with capacity-based dynamic routing Low complexity and overhead processing load in switches signalling message overhead on links Optimality optimal paths for communicating nodes optimal use of network resources Very difficult to achieve all of these! 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-14

Static Routing Overview Network engineering determines routes frequently based on traffic matrix Forwarding tables are provisioned by an operator When does this make sense? 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-15

Static Routing Overview Network engineering determines routes frequently based on traffic matrix Forwarding tables are provisioned by an operator Logical choice for: small networks networks with predictable stable traffic 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-16

Source Routing Overview Node constructs entire path of packet end system or edge node source route carried in packet headers routers simply pop source route stack to forward 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-17

Source Routing Issues Simple in theory but some entity has to create the source route edge needs significant knowledge of topology Rarely used almost never used IP option some specialised problem domains e.g. MANET DSR Lecture MW Proposed for future Internet, e.g. PoMo 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-18

Dynamic Routing Overview Routes change in response to topology and traffic Classes of dynamic routing algorithms link state distance vector 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-19

Link State Routing Overview Use link state to compute optimal paths Steps: neighbor discovery determine cost of each link e.g. measure delay, load build local link state (for distribution) flood link state compute routes (e.g. Dijkstra algorithm) 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-20

Link State Routing Dijkstra Algorithm Network topology and link costs known to all nodes accomplished via link state flooding (broadcast) all nodes have consistent information Computes least cost paths from one node (source) to all other nodes gives forwarding table for that node Iterative after k iterations, know least cost path to k destinations Details and example in online notes 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-21

Link State Routing Oscillations Oscillations between paths link cost = load carried on link in a given direction asymmetric: c(x,y) not necessarily equal to c(y,x) Traffic on a given flow changes link state and may cause it to switch to the other path and back-and-forth again todo: figure 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-32

Distance Vector Routing Overview In a fully distributed manner nodes: periodically send distance vector estimates to neighbours update their own estimate when received from neighbours algorithm converges and is self terminating Bellman-Ford equation: define d x (y) as cost of least-cost path from x to y d x (y) = min v {c(x,v) + d v (y)} over all neighbours of x Details and example in online notes you do not need to know the details of BF and DV [Kurose Ross p.358] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-33

Distance Vector Routing Algorithm Iterative and asynchronous each local iteration caused by: local link cost change distance vector update message from neighbour Distributed: each node notifies neighbors only when its vector changes neighbours then notify their neighbours if necessary Self-terminating no messages when no changes need to be propagated 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-41

Link cost changes Distance Vector Routing Link Cost Changes node detects local link cost change updates routing information recalculates distance vector if distance vector changes notify neighbours Decrease in cost converges quickly good news travels fast Increase in cost converges slowly bad news travels slowly count to infinity problem routing loops 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-42

Routing Algorithms Comparison Link state vs. distance vector Comparison of characteristics Characteristic Link State Distance Vector Message complexity?? State maintenance?? Convergence time Robustness to errors Scalability 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-43

Routing Algorithms Comparison Link state vs. distance vector Comparison of characteristics Characteristic Link State Distance Vector Message complexity flooding link state neighbour exchange State maintenance full (sub-)network neighbours Convergence time?? Robustness to errors Scalability 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-44

Routing Algorithms Comparison Link state vs. distance vector Comparison of characteristics Characteristic Link State Distance Vector Message complexity flooding link state neighbour exchange State maintenance full (sub-)network neighbours Convergence time fast slow Robustness to errors?? Scalability 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-45

Routing Algorithms Comparison Link state vs. distance vector Comparison of characteristics Characteristic Link State Distance Vector Message complexity flooding link state neighbour exchange State maintenance full (sub-)network neighbours Convergence time fast slow Robustness to errors errors limited to link(s) errors propagate Scalability?? 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-46

Routing Algorithms Comparison Link state vs. distance vector Comparison of characteristics Characteristic Link State Distance Vector Message complexity flooding link state neighbour exchange State maintenance full (sub-)network neighbours Convergence time fast slow Robustness to errors errors limited to link(s) errors propagate Scalability reasonable (with hierarchy) poor (long convergence) 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-47

Routing Algorithms Scalability Challenges Scalability of routing algorithms processing and bandwidth: message complexity memory: state maintained Link state scalability challenges flooding of link state in large network large topology data bases Distance vector scalability challenges long path lengths Solution? 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-48

Routing Algorithms Hierarchical Routing Concepts Hierarchy divide network into clusters isolate full topology and link state in lowest layers higher layers aggregate B 3 Y 4 1 2 A 1 9 C 2 3 6 8 4 4 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-49

Network Routing PSTN Routing Architecture and Algorithms NR.1 Functions and services NR.2 Routing algorithms NR.3 PSTN routing architecture and algorithms NR.4 Internet routing architecture and protocols 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-50

PSTN Routing Background and Overview PSTN evolved from a strict hierarchy hierarchical E.164 addressing with a (almost) single entity in technical control in the US Initial routing algorithm matches hierarchy HIER Later algorithms relaxed strict hierarchy better load balancing necessary for NPA overlay and number portability 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-51

US PSTN Traditional Hierarchical Network Structure final trunk group (to class 4 long distance switching) tandem office T local tandem switches T local office tandem trunk group 5 5 local loops direct trunk group local (class 5) switches direct trunk group 5 direct trunk group 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-52

PSTN Fixed Hierarchical Routing Overview Fixed Hierarchical routing (HIER) static routing algorithm based on strict hierarchy Switch class hierarchy 5: local 4: toll 3: primary 2: regional 1: sectional Link types final high usage 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-53

PSTN Hierarchical Routing Link Types 1 1 2 2 3 3 ladder Final links each switch homed to single switch above top level interconnected ladder : vertical final link set 4 4 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-54

PSTN Hierarchical Routing Link Types 1 1 2 2 3 3 4 4 High-usage links additional direct trunks deployed as needed based on traffic matrix reduce num. of hops below max. of 9 reduce bottlenecks in lower classes 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-55

PSTN Fixed Hierarchical Routing Routing Design Rules Routing design rules define routing algorithm constrain space of alternate choice and prevent looping Rules two-ladder limit intraladder direction multiple switching function one-level limit switch low directional routing single route alternate-route selection 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-56

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 24 25 20 23 19 22 18 16 21 17 2 2 12 3 3 9 15 11 14 6 8 4 5 7 10 13 2 3 1 4 4 5 5 Order of link selection assuming trunk exists capacity available Goals minimise number of hops distribute load in lower classes based on [Girad-1990 Fig 2.24] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-57 0

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link if switch LAMA capable (local automatic message accounting) 5 5 1 1 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-58

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links 4 4 2 5 5 2 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-59

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links 4 4 5 5 3 3 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-60

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links 4 4 4 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-61 4

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 4 4 5 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-62 5

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 6 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-63 6

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 4 4 7 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-64 7

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 4 4 8 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-65 8

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 9 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-66 9

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links 10 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-67 10

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 11 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-68 11

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 12 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-69 12

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links 13 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-70 13

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 3 3 14 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-71 14

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 15 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-72 15

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 16 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-73 16

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 17 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-74 17

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 18 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-75 18

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 19 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-76 19

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 20 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-77 20

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 2 2 21 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-78 21

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 22 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-79 22

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 23 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-80 23

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 24 2 2 3 3 4 4 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links 5 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-81 24

PSTN Fixed Hierarchical Routing Interladder Route Selection 1 1 25 2 2 3 3 4 4 5 5 Order of link selection assuming trunk exists capacity available Hunt sequence direct high-usage link high-usage class 4 links high-usage class 3 links high-usage class 2 links high-usage class 1 links final links (9 hops) final choice possible 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-82 25

PSTN Fixed Hierarchical Routing Intraladder Route Selection 1 Order of link selection assuming trunk exists 2 5 capacity available 4 6 3 3 3 2 1 given intra-link selection Goals minimise number of hops reduce final link load 4 7 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-83 0

PSTN Fixed Hierarchical Routing Intraladder Route Selection 1 2 3 1 Order of link selection assuming trunk exists capacity available given intra-link selection Hunt sequence direct high-usage trunk 4 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-84 1

PSTN Fixed Hierarchical Routing Intraladder Route Selection 1 2 3 4 2 Order of link selection assuming trunk exists capacity available given intra-link selection Hunt sequence direct high-usage trunk reduce class 1 hops 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-85 2

PSTN Fixed Hierarchical Routing Intraladder Route Selection 1 2 3 4 3 3 Order of link selection assuming trunk exists capacity available given intra-link selection Hunt sequence direct high-usage trunk reduce class 1 hops 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-86 3

PSTN Fixed Hierarchical Routing Intraladder Route Selection 4 1 2 3 4 Order of link selection assuming trunk exists capacity available given intra-link selection Hunt sequence direct high-usage trunk reduce class 1 hops reduce total/class 2 hops 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-87 4

PSTN Fixed Hierarchical Routing Intraladder Route Selection 1 2 3 4 5 Order of link selection assuming trunk exists capacity available given intra-link selection Hunt sequence direct high-usage trunk reduce class 1 hops reduce class 2 hops 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-88 5

PSTN Fixed Hierarchical Routing Intraladder Route Selection 6 1 2 3 4 Order of link selection assuming trunk exists capacity available given intra-link selection Hunt sequence direct high-usage trunk reduce class 1 hops reduce class 2 hops 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-89 6

PSTN Fixed Hierarchical Routing Intraladder Route Selection 1 2 3 4 7 Order of link selection assuming trunk exists capacity available given intra-link selection Hunt sequence direct high-usage trunk reduce class 1 hops reduce class 2 hops 5 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-90 7

PSTN Fixed Hierarchical Routing Summary Advantages? 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-91

PSTN Fixed Hierarchical Routing Summary Advantages simple: directly related to network topology easy to implement in early relay-logic switches Disadvantages? 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-92

PSTN Fixed Hierarchical Routing Summary Advantages simple: directly related to network topology easy to implement in early relay-logic switches Disadvantages inflexible: class 5 switches cannot serve as transit nodes unable to adapt to time-varying load Alternatives? 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-93

PSTN Routing Non-Hierarchical Topology Modern PSTN lacks strict hierarchy of Bell System divestiture and deregulation multiple IXCs connecting ILECs and CLECs NPA overlays LNP (local number portability) 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-94

PSTN Routing Non-Hierarchical and Dynamic Routing Non-Hierarchical routing removes requirement routing matches physical hierarchy note: different from hierarchy for scalability (e.g. PNNI) planned before divestiture to increase efficiency of network Dynamic routing permit routing to adapt to traffic 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-95

PSTN Non-Hierarchical Routing DNHR Overview DNHR (dynamic non-hierarchical routing) AT&T long distance network Bell Labs research in early 1980s deployed in AT&T long distance network 1984 1991 former classes 3 1 switches Network is a mesh of switches Each switch pair connected by: direct primary path alternate two-hop paths 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-96

PSTN Real-Time Network Routing RTNR Overview RTNR (real-time network routing) developed by Bell Labs in late 1980s to improve on DNHR Motivation DNHR was not adaptive enough off-line computations and administration costly increased switch processing and memory capabilities Forwarding tables change dynamically based on traffic conditions Routing fully distributed algorithm paths computed per call 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-97

Network Routing Internet Routing NR.1 Functions and services NR.2 Routing algorithms NR.3 PSTN routing architecture and algorithms NR.4 Internet routing architecture and protocols 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-98

tier-2 providers Internet Routing Topology Current Internet Structure tier-1 providers IXP peering points IXP local ISPs access lines 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-99

Internet Routing Topology AS Intra/Inter-Domain Hierarchy Autonomous systems (ASs) or domains administrative autonomy improves scalability Two-layer major hierarchy intradomain within AS interdomain between ASs Routing protocols loads forwarding tables 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-100

Internet Routing Intradomain Routing and Forwarding Intra-AS or intradomain routing IGP (interior gateway protocol) IGP determines intra-as entries determines paths within AS loads forwarding tables within AS IP forwards Each AS can choose the IGP of its choice may be hierarchical within AS Example IGPs RIP, OSPF, ISIS, IGRP/EIGRP 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-101

Internet Routing Interdomain Routing and Forwarding Inter-AS or interdomain routing EGP (exterior gateway protocol) EGP determines inter-as entries in edge nodes determine inter-as reachability for particular AS IP blocks loads edge router forwarding tables must also propagate within AS and load forwarding tables All Internet ASs must agree on the EGP BGP-4: border gateway protocol is de facto standard evolution difficult; replacement probably impossible 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-102

Intradomain Routing Intradomain Protocols RIP: routing information protocol original IGP; no longer in wide use EIGRP: (enhanced) interior gateway routing protocol Cisco proprietary replacement for RIP ISIS: intermediate system intermediate system OSI IGP OSPF: open shortest path first IETF replacement for RIP OSPF or ISIS used by virtually all service providers distance vector convergence too slow 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-103

Intradomain Routing ISIS Overview ISIS: intermediate system to intermediate system used by many service providers was available before OSPF OSI routing protocol derived from DECnet phase V routing adopted by ISO for CLNP (connectionless networking) Link state routing protocol messages transported directly over IP ISIS protocol ID = 124 very similar to OSPF in operation 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-104

Intradomain Routing OSPF Link State OSPF is a link state routing protocol [RFC 2328/5340 v6 ] IETF open development process messages transported directly over IP: protocol ID = 89 Dijkstra least-cost path algorithm shortest path first (SPF) link costs configured by network administrator set to 1 for minimum hop routing 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-105

Intradomain Routing OSPF Initialisation and Operation Initialisation hello establishes link adjacencies to all neighbours and maintains liveness database description loads topology information Operation link state advertisements flooded to AS directed link weights use multiple parameters link costs configured by network administrator 1 for minimum hop routing Dijkstra least-cost path algorithm 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-106

Intradomain Routing OSPF Link State Advertisements LSAs (link state advertisements) reliable flooding within AS ACKs returned LSAs flooded whenever link state changes periodically (at least 30 min. interval) 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-107

Intradomain Routing OSPF LSA Header LSA header (after common header) LS age: time since LSA originated [s] options type link state ID advertising router LS sequence number LS checksum length todo: packet format figure 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-108

Security: Intradomain Routing OSPF Features all OSPF messages authenticated Multipath routing multiple equal-cost paths supported can cause problems to end-to-end protocols Hierarchy effect on TCP packet ordering 2-level scales to larger ASs Multicast routing MOSPF: multicast OSPF [RFC 1584] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-109

Intradomain Routing OSPF Hierarchy OSPF supports 2-layer hierarchy AS divided into areas connected by the backbone backbone area ID 0.0.0.0 LSAs flooded only within area or within backbone Border routers summarise costs within area advertise to other border routers Boundary routers connect to other ASs results in 3-layer Internet hierarchy: BGP / OSPF backbone / OSPF area todo: figure 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-110

AS Routing Hierarchy Motivation for Different Protocols Motivation for different inter- and intra-as protocols Flexibility AS boundaries are administrative reality allows each AS to choose its own IGP but doesn t allow integrated hierarchy with IGPs Policy inter-as peering and transit a business decision BGP policy not well designed from beginning policies may never converge convergence dependent on message order and link state not possible to compute if policies will converge 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-111

Interdomain Routing BGP Overview Border gateway protocol (BGP) [RFC 2328 / STD 0054] IETF interdomain routing protocol (EGP) de facto standard; all ASs must use to interconnect current version is BGP4 BGP replaced initial EGP [RFC 0904] BGP has many flaws many papers on how BGP is broken and proposals to fix but BGP is part of the (interdomain) Internet hourglass as hard to evolve or replace as IP 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-112

tier-2 providers Interdomain Routing Current Internet Structure tier-1 providers IXP peering points IXP local ISPs access lines 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-113

Interdomain Routing BGP Path Vector Path vector routing protocol Similar to distance vector paths advertised instead of distance metrics sequence of AS numbers assigned by RIPE, ARIN, etc. Propagates reachability information ASs advertise their existence to Internet policy determines which choices an AS makes Messages transported over TCP 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-114

Interdomain Routing BGP Sessions AS3 1A AS1 AS2 3A ebgp 1C 1B ebgp 2A 1D ibgp BGP session is association between peers ebgp: exterior BGP session between ASs ibgp: interior BGP session within AS fully connected mesh multihop TCP if direct link doesn t exist allows route advertisements to reach every node [Kurose Ross p.380] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-115

Interdomain Routing BGP Route Advertisements AS3 1A AS1 AS2 3A 1C 1B 2A 1D Route advertisements promise to forward to destination IP prefixes are aggregated 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-116

Interdomain Routing BGP Reachability Example AS3 1A AS1 AS2 3A 1C 1B 2A 1D BGP advertisement example propagation of AS3:3A reachability into AS2 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-117 0

Interdomain Routing BGP Reachability Example AS3 1A AS1 AS2 3A 1C 1B 2A 1D BGP advertisement example propagation of AS3:3A reachability into AS2 AS3 prefix reachability to AS1 using ebgp 3A 1C advertises 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-118 1

Interdomain Routing BGP Reachability Example AS3 1A AS1 AS2 3A 1C 1B 2A 1D BGP advertisement example propagation of AS3:3A reachability into AS2 AS3 prefix reachability to AS1 using ebgp 3A 1C 1C distributes new prefix route using ibgp in AS1 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-119 2

Interdomain Routing BGP Reachability Example AS3 1A AS1 AS2 3A 1C 1B 2A 1D BGP advertisement example propagation of AS3:3A reachability into AS2 AS3 prefix reachability to AS1 using ebgp 3A 1C 1C distributes new prefix route using ibgp in AS1 1B re-advertise new prefix to AS2 using ebgp 1B 2A 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-120 3

Interdomain Routing BGP Reachability Example AS3 1A AS1 AS2 3A 1C 1B 2A AS3 1D BGP advertisement example propagation of AS3:3A reachability into AS2 AS3 prefix reachability to AS1 using ebgp 3A 1C 1C distributes new prefix route using ibgp in AS1 1B re-advertise new prefix to AS2 using ebgp 1B 2A New prefix received creates fwd table entry to AS3 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-121 4

Intradomain Routing Routes and Path Attributes BGP prefix advertisements include BGP attributes prefix + attributes = route Important attributes: AS-PATH AS numbers through which advertisement passed NEXT-HOP specific internal-as router to next-hop AS may be multiple links from current AS to next-hop-as When edge router receives route advertisement use import policy to accept/decline 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-122

Intradomain Routing BGP Route Selection Router may learn about multiple routes to a prefix Elimination rules: local preference value attribute policy decision shortest AS-PATH closest NEXT-HOP router hot potato routing additional policy criteria 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-123

Intradomain Routing BGP Messages BGP messages exchanged over TCP OPEN opens TCP connection to peer & authenticates sender UPDATE advertises new path (or withdraws old) KEEPALIVE keeps connection alive in absence of UPDATES also acknowledges OPEN request NOTIFICATION reports errors in previous message also used to close connection todo: packet format figure 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-124

Intradomain Routing BGP Example AS2 AS80 AS70 AS1 AS3 AS90 Topology provider networks AS 1,2,3 e.g. tier-1 or tier-2 subscriber networks AS 70,80,90 e.g. tier n 1,enterprise, campus AS80 dual-homed why? [Kurose Ross p.382] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-125

Intradomain Routing BGP Example: Multihoming AS2 AS80 AS70 AS1 AS3 AS90 Topology provider networks AS 1,2,3 e.g. tier-1 or tier-2 subscriber stub networks AS 70,80,90 e.g. tier n 1,enterprise, campus AS80 dual-homed for resilience if one service provider fails or link goes down [Kurose Ross p.382] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-126

Intradomain Routing BGP Policy Example: Transit Traffic AS2 AS80 AS70 AS1 AS3 AS90 Subscriber network policy: transit traffic is AS80 likely to want to route between AS2 and AS3? why? [Kurose Ross p.382] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-127

Intradomain Routing BGP Policy Example: Transit Traffic AS2 AS80 AS70 AS1 AS3 AS90 Subscriber network policy: transit traffic AS80 is unlikely to route transit traffic between AS2 and AS3 stub network only sources or sinks traffic tier-n 1 not engineered to transit tier-n traffic no economic benefit How is this accomplished? [Kurose Ross p.382] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-128

Intradomain Routing BGP Policy Example: Transit Traffic AS2 AS80 AS70 AS1 AS3 AS90 Subscriber network policy: transit traffic AS80 is unlikely to route transit traffic between AS2 and AS3 AS80 route advertisements will not advertise 80 3 90 to AS2 [Kurose Ross p.382] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-129

Intradomain Routing BGP Policy Example: Provider Policy AS2 AS80 AS70 AS1 AS3 AS90 Provider policy examples AS1 advertises 1 70 to AS2 AS2 advertises 2 1 70 to AS80 should AS2 advertise 2 1 70 to AS3? [Kurose Ross p.382] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-130

Intradomain Routing BGP Policy Example: Provider Policy AS2 AS80 AS70 AS1 AS3 AS90 Provider policy examples AS1 advertises 1 70 to AS2 AS2 advertises 2 1 70 to AS80 AS2 not likely to advertise 2 1 70 to AS3 neither AS70 nor AS3 are AS2 s customers AS2 wants to force AS3 to route to AS70 via AS1 AS2 wants to route only to and from its own customers [Kurose Ross p.382] 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-131

Network Routing Key Acronyms 1 HIER DNHR AS OSPF ISIS LSA BGP PSTN hierarchical routing PSTN dynamic non-hierarchical routing autonomous system open shortest-path routing intermediate-system to intermediate-system link state advertisement border gateway protocol 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-132

Communication Networks Acknowledgements Some material in these foils comes from the textbook supplementary materials: Kurose & Ross, Computer Networking: A Top-Down Approach Featuring the Internet Sterbenz & Touch, High-Speed Networking: A Systematic Approach to High-Bandwidth Low-Latency Communication http://hsn-book.sterbenz.org 26 October 2017 KU EECS 563 Intro Comm Nets Routing ICN-NR-133