Review: Routing in Packet Networks Shortest Path Algorithms: Dijkstra s & Bellman-Ford. Routing: Issues

Similar documents
EE 122: Intra-domain routing

Announcement. Project 2 extended to 2/20 midnight Project 3 available this weekend Homework 3 available today, will put it online

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

Initialization: Loop until all nodes in N

CS 457 Networking and the Internet. What is Routing. Forwarding versus Routing 9/27/16. Fall 2016 Indrajit Ray. A famous quotation from RFC 791

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

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

COMP 631: NETWORKED & DISTRIBUTED SYSTEMS 9/6/16 COMP 631: NETWORKED & DISTRIBUTED SYSTEMS. Internet Routing. Jasleen Kaur.

CS 43: Computer Networks. 23: Routing Algorithms November 14, 2018

WAN Technology and Routing

Distance-Vector Routing: Distributed B-F (cont.)

Chapter 4: Network Layer

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

ECE 158A: Lecture 5. Fall 2015

CSC 4900 Computer Networks: Routing Algorithms

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2017

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

Third Generation Routers

Routing. 9: Intro to Routing Algorithms. Routing. Roadmap. Routing Algorithm classification: Static or Dynamic?

Chapter 4: Network Layer, partb

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

COMP 3331/9331: Computer Networks and Applications

CSCE 463/612 Networks and Distributed Processing Spring 2018

DATA COMMUNICATOIN NETWORKING

Routing in a network

COMP/ELEC 429/556 Introduction to Computer Networks

Routers & Routing : Computer Networking. Binary Search on Ranges. Speeding up Prefix Match - Alternatives

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

Chapter 4: Network Layer

Computer Networks. Routing Algorithms

Chapter 4: Network Layer

Lecture 5 The Network Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

CSC 401 Data and Computer Communications Networks

CS4450. Computer Networks: Architecture and Protocols. Lecture 11 Rou+ng: Deep Dive. Spring 2018 Rachit Agarwal

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

Chapter 4 Network Layer. Network Layer 4-1

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

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

Routing Algorithms : Fundamentals of Computer Networks Bill Nace

Dynamic Routing. The Protocols

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

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical

Chapter 5 Network Layer: The Control Plane

Routing in Ad-hoc Networks

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Chapter 4 Network Layer

Intra-domain Routing

Routing Algorithm Classification. A Link-State Routing Algorithm

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

Missing Pieces of the Puzzle

Interplay between routing, forwarding

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

Network Layer: Routing

Routing Algorithms. Daniel Zappala. CS 460 Computer Networking Brigham Young University

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

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

Let s focus on clarifying questions. More Routing. Logic Refresher. Warning. Short Summary of Course. 10 Years from Now.

Advanced Computer Networks

Distance vector and RIP

Network layer: Overview. Network layer functions Routing IP Forwarding

More on Network Routing and Internet Protocol

Distance Vector Routing Protocols

Lecture 4. The Network Layer (cont d)

Redes de Computadores. Shortest Paths in Networks

COM-208: Computer Networks - Homework 6

Distance Vector Routing

4/25/12. The Problem: Distributed Methods for Finding Paths in Networks Spring 2012 Lecture #20. Forwarding. Shortest Path Routing

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14

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

CS118 Discussion Week 7. Taqi

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

Routing Outline. EECS 122, Lecture 15

CSC 8560 Computer Networks: Control Plane

EITF25 Internet Routing. Jens A Andersson

CSE 461 Routing. Routing. Focus: Distance-vector and link-state Shortest path routing Key properties of schemes

Network Layer: Routing

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

EC441 Fall 2018 Introduction to Computer Networking Chapter 5: Network Layer Control Plane

Youki Kadobayashi NAIST

Routing Algorithms. CS158a Chris Pollett Apr 4, 2007.

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

Agenda. distance-vector (what you invented last Friday) hierarchical routing routing in the Internet. v DNS assignment Q&A v Routing Algorithms

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

The Problem: Finding Paths Spring 2011 Lecture #19. Forwarding. Shortest Path Routing

Youki Kadobayashi NAIST

CSE/EE 461 Distance Vector Routing

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

C13b: Routing Problem and Algorithms

Youki Kadobayashi NAIST

TCP/IP Networking. Part 3: Forwarding and Routing

Network layer: Overview. Network layer functions Routing IP Forwarding

TDC 363 Introduction to LANs

WANs and Long Distance Connectivity. Introduction

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 13

Master Course Computer Networks IN2097

ETSF05/ETSF10 Internet Protocols Routing on the Internet

Distributed Algorithms in Networks EECS 122: Lecture 17

CMPE 80N: Introduction to Networking and the Internet. Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 20

Routing Protocols and the IP Layer

Transcription:

Review: Routing in Packet Networks Shortest Path lgorithms: ijkstra s & ellman-ford Routing: Issues How are routing tables determined? Who determines table entries? What info used in determining table entries? When do routing table entries change? Where is routing info stored? How to control table size? nswer these and we are done! Page

Routing lgorithms/protocols: Issues Route selection may depend on different criteria Performance: choose route with smallest delay Policy: choose a route that doesn t cross.gov network dapt to changes in topology or traffic Self healing: little or no human intervention Scalability Must be able to support large number of hosts, routers Technique : Flooding Router Router forward packets to all ports except the ingress port dvantages: Every destination in the network is reachable Useful when network topology is unknown isadvantages: Waste capacity of links Potential loops; need additional mechanism to detect Time to Live (TTL) make sure packet eventually disappear 4 Page

