[Babel-users] paralysis

Dave Taht dave.taht at gmail.com
Wed Nov 21 15:18:22 GMT 2018


I sat down again this past weekend to re-try merging up the
hmac-challenge branch. I got stuck at trying to find a suitable
sha256 to locally include (there are dozens), started fiddling with
blake2s, primarily because the reference git library is
laid out how I'd like some form of sha to be laid out... (ref/sse/neon
subdirs) and I'm told it's a better choice than RIPEMD (keying is
builtin)

and... I'm in love with the forward progress made more feasible by the
"boutier" "dev" branch, in that by
abstracting away the core "plen,prefix, src_plen, src_prefix" into a
separate struct and simplified API, it would make it easier to shift
babel over to using some form of hashing for the route tables
throughout, which I think would lead to a huge speedup, and if various
other things that currently sling that data round moved to pointers to
or in a master "datum" table, would actually save on memory, and stop
walking lists all the time.

except that that that's stuck at 1.8.0. And there are tons of hash
libs available for C, uthash, which I otherwise rather like, is
often the slowest (but it has the doubly linked characteristic of
never moving things around, so you can take pointers to it), so i went
looking at other alternatives for a while before going back to uthash
(which is helping on the resend.* routines already)... uthashed the
interface table for the heck of it, not that it's actually all that
needed (why is there a 20 interface limit in kernel_netlink.c?), but
to do it easily I ended up sed -i 's/ifp->name/ifp->ifname' *.c ...

Then i went around looking at the other 58 branches, saw that mattieu
had done a bier mockup on top of the dev branch, didn't see many major
mods besides (where is the dtls stuff?) what I'd mentioned...

Then I went to go fiddle with the timerwheel idea which wants a clean
64bit type and that meant ripping out timeval in babel and switching
to that... which would be a mild speedup overall...

Total paralysis ensued. Anybody else have this problem? :/ Is there a
path forward? Were I to regain ambition it would be to
get hmac working, then try to bring the datum branch forward.

The sole positive note is that I found a better looking netlink
library for go than what existed 2+ years back... which is where I
think the golang version of babel stalled out
(https://github.com/sh3rp/gabel) ... except that i can't find that lib
again this morning, and it's not the first hits on google.

It's the time of year where this song keeps popping into my head.

https://www.youtube.com/watch?v=W5_8U4j51lI
-- 

Dave Täht
CTO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-831-205-9740



More information about the Babel-users mailing list