William Stallings Data and Computer Communications 7th Edition

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.
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.
Data Communications & Computer Networks
Distributed Quality-of-Service Routing of Best Constrained Shortest Paths. Abdelhamid MELLOUK, Said HOCEINI, Farid BAGUENINE, Mustapha CHEURFA Computers.
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.
Routing in Communication Networks Routing: Network layer protocol that guides information units to correct destinations. A complex collection of decision.
Computer Networks with Internet Technology William Stallings Chapter 11 Interior Routing Protocols.
Packet-Switching Networks Routing in Packet Networks.
TCP Traffic and Congestion Control in ATM Networks
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.
1 Week 5 Lecture 2 IP Layer. 2 Network layer functions transport packet from sending to receiving hosts transport packet from sending to receiving hosts.
Data and Computer Communications Ninth Edition by William Stallings Unit 12 – Routing in Switched Data Networks Data and Computer Communications, Ninth.
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.
Internet Routing r Routing algorithms m Link state m Distance Vector m Hierarchical routing r Routing protocols m RIP m OSPF m BGP.
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.
4: Network Layer4-1 Chapter 4: Network Layer Last time: r Chapter Goals m Understand network layer principles and Internet implementation r Started routing.
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.
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
Chapter 10. Packet Switching
Shortest Path Algorithm
CSCI 465 Data Communications and Networks Lecture 16
Presentation transcript:

William Stallings Data and Computer Communications 7th Edition Chapter 12 Routing

Routing in Circuit Switched Network Many connections will need paths through more than one switch Need to find a route Efficiency Resilience Public telephone switches are a tree structure Static routing uses the same approach all the time Dynamic routing allows for changes in routing depending on traffic Uses a peer structure for nodes Complex and flexible

Alternate Routing Possible routes between end offices predefined Originating switch selects appropriate route Routes listed in preference order Different sets of routes may be used at different times

Alternate Routing Diagram Between X and Y

Routing in Packet Switched Network Complex, crucial aspect of packet switched networks Characteristics required Correctness Simplicity Robustness Stability Fairness Optimality Efficiency

Performance Criteria Used for selection of route Minimum hop Least cost Delay Throughput (or data rate) From node 1 to 6 in Fig. 12.2

Example Packet Switched Network

Decision Time and Place Packet or virtual circuit basis Place Distributed Made by each node Centralized Source

Network Information Source and Update Timing Routing decisions usually based on knowledge of network (not always) Topology, traffic load, link cost Distributed routing Nodes use local knowledge May collect info from adjacent nodes May collect info from all nodes on a potential route Centralized routing Collect info from all nodes Update timing When is network info held by nodes updated Fixed - never updated Adaptive - regular updates

Routing Strategies Fixed Flooding Random Adaptive

Fixed Routing Single permanent route for each source to destination pair Determine routes using a least cost algorithm Route fixed, at least until a change in network topology

Fixed Routing Tables Consider Figure 12.2

Flooding No network info required Packet sent by node to every neighbor Incoming packets retransmitted on every link except incoming link Eventually a number of copies will arrive at destination Each packet is uniquely numbered so duplicates can be discarded Nodes can remember packets already forwarded to keep network load in bounds Can include a hop count in packets

Flooding Example

Properties of Flooding All possible routes are tried Very robust At least one packet will have taken minimum hop count route Can be used to set up virtual circuit All nodes are visited Useful to distribute information (e.g. routing)

Random Routing Node selects one outgoing path for retransmission of incoming packet Selection can be random or round robin Can select outgoing path based on probability calculation No network info needed Route is typically not least cost nor minimum hop p. 377, equation

Adaptive Routing Used by almost all packet switching networks Routing decisions change as conditions on the network change Failure Congestion Requires info about network Decisions more complex Tradeoff between quality of network info and overhead More info. and/or more frequent update will enable better routing decision More load on network Reacting too quickly can cause oscillation Too slowly to be irrelevant

Adaptive Routing - Advantages Improved performance Aid congestion control (See chapter 13) Complex system May not realize theoretical benefits

