Data and Computer Communications Ninth Edition by William Stallings Unit 12 – Routing in Switched Data Networks Data and Computer Communications, Ninth.

Slides:



Advertisements
Similar presentations
Ch. 12 Routing in Switched Networks
Advertisements

1 Routing Protocols I. 2 Routing Recall: There are two parts to routing IP packets: 1. How to pass a packet from an input interface to the output interface.
Interior Routing Protocols Chapter 11: Routing in IP
Ch. 12 Routing in Switched Networks Routing in Packet Switched Networks Routing Algorithm Requirements –Correctness –Simplicity –Robustness--the.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 12 – Routing in Switched Networks.
Data and Computer Communications
CS4550: Computer Networks II network layer basics 3 routing & congestion control.
William Stallings Data and Computer Communications 7 th Edition Chapter 12 Routing.
Data and Computer Communications Ninth Edition by William Stallings Chapter 12 – Routing in Switched Data Networks Data and Computer Communications, Ninth.
Routing Basics What’s going on the back … Faisal Karim Shaikh DEWSNet Group Dependable Embedded Wired/Wireless Networks.
Computer Networks with Internet Technology William Stallings
Computer Networks with Internet Technology William Stallings
Routing Strategies Fixed Routing
1 Routing Lesson 10 NETS2150/2850 School of Information Technologies.
EE 4272Spring, 2003 Chapter 10 Packet Switching Packet Switching Principles  Switching Techniques  Packet Size  Comparison of Circuit Switching & Packet.
Wide Area Networks School of Business Eastern Illinois University © Abdou Illia, Spring 2007 (Week 11, Thursday 3/22/2007)
Computer Networks The Data Link / Network Layer Functions: Routing
Data Communications Packet Switching.
Teknik Routing Pertemuan 20 Matakuliah: H0484/Jaringan Komputer Tahun: 2007.
Data Communication and Networks Lecture 7 Networks: Part 2 Routing Algorithms October 27, 2005.
Chapter 10 Introduction to Wide Area Networks Data Communications and Computer Networks: A Business User’s Approach.
Packet Switching EE3900 Data Communications and LANs Packet Switching Slide 1.
Routing Protocol Pertemuan 21 Matakuliah: H0484/Jaringan Komputer Tahun: 2007.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 21 Introduction to Computer Networks.
The Internet: Packet Switching and Other Big Ideas Ian Foster.
William Stallings Data and Computer Communications 7th Edition (Selected slides used for lectures at Bina Nusantara University) Routing.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
Layer-3 Routing Natawut Nupairoj, Ph.D. Department of Computer Engineering Chulalongkorn University.
ROUTING ON THE INTERNET COSC Aug-15. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
Switching Techniques Student: Blidaru Catalina Elena.
Data Communications and Networking
Data Communications & Computer Networks
SAvPS – úvod Genči 2009 (bsaed on Tanenbaum’s slides.
1 Pertemuan 20 Teknik Routing Matakuliah: H0174/Jaringan Komputer Tahun: 2006 Versi: 1/0.
Chapter 12 Routing in Switched Networks. Routing in Packet Switched Network  key design issue for (packet) switched networks  select route across network.
Computer Networks with Internet Technology William Stallings Chapter 11 Interior Routing Protocols.
Chapter 15 Interior Routing Protocols 1 Chapter 15 Interior Routing Protocols.
Network and Communications Ju Wang Chapter 5 Routing Algorithm Adopted from Choi’s notes Virginia Commonwealth University.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
CIS Routing in IP. Introduction Routers forward IP datagrams from one router to another on path from source to destination Router must have idea.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
Computer Networks with Internet Technology William Stallings
CSCI 465 D ata Communications and Networks Lecture 15 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Data Communications and Networking Chapter 11 Routing in Switched Networks References: Book Chapters 12.1, 12.3 Data and Computer Communications, 8th edition.
Advance Computer Networks Lecture#08 Instructor: Engr. Muhammad Mateen Yaqoob.
TELE202 Lecture 6 Routing in WAN 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »Packet switching in Wide Area Networks »Source: chapter 10 ¥This Lecture.
Routing Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by: Copyright 2009 Asia Pacific Institute of Information.
William Stallings Data and Computer Communications 7th Edition
Teknik Routing Pertemuan 10 Matakuliah: H0524/Jaringan Komputer Tahun: 2009.
Computer Networks with Internet Technology William Stallings Chapter 11 Interior Routing Protocols.
Shortest Path Algorithm
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
Computer Networks with Internet Technology William Stallings Chapter 11 Interior Routing Protocols.
Distance Vector Routing
Data and Computer Communications Tenth Edition by William Stallings Data and Computer Communications, Tenth Edition by William Stallings, (c) Pearson Education.
6/12/2016© 2010 Raymond P. Jefferis IIILect The Network Layer.
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
William Stallings Data and Computer Communications
Network Layer COMPUTER NETWORKS Networking Standards (Network LAYER)
Dijkstra’s shortest path Algorithm
Network Layer – Routing 1
Computer Networks The Data Link / Network Layer Functions: Routing
Shortest Path Algorithm
Packet Switching Around 1970, research began on a new form of architecture for long distance communications: Packet Switching.
Data and Computer Communications
ECE453 – Introduction to Computer Networks
PRESENTATION COMPUTER NETWORKS
Chapter 10. Packet Switching
Shortest Path Algorithm
CSCI 465 Data Communications and Networks Lecture 16
Presentation transcript:

Data and Computer Communications Ninth Edition by William Stallings Unit 12 – Routing in Switched Data Networks Data and Computer Communications, Ninth Edition by William Stallings, (c) Pearson Education - Prentice Hall, 2011

Routing in Packet Switching Networks  key design issue for (packet) switched networks  select route across network between end nodes  characteristics required: correctness correctness simplicity simplicity robustness (delivery in face of failures and overloads) robustness (delivery in face of failures and overloads) stability (dynamic state of links) stability (dynamic state of links) fairness (nearby versus faraway nodes) fairness (nearby versus faraway nodes) optimality (maximize average throughput) optimality (maximize average throughput) efficiency (processing overhead) efficiency (processing overhead)

Performance Criteria  used for selection of route  simplest is to choose “minimum hop”  can be generalized as “least cost” routing  because actual “least cost” is more flexible (with similar computational effort) it is more common than “minimum hop”

Elements of Routing Techniques for Packet- Switching Networks

Example of Packet Switched Network The shortest path (fewest hops) from node 1 to node 6 is (cost is = 10), but least-cost path is (cost is = 4). Costs are assigned to links to support one or more design objectives. For example, cost could be inversely related to data rate (higher data rate on a link, lower assigned cost of link) or current queuing delay on link.

Decision Time and Place decision time packet or virtual circuit basis fixed or dynamically changing decision place distributed - made by each node more complex, but also more robust centralized – made by a designated node source – made by source station and communicated to network

Network Information Source and Update Timing  routing decisions usually based on (static or dynamic) knowledge of network, traffic load, and link cost distributed routing distributed routing using local knowledge, information from adjacent nodes, information from all nodes on a potential routeusing local knowledge, information from adjacent nodes, information from all nodes on a potential route central routing central routing collect information from all nodescollect information from all nodes issue of update timing depends on routing strategy fixed - never updated adaptive - regular updates to adapt to changing conditions

Routing Strategies - Fixed Routing  use a single permanent route for each source to destination pair of nodes  determined using a least cost algorithm  route is fixed until a change in network topology until a change in network topology based on expected traffic or capacity based on expected traffic or capacity cannot be based on dynamic variable (traffic) cannot be based on dynamic variable (traffic)  advantage is simplicity  disadvantage is lack of flexibility does not react to network failure or congestion does not react to network failure or congestion

Fixed Routing Tables Central routing matrix (perhaps stored at network control center) – for each source- destination pair, identity of next node on the route – complete routes not stored, only first node on route From matrix, routing tables developed and stored at each node No difference between datagram and virtual circuit No flexibility unless refined via alternate next nodes provided

Routing Strategies - Flooding  no network information required  packet sent by node to every neighbor  eventually multiple copies arrive at destination  each packet is uniquely numbered so duplicates can be discarded  need to limit incessant retransmission of packets nodes can remember identity of packets retransmitted nodes can remember identity of packets retransmitted can include a hop count, such as the diameter (length of the longest minimum-hop path through the network) of the network, in packets can include a hop count, such as the diameter (length of the longest minimum-hop path through the network) of the network, in packets decrement at each node; discard packet when count reaches zero decrement at each node; discard packet when count reaches zero

Properties of Flooding all possible routes are tried highly robust can be used to send emergency messages at least one packet will have taken minimum hop route nodes directly or indirectly connected to source are visited Disadvantages: high traffic load generated security concerns

Flooding Example 3 packets 9 packets 22 packets Packet to be sent from node 1 to node 6 Note: if hop count field used in each packet, such set as diameter (length of longest minimum-hop path through the network) of network - i.e. for each pair of end systems attached to network, there is a minimum hop path - length of longest such path is diameter of network

Routing Strategies - Random Routing  simplicity of flooding with much less traffic load  node selects one outgoing path for retransmission of incoming packet  selection can be random or round robin  a refinement is to select outgoing path based on probability calculation – based on data rate or fixed link costs ( e.g. R i /  R j )  no network information (overhead) needed  random route is typically neither least cost nor minimum hop – network must carry a higher than optimum traffic load (not as high as flooding)

Routing Strategies - Adaptive Routing  used by almost all packet switching networks  routing decisions change as conditions on the network change due to failure or congestion  requires (dynamic) information about network  Disadvantages: decisions more complex (node processing burden) decisions more complex (node processing burden) tradeoff between quality of network information and overhead (status info collected in one place, used in another) tradeoff between quality of network information and overhead (status info collected in one place, used in another) reacting too quickly can cause oscillation reacting too quickly can cause oscillation reacting too slowly means information may be irrelevant reacting too slowly means information may be irrelevant

Adaptive Routing Advantages improved performance aid in congestion control (we will see more later) *These benefits depend on the soundness of the design and nature of the load.

Classification of Adaptive Routing Strategies  on the basis of information source

Isolated Adaptive Routing packet arrives at node 4 from node 1 with destination node 6 – min value is on link through node 3 since Q + B 6 is 4 (1 + 3) note: (outgoing) queue lengths of receiving node

Least Cost Algorithms  for example: Dijkstra or Bellman-Ford algorithms (Floyd-Warshall all nodes) for each pair of nodes, find path with least cost link costs in different directions may be different defines cost of path between two nodes as sum of costs of links traversed network of nodes connected by bi- directional links link has a cost in each direction basis for routing decisions minimize hop with each link cost of 1 have link value inversely proportional to capacity

Least Cost Algorithms  Basis for routing decisions Can minimize hop with each link cost 1 Can minimize hop with each link cost 1 Can have link value inversely proportional to capacity Can have link value inversely proportional to capacity  Given network of nodes connected by bi-directional links  Each link has a cost in each direction  Define cost of path between two nodes as sum of costs of links traversed  For each pair of nodes, find a path with the least cost  Link costs in different directions may be different e.g. length of packet queue e.g. length of packet queue

Dijkstra’s Algorithm  Find shortest paths from given source node to all other nodes, by developing paths in order of increasing path length  N =set of nodes in the network  s =source node  T =set of nodes so far incorporated by the algorithm  w(i, j) = link cost from node i to node j w(i, i) = 0 w(i, i) = 0 w(i, j) =  if the two nodes are not directly connected w(i, j) =  if the two nodes are not directly connected w(i, j)  0 if the two nodes are directly connected w(i, j)  0 if the two nodes are directly connected  L(n) = cost of least-cost path from node s to node n currently known At termination, L(n) is cost of least-cost path from s to n At termination, L(n) is cost of least-cost path from s to n

Dijkstra’s Algorithm Method  Step 1 [Initialization] T = {s} Set of nodes so far incorporated consists of only source node T = {s} Set of nodes so far incorporated consists of only source node L(n) = w(s, n) for n ≠ s L(n) = w(s, n) for n ≠ s Initial path costs to neighboring nodes are simply link costs Initial path costs to neighboring nodes are simply link costs  Step 2 [Get Next Node] Find neighboring node not in T with least-cost path from s Find neighboring node not in T with least-cost path from s Incorporate node into T Incorporate node into T Also incorporate the edge that is incident on that node and a node in T that contributes to the path Also incorporate the edge that is incident on that node and a node in T that contributes to the path  Step 3 [Update Least-Cost Paths] L(n) = min[L(n), L(x) + w(x, n)] for all n  T L(n) = min[L(n), L(x) + w(x, n)] for all n  T If latter term is minimum, path from s to n is path from s to x concatenated with edge from x to n If latter term is minimum, path from s to n is path from s to x concatenated with edge from x to n  Algorithm terminates when all nodes have been added to T

Dijkstra’s Algorithm Notes  At termination, value L(x) associated with each node x is cost (length) of least-cost path from s to x.  In addition, T defines least-cost path from s to each other node  One iteration of steps 2 and 3 adds one new node to T Defines least cost path from s to that node Defines least cost path from s to that node

Example of Dijkstra’s Algorithm

Ite rat ion TL(2)PathL(3)PathL(4)PathL(5)PathL(6)Path 1{1}21– –4-- 2 {1,4} 21– –421-4–5- 3 {1, 2, 4} 21– –421-4–5- 4 {1, 2, 4, 5} 21– –421-4– –6 5 {1, 2, 3, 4, 5} 21– –421-4– –6 6 {1, 2, 3, 4, 5, 6} –

25 Dijkstra’s Algorithm

Set value[0] to 0, the rest of the values to  Place node 0 (the source) into class 1, the rest into class 2 while the sink node is not in class 1 do The last node put in class 1 is the pivotal node for all nodes j in class 2: if this node j is not connected to the pivotal node then do nothing else if the value of the pivotal node + edge value is less than value of node j then value of node j is assigned then value of node j is assigned the value of the pivotal node + edge value else do nothing end for Add the node in class 2 with minimum value to class 1 end while L(n) = min[L(n), L(x) + w(x, n)] for all n  T

27 Dijkstra’s Algorithm PREDECESSORPIVOTAL NODEClass 1 = value[0] =Class 2 = value[1] = ∞ value[2] = ∞ value[3] = ∞ value[4] = ∞ value[5] = ∞ value[6] = ∞

28 Another Example a edc b

ARPANET Routing Strategies  First Generation ARPANET - foundation of present-day Internet ARPANET - foundation of present-day Internet Distributed adaptive routing Distributed adaptive routing Estimated delay as performance criterion (distance- vector routing – Delay and Successor vectors for each node) Estimated delay as performance criterion (distance- vector routing – Delay and Successor vectors for each node) Node exchanges delay vector with neighbors (every 128 milliseconds) Node exchanges delay vector with neighbors (every 128 milliseconds) Update routing table based on incoming info Update routing table based on incoming info Bellman-Ford algorithm (least-cost routing algorithm) Bellman-Ford algorithm (least-cost routing algorithm) Doesn't consider link speed; just uses queue length as estimator of node delay Doesn't consider link speed; just uses queue length as estimator of node delay Queue length not a good measurement of delay Queue length not a good measurement of delay Responds slowly to congestion Responds slowly to congestion

ARPANET Routing Strategies  Second Generation Addressed shortcomings of first generation (i.e. in which line speed not considered – only queue length … slow response to congestion) Addressed shortcomings of first generation (i.e. in which line speed not considered – only queue length … slow response to congestion) Used delay as performance criterion Used delay as performance criterion Delay measured directly (not just as the artificial measure of queue length - using packet time-stamping - departure time minus arrival time plus transmission and propagation times – thus includes link data rate) – every 10 seconds Delay measured directly (not just as the artificial measure of queue length - using packet time-stamping - departure time minus arrival time plus transmission and propagation times – thus includes link data rate) – every 10 seconds If significant delay changes, then flood this info out to all other nodes If significant delay changes, then flood this info out to all other nodes (re)computation using Dijkstra’s least-cost algorithm (re)computation using Dijkstra’s least-cost algorithm works good under light and medium loads works good under light and medium loads but under heavy loads, little correlation between reported delays and those experienced but under heavy loads, little correlation between reported delays and those experienced

ARPANET Routing Strategies  Third Generation as network load grew, new strategy needed as network load grew, new strategy needed Link cost calculations changed Link cost calculations changed Measure average delay over last 10 seconds – routing so that average path good instead of all routes Measure average delay over last 10 seconds – routing so that average path good instead of all routes Normalize to value achieved on idle line (just transmission and propagation times) and based on current value versus previous results Normalize to value achieved on idle line (just transmission and propagation times) and based on current value versus previous results Revised cost function keyed to utilization rather than delay Revised cost function keyed to utilization rather than delay Function acts similar to delay-based metric under light loads and to capacity-based metric under heavier loads Function acts similar to delay-based metric under light loads and to capacity-based metric under heavier loads

Summary  routing in packet-switched networks  routing techniques  routing strategies fixed, flooding, random, adaptive fixed, flooding, random, adaptive  least-cost algorithms Dijkstra, Bellman-Ford Dijkstra, Bellman-Ford  evolution of ARPANET routing strategies