Algorithmic and Complexity Aspects of Path Computation in Multi-Layer Networks - Lamali, Mohamed Lamine; Fergani, Nasreddine; Cohen, Johanne (IEEE/ACM transactions on networking, 2018)
Carrier-grade networks comprise several layers where different protocols coexist. Nowadays, most of these networks have different control planes to manage routing on different layers, leading to a suboptimal use of the network resources and to additional operational costs. However, some routers are able to encapsulate, decapsulate, and convert protocols, and act as a liaison between these layers. A unified control plane would be useful to optimize the use of the network resources and to automate the routing configurations. Software-defined networking-based architectures offer an opportunity to design such a control plane. One of the most important problems to deal with in this design is the path computation process. Classical path computation algorithms cannot resolve the problem, as they do not take into account encapsulations and conversions of protocols. In this paper, we propose algorithms to solve this problem and study several cases. If there is no bandwidth constraint, we propose a polynomial algorithm that computes the optimal path. We also give lower and upper bounds on the optimal path length. On the other hand, we show that the problem is \mathsf {NP} -hard if there is a bandwidth constraint (or other quality-of-service parameters), even if there is only two protocols and in a symmetric graph. We study the complexity and the scalability of our algorithms and evaluate their performances on real and random topologies. The results show that they are faster than the previous ones proposed in the literature. These algorithms can also have important applications in automatic tunneling.