ETSF05/ETSF10 Internet Protocols. Routing on the Internet

Similar documents
ETSF05/ETSF10 Internet Protocols Routing on the Internet

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS

Chapter 12. Routing and Routing Protocols 12-1

William Stallings Data and Computer Communications. Chapter 10 Packet Switching

Routing in packet-switching networks

Lecture 4 Wide Area Networks - Routing

Data and Computer Communications. Chapter 12 Routing in Switched Networks

Routing. Advanced Computer Networks: Routing 1

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

Routing Strategies. Fixed Routing. Fixed Flooding Random Adaptive

William Stallings Data and Computer Communications 7 th Edition. Chapter 12 Routing

Routing, Routing Algorithms & Protocols

Alternate Routing Diagram

This Lecture. BUS Computer Facilities Network Management. Switching Network. Simple Switching Network

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

Fairness Example: high priority for nearby stations Optimality Efficiency overhead

Module 8. Routing. Version 2 ECE, IIT Kharagpur

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2017

Routing Unicast routing protocols

Routing. 4. Mar INF-3190: Switching and Routing

Overview. Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load

Routing. Jens A Andersson Communication Systems

CSCE 463/612 Networks and Distributed Processing Spring 2018

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

Routing. Routing. Overview. Overview. Routing vs. Forwarding. Why Routing

Course Routing Classification Properties Routing Protocols 1/39

Lecture (08, 09) Routing in Switched Networks

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

Routing in Switched Data Networks

Why dynamic route? (1)

Chapter 7 Routing Protocols

Lecture 12. Introduction to IP Routing. Why introduction? Routing

Overview 4.2: Routing

Basic Idea. Routing. Example. Routing by the Network

Computer Networking Introduction

Routing by the Network

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

CSc 450/550 Computer Networks Internet Routing

Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1

To contain/reduce broadcast traffic, we need to reduce the size of the network (i.e., LAN).

Chapter 4: outline. Network Layer 4-1

Chapter 4: Network Layer

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

CHAPTER 9: PACKET SWITCHING N/W & CONGESTION CONTROL

Top-Down Network Design

ICMP, ARP, RARP, IGMP

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

Routing. Outline. Algorithms Scalability

Network Layer: Routing

Topics for This Week

Unit 3: Dynamic Routing

IP Routing. Bharat S. Chaudhari International Institute of Information Technology Pune, India

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

Routing in the Internet

Routing Protocols of IGP. Koji OKAMURA Kyushu University, Japan

ICS 351: Today's plan. OSPF BGP Routing in general

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

ITEC310 Computer Networks II

CSC 4900 Computer Networks: Routing Protocols

Lecture 4. The Network Layer (cont d)

ICS 351: Today's plan. distance-vector routing game link-state routing OSPF

Chapter 4: Network Layer, partb

C13b: Routing Problem and Algorithms

Open Shortest Path First (OSPF)

Routing Algorithms. CS158a Chris Pollett Apr 4, 2007.

ECE 333: Introduction to Communication Networks Fall 2001

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

Routing, Routers, Switching Fabrics

Computer Networking. Intra-Domain Routing. RIP (Routing Information Protocol) & OSPF (Open Shortest Path First)

CS118 Discussion Week 7. Taqi

CS321: Computer Networks Unicast Routing

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

Computer Networks. Routing Algorithms

LS Example 5 3 C 5 A 1 D

CS 138: Communication I. CS 138 V 1 Copyright 2012 Thomas W. Doeppner. All rights reserved.

Computer Networks. Wenzhong Li. Nanjing University

Chapter IV: Network Layer

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

The Network Layer and Routers

Routing Protocol. Seiya Tsubone. Apr The University of Tokyo. Seiya Tsubone (The University of Tokyo) Routing Protocol Apr. 25.

RIP Version 2. The Classless Brother

Internet Routing Protocols Tuba Saltürk

OSPF Protocol Overview on page 187. OSPF Standards on page 188. OSPF Area Terminology on page 188. OSPF Routing Algorithm on page 190

Helsinki University of Technology Telecommunications Laboratory. OSPF Routing Protocol Licenciate course seminar paper

Routing. Directly Connected IP Networks. Data link layer routing. ifconfig command

Network Protocols. Routing. TDC375 Autumn 03/04 John Kristoff - DePaul University 1

Prof. Shervin Shirmohammadi SITE, University of Ottawa. Internet Protocol (IP) Lecture 2: Prof. Shervin Shirmohammadi CEG

06/02/ Local & Metropolitan Area Networks. Overview. Routing algorithm ACOE322. Lecture 6 Routing

Dynamic Routing. The Protocols

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

Routing Basics. What is Routing? Routing Components. Path Determination CHAPTER

Routing in a network

TDC 363 Introduction to LANs

