figure 19 2 split horizon with or without poison

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: ing for its normal advertisment time (every ADVERT INTERVAL seconds on average), what if B sent news of any unreachable destination(s) as soon as its integration step concludes that a link has failed and some CHAPTER 19. NETWORK ROUTING - II 8 ROUTING AROUND FAILURES $" #" !" %" Figure 19-2: Split horizon (with or without poison reverse) doesn’t prevent routing loops of three or more hops. The dashed arrows show the routing advertisements for destination D. If link BD fails, as explained in the text, it is possible for a “count-to-infinity” routing loop involving A, B, and C to ensue. destination(s) has cost INFINITY? If each node propagated this “bad news” fast in its advertisement, then perhaps the problem will disappear. Unfortunately, this approach does not work because advertisement packets could easily be lost. In our simple example, even if B sent an advertisement immediately after discovering the failure of its link to D, that message could easily get dropped and not reach A. In this case, we’re back to square one, with B getting A’s advertisement with cost 2, and so on. Clearly, we need a more robust solution. We consider two, in turn, each with fancy names: split horizon routing and path vector routing. Both generalize the distance-vector protocol in elegant ways. ￿ 19.7 Distance Vector with Split Horizon Routing The idea in the split horizon extension to distance-vector routing is simple: If a node A learns about the best route to a destination D from neighbor B , then A will not advertise its route for D back to B . In fact, one can further ensure that B will not use the route advertised by A by having A advertise a route to D with a cost of INFINITY. This modification is called a poison reverse, because the node (A) is poisoning its route for D in its advertisement to B . It is easy to see that the two-node routing loop that showed up earlier disappears with the split horizon technique. Unfortunately, this method does not solve the problem more generally; loops of three or more hops can persist. To see why, look at the topology in Figure 19-2. Here, B is connected to destination D, and two other nodes A and C are connected to B as well as to each other. Each node has the following correct routing state at t = 0: A thinks D is at cost 2 (and via B ), B thinks D is at cost 1 via the direct link, and C thinks D is at cost S (and via B ). Each node uses the distance-vector protocol with the split horizon technique (it doesn’t matter whether they use poison reverse or not), so A and C advertise to B that SECTION 19.8. PATH-VECTOR ROUTING 9 Figure 19-3: Path vector protocol example. their route to D has cost INFINITY. Of course, they also advertise to each other that there is a route to D with cost 2; this advertisement is useful if link AB (or BC ) were to fail, because A could then use the route via C to get to D (or C could use the route via A). Now, suppose the link BD fails at some time t < τ . Ideally, if B discovers the failure and sends a cost of IN...
View Full Document

Ask a homework question - tutors are online