Date: Fri, 02 May 2008 16:44:20 +0100 From: "Bruce M. Simpson" <bms@FreeBSD.org> To: John Hay <jhay@meraka.org.za> Cc: FreeBSD Net <freebsd-net@freebsd.org>, Julian Elischer <julian@elischer.org> Subject: Re: multiple routing tables review patch ready for simple testing. Message-ID: <481B36D4.3050103@FreeBSD.org> In-Reply-To: <20080502090200.GA57055@zibbi.meraka.csir.co.za> References: <20080430172705.2E3275AD6@mail.bitblocks.com> <4818BC79.40605@elischer.org> <20080502090200.GA57055@zibbi.meraka.csir.co.za>
next in thread | previous in thread | raw e-mail | index | archive | help
John Hay wrote: > The linux guys seems to have multiple fibs (or whatever they call them) > which they can chain together by giving them different priorities. The > effect seems to be that a packet will be matched through the highest > priority fib to the lowest until a route match is found en then is used. > Will something like that be possible? I came across that kind of use > with the olsr guys. They let olsrd twiddle one of the higher priority > fibs and then put fallback routes in a lower priority fib. That way > olsrd can override a route (even the default route) and when olsrd > exists and deltes all its routes, the original ones are still in the > lower priority fib and will be used. > XORP already does this without relying on any kernel support. Each routing protocol supplies an origin table of its own. The RIB makes the decision on which route to plumb to the kernel based on administrative distance. When xorp_olsr exits, its origin table is removed, and the winning routes are recalculated. You don't need to go to the kernel for this sort of thing unless you specifically need to implement route policy based on which interface(s) a packet came in on.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?481B36D4.3050103>