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

Reply via email to