OLSRv2 Implementation and Interop
OLSRv2 is a routing protocol for Mobile Ad Hoc Networks (MANET), based on the same algorithms and ideas as OLSR contained in RFC3626. OLSRv2 builds on the experience gained by a wide community from tests and deployments over the years since RFC3626, and features a more modular and extensible architecture, while being simpler and more efficient than its predecessor.
Being modular, by design, OLSRv2 is made up from a number of generalized building blocks, standardized independently and applicable also for other MANET protocols. The following documents constitute the different modules of OLSRv2:
Being modular, by design, OLSRv2 is made up from a number of generalized building blocks, standardized independently and applicable also for other MANET protocols. The following documents constitute the different modules of OLSRv2:
- RFC5148 - Jitter Considerations in Mobile Ad Hoc Networks
- RFC5444 - Generalized MANET Packet / Message Format
- RFC5497 - Representing Multi-Value Time in Mobile Ad Hoc Networks (MANETs)
- draft-ietf-manet-olsrv2 - The Optimized Link State Routing Protocol Version 2
- draft-ietf-manet-nhdp - Neighborhood Discovery Protocol
Java Implementation (JOLSRv2)
An OLSRv2 implementation, denoted “JOLSRv2”, has been programmed in Java. A routing protocol written in Java has several advantages, in particular for research purposes, over the more commonly used C/C++:- it allows easy prototyping, since it is less error-prone (due to missing pointers, automatic memory management, garbage collection, etc.) and since many auxiliary classes are already contained in the Java distribution (e.g. lists, hash tables, tree maps),
- it facilities adding extensions to the core implementation due to class heritage,
- it allows integration of tools as Java applets, also distributed on web pages, and
- it is platform independent.
Interop Tests
In order to verify whether the implementation corresponds to the specification, tests with other packetbb, NHDP and OLSRv2 implementations have been conducted at the OLSR Interop workshops 2008 and 2009. Some of the test tools are available for download.
Publications
- U. Herberg, "Performance Evaluation of using a Dynamic Shortest Path Algorithm in OLSRv2", Proceedings of the 8th Annual Conference on Communication Networks and Services Research (CNSR), May 2010
- U. Herberg, "JOLSRv2: An OLSRv2 implementation in Java", Proceedings of the 4th OLSR Interop Workshop, 2008