CS 3516: Advanced Computer Networks

Similar documents
CS 3516: Advanced Computer Networks

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

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

Chapter 4: Network Layer

Interplay between routing, forwarding

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

Network Layer: Routing

Chapter IV: Network Layer

Routing Algorithm Classification. A Link-State Routing Algorithm

Computer Networks. Instructor: Niklas Carlsson

Chapter 4: Network Layer

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

Interplay tra routing e forwarding

Network Layer: Control Plane 5-2

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

DATA COMMUNICATOIN NETWORKING

Network layer. Two Key Network-Layer Functions. Datagram Forwarding table. IP datagram format. IP Addressing: introduction

Chapter 4: Network Layer: Part II

Chapter 4 Network Layer. Network Layer 4-1

CSC 401 Data and Computer Communications Networks

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

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

Assignments. Computer Networks LECTURE 7 Network Layer: Routing and Addressing. Network Layer Function. Internet Architecture

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

Chapter 4 Network Layer

CSC 4900 Computer Networks: Routing Algorithms

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

Chapter 4: Network Layer. TDTS06 Computer networks. Chapter 4: Network Layer. Network layer. Two Key Network-Layer Functions

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

Protocoles et Interconnexions

Chapter 4 Network Layer

Chapter 5 Network Layer: The Control Plane

Summary Chapter 4. Smith College, CSC 249 March 2, q IP Addressing. q DHCP dynamic addressing

Chapter 5: Network Layer Control Plane. understand principles behind network control plane : traditional routing algorithms

Chapter 4 Network Layer

11/13/2017 Network Layer (SSL) Network-layer functions. Recall the two network-layer functions:

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

Chapter 4: Network Layer, partb

Routing Algorithms : Fundamentals of Computer Networks Bill Nace

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

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

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

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

Chapter 4 Network Layer

CS 3516: Advanced Computer Networks

Network layer: Overview. Network layer functions Routing IP Forwarding

4.5.2 The Distance-Vector (DV) Routing Algorithm

CSCE 463/612 Networks and Distributed Processing Spring 2018

CS 3516: Computer Networks

CSCE 463/612 Networks and Distributed Processing Spring 2017

Chapter 5 Network Layer

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

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

Chapter 4: Network Layer

Initialization: Loop until all nodes in N

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2017

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

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 3516: Computer Networks

EE 122: Intra-domain routing

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

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

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

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

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

Announcements. CS 5565 Network Architecture and Protocols. Count-To-Infinity. Poisoned Reverse. Distance Vector: Link Cost Changes.

Step N' D(v),p(v) D(w),p(w) D(x),p(x) D(y),p(y) D(z),p(z) 0 u 7,u 3,u 5,u. N (uw) update D(v), D(x), D(y), D(z)

Redes de Computadores. Shortest Paths in Networks

CS 3516: Computer Networks

CS 3516: Advanced Computer Networks

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

Module 3 Network Layer CS755! 3-1!

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

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

CS 3516: Computer Networks

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

Flooding. Routing: Outlook. Flooding Algorithms. Spanning Tree. Flooding

CS 3516: Advanced Computer Networks

Chapter 4: Network Layer

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

COMP/ELEC 429/556 Introduction to Computer Networks

Lecture 4. The Network Layer (cont d)

Internet Architecture. Network Layer Overview. Fundamental Network Layer Function. Protocol Layering and Data. Computer Networks 9/23/2009

CS 3516: Advanced Computer Networks

CSC 8560 Computer Networks: Control Plane

Dynamic Routing. The Protocols

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

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

CSCI Topics: Internet Programming Fall 2008

CS 3516: Computer Networks

Routing Algorithms. CS158a Chris Pollett Apr 4, 2007.

CSc 450/550 Computer Networks Internet Routing

CS118 Discussion Week 7. Taqi

Routing Protocols and the IP Layer

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

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

Routing Algorithms. 1 Administrivia. Tom Kelliher, CS 325. Apr. 25, Announcements. Assignment. Read 4.6. From Last Time. IP protocol.

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

CS 3516: Computer Networks

Transcription:

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: A Top Down Approach, 7th edition, b Jim Kurose, Keith Ross, Addison-Wesle March 06. Copright 996-07 J.F Kurose and K.W. Ross, All Rights Resered.

Chapter 5: outline 5. routing algorithms link state distance ector Network Laer 4-

Interpla between routing, forwarding routing algorithm local forwarding table dest address output link address-range address-range address-range address-range 4 routing algorithm determines end-end-path through network forwarding table determines local forwarding at this router IP destination address in arriing packet s header Network Laer 4-

Graph abstraction 5 graph: G = (N,E) u w 5 N = set of routers = { u,, w,,, } E = set of links ={ (u,), (u,), (u,w), (,), (,w), (,w), (,), (w,), (w,), (,) } aside: graph abstraction is useful in other network contets, e.g., PP, where N is set of peers and E is set of TCP connections Network Laer 4-4

Graph abstraction: costs u 5 w 5 c(, ) = cost of link (, ) e.g., c(w,) = 5 cost could alwas be, or inersel related to bandwidth. cost of path (,,,, p ) = c(, ) + c(, ) + + c( p-, p ) ke question: what is the least-cost path between u and? routing algorithm: algorithm that finds that least cost path Network Laer 4-5

Routing algorithm classification Q: global or decentralied information? global: all routers hae complete topolog, link cost info link state algorithms decentralied: router knows phsicallconnected neighbors, link costs to neighbors iteratie process of computation, echange of info with neighbors distance ector algorithms Q: static or dnamic? static: routes change slowl oer time dnamic: routes change more quickl periodic update in response to link cost changes Network Laer 4-6

