One approach is to use a linear sequence number space so large that it is unlikely the upper limit will ever
be reached. If, for instance, a 32-bit field is used, there are 232 = 4,294,967,296 available sequence
numbers starting with zero. Even if a router was creating a new link state packet every 10 seconds, it
would take some 1361 years to exhaust the sequence number supply; few routers are expected to last so
long.
In this imperfect world, unfortunately, malfunctions occur. If a link state routing process somehow runs
out of sequence numbers, it must shut itself down and stay down long enough for its LSAs to age out of
all databases before starting over at the lowest sequence number (see the section "Aging," later in this
chapter).
A more common difficulty presents itself during router restarts. If router A restarts, it probably will have
no way of remembering the sequence number it last used and must begin again at, say, one. But if its
neighbors still have router A's previous sequence numbers in their databases, the lower sequence numbers
will be interpreted as older sequence numbers and will be ignored. Again, the routing process must stay
down until all old LSAs are aged out of the internetwork. Given that a maximum age might be an hour or
more, this solution is not very attractive.
A better solution is to add a new rule to the flooding behavior described thus far: If a restarted router
issues to a neighbor an LSA with a sequence number that appears to be older than the neighbor's stored
sequence number, the neighbor will send its own stored LSA and sequence number back to the router.
The router will thus learn the sequence number it was using before it restarted and may adjust
accordingly.
Care must be taken, however, that the last-used sequence number was not close to the maximum;
otherwise, the restarting router will simply have to restart again. A rule must be set limiting the "jump"
the router may make in sequence numbers—for instance, a rule might say that the sequence numbers
cannot make a single increase more than one-half the total sequence number space. (The actual formulas
are more complex than this example, taking into account age constraints.)
IS-IS uses a 32-bit linear sequence number space.