Ondrej Zajicek <santi...@crfreenet.org> writes:

>> > Also note that unreachable routing entries should not be propagated to
>> > core.
>> 
>> This is actually done to satisfy a requirement of the Babel protocol:
>> Temporary blackholing is used to avoid routing loops. Quoting section
>> 3.5.5 of RFC6126:
>> ...
>> Now, if the protocol can't propagate an infeasible route to the core,
>> how do I satisfy this requirement?
>
> Didn't know that. You could propagate the unreachable route in the sense
> that it will work. But usually it is not a good idea - e.g. some other
> protocol could have regular routes for the same network, or there could
> be some covering route.
>
> BTW, the argumentation in 3.5.5 of RFC 6126 seems a bit strange to me.
> It essentially says that unreachable routes are added to avoid transient
> routing loops before Babel converges. But transient routing loops until
> convergence is a common behavior for IGPs (both RIP, OSPF and IS-IS do
> that), while blackholing may be far less expected behavior, esp. if it is
> for several minutes, which is far longer time than usually necessary for
> protocol convergence. It seems more like local policy setting than
> something which should be part of protocol specification.

Hmm, I think Juliusz is probably better at answering that than I am;
added to CC... Juliusz, care to weigh in?

> It is true that this part is probably not described anywhere in depth.
> There are some notes in nest/protocol.h that are not propagated to the
> documentation. For the rest, you can use the source, but sometimes
> even the source is 'wrong'.

Will poke around, thanks.

> In that case you have always non-NULL babel_iface.iface and you could
> remove some vestigial code from RIP, like: bif->iface ?
> bif->iface->name : "(dummy)"

Yeah, have already removed that in some places, but some house cleaning
is probably needed :)

-Toke

Attachment: signature.asc
Description: PGP signature

Reply via email to