This preview shows page 1. Sign up to view the full content.
Unformatted text preview: In the advertisement step, each node should make sure to advertise the current best
(lowest) cost along all its links.
The implementor must take further care in these steps to correctly handle packet losses,
as well as link and node failures, so we will reﬁne this step in the next lecture.
Conceptually, we can imagine the advertisement and integration processes running periodically, for example as shown in Figure 18-4. On each advertisement, a node sends the
destination:cost tuples from its current routing table. In the integration step that follows,
the node processes all the information received in the most recent advertisement from each
neighbor to produce an updated routing table, and the subsequent advertisement step uses
this updated information. Eventually, assuming no packet losses or failures or additions,
the system reaches a steady state and the advertisements don’t change.
18.4.3 Correctness and Performance These two steps are enough to ensure correctness in the absence of failures. To see why,
ﬁrst consider a network where each node has information about only itself and about no
other nodes. At this time, the only information in each node’s routing table is its own, with
a cost of 0. In the advertisement step, a node sends that information to each of its neighbors
(whose liveness is determined using the HELLO protocol). Now, the integration step runs,
and each node’s routing table has a set of new entries, one per neighbor, with the route set
to the link along which the advertisement arrived and a path cost equal to the cost of the
The next advertisement sent by each node includes the node-cost pairs for each routing
table entry, and the information is integrated into the routing table at a node if, and only
if, the cost of the current path to a destination is larger than (or larger than or equal to) the
advertised cost plus the cost of the link on which the advertisement arrived.
One can show the correctness of this method by induction on the length of the path. It
View Full Document
This document was uploaded on 02/26/2014 for the course CS 6.02 at MIT.
- Fall '13