1 / 19

ECE453 – Introduction to Computer Networks

ECE453 – Introduction to Computer Networks. Lecture 9 - The Network Layer (I) - Routing. Recap. Framing Error detection and correction Reliable or unreliable data transfer Channel allocation protocol. network data link physical. network data link physical. logical end-end transport.

renate
Download Presentation

ECE453 – Introduction to Computer Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ECE453 – Introduction to Computer Networks Lecture 9 - The Network Layer (I) - Routing

  2. Recap • Framing • Error detection and correction • Reliable or unreliable data transfer • Channel allocation protocol

  3. network data link physical network data link physical logical end-end transport Network Core and Network Edge Network core application transport network data link physical Network edge application transport network data link physical

  4. Network Core – Information Transmission • Circuit switching • Telephone system • Message switching • Mail delivery • The message travels as a complete unit. At any one time, it completely exists in one place. • Packet switching • The Internet

  5. Design Issues • Store-and-forward packet switching • Services to the transport layer • Connection-oriented vs. Connectionless • Quality of service (QoS)

  6. Connectionless Best-effort No guarantee The Internet No advance setup is needed Datagram subnet Connection-oriented Guaranteed delivery ATM A path from the source router to the destination router is established before any data packets can be sent Virtual circuit Network Layer Services

  7. ICMP protocol • error reporting • router “signaling” • IP protocol • addressing conventions • datagram format • packet handling conventions • Routing protocols • path selection • RIP, OSPF, BGP routing table The Internet Network Layer Transport layer: TCP, UDP Network layer Link layer physical layer

  8. Routing - In the Middle of Intersection …

  9. Nonadaptive algorithms (or static routing) Adaptive algorithms (or dynamic routing) Global algorithm (have a global knowledge – a map) Decentralized algorithm (get information only from neighbor) Different Strategies

  10. 5 3 5 2 2 1 3 1 2 1 A D B E F C Graph Abstraction for Routing Algorithms • Graph nodes  Routers • Graph edge  Physical links • Edge weight  Link cost • Link cost • Delay, power consumption, congestion level, $cost, etc. • Good path or optimal path • Minimum link cost

  11. Two Fundamental Routing Algorithms • Link state routing • A global algorithm • Distance vector routing (or Bellman-Ford routing, Ford-Fulkerson routing) • A decentralized algorithm • The original ARPANET routing algorithm, replaced by LS routing in 1979

  12. A Link State Routing Algorithm Dijkstra’s algorithm • Net topology, link costs known to all nodes • accomplished via “link state broadcast” • all nodes have the same info • computes least cost paths from the source to all other nodes • Iterative algorithm

  13. 5 3 5 2 2 1 3 1 2 1 A D E B F C Dijkstra’s Algorithm: An Example D(B),p(B) 2,A 2,A 2,A D(D),p(D) 1,A D(C),p(C) 5,A 4,D 3,E 3,E D(E),p(E) infinity 2,D Step 0 1 2 3 4 5 start N A AD ADE ADEB ADEBC ADEBCF D(F),p(F) infinity infinity 4,E 4,E 4,E

  14. A A A A D D D D B B B B C C C C 2+e 2+e 0 0 1 1 1+e 1+e 0 e 0 0 Dijkstra’s Algorithm: Discussion Algorithm complexity: n nodes • each iteration: need to check all nodes, not in N • n*(n+1)/2 comparisons: O(n**2) • more efficient implementations possible: O(nlogn) Oscillations possible: • e.g., link cost = amount of carried traffic 1 1+e 0 2+e 0 0 0 0 e 0 1 1+e 1 1 e … recompute … recompute routing … recompute initially

  15. cost to destination via E D () A B C D A 1 7 6 4 B 14 8 9 11 D 5 5 4 2 destination distance from X to Y, via Z as next hop X = D (Y,Z) Z c(X,Z) + min {D (Y,w)} = w DV Routing • Each router maintains a distance table • Initialization • 0 for itself • Infinity for non-neighbor • Link cost for neighbor • Message exchange between neighbors • When a neighbor first comes up • When information changes (e.g. change in link cost) • Distance vector calculation • Minimize cost to each destination Iterative routing Distributed routing

  16. 2 1 7 X Z Y DV: Example Y X Z

  17. 1 4 1 50 X Z Y DV: Link Cost Changes Y “good news travels fast” Z X algorithm terminates

  18. 60 4 1 50 X Z Y DV: Link Cost Changes “bad news travels slow” Count to infinity problem algorithm continues on!

  19. cost to destination via E D () A B C D A 1 7 6 4 B 14 8 9 11 D 5 5 4 2 1 7 2 8 1 destination 2 A D E B C E E E D (C,D) D (A,D) D (A,B) D B D c(E,B) + min {D (A,w)} c(E,D) + min {D (A,w)} c(E,D) + min {D (C,w)} = = = w w w = = = 8+6 = 14 2+2 = 4 2+3 = 5 Distance Table: An Example loop! loop!

More Related