Multiple routing tables in action...

Bruce M. Simpson bms at FreeBSD.org
Tue Apr 29 20:17:40 UTC 2008


Julian Elischer wrote:
> The interaction with routing daemons is something I don't know
> enough about. I need someone who knows routing daemons to tell
> how to correctly tweek code that sends routing events.

As long as it doesn't break anything...

>
> I think it is possible that events from a particular FIB should only 
> be reported to routing sockets that are associated with that FIB.
> but I'm not sure about this.

Please look at the Linux rtnetlink socket, they use a tag-length-value 
protocol for just this reason.

It seems reasonable that PF_ROUTE messages have some kind of filter 
applied to them until a more complete story can be realised for this.
    Most PF_ROUTE clients are savvy enough to ignore message types on 
the socket that they don't understand.
    If there is a need to announce route adds and deletes on the socket 
on a per-fib basis, it seems reasonable to stash it in one of the unused 
fields (if we've got any of those..urp) and change the rtm_type field 
for now.

However it does take us further down a route (no pun intended) of 
incremental growth which has real risk (lack of or insufficiently rich 
test cases, requirements drift etc) and seems to be incumbent with open 
source in general.

>
> This would mean running a separate instance of the routing daemon for
> each FIB (VRF?).  Does this sound right to people?

Sounds crap! You really, really don't want to be doing that if you can 
avoid it.

Of course a lot of what's out there is not geared up to deal with it 
(and why would it be?) so it's fine for the time being, but it really, 
really can't be considered a complete, production-quality solution until 
the missing parts exist.
 
cheers
BMS

P.S. I am impressed by the scope and ambition of your work even if I 
haven't had a chance to digest it fully yet, and I hope that my concern 
about production quality open source here is not misinterpreted as 
nay-saying or disapproval by anyone.


More information about the freebsd-net mailing list