Abstract
The controller placement problem (CPP) is one of the key challenges of software defined networks (SDNs) to increase performance. Given the locations of n switches, CPP consists of choosing the controller locations that minimize the latency between switches and SDN controllers. In its current form, however, CPP assumes a fixed traffic and no existing solutions adapt the placement to the load. In this paper, we have addressed the dynamic CPP that consists of: 1) determining the locations of controller modules to bound communication latencies and 2) determining the number of controllers per module to support the dynamic load. We propose an algorithm named LiDy+ that runs in O(n2) and combines a controller module placement algorithm with a dynamic flow management algorithm. We evaluate the number of controllers, the controller utilization, and the power consumption and the maintenance cost of LiDy+ on both sparse and dense networks. Our comparison against a previous solution shows that LiDy+ does not only achieve a smaller number of controllers and a higher controller utilization but also incurs less energy and maintenance costs than the previous solution. Finally, we run LiDy+ in a large-scale environment where the previous solution of time complexity Ω(n2 log n) is impractical.
Original language | English |
---|---|
Article number | 7812749 |
Pages (from-to) | 63-76 |
Number of pages | 14 |
Journal | IEEE Transactions on Network and Service Management |
Volume | 14 |
Issue number | 1 |
DOIs | |
Publication status | Published - 2017 |
Keywords
- controller placement problem
- electric controllers
- heuristic algorithms
- load balancing
- software-defined networking (computer network technology)