[PATCH 2/7] Babel: Immediately send a hello on interface reconfigure.

Toke Høiland-Jørgensen toke at toke.dk
Tue Jul 19 17:55:59 CEST 2016


Ondrej Zajicek <santiago at crfreenet.org> writes:

> On Mon, May 02, 2016 at 07:07:50PM +0200, Toke Høiland-Jørgensen wrote:
>> An interface reconfiguration may change the hello interval. Section
>> 3.4.1 of the RFC specifies that either the change shouldn't be applied
>> until the next hello is due, or an additional hello should be sent
>> immediately. This does the latter.
>
>>    if (ifa->up)
>> +  {
>> +    babel_send_hello(ifa, 0);
>>      babel_iface_kick_timer(ifa);
>> +  }
>
> I am not sure if this is correct - even if you add babel_send_hello(),
> the next hello is scheduled based on ifa->next_hello.
>
> It seems to me that the old code was correct - it waited based on old
> interval and then sent hello with the new value.

Yes, you're right. This was actually trying to fix an inconsistency
where updates will immediately use the newly configured interval, but
hellos will not. So figure the patch needs to also reset the timer. Will
re-send with that added.

> The new code sends hello immediately with the new value, but then
> waits based on old interval (ifa->next_hello) for the next regular
> hello to send.

Yeah, the old code was not technically out of spec, it was just
inconsistent. Seems the patch is just incomplete for fixing that. :)

-Toke



More information about the Bird-users mailing list