Lecture 2: Routing algorithms

Size: px
Start display at page:

Download "Lecture 2: Routing algorithms"

Transcription

1 DD490 p4 0 Lecture : Routing algorithms Shortest path, Widest path, and constrained routing Olof Hagsand KTH CSC This lecture contains new material for 0.

2 Graphs vs networks Algorithms are usually defined on graphs whereas protocols work on networks Graphs have nodes and edges whereas networks have interfaces, boradcast links, addresses, hierarchical layering, etc.

3 N4 N RT N RT RT N N N RT RT Ia 7 RT6 N4 Network example N5 Ib RT0 RT7 N H 0 RT9 RT N9 RT N8 RT8 N6 4 N0 RFC 8 fig N7 Note that the figure is taken from the OSPF RFC. The broadcast links (N, N, N) are denoted somewhat unusually by ellipses. The dotted links denote exernal links (outside the OSPF routing domain). Note that there is one host H. Note also that the link metrics are asymmetrical.

4 N4 N RT N 0 RT4 8 8 RT N N N RT RT RT6 7 N4 Ib 7 (Directed) graph example Ia 5 N5 N H 0 RT9 0 RT 0 N9 0 RT 5 0 N8 RT N6 0 RT8 9 RT7 N0 4 N7 4 Note the modelling of the broadcast links, such as N. Such a link is modelled by adding a virtual network node (eg N) to which the nodes connect (since all edges connect only two nodes). Since this node is virtual, there is no physical corresponding node, the cost of exiting the node is set to 0. In many protocols such a virtual node (eg N) 'belongs' to a router in the sense that the router announces the network information of the virtual node. Such a router is called the 'designated' router of the network. For example, RT is the designated router of N.

5 Example graph A B C D E F 5 Simple network with symmetric link metrics. The link with metric is a typical backup path that normally is not used unless an error occurs.

6 Shortest Path First (SPF) Given link metrics (weights) on each individual link Find the path (sequence of links) where the sum of the metrics of all links (cumulative cost) is lowest ECMP: A set of path with the least cost B D A F C E 6

7 Bellman-Ford shortest path If it is possible to get from entity i to entity j directly, then a cost, d(i,j), is associated with the hop between i and j. The cost is infinite if i and j are not immediate neighbors. Let D(i,j) represent the metric of the best route from entity i to entity j. Then, the best metric is described by: D i, i =0, for all i. D i, j =min[d i, k D k, j ], otherwise. k j The algorithm: D 0 i,i =0, for alli. D 0 i, j =, otherwise. For h=0 to N- do: D h i,i =0, for alli. D h i, j =min[d i, k D h k, j ], otherwise.. k i In words: Entity i gets estimates from neighbors k of their distances to the destination j. Add d(i,k) to each of the numbers. This is the cost of traversing the network between i and k. Compare the values from all of its neighbors and pick the smallest. 7

8 Exercise: Bellman-Ford d(i,j) A B C D E F A B C D E F h D(A,F) D(B,F) D(C,F) D(D,F) D(E,F) The example network in earlier slide is used.

9 The distributed algorithm Keep a table with an entry for each destination N in the network. Store the distance D and next-hop G for each N in the table. Periodically, send the table to all neighbors (the distancevector). For each update that comes in from neighbor G' (to N with a new distance): Add the cost of the link to G' to the new distance to get D'. Replace the route if D' < D. If G = G', always replace the route. 9

10 Dijkstra's shortest path first From the link-state database, compute a shortest path delivery tree using a permanent set S and a tentative set Q:.Define the root of the tree: the router.assign a cost of 0 to this node and make it the first permanent node..examine each neighbor node of the last permanent node. 4.Assign a cumulative cost to each node and make it tentative. 5.Among the list of tentative nodes: Find the node with the smallest cumulative cost and make it permanent. If a node can be reached from more than one direction, select the direction with the smallest cumulative cost. 6.Repeat steps to 5 until every node is permanent. 0 If you are unsure about Dijkstra, go through the extra material including an example on the web-site

11 Dijkstra pseudo-code function Dijkstra(Graph, source): for each vertex v in Graph: // Initializations dist[v] := infinity ; // Unknown distance function from source to v previous[v] := undefined ; // Previous node in optimal path from source dist[source] := 0 ; // Distance from source to source Q := the set of all nodes in Graph ; // All nodes in the graph are unoptimized - thus are in Q while Q is not empty: // The main loop u := vertex in Q with smallest dist[] ; remove u from Q ; for each neighbor v of u: // where v has not yet been removed from Q. alt := dist[u] + dist_between(u, v) ; if alt < dist[v]: // Relax (u,v,a) dist[v] := alt ; previous[v] := u ; (from Wikipedia)

12 Spanning-Tree Protocol In Layer networking (eg Ethernet), there is no 'routing' of individual flows. Instead, a single tree is constructed to avoid loops. This spanning-tree is a shortest path tree to all destinations from a single root. All traffic then follows this single tree, using source address learning: Traffic is initially flooded throughout the tree (up and down the branches), but the nodes learn the location (incoming port) of the sources by inspecting the source address in the frames. Spanning-tree is used in Ethernets including Metro-Ethernets being built today. Very large networks (even global) are being built where spanning-tree is the mechanism used to detect loops.

