ANIMA WG in IETF is currently standartizing a solution for autonomic networking. One of the components is an autonomic control plane (ACP) which is an in-band management channel interconnecting network devices. ACP could be used for bootstrapping, basic coordination and other non-time-critical tasks. ACP has its own routing subsystem and runs a dedicated routing protocol to maintain connectivity. Currently proposed routing protocol is RPL, which is originally designed for sensor networks and thus from our point of view is not ideal.
At TM we are currently designing a distributed routing protocol for in-band SDN control channel. The protocol calculates paths between SDN controller and switches under its control. It can be used, once there is a controller in the network. We however lack a bootstrapping solution which could be used for initial controller placement and other network bootstrapping tasks. Thus we want to adapt our protocol, so that it can be used as a routing protocol for the ACP.
The goal of this thesis is to adapt our tree routing protocol, so it can be used for routing on the autonomic control plane (ACP ). The protocol should enable communication between all devices in the network, albeight calculating shortest paths is not necessary.
Currently, our protocol calculates shortest-path spanning tree between a pre-defined root node and all other nodes in the network. It then automatically assigns hierarchical addresses for the nodes to reduce the number of entries in forwarding tables. The protocol should be modified to calculate a spanning tree without a pre-defined root node (similar to STP).
The task will be to implement and evaluate the resulting protocol as a distributed algorithm in an event-driven simulator. Currently we use OmNET++ and C++ programming language.
Extra tasks could include supporting additional services, such as multicast communication, publish/subscribe communication or distributed storage.
Basic knowledge of graph algorithms (from for example “Algorithmen I” course) is required. Knowledge of C/C++ is of advantage but is not necessary.
The thesis can be written in German or English.