Allowing multiple instances of kernel protocol to use same table

Sergey Popovich popovich_sergei at mail.ru
Mon Aug 18 16:52:30 CEST 2014


> Hi,
> 
> Is there any specific reason why each instance of kernel protocol must
> use unique table?
> 
> What I want to achieve is to export different protocols (OSPF, BGP etc)
> to different kernel tables,
> but the only way I can do this currently is to use pipe, instead of
> export filter only.
> 
> My concern is duplication of data - BGP table has over 500k routes, so
> keeping this in master *and*
> piping to another one for kernel export is a waste of resources (both
> RAM and CPU).
> 
> Thank you!

Try attached patch.

It only removes checks for multiple kernel syncers attached to the single
BIRD routing table, but does not touches checks for creating multiple
kernel syncers attached to the single kernel routing table.

Patch is against upstream 1.4.4 version of BIRD, but I only had
tested this for BIRD 1.3.11 on Linux 3.2.x.

Tested with up to 5 kernel syncers attached to the single BRT and
protocols (BGP, static, direct, etc.) seems work correctly.

Also tested with 2 kernel syncers attached to the single BRT
with import/export set to "all" (transparent pipe between two
kernel routing tables).

-- 
SP5474-RIPE
Sergey Popovich
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bird-1.4.4-support-for-multiple-syncers-attached-to-the-single-table.patch
Type: text/x-patch
Size: 1372 bytes
Desc: not available
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20140818/b8aaebc6/attachment-0001.bin>


More information about the Bird-users mailing list