Adaptive routing - Classification Based on information sources Local (isolated) Route to outgoing link with shortest queue Can include bias for each destination Rarely used - do not make use of easily available info Adjacent nodes All nodes

Isolated Adaptive Routing Fig.12.5

ARPANET Routing Strategies(1) First Generation 1969 Distributed adaptive Estimated delay as performance criterion Bellman-Ford algorithm (ch 12, sec 3) Node exchanges delay vector with neighbors Update routing table based on incoming info Doesn't consider line speed, just queue length Queue length not a good measurement of delay Queue length changes rapidly Thrashing situation Packet seeks out low congestion link rather than link toward destination Responds slowly to congestion

ARPANET Routing Strategies(2) Second Generation 1979 Uses delay as performance criterion Delay measured directly Uses Dijkstra’s algorithm (ch 12, sec 3) Good under light and medium loads Under heavy loads, little correlation between reported delays and those experienced after routing decision Fig. 12.8, oscillation

ARPANET Routing Strategies(3) Third Generation 1987 Link cost calculations changed Link utilization Measure average delay over last 10 seconds Normalize based on current value and previous results Figure 12.9 To damp oscillation

Least Cost Algorithms Basis for routing decisions Can minimize hop with each link cost 1 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

Dijkstra’s Algorithm Definitions 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, j) =  if the two nodes are not 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

Dijkstra’s Algorithm Method Step 1 [Initialization] T = {s} Set of nodes so far incorporated consists of only source node L(n) = w(s, n) for n ≠ s 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 Incorporate node into T 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 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

Example of Dijkstra’s Algorithm

Results of Example Dijkstra’s Algorithm Iteration T L(2) Path L(3) L(4) L(5) L(6) 1 {1} 2 1–2 5 1-3 1–4  - {1,4} 4 1-4-3 1-4–5 3 {1, 2, 4} {1, 2, 4, 5} 1-4-5–3 1-4-5–6 {1, 2, 3, 4, 5} 6 {1, 2, 3, 4, 5, 6} 1-2 1-4-5-3 1-4 1-4-5-6

Bellman-Ford Algorithm Definitions Find shortest paths from given node subject to constraint that paths contain at most one link Find the shortest paths with a constraint of paths of at most two links And so on  s = source node w(i, j) = link cost from node i to node j w(i, i) = 0 w(i, j) =  if the two nodes are not directly connected w(i, j)  0 if the two nodes are directly connected h = maximum number of links in path at current stage of the algorithm Lh(n) = cost of least-cost path from s to n under constraint of no more than h links

Bellman-Ford Algorithm Method Step 1 [Initialization] L0(n) = , for all n  s Lh(s) = 0, for all h Step 2 [Update] For each successive h  0 For each n ≠ s, compute Lh+1(n)=minj[Lh(j)+w(j,n)] Connect n with predecessor node j that achieves minimum Eliminate any connection of n with different predecessor node formed during an earlier iteration Path from s to n terminates with link from j to n

Bellman-Ford Algorithm Notes For each iteration of step 2 with h=K and for each destination node n, algorithm compares paths from s to n of length K=1 with path from previous iteration If previous path shorter it is retained Otherwise new path is defined

Example of Bellman-Ford Algorithm

Results of Bellman-Ford Example h Lh(2) Path Lh(3) Lh(4) Lh(5) Lh(6)  - 1 2 1-2 5 1-3 1-4 4 1-4-3 1-4-5 10 1-3-6 3 1-4-5-3 1-4-5-6

Comparison Results from two algorithms agree Information gathered Bellman-Ford Calculation for node n involves knowledge of link cost to all neighboring nodes plus total cost to each neighbor from s Each node can maintain set of costs and paths for every other node Can exchange information with direct neighbors Can update costs and paths based on information from neighbors and knowledge of link costs Dijkstra Each node needs complete topology Must know link costs of all links in network Must exchange information with all other nodes

Evaluation Dependent on processing time of algorithms Dependent on amount of information required from other nodes Implementation specific Both converge under static topology and costs Converge to same solution If link costs change, algorithms will attempt to catch up If link costs depend on traffic, which depends on routes chosen, then feedback May result in instability