Explain split horizon, route poisoning, poison reverse and holddown. What problem do they solve?
Show the answer
Say this first
They stop distance vector routing loops and count to infinity. Split horizon: never advertise a route back out the interface you learned it on. Route poisoning: when a route fails, advertise it at once with an infinite metric (16 in RIP) instead of just going quiet. Poison reverse: advertise routes back toward the neighbor you learned them from, but with metric 16, as an explicit "do not use me". Holddown: after a route fails, ignore worse news about it for a while. Triggered updates send changes right away instead of waiting for the next 30 second cycle.
Go deeper
Count to infinity
Chain R1 to R2 to R3, with 10.30.0.0/24 behind R3. R2 has it at 1 hop via R3, and R1 at 2 hops via R2. The R2 to R3 link fails.
- R2 loses its route. Without split horizon, R1 still advertises "10.30.0.0/24, 2 hops" to R2.
- R2 believes it and installs 3 hops via R1.
- R2 advertises 3 hops to R1. R1 uses R2 as its next hop, so it updates to 4 hops.
- They ping-pong upward until the metric hits 16. Until then, packets loop between R1 and R2.
What each tool does in that story
| Mechanism | Effect |
|---|---|
| Split horizon | R1 never tells R2 about the route it learned from R2. The two node loop never starts. |
| Route poisoning | R2 sends 10.30.0.0/24 with metric 16 straight away, so R1 drops it quickly. |
| Poison reverse | R1 already advertises the route to R2 as 16, so R2 can never mistake it for a path. |
| Holddown | R2 ignores any non-better news about the route for 180 s, which protects against stale updates in larger loops. |
| Triggered updates | The poison goes out immediately, not at the next 30 s tick. |
The limits
Split horizon only stops loops between two neighbors. In a ring of three or more routers, a loop can still form through the other side, which is why RIP also needs holddown and the 15 hop ceiling.
They will ask next
How does EIGRP avoid count to infinity without relying on these?
DUAL only uses a backup if the feasibility condition proves it loop-free. Anything else requires a query and replies from every neighbor before a new path is chosen, so it never counts upward.
Is split horizon on by default in Cisco IOS?
Yes, on normal interfaces. You turn it off only for a hub's multipoint interface, where all spokes sit behind one interface.
Traps
- Mixing up route poisoning and poison reverse. Poisoning advertises a failed route as infinite; poison reverse advertises working routes back to their source as infinite.