2 RoutingAlgorithms
2 RoutingAlgorithms
ROUTING ALGORITHMS
• Software responsible or deciding which output
line an incoming packet should be sent.
• Done for every arriving packet (datagram
subnet)
• Made only during connection setup (virtual
circuit subnet) – session routing
ROUTING ALGORITHMS
• Router have two processes:
• Routing - filling and updating of routing tables
• Forwarding – looks for outgoing link in routing
table and forwards the packet
ROUTING ALGORITHMS
• Properties of Routing algorithm:
• Correctness
• Simplicity
• Robustness
• Fairness
• Optimality
ROUTING ALGORITHMS
• Principle of optimality – states that if a router
J is on the optimal path from router I to router
K, the optimal path from J to K also falls along
the same route.
ROUTING ALGORITHMS
• FLOODING
• Every incoming packet is sent out on every outgoing
line except the one it arrived on.
• Problem:
• generates too many duplicate packets
• Solution:
• hop counter be contained in header of each packet, which is
decremented at each hop and discarded when counter becomes
zero.
• Sequence numbering
• Selective flooding:
• Send incoming packets to only those lines that are going
approximately in the right direction.
ROUTING ALGORITHMS
• Uses
• Military applications
– Where robustness is needed
• Distributed databases
– multiple sources
– update all at once
ROUTING ALGORITHMS
FLOW BASED ROUTING
• Above algorithms only consider topology
– Do not consider load