DCbits on OSPF demand circuits
Demand Circuits can reduce traffic in two ways: eliminate hellos over the
circuit, and advertise DoNotAge LSAs, thereby eliminating 'refresh' traffic
over the link. These two mechanisms are handled separated so it is possible
(and likely when dealing with certain vendors) to have a demand link set up to
act as a demand circuit (suppress hellos) and to not generate DoNotAge LSAs.
The only requirement for a link to become a demand circuit and suppress Hellos
is that both endpoints support the feature. However, in order for the router
to generate DoNotAge LSAs it is necessary for all routers in the OSPF domain
to support them, this is indicated in all the LSAs they generate by setting
the DC bit within the LSA options field. If an ABR is attached to an area
that contains a router that does not support DoNotAge LSAs (as indicated that
a clear DC bit) then it will advertise what is known as an 'Indication' LSA
(It is simply a ASBR Summary LSA with the DC bit clear) into it's other
attached areas, thereby preventing all areas from sending DoNotAge LSAs. That
is why it is necessary for all routers in the entire domain to support them,
not just the area. As a side note, routers within stub areas can generate
DoNotAge LSAs even if the rest of the domain cannot support them, this is
because no LSA created in a stub area will leave the area, and also because
the Indication LSA is simply a modified ASBR Summary LSA so it will be
prevented from entering the area, and as such all internal routers will have
no idea that a router outside of the area doesn't support the DoNotAge LSAs.
So, looking at your situation, other than a funky bug I would guess that maybe
your first end (the one that supports DoNotAge LSAs) is within a stub area,
and the other end (the one that doesn't) is the ABR for that stub area. That's why it could have LSAs in it's database that don't contain the DC bit,
while it's neighbor wouldn't.
|