Software-defined networking (SDN) is a novel network paradigm that enables flexible management for networks. However, with the increase in network capacity, a single controller of SDN has many limitations on both performance and scalability. Distributed multi-controller deployment is a promising method to satisfy fault tolerant and scalability. There are still open research issues related to controllers placement, and the optimal number of deployed controllers. In this paper, a dynamic optimization algorithm that is based on the Salp Swarm Optimization Algorithm (SSOA) is developed with the introduction of chaotic maps for enhancing the optimizer's performance. The algorithm dynamically evaluates the optimum number of controllers and the optimal connections between switches and controllers in large scale SDN networks. In order to evaluate the proposed algorithm, several experiments were conducted and implemented in various scenarios. Moreover, the algorithm was compared to the linear and meta-heuristic algorithms. Simulation results show that the proposed algorithm outperforms meta-heuristic algorithms and a game theory based algorithm in terms of execution time and reliability. © 2018 Karabuk University