Sync with userspace instead of kernel

Maria Jan Matějka jan.matejka at nic.cz
Sun Dec 30 00:08:24 CET 2018


On December 29, 2018 11:51:47 PM GMT+01:00, Alexander Zubkov <green at qrator.net> wrote:
> Hi.
> 
> We are doing this by syncing with non-default kernel table and
> monitoring routes in it with some daemon.
> You can also use some sort of routing daemon that have more userspace
> interfaces (exabgp maybe) and export from bird to it.
> 
> On Sat, Dec 29, 2018 at 11:42 PM Cody Doucette <doucette at bu.edu>
> wrote:
> >
> > Is there any way in BIRD to sync the routing table directly with
> userspace instead of the OS kernel? We are managing forwarding tables
> in a userspace (DPDK) application instead of the kernel and want to
> avoid duplicating the table in both.
> >
> > I see a possible way of doing this with a patch to set `nl_pid` in
> nl_send() inside of sysdep/linux/netlink.c. But has anyone used BIRD
> for this use case before?

Hi!

I'd suggest writing your own protocol which would do the syncing for you. Look into the pipe protocol to see how it works in the most simplicity.

Sadly, we haven't documented well enough the protocol API. Anyway, if you were interested in our (CZ.NIC) paid services, at least me would really love implementing a protocol API for Lua or Python or so… ;-)

Maria



More information about the Bird-users mailing list