Main Features. Table Computation. Packet Forwarding

Size: px
Start display at page:

Download "Main Features. Table Computation. Packet Forwarding"

Transcription

1 Routing Algorithms

2 Main Features Table Computation The routing tables must be computed when the network is initialized and must be brought up-to-date if the topology of the network changes Packet Forwarding When a packet is to be sent through the network, it must be forwarded using the routing tables

3 Performance Issues Correctness: The algorithm must deliver every packet to its ultimate destination Complexity: The algorithm for the computation of the tables must use as few messages, time, and storage as possible Efficiency:The algorithm must s packets through goodpaths Robustness: In the case of a topological change, the algorithm updates the routing tables appropriately Fairness:The algorithm must provide service to every user in the same degree

4 Good paths Minimum hop: The cost of a path is the number of hops Shortest path: Each channel has a non-negative cost the path cost is the sum of the cost of the edges. Packets are routed along shortest paths. Minimum delay/congestion:the bandwidth of a path is the minimum among the bandwidths of the channels on that path. Most robust path: Given the probability of packet drops in each channel, packets are to be routed along the most reliable paths.

5 Destination-based Forwarding // A packet with destination d was received or generated at node u ifd = u then deliver the packet locally elses the packet to table_lookup u (d)

6 begin Floyd-Warshall Algorithm S = Φ; forall u, v do if u = v then D[u, v] = 0 else if uv Ethen D[u, v] = w u,v else D[u, v] = ; while S V do // Loop invariant: u, v: D[u, v] = d S (u, v) begin pick wfrom V \S; forall u Vdo forall v Vdo D[u, v] = min{ D[u, v], D[u, w] + D[w, v] } S = S U { w } The algorithm computes the distance between each pair of nodes in O(N 3 ) steps

7 The simple distributed algorithm // For node u var S u D u : set of nodes; : array of weights; Nb u : array of nodes; begin S u = Φ; forall v V do if v = u then begin D u [v] = 0; Nb u [v] = udef else if v Neigh u then begin D u [v] = w u,v ; Nb u [v] = v else begin D u [v] = ; Nb u [v] = udef ;

8 The simple distributed algorithm contd while S u V do begin pick wfrom V \S u ; //All nodes must pick the same w if u = w then broadcast the table D w else receive the table D w forall v Vdo if D u [w] + D w [v] < D u [v] then begin D u [v] = D u [w] + D w [v] ; Nb u [v] = Nb u [w] ; S u = S u U { w }

9 Important property of the simple algorithm Let S and wbe given and suppose that (1) for all u, D u [w] = d S (u, w) and (2) if d S (u, w) < and u w, then Nb u [w] is the first channel of a shortest S-path to w Then the directed graph T w = (V w, E w ), where (u V w D u [w] < ) and (ux E w ( u w Nb u [w] = x)) is a tree rooted towards w.

10 Toueg s improvement Toueg s observation: A node ufor which D u [w] = at the start of the w-pivot round does not change its tables during the w-pivot round. If D u [w] = then D u [w] + D w [v] < D u [v] is false for every v. Consequently, only the nodes that belong to T need to receive w s Consequently, only the nodes that belong to T w need to receive w s table, and the broadcast operation can be done efficiently by sing the table D w only via the channels that belong to the tree T w

11 The Chandy-Misra Algorithm var D u [v 0 ] : weightinit ; Nb u [v 0 ] : node init udef; For node v 0 only: begin D v0 [v 0 ] = 0 ; forall w Neigh v0 do s mydist, v 0, 0 to w Processing a mydist, v 0, d message from neighbor w by u: { mydist, v 0, d M wu } begin receive mydist, v 0, d from w; if d + ω uw < D u [v 0 ] then begin D u [v 0 ] = d + ω uw ; Nb u [v 0 ] = w; forall x Neigh u do s mydist, v 0, D u [v 0 ] to x

12 The Netchange Algorithm Computes routing tables according to minimum-hop measure Assumptions: N1:The nodes know the size of the network (N) N2: The channels satisfy the FIFO assumption N3: Nodes are notified of failures and repairs of their adjacent channels N4:The cost of a path equals the number of channels in the path Requirements: R1.If the topology of the network remains constant after a finite number of topological changes, then the algorithm terminates after a finite number of steps. R2.When the algorithm terminates, the tables Nb u [v] satisfy (a) if v = u then Nb u [v] = local; (b) if a path from u to v uexists then Nb u [v] = w, where wis the first neighbor of uon a shortest path from u to v ; (c) if no path from uto vexists then Nb u [v] = udef.

13 The Netchange Algorithm var Neigh u : set of nodes ; // The neighbors of u D u : array of 0.. N; // D u [v] estimates d(u,v) Nb u : array of nodes ; // Nb u [v] is preferred neighbor for v ndis u : array of 0.. N ; // ndis u [w, v] estimates d(w,v) Initialization: begin forall w Neigh u, v Vdo ndis u [w, v] = N ; forall v Vdo begin D u [v] = N; Nb u [v] = udef ; D u [u] = 0 ; Nb u [u] = local; forall w Neigh u do s mydist, u, 0 to w

