This book reviews the concept of Software-Defined Networking (SDN) by studying the SDN architecture. It provides a detailed analysis of state-of-the-art distributed SDN controller platforms by assessing their advantages and drawbacks and classifying them in novel ways according to various criteria.
Additionally, a thorough examination of the major challenges of existing distributed SDN controllers is provided along with insights into emerging and future trends in that area. Decentralization challenges in large-scale networks are tackled using three novel approaches, applied to the SDN control plane presented in the book. The first approach addresses the SDN controller placement optimization problem in large-scale IoT-like networks by proposing novel scalability and reliability aware controller placement strategies. The second and third approaches tackle the knowledge sharing problem between the distributed controllers by suggesting adaptive multilevel consistency models following the concept of continuous Quorum-based consistency. These approaches have been validated using different SDN applications, developed from real-world SDN controllers.