On SDN Controllers Placement Problem in Wide Area Networks

  • Firas Fawzy ZobaryEmail author
  • ChunLin Li
Conference paper
Part of the Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering book series (LNICST, volume 312)


Software Defined Networking (SDN) is a new paradigm where the forward plan is decoupled from the control plan. The controller is a central program that tells the switches and routers how to react to the incoming flows and different network changes. The placement of the controllers considering different metrics becomes a challenge in SDN WAN. In this paper, we study the controller placement problem in terms of propagation delay and load balancing. An extended K-means algorithm is introduced to partition the network into several subnetworks and place the controllers in nodes that minimize the network delay. Then a load balance index is calculated to check the effectiveness of the load balancing considering a metric \( \varvec{\beta} \) as the load difference between controllers. The result analysis shows that a trade off should be done between the delay and load balancing depending on the priority of the network and no optimal case can be found that minimize both of the metrics at the same time.


Software Defined Network Controller placement Propagation delay Load balancing 


  1. 1.
    Hassas Yeganeh, S., Ganjali, Y.: Kandoo: a framework for efficient and scalable offloading of control applications. In: Proceedings of the First Workshop on Hot Topics in Software Defined Networks, pp. 19–24. ACM (2012)Google Scholar
  2. 2.
    Tootoonchian, A., Ganjali, Y.: HyperFlow: a distributed control plane for OpenFlow. In: Internet Network Management Conference on Research on Enterprise Networking. USENIX Association (2010)Google Scholar
  3. 3.
    Heller, B., Sherwood, R., McKeown, N.: The controller placement problem. In: Proceedings of the First Workshop on Hot Topics in Software Defined Networks, pp. 7–12. ACM (2012)Google Scholar
  4. 4.
    Yao, G., Bi, J., Li, Y., Guo, L.: On the capacitated controller placement problem in software defined networks. IEEE Commun. Lett. 18(8), 1339–1342 (2014)CrossRefGoogle Scholar
  5. 5.
    Mamushiane, L., Mwangama, J., Lysko, A.A.: Given a SDN topology, how many controllers are needed and where should they go? In: 2018 IEEE Conference on Network Function Virtualization and Software Defined Networks (NFV-SDN), pp. 1–6. IEEE (2018)Google Scholar
  6. 6.
    Xiao, P., Qu, W., Qi, H., Li, Z., Xu, Y.: The SDN controller placement problem for WAN. In: 2014 IEEE/CIC International Conference on Communications in China (ICCC), pp. 220–224. IEEE (2014)Google Scholar
  7. 7.
    Qi, J., Yu, Y., Wang, L., Liu, J.: K*-means: an effective and efficient K-means clustering algorithm. In: IEEE International Conferences on Big Data and Cloud Computing (BDCloud), Social Computing and Networking (SocialCom), Sustainable Computing and Communications (SustainCom) (BDCloud-SocialCom-SustainCom), pp. 242–249. IEEE (2016)Google Scholar
  8. 8.
    Kuang, H., Qiu, Y., Li, R., Liu, X.: A hierarchical K-means algorithm for controller placement in SDN-based WAN architecture. In: 2018 10th International Conference on Measuring Technology and Mechatronics Automation (ICMTMA), pp. 263–267. IEEE (2018)Google Scholar
  9. 9.
    Sahoo, K.S., Puthal, D., Obaidat, M.S., Sarkar, A., Mishra, S.K., Sahoo, B.: On the placement of controllers in software-defined-WAN using meta-heuristic approach. J. Syst. Softw. 145, 180–194 (2018)CrossRefGoogle Scholar
  10. 10.
    Hu, Y.N., Wang, W.D., Gong, X.Y., Que, X.R., Cheng, S.D.: On the placement of controllers in software-defined networks. J. China Univ. Posts Telecommun. 19, 92–171 (2012)CrossRefGoogle Scholar
  11. 11.
    Lu, J.F., Tang, J.B., Tang, Z.M., Yang, J.Y.: Hierarchical initialization approach for K-means clustering. Pattern Recognit. Lett. 29(6), 787–795 (2008)CrossRefGoogle Scholar
  12. 12.
    Jimenez, Y., Cervelló-Pastor, C., García, A.J.: On the controller placement for designing a distributed SDN control layer. In: IFIP Networking Conference, pp. 1–9. IEEE (2014)Google Scholar
  13. 13.
    Al-Mohair, H.K., Saleh, J.M., Suandi, S.A.: Hybrid human skin detection using neural network and K-means clustering technique. Appl. Soft Comput. 33, 337–347 (2015)CrossRefGoogle Scholar
  14. 14.
    López Del Alamo, C., Calla, R., Arnaldo, L., Fuentes Pérez, L.J.: Parallelization of the algorithm K-means applied in image segmentation. Int. J. Comput. Appl. 88(17) (2014)Google Scholar
  15. 15.
    Celebi, M.E., Kingravi, H.A., Vela, P.A.: A comparative study of efficient initialization methods for the K-means clustering algorithm. Expert Syst. Appl. 40(1), 200–210 (2013)CrossRefGoogle Scholar
  16. 16.
    Katsavounidis, I., Kuo, C.C.J., Zhang, Z.: A new initialization technique for generalized Lloyd iteration. IEEE Signal Process. Lett. 1(10), 144–146 (1994)CrossRefGoogle Scholar
  17. 17.
    Internet2 Open science, scholarship and services exchange. Accessed 22 Mar 2019

Copyright information

© ICST Institute for Computer Sciences, Social Informatics and Telecommunications Engineering 2020

Authors and Affiliations

  1. 1.School of Computer Science and TechnologyWuhan University of TechnologyWuhanPeople’s Republic of China
  2. 2.Faculty of Information EngineeringDamascus UniversityDamascusSyrian Arab Republic

Personalised recommendations