CSCD 330 Network Programming Spring 2017

Similar documents
CSCD 330 Network Programming Spring 2018

CSC 4900 Computer Networks: Routing Algorithms

Chapter 4: Network Layer, partb

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

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

DATA COMMUNICATOIN NETWORKING

CSC 401 Data and Computer Communications Networks

Chapter 4 Network Layer

Chapter 5 Network Layer: The Control Plane

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

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

Lecture 4. The Network Layer (cont d)

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

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

Chapter 4 Network Layer

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSCE 463/612 Networks and Distributed Processing Spring 2017

CSC 8560 Computer Networks: Control Plane

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

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

Dynamic Routing. The Protocols

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

Interplay between routing, forwarding

Chapter 4: Network Layer

Chapter 4 Network Layer. Network Layer 4-1

Module 3 Network Layer CS755! 3-1!

Δίκτυα Υπολογιστών ΙΙ. Κώστας Μαγκούτης Επίκουρος Καθηγητής Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων

Data Communications & Networks. Session 7 Main Theme Networks: Part II Circuit Switching, Packet Switching, The Network Layer

Interplay Between Routing, Forwarding

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

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

Network layer: Overview. Network layer functions Routing IP Forwarding

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

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

Routing Algorithms : Fundamentals of Computer Networks Bill Nace

Network Layer: Routing

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

Department of Computer Science Southern Illinois University Carbondale

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

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

Routing. Outline. Algorithms Scalability

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

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

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

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

CSc 450/550 Computer Networks Internet Routing

Why dynamic route? (1)

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

Chapter 4: Network Layer. Chapter 4 Network Layer. Chapter 4: Network Layer. Network layer. Chapter goals:

Chapter 4: Network Layer

ETSF05/ETSF10 Internet Protocols Routing on the Internet

COMP 3331/9331: Computer Networks and Applications

CS321: Computer Networks Unicast Routing

Redes de Computadores. Shortest Paths in Networks

Network layer: Overview. Network layer functions Routing IP Forwarding

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

Computer Networking Introduction

Chapter 5 Network Layer: The Control Plane

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

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

Master Course Computer Networks IN2097

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

CS118 Discussion Week 7. Taqi

EE 122: Intra-domain routing

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane

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

Computer Networks. Instructor: Niklas Carlsson

Routing in the Internet

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

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

Chapter IV: Network Layer

Basic Idea. Routing. Example. Routing by the Network

Chapter 5 Network Layer: The Control Plane

Routing by the Network

Network Layer. CMPS 4750/6750: Computer Networks

Chapter 4: outline. Network Layer 4-1

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

Chapter 4: Network Layer

Network Layer: Routing. Routing. Routing protocol. Graph abstraction for routing algorithms: graph nodes are routers graph edges are physical links

Topics for This Week

Master Course Computer Networks IN2097

Telecomunicazioni. Docente: Andrea Baiocchi. DIET - Stanza 107, 1 piano palazzina P. Piga Via Eudossiana 18

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

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

Routing. Jens A Andersson Communication Systems

(Refer Slide Time: 01:08 to 01:25min)

Routing Unicast routing protocols

Two types of routing protocols are used in internetworks: interior gateway protocols (IGPs) and exterior gateway protocols (EGPs).

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

Lecture 17: Network Layer Addressing, Control Plane, and Routing

Lecture 19: Network Layer Routing in the Internet

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

Routing, Routing Algorithms & Protocols

Internet Routing Protocols Tuba Saltürk

Network Layer: Routing

Internet Routing : Fundamentals of Computer Networks Bill Nace

Routing. Advanced Computer Networks: Routing 1

Chapter 4: Network Layer: Part II

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

Transcription:

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 1

Network Layer 4. 1 Introduction 4. Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing ICMP IPv6 Skip 4.5 Routing algorithms Link state Distance Vector Hierarchical routing 4.6 Routing in the Internet RIP OSPF Today

