data communications & computer networks 10. introduction to routing
TRANSCRIPT
Key points• Routing in circuit-switching networks has traditionally
involved a static routing strategy with the use of alternate paths to respond to increased load.
• Modern routing strategies provide more adaptive and flexible approaches.
• The routing function of a packet-switching network attempts to find the least-cost route through the network, with cost based on number of hops, delay, bandwidth or other metrics.
• Adaptive routing algorithms typically rely on the exchange of information about traffic conditions between nodes
Some Perspective on Routing …..
• When we wish to take a long trip by car, we consult a road map.
• The road map shows the possible routes to our destination.
• It might show us the shortest distance, but, it can’t always tell us what we really want to know:—What is the fastest route!—Why is this not always obvious?
• Question: What’s the difference between you and network packet?
Packets are Dumb, Students are Smart!
• We adapt to traffic conditions as we go.• Packets depend on routers to choose how they
get their destination.• Routers have maps just like we do. These are
called routing tables.• What we want to know is:
—How to these tables get constructed/updated?—How are routes chosen using these tables?
1. Routing in Circuit-Switched Networks• Many connections will need paths through
more than one switch• Need to find a route based on
—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 conditions—Uses a peer structure for nodes
Alternate Routing• Alternative routing is a form of routing in
circuit-switching networks• Possible routes between end offices are
predefined• Originating switch selects appropriate
route• Routes are listed in preference order• Different sets of routes may be used at
different times
AlternateRoutingDiagram
• Switch X has 4 possible routes to destination switch Y.
• Direct route is tried first.
• If this trunk is unavailable (busy, out of service), the other routes will be tried in a particular order depending on the time period.
• Eg, during weekday mornings, route b is tried next.
2. Routing in Packet-Switched Networks• Routing is one of the most complex and
crucial aspect of packet switched networks• Characteristics required
—Correctness—Simplicity—Robustness—Stability—Fairness—Optimality—Efficiency
Elements of routing techniques for packet-switched networks• Performance criteria
• Decision time
• Decision place
• Network information source
• Network information update timing
Performance Criteria• Used for selection of a route
—Number of hops —Cost—Delay—Throughput (bandwidth)
In this example, the shortest path (fewer hops) from node 1 to node 6 is 1-3-4 (cost=5+5=10) but the least-cost path is 1-4-5-6 (cost=1+1+2=4)
Decision Time and Place• Decision time is determined by whether the
routing decision is made on—Packet (datagram)
• Routing decision made individually for each packet
—Session (virtual circuit)• Routing decision is made at the time the VC is established
• Decision place refers to which node (or nodes) in the network are responsible for the routing decision—Each node (distributed)—Central node (centralized)—Originating node (source)
Network Information Source and Update Timing• Routing decisions usually based on knowledge of
network (not always)• Distributed routing (routing decision made by
each node)—Nodes use local knowledge—May collect info from adjacent nodes—May collect info from all nodes on a potential route
• Central routing—Collect info from all nodes
• Update timing—When is network info held by nodes updated—Fixed - never updated—Adaptive - regular updates
Fixed Routing• A single permanent route is configured for
each source to destination pair nodes• Determine routes using a least cost
algorithm • Routes are fixed, at least until there is a
change in network topology
Flooding• No network info is required• Operates as follows:
—A packet is sent by a source node to every neighboring node
—At each node, 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• A packet is to be sent from
node 1 to node 6 and is assigned a hop count of 3.
• On the 1st hop, 3 copies of packet are created.
• For the 2nd hop of all these copies, a total of 9 copies are created.
• One of these copies reaches node 6, which recognizes that it is the indented destination and does not retransmit.
• However, the other nodes generate a total of 22 new copies for their 3rd and final hop.
• All packets received from the 3rd hop are discarded.
• In all, node 6 has received 4 additional copies of the packet.
Properties of Flooding• All possible routes are tried
—Very robust—Could be used to send emergency messages
• Because all routes are tried, 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
Adaptive Routing• Used by almost all packet switching networks• Routing decisions change as conditions on the
network change—Failure (node or trunk)—Congestion (portion of network is heavily loaded with
traffic)
• Requires info about network• Decisions more complex• Tradeoff between quality of network info and
overhead• Reacting too quickly can cause oscillation• Reacting too slowly can be irrelevant
Adaptive Routing - Advantages• Improved performance• Aid congestion control • Complex system
—May not realize theoretical benefits
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
ARPANET Routing Strategies(1)• First Generation
—1969—Distributed adaptive—Estimated delay as performance criterion—Bellman-Ford algorithm —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—Responds slowly to congestion
ARPANET Routing Strategies(2)• Second Generation
—1979—Uses delay as performance criterion—Delay measured directly—Uses Dijkstra’s algorithm (appendix 10a)—Good under light and medium loads—Under heavy loads, little correlation between
reported delays and those experienced
ARPANET Routing Strategies(3)• Third Generation
—1987—Link cost calculations changed—Measure average delay over last 10 seconds—Normalize based on current value and
previous results
Static vs. Dynamic Routing• Routes are static if they do not change.
—Route table is loaded once at startup and all changes are manual
—Eg. Computers at the network edge use static routing.
• Routes are dynamic if the routing table information can change over time (without human intervention.—Eg. Internet routers use dynamic routing.
Dynamic Routing and Routers• To insure that routers know how to reach
all possible destinations, routers exchange information using a routing protocol.
• But, we cannot expect every router to know about every other router.—Too much Internet traffic would be generated.—Tables would be huge (>150.000 routes)—Algorithms to choose “best” path would never
terminate.
• How to handle this?
Autonomous Systems (AS)• Routers are divided into groups known as an
autonomous systems (AS).• ASs communicate using an Exterior Routing
Protocol (Intra-AS Routing)• Routers within an AS communicate using an
Interior Routing Protocol (Inter-AS Routing)
Why different Intra and Inter-AS routing ?
• Policy: —Inter-AS: administration wants control over how its traffic
routed, who routes through its network. —Intra-AS: single administration, so no policy decisions
needed
• Scale:—hierarchical routing saves table size, reduced update
traffic
• Performance: —Intra-AS: can focus on performance—Inter-AS: policy may dominate over performance
Review questions• What is the major tradeoff in the design of a routing
strategy for a circuit-switching network?
• Distinguish between static and alternate routing in a circuit-switching network.
• What are the key requirements for a routing function for a packet-switching network?
• What is fixed routing?
• What is flooding?
• What is the difference between static and dynamic routing? Give an example for each.
• What are the advantages and disadvantages of adaptive routing?
• How do Internet routers cope with the increasing number of routes?