Skip to content

Add LR-WPAN routing classes

Philip Hönnecke requested to merge h-philip/ns-3-dev:lr-wpan-routing into master

I created an LrWpanRoutingDevice base class to allow for simple routing in LR-WPAN networks, including multi-hop. This base class contains the abstract method GetRouteTo which has to be implemented by the child classes and is responsible for actually finding out where to send a packet to in order to get it delivered to the final destination.
With LrWpanStaticRoutingDevice and LrWpanGlobalRoutingDevice I added two child classes (LrWpanRoutingDevice > LrWpanStaticRoutingDevice > LrWpanGlobalRoutingDevice)).

The first one allows for very simple static routes (source, gateway, destination) that have to be added manually by the user. The second one expands the first one by allowing for an automatic set up of those static routes using breadth-first search on the network. For that, only the number of hops is considered. The calculation of this is done in the LrWpanGlobalRoutingHelper class, which therefore can't be deleted before the calculation is completed (which is a bit annoying).

As of right now, no tests or examples for this are available. However, I am planning on adding a simple example for the LrWpanGlobalRoutingDevice. I added a simple example on how to use the LrWpanGlobalRouting(Device|Helper). If any more examples or tests are required or wanted, I can add some.


This code was created as part of my Bachelor Thesis at the Research Group of Connected and Mobile Systems at the Institute of Operating Systems and Computer Networks (IBR) at the Technische Universität Braunschweig.

Edited by Philip Hönnecke

Merge request reports