Routing in Internet. Problem. Given set of nodes, how do routers acquire info about neighbors to construct the routing tables?

Introduction to IP Routing. Geoff Huston

The most simple way to accelerate a Router is at 9.8 m/sec/sec.

Last time. BGP policy. Broadcast / multicast routing. Link virtualization. Spanning trees. Reverse path forwarding, pruning Tunneling

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

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

Transcription:

ETSF05/ETSF10 Internet Protocols Routing on the Internet

Circuit switched routing ETSF05/ETSF10 - Internet Protocols 2

Routing in Packet Switching Networks Key design issue for (packet) switched networks Select route across network between end nodes Characteristics required: Correctness Simplicity (Scalable) Robustness vs Stability Fairness vs Optimality Efficiency (overhead) ETSF05/ETSF10 - Internet Protocols 4

Routing Strategies - Flooding Packet sent by node to every neighbor Eventually multiple copies arrive at destination No network information required Each packet is uniquely numbered so duplicates can be discarded Need to limit infinite retransmission of packets Can include a hop count in packets Nodes can remember identity of packets retransmitted ETSF05/ETSF10 - Internet Protocols 5

Packet-switched Routing Choosing an optimal path According to a costmetric Decentralised: each router has full/necessaryinformation ETSF05/ETSF10 - Internet Protocols 6

Router Internetworking device Passes data packets between networks Checks Network Layer addresses Uses Routing/forwarding tables Two functions: 1. Routing 2. Forwarding SA DA Data SA DA Data ETSF05/ETSF10 - Internet Protocols 7

Router Architecture Overview ETSF05/ETSF10 - Internet Protocols 8

Input Port Physical layer: bit-level reception Data link layer: e.g., Ethernet Decentralized switching: Given destination, lookup output port using routing table in input port memory Goal: complete input port processing at line speed ETSF05/ETSF10 - Internet Protocols 9

Input Port Queuing Fabric slower than sum of input ports à queuing Delay and loss due to input buffer overflow Head-of-the-Line (HOL) blocking: Datagram at front of queue prevents others in queue from proceeding ETSF05/ETSF10 - Internet Protocols 10

Output Port Priority Scheduling: Scheduling discipline may choose among queued datagrams for transmission ETSF05/ETSF10 - Internet Protocols 11

Output Port Queuing Datagrams arrival rate through the switch exceeds the transmission rate of the output line à buffering Delay and loss due to output port buffer overflow ETSF05/ETSF10 - Internet Protocols 12

Switching Fabrics ETSF05/ETSF10 - Internet Protocols 13

Router cache Save next hop for packet type (addr and TOS) Keep packets within a session on the same path Prohibits reordering decreases delay variations Works in both directions Reply take the same path as request Drawback: for long sessions (e.g. video) session continuity might be broken Typical for user networks ETSF05/ETSF10 - Internet Protocols 14

Routing Tables and Forwarding Table RIP Process BGP Process RIP Routing tables BGP Routing tables BGP OSPF Process OSPF Routing tables Static routing table OS kernel RIP Domain OSPF Domain ETSF05/ETSF10 - Internet Protocols Forwarding Table Manager Forwarding Table 15

Performance Criteria Used for selection of route Simplest is to choose minimum hop Can be generalized as least cost routing Since least cost is more flexible it is more common than minimum hop ETSF05/ETSF10 - Internet Protocols 16

Best Path: Decision Time and Place Decision time (when?) Packet or virtual circuit (session) basis Fixed or dynamically changing Decision place (where?) Distributed - made by each node More complex, but more robust Centralized made by a designated node Source made by source station ETSF05/ETSF10 - Internet Protocols 19

Network Information Source and Update Timing Routing decisions usually based on knowledge of network, traffic load, and link cost Distributed routing Using local knowledge, information from adjacent nodes, information from all nodes on a potential route Central routing Collect information from all nodes Issue of update timing Depends on routing strategy Fixed - never updated Adaptive - regular updates ETSF05/ETSF10 - Internet Protocols 20

Routing Strategies - Fixed Routing Use a single permanent route for each source to destination pair of nodes Determined using a least cost algorithm Route is fixed Until a change in network topology Based on expected traffic or capacity Advantage is simplicity Disadvantage is lack of flexibility Does not react to network failure or congestion ETSF05/ETSF10 - Internet Protocols 21

Routing Strategies - Adaptive Routing Used by almost all packet switching networks Routing decisions change as conditions on the network change due to failure or congestion Requires information about network More complex Tradeoff between quality and overhead Too quick updates may lead to oscillations Too slow updates may lead to outdates information ETSF05/ETSF10 - Internet Protocols 23