14 The Netchange Algorithm contd. Procedure Recompute( v ): begin if v = u then begin D u [v] = 0 ; Nb u [v] = local else begin // estimate distance to v ; d = 1 + min{ ndis u [w,v] : w Neigh u } ; if d < N then begin D u [v] = d ; Nb u [v] = wwith 1 + ndis u [w,v] = d else begin D u [v] = N; Nb u [v] = udef if D u [v] has changed then forall x Neigh u do s mydist, v, D u [v] to x

15 The Netchange Algorithm contd. Processing a mydist, v, d message from neighbor w: { A mydist, v, d is at the head of Q wv } begin receive mydist, v, d from w; ndis u [w,v] = d ; Recompute( v ) Upon failure of channel uw: begin receive fail, w ; Neigh u = Neigh u \{w} ; forall v Vdo Recompute( v ) Upon repair of channel uw: begin receive repair, w ; Neigh u = Neigh u U {w} ; forall v Vdo begin ndis u [w,v] = N ; s mydist, v, D u [v] to w

Routing algorithms. Jan Lönnberg, 51101M. October 2, Based on G. Tel: Introduction to Distributed Algorithms, chapter 4.

Routing algorithms. Jan Lönnberg, 51101M. October 2, Based on G. Tel: Introduction to Distributed Algorithms, chapter 4. Routing algorithms Jan Lönnberg, 51101M October 2, 2002 Based on G. Tel: Introduction to Distributed Algorithms, chapter 4. 1 Contents Introduction Destination-based routing Floyd-Warshall (single processor)

More information

A Scrutiny of Frederickson s Distributed Breadth-First Search Algorithm

A Scrutiny of Frederickson s Distributed Breadth-First Search Algorithm A Scrutiny of Frederickson s Distributed Breadth-First Search Algorithm Victor van der Veen Faculty of Computer Science Vrije Universiteit Amsterdam vvdveen@cs.vu.nl September 2008 Abstract Frederickson

More information

Minimum Spanning Trees

