[PATCH] [RFC] Babel: Replace internal route selection by bird nest

Ondrej Zajicek santiago at crfreenet.org
Mon Jan 30 15:52:51 CET 2023


On Mon, Jan 30, 2023 at 04:44:27AM +0100, Ondrej Zajicek wrote:
> > Note that this does very much represent a breaking change as now export
> > filters have to explicitly re-export babel routes which was implicit
> > before, using say `source = RTS_BABEL`.
> > 
> > It's unclear to me if we should support the old behaviour and how I would
> > circumvent the export filter for babel routes if so. Comments and
> > suggestions welcome.
> 
> This could be handled in babel_preexport() by force-export regardless of
> filters. OTOH, Accepting some Babel route for local use, while rejecting
> it in export to peers may be valid use case.

Hi

I was confused before, but is this really a breaking change? As i
understand it, both Babel and RIP keep list of received routes, select
the best, push the best to main (nest) table, but it must be explicitly
exported back to the protocol in order to be announced to neighbors.

There is babel_select_route() -> babel_announce_rte() -> nest table
change -> babel_rt_notify() -> babel_trigger_update() cascade,
babel_entry.selected is the best route as selected by Babel, but it
is babel_entry.seqno/metric/router_id that is filled in babel_rt_notify()
and used for sending updates in babel_send_update_().

-- 
Elen sila lumenn' omentielvo

Ondrej 'Santiago' Zajicek (email: santiago at crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."


More information about the Bird-users mailing list