Classification of Adaptive Routing Strategies A convenient way to classify is on the basis of information source Local (isolated) Adjacent nodes Route to outgoing link with shortest queue Can include bias for each destination Rarely used - does not make use of available information Takes advantage of delay and outage information Distributed or centralized All nodes Like adjacent ETSF05/ETSF10 - Internet Protocols 25

ARPANET Routing Strategies 1st Generation Distance Vector Routing 1969 Distributed adaptive using estimated delay Queue length used as estimate of delay Version of Bellman-Ford algorithm Node exchanges delay vector with neighbors Update routing table based on incoming information Doesn't consider line speed, just queue length and responds slowly to congestion ETSF05/ETSF10 - Internet Protocols 26

ARPANET Routing Strategies 2nd Generation Link-State Routing 1979 Distributed adaptive using delay criterion Using timestamps of arrival, departure and ACK times Re-computes average delays every 10 seconds Any changes are flooded to all other nodes Re-computes routing using Dijkstra s algorithm Good under light and medium loads Under heavy loads, little correlation between reported delays and those experienced ETSF05/ETSF10 - Internet Protocols 28

ARPANET Routing Strategies 3rd Generation 1987 Link cost calculation changed Dampen routing oscillations Reduce routing overhead Measure average delay over last 10 seconds and transform into link utilization estimate Calculate average utilization based on current value and previous average! " + 1 = & ' ( " + & '!(") Use as link cost a function based on the average utilization ETSF05/ETSF10 - Internet Protocols 29

Autonomous Systems (AS) Exhibits the following characteristics: Is a set of routers and networks managed by a single organization Consists of a group of routers exchanging information via a common routing protocol Except in times of failure, is connected (in a graphtheoretic sense); there is a path between any pair of nodes ETSF05/ETSF10 - Internet Protocols 30

Interior Router Protocol (IRP) Interior Gateway Protocol (IGP) A shared routing protocol which passes information between routers within an AS Custom tailored to specific applications and requirements ETSF05/ETSF10 - Internet Protocols 31

Exterior Router Protocol (ERP) Exterior Gateway Protocol (EGP) Pass information between routers in different ASs Will need to pass less information than an IRP for the following reason: To transfer a datagram from a host in one AS to a host in another AS, a router in the first system need only determine the target AS and devise a route to get into that target system Once the datagram enters the target AS, the routers within that system can cooperate to deliver the datagram The ERP is not concerned with, and does not know about, the details of the route within the target AS ETSF05/ETSF10 - Internet Protocols 32

Subnetwork 1.2 Subnetwork 2.1 R3 R2 R6 R5 Subnetwork 1.3 R4 Subnetwork 1.4 Subnetwork 1.1 R1 R8 Subnetwork 2.2 R7 Subnetwork 2.4 Subnetwork 2.3 Autonomous System 1 Autonomous System 2 Interior router protocol Exterior router protocol Figure 19.9 Application of Exterior and Interior Routing Protocols ETSF05/ETSF10 - Internet Protocols 33

Routing Algorithms and Protocols IRP ERP ETSF05/ETSF10 - Internet Protocols 38

Distance-Vector Routing Routing Information Protocol (RIP) Requires that each node exchange information with its neighboring nodes Two nodes are said to be neighbors if they are both directly connected to the same network Used in the first-generation routing algorithm for ARPANET Each node maintains a vector of link costs for each directly attached network and distance and next-hop vectors for each destination ETSF05/ETSF10 - Internet Protocols 39

RIP (Routing Information Protocol) Included in BSD-UNIX Distribution in 1982 Distance metric: # of hops (max 15) to destination network Distance vectors: exchanged among neighbours every 30 via Response Message (advertisement) Implementation: Application layer protocol, uses UDP/IP ETSF05/ETSF10 - Internet Protocols 40

A RIP Forwarding/Routing Table Destination=net Cost Next hop=router 123 3 A 32 5 D 16 3 A 7 2 - ETSF05/ETSF10 - Internet Protocols 41

RIP update message Contains the whole forwarding table Action on reception: Add 1 to costin receivedmessage Change next hop to sendingrouter Apply RIP updatingalgorithm Received update msgs identify neighbours! ETSF05/ETSF10 - Internet Protocols 42

