[Babel-users] babeld slashes kernel route manipulation performance by 17000%
Toke Høiland-Jørgensen
toke at toke.dk
Thu Feb 24 22:30:51 GMT 2022
Juliusz Chroboczek <jch at irif.fr> writes:
>> Probably because babeld subscribes to netlink notifications for all new
>> routes, and only filters them on the table name fairly late,
>> specifically here:
>>
>> https://github.com/jech/babeld/blob/master/kernel_netlink.c#L1175
>
> Do you see how it can be done better?
Hmm, no, not really :(
Looked at the Bird code, and it seems like it's doing both the subscribe
and parsing quite similar to the way babeld is. So it's actually a bit
puzzling why it's hurting performance that much. the only obvious
difference that I can see from my admittedly cursory glance is that
babeld makes heavy use of indirect calls; but we're not talking millions
of operations per second here, so it really shouldn't be taking such a
heavy toll...
-Toke
More information about the Babel-users
mailing list