[Freedombox-discuss] Serval Mesh Extenders

haxwithaxe me at haxwithaxe.net
Fri Jul 19 05:32:43 UTC 2013



On 07/17/2013 12:11 PM, Eugen Leitl wrote:
> ----- Forwarded message from John Gilmore <gnu at toad.com> -----
> 
> Date: Tue, 16 Jul 2013 11:17:54 -0700
> From: John Gilmore <gnu at toad.com>
> To: Eugen Leitl <eugen at leitl.org>, gnu at toad.com
> Cc: freedombox-discuss <freedombox-discuss at lists.alioth.debian.org>
> Subject: Re: [Freedombox-discuss] [HacDC:Byzantium] Re: Serval Mesh Extenders
> 
>> if you expect every single device to be a mesh node in the same
>> collision domain within range of each other of course it won't work :P
> 
> It is not obvious that "of course it won't work".  A sensible mesh
> protocol would avoid congesting its medium, having most nodes avoid
> forwarding packets for each other in order to increase the amount of
> end-user traffic it could carry.  So the real issue is that people
> have to manually configure "mesh nodes" versus "end user nodes",
generally in most use cases i've seen there are mesh nodes that are
setup as APs for non-mesh nodes as well so there is little thinking to
be done once the nodes are turned on. there are protocols that say they
do more intelligent or less verbose communication but i haven't
personally tested any in that way beyond ~28 mesh nodes in a small room.

> because if every node is a mesh node, the mesh protocol doesn't work.
> This operational requirement of current mesh protocols violates the
> principle of least surprise and the zero configuration principle.
there will always be a tiny bit of config as a certain amount of
collusion is required to get some details matched. with most protocols
the collusion amounts to using the defaults and joining the right adhoc
network (ala babel). in the case of byzantium we have a preconfigured
network so it will just have to (automatically) run the mesh protocol to
be usable.

> These multiport nodes run a "spanning tree algorithm" together, which
> will pick a working subset of multiport nodes and disable forwarding
> on the rest, to avoid traffic loops that congest the network.  When
most if not all of the contemporary, deployed, wireless mesh protocols
implement loop avoidance or prevention of some kind. some of which are
mathematically proven to prevent loops (so the babel people say).

> the network configuration changes, the algorithm adapts within a few
> seconds.  Networks can have thousands of nodes without running into
> scale issues.  See https://en.wikipedia.org/wiki/Ethernet for more
> details.
on a practical level we have complex ways of consolidating the physical
infrastructure in wired systems that make having that many wired nodes
practical and you can in fact have thousands of nodes in a wireless mesh
(not all in the same small room though :P).
athens municipal wireless mesh network >1k mesh nodes and is the ISP for
a giant chunk of athens, greece.
http://www.awmn.net/ << literally all greek to me
http://en.wikipedia.org/wiki/Athens_Wireless_Metropolitan_Network

> The promise of mesh networks was to offer the same level of end-user
> utility and convenience as Ethernet, with radio links rather than
> wires.  So far that promise has been unfulfilled.
i'm too young to have heard that particular promise so my apologies for
making assumptions :) by the time i heard about mesh networking, wifi
was already at 802.11b.
in my opinion wireless mesh is very close in the way of end user
friendlyness and way ahead in not needing wires running between each of
the nodes. i would even argue in many cases the time and energy spent
running cables can be greater than setting up a wireless mesh. there are
project like byzantium and serval that are trying to make things as easy
as possible for end users. while it might not be the vision the people
on roofnet had in mind the infrastructural mesh acting as a backbone for
non-mesh clients is a decent short* term solution for several practical
problems.

some links that may interest you
http://www.olsr.org/ - what freifunk, commotion wirelss, and byzantium use
http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ - babel which
is what byzantium used to use
http://bmx6.net/ - bmx6 which is a derivative of batman that is supposed
to solve many of the issues that batman-adv has
http://battlemesh.org/ - really big wireless mesh shootout and more info
on the limits of the different protocols

* when we get this whole ISPs not shutting down community/municipal
networks in the US and someone writes a decent mesh protocol
implementation for windows that doesn't require cygwin :P

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 901 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/freedombox-discuss/attachments/20130719/3c94bd24/attachment.sig>


More information about the Freedombox-discuss mailing list