RIP Updating Algorithm (Bellman-Ford) if (advertised destination not in table) { add new entry // rule #1 } else if (adv. next hop = next hop in table) { update cost // rule #2 } else if (adv. cost < cost in table) { replace old entry // rule #3 } ETSF05/ETSF10 - Internet Protocols 43

RIP Example ETSF05/ETSF10 - Internet Protocols 44

Two node instability/count to inifinity ETSF05/ETSF10 - Internet Protocols 45

Split Horizon breaks Count to inifinity I have a route to X, but I got it from A so I won t tell A about it! ETSF05/ETSF10 - Internet Protocols 46

RIP: Link Failure and Recovery If no advertisement heard after 180 Neighbour/link declared dead Routes via neighbour invalidated (infinite distance = 16 hops) New advertisements sent to neighbours (triggering a chain reaction if tables changed) Poison reverse break split horizon for infity routes - for to prevent count to infinity loops Good news travel fast, bad news travel slow ETSF05/ETSF10 - Internet Protocols 47

Routing Algorithms and Protocols IRP ERP ETSF05/ETSF10 - Internet Protocols 48

Link-State Routing Designed to overcome the drawbacks of distance-vector routing When a router is initialized, it determines the link cost on each of its network interfaces The router then advertises this set of link costs to all other routers in the internet topology, not just neighboring routers From then on, the router monitors its link costs Whenever there is a significant change the router again advertises its set of link costs to all other routers in the configuration The OSPF protocol is an example The second-generation routing algorithm for ARPANET also uses this approach ETSF05/ETSF10 - Internet Protocols 49

Open Shortest Path First (OSPF) RFC 2328 (Request For Comments) Used as the interior router protocol in TCP/IP networks Computes a route through the internet that incurs the least cost based on a userconfigurable metric of cost Is able to equalize loads over multiple equalcost paths ETSF05/ETSF10 - Internet Protocols 50

OSPF (Open Shortest Path First) Divides domain into areas Limits flooding for efficiency One backbone area connects all Distance metric: Cost to destination network ETSF05/ETSF10 - Internet Protocols 51

Areas, Router and Link Types ETSF05/ETSF10 - Internet Protocols 52

Graph Network topology expressed as a graph Nodes Routers Networks Transit, passing data through Stub, end network (not transit) Edges Direct, router to router Indirect, router to network ETSF05/ETSF10 - Internet Protocols 53

N12 N13 N14 N1 3 1 R1 N3 R4 1 8 8 8 8 8 R5 7 6 N2 3 R2 1 R3 1 2 N4 8 6 7 6 R6 R7 1 6 9 2 N12 N15 N11 5 R9 3 1 N9 1 R11 2 R10 N8 3 1 N6 4 1 R8 10 1 2 N10 N7 H1 R12 Figure 19.11 A Sample Autonomous System ETSF05/ETSF10 - Internet Protocols 54

N1 3 Transit network N2 3 R1 R2 1 1 N3 1 R3 2 1 6 R4 8 N12 8 8 6 7 R6 N13 8 8 8 7 6 R5 6 N14 Direct edge Point to point N12 Stub network R9 N11 3 N4 R10 5 7 1 R7 1 N6 2 9 N15 N9 1 1 1 3 1 R11 2 N8 Indirect edge R8 4 H1 10 2 N10 N7 R12 Figure 19.12 Directed Graph of Autonomous System of Figure 19.11 ETSF05/ETSF10 - Internet Protocols 55

Link State Advertisements What to advertise? Different entities as nodes Different link types as connections Different types of cost ETSF05/ETSF10 - Internet Protocols 59

Router Link Advertisement Advertise the router as a node Address Transient link (connection to transient network) Address to network and cost of link Stub link (connection to stub network) Address to network and cost of link Point-to-point link Address to other router and cost for link ETSF05/ETSF10 - Internet Protocols 60

Network Link Advertisement A network is a passive entity and cannot advertise itself A designated router does the announcement Addresses to all connected routers (no costs) ETSF05/ETSF10 - Internet Protocols 61

Summary Link to Network Done by area border routers Advertise links between area and backbone Viewed from backbone to area Viewed from area to backbone ETSF05/ETSF10 - Internet Protocols 62

Summary Link to AS Boundary Router Done by AS border router Links to other AS Advertised in to the AS ETSF05/ETSF10 - Internet Protocols 63

External Link Advertisement Done by AS border router Link to a single network outside the domain Advertise in to the AS ETSF05/ETSF10 - Internet Protocols 64

Hello message Find neighbours Keep contact with neighbours: I am still alive! Sent out periodically (typically every 10th second) If no hellos received during holdtime (typically 30 seconds), neighbour declared dead. Compare RIP update messages ETSF05/ETSF10 - Internet Protocols 65

Dijkstra s Algorithm Finds shortest paths from given source node to all other nodes Develop paths in order of increasing path length Algorithm runs in stages Each time adding node with next shortest path Algorithm terminates when all nodes have been added to T ETSF05/ETSF10 - Internet Protocols 66

Comparison Bellman-Ford Calculation for node n needs link cost to neighbouring nodes plus total cost to each neighbour Each node can maintain set of costs and paths for every other node Can exchange information with direct neighbours Can update costs and paths based on information from neighbours and knowledge of link costs Dijkstra Each node needs complete topology Must know link costs of all links in network Must exchange information with all other nodes ETSF05/ETSF10 - Internet Protocols 68