Hop by Hop/Source Routing Hop by hop routing Each packet contains destination address Each router chooses next hop to destination Example: IP Source routing Sender selects the path to destination precisely Routers forward packet to next hop as specified Example: IP s loose/strict source route Source Routing 0 Switch 0 0 0 Switch 0 Host 0 0 Switch Host 6 Page

istributed Routing lgorithms Routers cooperate using a distributed protocol To create mutually consistent routing tables Two standard distributed routing algorithms Link state routing istance vector routing 7 Link State vs istance Vector oth assume that The address of each neighbor is known The cost of reaching each neighbor is known oth find global information y exchanging routing info among neighbors iffer in info exchanged and route computation LS: tells every other node its distance to neighbors V: tells neighbors its distance to every other node 8 Page 4

Link State Link State lgorithm asic idea: istribute to all routers Topology of the network Cost of each link in the network Each router independently computes optimal paths Each node has global view of the network From itself to every destination Routes are guaranteed to be loop free if Each router sees the same cost for each link Uses the same algorithm to compute the best path 9 Link State Topology issemination Each router creates a set of link state packets escribing its links to neighbors LSP contains Router id, neighbor s id, and cost to its neighbor Copies of LSPs are distributed to all routers Using controlled flooding Each router maintains a topology database atabase containing all LSPs 0 Page

Link State ijkstra s lgorithm Given the network topology How to compute shortest path to each destination? Some notation X: source node N: set of nodes to which shortest paths are known so far N is initially empty (V): cost of known shortest path from source X C(U,V): cost of link U to V C(U,V) = if not neighbors Link State lgorithm (at Node X) Initialization N = {X} For all nodes V If V adjacent to X, (V) = C(X,V) else (V) = Loop Find U not in N such that (U) is smallest dd U into set N Update (V) for all V not in N (V) = min{(v), (U) + C(U,V)} Until all nodes in N Page 6

Page 7 Link State 4 ijkstra s algorithm: example Step 0 4 start N E E EC ECF (),p(),,, (C),p(C), 4,,E,E (),p(), (E),p(E) infinity, (F),p(F) infinity infinity 4,E 4,E 4,E E C F Link State

Link State Routing Table Computation dest C E F next C E F istance Vector istance Vector Routing router tells neighbors its distance to every router Communication between neighbors only ased on ellman Ford algorithm Computes shortest paths Each router maintains a distance table row for each possible destination column for each neighbor X (Y,Z) : distance from X to Y via Z Exchanges distance vector with neighbors istance vector: current least cost to each destination 6 Page 8

istance Vector istance Table: Example E () cost to destination via 7 E 8 C destination C 7 6 4 8 9 4 4 7 istance Vector istance Table to Routing Table E () cost to destination via Outgoing link to use, cost 4, destination C 7 6 8 9 4 destination C,,4 4, istance table Routing table 8 Page 9

istance Vector istance Vector Routing lgorithm Iterative: continues until no nodes exchange info. self terminating: no signal to stop synchronous: nodes need not exchange info/iterate in lock step! istributed: each node talks only with directly attached neighbors istance Table data structure Each node has its own Row for each possible destination Column for each directly attached neighbor to node Example: in node X, for dest. Y via neighbor Z: X (Y,Z) = = distance from X to Y, via Z as next hop Z c(x,z) + min { (Y,w)} w 9 istance Vector istance Vector Routing: Overview Iterative, asynchronous: each iteration caused by: Local link cost change Message from neighbor: its least cost path change from neighbor istributed: Each node notifies neighbors only when its least cost path to any destination changes neighbors then notify their neighbors if necessary Each node: wait for (change in local link cost or msg from neighbor) recompute distance table if least cost path to any dest has changed, notify neighbors 0 Page 0

istance Vector istance Vector lgorithm: Example X Y 7 Z X Z (Y,Z) = c(x,z) + min { (Y,w)} w = 7+ = 8 X Y (Z,Y) = c(x,y) + min { (Z,w)} w = + = istance Vector istance Vector lgorithm: Example X Y 7 Z Page

istance Vector Convergence of V Routing Router detects local link cost change Updates distance table If cost change in least cost path, notify neighbors 4 X Y 0 Z good news travels fast algorithm terminates istance Vector Problems with V Routing Link cost changes: Good news travels fast 60 Y ad news travels slow 4 Count to Infinity problem! X Z 0 algorithm continues on! 4 Page

istance Vector Count to Infinity Problem X Y Z istance Vector Fixes to Count to Infinity Problem Split horizon router never advertises the cost of a destination to a neighbor If this neighbor is the next hop to that destination Split horizon with poisonous reverse If X routes traffic to Z via Y, then X tells Y that its distance to Z is infinity Instead of not telling anything at all ccelerates convergence 6 Page

istance Vector Split Horizon with Poisoned Reverse If Z routes through Y to get to X : 60 Y Z tells Y its (Z s) distance to X is infinite (so Y 4 won t route to X via Z) X Z 0 algorithm terminates 7 Link State vs istance Vector Tells everyone about neighbors Controlled flooding to exchange link state ijkstra s algorithm Each router computes its own table May have oscillations Open Shortest Path First (OSPF) Tells neighbors about everyone Exchanges distance vectors with neighbors ellman Ford algorithm Each router s table is used by others May have routing loops Routing Information Protocol (RIP) 8 Page 4