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

Dave Taht dave.taht at gmail.com
Tue Sep 25 22:44:01 BST 2018


On Tue, Sep 25, 2018 at 2:27 PM Juliusz Chroboczek <jch at irif.fr> wrote:
>
> >> 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.

ok. I stand corrected on both counts.

> >> 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.

A big part of the dance was duking it out with odhcpd. I'm not in a
position to not run that.

All this data - and my interpretation of it - was old, I merely tried
to make things "crash" last night. I did. I think a key to all that
damage I did with less routes last time was that I had a lot more
routers on the same link and an infinite mcast queue on some of them.

I made the rtod tool available for those that wanted to do more 2 years ago.

The core part of the gprofile - where I stopped work after ripping out
enough of memcmp to finally see it - was after figuring out that a
goodly part of the problem
was in the non-qsort thing. both you and I hoped someone else would
tackle it. You can't see it on the gprofile without putting in all the
xor stuff I did. Aside from that...

what I'm trying to do right now is upgrade my ~6 core routers to lede
18.06.1 - which I can use as a base for future work.
I put in the patches I was using to keep it stabler before (just
posted here earlier today), and I just got off the roof with a
nanostation. Nearly
all my core routers date from about this era.....

Linux roof-to-office.lodge.lupinlodge.org 3.18.7 #1 Thu Feb 19
15:51:50 PST 2015 mips GNU/Linux

so... assuming I don't fall off the roofs and can get this upgrade
online and stable I'll be able to look better at real data again. :)

Next week.


>
> >> 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
>
> _______________________________________________
> Babel-users mailing list
> Babel-users at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/babel-users



-- 

Dave Täht
CEO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-669-226-2619



More information about the Babel-users mailing list