Jul 01, 2013
Project Byzantium can now take a breather for a day or two to recuperate, so I have some time to write a hopefully coherent post during my second cup of coffee.
Last week we wrapped up ISC development milestone number three: Addding amateur radio support to Byzantium Linux. This was probably our more difficult development effort to date, as it required that we use our relatively newly earned skills as ham radio operators to figure out a way to connect mesh networks over long distances - longer distances than 802.11 wireless can ordinarily cover. I'll not recap the entire report I just linked to, but we had to teach ourselves a lot about packet radio and figure out how to integrate our mesh network paradigm with this rather broad field of communications. It wasn't easy. In fact, we spent most of our time trying to figure out which of the many variables involved was causing us trouble at any particular moment in time. In short, we know that it's possible because the technologies will definitely share their toys in the sandbox together (as it were) but it's difficult. It takes practice and a lot of playing around to figure out how to make this work correctly, as well as time spent studying for an amateur radio license to do this legally.
As part of the amateur radio effort, we integrated into Byzantium Linux as much of Linux's packet radio toolkit as was feasible (which, to be fair, was almost all of it). It was fairly straightforward a task - deceptively so, given how tricky using the toolkit can be. Most of it consists of command line tools that implicitly assume that you've read the documentation several times and have a working knowledge of packet radio. We have done this to facilitate the hacker and amateur radio communities drawing closer togther to help perfect what we believe to be a potentially useful communications technology. Also, during the last development effort we finally found our distributed chat application. It's called Groundstation, and it works a little bit like Twitter, a little bit like Facebook comment threads, and a little bit like IRC. The central concept behind Groundstation is that every node contains one or more channels, or broad collections of information. Each channel contains one or more discussion threads called grefs which people can read and post messages to. Users interact with a service called Airship that provides a web-based client for Groundstation. Each Groundstation node in a network periodically broadcasts its latest posts, which other nodes pick up and incorporate into their own channels. The process repeats again and again until every Groundstation node in the network is up to date, a process called eventual consistency. So, a message that a user posts on one Byzantium node will percolate through the mesh and show up on every other Byzantium node, so people that are geographically far apart will be able to communicate with one another.
Due to the number and magnetude of changes we made to Byzantium Linux, we felt that this warranted a new major release - v0.4b. That's right - we're now officially in beta! While Byzantium Linux isn't fully developed yet, it's certainly developed enough that it's being deployed in the field for larger scale testing. We think that's worth of the next letter of the Greek alphabet.
You can download Byzantium Linux v0.4b from our distribution page. Please download it, give it a try, and if you find any problems with it please open a ticket at our bug tracker. Patches, fixes, and suggestions are always welcome!