You are on page 1of 21

Routing in Switched Networks

Stallings, Chapter 12

1
Simple Switched Network

2
Routing in Pkt-switched Networks
 Complex, crucial aspect of packet switched networks
 Routing characteristics
 Correctness
 Simplicity
 Robustness
 When some node(s) fail or overload, network should react to
avoid loss of packets or breaking of virtual circuits
 Stability
 Shifting of load to area B due to congestion in area A may
cause overload in area B. This may trigger second shifting of
load. During these shifts, packets may travel in loops though
network
 Optimality
 Throughput may be increased by giving priority to traffic in
the nearby users, at the cost of distant users.
3
Routing Characteristics (contd..)
 Fairness
 This may not be fair to the distant users
 Efficiency
 Routing involves processing overhead at each node and also
transmission overhead
 Penalty of such overhead < benefit accrued based on some
metric

4
Performance Criteria
 Used for selection of route
 Two criteria
 Minimum-hop route
 Least-cost route
 A cost is associated with each link to support one or more
design objectives
 e.g., cost could be assigned based on data rates of the link
(to get highest throughput) or its queuing delay (to get
minimum delay)
 More flexible than minimum-hop criterion – Why ?

5
Costing of Routes

6
Decision Time and Place (1)
 Decision Time
 Depends on whether the network is using datagram or virtual
circuit
 For internal datagram, routing decision made individually for
each packet
 For internal virtual circuit, routing decision is made at the
time the virtual circuit is established
 Route may dynamically change to avoid overload and failures
 Decision Place: refers to which node(s) are
responsible for routing decisions
 Distributed routing
 Output link selected by each node to route the packets as
they arrive
 More complex but also more robust
 Most common approach 7
Decision Time and Place (2)

 Centralized routing
 Decision made by some designated node, such as ‘network
control center’
 Source routing
 Route decided by the source and dictated to the network
 Allows the user to decide the route to meet some local
criterion

8
Network Information Source and Update
Timing
 Routing decisions usually based on Network information (not
always)
 Such as network topology, traffic load and link cost
 Distributed routing
 Nodes use only local knowledge
 May also collect info from adjacent nodes, e.g. congestion
 May collect info from all nodes on a potential route
 Centralized routing
 Collect info from all nodes
 Which of the two is better?
 Information update timing
 When is network info held by nodes updated
 Fixed - never updated
 Adaptive - regular updates
 Advantages ?

9
Routing Strategies
 Fixed
 Flooding
 Random
 Adaptive

10
Fixed Routing
 Single permanent route for each source to
destination pair
 Determine routes using a least cost algorithm (later
in this chapter)
 Route fixed, at least until a change in network
topology
 No difference in routing for datagram and virtual
circuits
 Simple scheme, suitable for reliable network with
stable load
 Lack of flexibility
 Weakness ?

11
Fixed Routing
Tables

Fig. 12.3:
Example: route from
node 1 to 6

12
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 at the destination node
 Each routing node remembers packets already
forwarded to discard the duplicate copies
 keeps network load in bounds
 Can include hop count in packets
 Set to a maximum value and decreased each time a node
passes a packet
13
Flooding
Example

Fig. 12.4:
Hop count: 3
Node 6 receives: 5 copies

14
Properties of Flooding
 All possible routes are tried
 Very robust
 e.g., military network which is subject to extensive damage
 At least one packet will take minimum hop count
route
 Can be used to set up virtual circuit
 All nodes are visited
 Useful to distribute important information
 used to disseminate routing information in some schemes

15
Random Routing
 Node selects only one outgoing path for retransmission of
incoming packet
 Selection can be random or round robin
 Can also assign a probability to each outgoing link
 Then select outgoing path based on probability calculation
 Pi = Ri /j Rj , here Pi is probability of selecting link i and Ri is data
rate on link i
 Here the probability is based on data rate; Could also be based on
least cost, etc.
 The sum is taken over all candidate outgoing links
 No network info needed
 Route is typically not least cost nor minimum hop – Why ?
 Has the simplicity and robustness of flooding with far less
traffic load

16
Adaptive Routing (1)
 Used by almost all packet switching networks
 Routing decisions change as conditions on the
network change
 Failure
 Congestion
 Requires info about the state of network
 Tradeoff between quality of network info (amount
and frequency) and overhead – Why ?
 Disadvantages
 Decisions more complex; processing overhead
 Reacting too quickly can cause oscillation
 Reacting too slowly can make strategy irrelevant

17
Adaptive Routing (2)
 Advantages
 Improved performance
 Aids congestion control (See chapter 13)
 Classification
 Based on information source: local, adjacent nodes, all nodes
 Local (isolated)
• Route to outgoing link with shortest queue length Q
• Can include bias Bi for each destination, e.g. direction
• Choose outgoing link with minimum (Q + Bi )
• Rarely used - do not make use of easily available info
 Adjacent nodes or all nodes
• Both use info about delays and outages at other nodes
• distributed or centralized
• Commonly used
18
Isolated Adaptive Routing
Fig. 12.5

Which node the packet should be routed to ?


Q + Bias ?

19
Examples of Routing Strategies:
ARPANET Routing Strategies(1)
 ARPANET is a packet-switching network
 Important as they are used in many other networks,
including those used in Internet
 Second Generation: 1979
 Replaces the 1st generation routing algorithm
 Uses delay as performance criterion
 Delay measured directly and not based on queue length alone
 Arrival time of each incoming packet is time-stamped
 Similarly the departure is recorded
 Every 10 sec, the node computes Avg. delay on each outgoing link
 Significant changes in delay are sent to all other nodes using
flooding
 Each node thus maintains estimate of delay on every link

20
Examples of Routing Strategies:
ARPANET Routing Strategies(2)
 Second Generation (contd.):
 When new info arrives, routing table is recomputed using Dijkstra’s
algorithm (later in this chapter)
 Good under light and medium loads
 Under heavy loads, little correlation between reported delays and
those experienced – weakness
 3rd generation uses improved avg. delay and cost function.

21

You might also like