Routing Introduction Routing packets occurs Between source router and destination router What are some problems in routing, algorithm should address? Minimal cost how to determine that Changing Conditions How to handle... Congestion, routes disappear and others appear over time Priority of some routes over others, not related to cost

Routing Introduction Routing most important function of network layer and One of the most important functions of whole network Routing protocols determine how efficiently traffic moves through network Bad routing protocols hinder networks no matter how ample network resources Look at general algorithms and then some specific protocols 4

Global Routing As we already said. Each corporate entity is responsible for routing within their IP space So, they aggregate routers into regions, Autonomous systems (AS) Routers in same AS run same routing protocol Intra-AS routing protocol Routers in different AS's can run different protocols Inter-AS routing protocol differs from Intra-AS 5

Interdomain and Intradomain Routing Intradomain Routing Ignores Internet outside AS Protocols for Intradomain routing, Routing within an AS Interior Gateway Protocols or IGP s. Routing protocols RIP (simple, old) OSPF (better) Interdomain Routing Routing between AS s Assumes Internet is collection of interconnected AS s Normally, dedicated router(s) in each AS handle interdomain traffic Exterior Gateway Protocols or EGP s. Routing protocols: EGP (older) BGP (more recent) 6

7 Alice Bob Routing Algorithms

Purpose of Routing Protocols Routing protocols are used to exchange routing information between routers. A routing protocol is: Set of processes, algorithms, and messages used to exchange routing information and populate the routing table with the best paths The purpose of dynamic routing protocols includes: Discovery of remote networks Maintaining up-to-date routing information Choosing the best path to destination networks Ability to find new best path if current path is no longer available 8

Classifying Routing Algorithms So, how do you classify routing algorithms? Are they pretty much the same or are some better than others? Turns out some are better Classifying them lets us describe their characteristics 9

Routing Algorithm Classification Two basic types of routing algorithms 1. Decentralized Routing Algorithm, Example: Distance vector No single node has complete knowledge, Knows its own neighbors and ONLY exchanges routing info with neighbors Gradually exchanges information and updates routes to arrive at least cost path. Global Routing Algorithm, Example: Link state Send everyone your distance to your neighbors Once router has all information from updates, Router computes shortest path, Assume everyone eventually has global knowledge 10

Link State vs. Distance Vector What are the differences? Which is better? Link-state algorithms flood routing information to all nodes in Internetwork (AS) Each router, sends only portion of routing table that describes state of its own links Distance- vector algorithms each router sends all or some of its routing table, but only to its neighbors Summary, Link- state algorithms send small updates everywhere Distance- vector algorithms send larger updates only to neighboring routers

Graph abstraction One way to view network is a graph Graph: G = (N,E) u 1 5 v x 3 1 3 w y 1 5 z N = nodes = routers = { u, v, w, x, y, z } E = edges = links { (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) } 1

Graph Abstraction: Costs 5 c(x,x ) = cost of link (x,x ) u 1 v x 3 1 3 w y 1 5 z - e.g., c(w,z) = 5 Cost could be number of hops between nodes, or related to bandwidth, or related to congestion Cost of path (x 1, x, x 3,, x p ) = c(x 1,x ) + c(x,x 3 ) + + c(x p-1,x p ) Question: What s the least-cost path between u and z? 13

Link-State Routing Algorithm Notation c(x,y): link cost from node x to y; Is, infinity to begin with, if not direct neighbors D(v): current value of cost of path from source to destination v p(v): predecessor node along path from source to v N': set of nodes whose least cost path definitively known, want to keep adding to N' until all nodes are added 14

Dijsktra s Algorithm u to z 1 Initialization N' = {u} //Start node 3 for all nodes v 5 v 3 w 4 if v adjacent to u u 1 3 5 then D(v) = c(u,v) 1 6 else D(v) = x y 1 7 8 Loop 9 find w not in N' such that D(w) is a minimum 10 add w to N' 11 update D(v) for all v adjacent to w and not in N' : 1 D(v) = min( D(v), D(w) + c(w,v) ) 13 /* new cost to v is either old cost to v or known 14 shortest path cost to w plus cost from w to v */ 15 until all nodes in N' 5 z 15

