On Fri, 22 May 2015 13:41:03 +0300
Timo Teräs <[email protected]> wrote:

> This commit updates the kernel API so that route changes are
> atomically updated using CHANGE notification messages instead
> of first sending a withdraw or update. Same for zclient updates,
> changes are sent as ADD instead of first DELETE + ADD.
> 
> Signed-off-by: Timo Teräs <[email protected]>

Seems that this does not function as expected fully. Apparently in
netlink the unique key to identify route prefix is:
 [prefix, tos, priority]

And priority == metric. So if metric changes, a delete+add (or
probably more of an add+delete sequence to make sure the route does
not disappear temporarily). Alternative is to not set metric in in
netlink.

I'm wonder is there any benefit to pass metric to FIB? There is only
ever supposed to be one zebra route in kernel, so the metric not really
used for FIB selection. The only benefit might be to pass on the
information forward. E.g. if some other process is looking at the
kernel routes.

Would it be acceptable to remove setting metric to kernel FIB?

Or should I work to handle metric change as described above?

Thanks,
Timo

_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to