Unformatted text preview: FINITY to A and C in its next update, all the nodes will have the
correct cost to D, and there is no routing loop. Because of the split horizon scheme, B
does not have to send its advertisement immediately upon detecting the failed link, but
the sooner it does, the better, for that will enable A and C to converge sooner.
However, suppose B ’s routing advertisement with the updated cost to D (of INFINITY)
reaches A, but is lost and doesn’t show up at C . A now knows that there is no route of ﬁnite
cost to D, but C doesn’t. Now, in its next advertisement, C will advertise a route to D of
cost 2 to A (and a cost of INFINITY to B because of poison reverse). In response, A will
assume that C has found a better route than what A has (which is a “null” route with cost
INFINITY), and integrate that into its table. In its next advertisement, A will advertise to
B that it has a route of cost 3 to destination D, and B will incorporate that route at cost 4!
It is easy to see now that when B advertises this route to C , it will cause C to increase its
cost to 5, and so on. The count-to-inﬁnity problem has shown up again!
Path vector routing is a good solution to this problem. 19.8 Path-Vector Routing The insight behind the path vector protocol is that a node needs to know when it is safe
and correct to integrate any given advertisement into its routing table. The split horizon
technique was an attempt that worked in only a limited way because it didn’t prevent
loops longer than two hops. The path vector technique extends the distance vector advertisement to include not only the cost, but also the nodes along the best path from the node to the
destination. It looks like this:
[dest1 cost1 path1 dest2 cost2 path2 dest3 cost3 path3 ...] CHAPTER 19. NETWORK ROUTING - II 10 ROUTING AROUND FAILURES Here, each “path” is the concatenation of the identiﬁers of the node along the path, with
the destination showing up at the end (the opposite convention is equivalent, as long as
all nodes treat the path consistently). Figure 19-3 shows an example.
The integration step at node n should now be extended to only consider an advertisement as long as n does not already appear on the advertised path. With that step, the rest
of the integration step of the distance vector protocol can be used unchanged.
Given an initial state at t = 0 and a set of changes in (0, τ ), and assuming that each
link has a high-enough packet delivery probability, this path vector protocol eventually
converges (with high probability) to the correct state without “counting to inﬁnity”. The
time it takes to converge when each node is interested in ﬁnding the minimum-cost path
is proportional to the length of the longest minimum-cost path) multiplied by the advertisement interval. The reason is as follows. Initially, each node knows nothing about the
network. After one advertisement interval, it learns about its neighbors routing tables, but
at this stage those tables have nothing other than the nodes themselves. Then, after the
next advertisement, each node learn...
View Full Document
This document was uploaded on 02/26/2014 for the course CS 6.02 at MIT.
- Fall '13