13 Spanning-tree algorithm An ID number is assigned to each bridge, and a cost to each port. Process of finding the spanning tree: The bridges choose a bridge to be the root bridge of the tree by finding the bridge with the smallest ID. Each bridge determines its root port, the port that has the least root path cost to the root. The root path cost is the accumulated cost of the path from the port to the root. One designated bridge is chosen for each segment Select ports to be included in the spanning tree (root port plus designated ports) Data traffic is forwarded only to and from ports selected for inclusion in the spanning tree STP (Spanning Tree Protocol) is not a routing protocol since it does not identify individual routes. Instead, it tranforms a general graph to a tree, and uses learning (flood and learn) to distribute information.

14 Spanning-tree exercise How does traffic go between hosts A and B if learning bridges X, Y, Z are root bridges, respectively? X A Y Z 4 B root port designated blocked/listening/forwarding 4 For generic solution, use priority vectors. Each bridge forms a priority vector on each port/segment it is connected to and sends it out on that port. The lowest priority vector 'succeeds' in the following sense: () Segment: the bridge sending the lowest priority vector on a segment becomes the designated bridge(port) of that segment; () Bridge: among the priority vectors received on all ports on a bridge, the bridge selects port where the lowest was received and assigns that as the root bridge (if not root itself). Priority vector simple form: <rootid, metric, bridgeid>, where: - rootid: id of elected root bridge - metric: accumulated path metric frm sending bridge to root - bridgeid: id of sending bridge Priority vector complete form: <rootid, metric, bridgeid, srcport, dstport> where - srcport: port number of sending port (of the priority vector) - dstport: port number where the priority vector is received. The complete form is only used in cases where there are several ports on the same bridge on a segment.

15 Minimizing load by adjusting link metric SPF may not utilize a given network well. An operator may be interested in using the network resources better This is called Traffic Engineering A common metric is to minimize load on individual links, i.e., to spread traffic among several links Example: Traffic in the network is as follows: A->E Mb/s D->E Mb/s How does traffic flow given unary weights? What is the optimal solution (using load-balancing)? Can you modify weights(link metrics) to reach the optimal solution? B C A D E 5 Assume equal bandwidth on all links. With unary weights, the D->E link has 4Mb/s The minimal load criteria is to have a smallest maximum load in the network. With generic load-balancing, the optimal solution would be to send: - Mb/s A->B->C->E - Mb/s A->D->E - Mb/s D->E The maximum load on an individual link is then Mb/s. By modifying weights (eg set weight of A->D to ) and ECMP, all you can get is: -.5 Mb/s A->B->C->E -.5 Mb/s A->D->E - Mb/s D->E The maximum load on an individual link is.5mb/s. Thus the optimal solution is not obtainable with ECMP and weight adjustment

16 Adjusting weights - elaborate exercise Flows: A -> D, A -> E, C -> D, C -> E Each flow 5Mb/s What is the SPF solution? Adjust weights to make the load optimal (smallest max) of at most 0Mb/s 0 B D 5 A C E From A. Gunnar, Aspects of proactive traffic engineering in IP networks, PhD thesis, Feb 0 6 In the solution above, all flows pass via C and E. The best solution is to make the flows from A pass via B and D instead, while keeping the flows from C via E. This can be made by heightening the cost between A-> C to for example 0, and lowering the cost from B -> D to. If you are not careful, though, the traffic from C to D may start leaking over B. Consider also if there are further constraints between other routers, and you see that this is difficult to do, at least intuitively.

17 Widest path first Both Bellman-Ford and Dijkstra considers the shortest path based on an additive scalar metrics. That is, the shortest path cost is computed by adding all individual link metrics But suppose we need to optimize for bandwidth or load (smallest largest load) of a single link. We should then consider the path with the highest bandwidth / lowest load. Often used: available bandwidth Can be used in conjunction with resource reservation protocols to solve a dynamic traffic engineering problem We may then look at widest path computation It is easy to extend Dijkstra (or Bellman-Ford) with a widestpath computation rather than shortest path. 7 Dijkstra is extended as follows Instead of summing all individual link costs and taking the minimum of all possible paths, The minimum link metric of all possible paths is computed and their maximum selected

18 Widest path first: exercise Numbers denote width: load or bandwidth What is the widest path from A -> E? B bw:40 D A bw:0 bw:0 bw:5 bw:50 bw:0 C bw:0 E 8 The widest path is A->B->D->E. Its minimal width is 0, which is higher than all other paths from A to E.

19 Constrained Shortest Path First In traffic engineering a generalization of SPF is normally used: Constrained Shortest Path (CSPF) CSPF is implemented along with MPLS Introduce a boolean condition which may remove links, and compute SPF on that. Examples of conditions: Administrative groups (eg include only gold and silver links) Available bandwidth (No link avbw < min avbw) Available bandwidth ratio (No link utilization > max %) Delay bonds (No path delays > max delay) Hop counts (No path hops > max hc) Resiliency (No common network element w primary path) 9 The constraints can be provided with elaborate configuration syntax, but often general constraints are not implemented. Typical useful constraints are available bandwidth and resilience.

20 CSPF Example : Available bw A->E with available bandwidth >= 0? A bw:0 B bw:0 bw:40 bw:5 D bw:50 bw:0 C bw:0 E 0 Note: dashed lines do not meet the constraint (bw >= 0) and are therefore removed from the network substrate. Answer: A->B->D->E. Note that this happens to be the same result as the widest path, but this is not generally so, since the underlying protocol is still SPF, not WPF.

