Madwifi Stripped / Click Wifi Driver

News

I have completed merging all the important stuff from the this driver into the Madwifi driver. You'll have to check out the BSD branch in cvs to get it. Once you do, you can run

sysctl -w dev.ath0.rawdev_type=2 sysctl -w dev.ath0.rawdev=1

which will create a device named ath0raw which you can send and receive radiotap headers on. To receive all packets on this interface, you can run

sysctl -w dev.ath0.rxfilter=0xff which will

About

This driver is a fork from the Madwifi driver. It allows you to send and receive 802.11 frames in click; Other device drivers usually allow you to transport 802.3 frames back and forth from a wireless card.

There are some sample click configs included in the tarball that show how to configure a device so that you can send and receive normal ethernet packets through a click device, which will convert them to 802.11 frames.

To build and compile it, you need to have installed the click kernel patch.

You can take a look at the ChangeLog or browse the cvs online .

Download

First, log in to our CVS server with the following command:

% cvs -d :pserver:anoncvs@cvs.pdos.lcs.mit.edu:/cvs login
CVS password:

(Just hit enter when prompted for a password.)

Then, to obtain the current source, run this command:

% cvs -z5 -d :pserver:anoncvs@cvs.pdos.lcs.mit.edu:/cvs co -d stripped roofnet/release/stripped

This checks out a copy of the madwifi.stripped sources and places them in the `stripped' directory on your machine. The `-z5' option asks for compression.

To update a previously checked out source tree, change into the click directory and run this command:

% cvs -z5 up -dP

If you can't access cvs, occasionally tarballs are uploaded here .

Features

This driver is tightly integrated with the click modular router; It allows you to be able to "tag" each packet that goes through click with various parameters. For instance, you can set the bitrate on a per-packet level and get per-packet signal and noise readings. It also allows you, through the WifiTXFeedback element, to retrieve packets that were not acked by a receiver.

Building click

First, log in to the click anonymous CVS server with the following command:
% cvs -d :pserver:anoncvs@cvs.pdos.lcs.mit.edu:/cvs login
CVS password:

(Just hit enter when prompted for a password.)

Then, to obtain the current source, run this command:
% cvs -z5 -d :pserver:anoncvs@cvs.pdos.lcs.mit.edu:/cvs co -d click click/release/one

This checks out a copy of the Click sources and places them in the `click' directory on your machine. The `-z5' option asks for compression.


Next, go to your build director and run the following command
$ CLICKDIR/click_dir/configure --enable-wifi --disable-linuxmodule $ gmake all install

Running Roofnet

Once you have compiled and installed the stripped driver (using gmake install as root) and also built and installed the click software, you can run the following (as root) to load a roofnet configuration:

modprobe hostap_cs
modprobe ath_pci
CLICKDIR/conf/gen_config_roofnet.pl --dev "dev" | click -

Make sure you subsitute wlan0 or ath0 for "dev".

If you want to run a gateway node, run gen_config_roofnet.pl with the "--gateway" option.

Mailing List, Questions and Feedback

We welcome questionsfeedback, suggstions, patches, comments, etc; There is a mailing list at madwifi.stripped@pdos.lcs.mit.edu, as well as on-line archives of the list.

To add yourself or manage your subscription, visit this page.