220 likes | 485 Views
Ch. 12 Routing in Switched Networks. 12.1 Routing in Circuit Switched Networks. Routing The process of selecting the path through the switched network. Two Requirements Efficiency --ability to handle expected load of traffic using the smallest amount of equipment.
E N D
12.1 Routing in Circuit Switched Networks • Routing • The process of selecting the path through the switched network. • Two Requirements • Efficiency --ability to handle expected load of traffic using the smallest amount of equipment. • Resilience--ability to handle surges of traffic that exceed the expected load of traffic.
12.1 Routing in Circuit Switched Networks (p.2) • Traditionally has been static hierarchical tree structure with additional high usage trunks. • Today, a dynamic approach is used, to adjust to current traffic conditions.
12.1 Routing in Circuit Switched Networks (p.3) • Alternate Routing • Approach where possible routes between end offices are predefined. • The alternate routes are sequentially tried, in order of preference, until a call is completed. • Fixed Alternate Routing--only one set of paths provided. • Dynamic Alternate Routing--different sets of preplanned routes are used for different time periods--Fig. 12.1.
12.2 Routing in Packet Switched Networks • Routing Algorithm Requirements • Correctness • Simplicity • Robustness--the ability of the network to deliver packets via some route in the face of localized failures and overloads. • Stability--does not “over react” to network changes. • Fairness--as related to all other users. • Optimality--as related to some criterion. • Efficiency--as related to processing overhead.
12.2 Elements of Routing Techniques • Performance Criteria • Number of hops, cost, delay, & throughput. • See Fig. 12.2 • Decision Time • Virtual Circuit--at connection establishment. • Datagram--before packet is placed in outgoing buffer. • Decision Place • Each node, central node, originating node.
12.2 Elements of Routing Techniques (cont.) • Network Information Source • None, local, adjacent nodes, nodes along the route, or all nodes. • Network Information Update Timing • Continuous, periodic, major load change, topology change.
12.2 Routing Strategies • Fixed Routing • A route is selected for each source-destination pair of nodes. • A central routing directory can then be distributed to the various nodes. • Routes are not changed unless topology changes. • Simple (advantage) but inflexible (disadvantage.)
12.2 Routing Strategies • Fixed Routing Example (Fig. 12.3) • Refer back to the network in Fig. 12.2. • Central directory lists all the routing information. • Each column of the central directory becomes the Next Node columns in the nodal directories.
12.2 Routing Strategies (p.2) • Flooding (Fig. 12.4) • A packet is sent out on every outgoing link except the link that it arrived on. • Duplicates must be discarded. • Hop counter could be used. • Very robust (advantage.) • High traffic loads are generated (disadvantage.)
12.2 Routing Strategies (p.3) • Random Routing • An outgoing link is selected at random (based on a probability distribution.) • Requires no use of network information (advantage.) • Actual route will not be least-cost or minimum-hop route (disadvantage.)
12.2 Routing Strategies(p.4) • Adaptive Routing • These algorithms react to changing conditions of the network, for example failures and congestion. • Advantages--can improve performance and aid in congestion control. • Disadvantages--complex, requires extra "overhead" traffic to collect information, and may react too quickly (unstable.)
12.2 Routing Strategies (p.5) • Adaptive Routing(cont.) • Schemes can be characterized by • Source of Network Information • Local--Fig. 12.5 Isolated Adaptive Routing • Minimize Queue Length + Bias • Adjacent Nodes • All Nodes • Distributed or Centralized Control
12.2 Routing Strategy Examples • First Generation ARPANET (1969) • Distributed adaptive algorithm. • Performance criteria--estimated delay (from queue length). • Version of the Bellman-Ford Algorithm. • Problems: did not consider line speed, queue length is not an accurate measure of delay, and the algorithm responded slowly to congestion and delay increases. • See Fig. 12.6, 12.7 and discussion--page380.
12.2 Routing Strategy Examples (p.2) • Second Generation ARPANET (1979) • Distributed adaptive algorithm. • Performance criteria--delay (direct measurements). • Version of Dijkstra's Algorithm. • Problem: did not work well for heavy loads.
10.2 Routing Strategy Examples (p.3) • Third Generation ARPANET (1987) • The average delay is measured and transformed into estimates of utilization. • The link "costs" were calculated as a function of utilization--this helped to prevent oscillations. • Fig. 12.8--traffic could oscillate from link A to link B and back.
12.3 Least-Cost Algorithms • The Problem • Given a network of nodes connected by bi-directional links, where each link has a cost associated with it in each direction, define the cost of a path between two nodes as the sum of the costs of the links traversed. For each pair of nodes find the path with least cost. • Solutions • Dijkstra's Algorithm (1959) • Bellman-Ford Algorithm (1962)
Dijkstra's Algorithm • Define: • 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 and w(i,j)= if the nodes are not directly connected. • L(n)= cost of the least-cost path from node s to node n that is currently known to the algorithm.
Dijkstra's Algorithm (p.2) • Three Steps (repeated until M=N) • Step 1: Initialize Variables • T= {s}. • L(n)=w(s,n) for n s. • Step 2: Find the neighboring node (x) which has the least-cost path from node s and incorporate that node into T. • Step 3: Update the least cost-paths. • L(n)= min[ L(n), L(x) + w(x,n)] for all n T. • See Table 12.2 and Fig. 12.10.
Bellman-Ford Algorithm • Define: • s = the source node. • w(i,j)=link cost from node i to node j. • h=maximum number of links in a path at the current stage of the algorithm. • Lh(n)= cost of the least-cost path from node s to node n under the constraint of no more than h links.
Bellman-Ford Algorithm (p.2) • Step 1: Initialize • L0(n)=, for all n not equal to s. • Lh(s) =0, for all h. • Step 2: For each successive h, • L h+1(n) = Minj [Lh(j) + w(j,n)].
Comparison of the Algorithms • Dijkstra’s • Complete topology information is needed. • Bellman-Ford • Knowledge of link costs to each neighbor, and the current “distance-vector” of each neighbor is required.