21 CSPF Example : Resiliency Given primary SPF path A->B->E, form a secondary path with resilience constraint A->E This is used in MPLS to compute secondary paths used in fail-over. B D A C E The primary path is given by the dashed lines, and can therefore not be used by the resilient path. The path A->B->E is therefore removed from the network substrate. Answer: the secondary path is A->C->E CSPF with resiliency constraint is similar to k-shortest path: Find a set of (mutually disjoint) shortest paths: Compute SPF in steps, remove a computed path from the substrate for next iteration

22 Explicit routing Explicit routing is a manual alternative to CSPF Explicit Route Objects (ERO) Provide a set of nodes and compute SPF via this set. Example: A->E via D. B D A C E Answer to the problem: A->B->D->E. Note that the route A->D is not explicitly provided and is therefore computed with SPF.

23 Summary: Routing algorithms Most routing protocols use Dijkstra or Bellman-Ford IP routing protocols all use SPF L Ethernet uses spanning-tree and learning to transform a network to a tree. In traffic engineering, IP routing protocols are extended with Constrained SPF MPLS is the primary example

DD2490 p Link-state routing and OSPF. Olof Hagsand KTH/CSC

DD2490 p Link-state routing and OSPF. Olof Hagsand KTH/CSC DD2490 p4 2009 Link-state routing and OSPF Olof Hagsand KTH/CSC Literature RFC 232: Browse through Section. Section 2 gives a very good understanding of OSPF issues. The example is realistic (complex)

More information

DD2490 p Link state routing and OSPF. Olof Hagsand KTH/CSC

DD2490 p Link state routing and OSPF. Olof Hagsand KTH/CSC DD490 p4 00 Link state routing and OSPF Olof Hagsand KTH/CSC Literature RFC 3: Section except.. Section 3 (areas), but only last two paragraphs of 3.5 Link state routing Each router spreads information

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

Description of The Algorithm

Description of The Algorithm Description of The Algorithm Dijkstra s algorithm works by solving the sub-problem k, which computes the shortest path from the source to vertices among the k closest vertices to the source. For the dijkstra

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

CMPE 150: Introduction to Computer Networks

CMPE 150: Introduction to Computer Networks CMPE 50: Introduction to Computer Networks Dr. Chane L. Fullmer chane@cse.ucsc.edu Spring 003 UCSC cmpe50 Homework Assignments Homework assignment #3 Chapter Four Due by May Spring 003 UCSC cmpe50 CMPE

More information

Eulerian Cycle (2A) Walk : vertices may repeat, edges may repeat (closed or open) Trail: vertices may repeat, edges cannot repeat (open)

Eulerian Cycle (2A) Walk : vertices may repeat, edges may repeat (closed or open) Trail: vertices may repeat, edges cannot repeat (open) Eulerian Cycle (2A) Walk : vertices may repeat, edges may repeat (closed or open) Trail: vertices may repeat, edges cannot repeat (open) circuit : vertices my repeat, edges cannot repeat (closed) path

More information

Lecture 9. Reminder: Homework 3, Programming Project 2 due today. Questions? Thursday, September 22 CS 475 Networks - Lecture 9 1

Lecture 9. Reminder: Homework 3, Programming Project 2 due today. Questions? Thursday, September 22 CS 475 Networks - Lecture 9 1 Lecture 9 Reminder: Homework 3, Programming Project 2 due today. Questions? Thursday, September 22 CS 475 Networks - Lecture 9 1 Outline Chapter 3 - Internetworking 3.1 Switching and Bridging 3.2 Basic

More information

Unit 3: Dynamic Routing

Unit 3: Dynamic Routing Unit 3: Dynamic Routing Basic Routing The term routing refers to taking a packet from one device and sending it through the network to another device on a different network. Routers don t really care about

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

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

OSPF Protocol Overview on page 187. OSPF Standards on page 188. OSPF Area Terminology on page 188. OSPF Routing Algorithm on page 190 Chapter 17 OSPF Protocol Overview The Open Shortest Path First (OSPF) protocol is an interior gateway protocol (IGP) that routes packets within a single autonomous system (AS). OSPF uses link-state information

More information

Distance vector and RIP

Distance vector and RIP DD2490 p4 2008 Distance vector and RIP Olof Hagsand KTHNOC/NADA Literature RIP lab RFC 245: RIPv2. Sections 1 2 contains some introduction that can be useful to understand the context in which RIP is specified..1.4

More information

DD2490 p Link-state routing and OSPF. Olof Hagsand KTH/CSC

DD2490 p Link-state routing and OSPF. Olof Hagsand KTH/CSC DD2490 p4 200 Link-state routing and OSPF Olof Hagsand KTH/CSC Literature RFC 232: Browse through Section. Section 2 gives a very good understanding of OSPF issues. The example is realistic (complex) and

More information

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

Routing. 4. Mar INF-3190: Switching and Routing Routing 4. Mar. 004 1 INF-3190: Switching and Routing Routing: Foundations! Task! To define the route of packets through the network! From the source! To the destination system! Routing algorithm! Defines

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. Problem: Given more than one path from source to destination, Features: Architecture Algorithms Implementation Performance

