Software-Defined Networking (SDN) is a paradigm shift that addresses limitations of legacy networking methods by decoupling the control plane from the data plane. Not only does it introduce centralized control over the network, but it also pro-vides enhanced scalability, network programmability, and flexible management capabilities. However, geographically distributed large-scale networks require the deployment of multiple SDN controllers to manage the entire network. This necessity gives rise to the complication known as the Controller Placement Problem (CPP), where the required number of controllers and their exact positions in the network directly impact the overall performance of the network. This paper presents a comprehensive review that includes machine learning (ML) and metaheuristics-based approaches of the current state-of-the-art to address the CPP in SDNs.We highlight the strengths and limitations of existing methods, identify research gaps, and provide recommendations for future hybrid and dynamic controller placement strategies.
Kariyawasam et al. (Mon,) studied this question.