The FreeMAC Project

Overview

Exponential growth in the number of wireless devices that operate in the limited unlicensed frequency spectrum necessitates the next generation of radio devices to be reconfigurable and sensitive to changes in network conditions and spectrum availability. Most modern wireless devices offer increased software programmability and control over radio communication parameters. Since a large portion of the MAC protocol is implemented in software, with the firmware providing a set of functional primitives, it is possible to design and implement alternate MAC protocols in real testbeds equipped with commodity 802.11 devices. This paper describes FreeMAC, a reconfigurableMAC protocol development framework that enables the design and implementation of a general class of multi-channelMAC protocols on a typical Linux system. FreeMAC provides support for frequent channel switching and fine control over the timing of packet transmissions. We also propose a mechanism to reduce the latency in the scheduling of periodic operations of a software MAC protocol that have strict timing requirements. Results from our six node testbed indicate that using our approach, the scheduling latency of slot transitions in a TDMA-style MAC can be improved by up to an order of magnitude, with minimal overhead. FreeMAC also exports a number of radio configuration parameters as API functions to enable cross layer interactions among wireless networking protocols. As a proof of concept, we implement a simple multi-channel TDMA MAC on our testbed to demonstrate the utility of FreeMAC as a development framework.

This is work done at the Mobility Management and Networking (MOMENT) Lab.

People

Ashish Sharma
Elizabeth M. Belding, Professor

Publications

Ashish Sharma, Elizabeth M. Belding FreeMAC: Framework for Multi-Channel MAC Development on 802.11 Hardware.
In the Proceedings of the ACM SIGCOMM PRESTO'08 - Workshop on Programmable Routers for Extensible Services of Tomorrow, Seattle, WA, Aug 2008. [pdf]
Citation (bib)

Download

Click to download the FreeMAC code here.

Related Work

Click Modular Router