Routing. Problem: Given more than one path from source to destination, Features: Architecture Algorithms Implementation Performance Routing Problem: Given more than one path from source to destination, which one to take? Features: Architecture Algorithms Implementation Performance Architecture Hierarchical routing: Internet: intra-domain

More information

IP Routing Tecnologie e Protocolli per Internet II rev 1

IP Routing Tecnologie e Protocolli per Internet II rev 1 IP Routing Tecnologie e Protocolli per Internet II rev 1 Andrea Detti Electronic Engineering dept. E-mail: andrea.detti@uniroma2.it Some sources: Cisco CCNA Routing and Switching ICND1 and ICND2 Slide

More information

CS IT. Lecture (06) STP (I) Problem statement. By: Dr. Ahmed ElShafee

CS IT. Lecture (06) STP (I) Problem statement. By: Dr. Ahmed ElShafee Lecture (06) STP (I) By: Dr. Ahmed ElShafee CS IT Problem statement If your network consists of layer 2 switches that allow computers connect and exchange data, you will need to consider the design that

More information

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

CSE 461 Routing. Routing. Focus: Distance-vector and link-state Shortest path routing Key properties of schemes CSE 46 Routing Routing Focus: How to find and set up paths through a network Distance-vector and link-state Shortest path routing Key properties of schemes Application Transport Network Link Physical Forwarding

More information

Top-Down Network Design

Top-Down Network Design Top-Down Network Design Chapter Seven Selecting Switching and Routing Protocols Original slides by Cisco Press & Priscilla Oppenheimer Selection Criteria for Switching and Routing Protocols Network traffic

More information

BTEC Level 3 Extended Diploma

BTEC Level 3 Extended Diploma BTEC Level 3 Extended Diploma Unit 9 Computer Network Routing and Routing Protocols BTEC Level 3 Extended Diploma Introduction to Routing Routing is the process that a router uses to forward packets toward

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

ECE 333: Introduction to Communication Networks Fall 2001

ECE 333: Introduction to Communication Networks Fall 2001 ECE : Introduction to Communication Networks Fall 00 Lecture : Routing and Addressing I Introduction to Routing/Addressing Lectures 9- described the main components of point-to-point networks, i.e. multiplexed

More information

CS 5114 Network Programming Languages Control Plane. Nate Foster Cornell University Spring 2013

CS 5114 Network Programming Languages Control Plane. Nate Foster Cornell University Spring 2013 CS 5 Network Programming Languages Control Plane http://www.flickr.com/photos/rofi/0979/ Nate Foster Cornell University Spring 0 Based on lecture notes by Jennifer Rexford and Michael Freedman Announcements

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

Routing Overview for Firepower Threat Defense

Routing Overview for Firepower Threat Defense Path Determination This chapter describes underlying concepts of how routing behaves within the Cisco Firepower Threat Defense, and the routing protocols that are supported. Routing is the act of moving

More information

CIS 83 Midterm Spring 2004 Answer Sheet Name Score Grade Question Answer Question Answer

CIS 83 Midterm Spring 2004 Answer Sheet Name Score Grade Question Answer Question Answer CIS 83 Midterm Spring 2004 Answer Sheet Name: Score: Grade: Question Answer Question Answer 1 A B C D E F 51 A B C D E F 2 A B C D E F 52 A B C D E F 3 A B C D E F 53 A B C D E F 4 A B C D E F 54 A B C

More information

Youki Kadobayashi NAIST

Youki Kadobayashi NAIST Information Network 1 Routing (1) Image: Part of the entire Internet topology based on CAIDA dataset, using NAIST Internet viewer Youki Kadobayashi NAIST 1 The Routing Problem! How do I get from source

More information

C13b: Routing Problem and Algorithms

C13b: Routing Problem and Algorithms CISC 7332X T6 C13b: Routing Problem and Algorithms Hui Chen Department of Computer & Information Science CUNY Brooklyn College 11/20/2018 CUNY Brooklyn College 1 Acknowledgements Some pictures used in

More information

EITF25 Internet Routing. Jens A Andersson

EITF25 Internet Routing. Jens A Andersson EITF25 Internet Routing Jens A Andersson Study Guide Kihl & Andersson: Ch 8, 9.3 9.4 Stallings: Ch 19.1 & 19.2 Forouzan 5th ed Ch 20.1 20.3, 21.1 21.2 Routing The Routing Concept Unicast Routing Multicast

More information

WDM Network Provisioning

WDM Network Provisioning IO2654 Optical Networking WDM Network Provisioning Paolo Monti Optical Networks Lab (ONLab), Communication Systems Department (COS) http://web.it.kth.se/~pmonti/ Some of the material is taken from the

More information

2008 NDP Lectures 7 th Semester

2008 NDP Lectures 7 th Semester 2008 NDP Lectures 7 th Semester Neeli R. Prasad, Associate Professor Head of Wireless Security and Sensor Networks Group Networking and Security Aalborg University Niels Jernes Vej 12, 9220 Aalborg East,

More information

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

ICS 351: Today's plan. distance-vector routing game link-state routing OSPF ICS 351: Today's plan distance-vector routing game link-state routing OSPF distance-vector routing game 1. prepare a list of all neighbors and the links to them, and the metric for each link 2. create

More information

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

Top-Down Network Design, Ch. 7: Selecting Switching and Routing Protocols. Top-Down Network Design. Selecting Switching and Routing Protocols Top-Down Network Design Chapter Seven Selecting Switching and Routing Protocols Copyright 2010 Cisco Press & Priscilla Oppenheimer 1 Switching 2 Page 1 Objectives MAC address table Describe the features

