Software-defined networks (SDNs) argue for a physical separation between control and data plane. Although the benefits of this separation are well-studied, the question of how the connectivity between these two planes, that is the connectivity of the control channel, is maintained has not received much attention. Most of the current SDN deployments use a separated out-of-band management network which either provides on-hop physical connectivity between SDN controller and SDN switches or has its own routing system which relies on legacy protocols such as STP or OSPF.
An alternative to the out-of-band network is in-band, which means that the SDN control channel shares resources with normal network traffic. Although in-band control offers several benefits, including especially reduced deployment costs, maintaining connectivity of the in-band control channel is challenging, as controller’s changes to the data plane may affect the connectivity of the control channel and, thus, the ability of the controller to manage the switches.
We are currently developing a distributed routing protocol that is specially tailored to the traffic pattern and requirements of the SDN control channel. The ideas for the protocol can be found in the short abstract here: link
Following thesis related to the developed and/or improvement of the protocol there are currently open:
1. Further development of the protocol
The goal of this thesis is to continue the protocol development by implementing several necessary improvements. The tasks could include:
- labeled path vector for the convergence of the spanning-tree
- termination detection feedback on the tree construction (see Aspnes's Algorithm here)
- label encoding schemes
- distributed BFS for local neighborhood discovery and backup paths calculation
2. Backup Paths
The main goal of this thesis is to design a data-plane (packet and tables format) that enables packet forwarding on the backup paths. The data-plane should be designed with OpenFlow in mind. The first goal of this thesis is to design a working solution using a centralized control plane (the algorithm operates on the complete network topology). The thesis can be continued with either improving backup path construction or with a distributed implementation of the proposed solution.
3. Comparison of techniques for loop-free distance vector convergence
The goal of the thesis is to compare existing solutions from the literature to the problem, known as "slow reaction to bad news" or count-to-infinity. The basic idea behind these techniques is that the routers synchronize between each other to perform routing updates in specific order. One of the first solutions is presented as DUAL algorithm or CISCO EIGRP protocol and since then several improvements were published. The goal of this thesis is to first compare the improvements analytically, followed by implementing and simulating two or three most promising ones.
4. Metric for maximizing the number of feasible successors for a distance-vector protocol
One of the ideas for loop-free convergence in DV is to distinguish between cases where switching next-hop will and will not cause count-to-infinity. The latter are feasible successors. Having more feasible successors allows both to use load balancing between the successors as well as converge faster. The paper "Always Acyclic Distributed Path Computation" (available here) presents a) a condition for being a feasible successor and b) an idea on how to construct paths so that the number of feasible successors is maximized. The goal of this thesis is to build on their idea and present a working implementation for a simulator.
The protocol is currently being developed in a simulator. The simulator models network nodes connected by links with a given delay (distributed message-passing system). The resulting solution should be evaluated in the simulator. The thesis (Ausarbeitung) can be written in either German or English.