Minimum Spanning Trees Minimum Spanning Trees Problem A town has a set of houses and a set of roads. A road connects 2 and only 2 houses. A road connecting houses u and v has a repair cost w(u, v). Goal: Repair enough (and no

More information

DATA COMMUNICATOIN NETWORKING

DATA COMMUNICATOIN NETWORKING DATA COMMUNICATOIN NETWORKING Instructor: Ouldooz Baghban Karimi Course Book & Slides: Computer Networking, A Top-Down Approach By: Kurose, Ross Introduction Course Overview Basics of Computer Networks

More information

Shortest path problems

Shortest path problems Next... Shortest path problems Single-source shortest paths in weighted graphs Shortest-Path Problems Properties of Shortest Paths, Relaxation Dijkstra s Algorithm Bellman-Ford Algorithm Shortest-Paths

More information

Redes de Computadores. Shortest Paths in Networks

Redes de Computadores. Shortest Paths in Networks Redes de Computadores Shortest Paths in Networks Manuel P. Ricardo Faculdade de Engenharia da Universidade do Porto » What is a graph?» What is a spanning tree?» What is a shortest path tree?» How are

More information

Link State Rou.ng Reading: Sec.ons 4.2 and 4.3.4

Link State Rou.ng Reading: Sec.ons 4.2 and 4.3.4 Link State Rou.ng Reading: Sec.ons. and.. COS 6: Computer Networks Spring 0 Mike Freedman hep://www.cs.princeton.edu/courses/archive/spring/cos6/ Inside a router Goals of Today s Lecture Control plane:

More information

Shortest Paths. Nishant Mehta Lectures 10 and 11

Shortest Paths. Nishant Mehta Lectures 10 and 11 Shortest Paths Nishant Mehta Lectures 0 and Communication Speeds in a Computer Network Find fastest way to route a data packet between two computers 6 Kbps 4 0 Mbps 6 6 Kbps 6 Kbps Gbps 00 Mbps 8 6 Kbps

More information

from notes written mostly by Dr. Carla Savage: All Rights Reserved

from notes written mostly by Dr. Carla Savage: All Rights Reserved CSC 505, Fall 2000: Week 9 Objectives: learn about various issues related to finding shortest paths in graphs learn algorithms for the single-source shortest-path problem observe the relationship among

More information

Shortest Path Problem

Shortest Path Problem Shortest Path Problem CLRS Chapters 24.1 3, 24.5, 25.2 Shortest path problem Shortest path problem (and variants) Properties of shortest paths Algorithmic framework Bellman-Ford algorithm Shortest paths

More information

Link-State Routing OSPF

Link-State Routing OSPF CE Computer Networks Link-State Routing OSPF Behnam Momeni Computer Engineering Department Sharif University of Technology Acknowledgments: Lecture slides are from Computer networks course thought by Jennifer

More information

Object-oriented programming. and data-structures CS/ENGRD 2110 SUMMER 2018

Object-oriented programming. and data-structures CS/ENGRD 2110 SUMMER 2018 Object-oriented programming and data-structures CS/ENGRD 20 SUMMER 208 Lecture 3: Shortest Path http://courses.cs.cornell.edu/cs20/208su Graph Algorithms Search Depth-first search Breadth-first search

More information

Single Source Shortest Path

Single Source Shortest Path Single Source Shortest Path A directed graph G = (V, E) and a pair of nodes s, d is given. The edges have a real-valued weight W i. This time we are looking for the weight and the shortest path from s

More information

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

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition ELEC / COMP 177 Fall 01 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Homework #4 Due Thursday, Nov 1 st Project # Due Tuesday, Nov 6 th Later this semester: Homework #5 Due Thursday,

More information

Internet Technology. 08. Routing. Paul Krzyzanowski. Rutgers University. Spring CS Paul Krzyzanowski

Internet Technology. 08. Routing. Paul Krzyzanowski. Rutgers University. Spring CS Paul Krzyzanowski Internet Technolog 08. Routing Paul Kranoski Rutgers Universit Spring 06 March, 06 CS 0-06 Paul Kranoski Routing algorithm goal st hop router = source router last hop router = destination router router

More information

Lecture I: Shortest Path Algorithms

Lecture I: Shortest Path Algorithms Lecture I: Shortest Path Algorithms Dr Kieran T. Herley Department of Computer Science University College Cork October 201 KH (21/10/1) Lecture I: Shortest Path Algorithms October 201 1 / 28 Background

More information

Shortest Paths. Nishant Mehta Lectures 10 and 11

Shortest Paths. Nishant Mehta Lectures 10 and 11 Shortest Paths Nishant Mehta Lectures 0 and Finding the Fastest Way to Travel between Two Intersections in Vancouver Granville St and W Hastings St Homer St and W Hastings St 6 Granville St and W Pender

More information

CSC 4900 Computer Networks: Routing Algorithms

CSC 4900 Computer Networks: Routing Algorithms CSC 4900 Computer Networks: Routing Algorithms Professor Henry Carter Fall 2017 Last Time Subnets provide granularity for address assignment and ease management. What is 192.168.8.0? 192.168.32.0? 192.168.8.0:

More information

Last week: Breadth-First Search

Last week: Breadth-First Search 1 Last week: Breadth-First Search Set L i = [] for i=1,,n L 0 = {w}, where w is the start node For i = 0,, n-1: For u in L i : For each v which is a neighbor of u: If v isn t yet visited: - mark v as visited,

More information

Routing Algorithms. CS158a Chris Pollett Apr 4, 2007.

Routing Algorithms. CS158a Chris Pollett Apr 4, 2007. Routing Algorithms CS158a Chris Pollett Apr 4, 2007. Outline Routing Algorithms Adaptive/non-adaptive algorithms The Optimality Principle Shortest Path Routing Flooding Distance Vector Routing Routing

More information

Chapter 4: Network Layer

Chapter 4: Network Layer Chapter 4: Network Laer 4. Introduction 4. Virtual circuit and datagram networks 4. What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing ICMP IPv6 4. Routing algorithms Link

More information

CS350: Data Structures Dijkstra s Shortest Path Alg.

CS350: Data Structures Dijkstra s Shortest Path Alg. Dijkstra s Shortest Path Alg. James Moscola Department of Engineering & Computer Science York College of Pennsylvania James Moscola Shortest Path Algorithms Several different shortest path algorithms exist

More information

Communication Networks I December 4, 2001 Agenda Graph theory notation Trees Shortest path algorithms Distributed, asynchronous algorithms Page 1

Communication Networks I December 4, 2001 Agenda Graph theory notation Trees Shortest path algorithms Distributed, asynchronous algorithms Page 1 Communication Networks I December, Agenda Graph theory notation Trees Shortest path algorithms Distributed, asynchronous algorithms Page Communication Networks I December, Notation G = (V,E) denotes a

More information

Lecture 6: Shortest distance, Eulerian cycles, Maxflow

Lecture 6: Shortest distance, Eulerian cycles, Maxflow DD2458, Problem Solving and Programming Under Pressure Lecture 6: Shortest distance, Eulerian cycles, Maxflow Date: 2008-10-06 Scribe(s): Adam Kull, David Vuorio Lecturer: Douglas Wikström 1 Shortest path

More information

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP Chapter 4: outline 4. introduction 4. irtual circuit and datagram networks 4. what s inside a router 4.4 IP: Internet Protocol datagram format IP4 addressing ICMP IP6 4.5 routing algorithms link state

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 56: Adanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 0 Fall 07 A-term Some slides are originall the course materials of the tetbook Computer Networking:

More information

CS200: Graphs. Rosen Ch , 9.6, Walls and Mirrors Ch. 14

CS200: Graphs. Rosen Ch , 9.6, Walls and Mirrors Ch. 14 CS200: Graphs Rosen Ch. 9.1-9.4, 9.6, 10.4-10.5 Walls and Mirrors Ch. 14 Trees as Graphs Tree: an undirected connected graph that has no cycles. A B C D E F G H I J K L M N O P Rooted Trees A rooted tree

More information

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Shortest Paths Date: 10/13/15

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Shortest Paths Date: 10/13/15 600.363 Introduction to Algorithms / 600.463 Algorithms I Lecturer: Michael Dinitz Topic: Shortest Paths Date: 10/13/15 14.1 Introduction Today we re going to talk about algorithms for computing shortest

More information

Dijkstra s Algorithm. Dijkstra s algorithm is a natural, greedy approach towards

Dijkstra s Algorithm. Dijkstra s algorithm is a natural, greedy approach towards CPSC-320: Intermediate Algorithm Design and Analysis 128 CPSC-320: Intermediate Algorithm Design and Analysis 129 Dijkstra s Algorithm Dijkstra s algorithm is a natural, greedy approach towards solving

More information

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

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on receiving side, delivers segments to transport layer network layer protocols in every

More information

Classical Shortest-Path Algorithms

Classical Shortest-Path Algorithms DISTANCE PROBLEMS IN NETWORKS - THEORY AND PRACTICE Classical Shortest-Path Algorithms Nesrine Damak October 10, 2010 Abstract In this work, we present four algorithms for the shortest path problem. The

More information

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

Announcement. Project 2 extended to 2/20 midnight Project 3 available this weekend Homework 3 available today, will put it online Announcement Project 2 extended to 2/20 midnight Project 3 available this weekend Homework 3 available today, will put it online Outline Introduction and Network Service Models Routing Principles Link

More information

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

CS4450. Computer Networks: Architecture and Protocols. Lecture 11 Rou+ng: Deep Dive. Spring 2018 Rachit Agarwal CS4450 Computer Networks: Architecture and Protocols Lecture 11 Rou+ng: Deep Dive Spring 2018 Rachit Agarwal 2 Goals for Today s Lecture Learning about Routing Protocols Link State (Global view) Distance

More information

Lecture 11: Analysis of Algorithms (CS ) 1

Lecture 11: Analysis of Algorithms (CS ) 1 Lecture 11: Analysis of Algorithms (CS583-002) 1 Amarda Shehu November 12, 2014 1 Some material adapted from Kevin Wayne s Algorithm Class @ Princeton 1 2 Dynamic Programming Approach Floyd-Warshall Shortest

More information

CSCE 463/612 Networks and Distributed Processing Spring 2017

CSCE 463/612 Networks and Distributed Processing Spring 2017 CSCE 46/6 Networks and Distributed Processing Spring 07 Network Layer III Dmitri Loguinov Texas A&M University April, 07 Original slides copyright 996-004 J.F Kurose and K.W. Ross Homework #4 Grading Default

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 40 Data and Computer Communications Networks Network Layer NAT, Routing, Link State, Distance Vector Prof. Lina Battestilli Fall 07 Chapter 4 Outline Network Layer: Data Plane 4. Overview of Network

More information

The Shortest Path Problem

The Shortest Path Problem The Shortest Path Problem 1 Shortest-Path Algorithms Find the shortest path from point A to point B Shortest in time, distance, cost, Numerous applications Map navigation Flight itineraries Circuit wiring

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 56: Adanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 0 Fall 06 A-term Some slides are originall from the course materials of the tetbook Computer

More information

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

Routing Algorithms. Daniel Zappala. CS 460 Computer Networking Brigham Young University Routing Algorithms Daniel Zappala CS 460 Computer Networking Brigham Young University Routing 2/20 How does the Internet determine which path to use from the source to the destination? Challenges need

More information

Intra-domain Routing

Intra-domain Routing Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm CS 640 1 Goal Build router forwarding tables in an internetwork using intra-domain routing protocols High level approach Distributed

More information

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2018 CSCD 330 Network Programming Spring 018 Lecture 16 Network Layer Routing Protocols Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 017 1 Network

More information

CSCD 330 Network Programming Spring 2017

CSCD 330 Network Programming Spring 2017 CSCD 330 Network Programming Spring 017 Lecture 16 Network Layer Routing Protocols Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 1996-007

More information

COMP251: Single source shortest paths

COMP251: Single source shortest paths COMP51: Single source shortest paths Jérôme Waldispühl School of Computer Science McGill University Based on (Cormen et al., 00) Problem What is the shortest road to go from one city to another? Eample:

More information

Homework 3 Discussion

Homework 3 Discussion Homework 3 Discussion Address Resolution Protocol (ARP) Data Link Layer Network Layer Data Link Layer Network Layer Protocol Data Unit(PDU) Frames Packets Typical Device Switch/Bridge Router Range Local

More information

Communication network problem. How the routers need to store and forward packets as in Internet/internets/intranets on a hop-by-hop basis.

Communication network problem. How the routers need to store and forward packets as in Internet/internets/intranets on a hop-by-hop basis. Graph Algorithms. A graph portrays the topology of a distributed system (both in 2-D and in 3-D). A special area of distributed systems algorithm is Graph algorithms. Typical examples: Communication network

More information

CMPSC 250 Analysis of Algorithms Spring 2018 Dr. Aravind Mohan Shortest Paths April 16, 2018

CMPSC 250 Analysis of Algorithms Spring 2018 Dr. Aravind Mohan Shortest Paths April 16, 2018 1 CMPSC 250 Analysis of Algorithms Spring 2018 Dr. Aravind Mohan Shortest Paths April 16, 2018 Shortest Paths The discussion in these notes captures the essence of Dijkstra s algorithm discussed in textbook

More information

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

CMPE 80N: Introduction to Networking and the Internet. Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 20 CMPE 80N: Introduction to Networking and the Internet Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 0 Announcements Final exam: June 7 th at 4pm. Comprehensive. Photo id required.

More information

Graph Algorithms. Many problems in networks can be modeled as graph problems.

Graph Algorithms. Many problems in networks can be modeled as graph problems. Graph Algorithms Graph Algorithms Many problems in networks can be modeled as graph problems. - The topology of a distributed system is a graph. - Routing table computation uses the shortest path algorithm

More information

Routing Algorithms : Fundamentals of Computer Networks Bill Nace

Routing Algorithms : Fundamentals of Computer Networks Bill Nace Routing Algorithms 4-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Recall from Last Time Routing Algorithm

More information

Introduction Single-source shortest paths All-pairs shortest paths. Shortest paths in graphs

Introduction Single-source shortest paths All-pairs shortest paths. Shortest paths in graphs Shortest paths in graphs Remarks from previous lectures: Path length in unweighted graph equals to edge count on the path Oriented distance (δ(u, v)) between vertices u, v equals to the length of the shortest

More information

Graphs. Part I: Basic algorithms. Laura Toma Algorithms (csci2200), Bowdoin College

Graphs. Part I: Basic algorithms. Laura Toma Algorithms (csci2200), Bowdoin College Laura Toma Algorithms (csci2200), Bowdoin College Undirected graphs Concepts: connectivity, connected components paths (undirected) cycles Basic problems, given undirected graph G: is G connected how many

More information

WAN Technology and Routing

WAN Technology and Routing PS 60 - Network Programming WN Technology and Routing Michele Weigle epartment of omputer Science lemson University mweigle@cs.clemson.edu March, 00 http://www.cs.clemson.edu/~mweigle/courses/cpsc60 WN

More information

FINDINGS ON A LEAST HOP (s) PATH USING BELLMAN-FORD ALGORITHM

FINDINGS ON A LEAST HOP (s) PATH USING BELLMAN-FORD ALGORITHM FINDINGS ON A EAST HOP (s) PATH USING BEMAN-FORD AGORITHM NIK SHAHIDAH AFIFI MD TAUJUDDIN MOHD HEMY ABD WAHAB SITI ZARINA MOHD MUJI ZARINA TUKIRAN FIRST REGIONA CONFERENCE ON COMPUTATIONA SCIENCE AND TECHNOOGIES

More information

Interplay between routing, forwarding

Interplay between routing, forwarding Chapter 4: outline 4. introduction 4. virtual circuit and datagram networks 4. what s inside a router 4.4 IP: Internet Protocol datagram format IPv4 addressing ICMP IPv6 4.5 routing algorithms link state

More information

Algorithms and Data Structures

Algorithms and Data Structures Algorithms and Data Structures Graphs : Shortest Paths Marius Kloft Content of this Lecture Single-Source-Shortest-Paths: Dijkstra s Algorithm Single-Source-Single-Target All-Pairs Shortest Paths Transitive

More information

Review of Graph Theory. Gregory Provan

Review of Graph Theory. Gregory Provan Review of Graph Theory Gregory Provan Overview Need for graphical models of computation Cloud computing Data centres Telecommunications networks Graph theory Graph Models for Cloud Computing Integration

More information

Lecture 4 Wide Area Networks - Routing

Lecture 4 Wide Area Networks - Routing DATA AND COMPUTER COMMUNICATIONS Lecture 4 Wide Area Networks - Routing Mei Yang Based on Lecture slides by William Stallings 1 ROUTING IN PACKET SWITCHED NETWORK key design issue for (packet) switched

More information

Shortest Paths: Basics. Algorithms and Networks 2016/2017 Johan M. M. van Rooij Hans L. Bodlaender

Shortest Paths: Basics. Algorithms and Networks 2016/2017 Johan M. M. van Rooij Hans L. Bodlaender Shortest Paths: Basics Algorithms and Networks 2016/2017 Johan M. M. van Rooij Hans L. Bodlaender 1 Shortest path problem(s) Undirected single-pair shortest path problem Given a graph G=(V,E) and a length

More information

Routing Protocols and the IP Layer

Routing Protocols and the IP Layer Routing Protocols and the IP Layer CS244A Review Session 2/0/08 Ben Nham Derived from slides by: Paul Tarjan Martin Casado Ari Greenberg Functions of a router Forwarding Determine the correct egress port

More information

Routing. Information Networks p.1/35

Routing. Information Networks p.1/35 Routing Routing is done by the network layer protocol to guide packets through the communication subnet to their destinations The time when routing decisions are made depends on whether we are using virtual

More information

Computer Networking. Rou1ng Algorithms. Rou1ng Algorithms. Interplay between rou1ng, forwarding. routing algorithm

Computer Networking. Rou1ng Algorithms. Rou1ng Algorithms. Interplay between rou1ng, forwarding. routing algorithm Computer Networking Interpla between roung, forwarding routing algorithm local forwarding table header alue output link 000 00 0 00 alue in arriing packet s header 0 Graph abstracon Graph: G = (N,E) u

More information

Retiming. Adapted from: Synthesis and Optimization of Digital Circuits, G. De Micheli Stanford. Outline. Structural optimization methods. Retiming.

Retiming. Adapted from: Synthesis and Optimization of Digital Circuits, G. De Micheli Stanford. Outline. Structural optimization methods. Retiming. Retiming Adapted from: Synthesis and Optimization of Digital Circuits, G. De Micheli Stanford Outline Structural optimization methods. Retiming. Modeling. Retiming for minimum delay. Retiming for minimum

More information

Dynamic Programming II

Dynamic Programming II Lecture 11 Dynamic Programming II 11.1 Overview In this lecture we continue our discussion of dynamic programming, focusing on using it for a variety of path-finding problems in graphs. Topics in this

More information

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

Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1 Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 22-3 UNICAST ROUTING PROTOCOLS 22.2 A routing

More information

Chapter 4: Network Layer

Chapter 4: Network Layer Chapter 4: Network Layer Chapter goals: understand principles behind layer services: routing (path selection) dealing with scale how a router works advanced topics: IPv6, mobility instantiation and implementation

More information

CS 421: COMPUTER NETWORKS SPRING FINAL May 21, minutes

CS 421: COMPUTER NETWORKS SPRING FINAL May 21, minutes CS 421: COMPUTER NETWORKS SPRING 2015 FINAL May 21, 2015 150 minutes Name: Student No: Show all your work very clearly. Partial credits will only be given if you carefully state your answer with a reasonable

More information

Lecture #7. 1 Introduction. 2 Dijkstra s Correctness. COMPSCI 330: Design and Analysis of Algorithms 9/16/2014

Lecture #7. 1 Introduction. 2 Dijkstra s Correctness. COMPSCI 330: Design and Analysis of Algorithms 9/16/2014 COMPSCI 330: Design and Analysis of Algorithms 9/16/2014 Lecturer: Debmalya Panigrahi Lecture #7 Scribe: Nat Kell 1 Introduction In this lecture, we will further examine shortest path algorithms. We will

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Layer CPSC 335 Data Communication Systems Readings: 4.4.3, 4.4.4, 4.5, 4.5.1 David Nguyen Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March

More information

Total Points: 60. Duration: 1hr

Total Points: 60. Duration: 1hr CS5800 : Algorithms Fall 015 Nov, 015 Quiz Practice Total Points: 0. Duration: 1hr 1. (7,8) points Binary Heap. (a) The following is a sequence of elements presented to you (in order from left to right):

More information

Routing in packet-switching networks

Routing in packet-switching networks Routing in packet-switching networks Circuit switching vs. Packet switching Most of WANs based on circuit or packet switching Circuit switching designed for voice Resources dedicated to a particular call

More information

PATH FINDING AND GRAPH TRAVERSAL

PATH FINDING AND GRAPH TRAVERSAL GRAPH TRAVERSAL PATH FINDING AND GRAPH TRAVERSAL Path finding refers to determining the shortest path between two vertices in a graph. We discussed the Floyd Warshall algorithm previously, but you may

More information

Data and Computer Communications. Chapter 12 Routing in Switched Networks

Data and Computer Communications. Chapter 12 Routing in Switched Networks Data and Computer Communications Chapter 1 Routing in Switched Networks Routing in Packet Switched Network Select route between end nodes Characteristics required: Correctness Simplicity Robustness Stability

More information

Initialization: Loop until all nodes in N

Initialization: Loop until all nodes in N Routing Routing lgorithm classification Routing protocol Goal: determine good path (sequence of routers) thru netork from source to dest. Graph abstraction for routing s: graph nodes are routers graph

More information

Title. Ferienakademie im Sarntal Course 2 Distance Problems: Theory and Praxis. Nesrine Damak. Fakultät für Informatik TU München. 20.

Title. Ferienakademie im Sarntal Course 2 Distance Problems: Theory and Praxis. Nesrine Damak. Fakultät für Informatik TU München. 20. Title Ferienakademie im Sarntal Course 2 Distance Problems: Theory and Praxis Nesrine Damak Fakultät für Informatik TU München 20. September 2010 Nesrine Damak: Classical Shortest-Path Algorithms 1/ 35

More information

2.3 Optimal paths. E. Amaldi Foundations of Operations Research Politecnico di Milano 1

2.3 Optimal paths. E. Amaldi Foundations of Operations Research Politecnico di Milano 1 . Optimal paths E. Amaldi Foundations of Operations Research Politecnico di Milano Optimal (minimum or maximum) paths have a wide range of applications: Google maps, GPS navigators planning and management

More information

Chapter 24. Shortest path problems. Chapter 24. Shortest path problems. 24. Various shortest path problems. Chapter 24. Shortest path problems

Chapter 24. Shortest path problems. Chapter 24. Shortest path problems. 24. Various shortest path problems. Chapter 24. Shortest path problems Chapter 24. Shortest path problems We are given a directed graph G = (V,E) with each directed edge (u,v) E having a weight, also called a length, w(u,v) that may or may not be negative. A shortest path

More information

Link State Rou.ng Reading: Sec.ons 4.2 and 4.3.4

Link State Rou.ng Reading: Sec.ons 4.2 and 4.3.4 Link State Rou.ng Reading: Sec.ons. and.. COS 6: Computer Networks Spring 009 (MW :0 :50 in COS 05) Michael Freedman Teaching Assistants: WyaN Lloyd and Jeff Terrace hnp://www.cs.princeton.edu/courses/archive/spring09/cos6/

More information

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

CS 43: Computer Networks. 23: Routing Algorithms November 14, 2018 S 3: omputer Networks 3: Routing lgorithms November, 08 Last class NT: Network ddress Translators: NT is mostly bad, but in some cases, it s a necessary evil. IPv6: Simpler, faster, better Tunneling: IPv6

More information

Graph Algorithms (part 3 of CSC 282),

Graph Algorithms (part 3 of CSC 282), Graph Algorithms (part of CSC 8), http://www.cs.rochester.edu/~stefanko/teaching/10cs8 1 Schedule Homework is due Thursday, Oct 1. The QUIZ will be on Tuesday, Oct. 6. List of algorithms covered in the

More information

Chapter 6. Dynamic Programming

Chapter 6. Dynamic Programming Chapter 6 Dynamic Programming CS 573: Algorithms, Fall 203 September 2, 203 6. Maximum Weighted Independent Set in Trees 6..0. Maximum Weight Independent Set Problem Input Graph G = (V, E) and weights

More information

2.3 Optimal paths. Optimal (shortest or longest) paths have a wide range of applications:

2.3 Optimal paths. Optimal (shortest or longest) paths have a wide range of applications: . Optimal paths Optimal (shortest or longest) paths have a wide range of applications: Google maps, GPS navigators planning and management of transportation, electrical and telecommunication networks project

More information

An Axiomatic Approach to Routing. Omer Lev, Moshe Tennenholtz and Aviv Zohar TARK 2015

An Axiomatic Approach to Routing. Omer Lev, Moshe Tennenholtz and Aviv Zohar TARK 2015 An Axiomatic Approach to Routing Omer Lev, Moshe Tennenholtz and Aviv Zohar TARK 205 What is routing? A network of connected nodes with edge weights 5 3 2 3 4 What is routing? A network of connected nodes

More information

CHAPTER 13 GRAPH ALGORITHMS

CHAPTER 13 GRAPH ALGORITHMS CHAPTER 13 GRAPH ALGORITHMS SFO LAX ACKNOWLEDGEMENT: THESE SLIDES ARE ADAPTED FROM SLIDES PROVIDED WITH DATA STRUCTURES AND ALGORITHMS IN C++, GOODRICH, TAMASSIA AND MOUNT (WILEY 00) AND SLIDES FROM NANCY

More information

4/8/11. Single-Source Shortest Path. Shortest Paths. Shortest Paths. Chapter 24

4/8/11. Single-Source Shortest Path. Shortest Paths. Shortest Paths. Chapter 24 /8/11 Single-Source Shortest Path Chapter 1 Shortest Paths Finding the shortest path between two nodes comes up in many applications o Transportation problems o Motion planning o Communication problems

More information

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

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding 0/6/08 Interpla between routing and forwarding Routing Algorithms Link State Distance Vector BGP routing routing algorithm local forwarding table header value output link 000 00 0 00 value in arriving

More information

Interplay tra routing e forwarding

Interplay tra routing e forwarding Interpla tra routing e forwarding routing algorithm local forwarding table header value output link 000 00 0 00 value in arriving packet s header 0 Network Laer 4- Grafi Grafo: G = (N,E) u v w N = insieme

More information

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

William Stallings Data and Computer Communications 7 th Edition. Chapter 12 Routing William Stallings Data and Computer Communications 7 th Edition Chapter 12 Routing Routing in Circuit Switched Network Many connections will need paths through more than one switch Need to find a route

More information

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting Outline Routing Fundamentals of Computer Networks Guevara Noubir Introduction Broadcasting and Multicasting Shortest Path Unicast Routing Link Weights and Stability F2003, CSG150 Fundamentals of Computer

More information

Alternate Routing Diagram

Alternate Routing Diagram 68 0 Computer Networks Chapter Routing Routing in Circuit Switched Network Many connections will need paths through more than one switch Need to find a route Efficiency Resilience Public telephone switches

More information

The Open System Interconnect model

The Open System Interconnect model The Open System Interconnect model Telecomunicazioni Undergraduate course in Electrical Engineering University of Rome La Sapienza Rome, Italy 2007-2008 1 Layered network design Data networks are usually

More information

Carnegie Mellon Computer Science Department Spring 2015 Midterm Exam

Carnegie Mellon Computer Science Department Spring 2015 Midterm Exam Carnegie Mellon Computer Science Department. 15-744 Spring 2015 Midterm Exam Name: Andrew ID: INSTRUCTIONS: There are 7 pages (numbered at the bottom). Make sure you have all of them. Please write your

More information

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI. Department of Computer Science and Engineering CS6301 PROGRAMMING DATA STRUCTURES II

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI. Department of Computer Science and Engineering CS6301 PROGRAMMING DATA STRUCTURES II DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Computer Science and Engineering CS6301 PROGRAMMING DATA STRUCTURES II Anna University 2 & 16 Mark Questions & Answers Year / Semester: II / III

More information

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

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 CS 457 Networking and the Internet Fall 2016 Indrajit Ray What is Routing A famous quotation from RFC 791 A name indicates what we seek An address indicates where it is A route indicates how we get there

More information

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

CS 457 Networking and the Internet. Shortest-Path Problem. Dijkstra s Shortest-Path Algorithm 9/29/16. Fall 2016 9/9/6 S 7 Networking and the Internet Fall 06 Shortest-Path Problem Given: network topology with link costs c(x,y): link cost from node x to node y Infinity if x and y are not direct neighbors ompute:

More information

Chapter 2 Distributed Graph Algorithms

Chapter 2 Distributed Graph Algorithms Chapter 2 Distributed Graph Algorithms This chapter addresses three basic graph problems encountered in the context of distributed systems. These problems are (a) the computation of the shortest paths

More information

Distributed Algorithms 6.046J, Spring, 2015 Part 2. Nancy Lynch

Distributed Algorithms 6.046J, Spring, 2015 Part 2. Nancy Lynch Distributed Algorithms 6.046J, Spring, 2015 Part 2 Nancy Lynch 1 This Week Synchronous distributed algorithms: Leader Election Maximal Independent Set Breadth-First Spanning Trees Shortest Paths Trees

More information

Principles of Wireless Sensor Networks

Principles of Wireless Sensor Networks Principles of Wireless Sensor Networks https://www.kth.se/social/course/el2745/ Lecture 6 Routing Carlo Fischione Associate Professor of Sensor Networks e-mail:carlofi@kth.se http://www.ee.kth.se/ carlofi/

More information

Shortest Paths. CSE 373 Data Structures Lecture 21

Shortest Paths. CSE 373 Data Structures Lecture 21 Shortest Paths CSE 7 Data Structures Lecture Readings and References Reading Section 9., Section 0.. Some slides based on: CSE 6 by S. Wolfman, 000 //0 Shortest Paths - Lecture Path A path is a list of

More information

Chapter 25: All-Pairs Shortest-Paths

Chapter 25: All-Pairs Shortest-Paths Chapter : All-Pairs Shortest-Paths When no negative edges Some Algorithms Using Dijkstra s algorithm: O(V ) Using Binary heap implementation: O(VE lg V) Using Fibonacci heap: O(VE + V log V) When no negative

More information

ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE! 1. Link state flooding topology information finding the shortest paths (Dijkstra)

ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE! 1. Link state flooding topology information finding the shortest paths (Dijkstra) ontents ÉOL POLYTHNIQU ÉÉRL LUSNN! 1. Link state flooding topology information finding the shortest paths (ijkstra)! 2. Hierarchical routing with areas! 3. OSP Link State Routing database modelling neighbor

More information