Demo of FlexMAC [1]

@

ABSTRACT

Developing and evaluating wireless protocols is challenging because it requires flexible network interface hardware, which is not readily available. To reduce the efforts of conducting realistic wireless experiment, we have developed FlexMAC, a wireless protocol development and evaluation platform based on commodity hardware. FlexMAC targets CSMA wireless protocols and allows customization of functions such as backoff, retransmission, and packet timing. In this demo, we will show that FlexMAC is a useful tool for wireless protocol development. We will demonstrate two projects that are developed using FlexMAC, including a software-based 802.11 implementation and an opportunistic relaying protocol in 802.11. You can download FlexMAC (based on Madwifi-0.9.3.1) here.


DEMO I

Compare throughput of a SW-based MAC developed using FlexMAC with the Madwifi hardware implementation. The demo shows that performance of the two are pretty close to each other.

Snapshot of GNUPLOT (right figure: performance of MadWifi; left figure: performance of FlaxMAC)

@

The following is the video taping of the demo. We first perform experiments with the interferer disabled. As shown in the setup figure, a FlexMAC-based node and a MadWifi node connects to a Madwifi node using iperf UDP. Later on, we bring up the interferer which broadcasts short-length pings at a 1 ms interval. Both sessions suffer throughput drop due to the interference, but the level of dropping is pretty similar. Then  we turn off the interferer, so throughput goes up. Again, the two sessions share roughly equal bandwidth.

@

@

@

DEMO II

Demonstrate an opportunistic retransmission protocol developed using FlexMAC:

SETUP

@

@

@

In this demo, we show PRO, an link-level opportunistic relaying protocol that is developed using FlexMAC. We run video streaming application (VLC) to visualize performance improvement. There are four nodes: source, destination, and two candidate relays. In the beginning, relay B is off. If the attenuation of Relay A is large, Relay A does not participate in relaying and video is almost frozen. As we decrease the attenuation level, Relay A takes parts in the transmission and video playback resumes. The number of relayed packets over an interval of 3 seconds is shown on the screen of the relay.

Later on we bring up Relay B so now two relays are present. By adjusting the sweep attenuator of Relay A, we change the relative connectivity toward the destination between the two relays. The stronger relay relays more. Note that no matter which relay dominants, video playback continues smoothly.

@

@

[1]    M. Lu, P. Steenkiste, and T. Chen, "Using Commodity Hardware Platform to Develop and Evaluate CSMA Protocols,"  The Third ACM International Workshop on Wireless Network Testbeds, Experimental Evaluation and Characterization (WiNTECH 2008) in conjunction with ACM MobiCom 2008.

@