# A scenario where split horizon with poisoned reverse doesn’t work?

Is a scenario possible, where split horizon with poisoned reverse can’t prevent routing circles? E.g., if router A does announce all routes that route over B to B as infinity, B will never route over A to nodes that A routes to over B.

But is there a scenario, where a failing link causes a routing circle, despite all nodes having using split horizon with poisoned reverse? Maybe with multiple routers involved? Or does this always prevent routing circles? Maybe this is trivial, but I couldn’t think of an example right now. Thanks in advance!

Consider this:

``````     B
| \
1 |  \1
|   \
A -- C
|  1
+
|
D
``````

At time t, link between A and D is broken.

A tells B & C that D is unreachable by DA(D) = inf

B computes new route to D through C. DB(D)=CB(C)+DC(D)=1+2=3. B will tell C that D is unreachable by DB(D)=inf (poisoned reverse). B still tells A it has a path to D of cost 3 (split horizon doesn't apply).

A computes new route through B. A tells C that D is now reachable

Etc…

• What does `DB(D)`, `C(B,C)`, `DC(D)` and `DB(D)` indicate? What is the convention you are using? Feb 9 at 17:26
• DB(D) means from D to B begin at D. C(B, C) should be CB(C) (it has been corrected). Feb 10 at 14:26