[Battlemesh] Babel-Z documentation [was: Battlemesh v5 tests]
jch at pps.jussieu.fr
Wed Mar 7 18:57:12 CET 2012
>> The protocol is indeed not documented, AFAICT. It does not bother
>> me so much since the ideas underlying it are explained, which I
>> consider much more important.
Well, source code does not constitute documentation.
The basic Babel protocol is fully documented in RFC 6126. By fully
documented, I mean that I have made a good faith effort to give enough
information to make it possible to reimplement Babel from scratch,
without any help from me. In other words, should I fall on my head
tomorrow and decide to create a startup and make Babel proprietary,
there's nothing I could do to prevent you from continuing a free version
of Babel with only moderate effort to get up to speed. Source code
alone, even if well commented, gives no such guarantee.
On the other hand, while the algorithms used by Babel-Z were fully
described at WBM'11 , the packet format has never been properly
documented. And while you could gather all the necessary information
from the source code, source code alone does not constitute documentation.
The Babel-Z packet format has been stable since August 2011, and we've
tested Babel-Z  in enough cases to be confident that it's a sound
protocol. I'm planning some more testing in the near future , and
unless something goes horribly wrong, I'll document both the Babel
extension mechanism (which is used by both Babel-Z and the highly-
experimental top-secret Babel-L) and the exact format of the Babel-Z
As a final note, Gabriel has looked at the BATMAN sources, and as far as
we can tell, BATMAN appears to implement a variant of Babel's "Z1"
algorithm, albeit implemented at the route selection level rather than
at the metric level; this has some consequences that we could discuss,
were the BATMAN developers open to discussion.
slides 15 through 17.
 Thanks, Gabriel and Zoobab.
 I've received my four-radio routers. Does anyone have four
RouterStation enclosures for sale?
More information about the Battlemesh