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
