Multithreaded BIRD plans [Was: BGP table size]

Cybertinus bird at cybertinus.nl
Tue Aug 13 14:51:52 CEST 2019


On 2019-08-13 13:08, Maria Jan Matejka wrote:
>> 1. Will this be done only in the 2.x branch, or also in the 1.6.x?
> 
> Only in 2.x; these changes include sh*tload of changes in route 
> propagation
> which we won't do twice.

Right, makes sense indeed. Then I have to upgrade from 1.6 to 2.0 :)

> 
>> 2. If you do use the Kernel protocol, is the entire Bird process still 
>> single threaded, or only the part regarding the Kernel protocol? So, 
>> calculating which route is best could still be multi threaded, but 
>> sending the end result to the kernel is single threaded
> 
> The multithreaded BIRD will be in a separate code branch, a separate 
> version,
> separate binary. If you opt for multithreaded, no kernel protocol will
> be available at all.

OK, that's a clear and conscious decision for the users then indeed.

> 
>> 3. If you do use the Kernel protocol to send routes to the kernel, is 
>> there any alternative to get Bird fully multi threaded?
> 
> To wait until we rework the kernel-nest interface; then we'll merge
> multithreaded execution into master.
> 

OK, then I have to wait for that, because I do use the Kernel protocol 
to place the best routes from all my peers into the kernel routing 
table.

>> I run Bird on 4 routers, most of them have 8 cores, one of them even 
>> has 12 cores, so I would love to be able to use all those cores for 
>> Bird! And I could even double the amount of cores if I would enable 
>> Hyper Threading again, but from a security point of view I don't want 
>> to do that.
> 
> At least if you have some non-trivial filters, it will help you. The 
> first code
> to be multithreaded is filter code, then probably other parts will 
> follow.

I filter a lot. Currently my Bird config is 78 MB in size, most of it is 
filtering. That should be noticeable then.

Thanks for your answers. Is there some easy way to follow the process 
for this, apart from regularly check out the git repo and reading 
through the commit messages?

> 
> Maria

Kind regards,
Cybertinus


More information about the Bird-users mailing list