Ad hoc Protocol
Evaluation testbed
This is the homepage of the
APE testbed project. APE testbed is short for Ad hoc Protocol
Evaluation testbed. The APE project started as a research project
at the Department of Computer Systems
at Uppsala University and was partly
funded by Ericsson. APE is now
released under GNU General Public License
. Its intended use is for evaluation of mobile ad hoc routing protocols.
APE aims at making the process of performing complex real-world tests
as easy as possible. It focuses on smooth deployment, high ability of
customization and ability to easily run several routing protocol implementations
for comparisons. Furthermore, APE provides means to assess the similarity
between repeated testruns.
For detailed information and research papers/publications, see section
APE documentation .
APE project members: Erik Nordström, Henrik Lundgren, David
Lundberg, Christian Tschudin, Per Gunningberg.
Contents:
What exactly is APE?
What can APE do for me?
Requirements
APE tools
Contributions
Documentation
Downloads
Related links
Contact
What exactly is APE?
APE is our contribution to the research community in the area of ad hoc
networking. It is free to use and modify by anyone as long as it is in
line with the GPL.
There is no clear definition of what a testbed is or what it comprises.
APE however, can be seen as containing two things:
- An encapsulated execution environment, or more specifically,
a small Linux distribution.
- Tools for post testrun data analysis.
The APE Linux distribution is the environment where tests are performed
and data is gathered. It is self-contained in a small package with a size
of about 8 Mb, and can be installed in an existing Linux or Windows environment
(with DOS support), without re-partitioning or complex installation
procedures. Basically just download, install, and run. This simple installation
has allowed us to use students and their laptops as participants in our
tests, and we have been able to scale tests to include more than 30 nodes.
The APE distribution comes pre-configured and contains tools
for data gathering at both IP and ethernet level. It also has a scenario
scripting system, which enables APE testruns to use movement choreography,
with instructions to participants. Scenarios also define traffic generated
during tests. This allows testruns to be repeated in a very precise manner,
so that results can be verified.
The APE source code allows you to build customized APE distribution
packages, with new scenarios, protocols and much more. The source package
also contain analysis tools for analysis of gathered data.
APE is currently prepared to support the following protocol implementations:
- AODV-UU
- Mad-hoc AODV
- OLSR (INRIA)
- LUNAR
- TORA (University of Maryland, College Park)
- DSR (University of Queensland)
This list does not contain the only protocols which at this
time can run in APE. APE is a Linux environment, therefore any Linux
based protocol implementation should run in APE, granted it is built with
the right kernel version or other software necessary. A supported protocol
is easy to compile and include when building a customized APE distribution
package and are also available in our scenario system. Adding support for
a new protocol is easy, so expect more extensive protocol support as implementations
become available.
What can APE do for me?
If you are a teacher running a project about ad-hoc networking in your
computer science course, then APE can be a good way for students to do
experiments with ad-hoc network protocols.
If you are conducting real-world research in the ad-hoc networking area,
then APE may be a good way to get the most out of your efforts. It can
simplify time consuming tasks, like installation and configuration of
execution environments, and it provides good tools for data gathering
and analysis to build upon.
Requirements
- i386 computer with Windows (with DOS) or Linux.
- WaveLAN card which runs with either the orinoco_cs or wavelan2_cs
Linux drivers.
- Source compilation requires a Linux computer with "root" access.
APE Tools
Mackill
Mackill is a MAC filter integrated into the APE testbed. With Mackill you
can force different connectivity configurations in the ad-hoc network - without
nodes required to be physically separated. This greatly simplifies testing
of, for example, routing algorithms.
In APE, Mackill is also scriptable in our scenario system. This makes it
possible to create scenarios that plays out automatically. Mackill is a very
powerful tool for doing side by side, repeatable test of different routing
algorithms. However, for obvious reasons, a Mac filter is not a substitute
for tests with real movements.
Analysis
APE includes tools written in Perl for
simple analysis of:
- Virtual Mobility - A new real-world mobility metric.
- Connectivity
- Link changes
- Hop count (of Ping packets)
- Path optimality
- Ping success ratio
There is also an (experimental) graphical frontend available.
APE-view
APE-view is a log driven animation tool included in the APE source package.
It displays the topological configuration of nodes during testruns,
based on logged signal strength between nodes. Below are some screenshots
from a scenario we call "Double Split" with 34 nodes. Yellow dots are
nodes, and lines show the connectivity between them.
APE-view is a good way to verify the topological configuration aimed
for in a scenario.
Contributions
If you find APE useful and you start to modify APE for your own
purposes, we urge you to contribute your work back to the APE project.
This will allow APE to evolve and others to benefit from your work.
Example contributions could be:
- Applying our ORINOCO WaveLAN driver modifications to another
driver.
- New analysis tools.
- Support for more protocols.
APE documentation
A technical
report about the APE testbed. A version of this paper is accepted
for publication at WCNC'02.
Documentation covering how to build, install and run the APE testbed
is available here [.ps] [
.pdf ].
This document includes the hardware/software requirements
for running the APE testbed.
Downloads
APE binary distribution
The latest binary distribution package is available
here. This is a compiled APE package which can be used to try APE and get a feeling for what it is. Remember though, that this is
only the execution environment used when performing testruns. For analysis
tools, build and customization scripts you really need the source package.
APE source code
The latest source is available
here
Source contents:
- Build scripts to compile a custom APE distribution package
- AODV-UU source code
- Mad-hoc AODV source code
- Mackill
- APE analysis scripts
- Documentation
- APE-view
- Source code for APE related programs and utilities (TSB, APTS
and more)
- Example APE scenario file(s)
Related links
AODV-UU - Our own AODV implementation
LUNAR - Lightweight Underlay Network Ad-hoc Routing
ARRCANE - Active Routing
and Resource Control in Ad-hoc NEtworks
Mad-hoc - AODV implementation
OLSR implementation from INRIA
APE contact
Mailing lists at the APE testbed
project page at SourceForge.
Acknowledgements
- Johan Nielsen, Ericsson Research/Switchlab Stockholm, Sweden,
for his work on APE.
- Mattis Fjällström, for initial work and ideas on
an ad-hoc network protocol testbed.
Page last modified 2002-01-10