I think having the metric passed in is good. Especially if a user decides to run two separate of routing protocols(For instance they like bird's OSPF bug love(!) Quagga's BGP. Then sending the metric is appropriate so that the kernel can do the right thing and notify the appropriate daemon.
donald On Fri, May 22, 2015 at 4:15 AM, Timo Teras <timo.te...@iki.fi> wrote: > On Fri, 22 May 2015 13:41:03 +0300 > Timo Teräs <timo.te...@iki.fi> 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 <timo.te...@iki.fi> > > 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 > Quagga-dev@lists.quagga.net > https://lists.quagga.net/mailman/listinfo/quagga-dev >
_______________________________________________ Quagga-dev mailing list Quagga-dev@lists.quagga.net https://lists.quagga.net/mailman/listinfo/quagga-dev