Dynamic routing
Split horizon
Never announce a route back on the card it was learned on; poisoned reverse announces it at infinity instead.
It stops two distance-vector routers from bouncing a lost route between them. Poisoned reverse sends those routes back with metric 16, an explicit "not through me", at the cost of bigger updates. A triggered update announces a change at once instead of waiting for the next period. None of them stops a loop through three routers.