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.– 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.