Dijkstra s algorithm: example Step 0 1 3 4 5 u 1 N' u ux uxy uxyv uxyvw uxyvwz 5 v x 3 1 3 D(v),p(v),u,u,u w y 1 5 z D(w),p(w) 5,u 4,x 3,y 3,y D(x),p(x) 1,u D(y),p(y),x D(z),p(z) 4,y 4,y 4,y Loop find w not in N' such that D(w) is a minimum add w to N' update D(v) for all v adjacent to w and not in N D(v) = min( D(v), D(w) + c(w,v) ) until all nodes in N' 16

End of Link State At end of link state algorithm, you have Each node, Its predecessor along least-cost path From source node Then, have its predecessor and so on... Can construct entire path from source to all its destinations Forwarding table in a node, Constructed by storing for each destination, next hop node on least cost path

Dijkstra s Algorithm Resulting shortest-path tree from u u v x w y z Resulting forwarding table in u destination v x y w z link (u,v) (u,x) (u,x) (u,x) (u,x) 18

In Practice Link State Algorithm In practice, network topology known by each node (router) Broadcast link state packets to all other nodes in network Next... look at Distance Vector Algorithm

Distance Vector Algorithm Want to go from source x to destination y Let d x (y) be least-cost From node x to node y Least costs are related by the Bellman-Ford equation D x (y) = min v {c(x,v) + D v (y)} min v in equation is taken over all of x s neighbors So, after traveling from x to v, Take least cost path from v to y, path cost will be c(x,v) + d v (y) then take minimum of this for all neighbors, v 0

Bellman-Ford algorithm

Distance Vector Algorithm Basic idea Each node periodically sends its own Distance Vector (DV) estimate to its neighbors When a node x receives new DV estimate from neighbor It updates its own DV using Bellman-Ford equation

Distance Vector Algorithm Iterative, Asynchronous Each local iteration caused by: Local link cost change DV update message from neighbor Distributed Each node notifies neighbors when its DV changes Neighbors then notify their neighbors if necessary Each node wait for (change in local link cost or msg from neighbor) recompute estimates if DV to any destination has changed, notify neighbors 3

D x (y) = min{c(x,y) + D y (y), c(x,z) + D z (y)} = min{+0, 7+1} = node x tablecost to x y z x 0 7 y z node y table cost to x y z from x y 0 1 z node z table cost to x y z from from x y z 7 1 0 from from from x y z x y z x y z cost to x y z 0 3 0 1 7 1 0 cost to x y z 0 7 0 1 7 1 0 cost to x y z 0 7 0 1 3 1 0 from from from x y z x y z x y z D x (z) = min{c(x,y) + D y (z), c(x,z) + D z (z)} = min{+1, 7+0} = 3 cost to x y z 0 3 0 1 3 1 0 cost to x y z 0 3 0 1 3 1 0 cost to x y z 0 3 0 1 3 1 0 time x y 7 1 z

Routing Information Protocol As an Example of Distance Vector

RIP ( Routing Information Protocol) Distance Vector Algorithm Included in BSD-UNIX Distribution in 198 Distributed as Unix daemon program routed Distance metric: # of hops (max = 15 hops) z u A C B D v y w x From router A to subsets destination hops u 1 v w x 3 y 3 z 6

RIP Still used today Distance-Vector protocol Routing tables exchanged between neighbours Updates every 30 to 60 seconds or Whenever routing table changes After certain amount of time, network has converged, information does not change Routers just provide stay-alive information Uses UDP for route updates Port 50 7

8 RIP - Routing Information Protocol Straightforward implementation of Distance Vector Routing Maximum hop count 15, with 16 equal to Routes timeout (set to 16) after 3 minutes if not updated, assumed dead RIP does not allow router to know exact topology of an Internetwork Since only talking with neighbors

