عنوان مقاله [English]
In recent years, Software Defined Networks (SDN) have been raised as a promising approach to improve the network programmability and management of computer networks. It consists in separating the control plane from the data plane and centralizing the control part of the network. Due to the rapid growth of computer networks in terms of number of switches and the amount of transiting traffic, the distributed architecture with centralized view on the network has been designed for control plane, enhancing the scalability, availability, fault tolerance and reliability. In such a distributed architecture, the load balancing between controllers plays an important role towards the optimal use of networking resources. To address the aforementioned challenges, we propose a stable distributed solution for load balancing between controllers in software defined networks. The proposed solution collects information on the amount of load of controllers and their corresponding switches. Based on this knowledge, the controller with the highest overload migrates the switch leading to the best enhancement in load balancing of the network to the least-loaded controller, if the network load is not balanced and the migration benefit is significant compared to its cost. The proposed solution inhibits simultaneous migrations triggered by distributed controllers to avoid cascade re-migrations and ensures the network stability. The results of the test-bed study of the proposed approach show that out solution outperforms other counterparts up to 15% in terms of average memory consumption, 50% in terms of controller traffic throughput and 70% in terms of processing time of the overloaded controllers.