More information

3. INTERCONNECTING NETWORKS WITH SWITCHES. THE SPANNING TREE PROTOCOL (STP)

3. INTERCONNECTING NETWORKS WITH SWITCHES. THE SPANNING TREE PROTOCOL (STP) 3. INTERCONNECTING NETWORKS WITH SWITCHES. THE SPANNING TREE PROTOCOL (STP) 3.1. STP Operation In an extended Ethernet network (a large network, including many switches) multipath propagation may exist

More information

UNIT 2 ROUTING ALGORITHMS

UNIT 2 ROUTING ALGORITHMS UNIT ROUTING ALGORITHMS Routing Algorithms Structure Page Nos..0 Introduction 3. Objectives 3. Flooding 3.3 Shortest Path Routing Algorithm 5.4 Distance Vector Routing 6.4. Comparison.4. The Count-to-Infinity

More information

UNIT 3. Greedy Method. Design and Analysis of Algorithms GENERAL METHOD

UNIT 3. Greedy Method. Design and Analysis of Algorithms GENERAL METHOD UNIT 3 Greedy Method GENERAL METHOD Greedy is the most straight forward design technique. Most of the problems have n inputs and require us to obtain a subset that satisfies some constraints. Any subset

More information

Lecture 12: Link-state Routing. Lecture 12 Overview. Router Tasks. CSE 123: Computer Networks Chris Kanich. Routing overview

Lecture 12: Link-state Routing. Lecture 12 Overview. Router Tasks. CSE 123: Computer Networks Chris Kanich. Routing overview Lecture : Link-state Routing CSE 3: Computer Networks Chris Kanich Lecture Overview Routing overview Intra vs. Inter-domain routing Link-state routing protocols CSE 3 Lecture : Link-state Routing Router

More information

Computer Networks. Routing Algorithms

Computer Networks. Routing Algorithms Computer Networks Routing Algorithms Topics Routing Algorithms Shortest Path (Dijkstra Algorithm) Distance Vector Routing Count to infinity problem Solutions for count to infinity problem Link State Routing

More information

Network Layer: Routing

Network Layer: Routing Network Layer: Routing The Problem A B R 1 R 2 R 4 R 3 Goal: for each destination, compute next hop 1 Lecture 9 2 Basic Assumptions Trivial solution: Flooding Dynamic environment: links and routers unreliable:

More information

Lecture 18 Solving Shortest Path Problem: Dijkstra s Algorithm. October 23, 2009

Lecture 18 Solving Shortest Path Problem: Dijkstra s Algorithm. October 23, 2009 Solving Shortest Path Problem: Dijkstra s Algorithm October 23, 2009 Outline Lecture 18 Focus on Dijkstra s Algorithm Importance: Where it has been used? Algorithm s general description Algorithm steps

More information

Fairness Example: high priority for nearby stations Optimality Efficiency overhead

Fairness Example: high priority for nearby stations Optimality Efficiency overhead Routing Requirements: Correctness Simplicity Robustness Under localized failures and overloads Stability React too slow or too fast Fairness Example: high priority for nearby stations Optimality Efficiency

More information

Basic Idea. Routing. Example. Routing by the Network

Basic Idea. Routing. Example. Routing by the Network Basic Idea Routing Routing table at each router/gateway When IP packet comes, destination address checked with routing table to find next hop address Questions: Route by host or by network? Routing table:

More information

Routing by the Network

Routing by the Network Routing Basic Idea Routing table at each router/gateway When IP packet comes, destination address checked with routing table to find next hop address Questions: Route by host or by network? Routing table:

More information

DD2490 p IP Multicast routing. Multicast routing. Olof Hagsand KTH CSC

DD2490 p IP Multicast routing. Multicast routing. Olof Hagsand KTH CSC DD2490 p4 2010 IP Multicast routing Multicast routing Olof Hagsand KTH CSC 1 Literature RFC 4601 Section 3 (you may need some definitions from Section 2). See reading instructions on web. 2 Deployment

More information

SWITCHING, FORWARDING, AND ROUTING

SWITCHING, FORWARDING, AND ROUTING SWITCHING, FORWARDING, AND ROUTING George Porter Oct 4 and 9, 2018 ATTRIBUTION These slides are released under an Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) Creative Commons license

More information

Routing, Routing Algorithms & Protocols

Routing, Routing Algorithms & Protocols Routing, Routing Algorithms & Protocols Computer Networks Lecture 6 http://goo.gl/pze5o8 Circuit-Switched and Packet-Switched WANs 2 Circuit-Switched Networks Older (evolved from telephone networks), a

More information

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

Computer Networking. Intra-Domain Routing. RIP (Routing Information Protocol) & OSPF (Open Shortest Path First) Computer Networking Intra-Domain Routing RIP (Routing Information Protocol) & OSPF (Open Shortest Path First) IP Forwarding The Story So Far IP addresses are structured to reflect Internet structure IP

More information

CompSci 356: Computer Network Architectures. Lecture 13: Dynamic routing protocols: Link State Chapter 3.3.3, Xiaowei Yang