Chapter 5: outline 5. routing algorithms link state distance ector Network Laer 4-7

A Link-State Routing Algorithm Dijkstra s algorithm net topolog, link costs known to all nodes accomplished ia link state broadcast all nodes hae same info computes least cost paths one node ("source ) to all other nodes gies forwarding table for that node iteratie: after k iterations, know least cost path to k nearest dest. s notation: gien src u c(,): link cost node to ; = if not direct neighbors D(): current alue of cost of path source to dest. p(): predecessor node along path source to N': set of nodes whose least cost path definitiel known Network Laer 4-8

hop Dijsktra s Algorithm k hops 0 Collect global topolog info Initialiation: N' = {u} for all nodes 4 if adjacent to u 5 then D() = c(u,) 6 else D() = 7 8 Loop 9 find w not in N' such that D(w) is a minimum 0 add w to N' update D() for all adjacent to w and not in N' : D() = min( D(), D(w) + c(w,) ) /* new is either old or known 4 shortest path w plus cost w to */ 5 until all nodes in N' notation: gien src u D(): current alue of cost of path source to dest. p(): predecessor node along path source to N': set of nodes whose least cost path definitiel known Network Laer 4-9

Dijkstra s algorithm: eample D() p() D(w) p(w) D() p() D() p() D() p() Step N' 0 u 7,u,u 5,u uw 6,w 5,u,w uw 6,w,w 4, uw 0, 4, 4 uw, 5 uw notes: construct shortest path b tracing predecessor nodes ties can eist (can be broken arbitraril) u 5 D() = min( D(), D(w) + c(w,) ) w 4 8 7 7 4 9 Network Laer 4-0

Dijkstra s algorithm: another eample 5 w 5 u Network Laer 4-

Network Laer 4- Dijkstra s algorithm: another eample Step 0 4 5 N' u u u u uw uw D(),p(),u,u,u D(w),p(w) 5,u 4,,, D(),p(),u D(),p(), D(),p() 4, 4, 4, u w 5 5

Dijkstra s algorithm: eample () resulting shortest-paths u: w u resulting forwarding table in u: destination w link (u,) (u,) (u,) (u,) (u,) Network Laer 4-

Chapter 5: outline 5. routing algorithms link state distance ector Network Laer 4-4

Distance ector algorithm Bellman-Ford equation (dnamic programming) let d () := cost of least-cost path to then d () = min {c(,) + d () } cost neighbor to destination neighbor min taken oer all neighbors of Network Laer 4-5

Bellman-Ford eample u 5 w 5 clearl, d () = 5, d () =, d w () = B-F equation sas: d u () = min { c(u,) + d (), c(u,) + d (), c(u,w) + d w () } = min { + 5, +, 5 + } = 4 node achieing minimum is net hop in shortest path, used in forwarding table Network Laer 4-6

Distance ector algorithm D () = estimate of least cost to maintains distance ector D = [D (): є N ] node : knows each neighbor : c(,) maintains its neighbors distance ectors. For each neighbor, maintains D = [D (): є N ] Network Laer 4-7

Distance ector algorithm ke idea: time-to-time, each node sends its own distance ector estimate to neighbors when receies new DV estimate neighbor, it updates its own DV using B-F equation: D () min {c(,) + D ()} for each node N under minor, natural conditions, the estimate D () conerge to the actual least cost d () Network Laer 4-8

Distance ector algorithm iteratie, asnchronous: each local iteration caused b: local link cost change DV update message neighbor distributed: each node notifies neighbors onl when its DV changes neighbors then notif their neighbors if necessar each node: wait for (change in local link cost or msg neighbor) recompute estimates if DV to an dest has changed, notif neighbors Network Laer 4-9

node table 0 7 D () = min{c(,) + D (), c(,) + D ()} = min{+0, 7+} = 0 0 7 0 D () = min{c(,) + D (), c(,) + D ()} = min{+, 7+0} = node table 0 7 node table 7 0 time Network Laer 4-0

node table node table 0 7 0 D () = min{c(,) + D (), c(,) + D ()} = min{+0, 7+} = 0 0 7 0 0 7 0 7 0 0 0 0 0 0 0 D () = min{c(,) + D (), c(,) + D ()} = min{+, 7+0} = 7 node table 7 0 0 7 0 0 0 0 0 time Network Laer 4-

Distance ector: link cost changes link cost changes: node detects local link cost change updates routing info, recalculates distance ector if DV changes, notif neighbors 4 50 good news traels fast t 0 : detects link-cost change, updates its DV, informs its neighbors. t : receies update, updates its table, computes new least, sends its neighbors its DV. t : receies s update, updates its distance table. s least costs do not change, so does not send a message to. Network Laer 4-

Distance ector: link cost changes link cost changes: node detects local link cost change bad news traels slow - count to infinit problem! 44 iterations before algorithm stabilies: see tet D()=6, D()=5 60 4 50 D()=4, D()=5 D()=8, D()=7 60 4 50 D()=8, D()=9 60 4 44 iterations D()=6, D()=5 50 D()=6, D()=7 D()=4, D()=5 60 4 50 D()=4, D()=5 Network Laer 4-

Comparison of LS and DV algorithms message compleit LS: with n nodes, E links, O(nE) msgs sent DV: echange between neighbors onl conergence time aries robustness: what happens if router malfunctions? LS: node can adertise incorrect link cost each node computes onl its own table DV: DV node can adertise incorrect path cost each node s table used b others error propagate thru network Network Laer 4-4

Questions? Network Laer 4-5