Mon 23 Sep

Lessons for Community Networks

I had the good fortune to run into Isaac Wilder from the Free Network Foundation and a couple folks from at the Oakland mesh meetup a couple weeks ago. Isaac and I have gone back and forth on the viability of mesh networks, so it was nice to finally put a face with the name.

We had a great discussions on their respective networks and about the cellular network we've been working on in Papua. There's obviously good work being done by both projects; I was particularly impressed by's scale (thousands of really operational nodes!). One thing that I was really glad about was the recognition by all parties that "building mesh networks" isn't really the end goal; it's about building free-as-in-freedom decentralized community networks. Guifi for example is planning on building out fiber links to augment their backhaul.

There were a few points I took away from our discussion that I think are important guidelines for people building these decentralized community networks.

  • Embrace commerce. Our network in Papua is explicitly for-profit, and one of the most remarkable aspects of it is that it has been profitable for the local operators since soon after going live (we'll have a paper out about this soon). I think this has aligned incentives between users and the local operator to ensure reliable operation is a long-term goal. Paying for service and demonstrating a clear business model I think also conveys to users that the network is for real, and there to stay. In's network, they have independent agents ("Guifi Professionals") who provide installation service for nominal fees. In my experience one of the hardest problems in keeping a network operational is maintaining adequate involvement from experienced people who can fix problems when the arise; providing income to those people is an excellent answer.

  • Don't automate everything. One of the guys from Guifi explained that they had made explicit decisions against automating certain aspects of their network operations, like firmware updates. While they make impressively extensive use of automation for many common network activities, keeping a human in the loop is a great way to avoid accidentally messing up large parts of a network. In Papua, we rely on human intervention for handling certain faults; while it's inefficient (and we do in fact want to automate this process eventually) it's given us a core set of people who are capable of basic debugging of the system and who can fix certain problems on their own, without our intervention. In short, having a human in the loop can improve resilience of the network, not to mention the positive side effect of improving peoples' understandings of how networks work.

  • It's a social problem. Isaac said something I really liked. Paraphrased, it was "a big part of our innovation is social." Obviously there is technical innovation still occurring within the free networking community, but like Isaac I agree that building large wireless networks is essentially a solved problem (in my survey of WISPs I conducted last year I spoke with dozens of operators who had thousands of subscribers, some spread across territories spanning hundreds of miles). To me, a more interesting question than what mesh routing protocol to use is what are other, more democratic, methods of building and operating communications infrastructure? The answer we've explored in Papua is to distribute control to local entrepreneurs who are more responsive to community needs than national-scale telcos; this is analogous to what rural WISPs have done worldwide. Guifi and the FNF are really pushing the limits on what's possible with building fully horizontal networks -- in the language of my recent paper, networks that are truly decentralized from a management perspective. Our friends at Rhizomatica are taking a similar approach in Oaxaca with their cellular network, though due to the fundamental nature of phone networks it's a bit harder to make them truly decentralized (phone networks' first design imperative is the ability to bill and control usage, after all). While I personally believe the "small entrepreneur" model we're using in Papua strikes the right balance between equitable operation and practicality, I'm excited to see work on other models.

Now, all this said, I still firmly believe that for blackout circumvention a la Egypt 2011 mesh networks are a poor answer and inefficient use of resources. I also think it's important for anyone working in the space to have a firm understanding of the fundamental reasons why real mesh networks don't scale so they can design around that [1]. But it's a good thing in my mind that projects like the FNF and Guifi exist because they give us practical examples of alternatives to traditional top-down models of telecommunications. That's a cause I support and I look forward to exciting developments from both of these projects.

[1] There was a comment at the mesh meetup that night that there's no such thing as scarcity of bandwidth in a mesh network since you can always add more nodes or use more frequency. This is of course not true: radios in practice have limited bandwidth, regardless of spectrum regulation, and channel contention and forwarding load impart fundamental limitations on the capacity available in a mesh. There's also the practical problem that devices have a limit on their forwarding capacity. If a builder of a community network starts with this expectation, they're setting themselves up for failure.