CompSci 356: Computer Network Architectures. Lecture 13: Dynamic routing protocols: Link State Chapter 3.3.3, Xiaowei Yang CompSci 356: Computer Network Architectures Lecture 13: Dynamic routing protocols: Link State Chapter 3.3.3, 3.2.9 Xiaowei Yang xwy@cs.duke.edu Today Clarification on RIP Link-state routing Algorithm Protocol:

More information

EIGRP Features and Operation

EIGRP Features and Operation EIGRP Features and Operation Enhanced IGRP (EIGRP) is a classless, enhanced distance-vector protocol. EIGRP is a Cisco proprietary protocol. EIGRP includes the subnet mask in its route updates. And as

More information

Examination IP routning inom enkla datornät, DD2490 IP routing in simple networks, DD2490 KTH/CSC Date: 24 May :00 19:00

Examination IP routning inom enkla datornät, DD2490 IP routing in simple networks, DD2490 KTH/CSC Date: 24 May :00 19:00 Examination IP routning inom enkla datornät, DD490 IP routing in simple networks, DD490 KTH/CSC Date: 4 May 00 4:00 9:00 a) No help material is allowed - You are not allowed to use books or calculators!

More information

Module 8. Routing. Version 2 ECE, IIT Kharagpur

Module 8. Routing. Version 2 ECE, IIT Kharagpur Module 8 Routing Lesson 27 Routing II Objective To explain the concept of same popular routing protocols. 8.2.1 Routing Information Protocol (RIP) This protocol is used inside our autonomous system and

More information

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

Routing Protocols. The routers in an internet are responsible for receiving and. forwarding IP datagrams through the interconnected set of Routing Protocols MITA DUTTA The routers in an internet are responsible for receiving and forwarding IP datagrams through the interconnected set of sub-networks from source to destination. Routing protocols

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

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

Helsinki University of Technology Telecommunications Laboratory. OSPF Routing Protocol Licenciate course seminar paper Helsinki University of Technology Telecommunications Laboratory OSPF Routing Protocol Licenciate course seminar paper Shkumbin I. Hamiti, 08.10.1996 Communications Laboratory, TKK-HUT email: bini#tiltu.hut.fi

More information

DD2490 p Layer 2 networking. Olof Hagsand KTH CSC

DD2490 p Layer 2 networking. Olof Hagsand KTH CSC DD2490 p4 2010 Layer 2 networking Olof Hagsand KTH CSC 1 Literature Radia Pearlman Interconnections - Bridges, Routers, Switches and Internetworking Protocols, Addison-Wesley. Section 3: Transparent bridges

More information

CS BGP v4. Fall 2014

CS BGP v4. Fall 2014 CS 457 - BGP v4 Fall 2014 Autonomous Systems What is an AS? a set of routers under a single technical administration uses an interior gateway protocol (IGP) and common metrics to route packets within the

More information

Date: June 4 th a t 1 4:00 1 7:00

Date: June 4 th a t 1 4:00 1 7:00 Kommunika tionssyste m FK, Examina tion G 5 0 7 Date: June 4 th 0 0 3 a t 4:00 7:00 KTH/IMIT/LCN No help material is allowed. You may answer questions in English or Swedish. Please answer each question

More information

CompSci 356: Computer Network Architectures. Lecture 12: Dynamic routing protocols: Link State Chapter Xiaowei Yang

CompSci 356: Computer Network Architectures. Lecture 12: Dynamic routing protocols: Link State Chapter Xiaowei Yang CompSci 356: Computer Network Architectures Lecture 12: Dynamic routing protocols: Link State Chapter 3.3.3 Xiaowei Yang xwy@cs.duke.edu Today Routing Information Protocol Link-state routing Algorithm

More information

Youki Kadobayashi NAIST

Youki Kadobayashi NAIST Information Network 1 Routing (1) Youki Kadobayashi NAIST 1 The Routing Problem! How do I get from source to destination?! Which path is best? In terms of:! Number of hops! Delay! Bandwidth! Policy constraints!

More information

IBGP scaling: Route reflectors and confederations

IBGP scaling: Route reflectors and confederations DD2491 p2 2009/2010 IBGP scaling: Route reflectors and confederations Olof Hagsand KTH /CSC 1 Literature Route Reflectors Practical BGP pages 135 153 RFC 4456 Confederations Practical BGP pages 153 160

More information

ICS 351: Today's plan. netmask exercises network and subnetwork design dynamic routing RIP distance-vector routing

ICS 351: Today's plan. netmask exercises network and subnetwork design dynamic routing RIP distance-vector routing ICS 351: Today's plan netmask exercises network and subnetwork design dynamic routing RIP distance-vector routing Netmask exercises how many bits in this netmask: 255.128.0.0 using this netmask and the

More information

Examination IP routning inom enkla datornät, DD2490 IP routing in simple networks, DD2490 KTH/CSC. Date: 20 May :00 19:00 SOLUTIONS

Examination IP routning inom enkla datornät, DD2490 IP routing in simple networks, DD2490 KTH/CSC. Date: 20 May :00 19:00 SOLUTIONS Examination IP routning inom enkla datornät, DD2490 IP routing in simple networks, DD2490 KTH/CSC Date: 20 May 2009 14:00 19:00 SOLUTIONS a) No help material is allowed - You are not allowed to use books

More information

Routing in a network

Routing in a network Routing in a network Focus is small to medium size networks, not yet the Internet Overview Then Distance vector algorithm (RIP) Link state algorithm (OSPF) Talk about routing more generally E.g., cost

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

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

