[Babel-users] babeld slashes kernel route manipulation performance by 17000%

Daniel Gröber dxld at darkboxed.org
Thu Apr 7 22:02:13 BST 2022


Hi Toke,

On Thu, Apr 07, 2022 at 12:19:46AM +0200, Toke Høiland-Jørgensen wrote:
> I doubt that can have fixed this, though? But if it's gone, well, good
> news? :P

I just managed to trigger it again so probably no :) This is on
5.10.0-13-amd64/5.10.106-1 with babeld 1.9.1 and bird version 2.0.9.

While it's happening bird prints something like the following every once in
a while:

   I/O loop cycle took 6793 ms for 6 events

I get 500-2000ish events from `ip -6 monitor` over a 10sec interval as
opposed to the 80-150k I usually see.

> Hmm, I've definitely had issues with dnsmasq not handling lots of route
> updates well. I got rid of it now, but when I was running a full BGP
> table on an oldish openwrt, I basically had to kill dnsmasq every time
> the BGP session went up or down, otherwise it would take several minutes
> to recover :/

I did kill dnsmasq while it already started happening but that didn't help.
On the other hand if I kill babeld the insertion speed seems to go back up
again. So that would seem to suggest dnsmasq isn't the problem.

Interestingly I can't seem to trigger it by just (non-gracefully)
restarting bird so there must be a trigger other than just lots of route
insertion activity going on.

For completeness' sake: I added a babel protocol to my bird config before
this triggered again but it's not involved in the main bgp routing table
only a tiny isolated one nor is it handling any of the interfaces babled is
on. For now I'm assuming this is not causing to the problem.

--Daniel



More information about the Babel-users mailing list