RIP Link Failure and Recovery A Routing Failure Happens 1. New advertisements sent to neighbors. Neighbors in turn send out new advertisements (if tables changed) 3. Link failure propagates to entire network Works well if no Loops in Network Problems with potential loops in network See next slides... 9

RIP Count-to-Infinity Problem Classic distance vector convergence problem is known as count-to-infinity problem 1. Asynchronous announcement scheme. Passing routes back to originating router RIP adds routes to routing table, keeps only best route Update lower cost route with higher cost route only if announced by same source as current lower cost route 30

RIP Count-to-Infinity Problem Count-to-infinity One reason why maximum hop count of RIP networks set 15 (16 for unreachable) Higher maximum hop count makes convergence time longer when count-to-infinity occurs Route from Router 1 to Network 3 is through Router and route from Router to Network 3 is through Router 1 A routing loop exists between Router 1 and Router for Network 3 How do we fix this? 31

RIP Count-to-Infinity Problem Solution Split Horizon Rule do not send information about a route back in the direction it came from Split horizon reduces convergence time Does not allow routers to advertise networks in direction from which those networks were learned Only information sent in RIP announcements Networks beyond neighboring router in opposite direction. Networks learned from neighboring router are not included Split Horizon Eliminates count-to-infinity and routing loops during convergence 3

Split Horizon Rule Don't announce routes to routers we got them from I learned about Net1 and Net, via Router 1, don't advertise these, Router 1 I learned about Net and Net3, via Router, don't advertise these, Router

Split Horizon with Poison Reverse Split horizon with poison reverse Routing updates that indicate a network or a subnet is unreachable, Simple split horizon omits routes learned from one neighbor in updates sent to that neighbor, Split horizon with poison reverse includes such routes in updates but announces them with a hop count of 16

Open Shortest Path First

OSPF (Open Shortest Path First) Open - publicly available Uses Link State algorithm Route computed with Dijkstra s algorithm Advertisements sent to entire AS (via flooding) Carried in OSPF messages directly over IP (rather than TCP or UDP) Supposed to be successor to RIP... 36

37 OSPF OSPF The OSPF routing protocol is the most important link state routing protocol on the Internet The complexity of OSPF is significant History: 1989: RFC 1131 OSPF Version 1 1991: RFC147 OSPF Version 1994: RFC 1583 OSPF Version (revised) 1997: RFC 178 OSPF Version (revised) 1998: RFC 38 OSPF Version (current version)

OSPF vs. RIP Contrast to RIP, Where a RIP router Tells all its neighbors about the world, OSPF routers Tells the world about the neighbors RIP sends entire routing table every 30 seconds OSPF sends its link state information every 30 minutes OSPF routers also send each other small update messages Whenever they detect a change in network Such as... a failure or a new link 38

Distance Vector vs. Link State Routing In link state routing, each node has a complete map of the topology A B C A B C A B C If a node fails, each node can calculate the new route D E F D E F D E F AA B B C C Difficulty All nodes need to have a consistent view of the network A B C D E F DD E E F F A B C D E F A B C D E F 39

40 Link State Routing: Properties Each node requires complete topology information Link state information must be flooded to all nodes Guaranteed to converge!!!