The fundamentals of Ethernet!

The fundamentals of Ethernet! Building Ethernet Connectivity Services for Provider Networks" " Eduard Bonada i Cruells" Tesi Doctoral UPF / 2012 Dirigida per Dra. Dolors Sala i Batlle Departament de Tecnologies de la Informació i les

More information

TA: Jade Cheng ICS 241 Recitation Lecture Notes #12 November 13, 2009

TA: Jade Cheng ICS 241 Recitation Lecture Notes #12 November 13, 2009 TA: Jade Cheng ICS 241 Recitation Lecture Notes #12 November 13, 2009 Recitation #12 Question: Use Prim s algorithm to find a minimum spanning tree for the given weighted graph. Step 1. Start from the

More information

Youki Kadobayashi NAIST

Youki Kadobayashi NAIST Information Network 1 Routing (1) Image: Part of the entire Internet topology based on CAIDA dataset, using NAIST Internet viewer Youki Kadobayashi NAIST 1 The Routing Problem How do I get from source

More information

Routing. Basic principles. Karst Koymans. Informatics Institute University of Amsterdam. (version 16.4, 2017/02/23 10:58:58)

Routing. Basic principles. Karst Koymans. Informatics Institute University of Amsterdam. (version 16.4, 2017/02/23 10:58:58) Routing Basic principles Karst Koymans Informatics Institute University of Amsterdam (version 16.4, 2017/02/23 10:58:58) Friday, February 24, 2017 Karst Koymans (UvA) Routing Friday, February 24, 2017

More information

Inter-networking. Problem. 3&4-Internetworking.key - September 20, LAN s are great but. We want to connect them together. ...

Inter-networking. Problem. 3&4-Internetworking.key - September 20, LAN s are great but. We want to connect them together. ... 1 Inter-networking COS 460 & 540 2 Problem 3 LAN s are great but We want to connect them together...across the world Inter-networking 4 Internet Protocol (IP) Routing The Internet Multicast* Multi-protocol

More information

Dijkstra s algorithm for shortest paths when no edges have negative weight.

Dijkstra s algorithm for shortest paths when no edges have negative weight. Lecture 14 Graph Algorithms II 14.1 Overview In this lecture we begin with one more algorithm for the shortest path problem, Dijkstra s algorithm. We then will see how the basic approach of this algorithm

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

Chapter 12. Routing and Routing Protocols 12-1

Chapter 12. Routing and Routing Protocols 12-1 Chapter 12 Routing and Routing Protocols 12-1 Routing in Circuit Switched Network Many connections will need paths through more than one switch Need to find a route Efficiency Resilience Public telephone

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

Chapter 7: Routing Dynamically. Routing & Switching

Chapter 7: Routing Dynamically. Routing & Switching Chapter 7: Routing Dynamically Routing & Switching The Evolution of Dynamic Routing Protocols Dynamic routing protocols used in networks since the late 1980s Newer versions support the communication based

More information

IP Multicast Technology Overview

IP Multicast Technology Overview IP multicast is a bandwidth-conserving technology that reduces traffic by delivering a single stream of information simultaneously to potentially thousands of businesses and homes. Applications that take

More information

ITEC310 Computer Networks II

ITEC310 Computer Networks II ITEC310 Computer Networks II Chapter 22 Network Layer:, and Routing Department of Information Technology Eastern Mediterranean University Objectives 2/131 After completing this chapter you should be able

More information

CSE 473 Introduction to Computer Networks. Final Exam Review

CSE 473 Introduction to Computer Networks. Final Exam Review CSE 473 Introduction to Computer Networks Final Exam Review Roch Guérin 12/4/2014 1) The diagram at right shows a switched Ethernet LAN with two routers (labeled Q and R), seven switches and five hosts.

More information

Introduction to routing

Introduction to routing DD2490 p4 2010 Introduction to routing Olof Hagsand KTH/CSC Network example: KTH Intranet Levels of abstraction The Internet is huge Necessary to divide the routing problem into sub-problems. There are

More information

CSEP 561 Routing. David Wetherall

CSEP 561 Routing. David Wetherall CSEP 561 Routing David Wetherall djw@cs.washington.edu Routing Focus: How to find and set up paths through a network Distance-vector and link-state Application Shortest path routing Transport Key properties

More information

Introduction to OSPF

Introduction to OSPF Campus Networking Introduction to OSPF Workshop Campus Layer-2 Networking Network Workshop Design These materials are licensed under the Creative Commons Attribution-Noncommercial 3.0 Unported license

More information

Exercise 3. RIP and OSPF

Exercise 3. RIP and OSPF Exercise 3. RIP and OSPF 1. Demo. Find the routes in Figure 4 from node A to all the other nodes in the network using Dijkstra s algorithm. You may use the animation of Dijkstra s algorithm at http://www-b2.is.tokushima-u.ac.jp/~ikeda/suuri/dijkstra/dijex1.html

More information

Why we need to divide network?

Why we need to divide network? Content Introduction Layer 3 IP Protocol IP-Header: www.ietf.org and RFC-760 Addressing Schemes Subnetting Routing Layer 3 Solution in Trains Communication Matrix (Information Based Communication) 53 Why

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

Outline. Addressing on the network layer ICMP IPv6 Addressing on the link layer Virtual circuits

