UM-OLSR
UM-OLSR is an implementation of the OLSR (Optimized Link State Routing) protocol for the ns-2 Network Simulator. The code is released under the terms of the GNU General Public License (GPL). Due to lack of time this project is not maintained by myself any more, feel free to take over the task of maintenance if you are interested.
UM-OLSR complies with IETF RFC 3626 and supports all core functionalities of OLSR plus the link-layer feedback option. The software has been successfully tested on ns-2, and patches for several versions of the simulator are provided. It is widely employed by the wireless communications research community, as the high number of references in research papers reveal. In addition, it was ported to ns-3 by Gustavo Carneiro (INESC Porto) and to Omnet++ by Alfonso Ariza (Universidad de Málaga). Thus, you can also run OLSR simulations in modern network simulators.
Features
- Compliant with core OLSR (as described in RFC 3626).
- Support for link-layer feedback.
- Highly configurable from TCL scripts, i.e., without the need of recompiling the whole simulator. You can:
- Activate/deactivate debug mode.
- Change the interval at which every message type is sent.
- Change nodes’ willingness for forwarding data packets on behalf of other nodes.
- Print whatever data structure managed by a node at a certain time.
Download
The source code of UM-OLSR in hosted on SourceForge.net: download.
Contributed patches
Here you can find a sample script for configuring a simulation, as well as some UM-OLSR patches for different versions of ns-2 that were contributed by different people. Thanks a lot to all of them.
- olsr_example.tcl
- um-olsr-2.33_v0.8.8.patch by Damian Philipp.
- um-olsr-2.34_v0.8.8.patch by Damian Philipp.
- um-olsr-2.35_v0.8.8.patch by Andrey Lyubimov.
Installation
I assume that you have downloaded and unpackaged the allinone distribution of ns-2 (any of the versions supported by UM-OLSR). Copy um-olsr-0.8.8.tgz (substitute “0.8.8″ for your UM-OLSR version number) into ns-allinone-2.29/ns-2.29/ (substitute “2.29″ for your ns-2 version number), and then do:
$ cd ns-allinone-2.29/ns-2.29/
$ tar zxvf um-olsr-0.8.8.tgz
$ ln -s ./um-olsr-0.8.8 ./olsr
$ patch -p1 < olsr/um-olsr_ns-2.29_v0.8.8.patch
If you had not installed ns-2 yet, then do the following:
$ cd ..
$ ./install
On the other hand, if you are installing UM-OLSR on a running installation of ns-2:
$ ./configure
$ make distclean
$ ./configure
$ make
No comments:
Post a Comment