[Babel-users] Ability to work with massive number of routes? (global full-table)

Juliusz Chroboczek jch at irif.fr
Tue Sep 25 21:21:03 BST 2018


>> B) you run out of cpu - babeld uses linked lists,

Not quite -- the route table is a flat array, with per-destination
linked-lists.  We don't walk the linked lists often, we mostly walk the
flat arary.

>> and tries to recalc bellman-ford every 4 seconds also.

No, it doesn't.  It only does the Bellman-Ford dance when it receives
a new update -- and the computation is incremental.

>> my rtod tests showed babeld typically falling over for any one of
>> these four reasons in well under 4k routes on low end mips and arm
>> hardware. Even the low end apu2 eats a whole cpu with about that many
>> (ipv6) routes.

Dave, these are interesting results -- please send me your profiles.  The
one known major inefficiency is in parsing xroutes, if you've got others,
I'm interested.

>> I think making some version of babel (be it bird or frr ) scale well
>> to at least 64k routes would be a very good idea, 

> I agree.

64k sounds like an achievable goal.

> We are just starting another test network for a city-wide mesh which
> will be based on babeld.

Excellent.  Could you please send me some more detailed info?  (With
permission to include it in my next activity report -- my boss is cool
with my hacking Babel, but he understandingly feels more comfortable when
I can provide him with hard data to put into the activity report.)

Thanks,

-- Juliusz



More information about the Babel-users mailing list