41 Link State Routing: The Basics 1. Each router establishes relationship ( adjacency ) with its neighbors. Each router generates Link State Advertisements (LSA's) and distributes them to all routers LSA = (link id, state of the link, cost, neighbors of the link) 3. Each router maintains database of all received LSAs topological database or link state database describes network as graph with weighted edges 4. Each router uses link state database to run shortest path algorithm, Dijikstra s algorithm, Result is shortest path to each network 5. Results create the routing table

4 Operation of Link State Routing protocol Received LSAs Link State Databas e Dijkstra s Algorithm IP Routing Table LSAs are flooded to other interfaces

Link State Example Build Complete Network Graph You are RouterA and you have exchanged Hellos with: RouterB on your network 11.0.0.0/8 with a cost of 15, RouterC on your network 1.0.0.0/8 with a cost of RouterD on your network 13.0.0.0/8 with a cost of 5 Have a leaf network 10.0.0.0/8 with a cost of This is your link-state information, which you will flood to all other routers. All other routers will also flood their link state information Comment- OSPF: Only within an AS area Leaf 10.0.0.0/8 This is me 11.0.0.0/8 15 1.0.0.0/8 A C 13.0.0.0/8 D 5 B 43

Link State information from Router B We get following link-state information from Router B: Connected to RouterA on network 11.0.0.0/8, cost of 15 Connected to RouterE on network 15.0.0.0/8, cost of Have a leaf network 14.0.0.0/8, cost of 11.0.0.0/8 15 14.0.0.0/8 B 15.0.0.0/8 A E 11.0.0.0/8 10.0.0.0/8 1.0.0.0/8 A C Now, RouterA attaches the two graphs 15 5 B 14.0.0.0/8 + = B 15.0.0.0/8 13.0.0.0/8 D A E 15 11.0.0.0/8 15 10.0.0.0/8 1.0.0.0/8 A 13.0.0.0/8 5 14.0.0.0/8 B C D 15.0.0.0/8 44 E

Link State information from Router C We get the following link-state information from Router C Connected to RouterA on network 1.0.0.0/8, cost of Connected to RouterD on network 16.0.0.0/8, cost of Have a leaf network 17.0.0.0/8, cost of A 1.0.0.0/8 C 16.0.0.0/8 D 17.0.0.0/8 11.0.0.0/8 15 10.0.0.0/8 1.0.0.0/8 A 5 14.0.0.0/8 B C 15.0.0.0/8 E Now, Router A attaches the two graphs + A 16.0.0.0/8 C D 17.0.0.0/8 11.0.0.0/8 15 14.0.0.0/8 B 15.0.0.0/8 13.0.0.0/8 D = 10.0.0.0/8 1.0.0.0/8 17.0.0.0/8 A C E 16.0.0.0/8 13.0.0.0/8 D 5 45

Link State information from Router D 10.0.0.0/8 A We get the following link-state information from Router D: Connected to RouterA on network 13.0.0.0/8, cost of 5 Connected to RouterC on network 16.0.0.0/8, cost of Connected to RouterE on network 18.0.0.0/8, cost of Have a leaf network 19.0.0.0/8, cost of 11.0.0.0/8 13.0.0.0/8 15 1.0.0.0/8 5 14.0.0.0/8 B 17.0.0.0/8 C D 16.0.0.0/8 15.0.0.0/8 E A + 5 C D 10 19.0.0.0/8 18.0.0.0/8 = E A A 5 13.0.0.0/8 11.0.0.0/8 15 C 16.0.0.0/8 18.0.0.0/8 D 1.0.0.0/8 C 5 B 16.0.0.0/8 D 10 19.0.0.0/8 Now, Router A attaches the two graphs 10.0.0.0/8 13.0.0.0/8 14.0.0.0/8 10 E 15.0.0.0/8 17.0.0.0/8 18.0.0.0/8 E 19.0.0.0/8 46

Link State information from Router E We get the following link-state information from RouterE: Connected to RouterB on network 15.0.0.0/8, cost of B 15.0.0.0/8 Connected to RouterD on network 18.0.0.0/8, cost of 10 Have a leaf network 0.0.0.0/8, cost of 14.0.0.0/8 Now, RouterA attaches the two graphs D 10 E 18.0.0.0/8 0.0.0.0/8 11.0.0.0/8 B 15.0.0.0/8 15 1.0.0.0/8 17.0.0.0/8 10.0.0.0/8 + A C E 16.0.0.0/8 5 10 13.0.0.0/8 D 18.0.0.0/8 19.0.0.0/8 B D 10 E 0.0.0.0/8 10.0.0.0/8 14.0.0.0/8 11.0.0.0/8 B 15.0.0.0/8 15 0.0.0.0/8 1.0.0.0/8 17.0.0.0/8 A C E 16.0.0.0/8 5 13.0.0.0/8 D 18.0.0.0/8 10 19.0.0.0/8 47

Topology Using topological information listed, Router A has a complete topology of network. What happens next? Next step is for link-state algorithm to find best path to each node and leaf network. 14.0.0.0/8 11.0.0.0/8 15 B 15.0.0.0/8 10.0.0.0/8 A 1.0.0.0/8 5 C 16.0.0.0/8 17.0.0.0/8 10 E 0.0.0.0/8 13.0.0.0/8 D 18.0.0.0/8 19.0.0.0/8 48

49 Simplified Link State Example RouterA s Topological Data Base (Link State Database) RouterB: Connected to RouterA on network 11.0.0.0/8, cost of 15 Connected to RouterE on network 15.0.0.0/8, cost of Has a leaf network 14.0.0.0/8, cost of 15 RouterC: Connected to RouterA on network 1.0.0.0/8, cost of Connected to RouterD on network 16.0.0.0/8, cost of Has a leaf network 17.0.0.0/8, cost of RouterD: Connected to RouterA on network 13.0.0.0/8, cost of 5 Connected to RouterC on network 16.0.0.0/8, cost of Connected to RouterE on network 18.0.0.0/8, cost of Has a leaf network 19.0.0.0/8, cost of RouterE: Connected to RouterB on network 15.0.0.0/8, cost of Connected to RouterD on network 18.0.0.0/8, cost of 10 Has a leaf network 0.0.0.0/8, cost of

Choosing the Best Path Using the link-state algorithm RouterA can now proceed to find the shortest path to each leaf network. 14.0.0.0/8 11.0.0.0/8 15 B 15.0.0.0/8 10.0.0.0/8 A 1.0.0.0/8 5 C 16.0.0.0/8 17.0.0.0/8 10 E 0.0.0.0/8 13.0.0.0/8 D 18.0.0.0/8 19.0.0.0/8 50

Choosing the Best Path Now RouterA knows the best path to each network, creating an SPT (Shortest Path Tree). 14.0.0.0/8 11.0.0.0/8 15 B 15.0.0.0/8 10.0.0.0/8 A 5 13.0.0.0/8 1.0.0.0/8 C 16.0.0.0/8 D 17.0.0.0/8 10 18.0.0.0/8 E 0.0.0.0/8 19.0.0.0/8 51

SPT Results Get Put into the Routing Table RouterA s Routing Table 10.0.0.0/8 connected e0 11.0.0.0/8 connected s0 1.0.0.0/8 connected s1 13.0.0.0/8 connected s 14.0.0.0/8 17 s0 15.0.0.0/8 17 s1 16.0.0.0/8 4 s1 10.0.0.0/8 17.0.0.0/8 4 s1 e0 18.0.0.0/8 14 s1 19.0.0.0/8 6 s1 0.0.0.0/8 16 s1 11.0.0.0/8 s0 A s s1 15 5 13.0.0.0/8 14.0.0.0/8 1.0.0.0/8 B C D 16.0.0.0/8 17.0.0.0/8 19.0.0.0/8 10 15.0.0.0/8 18.0.0.0/8 E 0.0.0.0/8

53 References Rip vs. OSPF http://www.networkcomputing.com/unixworld/feature/ 00.html Routing Overview http://networking.ringofsaturn.com/ip/routing.php

INTERNET MAPPING PROJECT Next http://www.cheswick.com/ches/map/ Reading: Moving on to Chapter 5!!! 54

1

Alice Bob Routing Algorithms 7

Purpose of Routing Protocols Routing protocols are used to exchange routing information between routers. A routing protocol is: Set of processes, algorithms, and messages used to exchange routing information and populate the routing table with the best paths The purpose of dynamic routing protocols includes: Discovery of remote networks Maintaining up-to-date routing information Choosing the best path to destination networks Ability to find new best path if current path is no longer available 8

Bellman-Ford algorithm 1

Routing Information Protocol As an Example of Distance Vector 5

7

39

A 44

A 45

A 46

A 47

A 48

A 50

A 51

5