Outline. Addressing on the network layer ICMP IPv6 Addressing on the link layer Virtual circuits Lecture 2 Outline Addressing on the network layer ICMP IPv6 Addressing on the link layer Virtual circuits TCP/IP protocol suite Good name for our book! User application, e.g., http with Mozilla Communication

More information

Computer Networks. Routing

Computer Networks. Routing Computer Networks Routing Topics Link State Routing (Continued) Hierarchical Routing Broadcast Routing Sending distinct packets Flooding Multi-destination routing Using spanning tree Reverse path forwarding

More information

IPv6 Routing: OSPFv3

IPv6 Routing: OSPFv3 Open Shortest Path First version 3 (OSPFv3) is an IPv4 and IPv6 link-state routing protocol that supports IPv6 and IPv4 unicast address families (AFs). Finding Feature Information, page 1 Prerequisites

More information

1 Shortest Paths. 1.1 Breadth First Search (BFS) CS 124 Section #3 Shortest Paths and MSTs 2/13/2018

1 Shortest Paths. 1.1 Breadth First Search (BFS) CS 124 Section #3 Shortest Paths and MSTs 2/13/2018 CS Section # Shortest Paths and MSTs //08 Shortest Paths There are types of shortest paths problems: Single source single destination Single source to all destinations All pairs shortest path In today

More information

Open Shortest Path First (OSPF)

Open Shortest Path First (OSPF) CHAPTER 42 Open Shortest Path First (OSPF) Background Open Shortest Path First (OSPF) is a routing protocol developed for Internet Protocol (IP) networks by the interior gateway protocol (IGP) working

More information

Lecture 13: Link-state Routing. CSE 123: Computer Networks Alex C. Snoeren

Lecture 13: Link-state Routing. CSE 123: Computer Networks Alex C. Snoeren Lecture 3: Link-state Routing CSE 23: Computer Networks Alex C. Snoeren Lecture 3 Overview Routing overview Intra vs. Inter-domain routing Link-state routing protocols 2 Router Tasks Forwarding Move packet

More information

We will discuss about three different static routing algorithms 1. Shortest Path Routing 2. Flooding 3. Flow Based Routing

We will discuss about three different static routing algorithms 1. Shortest Path Routing 2. Flooding 3. Flow Based Routing In this lecture we will discuss about Routing algorithms Congestion algorithms Lecture 19 The routing algorithm is that part of the network layer software, which is responsible for deciding which output

More information

DD2490 p Lecture 4: OSPF. Link-state routing and Open Shortest Path First. Olof Hagsand KTH CSC

DD2490 p Lecture 4: OSPF. Link-state routing and Open Shortest Path First. Olof Hagsand KTH CSC DD2490 p4 20 Lecture 4: OSPF Link-state routing and Open Shortest Path First Olof Hagsand KTH CSC OSPF is the routing protocol that we deal with in most detail in this course. OSPF is a complex protocol,

More information

1 Shortest Paths. 1.1 Breadth First Search (BFS) CS 124 Section #3 Shortest Paths and MSTs 2/13/2018

1 Shortest Paths. 1.1 Breadth First Search (BFS) CS 124 Section #3 Shortest Paths and MSTs 2/13/2018 CS 4 Section # Shortest Paths and MSTs //08 Shortest Paths There are types of shortest paths problems: Single source single destination Single source to all destinations All pairs shortest path In today

More information

Chapter 3 Part 2 Switching and Bridging. Networking CS 3470, Section 1

Chapter 3 Part 2 Switching and Bridging. Networking CS 3470, Section 1 Chapter 3 Part 2 Switching and Bridging Networking CS 3470, Section 1 Refresher We can use switching technologies to interconnect links to form a large network What is a hub? What is a switch? What is

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

Youki Kadobayashi NAIST

Youki Kadobayashi NAIST Information Network 1 Routing (1) Image: Part of the entire Internet topology based on CAIDA dataset, using NAIST Internet viewer Youki Kadobayashi NAIST 1 The Routing Problem How do I get from source

More information

Dijkstra s Algorithm and Priority Queue Implementations. CSE 101: Design and Analysis of Algorithms Lecture 5

Dijkstra s Algorithm and Priority Queue Implementations. CSE 101: Design and Analysis of Algorithms Lecture 5 Dijkstra s Algorithm and Priority Queue Implementations CSE 101: Design and Analysis of Algorithms Lecture 5 CSE 101: Design and analysis of algorithms Dijkstra s algorithm and priority queue implementations

More information

MikroTik RouterOS Training. Routing. Schedule. Instructors. Housekeeping. Introduce Yourself. Course Objective 7/4/ :00 10:30 Morning Session I

MikroTik RouterOS Training. Routing. Schedule. Instructors. Housekeeping. Introduce Yourself. Course Objective 7/4/ :00 10:30 Morning Session I MikroTik RouterOS Training Routing Schedule 09:00 10:30 Morning Session I 10:30 11:00 Morning Break 11:00 12:30 Morning Session II 12:30 13:30 Lunch Break 13:30 15:00 Afternoon Session I 15:00 15:30 Afternoon

More information

ICMP, ARP, RARP, IGMP

ICMP, ARP, RARP, IGMP Internet Layer Lehrstuhl für Informatik 4 Raw division into three tasks: Data transfer over a global network Route decision at the sub-nodes Control of the network or transmission status Routing Protocols

More information