MeshManagement:Main Page

From ACT4D Project Wiki

Jump to: navigation, search

Previous work by Apoorv and Sankalp Currently Working Vishal Jain, Amit Choursiya


Project Aim

Wireless networks have become ubiquitous in the last few years and new protocols are coming up to address newer needs. TDMA mesh networks are used in several situations, like Wireless ISPs, sensor networks etc. However, proper testing of wireless networks is not simple. Furthermore, though several experimental protocols are devised, many are not adopted commercially because of various reasons, including lack of management tools.

Here, we document our efforts in building a wired testbed of upto 4-5 nodes to test wireless networks running FRACTEL (a TDMA multi-hop network operating on 802.11 frequencies).

TestBed Equipment

To build a testbed within a lab to emulate actual wireless networks, the following hardware equipments are required.


In School of Information and Technology Lab

Setting up testbed

Setting up Wireless Nodes

Testbed setup in lab

For wireless nodes, one can either use the soekris boxes available in the lab, or can plugin wireless PCI cards (For our project we needed Atheros 5K series cards) in the PCI slots of desktops. If PCI cards are not available, then one can use mini-PCI cards along with a PCI to mini-PCI adapter. Put the card in the miniPCI slot available in the adapter which itself is put in the PCI slot on the desktops. Use 'lshw -C network' to see if the card is being identified. Please read the card specifications to identify which connector should be connected with the pigtail.

Communicating with Soekris box

We can connect to soekris boxes over serial cable as well. This is useful when facing problems (like mysterious reboots), or for installing OS on the box.

Equipment needed:Linux Machine with serial port. Serial cable.

Intalling OS on Soekris


We feel that the best way to install an OS on the soekris machines is through a network-boot. Main guide for installing Linux throught this way : Also see :.

Installing Custom kernel

You may need to install custom kernels on the machine (for e.g to run FRACTEL). The recommended way is to follow .

Since compilation can be quite slow on soekris machines, you can copy the .config file to a desktop and build the linux-image and linux-headers package on the desktop. Afterwards, you can use the same package to install the kernel on all the soekris machines.

Note: If you install custom kernel on soekris machines, you may get kernel panics at boot time. One possible reason is that the grub entry uses UUID instead of drive letters(like /dev/sda1) for the parameter root. Find the correct entry by using sudo fdisk -l and make the corresponding changes in grub file.

Building, installing and loading madwifi

Note:madwifi has been superseded by the ath5k driver. Most machines will automatically install the ath5k driver and start using it. Blacklist the ath5k driver in /etc/modprobe.d/blacklist. Also unblacklist the ath_pci driver if blacklisted.


tar xvf madiwifi-source.tar.gz
cd madwifi-source
sudo make install
sudo modprobe ath_pci
sudo lshw -C network
sudo lspci -v
ifconfig -a

Building a wifi-network using madwifi

Note:The interfaces are somewhat confusing when using madwifi. There's an interface called wifi0, which is not used for anything(AFAIK) except to create and destroy other interfaces. These new interface(s) are the ones which are afterwards to configure the network, or send and receive packets.

E.g. commands

sudo wlanconfig ath1 destroy
sudo wlanconfig ath create wlandev wifi0 wlanmode adhoc
sudo ifconfig netmask up
sudo iwconfig ath0 essid meshnet txpower 19dbm channel 7 rate auto
sudo iwlist scan

Measuring signal strengths

Signal strengths can be measured my creating two interfaces, one in networking(adhoc etc.) mode and the other in monitor mode. Create a normal network using the first interface, but run tcpdump on the second interface to capture packets with the radiotap header.

Building and Installing FRACTEL

Note:See the /proc/net/madwifi/ath0/fractel_config file to check whether parameters are being set or not.

List of commands, tools and packages used

Problems faced with the Testbed

P:: 'lshw -C network' does not show the presence of wireless network card.

S:: Make sure the card is properly fitted in the PCI slot. If using a mini-PCI card, ensure it is properly fitted in the adapter which itself is properly fitted in the PCI slot. If possible use a screw to fix the adapter.

P: The card is being detected but it is unclaimed, even after properly installing and loading the madwifi driver.

S: This is a problem for which we couldn't find any solution. It sometimes happened that the card (on the desktop) was perfectly working with madwifi, but with modified driver (fractel), the hardware goes unclaimed. It is baffling, since same card+adapter worked perfectly on some other desktop.

P: 'lshw -C network' shows the card and driver is detecting it, but it is disabled.

S: Use 'ifconfig -a' to see the list of interfaces available. If wireless interface is already there, up the interface, else use the commands mentioned in Building a network using madwifi section and check again.

P: When I up the wireless interface, it detects the network initially but then I get kernel panics.

S: We did face this problem with linux kernel 2.6.32.x and networking in adhoc mode. Disabling the wireless networks which is automatically activated by the network manager was the trick. Up the wireless interface again.

P: Sometimes the soekris boxes do not boot properly and generally hang during boot.

S: Connected the soekris box to the desktop using null modem and booted. This resulted in proper boots. Also reinstalling the OS solved the problem later on.

P: Sometimes the equipment does not work properly and it gets detected very late.

S: If possible try to get a oscilloscope or a similar handy instrument in the lab. This can be used to check signal strengths and thus the equipment.

Productivity-enhancing Techniques

List of vendors

Personal tools