A routing loop is a serious network problem which happens when a data packet is continually routed through the same routers over and over. The data packets continue to be routed within the network in an endless circle. A routing loop can have a catastrophic impact on a network, and in some cases, completely disabling the network. Normally Routing Loop is a problem associated with Distance Vector Protocols.
How routing loops affect network performance?
- A major portion of the precious bandwidth which is available for normal user traffic of the affected routers will be consumed by looping IP datagram packets.
- The major portion of the processing power of the affected routers is
used to process the looping IP datagram packets.
Routing Loop can happen in large internetworks when a second topology change emerges before the network is able to converge on the first change. Convergence is the term used to describe the condition when all routers in an internetwork have agreed on a common topology. Link state protocols tend to converge very quickly, while distance vector protocols tend to converge slowly.
The following methods are used to avoid Routing Loops.
Maximum hop Count
Maximum hop count mechanism can be used to prevent Routing Loops. Distance Vector protocols use the TTL (Time-to-Live) value in the IP datagram header to avoid Routing Loops. When an IP datagram move from router to router, a router keeps track of the hops in the TTL field in the IP datagram header. For each hop a packet goes through, the packet’s TTL field is decremented by one. If this value reaches 0, the packet is dropped by the router that decremented the value from 1 to 0.
Split Horizon
A split horizon is a routing configuration that stops a route from being advertised back in the direction from which it came. Split Horizon mechanism states that if a neighbouring router sends a route to a router, the receiving router will not propagate this route back to the advertising router on the same interface.
Route Poisoning
Route Poisoning is another method for avoiding routing loops. When a router detects that one of its connected routes has failed, the router will poison the route by assigning an infinite metric to it.
Hold-down Timers
Hold-down timer is another mechanism used to prevent bad routes from being restored and propagated by mistake. When a route is placed in a hold-down state, routers will neither advertise the route nor accept advertisements about it for a specific interval called the hold-down period.