A Survey of Controller Placement Problem in Software Defined Networks
---
paper_title: Fast failover for control traffic in Software-defined Networks

paper_content:

The Software-defined Network (SDN) design decouples forwarding and control planes, and runs the controlling functions on servers that might be in different physical locations from the forwarding elements. Such separation introduces new challenges to the network resiliency, because disconnection between switches and the controller could disable the forwarding plane. In this work, we analyze resiliency of the connection between control and forwarding planes in SDN. We propose algorithms to improve this resiliency by maximizing the possibility of fast failover—which we achieve through resilience-aware controller placement and control-traffic routing in the network.
---
paper_title: Andromeda: performance, isolation, and velocity at scale in cloud network virtualization

paper_content:

This paper presents our design and experience with Andromeda, Google Cloud Platform's network virtualization stack. Our production deployment poses several challenging requirements, including performance isolation among customer virtual networks, scalability, rapid provisioning of large numbers of virtual hosts, bandwidth and latency largely indistinguishable from the underlying hardware, and high feature velocity combined with high availability. ::: ::: Andromeda is designed around a flexible hierarchy of flow processing paths. Flows are mapped to a programming path dynamically based on feature and performance requirements. We introduce the Hoverboard programming model, which uses gateways for the long tail of low bandwidth flows, and enables the control plane to program network connectivity for tens of thousands of VMs in seconds. The on-host dataplane is based around a high-performance OS bypass software packet processing path. CPU-intensive per packet operations with higher latency targets are executed on coprocessor threads. This architecture allows Andromeda to decouple feature growth from fast path performance, as many features can be implemented solely on the coprocessor path. We demonstrate that the Andromeda datapath achieves performance that is competitive with hardware while maintaining the flexibility and velocity of a software-based architecture.
---
paper_title: Achieving high utilization with software-driven WAN

paper_content:

We present SWAN, a system that boosts the utilization of inter-datacenter networks by centrally controlling when and how much traffic each service sends and frequently re-configuring the network's data plane to match current traffic demand. But done simplistically, these re-configurations can also cause severe, transient congestion because different switches may apply updates at different times. We develop a novel technique that leverages a small amount of scratch capacity on links to apply updates in a provably congestion-free manner, without making any assumptions about the order and timing of updates at individual switches. Further, to scale to large networks in the face of limited forwarding table capacity, SWAN greedily selects a small set of entries that can best satisfy current demand. It updates this set without disrupting traffic by leveraging a small amount of scratch capacity in forwarding tables. Experiments using a testbed prototype and data-driven simulations of two production networks show that SWAN carries 60% more traffic than the current practice.
---
paper_title: B4: experience with a globally-deployed software defined wan

paper_content:

We present the design, implementation, and evaluation of B4, a private WAN connecting Google's data centers across the planet. B4 has a number of unique characteristics: i) massive bandwidth requirements deployed to a modest number of sites, ii) elastic traffic demand that seeks to maximize average bandwidth, and iii) full control over the edge servers and network, which enables rate limiting and demand measurement at the edge. These characteristics led to a Software Defined Networking architecture using OpenFlow to control relatively simple switches built from merchant silicon. B4's centralized traffic engineering service drives links to near 100% utilization, while splitting application flows among multiple paths to balance capacity against application priority/demands. We describe experience with three years of B4 production deployment, lessons learned, and areas for future work.
---
paper_title: The controller placement problem

paper_content:

Network architectures such as Software-Defined Networks (SDNs) move the control logic off packet processing devices and onto external controllers. These network architectures with decoupled control planes open many unanswered questions regarding reliability, scalability, and performance when compared to more traditional purely distributed systems. This paper opens the investigation by focusing on two specific questions: given a topology, how many controllers are needed, and where should they go? To answer these questions, we examine fundamental limits to control plane propagation latency on an upcoming Internet2 production deployment, then expand our scope to over 100 publicly available WAN topologies. As expected, the answers depend on the topology. More surprisingly, one controller location is often sufficient to meet existing reaction-time requirements (though certainly not fault tolerance requirements).
---
paper_title: Software-Defined Networking (SDN) and Distributed Denial of Service (DDoS) Attacks in Cloud Computing Environments: A Survey, Some Research Issues, and Challenges

paper_content:

Distributed denial of service (DDoS) attacks in cloud computing environments are growing due to the essential characteristics of cloud computing. With recent advances in software-defined networking (SDN), SDN-based cloud brings us new chances to defeat DDoS attacks in cloud computing environments. Nevertheless, there is a contradictory relationship between SDN and DDoS attacks. On one hand, the capabilities of SDN, including software-based traffic analysis, centralized control, global view of the network, dynamic updating of forwarding rules, make it easier to detect and react to DDoS attacks. On the other hand, the security of SDN itself remains to be addressed, and potential DDoS vulnerabilities exist across SDN platforms. In this paper, we discuss the new trends and characteristics of DDoS attacks in cloud computing, and provide a comprehensive survey of defense mechanisms against DDoS attacks using SDN. In addition, we review the studies about launching DDoS attacks on SDN, as well as the methods against DDoS attacks in SDN. To the best of our knowledge, the contradictory relationship between SDN and DDoS attacks has not been well addressed in previous works. This work can help to understand how to make full use of SDN's advantages to defeat DDoS attacks in cloud computing environments and how to prevent SDN itself from becoming a victim of DDoS attacks, which are important for the smooth evolution of SDN-based cloud without the distraction of DDoS attacks.
---
paper_title: Security in Software Defined Networks: A Survey

paper_content:

Software defined networking (SDN) decouples the network control and data planes. The network intelligence and state are logically centralized and the underlying network infrastructure is abstracted from applications. SDN enhances network security by means of global visibility of the network state where a conflict can be easily resolved from the logically centralized control plane. Hence, the SDN architecture empowers networks to actively monitor traffic and diagnose threats to facilitates network forensics, security policy alteration, and security service insertion. The separation of the control and data planes, however, opens security challenges, such as man-in-the middle attacks, denial of service (DoS) attacks, and saturation attacks. In this paper, we analyze security threats to application, control, and data planes of SDN. The security platforms that secure each of the planes are described followed by various security approaches for network-wide security in SDN. SDN security is analyzed according to security dimensions of the ITU-T recommendation, as well as, by the costs of security solutions. In a nutshell, this paper highlights the present and future security challenges in SDN and future directions for secure SDN.
---
paper_title: A Survey on the Contributions of Software-Defined Networking to Traffic Engineering

paper_content:

Since the appearance of OpenFlow back in 2008, software-defined networking (SDN) has gained momentum. Although there are some discrepancies between the standards developing organizations working with SDN about what SDN is and how it is defined, they all outline traffic engineering (TE) as a key application. One of the most common objectives of TE is the congestion minimization, where techniques such as traffic splitting among multiple paths or advanced reservation systems are used. In such a scenario, this manuscript surveys the role of a comprehensive list of SDN protocols in TE solutions, in order to assess how these protocols can benefit TE. The SDN protocols have been categorized using the SDN architecture proposed by the open networking foundation, which differentiates among data-controller plane interfaces, application-controller plane interfaces, and management interfaces, in order to state how the interface type in which they operate influences TE. In addition, the impact of the SDN protocols on TE has been evaluated by comparing them with the path computation element (PCE)-based architecture. The PCE-based architecture has been selected to measure the impact of SDN on TE because it is the most novel TE architecture until the date, and because it already defines a set of metrics to measure the performance of TE solutions. We conclude that using the three types of interfaces simultaneously will result in more powerful and enhanced TE solutions, since they benefit TE in complementary ways.
---
paper_title: A survey on resource allocation in software defined networks (SDN)

paper_content:

With emerging use of real time communication (i.e., high band width videos, video calls etc.) and IoT, this become challenge to manage network and handle traffic. SDN is a technology which provides scalability and flexibility to network by decoupling of control plane and data plane. It is also difficult to allocate resources depending upon types of tasks and user requirements. SDN central controller provides global view of network which makes resource allocation more reliable. In this paper, survey of recently proposed techniques for research allocation in SDN will be presented.
---
paper_title: Sdn Security: A Survey

paper_content:

The pull of Software-Defined Networking (SDN) is magnetic. There are few in the networking community who have escaped its impact. As the benefits of network visibility and network device programmability are discussed, the question could be asked as to who exactly will benefit? Will it be the network operator or will it, in fact, be the network intruder? As SDN devices and systems hit the market, security in SDN must be raised on the agenda. This paper presents a comprehensive survey of the research relating to security in software-defined networking that has been carried out to date. Both the security enhancements to be derived from using the SDN framework and the security challenges introduced by the framework are discussed. By categorizing the existing work, a set of conclusions and proposals for future research directions are presented.
---
paper_title: A Survey on Large-Scale Software Defined Networking (SDN) Testbeds: Approaches and Challenges

paper_content:

Recently, several large-scale software defined networking (SDN) testbeds have been designed and developed. These SDN testbeds have spurred numerous network researchers to run their prototypes and experiments, as well as to set up novel architectures for the future Internet. Based on these efforts, SDN testbeds are actively contributing to future network research, bringing forth the attention of both academia and industry. In addition, researchers envisage these large-scale SDN testbeds to be the future Internet. In this paper, we present a comprehensive survey and research challenges for large-scale SDN testbeds. We first introduce the related work and background knowledge. Then, an overview of SDN testbeds is presented. In addition, five typical implementations of large-scale SDN testbeds around the world are described in detail, including design objectives, key technologies, deployment, and experiments. Moreover, an in-depth comparison of SDN testbeds is given. Finally, challenges and future works of SDN testbeds are discussed.
---
paper_title: A Survey on SDN Programming Languages: Toward a Taxonomy

paper_content:

Network devices have always been considered as configurable black boxes until the emergence of software-defined networking (SDN). SDN enables the networks to be programmed according to the user requirements; furthermore, it allows the network to be easily modified to suit transient demands. However, how do we program the network? SDN-compliant switches offer a low-level interface that makes programming error-prone. The controllers provide application programming interfaces, but still low-level, limited, and inflexible. High-level languages have the potential to be a better alternative to program the network. There exist several SDN programming languages implementing different sets of functionalities, and focusing on solving various issues. In face of all this diversity, no published paper outlines a pragmatic view allowing to compare the SDN languages. This paper presents a systematic survey of up-to-date OpenFlow-based SDN programming languages. Our approach relies on a taxonomy comprising all prominent features found in those languages. A detailed review of the existing works is carried out investigating the foundational parts of the languages with their contributions. Examples are discussed to illustrate the fundamental abstractions. Last, all gathered information is summarized, discussing the main ongoing research efforts and challenges. Future abstractions and features to be incorporated into the next generations of SDN programming languages are also considered.
---
paper_title: Software Defined Networking Architecture, Security and Energy Efficiency: A Survey

paper_content:

Software-defined networking (SDN) is an emerging paradigm, which breaks the vertical integration in traditional networks to provide the flexibility to program the network through (logical) centralized network control. SDN has the capability to adapt its network parameters on the fly based on its operating environment. The decoupled structure of SDN serves as a solution for managing the network with more flexibility and ease. In SDN, the centralized cost effective architecture provides network visibility which helps to achieve efficient resource utilization and high performance. Due to the increasingly pervasive existence of smart programmable devices in the network, SDN provides security, energy efficiency, and network virtualization for enhancing the overall network performance. We present various security threats that are resolved by SDN and new threats that arise as a result of SDN implementation. The recent security attacks and countermeasures in SDN are also summarized in the form of tables. We also provide a survey on the different strategies that are implemented to achieve energy efficiency and network security through SDN implementation. In an effort to anticipate the future evolution of this new paradigm, we discuss the main ongoing research efforts, challenges, and research trends in this area. With this paper, readers can have a more thorough understanding of SDN architecture, different security attacks and countermeasures, and energy efficiency.
---
paper_title: Wireless Network Virtualization: A Survey, Some Research Issues and Challenges

paper_content:

Since wireless network virtualization enables abstraction and sharing of infrastructure and radio spectrum resources, the overall expenses of wireless network deployment and operation can be reduced significantly. Moreover, wireless network virtualization can provide easier migration to newer products or technologies by isolating part of the network. Despite the potential vision of wireless network virtualization, several significant research challenges remain to be addressed before widespread deployment of wireless network virtualization, including isolation, control signaling, resource discovery and allocation, mobility management, network management and operation, and security as well as non-technical issues such as governance regulations, etc. In this paper, we provide a brief survey on some of the works that have already been done to achieve wireless network virtualization, and discuss some research issues and challenges. We identify several important aspects of wireless network virtualization: overview, motivations, framework, performance metrics, enabling technologies, and challenges. Finally, we explore some broader perspectives in realizing wireless network virtualization.
---
paper_title: Distributed SDN Control: Survey, Taxonomy, and Challenges

paper_content:

As opposed to the decentralized control logic underpinning the devising of the Internet as a complex bundle of box-centric protocols and vertically integrated solutions, the software-defined networking (SDN) paradigm advocates the separation of the control logic from hardware and its centralization in software-based controllers. These key tenets offer new opportunities to introduce innovative applications and incorporate automatic and adaptive control aspects, thereby, easing network management and guaranteeing the user’s quality of experience. Despite the excitement, SDN adoption raises many challenges including the scalability and reliability issues of centralized designs that can be addressed with the physical decentralization of the control plane. However, such physically distributed, but logically centralized systems bring an additional set of challenges. This paper presents a survey on SDN with a special focus on the distributed SDN control. Besides reviewing the SDN concept and studying the SDN architecture as compared to the classical one, the main contribution of this survey is a detailed analysis of state-of-the-art distributed SDN controller platforms which assesses their advantages and drawbacks and classifies them in novel ways (physical and logical classifications) in order to provide useful guidelines for SDN research and deployment initiatives. A thorough discussion on the major challenges of distributed SDN control is also provided along with some insights into emerging and future trends in that area.
---
paper_title: Software Defined Optical Networks (SDONs): A Comprehensive Survey

paper_content:

The emerging software defined networking (SDN) paradigm separates the data plane from the control plane and centralizes network control in an SDN controller. Applications interact with controllers to implement network services, such as network transport with quality of service. SDN facilitates the virtualization of network functions so that multiple virtual networks can operate over a given installed physical network infrastructure. Due to the specific characteristics of optical (photonic) communication components and the high optical transmission capacities, SDN-based optical networking poses particular challenges, but holds also great potential. In this article, we comprehensively survey studies that examine the SDN paradigm in optical networks; in brief, we survey the area of software defined optical networks (SDONs). We mainly organize the SDON studies into studies focused on the infrastructure layer, the control layer, and the application layer. Moreover, we cover SDON studies focused on network virtualization, as well as SDON studies focused on the orchestration of multilayer and multidomain networking. Based on the survey, we identify open challenges for SDONs and outline future directions.
---
paper_title: A Survey on Software-Defined Networking

paper_content:

Emerging mega-trends (e.g., mobile, social, cloud, and big data) in information and communication technologies (ICT) are commanding new challenges to future Internet, for which ubiquitous accessibility, high bandwidth, and dynamic management are crucial. However, traditional approaches based on manual configuration of proprietary devices are cumbersome and error-prone, and they cannot fully utilize the capability of physical network infrastructure. Recently, software-defined networking (SDN) has been touted as one of the most promising solutions for future Internet. SDN is characterized by its two distinguished features, including decoupling the control plane from the data plane and providing programmability for network application development. As a result, SDN is positioned to provide more efficient configuration, better performance, and higher flexibility to accommodate innovative network designs. This paper surveys latest developments in this active research area of SDN. We first present a generally accepted definition for SDN with the aforementioned two characteristic features and potential benefits of SDN. We then dwell on its three-layer architecture, including an infrastructure layer, a control layer, and an application layer, and substantiate each layer with existing research efforts and its related research areas. We follow that with an overview of the de facto SDN implementation (i.e., OpenFlow). Finally, we conclude this survey paper with some suggested open research challenges.
---
paper_title: A Survey on Load Balancing Methods in Software Defined Network

paper_content:

Software-Defined Networking (SDN) is a novel network architecture which has received much attention in recent years. SDN is an architecture designed for improving and simplifying network management with high flexibility by separating control plane and data plane. Thus, programmability of the network is enhanced which in turn leads to more innovation opportunities. The separating of concerns introduced between the deﬁnition of network policies, their implementation in switching hardware, and forwarding of trafﬁc are the main keys to the desired ﬂexibility: by breaking the network control problem into tractable pieces, SDN makes it easier to create and introduce new abstractions in networking, simplifying of the network management and facilitating network evolution. Since Load Balancing service is essential to service for distributing workload across server farms or data centers, this paper has summarized and categorized Load Balancing methods in SDN. Many load balancing strategies based on SDN have been suggested to improve the performance of the networks. So, despite expressing of proposed methods, this paper also analyzes their advantages and disadvantage and will promote the SDN development and provide a guidance and comprehensive study for other researchers in this field who want to propose a new method of Load Balancing.
---
paper_title: A Survey and a Layered Taxonomy of Software-Defined Networking

paper_content:

Software-defined networking (SDN) has recently gained unprecedented attention from industry and research communities, and it seems unlikely that this will be attenuated in the near future. The ideas brought by SDN, although often described as a “revolutionary paradigm shift” in networking, are not completely new since they have their foundations in programmable networks and control-data plane separation projects. SDN promises simplified network management by enabling network automation, fostering innovation through programmability, and decreasing CAPEX and OPEX by reducing costs and power consumption. In this paper, we aim at analyzing and categorizing a number of relevant research works toward realizing SDN promises. We first provide an overview on SDN roots and then describe the architecture underlying SDN and its main components. Thereafter, we present existing SDN-related taxonomies and propose a taxonomy that classifies the reviewed research works and brings relevant research directions into focus. We dedicate the second part of this paper to studying and comparing the current SDN-related research initiatives and describe the main issues that may arise due to the adoption of SDN. Furthermore, we review several domains where the use of SDN shows promising results. We also summarize some foreseeable future research challenges.
---
paper_title: Software-Defined Networking: A survey

paper_content:

Software-Defined Networking (SDN) is considered promising to simplify network management and enable research innovations based on the decomposition of the control and data planes. In this paper, we review SDN-related technologies. In particular, we try to cover three main parts of SDN: applications, the control plane, and the data plane anticipating that our efforts will help researchers set appropriate and meaningful directions for future SDN research.
---
paper_title: A Survey on Software-Defined Network and OpenFlow: From Concept to Implementation

paper_content:

Software-defined network (SDN) has become one of the most important architectures for the management of largescale complex networks, which may require repolicing or reconfigurations from time to time. SDN achieves easy repolicing by decoupling the control plane from data plane. Thus, the network routers/switches just simply forward packets by following the flow table rules set by the control plane. Currently, OpenFlow is the most popular SDN protocol/standard and has a set of design specifications. Although SDN/OpenFlow is a relatively new area, it has attracted much attention from both academia and industry. In this paper, we will conduct a comprehensive survey of the important topics in SDN/OpenFlow implementation, including the basic concept, applications, language abstraction, controller, virtualization, quality of service, security, and its integration with wireless and optical networks. We will compare the pros and cons of different schemes and discuss the future research trends in this exciting area. This survey can help both industry and academia R&D people to understand the latest progress of SDN/OpenFlow designs.
---
paper_title: A Survey of Software-Defined Networking: Past, Present, and Future of Programmable Networks

paper_content:

The idea of programmable networks has recently re-gained considerable momentum due to the emergence of the Software-Defined Networking (SDN) paradigm. SDN, often referred to as a "radical new idea in networking", promises to dramatically simplify network management and enable innovation through network programmability. This paper surveys the state-of-the-art in programmable networks with an emphasis on SDN. We provide a historic perspective of programmable networks from early ideas to recent developments. Then we present the SDN architecture and the OpenFlow standard in particular, discuss current alternatives for implementation and testing of SDN-based protocols and services, examine current and future SDN applications, and explore promising research directions based on the SDN paradigm.
---
paper_title: The Controller Placement Problem in Software Defined Networking: A Survey

paper_content:

Recently, a variety of solutions have been proposed to tackle the controller placement problem in SDN. The objectives include minimizing the latency between controllers and their associated switches, enhancing reliability and resilience of the network, and minimizing deployment cost and energy consumption. In this article, we first survey the state-of-the-art solutions and draw a taxonomy based on their objectives, and then propose a new approach to minimize the packet propagation latency between controllers and switches. In order to encourage future research, we also identify the ongoing research challenges and open issues relevant to this problem.
---
paper_title: Wireless Software Defined Networking: A Survey and Taxonomy

paper_content:

One of the primary architectural principles behind the Internet is the use of distributed protocols, which facilitates fault tolerance and distributed management. Unfortunately, having nodes (i.e., switches and routers) perform control decisions independently makes it difficult to control the network or even understand or debug its overall emergent behavior. As a result, networks are often inefficient, unstable, and fragile. This Internet architecture also poses a significant, often insurmountable, challenge to the deployment of new protocols and evolution of existing ones. Software defined networking (SDN) is a recent networking architecture with promising properties relative to these weaknesses in traditional networks. SDN decouples the control plane, which makes the network forwarding decisions, from the data plane, which mainly forwards the data. This decoupling enables more centralized control where coordinated decisions directly guide the network to desired operating conditions. Moreover, decoupling the control enables graceful evolution of protocols, and the deployment of new protocols without having to replace the data plane switches. In this survey, we review recent work that leverages SDN in wireless network settings, where they are not currently widely adopted or well understood. More specifically, we evaluate the use of SDN in four classes of popular wireless networks: cellular, sensor, mesh, and home networks. We classify the different advantages that can be obtained by using SDN across this range of networks, and hope that this classification identifies unexplored opportunities for using SDN to improve the operation and performance of wireless networks.
---
paper_title: Software-Defined Networking: A survey

paper_content:

Software-Defined Networking (SDN) is considered promising to simplify network management and enable research innovations based on the decomposition of the control and data planes. In this paper, we review SDN-related technologies. In particular, we try to cover three main parts of SDN: applications, the control plane, and the data plane anticipating that our efforts will help researchers set appropriate and meaningful directions for future SDN research.
---
paper_title: Enterprise OSGi in Action: With examples using Apache Aries

paper_content:

SummaryEnterprise OSGI in Action is a hands-on guide for developers using OSGi to build the next generation of enterprise Java applications. By presenting relevant examples and case studies, this book guides the reader through the maze of new standards and projects.About This BookEnterprise OSGi is a set of standards for building modular Java applications which integrate seamlessly with existing Java EE technologies. It extends the OSGi component framework to distributed systems.Enterprise OSGi in Action is a hands-on guide for developers using OSGi to build enterprise Java applications. Many examples and case studies show you how to build, test, and deploy modular web applications. The book explains how to take advantage of dynamism, distribution, and automatic dependency provisioning, while still integrating with existing Java EE applications.The book is written for Java EE developers. No prior experience with OSGi is required.What's InsideBuild modular applications using servlets, JSPs, WARs, and JPA Better component reuse and robustness Expert tips for Apache AriesPurchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.About the AuthorsHolly Cummins and Tim Ward are lead engineers who regularly speak at developerWorks, Devoxx, JavaZone, and EclipseCon. Tim has written standards in both the OSGi Core and Enterprise Specifications and both authors are active Apache Aries committers.Table of ContentsPART 1 PROGRAMMING BEYOND HELLO WORLD OSGi and the enterprisewhy now? Developing a simple OSGi-based web application Persistence pays off Packaging your enterprise OSGi applications PART 2 BUILDING BETTER ENTERPRISE OSGI APPLICATIONS Best practices for enterprise applications Building dynamic applications with OSGi services Provisioning and resolution Tools for building and testing IDE development tools PART 3 INTEGRATING ENTERPRISE OSGI WITH EVERYTHING ELSE Hooking up remote systems with distributed OSGi Migration and integration Coping with the non-OSGi world Choosing a stack
---
paper_title: State of the Art and Recent Research Advances in Software Defined Networking

paper_content:

Emerging network services and subsequent growth in the networking infrastructure have gained tremendous momentum in recent years. Application performance requiring rapid real-time network provisioning, optimized traffic management, and virtualization of shared resources has induced the conceptualization and adoption of new networking models. Software defined networking (SDN), one of the predominant and relatively new networking paradigms, seeks to simplify network management by decoupling network control logic from the underlying hardware and introduces real-time network programmability enabling innovation. The present work reviews the state of the art in software defined networking providing a historical perspective on complementary technologies in network programmability and the inherent shortcomings which paved the way for SDN. The SDN architecture is discussed along with popular protocols, platforms, and existing simulation and debugging solutions. Furthermore, a detailed analysis is presented around recent SDN development and deployment avenues ranging from mobile communications and data centers to campus networks and residential environments. The review concludes by highlighting implementation challenges and subsequent research directions being pursued in academia and industry to address issues related to application performance, control plane scalability and design, security, and interdomain connectivity in the context of SDN.
---
paper_title: REST API Design Patterns for SDN Northbound API

paper_content:

REST architectural style gains increasing popularity in the networking protocol design, and it has become a prevalent choice for northbound API of Software-Defined Networking (SDN). This paper addresses many critical issues in RESTful networking protocol design, and presents a framework on how a networking protocol can be designed in a truly RESTful manner, making it towards a service oriented data networking. In particular, we introduce the HTTP content negotiation mechanism which allows clients to select different representation formats from the same resource URI. Most importantly, we present a hypertext-driven approach, so that hypertext links are defined between REST resources for the networking protocol to guide clients to identify the right resources rather than relying on fixed resource URIs. The advantages of our approach are verified in two folds. First, we show how to apply our approach to fix REST design problems in some existing northbound networking APIs, and then we show how to design a RESTful northbound API of SDN in the context of OpenStack. We implemented our proposed approach in the northbound REST API of SOX, a generalized SDN controller, and the benefits of the proposed approach are experimentally verified.
---
paper_title: OpenFlow: enabling innovation in campus networks

paper_content:

This whitepaper proposes OpenFlow: a way for researchers to run experimental protocols in the networks they use every day. OpenFlow is based on an Ethernet switch, with an internal flow-table, and a standardized interface to add and remove flow entries. Our goal is to encourage networking vendors to add OpenFlow to their switch products for deployment in college campus backbones and wiring closets. We believe that OpenFlow is a pragmatic compromise: on one hand, it allows researchers to run experiments on heterogeneous switches in a uniform way at line-rate and with high port-density; while on the other hand, vendors do not need to expose the internal workings of their switches. In addition to allowing researchers to evaluate their ideas in real-world traffic settings, OpenFlow could serve as a useful campus component in proposed large-scale testbeds like GENI. Two buildings at Stanford University will soon run OpenFlow networks, using commercial Ethernet switches and routers. We will work to encourage deployment at other schools; and We encourage you to consider deploying OpenFlow in your university network too
---
paper_title: Control traffic balancing in software defined networks

paper_content:

To promise on-line and adaptive traffic engineering in software defined networks (SDNs), the control messages, e.g., the first packet of every new flow and network traffic statistics, should be forwarded from software defined switches to the controller(s) in a fast and robust manner. As many signaling events and control plane operations are required in SDNs, they could easily generate a significant amount of control traffic that must be addressed together with the data traffic. However, the usage of in-band control channel imposes a great challenge into timely and reliable transmissions of control traffic, while out-band control is usually cost-prohibitive. To counter this, in this paper, the control traffic balancing problem is first formulated as a nonlinear optimization framework with an objective to find the optimal control traffic forwarding paths for each switch in such a way the average control traffic delay in the whole network is minimized. This problem is extremely critical in SDNs because the timely delivery of control traffic initiated by Openflow switches directly impacts the effectiveness of the routing strategies. Specifically, the fundamental mathematical structures of the formulated nonlinear problem and solution set are provided and accordingly, an efficient algorithm, called polynomial-time approximation algorithm (PTAA), is proposed to yield the fast convergence to a near optimal solution by employing the alternating direction method of multipliers (ADMM). Furthermore, the optimal controller placement problem in in-band mode is examined, which aims to find the optimal switch location where the controller can be collocated by minimizing the control message delay. While it is not widely researched except quantitative or heuristic results, a simple and efficient algorithm is proposed to guarantee the optimum placement with regards of traffic statistics. Simulation results confirm that the proposed PTAA achieves considerable delay reduction, greatly facilitating controller's traffic engineering in large-scale SDNs.
---
paper_title: The beacon openflow controller

paper_content:

Beacon is a Java-based open source OpenFlow controller created in 2010. It has been widely used for teaching, research, and as the basis of Floodlight. This paper describes the architectural decisions and implementation that achieves three of Beacon's goals: to improve developer productivity, to provide the runtime ability to start and stop existing and new applications, and to be high performance.
---
paper_title: Hedera: Dynamic Flow Scheduling for Data Center Networks

paper_content:

Today's data centers offer tremendous aggregate bandwidth to clusters of tens of thousands of machines. However, because of limited port densities in even the highest-end switches, data center topologies typically consist of multi-rooted trees with many equal-cost paths between any given pair of hosts. Existing IP multipathing protocols usually rely on per-flow static hashing and can cause substantial bandwidth losses due to long-term collisions. ::: ::: In this paper, we present Hedera, a scalable, dynamic flow scheduling system that adaptively schedules a multi-stage switching fabric to efficiently utilize aggregate network resources. We describe our implementation using commodity switches and unmodified hosts, and show that for a simulated 8,192 host data center, Hedera delivers bisection bandwidth that is 96% of optimal and up to 113% better than static load-balancing methods.
---
paper_title: Applying NOX to the Datacenter

paper_content:

Internet datacenters offer unprecedented computing power for a new generation of data-intensive computational tasks. There is a rapidly growing literature on the operating and distributed systems issues raised by these datacenters, but only recently have researchers turned their attention to the datacenter’s unique set of networking challenges. In contrast to enterprise networks, which usually grow organically over time, datacenter networks are carefully and coherently architected, so they provide an isolated setting in which new networking designs can be explored and deployed. The combination of interesting intellectual challenges and lowered deployment barriers makes datacenters a rich arena for network research and innovation, as evinced by the recent flurry of research papers on datacenter networks. Of particular interest are the network designs proposed in [1, 5, 6, 9], which vary along many design dimensions but are all specifically tailored to the datacenter environment. In the more general networking literature, in 2004 the 4D project [4] initiated a renaissance in the network management literature by advocating a logically centralized view of the network. The goal of this approach was to provide a general management plane, not specialized to a particular context (such as the datacenter). A recent development in this vein is the NOX network operating system [7]. NOX gives logically centralized access to high-level network abstractions such as users, topology, and services, and exerts control over the network by installing flow entries in switch forwarding tables. By providing programmatic access (through Python or C++) to network observation and control primitives, NOX serves as a flexible and scalable platform for building advanced network management functionality. Enterprise network management systems built on NOX have been in production use for over a year, and an early version of NOX is freely available under the GPL license at www.noxrepo.org. This philosophical question behind this paper is whether the general-purpose approach in networking, which has served the Internet and enterprise so well, can be extended to specialized environments like the datacenter, or if special-case solutions will prevail. The more practical instantiation of this question is: How well does a general-purpose management system, like NOX, cope with the highly specific and stringent requirements of the datacenter? As we explain in this paper, we find that not only can NOX provide reasonable management of datacenter environments, it also offers operators a choice of several points in the datacenter design spectrum, rather than locking them into one specific solution. Due to our familiarity with it, we use NOX throughout the paper as a concrete instance of a general network platform. However, the goal is to explore more broadly whether a general approach can be used in place of point solutions. Hence, this discussion should apply equally well to similar systems such as 4D [4], or Maestro [2]. We also don’t make the claim that these systems are better than any of these point solutions. Our only goal is to demonstrate that there is still hope for the “generalpurpose” philosophy that has served networking so well. In the rest of the paper, we first present background material on datacenter networks and NOX (§2), and then demonstrate NOX’s flexibility by describing implementations of existing architectures that can scale to a hundred thousand servers and millions of VMs (§3). We subsequently discuss how NOX provides basic datacenter functionality (§4) and several additional capabilities (§5). We end with a general discussion (§6).
---
paper_title: Bandwidth-Aware Scheduling With SDN in Hadoop: A New Trend for Big Data

paper_content:

Software-defined networking (SDN) is a revolutionary network architecture that separates out network control functions from the underlying equipment and is an increasing trend to help enterprises build more manageable data centers where big data processing emerges as an important part of applications. To concurrently process large-scale data, MapReduce with an open-source implementation named Hadoop is proposed. In practical Hadoop systems, one kind of issue that vitally impacts the overall performance is known as the NP-complete minimum make span 1 1 Make span means the time between job’s start time and job’s finish time. problem. One main solution is to assign tasks on data local nodes to avoid link occupation since network bandwidth is a scarce resource. Many methodologies for enhancing data locality are proposed such as the Hadoop default scheduler (HDS) and state-of-the-art scheduler balance-reduce scheduler (BAR). However, all of them either ignore allocating tasks in a global view or disregard available bandwidth as the basis for scheduling. In this paper, we propose a heuristic bandwidth-aware task scheduler bandwidth-aware scheduling with SDN in Hadoop (BASS) to combine Hadoop with SDN. It is not only able to guarantee data locality in a global view but also can efficiently assign tasks in an optimized way. Both examples and experiments demonstrate that BASS has the best performance in terms of job completion time. To our knowledge, BASS is the first to exploit talent of SDN for job scheduling of big data processing and we believe that it points out a new trend for large-scale data processing.
---
paper_title: The controller placement problem

paper_content:

Network architectures such as Software-Defined Networks (SDNs) move the control logic off packet processing devices and onto external controllers. These network architectures with decoupled control planes open many unanswered questions regarding reliability, scalability, and performance when compared to more traditional purely distributed systems. This paper opens the investigation by focusing on two specific questions: given a topology, how many controllers are needed, and where should they go? To answer these questions, we examine fundamental limits to control plane propagation latency on an upcoming Internet2 production deployment, then expand our scope to over 100 publicly available WAN topologies. As expected, the answers depend on the topology. More surprisingly, one controller location is often sufficient to meet existing reaction-time requirements (though certainly not fault tolerance requirements).
---
paper_title: The Hadoop Distributed File System

paper_content:

The Hadoop Distributed File System (HDFS) is designed to store very large data sets reliably, and to stream those data sets at high bandwidth to user applications. In a large cluster, thousands of servers both host directly attached storage and execute user application tasks. By distributing storage and computation across many servers, the resource can grow with demand while remaining economical at every size. We describe the architecture of HDFS and report on experience using HDFS to manage 25 petabytes of enterprise data at Yahoo!.
---
paper_title: Maestro: A System for Scalable OpenFlow Control

paper_content:

The fundamental feature of an OpenFlow network is that the controller is responsible for the initial establishment of every flow by contacting related switches. Thus the performance of the controller could be a bottleneck. This paper shows how this fundamental problem is addressed by parallelism. The state of the art OpenFlow controller, called NOX, achieves a simple programming model for control function development by having a single-threaded event-loop. Yet NOX has not considered exploiting parallelism. We propose Maestro which keeps the simple programming model for programmers, and exploits parallelism in every corner together with additional throughput optimization techniques. We experimentally show that the throughput of Maestro can achieve near linear scalability on an eight core server machine. Keywords-OpenFlow, network management, multithreading, performance optimization
---
paper_title: NOX: towards an operating system for networks

paper_content:

As anyone who has operated a large network can attest, enterprise networks are difficult to manage. That they have remained so despite significant commercial and academic efforts suggests the need for a different network management paradigm. Here we turn to operating systems as an instructive example in taming management complexity. In the early days of computing, programs were written in machine languages that had no common abstractions for the underlying physical resources. This made programs hard to write, port, reason about, and debug. Modern operating systems facilitate program development by providing controlled access to high-level abstractions for resources (e.g., memory, storage, communication) and information (e.g., files, directories). These abstractions enable programs to carry out complicated tasks safely and efficiently on a wide variety of computing hardware. In contrast, networks are managed through low-level configuration of individual components. Moreover, these configurations often depend on the underlying network; for example, blocking a user’s access with an ACL entry requires knowing the user’s current IP address. More complicated tasks require more extensive network knowledge; forcing guest users’ port 80 traffic to traverse an HTTP proxy requires knowing the current network topology and the location of each guest. In this way, an enterprise network resembles a computer without an operating system, with network-dependent component configuration playing the role of hardware-dependent machine-language programming. What we clearly need is an “operating system” for networks, one that provides a uniform and centralized programmatic interface to the entire network. Analogous to the read and write access to various resources provided by computer operating systems, a network operating system provides the ability to observe and control a network. A network operating system does not manage the network itself; it merely provides a programmatic interface. Applications implemented on top of the network operating system perform the actual management tasks. The programmatic interface should be general enough to support a broad spectrum of network management applications. Such a network operating system represents two major conceptual departures from the status quo. First, the network operating system presents programs with a centralized programming model; programs are written as if the entire network were present on a single machine (i.e., one would use Dijkstra to compute shortest paths, not Bellman-Ford). This requires (as in [3, 8, 14] and elsewhere) centralizing network state. Second, programs are written in terms of high-level abstractions (e.g., user and host names), not low-level configuration parameters (e.g., IP and MAC addresses). This allows management directives to be enforced independent of the underlying network topology, but it requires that the network operating system carefully maintain the bindings (i.e., mappings) between these abstractions and the low-level configurations. Thus, a network operating system allows management applications to be written as centralized programs over highlevel names as opposed to the distributed algorithms over low-level addresses we are forced to use today. While clearly a desirable goal, achieving this transformation from distributed algorithms to centralized programming presents significant technical challenges, and the question we pose here is: Can one build a network operating system at significant scale?
---
paper_title: Scalable flow-based networking with DIFANE

paper_content:

Ideally, enterprise administrators could specify fine-grain policies that drive how the underlying switches forward, drop, and measure traffic. However, existing techniques for flow-based networking rely too heavily on centralized controller software that installs rules reactively, based on the first packet of each flow. In this paper, we propose DIFANE, a scalable and efficient solution that keeps all traffic in the data plane by selectively directing packets through intermediate switches that store the necessary rules. DIFANE relegates the controller to the simpler task of partitioning these rules over the switches. DIFANE can be readily implemented with commodity switch hardware, since all data-plane functions can be expressed in terms of wildcard rules that perform simple actions on matching packets. Experiments with our prototype on Click-based OpenFlow switches show that DIFANE scales to larger networks with richer policies.
---
paper_title: Flexible, Wide-Area Storage for Distributed Systems with WheelFS

paper_content:

WheelFS is a wide-area distributed storage system intended to help multi-site applications share data and gain fault tolerance. WheelFS takes the form of a distributed file system with a familiar POSIX interface. Its design allows applications to adjust the tradeoff between prompt visibility of updates from other sites and the ability for sites to operate independently despite failures and long delays. WheelFS allows these adjustments via semantic cues, which provide application control over consistency, failure handling, and file and replica placement. ::: ::: WheelFS is implemented as a user-level file system and is deployed on PlanetLab and Emulab. Three applications (a distributed Web cache, an email service and large file distribution) demonstrate that WheelFS's file system interface simplifies construction of distributed applications by allowing reuse of existing software. These applications would perform poorly with the strict semantics implied by a traditional file system interface, but by providing cues to WheelFS they are able to achieve good performance. Measurements show that applications built on WheelFS deliver comparable performance to services such as CoralCDN and BitTorrent that use specialized wide-area storage systems.
---
paper_title: The NoSQL Principles and Basic Application of Cassandra Model

paper_content:

This paper reveal the secret of NoSQL. The CAP theorem, the BASE theorem and the Eventual Consistency theorem construct the foundation stone of NoSQL Cassandra is one kind of NoSQL databases, It is used by Twitter, Facebook and some other famous corporations. Taking it for example, this online trading system is based on Cassandra database. I'll design and contrast the relational model and Cassandra-based model of this system, then construct the key space, the column family and do some other configuration. After these jobs done, I'll do some coding to implement this system.
---
paper_title: On reliable controller placements in Software-Defined Networks

paper_content:

In order to deploy fault-tolerant Software-Defined Networks (SDNs), a logically centralized controller must be physically distributed among different devices. In this paper, we focus on determining how many controllers need to be instantiated, where they must be deployed, and what network nodes are under control of each of them, in order to achieve high reliability in the southbound interface between controllers and nodes. For this, we define the fault tolerant controller placement problem and develop a heuristic algorithm that computes placements with (at least) the required reliability. We run such algorithm on a set of 124 publicly available network topologies. The results are thoroughly analyzed and provide insight on the feasibility of achieving fault tolerant SDNs by carefully determining the placement of controllers.
---
paper_title: Orion: A Hybrid Hierarchical Control Plane of Software-Defined Networking for Large-Scale Networks

paper_content:

The decoupled architecture and the fine-grained flow control feature of SDN limit the scalability of SDN network. In order to address this problem, some studies construct the flat control plane architecture, other studies build the hierarchical control plane architecture to improve the scalability of SDN. However, the two kinds of structure still have unresolved issues: the flat control plane structure can not solve the super-linear computational complexity growth of the control plane when SDN network scales to large size, the centralized abstracted hierarchical control plane structure brings path stretch problem. To address the two issues, we propose Orion, a hybrid hierarchical control plane for large-scale networks. Orion can effectively reduce the computational complexity growth of SDN control plane from super-linear to linear. Meanwhile, we design an abstracted hierarchical routing method to solve the path stretch problem. Further, Orion is implemented to verify the feasibility of the hybrid hierarchical approach. Finally, we verify the effectiveness of Orion both from the theoretical and experimental aspects.
---
paper_title: Kandoo: a framework for efficient and scalable offloading of control applications

paper_content:

Limiting the overhead of frequent events on the control plane is essential for realizing a scalable Software-Defined Network. One way of limiting this overhead is to process frequent events in the data plane. This requires modifying switches and comes at the cost of visibility in the control plane. Taking an alternative route, we propose Kandoo, a framework for preserving scalability without changing switches. Kandoo has two layers of controllers: (i) the bottom layer is a group of controllers with no interconnection, and no knowledge of the network-wide state, and (ii) the top layer is a logically centralized controller that maintains the network-wide state. Controllers at the bottom layer run only local control applications (i.e., applications that can function using the state of a single switch) near datapaths. These controllers handle most of the frequent events and effectively shield the top layer. Kandoo's design enables network operators to replicate local controllers on demand and relieve the load on the top layer, which is the only potential bottleneck in terms of scalability. Our evaluations show that a network controlled by Kandoo has an order of magnitude lower control channel consumption compared to normal OpenFlow networks.
---
paper_title: DISCO: Distributed SDN controllers in a multi-domain environment

paper_content:

Software-Defined Networking (SDN) is now envisioned for Wide Area Networks (WAN) and deployed constrained networks. Such networks require a resilient, scalable and easily extensible SDN control plane. In this paper, we propose DISCO, a DIstributed SDN COntrol plane able to cope with the distributed and heterogeneous nature of modern overlay networks and deployed networks. A DISCO controller manages its own network domain, communicates with other DISCO controllers to provide end-to-end network services and share aggregated network-wide information. This east-west communication is based on a lightweight and highly manageable control channel which can self-adapt to network conditions.
---
paper_title: Flexible, Wide-Area Storage for Distributed Systems with WheelFS

paper_content:

WheelFS is a wide-area distributed storage system intended to help multi-site applications share data and gain fault tolerance. WheelFS takes the form of a distributed file system with a familiar POSIX interface. Its design allows applications to adjust the tradeoff between prompt visibility of updates from other sites and the ability for sites to operate independently despite failures and long delays. WheelFS allows these adjustments via semantic cues, which provide application control over consistency, failure handling, and file and replica placement. ::: ::: WheelFS is implemented as a user-level file system and is deployed on PlanetLab and Emulab. Three applications (a distributed Web cache, an email service and large file distribution) demonstrate that WheelFS's file system interface simplifies construction of distributed applications by allowing reuse of existing software. These applications would perform poorly with the strict semantics implied by a traditional file system interface, but by providing cues to WheelFS they are able to achieve good performance. Measurements show that applications built on WheelFS deliver comparable performance to services such as CoralCDN and BitTorrent that use specialized wide-area storage systems.
---
paper_title: Performance evaluation of OpenDaylight SDN controller

paper_content:

Enourmous amount of data has resulted into large data centres. Virtual machines and virtual networks are an integral part of large data centres. As a result, software defined network controllers have emerged as viable solution to manage such networks. The performance analysis of network controllers is generally carried out through benchmarking. Although several benchmarking studies exist, recently launched OpenDaylight SDN Controller is not considered in any benchmarking study yet. In this paper, we present initial results of benchmarking of Open-Daylight SDN Controller with well known Floodlight controller. We present latency and throughput results of OpenDaylight SDN Controller and Floodlight under different scenarios. We find that OpenDaylight SDN Controller has low average responses as compared to Floodlight. We also note that the standard benchmarking tool - Cbench - has no support for real traffic patterns in a data centre, since data centre traffic is considerably complex. In addition to benchmarking of OpenDaylight SDN Controller, we propose modifications in Cbench to accommodate models of real traffic in data centres. We also discuss our initial implementation.
---
paper_title: ONOS: towards an open, distributed SDN OS

paper_content:

We present our experiences to date building ONOS (Open Network Operating System), an experimental distributed SDN control platform motivated by the performance, scalability, and availability requirements of large operator networks. We describe and evaluate two ONOS prototypes. The first version implemented core features: a distributed, but logically centralized, global network view; scale-out; and fault tolerance. The second version focused on improving performance. Based on experience with these prototypes, we identify additional steps that will be required for ONOS to support use cases such as core network traffic engineering and scheduling, and to become a usable open source, distributed network OS platform that the SDN community can build upon.
---
paper_title: Onix: A Distributed Control Platform for Large-scale Production Networks

paper_content:

Computer networks lack a general control paradigm, as traditional networks do not provide any network-wide management abstractions. As a result, each new function (such as routing) must provide its own state distribution, element discovery, and failure recovery mechanisms. We believe this lack of a common control platform has significantly hindered the development of flexible, reliable and feature-rich network control planes. ::: ::: To address this, we present Onix, a platform on top of which a network control plane can be implemented as a distributed system. Control planes written within Onix operate on a global view of the network, and use basic state distribution primitives provided by the platform. Thus Onix provides a general API for control plane implementations, while allowing them to make their own trade-offs among consistency, durability, and scalability.
---
paper_title: IRIS: The Openflow-based Recursive SDN controller

paper_content:

SDN is a novel and promising networking technology that enables a software-based control over reactive packet-switching devices which query forwarding decisions for every flow: by controlling the answers to the queries, it is possible to `program' the whole network according to a specific set of networking policies. That kind of programmability is backed by NOS (Network OS), which is usually called SDN controller. A Controller supports network-controlling applications to run on top of it by transparently dealing with the actual communication with the switching devices. However, as the controller is normally centralized, the scalability and availability issue is inevitable: a controller should provide reasonable performance to each of the switching device regardless of the network size, and guarantee the non-stop operation of NOS applications against system and software failures to prevent the whole network from halting on the control plane crashes. In this paper, we investigate the issues deeply, and introduce a comprehensive solution called IRIS (ETRI Recursive SDN controller platform).
---
paper_title: HyperFlow: A Distributed Control Plane for OpenFlow

paper_content:

OpenFlow assumes a logically centralized controller, which ideally can be physically distributed. However, current deployments rely on a single controller which has major drawbacks including lack of scalability. We present HyperFlow, a distributed event-based control plane for OpenFlow. HyperFlow is logically centralized but physically distributed: it provides scalability while keeping the benefits of network control centralization. By passively synchronizing network-wide views of OpenFlow controllers, HyperFlow localizes decision making to individual controllers, thus minimizing the control plane response time to data plane requests. HyperFlow is resilient to network partitioning and component failures. It also enables interconnecting independently managed OpenFlow networks, an essential feature missing in current OpenFlow deployments. We have implemented HyperFlow as an application for NOX. Our implementation requires minimal changes to NOX, and allows reuse of existing NOX applications with minor modifications. Our preliminary evaluation shows that, assuming sufficient control bandwidth, to bound the window of inconsistency among controllers by a factor of the delay between the farthest controllers, the network changes must occur at a rate lower than 1000 events per second across the network.
---
paper_title: ElastiCon: an elastic distributed sdn controller

paper_content:

Software Defined Networking (SDN) has become a popular paradigm for centralized control in many modern networking scenarios such as data centers and cloud. For large data centers hosting many hundreds of thousands of servers, there are few thousands of switches that need to be managed in a centralized fashion, which cannot be done using a single controller node. Previous works have proposed distributed controller architectures to address scalability issues. A key limitation of these works, however, is that the mapping between a switch and a controller is statically configured, which may result in uneven load distribution among the controllers as traffic conditions change dynamically. To address this problem, we propose ElastiCon, an elastic distributed controller architecture in which the controller pool is dynamically grown or shrunk according to traffic conditions. To address the load imbalance caused due to spatial and temporal variations in the traffic conditions, ElastiCon automatically balances the load across controllers thus ensuring good performance at all times irrespective of the traffic dynamics. We propose a novel switch migration protocol for enabling such load shifting, which conforms with the Openflow standard. We further design the algorithms for controller load balancing and elasticity. We also build a prototype of ElastiCon and evaluate it extensively to demonstrate the efficacy of our design.
---
paper_title: The Energy-Aware Controller Placement Problem in Software Defined Networks

paper_content:

Controller placement is an important problem in software defined networks. Previously, some works addressed the problem by taking into account primary factors, such as propagation delay of control paths and capacity of controllers. Here, the problem is addressed from a novel standpoint of energy consumption, which is modeled as a binary integer program (BIP). In the BIP model, the energy consumption of the network that serves for the control traffic is minimized under the constraints of the delay of control paths and the load of controllers. In consideration of the high complexity of the BIP in large networks, a genetic heuristic algorithm is designed to find an effective sub-optimal solution. Simulation results show that the energy consumption of the heuristic algorithm is close to that of the BIP solution. No more than 4%, additional links are used by the heuristic algorithm if all the links have the same energy consumption.
---
paper_title: Capacitated Next Controller Placement in Software Defined Networks

paper_content:

Software defined networking shifts the control plane of forwarding devices to one or more external entities known as controllers. Determining the optimal location of controllers in the network and the assignment of switches to them is widely known as controller placement problem. In case of controller failures, the switches are disconnected from the controller until they are reassigned to other active controllers with enough spare capacity. However, there is a significant upsurge in the worst case latency after the reassignment due to lack of planning for controller failures. In this paper, we propose a controller placement strategy that not only considers reliability and capacity of controllers but also plans ahead for controller failures to avoid repeated administrative intervention, drastic increase in latency and disconnections. It is formulated as a mixed integer linear program. The objective is to minimize the maximum, for all switches, of the sum of the latency from the switch to the nearest controller with enough capacity (first reference controller) and the latency from the first reference controller to its closest controller with enough capacity (second reference controller). We also proposed a generalized model which can be used to minimize the average latency and extended it for multiple controller failures. Furthermore, we presented a simulated annealing heuristic that efficiently solves the problem on large scale networks. The proposed formulation and heuristic are evaluated on various networks from the Internet Topology Zoo. Simulation results show that our proposed method performs better than the controller placement that does not plan ahead for failures.
---
paper_title: The controller placement problem

paper_content:

Network architectures such as Software-Defined Networks (SDNs) move the control logic off packet processing devices and onto external controllers. These network architectures with decoupled control planes open many unanswered questions regarding reliability, scalability, and performance when compared to more traditional purely distributed systems. This paper opens the investigation by focusing on two specific questions: given a topology, how many controllers are needed, and where should they go? To answer these questions, we examine fundamental limits to control plane propagation latency on an upcoming Internet2 production deployment, then expand our scope to over 100 publicly available WAN topologies. As expected, the answers depend on the topology. More surprisingly, one controller location is often sufficient to meet existing reaction-time requirements (though certainly not fault tolerance requirements).
---
paper_title: Optimal controller placement in Software Defined Networks (SDN) using a non-zero-sum game

paper_content:

In this paper, we discuss optimal controller placement for Software Defined Networks (SDN) and propose a non-zero-sum game based distributed technique. Our proposed technique is a simple and low-complexity solution which runs in real-time. This can be implemented as an optimization engine at each SDN controller. The optimization engine at each controller computes a payoff function and compares its own payoff value with that of neighbors and takes appropriate decisions such that either new controllers should be added, or existing controllers should be deleted or offloading should be performed between controllers dynamically. We have conducted extensive simulations and verified the usability of the proposed scheme. We also propose a deployment framework which can be implemented using OpenFlow enabled platforms. Use of this technique not only can improve Quality of Services (QoS - minimum packet drops and delay) but also can save cost of deployment and operation.
---
paper_title: The Energy-Aware Controller Placement Problem in Software Defined Networks

paper_content:

Controller placement is an important problem in software defined networks. Previously, some works addressed the problem by taking into account primary factors, such as propagation delay of control paths and capacity of controllers. Here, the problem is addressed from a novel standpoint of energy consumption, which is modeled as a binary integer program (BIP). In the BIP model, the energy consumption of the network that serves for the control traffic is minimized under the constraints of the delay of control paths and the load of controllers. In consideration of the high complexity of the BIP in large networks, a genetic heuristic algorithm is designed to find an effective sub-optimal solution. Simulation results show that the energy consumption of the heuristic algorithm is close to that of the BIP solution. No more than 4%, additional links are used by the heuristic algorithm if all the links have the same energy consumption.
---
paper_title: GreCo: An Energy Aware Controller Association Algorithm for Software Defined Networks

paper_content:

Software Defined Networks (SDNs) separate the control and data planes of devices to expedite the deployment, configuration and evolution of networks. In this respect, controllers play a key role. In particular, they control the behavior of switches and must do so quickly. This, however, may be at odds with the goal of reducing the energy consumption of a SDN because powering down links may cause controllers to use paths with larger propagation delays. To this end, we address the problem of assigning switches to controllers with the aim of switching off the maximum number of links subject to the following constraints: delay, link and controller load. Experimental results over four well known topologies show energy savings of up to 55% during off peak times.
---
paper_title: Towards controller placement problem for software-defined network using affinity propagation

paper_content:

This Letter investigates multi-controller placement problem for software-defined network aiming at minimising the propagation latency between switches and associated controllers. Distinct from the standard clustering-based partition approaches, a modified exemplar-based clustering method based on affinity propagation is presented to address the problem. Instead of specifying beforehand the number and locations of controllers, this method can learn the optimal number and locations of controllers adaptively according to network topology. Extensive simulation results demonstrate that the proposed method can provide more stable and accurate controller placement results in terms of latency minimisation compared with k-median and k-centre methods.
---
paper_title: The SDN controller placement problem for WAN

paper_content:

Large networks are always partitioned into several small networks when deploying software defined networking (SDN). The network partitioning with SDN control planes open many unanswered questions such as latency, reliability, and load balancing. This paper opens the investigation by focusing on two specific questions: given a wide-area network topology, how to partition it into several small SDN domains, and where should the controller go in each SDN domain? To answer these questions, we propose a novel approach to efficiently and accurately evaluate SDN controller placement problem for WAN. This approach uses the Spectral Clustering placement algorithm to partition a large network into several small SDN domains. After presenting our metrics of the SDN controller placement problem, we evaluate our approach using the Internet2 topology and other available WAN topologies. For testing purposes we developed a new framework to test the SDN controller in WAN. The results show its effectiveness for the SDN controller placement problem.
---
paper_title: Optimal Model for the Controller Placement Problem in Software Defined Networks

paper_content:

In this letter, we propose a mathematical model for the controller placement problem in Software Defined Networks (SDN). More precisely, given a set of switches that must be managed by the controller(s), the model simultaneously determines the optimal number, location, and type of controller(s) as well as the interconnections between all the network elements. The goal of the model is to minimize the cost of the network while considering different constraints. The simulation results show that the model can be used to plan small scale SDN. When trying to solve larger instances of the problem, the solver is taking too much time and also running out of memory. The proposed model could be used by various enterprises and cloud-based networks to start integrating SDN or plan a new SDN.
---
paper_title: On reliability-optimized controller placement for Software-Defined Networks

paper_content:

By decoupling control plane and data plane, Software-Defined Networking (SDN) approach s i m p l i f i e s network management and speeds up network innovations. These benefits have led not only to prototypes, but also real SDN deployments. For wide-area SDN deployments, multiple controllers are often required, and the placement of these controllers becomes a particularly important task in the SDN context. This paper studies the problem of placing controllers in SDNs, so as to maximize the reliability of SDN control networks. We present a novel metric, called expected percentage of control path loss, to characterize the reliability of SDN control networks. We formulate the reliability-aware control placement problem, prove its NP-hardness, and examine several placement algorithms that can solve this problem. Through extensive simulations using real topologies, we show how the number of controllers and their placement influence the reliability of SDN control networks. Besides, we also found that, through strategic controller placement, the reliability of SDN control networks can be significantly improved without introducing unacceptable switch-to-controller latencies.
---
paper_title: Five nines of southbound reliability in software-defined networks

paper_content:

In order to deploy fault-tolerant Software-Defined Networks (SDN), the logically centralized controller must be physically distributed among different devices. In this paper, we present our initial work on determining how many controllers need to be instantiated, where they must be deployed, and what network nodes are under control of each of them, in order to achieve at least five nines reliability in the southbound interface between controllers and nodes. For this, we introduce the Fault Tolerant Controller Placement problem and develop a heuristic algorithm that computes placements with (at least) the required reliability. We run such algorithm on a set of 124 publicly available network topologies. We find that each node is required to connect to just 2 or 3 controllers, which typically provide more than five nines reliability. While the total number of controllers varies greatly and is more related to the network topology than to the network size, 10 controllers or less cover 75% of the most interesting cases. Therefore, fault tolerant SDNs are achievable by carefully determining the placement of controllers.
---
paper_title: Pareto-optimal resilient controller placement in SDN-based core networks

paper_content:

Recently, Software Defined Networking (SDN) has gained a lot of attention, even for the use in core communication networks. When deploying SDN in large core networks, the number and location of controllers must be carefully planned. A first study on this topic by Heller et al. [3] was followed by more detailed publications that included resilience or dynamic controller provisioning. In our previous work [2], we provide an overview over related work and include different resilience issues in the controller placement process. We argued that it is not sufficient to look only at node-to-controller latencies but a controller placement should also fulfill certain resilience constraints especially for the control plane. The addressed resilience issues are briefly repeated in the following. Further details can be found in our original paper [2].
---
paper_title: A Switch Migration-Based Decision-Making Scheme for Balancing Load in SDN

paper_content:

Elastic scaling and load balancing with efficient switch migration are critical to enable the elasticity of software-defined networking (SDN) controllers, but learning how to improve migration efficiency remains a difficult problem. To address this issue, a switch migration-based decision-making (SMDM) scheme is put forward that could be made aware of the load imbalance by a switch migration trigger metric; the migration efficiency model for this scheme is built to make a tradeoff between migration costs and the load balance rate. An efficiency-aware switch migration algorithm based on greedy method is designed to utilize the migration efficiency model and thus guide the choice of possible migration actions. We implement a proof of the scheme and present a numerical evaluation using Mininet emulator to demonstrate the effectiveness of our proposal.
---
paper_title: Flow setup time aware minimum cost switch-controller association in Software-Defined Networks

paper_content:

Software Defined Networks (SDN) emerged as a new network paradigm to address the customization and flexibility problems in traditional computer networks. In SDNs, a logical centralized programmable controller manages the whole networks by installing rules onto switches. It is widely regarded that one controller is restricted on both performance and scalability. To address these limitations, pioneering researchers advocate deploying multiple controllers in SDNs where each controller is in charge of a set of switches. This raises the switch-controller association problem on one switch shall be managed by which controller. In this paper, we specially investigate minimum cost switch-controller association (MC-SCA) problem on how to minimize the number of controllers needed in an SDN while guaranteeing the flow setup time. A quadratic integer programming model is first proposed and then transformed into an equivalent integer linear programming model to describe the MC-SCA problem, which is then proved as NP-Hard. We further propose a heuristic algorithm and extensively prove its high efficiency via simulations.
---
paper_title: Heuristic Approaches to the Controller Placement Problem in Large Scale SDN Networks

paper_content:

Software Defined Networking (SDN) marks a paradigm shift towards an externalized and logically centralized network control plane. A particularly important task in SDN architectures is that of controller placement, i.e., the positioning of a limited number of resources within a network to meet various requirements. These requirements range from latency constraints to failure tolerance and load balancing. In most scenarios, at least some of these objectives are competing, thus no single best placement is available and decision makers need to find a balanced trade-off. This work presents POCO, a framework for Pareto-based Optimal COntroller placement that provides operators with Pareto optimal placements with respect to different performance metrics. In its default configuration, POCO performs an exhaustive evaluation of all possible placements. While this is practically feasible for small and medium sized networks, realistic time and resource constraints call for an alternative in the context of large scale networks or dynamic networks whose properties change over time. For these scenarios, the POCO toolset is extended by a heuristic approach that is less accurate, but yields faster computation times. An evaluation of this heuristic is performed on a collection of real world network topologies from the Internet Topology Zoo. Utilizing a measure for quantifying the error introduced by the heuristic approach allows an analysis of the resulting trade-off between time and accuracy. Additionally, the proposed methods can be extended to solve similar virtual functions placement problems which appear in the context of Network Functions Virtualization (NFV).
---
paper_title: An Effective Approach to Controller Placement in Software Defined Wide Area Networks

paper_content:

One grand challenge in software defined networking is to select appropriate locations for controllers to shorten the latency between controllers and switches in wide area networks. In the literature, the majority of approaches are focused on the reduction of packet propagation latency, but propagation latency is only one of the contributors of the overall latency between controllers and their associated switches. In this paper, we explore and investigate more possible contributors of the latency, including the end-to-end latency and the queuing latency of controllers. In order to decrease the end-to-end latency, the concept of network partition is introduced and a clustering-based network partition algorithm (CNPA) is then proposed to partition the network. The CNPA can guarantee that each partition is able to shorten the maximum end-to-end latency between controllers and switches. To further decrease the queuing latency of controllers, appropriate multiple controllers are then placed in the subnetworks. Extensive simulations are conducted under two real network topologies from the Internet Topology Zoo. The results verify that the proposed algorithm can remarkably reduce the maximum latency between controllers and their associated switches.
---
paper_title: On using bargaining game for Optimal Placement of SDN controllers

paper_content:

In this paper we address the problem of Software Defined Networking (SDN) controller placement in large networks. Indeed, to solve the scalability issue raised by the centralized architecture of SDN, multi-controllers deployment (or distributed controllers system) is envisioned. However, the number and the location of controllers in large networks remain an issue. In this context, several works have been proposed to find the optimal placement of SDN controllers. Most of them consider latency among SDN controllers and switches as the main metric. In this work, we go beyond the state of art by proposing a solution that considers at the same time three critical objectives for the optimal placement of controllers: (i) the latency and communication overhead between switches and controllers; (ii)the latency and communication overhead between controllers; (iii) the guarantee of load balancing between controllers. We then solve the system by using Bargaining Game in order to find a fair trade off between these objectives. Simulation results clearly demonstrate the effectiveness of the proposed solution in finding the optimal placement of controllers that enforces this trade-off.
---
paper_title: Modeling flow setup time for controller placement in SDN: Evaluation for dynamic flows

paper_content:

Software-Defined Networking (SDN) controllers are network entities that act as strategic control points in an SDN network. Controller placement studies mostly aim at optimizing network performance in terms of control latency, reliability and resilience, given network characteristics that are static. Yet dynamic traffic conditions, if not adapted by the controller placement properly, may cause high end-to-end flow setup time. For reactive controllers, the end-to-end flow setup time of a flow implies the difference between sending time at the source and receiving time at the sink of the first packet in that flow. Therefore, end-to-end flow setup time indicates the amount of time needed to set up forwarding rules in all involved switches and acts as a primary concern in terms of service establishment of network operators. In this paper, we analyze the controller placement for dynamic traffic flows based on a combined controller placement model: controller locations and switch-to-controller assignments are simultaneously optimized for minimum average flow setup time with respect to different traffic conditions inside the network. Linearization method is applied to transform the problem into a Mixed Integer Programming (MIP) problem which can be solved optimally. Two derivatives are also presented for comparison, one optimizing only controller locations and the other optimizing only switch-to-controller assignments. Our simulations cover two real network topologies and we explain the effects of the models have on the flow setup time with respect to dynamic flows. For low flow densities, the controller placement that adapts to flows could reduce the average flow setup time by about 50% compared to the static placement. However, when densities are high, the need of changing controller placement to guarantee flow setup performance is marginal.
---
paper_title: Dynamic switch migration towards a scalable SDN control plane

paper_content:

Summary ::: Distributed control plane is a promising approach to scalable software-defined networking (SDN). Live migration of switches from controllers that are overloaded to those that are underutilized may be a solution to handle peak switch traffic using available control resource. However, such migration has to be performed with a well-designed mechanism to fully utilize available resources in all three resource dimensions: CPU, bandwidth, and memory. In this article, we first provide a resource model for SDN and reduce the switch migration decision to a centralized resource utilization maximization problem under constraints of CPU, bandwidth, and memory. Second, we show that the problem of maximizing resource utilization in an SDN is equivalent to that of maximizing game players' profits in the context of non-cooperative game theory. Taking controllers and switches as game players and commodities respectively, the player policy is how to migrate switches among the control plane. Finally, we implement a proof of concept, called GAME-Switch Migration (GAME-SM). The numerical experiments using Mininet emulator validate nice properties of our game model in enhancing the performance of control plane in SDN. Copyright © 2016 John Wiley & Sons, Ltd.
---
paper_title: Dynamic Controller Provisioning in Software Defined Networks

paper_content:

Software Defined Networking (SDN) has emerged as a new paradigm that offers the programmability required to dynamically configure and control a network. A traditional SDN implementation relies on a logically centralized controller that runs the control plane. However, in a large-scale WAN deployment, this rudimentary centralized approach has several limitations related to performance and scalability. To address these issues, recent proposals have advocated deploying multiple controllers that work cooperatively to control a network. Nonetheless, this approach drags in an interesting problem, which we call the Dynamic Controller Provisioning Problem (DCPP). DCPP dynamically adapts the number of controllers and their locations with changing network conditions, in order to minimize flow setup time and communication overhead. In this paper, we propose a framework for deploying multiple controllers within an WAN. Our framework dynamically adjusts the number of active controllers and delegates each controller with a subset of Openflow switches according to network dynamics while ensuring minimal flow setup time and communication overhead. To this end, we formulate the optimal controller provisioning problem as an Integer Linear Program (ILP) and propose two heuristics to solve it. Simulation results show that our solution minimizes flow setup time while incurring very low communication overhead.
---
paper_title: Survivor: An enhanced controller placement strategy for improving SDN survivability

paper_content:

In SDN, forwarding devices can only operate correctly while connected to a logically centralized controller. To avoid single-point-of-failure, controller architectures are usually implemented as distributed systems. In this context, recent literature identified fundamental issues, such as device isolation and controller overload, and proposed controller placement strategies to tackle them. However, current proposals have crucial limitations: (i) device-controller connectivity is modeled using single paths, yet in practice multiple concurrent connections may occur; (ii) peaks in the arrival of new flows are only handled on-demand, assuming that the network itself can sustain high request rates; and (iii) failover mechanisms require predefined information, which, in turn, has been overlooked. This paper proposes Survivor, a controller placement strategy that addresses these challenges. The strategy explicitly considers path diversity, capacity, and failover mechanisms at network design. Comparisons to the state-of-the-art on survivable controller placement show that Survivor is superior because (a) path diversity increases the survivability significantly; and (b) capacity-awareness is essential to handle overload during both normal and failover states.
---
paper_title: Network traffic characteristics of data centers in the wild

paper_content:

Although there is tremendous interest in designing improved networks for data centers, very little is known about the network-level traffic characteristics of data centers today. In this paper, we conduct an empirical study of the network traffic in 10 data centers belonging to three different categories, including university, enterprise campus, and cloud data centers. Our definition of cloud data centers includes not only data centers employed by large online service providers offering Internet-facing applications but also data centers used to host data-intensive (MapReduce style) applications). We collect and analyze SNMP statistics, topology and packet-level traces. We examine the range of applications deployed in these data centers and their placement, the flow-level and packet-level transmission properties of these applications, and their impact on network and link utilizations, congestion and packet drops. We describe the implications of the observed traffic patterns for data center internal traffic engineering as well as for recently proposed architectures for data center networks.
---
paper_title: ElastiCon: an elastic distributed sdn controller

paper_content:

Software Defined Networking (SDN) has become a popular paradigm for centralized control in many modern networking scenarios such as data centers and cloud. For large data centers hosting many hundreds of thousands of servers, there are few thousands of switches that need to be managed in a centralized fashion, which cannot be done using a single controller node. Previous works have proposed distributed controller architectures to address scalability issues. A key limitation of these works, however, is that the mapping between a switch and a controller is statically configured, which may result in uneven load distribution among the controllers as traffic conditions change dynamically. To address this problem, we propose ElastiCon, an elastic distributed controller architecture in which the controller pool is dynamically grown or shrunk according to traffic conditions. To address the load imbalance caused due to spatial and temporal variations in the traffic conditions, ElastiCon automatically balances the load across controllers thus ensuring good performance at all times irrespective of the traffic dynamics. We propose a novel switch migration protocol for enabling such load shifting, which conforms with the Openflow standard. We further design the algorithms for controller load balancing and elasticity. We also build a prototype of ElastiCon and evaluate it extensively to demonstrate the efficacy of our design.
---
paper_title: The controller placement problem

paper_content:

Network architectures such as Software-Defined Networks (SDNs) move the control logic off packet processing devices and onto external controllers. These network architectures with decoupled control planes open many unanswered questions regarding reliability, scalability, and performance when compared to more traditional purely distributed systems. This paper opens the investigation by focusing on two specific questions: given a topology, how many controllers are needed, and where should they go? To answer these questions, we examine fundamental limits to control plane propagation latency on an upcoming Internet2 production deployment, then expand our scope to over 100 publicly available WAN topologies. As expected, the answers depend on the topology. More surprisingly, one controller location is often sufficient to meet existing reaction-time requirements (though certainly not fault tolerance requirements).
---
paper_title: Towards controller placement problem for software-defined network using affinity propagation

paper_content:

This Letter investigates multi-controller placement problem for software-defined network aiming at minimising the propagation latency between switches and associated controllers. Distinct from the standard clustering-based partition approaches, a modified exemplar-based clustering method based on affinity propagation is presented to address the problem. Instead of specifying beforehand the number and locations of controllers, this method can learn the optimal number and locations of controllers adaptively according to network topology. Extensive simulation results demonstrate that the proposed method can provide more stable and accurate controller placement results in terms of latency minimisation compared with k-median and k-centre methods.
---
paper_title: An Effective Approach to Controller Placement in Software Defined Wide Area Networks

paper_content:

One grand challenge in software defined networking is to select appropriate locations for controllers to shorten the latency between controllers and switches in wide area networks. In the literature, the majority of approaches are focused on the reduction of packet propagation latency, but propagation latency is only one of the contributors of the overall latency between controllers and their associated switches. In this paper, we explore and investigate more possible contributors of the latency, including the end-to-end latency and the queuing latency of controllers. In order to decrease the end-to-end latency, the concept of network partition is introduced and a clustering-based network partition algorithm (CNPA) is then proposed to partition the network. The CNPA can guarantee that each partition is able to shorten the maximum end-to-end latency between controllers and switches. To further decrease the queuing latency of controllers, appropriate multiple controllers are then placed in the subnetworks. Extensive simulations are conducted under two real network topologies from the Internet Topology Zoo. The results verify that the proposed algorithm can remarkably reduce the maximum latency between controllers and their associated switches.
---
paper_title: A K-means-based network partition algorithm for controller placement in software defined network

paper_content:

Software Defined Networking (SDN), the novel paradigm of decoupling the control logic from packet forwarding devices, has been drawing considerable attention from both academia and industry. As the latency between a controller and switches is a significant factor for SDN, selecting appropriate locations for controllers to shorten the latency becomes one grand challenge. In this paper, we investigate multi-controller placement problem from the perspective of latency minimization. Distinct from previous works, the network partition technique is introduced to simplify the problem. Specifically, the network partition problem and the controller placement problem are first formulated. An optimized K-means algorithm is then proposed to address the problem. Extensive simulations are conducted and results demonstrate that the proposed algorithm can remarkably reduce the maximum latency between centroid and their nodes compared with the standard K-means. Specifically, the maximum latency can reach 2.437 times shorter than the average latency achieved by the standard K-means.
---
paper_title: MDCP: Measurement-Aware Distributed Controller Placement for Software Defined Networks

paper_content:

The rapid development of software defined measurement has significantly improved network measurement and monitoring. The key challenge for software defined measurement is to design a low-cost measurement framework which has minimum impact on the network. The state-of-the-art approaches mainly focus on reducing the measurement overhead by sampling or aggregation. However, little attention has been devoted to eliminating this issue in the physical layer. We observe that the placement of the controllers significantly affects the measurement overhead for software defined measurement. Based on this observation, we rethink software defined measurement frameworks and propose a novel scheme to minimize the measurement overhead. Our approach is application-agnostic, cost-effective and robust to traffic dynamics. We formulate the measurement-aware distributed controller placement (MDCP) problem as a quadratic integer programming problem, which takes both the synchronization cost and the flow statistics collection cost into account. Due to its high computational complexity, we develop two novel algorithms to efficiently approximate near-optimal placements. In particular, we employ an algorithm with an approximation ratio of 1.61 to obtain the placement in the discrete approximation algorithm. We conduct experiments on over 240 real network topologies and the results demonstrate the effectiveness of MDCP. Trace-driven simulations verify that our proposal is robust to traffic dynamics and can reduce 40% of the measurement overhead on average.
---
paper_title: The controller placement problem

paper_content:

Network architectures such as Software-Defined Networks (SDNs) move the control logic off packet processing devices and onto external controllers. These network architectures with decoupled control planes open many unanswered questions regarding reliability, scalability, and performance when compared to more traditional purely distributed systems. This paper opens the investigation by focusing on two specific questions: given a topology, how many controllers are needed, and where should they go? To answer these questions, we examine fundamental limits to control plane propagation latency on an upcoming Internet2 production deployment, then expand our scope to over 100 publicly available WAN topologies. As expected, the answers depend on the topology. More surprisingly, one controller location is often sufficient to meet existing reaction-time requirements (though certainly not fault tolerance requirements).
---
paper_title: Optimal controller placement in large scale software defined networks based on modified NSGA-II

paper_content:

Software Defined Network (SDN) is an emerging approach to overcome challenges of traditional networks. One particularly important issue in SDN architectures is that of controller placement problem (CPP), i.e., deploying a desired number of controllers within a network while some possibly conflicting requirements have to be fulfilled. A single optimal placement may not be possible and decision makers need to seek for an appropriate trade-off among the metrics. Although an exhaustive evaluation of all possible placements can be practically performed well for small and medium-sized networks, regarding realistic time and resource restrictions, heuristic approaches are required for large-scale networks. Hence, a heuristic called Multi-Start Hybrid NSGA-II (MHNSGA-II) is introduced which yields faster computation times and needs reasonable memory to perform. The obtained results on several topologies extracted from Internet Topology Zoo showed the efficiency of the proposed approach.
---
paper_title: A Particle Swarm Optimization Algorithm for Controller Placement Problem in Software Defined Network

paper_content:

Software defined network (SDN) decouples the control plane from packet processing device and introduces the controller placement problem. The previous methods only focus on propagation latency between controllers and switches but ignore either the latency from controllers to controllers or the capacities of controllers, both of which are critical factors in real networks. In this paper, we define a global latency controller placement problem with capacitated controllers, taking into consideration both the latency between controllers and the capacities of controllers. And this paper proposes a particle swarm optimization algorithm to solve the problem for the first time. Simulation results show that the algorithm has better performance in propagation latency, computation time, and convergence.
---
paper_title: Genetic algorithms with particle swarm optimization based mutation for distributed controller placement in SDNs

paper_content:

This paper proposes a distributed controller placement problem that finds out the pareto optimal solutions minimizing the switch-to-controller delay, controller-to-controller delay, and controller load imbalance for wide area software defined networks. We introduce a general model that not only considers the controller placements but also the switch assignments, so that this model can further be used to develop many other multi-objective optimization problems such as energy saving, controller migration, or NFV allocation. To solve this problem with huge search space without losing generality, we introduce a Multi-Objective Genetic Algorithm (MOGA) with a particle swarm optimization based mutation function. It maintains a pre-calculated global best position for each single objective, and choose the global best position of an objective that has the best accordance to a parent to guide the mutation of the parent. Evaluations show that our MOGA can generate a pareto frontier with a larger diversity toward the given global best positions in much shorter convergence time than a general MOGA.
---
paper_title: On using bargaining game for Optimal Placement of SDN controllers

paper_content:

In this paper we address the problem of Software Defined Networking (SDN) controller placement in large networks. Indeed, to solve the scalability issue raised by the centralized architecture of SDN, multi-controllers deployment (or distributed controllers system) is envisioned. However, the number and the location of controllers in large networks remain an issue. In this context, several works have been proposed to find the optimal placement of SDN controllers. Most of them consider latency among SDN controllers and switches as the main metric. In this work, we go beyond the state of art by proposing a solution that considers at the same time three critical objectives for the optimal placement of controllers: (i) the latency and communication overhead between switches and controllers; (ii)the latency and communication overhead between controllers; (iii) the guarantee of load balancing between controllers. We then solve the system by using Bargaining Game in order to find a fair trade off between these objectives. Simulation results clearly demonstrate the effectiveness of the proposed solution in finding the optimal placement of controllers that enforces this trade-off.
---
paper_title: An adaptive heuristic for multi-objective controller placement in software-defined networks

paper_content:

Abstract Software-defined networking paradigm faces many challenges, including reliability, resiliency, scalability, and availability. These challenges can be tackled by carefully selecting placements within the network. However, the evaluation of all placements is only practical for small networks. In this paper, a fast and efficient adaptation of evolutionary algorithms is presented to solve large-scale multi-objective controller placement problems. The presented algorithm requires reasonable memory resource and enjoys a greedy heuristic to generate a high-quality initial population, smart mechanisms to encourage the diversification and intensification, and a new fast Pareto finder. Moreover, a new variant of the problem is developed in which the capacities of controllers and loads of switches are added as constraints. A new constraint handling technique is applied to adapt our algorithm to solve the new problem. Finally, the results on several topologies from Internet Topology Zoo revealed that our presented algorithms outperformed some other efficient algorithms from the literature.
---
paper_title: NCPSO: A Solution of the Controller Placement Problem in Software Defined Networks

paper_content:

Controller placement is an important problem in software defined networks (SDN). Most of the placement strategies focused on propagation latency, but ignored the load of controllers, which is a critical factor in real networks. In this paper, we propose Network Clustering Particle Swarm Optimization Algorithm (NCPSO), which taking into consideration of the load of controllers, propagation latency and load balancing. By generating diverse individuals with high clustering efficiency and overcoming the disadvantages of PSO used in discrete problem, the NCPSO can solve the controller placement problem better than other algorithms. The evaluation shows that the new algorithm can significantly reduce the number of required controllers, reduce the load of the maximum-load controller, and have a good performance of load balance.
---
paper_title: On the Capacitated Controller Placement Problem in Software Defined Networks

paper_content:

Controller placement is a key problem in software defined networks (SDNs). Previously, the solution to this problem only focused on propagation latency but ignored the load of controllers, which is a critical factor in real networks. In this letter, we define a capacitated controller placement problem (CCPP), taking into consideration the load of controllers, and introduce an efficient algorithm to solve the problem. The evaluation shows that the new strategy can significantly reduce the number of required controllers, reduce the load of the maximum-load controller, and reduce the radius stretches compared with the K-center strategy with dynamic controller provision or dynamic scheduling.
---
paper_title: Hierarchical clustering for an efficient controllers' placement in software defined networks

paper_content:

Controllers' placement is one of the most important concerns that emerged recently to solve scalability and reliability issues of SDN networks. The placement efficiency is influenced by both network operator strategy and the supported services' requirements, which makes more complex the decision-making process. In particular, the need to support QoS-constrained services may guide the controllers' placement in a way to ensure services' efficiency while optimizing the underlying infrastructure. In this paper, we propose a model for the placement of network controllers, and we formulate the optimization problem, which is shown to be NP hard. To provide more flexibility and to avoid time-prohibitive calculations, varied heuristics approaches, considering several metrics, need to be proposed. To that purpose, we propose a hierarchical clustering strategy for the controllers' placement allowing to minimize the number of network controllers while reducing the potential disparity of burden between the different controllers. Besides, the algorithm's structure makes it easy to act on other network parameters to improve the reliability of the SDN network. The results show that the proposed algorithm, despite the great diversity of network topologies, achieves better performance than conventional techniques without increasing significantly the number of controllers.
---
paper_title: The controller placement problem

paper_content:

Network architectures such as Software-Defined Networks (SDNs) move the control logic off packet processing devices and onto external controllers. These network architectures with decoupled control planes open many unanswered questions regarding reliability, scalability, and performance when compared to more traditional purely distributed systems. This paper opens the investigation by focusing on two specific questions: given a topology, how many controllers are needed, and where should they go? To answer these questions, we examine fundamental limits to control plane propagation latency on an upcoming Internet2 production deployment, then expand our scope to over 100 publicly available WAN topologies. As expected, the answers depend on the topology. More surprisingly, one controller location is often sufficient to meet existing reaction-time requirements (though certainly not fault tolerance requirements).
---
paper_title: An evolutionary controllers' placement algorithm for reliable SDN networks

paper_content:

SDN controllers placement in TelCo networks are generally multi-objective and multi-constrained problems. The solutions proposed in the literature usually model the placement problem by providing a mixed integer linear program (MILP). Their performances are, however, quickly limited for large sized networks, due to the significant increase in the computational delays. In order to avoid the inherent complexity of optimal approaches and the lack of flexibility of heuristics, we propose in this paper a genetic algorithm designed from the NSGA II framework that aims to deal with the controller placement problem. Genetic algorithms can, indeed, be both multi-objective, multi-constraints and can be designed to be computed in parallel. They constitute a real opportunity to find good solutions to this category of problems. Furthermore, the proposed algorithm can be easily adapted to manage dynamic placements scenarios. The goal chosen, in this work, is to maximize the clusters average connectivity and to balance the control's load between clusters, in a way to improve the networks' reliability. The evaluation results on a set of network topologies demonstrated very good performances, which achieve optimal results for small networks.
---
paper_title: On reliability-optimized controller placement for Software-Defined Networks

paper_content:

By decoupling control plane and data plane, Software-Defined Networking (SDN) approach s i m p l i f i e s network management and speeds up network innovations. These benefits have led not only to prototypes, but also real SDN deployments. For wide-area SDN deployments, multiple controllers are often required, and the placement of these controllers becomes a particularly important task in the SDN context. This paper studies the problem of placing controllers in SDNs, so as to maximize the reliability of SDN control networks. We present a novel metric, called expected percentage of control path loss, to characterize the reliability of SDN control networks. We formulate the reliability-aware control placement problem, prove its NP-hardness, and examine several placement algorithms that can solve this problem. Through extensive simulations using real topologies, we show how the number of controllers and their placement influence the reliability of SDN control networks. Besides, we also found that, through strategic controller placement, the reliability of SDN control networks can be significantly improved without introducing unacceptable switch-to-controller latencies.
---
paper_title: Five nines of southbound reliability in software-defined networks

paper_content:

In order to deploy fault-tolerant Software-Defined Networks (SDN), the logically centralized controller must be physically distributed among different devices. In this paper, we present our initial work on determining how many controllers need to be instantiated, where they must be deployed, and what network nodes are under control of each of them, in order to achieve at least five nines reliability in the southbound interface between controllers and nodes. For this, we introduce the Fault Tolerant Controller Placement problem and develop a heuristic algorithm that computes placements with (at least) the required reliability. We run such algorithm on a set of 124 publicly available network topologies. We find that each node is required to connect to just 2 or 3 controllers, which typically provide more than five nines reliability. While the total number of controllers varies greatly and is more related to the network topology than to the network size, 10 controllers or less cover 75% of the most interesting cases. Therefore, fault tolerant SDNs are achievable by carefully determining the placement of controllers.
---
paper_title: Optimization by simulated annealing

paper_content:

There is a deep and useful connection between statistical mechanics (the behavior of systems with many degrees of freedom in thermal equilibrium at a finite temperature) and multivariate or combinatorial optimization (finding the minimum of a given function depending on many parameters). A detailed analogy with annealing in solids provides a framework for optimization of the properties of very large and complex systems. This connection to statistical mechanics exposes new information and provides an unfamiliar perspective on traditional optimization problems and methods.
---
paper_title: Controller Placement for Improving Resilience of Software-Defined Networks

paper_content:

Software-defined Network (SDN) is a new architectural framework for networking that decouples control plane from data plane and provides a programmatic interface to network control. SDN enables innovations of networking technologies for Internet and data centers today in order to ease the management of the highly dynamic and complex infrastructure, to support the fine-grained traffic engineering, and to better address the mobility of virtual machines, services, and end-points. However, SDN itself opens many unanswered questions regarding reliability, performance, and security. Controller placement is a critical problem in SDN that may affect many aspects of SDN. This work introduces the use of interdependence network analysis to study the controller placement for network resilience, designs a new resilience metric, and proposes a solution to improve resilience.
---
paper_title: Towards Controller Placement for robust Software-Defined Networks

paper_content:

The core concept of software-defined network (SDN) is the separation between control plane and date plane. SDN provides a programmatic interface to network control, significantly simplifies network management and improves the efficiency of network utilization. To further improve network performance, scalability and reliability, it is recommended to deploy multiple controllers in SDN. However, network performance would degrade if operators randomly deploy the controllers, especially in the case of failure, e.g., router crashes, fiber cuts, etc. In this paper, we try to optimally place controllers while taking network failures into account. First, we formally define two problems, 1) Controller Placement under Comprehensive Network States (CPCNS) problem; and 2) Controller Placement under Single Link Failure (CPSLF) problem. Secondly, We propose a network states traversal based algorithm, which optimally solve the problem; and further propose another greedy-based algorithm, which can solve the problem in polynomial time. Finally, we evaluate the algorithms using real topologies and empirical data. The results indicate that the new controller placement strategies can significantly improve the performance when link failures happen.
---
paper_title: Controller placement algorithm to alleviate burdens on communication nodes

paper_content:

This paper proposes an algorithm to determine a controller location on a given network considering burdens of all communication nodes. The burden is defined by extending stress centrality, which indicates a load of each node based on the number of edge disjoint paths. In order to analyze characteristics of the proposed placement algorithm, our simulations compare it with other placement algorithms and the theoretically optimum values in terms of node burdens, latency, survivability and path stability.
---
paper_title: A min-cover based controller placement approach to build reliable control network in SDN

paper_content:

Software defined network (SDN) develops a centralized control plane to manage the whole network. If the scale of the network is large, it is necessary to deploy multiple distributed controllers. In SDN, a switch can only work by relying on flow tables received from its controller. Therefore, controller placement is an important problem to keep the switches working efficiently and improve the reliability of the control network, which consists of controllers, switches and the communication paths between them. However, the existing controller placement approaches are not effective or do not consider the network reliability and the required delay between switches and controllers at the same time. In order to ensure the reliability of the control network and meet the required propagation delay, a min-cover based controller placement approach is proposed. Two metrics are proposed to measure the reliability of a control network, and the definitions of neighborhood and min-cover are provided, based on which the approach try to use less controllers to achieve the reliability and low delay of the control network while guaranteeing the manageability of the network. Simulations show that min-cover based approach can use as less controllers as possible to ensure the reliability of control network and satisfy the required delay at the same time. Moreover, the approach has steadily good performance in networks of different scales and connectivity.
---
paper_title: Reliability-aware controller placement for Software-Defined Networks

paper_content:

The Software-Defined Network (SDN) approach decouples control and forwarding planes. Such separation introduces reliability design issues of the SDN control network, since disconnection between the control and forwarding planes may lead to severe packet loss and performance degradation. This paper addresses the problem of placing controllers in SDNs, so as to maximize the reliability of control networks. After presenting a metric to characterize the reliability of SDN control networks, several placement algorithms are developed. We evaluate these algorithms and further quantify the impact of controller number on the reliability of control networks using real topologies. Our approach can significantly improve the reliability of SDN control networks without introducing unacceptable latencies.
---
paper_title: The SDN controller placement problem for WAN

paper_content:

Large networks are always partitioned into several small networks when deploying software defined networking (SDN). The network partitioning with SDN control planes open many unanswered questions such as latency, reliability, and load balancing. This paper opens the investigation by focusing on two specific questions: given a wide-area network topology, how to partition it into several small SDN domains, and where should the controller go in each SDN domain? To answer these questions, we propose a novel approach to efficiently and accurately evaluate SDN controller placement problem for WAN. This approach uses the Spectral Clustering placement algorithm to partition a large network into several small SDN domains. After presenting our metrics of the SDN controller placement problem, we evaluate our approach using the Internet2 topology and other available WAN topologies. For testing purposes we developed a new framework to test the SDN controller in WAN. The results show its effectiveness for the SDN controller placement problem.
---
paper_title: Optimal Model for Failure Foresight Capacitated Controller Placement in Software-Defined Networks

paper_content:

Controller placement is an important problem in software-defined networks. If a controller fails, there may be no controller with enough spare capacity to serve switches of the failed controller, which leads to switches being disconnected from the controller. Even if there are controllers with enough spare capacity, reassigning switches of the failed controller may drastically increase the worst case latency. In this letter, we propose a mathematical model for the capacitated controller placement that plans ahead for the failures to avoid a drastic increase in the worst case latency and disconnections. The objective of our model is to minimize the worst case latency between the switches and their $K{\mathrm{ th}}$ reference controllers. We also introduce a variant of the proposed model that minimizes the worst case latencies with and without failures together. Our simulation results show that the controller placements that plan ahead for the failures result in much lower latency compared with the placement without planning ahead.
---
paper_title: Optimal placement of controllers in a resilient SDN architecture

paper_content:

The SDN (Software Defined Networking) paradigm brings flexibility to the network management and is an enabler to reduce the energy consumption of the networks. However deploying a set of SDN controllers to manage a Wide Area Network is still a challenge as it implies to determine the right number of controllers to install and their locations within the network. In this paper, we give the key performance criteria that should be taken into account to provide a “good” placement in terms of Quality of Service and we propose an integer linear programming formulation of the resilient controller placement problem. This formulation provides the optimal number of controllers and their location while embedding QoS and load balancing constraints for several level of backup controllers.
---
paper_title: Pareto-optimal resilient controller placement in SDN-based core networks

paper_content:

Recently, Software Defined Networking (SDN) has gained a lot of attention, even for the use in core communication networks. When deploying SDN in large core networks, the number and location of controllers must be carefully planned. A first study on this topic by Heller et al. [3] was followed by more detailed publications that included resilience or dynamic controller provisioning. In our previous work [2], we provide an overview over related work and include different resilience issues in the controller placement process. We argued that it is not sufficient to look only at node-to-controller latencies but a controller placement should also fulfill certain resilience constraints especially for the control plane. The addressed resilience issues are briefly repeated in the following. Further details can be found in our original paper [2].
---
paper_title: Density cluster based approach for controller placement problem in large-scale software defined networkings

paper_content:

Software Defined Networking (SDN) decouples control and data planes. The separation arises a problem known as the controller placement, i.e., how many and where controllers should be deployed. Currently, most works defined this problem as the multi-objective combinatorial optimization problem and used heuristic algorithms to search the optimal solution. However, these heuristic algorithms have the drawback of being easily trapped in local optimal solutions and consuming high time. In this paper, we propose an approach named as Density Based Controller Placement (DBCP), which uses a density-based switch clustering algorithm to split the network into several sub-networks. As switches are tightly connected within the same sub-network and less connected from the switches in other sub-networks, we deploy one controller in each sub-network. In DBCP, the size of each sub-network can be decided by the capacity of the controller deployed. Moreover, the optimal number of controllers is obtained according to the density-based clustering. We evaluate DBCPs performance on a set of 262 publicly available network topologies. The experimental results show that DBCP provides better performance than the state-of-the-art approaches in terms of time consumption, propagation latency, and fault tolerance.
---
paper_title: Heuristic Approaches to the Controller Placement Problem in Large Scale SDN Networks

paper_content:

Software Defined Networking (SDN) marks a paradigm shift towards an externalized and logically centralized network control plane. A particularly important task in SDN architectures is that of controller placement, i.e., the positioning of a limited number of resources within a network to meet various requirements. These requirements range from latency constraints to failure tolerance and load balancing. In most scenarios, at least some of these objectives are competing, thus no single best placement is available and decision makers need to find a balanced trade-off. This work presents POCO, a framework for Pareto-based Optimal COntroller placement that provides operators with Pareto optimal placements with respect to different performance metrics. In its default configuration, POCO performs an exhaustive evaluation of all possible placements. While this is practically feasible for small and medium sized networks, realistic time and resource constraints call for an alternative in the context of large scale networks or dynamic networks whose properties change over time. For these scenarios, the POCO toolset is extended by a heuristic approach that is less accurate, but yields faster computation times. An evaluation of this heuristic is performed on a collection of real world network topologies from the Internet Topology Zoo. Utilizing a measure for quantifying the error introduced by the heuristic approach allows an analysis of the resulting trade-off between time and accuracy. Additionally, the proposed methods can be extended to solve similar virtual functions placement problems which appear in the context of Network Functions Virtualization (NFV).
---
paper_title: On the controller placement for designing a distributed SDN control layer

paper_content:

The software-defined network (SDN) advocates a centralized network control, where a controller manages a network from a global view of the network. Large SDN networks may consist of multiple controllers or controller domains that distribute the network management between them, where each controller has a logically centralized but physically distributed vision of the network. In this context, a key challenge faced by providers is to define a scalable control network that exploits the benefits of SDN when used in conjunction with efficient management strategies. Most of the control layer models proposed are not concerned with controller scalability, because they assume that commercial controllers are scalable in terms of capacity (quantity of flows processed per second). However, it has been demonstrated that overloads and long propagation delays among controllers and controllers-switches can lead to a long response time of the controllers, affecting their ability to respond to network events in a very short time and reducing the reliability of communication. In this work we define the principles for designing a scalable control layer for SDN, and show the desired control layer characteristics that optimize the management of the network. We address these principles from the perspective of the controller placement problem. For this purpose we improve and evaluate our previous approach, the algorithm called k-Critical. K-Critical discovers the minimum number of controllers and their location to create a robust control topology that deals robustly with failures and balances the load among the selected controllers. The results demonstrate the effectiveness of our solution by comparing it with other controller placement solutions. © 2014 IFIP.
---
paper_title: Pareto simulated annealing—a metaheuristic technique for multiple‐objective combinatorial optimization

paper_content:

This paper presents a multiple-objective metaheuristic procedure—Pareto simulated annealing. The goal of the procedure is to find in a relatively short time a good approximation of the set of efficient solutions of a multiple-objective combinatorial optimization problem. The procedure uses a sample, of so-called generating solutions. Each solution explores its neighbourhood in a way similar to that of classical simulated annealing. Weights of the objectives, used for their local aggregation, are tuned in each iteration in order to assure a tendency for approaching the efficient solutions set while maintaining a uniform distribution of the generating solutions over this set. A computational experiment shows that the method is a better tool for approximating the efficient set than some previous proposals. © 1998 John Wiley & Sons, Ltd.
---
paper_title: Specialized Heuristics for the Controller Placement Problem in Large Scale SDN Networks

paper_content:

The Software Defined Networking (SDN) concept introduces a paradigm shift in the networking world towards an externalized control plane which is logically centralized. When designing an SDN-based WAN architecture, it is of vital importance to find a feasible solution to the controller placement problem, i.e., to decide where to position a limited amount of resources within the network. In addition to time-independent constraints regarding aspects like scalability, resilience, and control plane communication delays, dynamically changing network conditions like traffic patterns or bandwidth demands need to be considered as well. Consequently, such dynamic environments call for a regular and fast recalculation of placements in order to adapt to the current situation in a timely manner. While an exhaustive evaluation of all possible solutions can be performed within a practically feasible time frame for small and medium-sized networks, such an approach is out of scope for large problem instances which have significantly higher time and memory requirements. Therefore, this work investigates a specialized heuristic, which takes into account a particular set of optimization objectives and returns solutions representing the possible trade-offs between them. Due to its low computation time and acceptable margin of error, this heuristic can be employed by automatic decision systems operating in dynamic environments.
---
paper_title: On the cascading failures of multi-controllers in Software Defined Networks

paper_content:

In this paper, a potential threat to reliability of Software Defined Networking (SDN) is disclosed: the cascading failures of controllers. Current SDN designs have widely utilized multiple controllers and the load of a failed controller can be redistributed to the other controllers. However, simply utilizing multiple controllers cannot protect SDN networks from a single point of failure: the load of the controllers which carry the load of the failed controller can exceed the capacity of them, and then cascading failures of controllers will happen. In this article, at first we propose a model for such failures and present simulation results based on the model. Strategies for initial load balance and load redistribution after failure are designed to prevent such failures. The simulation result shows the strategies can significantly increase the resistance of SDN networks to cascading failures.
---
paper_title: A min-max cut algorithm for graph partitioning and data clustering

paper_content:

An important application of graph partitioning is data clustering using a graph model - the pairwise similarities between all data objects form a weighted graph adjacency matrix that contains all necessary information for clustering. In this paper, we propose a new algorithm for graph partitioning with an objective function that follows the min-max clustering principle. The relaxed version of the optimization of the min-max cut objective function leads to the Fiedler vector in spectral graph partitioning. Theoretical analyses of min-max cut indicate that it leads to balanced partitions, and lower bounds are derived. The min-max cut algorithm is tested on newsgroup data sets and is found to out-perform other current popular partitioning/clustering methods. The linkage-based refinements to the algorithm further improve the quality of clustering substantially. We also demonstrate that a linearized search order based on linkage differential is better than that based on the Fiedler vector, providing another effective partitioning method.
---
paper_title: Capacitated Next Controller Placement in Software Defined Networks

paper_content:

Software defined networking shifts the control plane of forwarding devices to one or more external entities known as controllers. Determining the optimal location of controllers in the network and the assignment of switches to them is widely known as controller placement problem. In case of controller failures, the switches are disconnected from the controller until they are reassigned to other active controllers with enough spare capacity. However, there is a significant upsurge in the worst case latency after the reassignment due to lack of planning for controller failures. In this paper, we propose a controller placement strategy that not only considers reliability and capacity of controllers but also plans ahead for controller failures to avoid repeated administrative intervention, drastic increase in latency and disconnections. It is formulated as a mixed integer linear program. The objective is to minimize the maximum, for all switches, of the sum of the latency from the switch to the nearest controller with enough capacity (first reference controller) and the latency from the first reference controller to its closest controller with enough capacity (second reference controller). We also proposed a generalized model which can be used to minimize the average latency and extended it for multiple controller failures. Furthermore, we presented a simulated annealing heuristic that efficiently solves the problem on large scale networks. The proposed formulation and heuristic are evaluated on various networks from the Internet Topology Zoo. Simulation results show that our proposed method performs better than the controller placement that does not plan ahead for failures.
---
paper_title: Survivor: An enhanced controller placement strategy for improving SDN survivability

paper_content:

In SDN, forwarding devices can only operate correctly while connected to a logically centralized controller. To avoid single-point-of-failure, controller architectures are usually implemented as distributed systems. In this context, recent literature identified fundamental issues, such as device isolation and controller overload, and proposed controller placement strategies to tackle them. However, current proposals have crucial limitations: (i) device-controller connectivity is modeled using single paths, yet in practice multiple concurrent connections may occur; (ii) peaks in the arrival of new flows are only handled on-demand, assuming that the network itself can sustain high request rates; and (iii) failover mechanisms require predefined information, which, in turn, has been overlooked. This paper proposes Survivor, a controller placement strategy that addresses these challenges. The strategy explicitly considers path diversity, capacity, and failover mechanisms at network design. Comparisons to the state-of-the-art on survivable controller placement show that Survivor is superior because (a) path diversity increases the survivability significantly; and (b) capacity-awareness is essential to handle overload during both normal and failover states.
---
paper_title: The Energy-Aware Controller Placement Problem in Software Defined Networks

paper_content:

Controller placement is an important problem in software defined networks. Previously, some works addressed the problem by taking into account primary factors, such as propagation delay of control paths and capacity of controllers. Here, the problem is addressed from a novel standpoint of energy consumption, which is modeled as a binary integer program (BIP). In the BIP model, the energy consumption of the network that serves for the control traffic is minimized under the constraints of the delay of control paths and the load of controllers. In consideration of the high complexity of the BIP in large networks, a genetic heuristic algorithm is designed to find an effective sub-optimal solution. Simulation results show that the energy consumption of the heuristic algorithm is close to that of the BIP solution. No more than 4%, additional links are used by the heuristic algorithm if all the links have the same energy consumption.
---
paper_title: GreCo: An Energy Aware Controller Association Algorithm for Software Defined Networks

paper_content:

Software Defined Networks (SDNs) separate the control and data planes of devices to expedite the deployment, configuration and evolution of networks. In this respect, controllers play a key role. In particular, they control the behavior of switches and must do so quickly. This, however, may be at odds with the goal of reducing the energy consumption of a SDN because powering down links may cause controllers to use paths with larger propagation delays. To this end, we address the problem of assigning switches to controllers with the aim of switching off the maximum number of links subject to the following constraints: delay, link and controller load. Experimental results over four well known topologies show energy savings of up to 55% during off peak times.
---
paper_title: Optimal Model for the Controller Placement Problem in Software Defined Networks

paper_content:

In this letter, we propose a mathematical model for the controller placement problem in Software Defined Networks (SDN). More precisely, given a set of switches that must be managed by the controller(s), the model simultaneously determines the optimal number, location, and type of controller(s) as well as the interconnections between all the network elements. The goal of the model is to minimize the cost of the network while considering different constraints. The simulation results show that the model can be used to plan small scale SDN. When trying to solve larger instances of the problem, the solver is taking too much time and also running out of memory. The proposed model could be used by various enterprises and cloud-based networks to start integrating SDN or plan a new SDN.
---
paper_title: Expansion Model for the Controller Placement Problem in Software Defined Networks

paper_content:

A key concern in the deployment of Software Defined Networks (SDN) is the location of the controller. One issue network operators will have to face is how to expand their network at minimum cost in order to meet the growing number of users and services. To that end, this letter introduces a new expansion model for the controller placement problem in SDN. More precisely, given a current network design and a list of switches to be added to the network, the model will find how the network should be re-organized such that the update cost is minimized. Since the expansion problem is a generalisation of the planning problem, the model proposed in this letter can be used to plan a new network from scratch or update any existing networks.
---
paper_title: Scalable SDN architecture with distributed placement of controllers for WAN

paper_content:

Summary ::: By separating control plane from data plane, software-defined network (SDN) adopts centralized controllers to manage data flows in the network. Nevertheless, the rapid growth of network service traffic requires a large number of controllers, reducing network performance due to the scalability constraint. Therefore, we consider distributed placement of controllers in wide-area network to construct a scalable SDN architecture, by taking service traffics, traffic propagation delay, and load balancing into account. Specifically, we first partition the network into several small sections (named SDN domains) and then place the least amount of controllers to a proper node in each domain. The architecture provides a control channel to deliver requested messages for each SDN domain, so it reduces the link delay (which is assumed to be proportional to the physical length of the link) between switches and SDN controllers. Unfortunately, it also introduces extra latency among controller sets at different SDN domain. Accordingly, we formulate an integer linear program to optimize network cost and performance by considering all those conflicting factors and propose an efficient heuristic algorithm called distributed SDN placement to solve the problem. Simulation results confirm that our proposed heuristic distributed SDN placement can achieve suboptimal solutions as compared with the integer linear program results.
---
paper_title: An exact algorithm for the capacitated vertex p-center problem

paper_content:

We develop a simple and practical exact algorithm for the problem of locating p facilities and assigning clients to them within capacity restrictions in order to minimize the maximum distance between a client and the facility to which it is assigned (capacitated p-center). The algorithm iteratively sets a maximum distance value within which it tries to assign all clients, and thus solves bin-packing or capacitated concentrator location subproblems using off-the-shelf optimization software. Computational experiments yield promising results.
---
paper_title: On Placement of Hypervisors and Controllers in Virtualized Software Defined Network

paper_content:

In a virtualized software defined network (VSDN), PACKET_IN messages of switches must pass through the hypervisor in order to reach the corresponding controller. Hence, the latency experienced by a network element is the sum of latency from network element to hypervisor and the latency from the hypervisor to the controller corresponding to the network element. Therefore, the locations of both the hypervisors and controllers determine the latency of network elements in a virtualized environment. In this paper, we propose a strategy for determining the placement of controllers in a VSDN while fixing the hypervisor(s) in the physical network. We also propose an approach for jointly optimizing the placement of hypervisors and controllers in a VSDN. The objective is to minimize the worst case latency between the network element and its corresponding controller. Furthermore, we propose a generalized model which can be used not only to optimize the worst case latency, but also to optimize other objectives such as the average latency, the maximum average latency, and the average maximum latency. The proposed problems are formulated as integer linear programs. We evaluated the performance of our proposed strategies using the AT&T network of Internet Topology Zoo and the Internet 2 OS3E topology, and compared with the hypervisor placement problem. Evaluations demonstrate that the proposed methods outperform the existing hypervisor placement approach with respect to the various performance metrics.
---
paper_title: Control plane delay minimization based SDN controller placement scheme

paper_content:

Software defined networking (SDN) has been proposed as a novel centralized architecture which is capable of offering flexible network management and user quality-of-service (QoS) guaranteed applications. The problem of controller placement in SDN, i.e., determining the locations of the controllers has received considerable attention in recent years. In this paper, we jointly consider the control plane delay between switches and controllers and between controllers and formulate the controller placement problem as a control plane delay minimization problem subject to switches and controllers association constraints. As the optimization problem formulated is an NP-hard problem, which cannot be solved easily, we propose a heuristic method based on the K-means algorithm and the Dijkstra algorithm. Numerical results demonstrate that the proposed algorithm offers better performance than previously proposed algorithm.
---
paper_title: Minimum Control Latency of SDN Controller Placement

paper_content:

SDN is known as a decoupled architecture separatingthe control and data planes. The controller is in charge ofnetwork nodes through a southbound interface. However, it iscostly to impose all controllers to control each node separately. Meanwhile, the layout of controllers affects the network's abilityto respond to network events. Therefore, the controller placementis an important problem in SDN community. When latencyand reliability metrics are both considered, there is usuallyno single best controller placement solution, but a trade-offinstead. Most of deployment schemes based on latency are mainlyfocused on transmission delay (TD) or Propagation delay (PD) atpresent. However, to our best knowledge, no existing works haveconsidered the influence of control latency on SDN controllerplacement problem while control latency makes great sense inquick response to network events. Thus, in this paper, a minimum-control-latency optimized algorithmbased on greedy controlling pattern design is proposed. Theideas and mechanisms are illustrated using the Internet2 OS3Etopology compared to average-latency-optimized placement andworst-case-optimized placement. What's more, the accuracy oflatency measurement is also a main concern in SDN research. Itis not precise enough when measuring only based on Ping results. In this paper, a novel method based on active latency measurementis also presented to obtain more accurate control latency. Extensive experiments have shown that our minimum-controllatency-optimized can improve the imbalance when partitioningSDN domains and achieve the maximum number of nodes percontroller controlled.
---
paper_title: Optimal controller placement in large scale software defined networks based on modified NSGA-II

paper_content:

Software Defined Network (SDN) is an emerging approach to overcome challenges of traditional networks. One particularly important issue in SDN architectures is that of controller placement problem (CPP), i.e., deploying a desired number of controllers within a network while some possibly conflicting requirements have to be fulfilled. A single optimal placement may not be possible and decision makers need to seek for an appropriate trade-off among the metrics. Although an exhaustive evaluation of all possible placements can be practically performed well for small and medium-sized networks, regarding realistic time and resource restrictions, heuristic approaches are required for large-scale networks. Hence, a heuristic called Multi-Start Hybrid NSGA-II (MHNSGA-II) is introduced which yields faster computation times and needs reasonable memory to perform. The obtained results on several topologies extracted from Internet Topology Zoo showed the efficiency of the proposed approach.
---
paper_title: On the load balanced controller placement problem in Software defined networks

paper_content:

In Software defined networks (SDNs), controller placement is an important problem which will affect the performance of the network directly. At present, there have been some studies on the controller placement problem in SDN from different aspects such as delay, capacity, reliability and load balance. In this paper, the controller placement problem is discussed from the aspect of delay and load balance at the same time. More precisely, for a given topology, we study how to choose locations of the multiple controllers to minimize the average delay or the worst delay of all control paths under the consideration of load balance. The trade-off between delay and load balance is investigated through simulation. The results show that the load of the control plane can be well balanced with only a little increment of the objective delay.
---
paper_title: A Hierarchical K-Means Algorithm for Controller Placement in SDN-Based WAN Architecture

paper_content:

As a novel network architecture, Software Defined Networking (SDN) has been drawing more and more attention. SDN decouples the controller logic from the data plane and it enables the network programmability. Generally in the local area networks (LANs), single controller is sufficient to control the whole network. However the scale of wide area networks (WANs) is always large. Taking into account the latency and reliability, it is necessary to deploy multiple controllers in WANs. Controller placement problem is one of the most important issues in SDN with multiple controllers. In this paper, we propose an algorithm based hierarchical K-means algorithm to solve controller placement problem. In addition, we partition the large network into several single controller SDN domains by our algorithm. To evaluate the effective of our algorithm, we do the experiments in the Internet2 OS3E topology. Experimental results show the partition by our algorithm is more balanced than the optimized K-means algorithm.
---
paper_title: QoS-Guaranteed Controller Placement in SDN

paper_content:

The controller placement problem tries to place $k$ controllers in a given network to optimize performance metrics such as propagation latency, load distribution, network reliability and failure resilience. However, the quality of service (QoS) is always a primary concern of the network operators in the placement of SDN controllers. Since the SDN controllers are responsible to provide services for switches, the response time of controllers is an important QoS parameter of network operators. In this paper, we introduce the QoS-Guaranteed Controller Placement problem: Given a network topology and a response time bound, how many controllers are needed, where to place them, and which switches are assigned to each of the controller. We propose three heuristic algorithms: incremental greedy algorithm, primal-dual-based algorithm and network-partition-based algorithm. The proposed algorithms are tested and compared on the Internet Topology Zoo, a dataset of public available network topologies. Simulation results show that the proposed incremental greedy method slightly outperforms the other two methods on all input topologies.
---
paper_title: Flow setup time aware minimum cost switch-controller association in Software-Defined Networks

paper_content:

Software Defined Networks (SDN) emerged as a new network paradigm to address the customization and flexibility problems in traditional computer networks. In SDNs, a logical centralized programmable controller manages the whole networks by installing rules onto switches. It is widely regarded that one controller is restricted on both performance and scalability. To address these limitations, pioneering researchers advocate deploying multiple controllers in SDNs where each controller is in charge of a set of switches. This raises the switch-controller association problem on one switch shall be managed by which controller. In this paper, we specially investigate minimum cost switch-controller association (MC-SCA) problem on how to minimize the number of controllers needed in an SDN while guaranteeing the flow setup time. A quadratic integer programming model is first proposed and then transformed into an equivalent integer linear programming model to describe the MC-SCA problem, which is then proved as NP-Hard. We further propose a heuristic algorithm and extensively prove its high efficiency via simulations.
---
paper_title: On the placement of controllers for designing a wide area software defined networks

paper_content:

The newly emerged Software Defined Networks (SDN) can apply to Wide Area Network (WAN) for network control and management. To achieve this, a logically centralized but a physically distributed control architecture is normally required. This type of control architecture consists of multiple controllers. For maintaining the global consistency of the network, controller placement is a key issue in a Wide Area SDN. The controller placement problem (CPP) refers to selecting the number and proper positions of the controllers to improve the performance of the SDN control plane. Although various approaches are made to solve CPP for the small and medium-size network, still it requires an alternative solution for a large scale network like WAN. It needs enough time to select the number of controllers and their location, within a limited resource constraint. In this work, we propose two stochastic meta-heuristic techniques for finding optimal locations of the controllers that optimize the latency between the switch to a designated controller. We develop the algorithm for Particle Swarm Optimization and Firefly that solve CPP, with the fitness function as the controller to switch latency, which needs to be minimized. The extensive simulation shows that Firefly provides a better result in terms of computation time and cost that are close to optimal.
---
paper_title: On using bargaining game for Optimal Placement of SDN controllers

paper_content:

In this paper we address the problem of Software Defined Networking (SDN) controller placement in large networks. Indeed, to solve the scalability issue raised by the centralized architecture of SDN, multi-controllers deployment (or distributed controllers system) is envisioned. However, the number and the location of controllers in large networks remain an issue. In this context, several works have been proposed to find the optimal placement of SDN controllers. Most of them consider latency among SDN controllers and switches as the main metric. In this work, we go beyond the state of art by proposing a solution that considers at the same time three critical objectives for the optimal placement of controllers: (i) the latency and communication overhead between switches and controllers; (ii)the latency and communication overhead between controllers; (iii) the guarantee of load balancing between controllers. We then solve the system by using Bargaining Game in order to find a fair trade off between these objectives. Simulation results clearly demonstrate the effectiveness of the proposed solution in finding the optimal placement of controllers that enforces this trade-off.
---
paper_title: The controller placement problem for software-defined networks

paper_content:

With the popularization and spread of SDN, the size of SDN networks is increasing; the controller placement is a key problem in software defined networks (SDNs). In this paper, an optimized controller placement method is proposed, which takes into consideration the load of controllers, co-located deployment and propagation latency to determine the optimal number and location of controllers. Firstly, multi-objective genetic algorithm is used to get the connection relationship of controllers and switches, so the network can be partitioned into several domains. Secondly, minimum delay algorithm is adopted to find an optimal location which has a minimizing sum of the distance to the other points in each domain. Finally, in this article, the results obtained from the analytic and experimental performance can evaluate the benefits that could be achieved by deploying our scheme for the SDN controller placement problem.
---
paper_title: An adaptive heuristic for multi-objective controller placement in software-defined networks

paper_content:

Abstract Software-defined networking paradigm faces many challenges, including reliability, resiliency, scalability, and availability. These challenges can be tackled by carefully selecting placements within the network. However, the evaluation of all placements is only practical for small networks. In this paper, a fast and efficient adaptation of evolutionary algorithms is presented to solve large-scale multi-objective controller placement problems. The presented algorithm requires reasonable memory resource and enjoys a greedy heuristic to generate a high-quality initial population, smart mechanisms to encourage the diversification and intensification, and a new fast Pareto finder. Moreover, a new variant of the problem is developed in which the capacities of controllers and loads of switches are added as constraints. A new constraint handling technique is applied to adapt our algorithm to solve the new problem. Finally, the results on several topologies from Internet Topology Zoo revealed that our presented algorithms outperformed some other efficient algorithms from the literature.
---
paper_title: K*-Means: An Effective and Efficient K-Means Clustering Algorithm

paper_content:

K-means is a widely used clustering algorithm in field of data mining across different disciplines in the past fifty years. However, k-means heavily depends on the position of initial centers, and the chosen starting centers randomly may lead to poor quality of clustering. Motivated by this, this paper proposes an optimized k-means clustering method along with three optimization principles named k*-means. First, we propose a hierarchical optimization principle initialized by k* cluster centers (k* > k) to reduce the risk of randomly seeds selection, and then utilize proposed top-n method to merge the nearest clusters associated with the shortest n edges in each round until the number of clusters reaches at k. Second, we propose a cluster pruning strategy for improving efficiency of k-means by omitting the farther clusters to shrink the adjustable searching space for each point in each iteration. Third, we implement an optimized update theory to optimize the k-means iteration updating, which leverages moved points updating instead of recalculating mean and SSE of cluster to minimize computation cost. Our comprehensive experimental studies, using 2 synthetic datasets and 4 real world datasets from the UCI Machine Learning Repository, demonstrate that our method outperforms state-of-the-art methods in both effectiveness and efficiency.
---
paper_title: NCPSO: A Solution of the Controller Placement Problem in Software Defined Networks

paper_content:

Controller placement is an important problem in software defined networks (SDN). Most of the placement strategies focused on propagation latency, but ignored the load of controllers, which is a critical factor in real networks. In this paper, we propose Network Clustering Particle Swarm Optimization Algorithm (NCPSO), which taking into consideration of the load of controllers, propagation latency and load balancing. By generating diverse individuals with high clustering efficiency and overcoming the disadvantages of PSO used in discrete problem, the NCPSO can solve the controller placement problem better than other algorithms. The evaluation shows that the new algorithm can significantly reduce the number of required controllers, reduce the load of the maximum-load controller, and have a good performance of load balance.
---
paper_title: Optimal controller selection in Software Defined Network using a greedy-SA algorithm

paper_content:

Software Defined Network is one of the most recent Internet technology that manages the large scale network. Both from implementation and performance point of view SDN will improve the next generation networking services. It is important to find a solution to the controller placement problem is remaining a key issue in SDN based architecture. It decides where to place the controllers with a limited amount of resources within the network. This paper illustrates a preliminary work on the controller placement in SDN environment using an existing heuristic technique. More formally, a network is given by a set of elements (either switches or routers) they must be managed by the controller(s), the algorithm finds the number controller(s) require to cover all the network elements within the network in a optimal way. The primary criteria is the distance between all nodes and selected controllers is minimized. Controller's capacity is a constraint of the controller, that restricts a controller to manage an unlimited number of data plane devices. We have proposed and implemented simulated annealing algorithm with greedy heuristic to solve the controller placement problem.
---
paper_title: Hierarchical clustering for an efficient controllers' placement in software defined networks

paper_content:

Controllers' placement is one of the most important concerns that emerged recently to solve scalability and reliability issues of SDN networks. The placement efficiency is influenced by both network operator strategy and the supported services' requirements, which makes more complex the decision-making process. In particular, the need to support QoS-constrained services may guide the controllers' placement in a way to ensure services' efficiency while optimizing the underlying infrastructure. In this paper, we propose a model for the placement of network controllers, and we formulate the optimization problem, which is shown to be NP hard. To provide more flexibility and to avoid time-prohibitive calculations, varied heuristics approaches, considering several metrics, need to be proposed. To that purpose, we propose a hierarchical clustering strategy for the controllers' placement allowing to minimize the number of network controllers while reducing the potential disparity of burden between the different controllers. Besides, the algorithm's structure makes it easy to act on other network parameters to improve the reliability of the SDN network. The results show that the proposed algorithm, despite the great diversity of network topologies, achieves better performance than conventional techniques without increasing significantly the number of controllers.
---
paper_title: An evolutionary controllers' placement algorithm for reliable SDN networks

paper_content:

SDN controllers placement in TelCo networks are generally multi-objective and multi-constrained problems. The solutions proposed in the literature usually model the placement problem by providing a mixed integer linear program (MILP). Their performances are, however, quickly limited for large sized networks, due to the significant increase in the computational delays. In order to avoid the inherent complexity of optimal approaches and the lack of flexibility of heuristics, we propose in this paper a genetic algorithm designed from the NSGA II framework that aims to deal with the controller placement problem. Genetic algorithms can, indeed, be both multi-objective, multi-constraints and can be designed to be computed in parallel. They constitute a real opportunity to find good solutions to this category of problems. Furthermore, the proposed algorithm can be easily adapted to manage dynamic placements scenarios. The goal chosen, in this work, is to maximize the clusters average connectivity and to balance the control's load between clusters, in a way to improve the networks' reliability. The evaluation results on a set of network topologies demonstrated very good performances, which achieve optimal results for small networks.
---
paper_title: Fast failover for control traffic in Software-defined Networks

paper_content:

The Software-defined Network (SDN) design decouples forwarding and control planes, and runs the controlling functions on servers that might be in different physical locations from the forwarding elements. Such separation introduces new challenges to the network resiliency, because disconnection between switches and the controller could disable the forwarding plane. In this work, we analyze resiliency of the connection between control and forwarding planes in SDN. We propose algorithms to improve this resiliency by maximizing the possibility of fast failover—which we achieve through resilience-aware controller placement and control-traffic routing in the network.
---
paper_title: Controller placement strategies for a resilient SDN control plane

paper_content:

Software Defined Networking (SDN) provides efficient network control and management by introducing a logically centralized control plane. However, outsourcing of the control plane intelligence to an SDN controller requires reliable switch-to-controller connection. This paper presents two strategies to address the Reliable Controller Placement (RCP) problem, which protect the control plane against single link and node failures and provide seamless failover by exploiting the principles of resilient routing. The first approach considers that switches have to be connected to a controller over two Disjoint Control Paths (RCP-DCP). The second approach considers that switches have to be connected to two Different Controller Replicas (RCP-DCR) over two disjoint paths. Both approaches are finding working and protection control paths of minimum length to enable fast and efficient failover. The two models have been compared with respect to the unprotected scenario, in terms of control path length, expected control path loss in different failure scenarios and average control path availability. The results show that both models RCP-DCP and RCP-DCR improve significantly the resilience of the control plane, while adding very limited penalty to the average control path length. If link failures are the dominating failures, both RCP-DCP and RCP-DCR offer similar performance and the best strategy depends on the topological characteristics and the number of the controllers in the network. RCP-DCR provides additional protection against controller failures and it shows better performance when node failures are dominating or are comparable to link failures.
---
paper_title: The SDN controller placement problem for WAN

paper_content:

Large networks are always partitioned into several small networks when deploying software defined networking (SDN). The network partitioning with SDN control planes open many unanswered questions such as latency, reliability, and load balancing. This paper opens the investigation by focusing on two specific questions: given a wide-area network topology, how to partition it into several small SDN domains, and where should the controller go in each SDN domain? To answer these questions, we propose a novel approach to efficiently and accurately evaluate SDN controller placement problem for WAN. This approach uses the Spectral Clustering placement algorithm to partition a large network into several small SDN domains. After presenting our metrics of the SDN controller placement problem, we evaluate our approach using the Internet2 topology and other available WAN topologies. For testing purposes we developed a new framework to test the SDN controller in WAN. The results show its effectiveness for the SDN controller placement problem.
---
paper_title: Optimal Model for Failure Foresight Capacitated Controller Placement in Software-Defined Networks

paper_content:

Controller placement is an important problem in software-defined networks. If a controller fails, there may be no controller with enough spare capacity to serve switches of the failed controller, which leads to switches being disconnected from the controller. Even if there are controllers with enough spare capacity, reassigning switches of the failed controller may drastically increase the worst case latency. In this letter, we propose a mathematical model for the capacitated controller placement that plans ahead for the failures to avoid a drastic increase in the worst case latency and disconnections. The objective of our model is to minimize the worst case latency between the switches and their $K{\mathrm{ th}}$ reference controllers. We also introduce a variant of the proposed model that minimizes the worst case latencies with and without failures together. Our simulation results show that the controller placements that plan ahead for the failures result in much lower latency compared with the placement without planning ahead.
---
paper_title: Optimal placement of controllers in a resilient SDN architecture

paper_content:

The SDN (Software Defined Networking) paradigm brings flexibility to the network management and is an enabler to reduce the energy consumption of the networks. However deploying a set of SDN controllers to manage a Wide Area Network is still a challenge as it implies to determine the right number of controllers to install and their locations within the network. In this paper, we give the key performance criteria that should be taken into account to provide a “good” placement in terms of Quality of Service and we propose an integer linear programming formulation of the resilient controller placement problem. This formulation provides the optimal number of controllers and their location while embedding QoS and load balancing constraints for several level of backup controllers.
---
paper_title: On reliability-optimized controller placement for Software-Defined Networks

paper_content:

By decoupling control plane and data plane, Software-Defined Networking (SDN) approach s i m p l i f i e s network management and speeds up network innovations. These benefits have led not only to prototypes, but also real SDN deployments. For wide-area SDN deployments, multiple controllers are often required, and the placement of these controllers becomes a particularly important task in the SDN context. This paper studies the problem of placing controllers in SDNs, so as to maximize the reliability of SDN control networks. We present a novel metric, called expected percentage of control path loss, to characterize the reliability of SDN control networks. We formulate the reliability-aware control placement problem, prove its NP-hardness, and examine several placement algorithms that can solve this problem. Through extensive simulations using real topologies, we show how the number of controllers and their placement influence the reliability of SDN control networks. Besides, we also found that, through strategic controller placement, the reliability of SDN control networks can be significantly improved without introducing unacceptable switch-to-controller latencies.
---
paper_title: Density cluster based approach for controller placement problem in large-scale software defined networkings

paper_content:

Software Defined Networking (SDN) decouples control and data planes. The separation arises a problem known as the controller placement, i.e., how many and where controllers should be deployed. Currently, most works defined this problem as the multi-objective combinatorial optimization problem and used heuristic algorithms to search the optimal solution. However, these heuristic algorithms have the drawback of being easily trapped in local optimal solutions and consuming high time. In this paper, we propose an approach named as Density Based Controller Placement (DBCP), which uses a density-based switch clustering algorithm to split the network into several sub-networks. As switches are tightly connected within the same sub-network and less connected from the switches in other sub-networks, we deploy one controller in each sub-network. In DBCP, the size of each sub-network can be decided by the capacity of the controller deployed. Moreover, the optimal number of controllers is obtained according to the density-based clustering. We evaluate DBCPs performance on a set of 262 publicly available network topologies. The experimental results show that DBCP provides better performance than the state-of-the-art approaches in terms of time consumption, propagation latency, and fault tolerance.
---
paper_title: Link failure aware capacitated controller placement in software defined networks

paper_content:

The latency experienced by the switches in software defined network depends on the number and location of the controllers in the network. The switch to controller latency, in the event of a link failure, increases significantly if the failure of links are not taken into account while determining the placement of controllers in the network. We propose a capacitated controller placement strategy that recovers from a single link failure without significant increase in the worst case switch to controller latency. The goal is to deploy controllers so as minimize the worst case switch to controller latency in the event of a single link failure while satisfying capacity constraints. Moreover, we also propose a model that considers both the worst case latency with and without link failures in the objective function. We evaluated the performance of the proposed models using networks from Internet Topology Zoo and Internet 2 OS3E. Solving our models show that controller placement that plans for a single link failure not only lowers the worst case switch to controller latency with failure but also reduces the maximum and average inter controller latencies.
---
paper_title: Cascade-based attacks on complex networks.

paper_content:

We live in a modern world supported by large, complex networks. Examples range from financial markets to communication and transportation systems. In many realistic situations the flow of physical quantities in the network, as characterized by the loads on nodes, is important. We show that for such networks where loads can redistribute among the nodes, intentional attacks can lead to a cascade of overload failures, which can in turn cause the entire or a substantial part of the network to collapse. This is relevant for real-world networks that possess a highly heterogeneous distribution of loads, such as the Internet and power grids. We demonstrate that the heterogeneity of these networks makes them particularly vulnerable to attacks in that a large-scale cascade may be triggered by disabling a single key node. This brings obvious concerns on the security of such systems.
---
paper_title: On the controller placement for designing a distributed SDN control layer

paper_content:

The software-defined network (SDN) advocates a centralized network control, where a controller manages a network from a global view of the network. Large SDN networks may consist of multiple controllers or controller domains that distribute the network management between them, where each controller has a logically centralized but physically distributed vision of the network. In this context, a key challenge faced by providers is to define a scalable control network that exploits the benefits of SDN when used in conjunction with efficient management strategies. Most of the control layer models proposed are not concerned with controller scalability, because they assume that commercial controllers are scalable in terms of capacity (quantity of flows processed per second). However, it has been demonstrated that overloads and long propagation delays among controllers and controllers-switches can lead to a long response time of the controllers, affecting their ability to respond to network events in a very short time and reducing the reliability of communication. In this work we define the principles for designing a scalable control layer for SDN, and show the desired control layer characteristics that optimize the management of the network. We address these principles from the perspective of the controller placement problem. For this purpose we improve and evaluate our previous approach, the algorithm called k-Critical. K-Critical discovers the minimum number of controllers and their location to create a robust control topology that deals robustly with failures and balances the load among the selected controllers. The results demonstrate the effectiveness of our solution by comparing it with other controller placement solutions. © 2014 IFIP.
---
paper_title: Specialized Heuristics for the Controller Placement Problem in Large Scale SDN Networks

paper_content:

The Software Defined Networking (SDN) concept introduces a paradigm shift in the networking world towards an externalized control plane which is logically centralized. When designing an SDN-based WAN architecture, it is of vital importance to find a feasible solution to the controller placement problem, i.e., to decide where to position a limited amount of resources within the network. In addition to time-independent constraints regarding aspects like scalability, resilience, and control plane communication delays, dynamically changing network conditions like traffic patterns or bandwidth demands need to be considered as well. Consequently, such dynamic environments call for a regular and fast recalculation of placements in order to adapt to the current situation in a timely manner. While an exhaustive evaluation of all possible solutions can be performed within a practically feasible time frame for small and medium-sized networks, such an approach is out of scope for large problem instances which have significantly higher time and memory requirements. Therefore, this work investigates a specialized heuristic, which takes into account a particular set of optimization objectives and returns solutions representing the possible trade-offs between them. Due to its low computation time and acceptable margin of error, this heuristic can be employed by automatic decision systems operating in dynamic environments.
---
paper_title: On reliable controller placements in Software-Defined Networks

paper_content:

In order to deploy fault-tolerant Software-Defined Networks (SDNs), a logically centralized controller must be physically distributed among different devices. In this paper, we focus on determining how many controllers need to be instantiated, where they must be deployed, and what network nodes are under control of each of them, in order to achieve high reliability in the southbound interface between controllers and nodes. For this, we define the fault tolerant controller placement problem and develop a heuristic algorithm that computes placements with (at least) the required reliability. We run such algorithm on a set of 124 publicly available network topologies. The results are thoroughly analyzed and provide insight on the feasibility of achieving fault tolerant SDNs by carefully determining the placement of controllers.
---
paper_title: Towards Controller Placement for robust Software-Defined Networks

paper_content:

The core concept of software-defined network (SDN) is the separation between control plane and date plane. SDN provides a programmatic interface to network control, significantly simplifies network management and improves the efficiency of network utilization. To further improve network performance, scalability and reliability, it is recommended to deploy multiple controllers in SDN. However, network performance would degrade if operators randomly deploy the controllers, especially in the case of failure, e.g., router crashes, fiber cuts, etc. In this paper, we try to optimally place controllers while taking network failures into account. First, we formally define two problems, 1) Controller Placement under Comprehensive Network States (CPCNS) problem; and 2) Controller Placement under Single Link Failure (CPSLF) problem. Secondly, We propose a network states traversal based algorithm, which optimally solve the problem; and further propose another greedy-based algorithm, which can solve the problem in polynomial time. Finally, we evaluate the algorithms using real topologies and empirical data. The results indicate that the new controller placement strategies can significantly improve the performance when link failures happen.
---
paper_title: Capacitated Next Controller Placement in Software Defined Networks

paper_content:

Software defined networking shifts the control plane of forwarding devices to one or more external entities known as controllers. Determining the optimal location of controllers in the network and the assignment of switches to them is widely known as controller placement problem. In case of controller failures, the switches are disconnected from the controller until they are reassigned to other active controllers with enough spare capacity. However, there is a significant upsurge in the worst case latency after the reassignment due to lack of planning for controller failures. In this paper, we propose a controller placement strategy that not only considers reliability and capacity of controllers but also plans ahead for controller failures to avoid repeated administrative intervention, drastic increase in latency and disconnections. It is formulated as a mixed integer linear program. The objective is to minimize the maximum, for all switches, of the sum of the latency from the switch to the nearest controller with enough capacity (first reference controller) and the latency from the first reference controller to its closest controller with enough capacity (second reference controller). We also proposed a generalized model which can be used to minimize the average latency and extended it for multiple controller failures. Furthermore, we presented a simulated annealing heuristic that efficiently solves the problem on large scale networks. The proposed formulation and heuristic are evaluated on various networks from the Internet Topology Zoo. Simulation results show that our proposed method performs better than the controller placement that does not plan ahead for failures.
---
paper_title: Survivor: An enhanced controller placement strategy for improving SDN survivability

paper_content:

In SDN, forwarding devices can only operate correctly while connected to a logically centralized controller. To avoid single-point-of-failure, controller architectures are usually implemented as distributed systems. In this context, recent literature identified fundamental issues, such as device isolation and controller overload, and proposed controller placement strategies to tackle them. However, current proposals have crucial limitations: (i) device-controller connectivity is modeled using single paths, yet in practice multiple concurrent connections may occur; (ii) peaks in the arrival of new flows are only handled on-demand, assuming that the network itself can sustain high request rates; and (iii) failover mechanisms require predefined information, which, in turn, has been overlooked. This paper proposes Survivor, a controller placement strategy that addresses these challenges. The strategy explicitly considers path diversity, capacity, and failover mechanisms at network design. Comparisons to the state-of-the-art on survivable controller placement show that Survivor is superior because (a) path diversity increases the survivability significantly; and (b) capacity-awareness is essential to handle overload during both normal and failover states.
---
paper_title: Optimal Controller Placement Problem in Internet-Oriented Software Defined Network

paper_content:

The feasibility, scalability and performance of Internet-oriented Software Defined Network (SDN) are confronted with severe challenge, so it needs multiple controllers that influence every aspect of SDN performance. An effective placement algorithm of these controllers is especially important. In this paper, we formulate the Multiobjective Optimization Controller Placement (MOCP) problem and focus on maximizing network reliability, maximizing controller load balance ability and minimizing latency between controllers and switches and then solve the optimal selection of controller placement locations, within which nodes are under control of each controller and the optimal distribution of their routing requests among these controllers. We formulate this problem into a mathematical model as the optimization objective function. In order to resolve this model, Adaptive Bacterial Foraging Optimization (ABFO) algorithm is developed on account of the computation complexity according to actual network state. The results show this proposed scheme The results show this proposed scheme has great potential to deal with above optimization objectives efficiently and effectively.
---
paper_title: A min-cover based controller placement approach to build reliable control network in SDN

paper_content:

Software defined network (SDN) develops a centralized control plane to manage the whole network. If the scale of the network is large, it is necessary to deploy multiple distributed controllers. In SDN, a switch can only work by relying on flow tables received from its controller. Therefore, controller placement is an important problem to keep the switches working efficiently and improve the reliability of the control network, which consists of controllers, switches and the communication paths between them. However, the existing controller placement approaches are not effective or do not consider the network reliability and the required delay between switches and controllers at the same time. In order to ensure the reliability of the control network and meet the required propagation delay, a min-cover based controller placement approach is proposed. Two metrics are proposed to measure the reliability of a control network, and the definitions of neighborhood and min-cover are provided, based on which the approach try to use less controllers to achieve the reliability and low delay of the control network while guaranteeing the manageability of the network. Simulations show that min-cover based approach can use as less controllers as possible to ensure the reliability of control network and satisfy the required delay at the same time. Moreover, the approach has steadily good performance in networks of different scales and connectivity.
---
paper_title: Reliability-aware controller placement for Software-Defined Networks

paper_content:

The Software-Defined Network (SDN) approach decouples control and forwarding planes. Such separation introduces reliability design issues of the SDN control network, since disconnection between the control and forwarding planes may lead to severe packet loss and performance degradation. This paper addresses the problem of placing controllers in SDNs, so as to maximize the reliability of control networks. After presenting a metric to characterize the reliability of SDN control networks, several placement algorithms are developed. We evaluate these algorithms and further quantify the impact of controller number on the reliability of control networks using real topologies. Our approach can significantly improve the reliability of SDN control networks without introducing unacceptable latencies.
---
paper_title: Reliability-based controller placement algorithm in software defined networking

paper_content:

Software Defined Networking (SDN) change the routing architecture from ::: distribution to centralization. Then the centralized controller placement ::: becomes an important issue since network delay and synchronization will be ::: affected. In this paper, the problem of controller placement to optimize the ::: network average reliability is studied. We first consider the optimization ::: problem for controller placement under the assumption with the shortest path ::: between controller and switches, and a clustering based optimal controller ::: placement algorithm and sub-optimal algorithm base on greedy algorithm are ::: proposed, respectively. Then, we extend the controller placement problem to ::: more general case with multi-paths between controller and switches. In this ::: case, to reduce the computation complexity, a Reliability Factor is defined ::: to replace the network average reliability. After that, modified clustering ::: based and greedy based algorithms are proposed to make the optimal and ::: sub-optimal solution, respectively. Finally, simulation results demonstrate ::: the performance of the proposed algorithms better than regular placement ::: stratagem with the Internet2 OS3E and the Internet Topology Zoo.
---
paper_title: On the placement of controllers in software-defined networks

paper_content:

Abstract The software-defined network (SDN) approach assumes a logically centralized control plane, which is physically decoupled from the data plane. Since this approach simplifies network management and speeds up network innovations, these benefits have led not just to production-intent prototypes, but real SDN deployments. For wide-area SDN deployments, multiple controllers are often required, and the placement of these controllers influences every aspect of an SDN. Since optimizing every metric is generally an non-deterministic polynomial (NP)-hard problem, it is of great importance to find an efficient controller placement algorithm. In this paper, we develop several placement algorithms to make informed placement decisions, which can be used to maximize the reliability of SDN, since network failures could easily cause disconnections between the control and forwarding planes. These algorithms are evaluated using real topologies. Simulation results show that the controller placement strategies are crucial to SDN performance, and a greedy algorithm provides placement solutions that are close to optimal.
---
paper_title: Capacity-Aware and Delay-Guaranteed Resilient Controller Placement for Software-Defined WANs

paper_content:

Currently, one of the main enablers for network evolution is software-defined networking (SDN), where the control plane is decoupled from the data plane. A controller, as a (logically) centralized entity in the control plane, is the Achilles’ heel of SDN resilience since its failure would affect the proper functioning of the entire network. The resilience of the control plane is strongly linked to the controller placement problem, which deals with the positioning and assignment of controllers to the forwarding devices (i.e., switches). A resilient controller placement problem needs to assign more than one controller to a switch while it satisfies certain quality of service requirements. In this paper, we propose a solution for such a problem that, unlike most of the former studies, takes both the switch-controller /inter-controller latency requirements and the capacity of the controllers into account to meet the traffic load of switches. The proposed algorithms, one of which has a polynomial-time complexity, adopt a clique-based approach in graph theory to find high-quality solutions heuristically. It is evaluated with real wide area network (WAN) topologies and the corresponding results are extensively analyzed. The resultant studies equip the service providers with helpful insights into the design of a resilient software-defined WAN.
---
paper_title: The Energy-Aware Controller Placement Problem in Software Defined Networks

paper_content:

Controller placement is an important problem in software defined networks. Previously, some works addressed the problem by taking into account primary factors, such as propagation delay of control paths and capacity of controllers. Here, the problem is addressed from a novel standpoint of energy consumption, which is modeled as a binary integer program (BIP). In the BIP model, the energy consumption of the network that serves for the control traffic is minimized under the constraints of the delay of control paths and the load of controllers. In consideration of the high complexity of the BIP in large networks, a genetic heuristic algorithm is designed to find an effective sub-optimal solution. Simulation results show that the energy consumption of the heuristic algorithm is close to that of the BIP solution. No more than 4%, additional links are used by the heuristic algorithm if all the links have the same energy consumption.
---
paper_title: GreCo: An Energy Aware Controller Association Algorithm for Software Defined Networks

paper_content:

Software Defined Networks (SDNs) separate the control and data planes of devices to expedite the deployment, configuration and evolution of networks. In this respect, controllers play a key role. In particular, they control the behavior of switches and must do so quickly. This, however, may be at odds with the goal of reducing the energy consumption of a SDN because powering down links may cause controllers to use paths with larger propagation delays. To this end, we address the problem of assigning switches to controllers with the aim of switching off the maximum number of links subject to the following constraints: delay, link and controller load. Experimental results over four well known topologies show energy savings of up to 55% during off peak times.
---
paper_title: QoS-Guaranteed Controller Placement in SDN

paper_content:

The controller placement problem tries to place $k$ controllers in a given network to optimize performance metrics such as propagation latency, load distribution, network reliability and failure resilience. However, the quality of service (QoS) is always a primary concern of the network operators in the placement of SDN controllers. Since the SDN controllers are responsible to provide services for switches, the response time of controllers is an important QoS parameter of network operators. In this paper, we introduce the QoS-Guaranteed Controller Placement problem: Given a network topology and a response time bound, how many controllers are needed, where to place them, and which switches are assigned to each of the controller. We propose three heuristic algorithms: incremental greedy algorithm, primal-dual-based algorithm and network-partition-based algorithm. The proposed algorithms are tested and compared on the Internet Topology Zoo, a dataset of public available network topologies. Simulation results show that the proposed incremental greedy method slightly outperforms the other two methods on all input topologies.
---
paper_title: Flow setup time aware minimum cost switch-controller association in Software-Defined Networks

paper_content:

Software Defined Networks (SDN) emerged as a new network paradigm to address the customization and flexibility problems in traditional computer networks. In SDNs, a logical centralized programmable controller manages the whole networks by installing rules onto switches. It is widely regarded that one controller is restricted on both performance and scalability. To address these limitations, pioneering researchers advocate deploying multiple controllers in SDNs where each controller is in charge of a set of switches. This raises the switch-controller association problem on one switch shall be managed by which controller. In this paper, we specially investigate minimum cost switch-controller association (MC-SCA) problem on how to minimize the number of controllers needed in an SDN while guaranteeing the flow setup time. A quadratic integer programming model is first proposed and then transformed into an equivalent integer linear programming model to describe the MC-SCA problem, which is then proved as NP-Hard. We further propose a heuristic algorithm and extensively prove its high efficiency via simulations.
---
paper_title: Expansion Model for the Controller Placement Problem in Software Defined Networks

paper_content:

A key concern in the deployment of Software Defined Networks (SDN) is the location of the controller. One issue network operators will have to face is how to expand their network at minimum cost in order to meet the growing number of users and services. To that end, this letter introduces a new expansion model for the controller placement problem in SDN. More precisely, given a current network design and a list of switches to be added to the network, the model will find how the network should be re-organized such that the update cost is minimized. Since the expansion problem is a generalisation of the planning problem, the model proposed in this letter can be used to plan a new network from scratch or update any existing networks.
---
paper_title: Scalable SDN architecture with distributed placement of controllers for WAN

paper_content:

Summary ::: By separating control plane from data plane, software-defined network (SDN) adopts centralized controllers to manage data flows in the network. Nevertheless, the rapid growth of network service traffic requires a large number of controllers, reducing network performance due to the scalability constraint. Therefore, we consider distributed placement of controllers in wide-area network to construct a scalable SDN architecture, by taking service traffics, traffic propagation delay, and load balancing into account. Specifically, we first partition the network into several small sections (named SDN domains) and then place the least amount of controllers to a proper node in each domain. The architecture provides a control channel to deliver requested messages for each SDN domain, so it reduces the link delay (which is assumed to be proportional to the physical length of the link) between switches and SDN controllers. Unfortunately, it also introduces extra latency among controller sets at different SDN domain. Accordingly, we formulate an integer linear program to optimize network cost and performance by considering all those conflicting factors and propose an efficient heuristic algorithm called distributed SDN placement to solve the problem. Simulation results confirm that our proposed heuristic distributed SDN placement can achieve suboptimal solutions as compared with the integer linear program results.
---
paper_title: Balancing traffic load for devolved controllers in data center networks

paper_content:

Using a centralized controller for resource management and coordination is a common practice in cloud services. For scalability concern, in recent literature a novel approach, namely devolved controllers, was proposed. Such approach splits the network into regions, while each controller only monitors a portion of the traffic. This technique alleviates scalability issue, but brings other critical problems, such as unbalanced work load among controllers and reconfiguration complexities. In this paper, we investigate the usage of devolved controllers for large-scale data centers, and design a new scheme to overcome shortcomings, and to improve system performance. We first define Load Balancing problem for Devolved Controllers (LBDC), and prove its NP-completeness. For LBDC, we design an f-approximation, where f is the largest number of potential controllers for a switch in the network. We also propose both centralized and distributed approaches to solve LBDC time effectively. The numerical results validate our designs, which become a solution to manage and coordinate large-scale data centers.
---
paper_title: BalCon: A Distributed Elastic SDN Control via Efficient Switch Migration

paper_content:

Scalability and reliability are among the main concerns in large-scale Software Defined Networking (SDN) application scenarios. A common approach is to use multiple distributed controllers, each managing one static partition of the network. In this paper, we show that dynamic mapping can improve efficiency in managing traffic load variations. We then propose BalCon (Balanced Controller): an algorithmic solution designed to tackle and reduce the load imbalance among SDN controllers through proper SDN switch migrations. Simulations demonstrate that BalCon is lightweight from the computational point of view and reduces the load imbalance among SDN controllers (expressed as variance) by 40% by migrating only a small number of switches. We also built a realistic prototype of SDN controller, BalConController, based on the open-source SDN framework RYU.
---
paper_title: On Multiple Controller Mapping in Software Defined Networks With Resilience Constraints

paper_content:

We propose an effective switch-controller mapping scheme for distributed controller architectures in software defined networks. Our scheme maps a switch to multiple controllers and distributes flow setup requests among them to minimize flow setup time, satisfying the resilience constraint, which requires that a specified fraction of setup requests at each switch is not affected upon a controller failure. We develop an optimization formulation for the problem and compare our scheme against the single controller mapping. The results show that our scheme reduces flow setup time, provides better fairness among switches and that it is more stable against dynamic traffic fluctuations.
---
paper_title: A load distribution scheme over multiple controllers for scalable SDN

paper_content:

In this paper, we propose a load distribution scheme on a per-flow basis over multiple controllers in SDN (Software-Defined Networking). Specifically, when the capacity of a controller reaches a threshold, the controller makes incoming messages be migrated to other controllers to prevent them from being blocked. Analytical results show that our scheme has lower blocking probability and higher controller capacity utilization ratio than the conventional scheme.
---
paper_title: Traffic Load Balancing Schemes for Devolved Controllers in Mega Data Centers

paper_content:

In most existing cloud services, a centralized controller is used for resource management and coordination. However, such infrastructure is gradually not sufficient to meet the rapid growth of mega data centers. In recent literature, a new approach named devolved controller was proposed for scalability concern. This approach splits the whole network into several regions, each with one controller to monitor and reroute a portion of the flows. This technique alleviates the problem of an overloaded single controller, but brings other problems such as unbalanced work load among controllers and reconfiguration complexities. In this paper, we make an exploration on the usage of devolved controllers for mega data centers, and design some new schemes to overcome these shortcomings and improve the performance of the system. We first formulate Load Balancing problem for Devolved Controllers (LBDC) in data centers, and prove that it is NP-complete. We then design an $f$ -approximation for LBDC, where $f$ is the largest number of potential controllers for a switch in the network. Furthermore, we propose both centralized and distributed greedy approaches to solve the LBDC problem effectively. The numerical results validate the efficiency of our schemes, which can become a solution to monitoring, managing, and coordinating mega data centers with multiple controllers working together.
---
paper_title: DHA: Distributed decisions on the switch migration toward a scalable SDN control plane

paper_content:

Distributed control plane is a promising approach to a scalable software-defined networking (SDN). However, traffic changes could incur load imbalance among individual controllers. Live migration of switches from controllers that are overloaded to those that are underutilized may be a solution to handle peak switch traffic using available control resource. Such migration has to be performed with a well-defined mechanism to fully utilize the available resource of controllers. In this paper, we study a scalable control mechanism to decide which switch and where it should be migrated for a balanced control plane, and we define it as switch migration problem (SMP). The main contributions of this paper are as follows. First, we define a SDN model to describe the relation between the controllers and switches from the view of loads. Based on this model, we formulate SMP as a network utility maximization (NUM) problem with the objective of serving more requests under the available control resource. Second, we design a synthesizing distributed algorithm for SMP — distributed hopping algorithm (DHA), by approximating our optimal objective via Log-Sum-Exp function. In such DHA, individual controller performs algorithmic procedure independently. With the solution space F, we prove that the optimal gap caused by approximation is bounded by 1 over βlog|F|, and the DHA procedure is equal to an implementation of a time-reversible markov chain process. Finally, the results are corroborated by several numerical simulations.
---
paper_title: Dynamic switch migration towards a scalable SDN control plane

paper_content:

Summary ::: Distributed control plane is a promising approach to scalable software-defined networking (SDN). Live migration of switches from controllers that are overloaded to those that are underutilized may be a solution to handle peak switch traffic using available control resource. However, such migration has to be performed with a well-designed mechanism to fully utilize available resources in all three resource dimensions: CPU, bandwidth, and memory. In this article, we first provide a resource model for SDN and reduce the switch migration decision to a centralized resource utilization maximization problem under constraints of CPU, bandwidth, and memory. Second, we show that the problem of maximizing resource utilization in an SDN is equivalent to that of maximizing game players' profits in the context of non-cooperative game theory. Taking controllers and switches as game players and commodities respectively, the player policy is how to migrate switches among the control plane. Finally, we implement a proof of concept, called GAME-Switch Migration (GAME-SM). The numerical experiments using Mininet emulator validate nice properties of our game model in enhancing the performance of control plane in SDN. Copyright © 2016 John Wiley & Sons, Ltd.
---
paper_title: Use of Devolved Controllers in Data Center Networks

paper_content:

In a data center network, for example, it is quite often to use controllers to manage resources in a centralized manner. Centralized control, however, imposes a scalability problem. In this paper, we investigate the use of multiple independent controllers instead of a single omniscient controller to manage resources. Each controller looks after a portion of the network only, but they together cover the whole network. This therefore solves the scalability problem. We use flow allocation as an example to see how this approach can manage the bandwidth use in a distributed manner. The focus is on how to assign components of a network to the controllers so that (1) each controller only need to look after a small part of the network but (2) there is at least one controller that can answer any request. We outline a way to configure the controllers to fulfill these requirements as a proof that the use of devolved controllers is possible. We also discuss several issues related to such implementation.
---
paper_title: Load balancing for multiple controllers in SDN based on switches group

paper_content:

Software-Defined Networking (SDN) develops a centralized control plane to manage the whole network, but the traditional centralized control plane suffers from the issues of reliability and scalability. Although some methods solves the issues, they do not balance load among controllers. In this paper, we propose a load balancing mechanism based on switches group for multiple controllers. The mechanism not only balances the load among controllers, but also solves the load oscillation and improves time efficiency. Experiments based on floodlight show that our mechanism can improve network balancing and the time efficiency, at same time, avoid load oscillation problem among controllers.
---
paper_title: Modeling flow setup time for controller placement in SDN: Evaluation for dynamic flows

paper_content:

Software-Defined Networking (SDN) controllers are network entities that act as strategic control points in an SDN network. Controller placement studies mostly aim at optimizing network performance in terms of control latency, reliability and resilience, given network characteristics that are static. Yet dynamic traffic conditions, if not adapted by the controller placement properly, may cause high end-to-end flow setup time. For reactive controllers, the end-to-end flow setup time of a flow implies the difference between sending time at the source and receiving time at the sink of the first packet in that flow. Therefore, end-to-end flow setup time indicates the amount of time needed to set up forwarding rules in all involved switches and acts as a primary concern in terms of service establishment of network operators. In this paper, we analyze the controller placement for dynamic traffic flows based on a combined controller placement model: controller locations and switch-to-controller assignments are simultaneously optimized for minimum average flow setup time with respect to different traffic conditions inside the network. Linearization method is applied to transform the problem into a Mixed Integer Programming (MIP) problem which can be solved optimally. Two derivatives are also presented for comparison, one optimizing only controller locations and the other optimizing only switch-to-controller assignments. Our simulations cover two real network topologies and we explain the effects of the models have on the flow setup time with respect to dynamic flows. For low flow densities, the controller placement that adapts to flows could reduce the average flow setup time by about 50% compared to the static placement. However, when densities are high, the need of changing controller placement to guarantee flow setup performance is marginal.
---
paper_title: Dynamic Controller Provisioning in Software Defined Networks

paper_content:

Software Defined Networking (SDN) has emerged as a new paradigm that offers the programmability required to dynamically configure and control a network. A traditional SDN implementation relies on a logically centralized controller that runs the control plane. However, in a large-scale WAN deployment, this rudimentary centralized approach has several limitations related to performance and scalability. To address these issues, recent proposals have advocated deploying multiple controllers that work cooperatively to control a network. Nonetheless, this approach drags in an interesting problem, which we call the Dynamic Controller Provisioning Problem (DCPP). DCPP dynamically adapts the number of controllers and their locations with changing network conditions, in order to minimize flow setup time and communication overhead. In this paper, we propose a framework for deploying multiple controllers within an WAN. Our framework dynamically adjusts the number of active controllers and delegates each controller with a subset of Openflow switches according to network dynamics while ensuring minimal flow setup time and communication overhead. To this end, we formulate the optimal controller provisioning problem as an Integer Linear Program (ILP) and propose two heuristics to solve it. Simulation results show that our solution minimizes flow setup time while incurring very low communication overhead.
---
paper_title: Optimal controller placement in Software Defined Networks (SDN) using a non-zero-sum game

paper_content:

In this paper, we discuss optimal controller placement for Software Defined Networks (SDN) and propose a non-zero-sum game based distributed technique. Our proposed technique is a simple and low-complexity solution which runs in real-time. This can be implemented as an optimization engine at each SDN controller. The optimization engine at each controller computes a payoff function and compares its own payoff value with that of neighbors and takes appropriate decisions such that either new controllers should be added, or existing controllers should be deleted or offloading should be performed between controllers dynamically. We have conducted extensive simulations and verified the usability of the proposed scheme. We also propose a deployment framework which can be implemented using OpenFlow enabled platforms. Use of this technique not only can improve Quality of Services (QoS - minimum packet drops and delay) but also can save cost of deployment and operation.
---
paper_title: Revisiting the controller placement problem

paper_content:

The controller placement problem (CPP) is one of the key challenges of software defined networks to increase performance. Given the locations of switches, CPP consists of choosing the controller locations that minimize the latency between switches and controllers. In its current form, however, CPP assumes a fixed traffic and no existing solutions adapt the placement to the load. In this paper, we introduce the dynamic controller placement problem that consists of (i) determining the locations of controller modules to bound communication latencies, and of (ii) determining the number of controllers per module to support the load. We propose, LiDy, a solution that combines a controller placement algorithm with a dynamic flow management algorithm. We evaluate the latency and the controller utilization of LiDy on sparse and dense regions. Our results show that, in all settings, LiDy achieves a higher utilization than the most recent controller placement solution.
---
paper_title: A Switch Migration-Based Decision-Making Scheme for Balancing Load in SDN

paper_content:

Elastic scaling and load balancing with efficient switch migration are critical to enable the elasticity of software-defined networking (SDN) controllers, but learning how to improve migration efficiency remains a difficult problem. To address this issue, a switch migration-based decision-making (SMDM) scheme is put forward that could be made aware of the load imbalance by a switch migration trigger metric; the migration efficiency model for this scheme is built to make a tradeoff between migration costs and the load balance rate. An efficiency-aware switch migration algorithm based on greedy method is designed to utilize the migration efficiency model and thus guide the choice of possible migration actions. We implement a proof of the scheme and present a numerical evaluation using Mininet emulator to demonstrate the effectiveness of our proposal.
---
paper_title: Elastic Switch Migration for Control Plane Load Balancing in SDN

paper_content:

Software-defined network (SDN) provides a solution for the scalable network framework with decoupled control and data plane. Migrating switches can balance the resource utilization of controllers and improve network performance. Switch migration problem has to date been formulated as a resource utilization maximization problem to address the scalability of the control plane. However, this problem is NP-hard with high-computational complexities and without addressing the security challenges of the control plane. In this paper, we propose a switch migration method, which interprets switch migration as a signature matching problem and is formulated as a 3-D earth mover’s distance model to protect strategically important controllers in the network. Considering the scalability, we further propose a heuristic method which is time-efficient and suitable to large-scale networks. Simulation results show that our proposed methods can disguise strategically important controllers by diminishing the difference of traffic load between controllers. Moreover, our proposed methods can significantly relieve the traffic pressure of controllers and prevent saturation attacks.
---
paper_title: The Earth Mover's Distance as a Metric for Image Retrieval

paper_content:

We investigate the properties of a metric between two distributions, the Earth Mover's Distance (EMD), for content-based image retrieval. The EMD is based on the minimal cost that must be paid to transform one distribution into the other, in a precise sense, and was first proposed for certain vision problems by Peleg, Werman, and Rom. For image retrieval, we combine this idea with a representation scheme for distributions that is based on vector quantization. This combination leads to an image comparison framework that often accounts for perceptual similarity better than other previously proposed methods. The EMD is based on a solution to the transportation problem from linear optimization, for which efficient algorithms are available, and also allows naturally for partial matching. It is more robust than histogram matching techniques, in that it can operate on variable-length representations of the distributions that avoid quantization and other binning problems typical of histograms. When used to compare distributions with the same overall mass, the EMD is a true metric. In this paper we focus on applications to color and texture, and we compare the retrieval performance of the EMD with that of other distances.
---
paper_title: A Switch Migration-Based Decision-Making Scheme for Balancing Load in SDN

paper_content:

Elastic scaling and load balancing with efficient switch migration are critical to enable the elasticity of software-defined networking (SDN) controllers, but learning how to improve migration efficiency remains a difficult problem. To address this issue, a switch migration-based decision-making (SMDM) scheme is put forward that could be made aware of the load imbalance by a switch migration trigger metric; the migration efficiency model for this scheme is built to make a tradeoff between migration costs and the load balance rate. An efficiency-aware switch migration algorithm based on greedy method is designed to utilize the migration efficiency model and thus guide the choice of possible migration actions. We implement a proof of the scheme and present a numerical evaluation using Mininet emulator to demonstrate the effectiveness of our proposal.
---
paper_title: Optimal controller placement in Software Defined Networks (SDN) using a non-zero-sum game

paper_content:

In this paper, we discuss optimal controller placement for Software Defined Networks (SDN) and propose a non-zero-sum game based distributed technique. Our proposed technique is a simple and low-complexity solution which runs in real-time. This can be implemented as an optimization engine at each SDN controller. The optimization engine at each controller computes a payoff function and compares its own payoff value with that of neighbors and takes appropriate decisions such that either new controllers should be added, or existing controllers should be deleted or offloading should be performed between controllers dynamically. We have conducted extensive simulations and verified the usability of the proposed scheme. We also propose a deployment framework which can be implemented using OpenFlow enabled platforms. Use of this technique not only can improve Quality of Services (QoS - minimum packet drops and delay) but also can save cost of deployment and operation.
---
paper_title: Revisiting the controller placement problem

paper_content:

The controller placement problem (CPP) is one of the key challenges of software defined networks to increase performance. Given the locations of switches, CPP consists of choosing the controller locations that minimize the latency between switches and controllers. In its current form, however, CPP assumes a fixed traffic and no existing solutions adapt the placement to the load. In this paper, we introduce the dynamic controller placement problem that consists of (i) determining the locations of controller modules to bound communication latencies, and of (ii) determining the number of controllers per module to support the load. We propose, LiDy, a solution that combines a controller placement algorithm with a dynamic flow management algorithm. We evaluate the latency and the controller utilization of LiDy on sparse and dense regions. Our results show that, in all settings, LiDy achieves a higher utilization than the most recent controller placement solution.
---
paper_title: Robust Controller Placement and Assignment in Software-Defined Cellular Networks

paper_content:

Software-defined cellular networks (SDCN) have been recently introduced to enable flexible cellular network design that facilitates fulfilling 5G design requirements. Placement of controllers within the SDCN plays a crucial role in optimizing its performance. In this paper, we study the controller placement problem in SDCN, considering the uncertainty in cellular user locations. Specifically, our contributions are as follows. First, we develop C3P2, a static joint stochastic controller placement and evolved node B (eNB)- controller assignment problem. The objective of C3P2 is to minimize the number of controllers needed to control all eNBs, while ensuring that the response time to each eNB will exceed delta seconds with probability less than 1 - beta. Second, we develop CPPA, a joint stochastic controller placement and adaptive eNB controller assignment problem. In contrast to C3P2, in CPPA the eNB controller assignment adapts to variations in the eNB request rates, resulting from the variations in the cellular user locations. Finally, we use sample average approximation combined with various linearization techniques to solve and evaluate C3P2 and CPPA under various system parameters. Our results demonstrate the advantages of (i) joint compared to sequential optimization, (ii) stochastic compared to deterministic optimization, and (iii) adaptive compared to static optimization.
---
paper_title: CROWD: An SDN Approach for DenseNets

paper_content:

Traffic demands in mobile networks are expected to grow substantially in the next years, both in terms of total traffic volume and of bit-rate required by individual users. It is generally agreed that the only possible solution to overcome the current limitations is to deploy very dense and heterogeneous wireless networks, which we call DenseNets. However, simply scaling down existing networks by orders of magnitude, as required to fulfill traffic forecasts, is not possible because of the following constraints: i) the bottleneck would shift from the Radio Access Network (RAN) to the backhaul, ii) control overhead, especially related to mobility management, would make the network collapse, iii) operational costs of the network would be unbearable due to energy consumption and maintenance/optimisation. In this paper, Software Defined Network (SDN) for mobile networks is claimed as the paradigm shift necessary to tackle adequately the above challenges. A novel architecture is proposed, which supports DenseNets made of overlapping LTE and WLAN cells connected to the core network via a reconfigurable backhaul.
---
paper_title: SoftCell: scalable and flexible cellular core network architecture

paper_content:

Cellular core networks suffer from inflexible and expensive equipment, as well as from complex control-plane protocols. To address these challenges, we present SoftCell, a scalable architecture that supports fine-grained policies for mobile devices in cellular core networks, using commodity switches and servers. SoftCell enables operators to realize high-level service policies that direct traffic through sequences of middleboxes based on subscriber attributes and applications. To minimize the size of the forwarding tables, SoftCell aggregates traffic along multiple dimensions---the service policy, the base station, and the mobile device---at different switches in the network. Since most traffic originates from mobile devices, SoftCell performs fine-grained packet classification at the access switches, next to the base stations, where software switches can easily handle the state and bandwidth requirements. SoftCell guarantees that packets belonging to the same connection traverse the same sequence of middleboxes in both directions, even in the presence of mobility. We demonstrate that SoftCell improves the scalability and flexibility of cellular core networks by analyzing real LTE workloads, performing micro-benchmarks on our prototype controller as well as large-scale simulations.
---
paper_title: An Efficient Online Algorithm for Dynamic SDN Controller Assignment in Data Center Networks

paper_content:

Software defined networking is increasingly prevalent in data center networks for it enables centralized network configuration and management. However, since switches are statically assigned to controllers and controllers are statically provisioned, traffic dynamics may cause long response time and incur high maintenance cost. To address these issues, we formulate the dynamic controller assignment problem (DCAP) as an online optimization to minimize the total cost caused by response time and maintenance on the cluster of controllers. By applying the randomized fixed horizon control framework, we decompose DCAP into a series of stable matching problems with transfers, guaranteeing a small loss in competitive ratio. Since the matching problem is NP-hard, we propose a hierarchical two-phase algorithm that integrates key concepts from both matching theory and coalitional games to solve it efficiently. Theoretical analysis proves that our algorithm converges to a near-optimal Nash stable solution within tens of iterations. Extensive simulations show that our online approach reduces total cost by about 46%, and achieves better load balancing among controllers compared with static assignment.
---
paper_title: Joint Placement of Controllers and Gateways in SDN-Enabled 5G-Satellite Integrated Network

paper_content:

Leveraging the concept of software-defined network (SDN), the integration of terrestrial 5G and satellite networks brings us lots of benefits. The placement problem of controllers and satellite gateways is of fundamental importance for design of such SDN-enabled integrated network, especially, for the network reliability and latency, since different placement schemes would produce various network performances. To the best of our knowledge, it is an entirely new problem. Toward this end, in this paper, we first explore the satellite gateway placement problem to obtain the minimum average latency. A simulated annealing based approximate solution (SAA), is developed for this problem, which is able to achieve a near-optimal latency. Based on the analysis of latency, we further investigate a more challenging problem, i.e., the joint placement of controllers and gateways, for the maximum network reliability while satisfying the latency constraint. A simulated annealing and clustering hybrid algorithm (SACA) is proposed to solve this problem. Extensive experiments based on real world online network topologies have been conducted and as validated by our numerical results, enumeration algorithms are able to produce optimal results but having extremely long running time, while SAA and SACA can achieve approximate optimal performances with much lower computational complexity.
---
paper_title: On Stochastic Controller Placement in Software-Defined Wireless Networks

paper_content:

Software-defined networking (SDN) abstracts and centralizes the network control functions in a software entity that runs on a server, known as SDN controller. The controller needs to respond to its controlled elements in a strictly timely manner, and the controller placement has a prominent effect on its response time. Originally, all SDN architectures assumed a physical wired connection between the SDN controller and its controlled elements, and the controller placement problem (CPP) has been only studied under such wired settings. Recently, novel SDN architectures have been proposed in which a direct wireless connection is assumed between the controller and its controlled elements. In this paper, we consider the 'wireless CPP,' when the link between the controller and the controlled element is wireless. Specifically, our contributions are as follows. First, we propose two joint controller placement and assignment formulations, assuming wired links between the controllers and their controlled elements; the first formulation considers an average response time constraint, whereas the second one considers a per-link response time constraint. Then, using chance- constrained stochastic programming (CCSP), we extend our formulation to the case when the links between the controllers and their controlled elements are wireless. Finally, we evaluate our joint placement and assignment schemes under various system parameters. Our results demonstrate the advantage of our joint scheme, in terms of reducing the required number of controllers, compared to a recent sequential assignment and placement scheme in the literature. They also show the ability of our CCSP-based scheme in probabilistically satisfying the controllers response time constraints.
---
paper_title: Optimizing flow setup time in software defined network

paper_content:

To address the issues of scalability in Software Defined Network (SDN), researchers have proposed a distributed control plane, where controllers are physically distributed but logically centralized. Network traffic is dynamic with respect to time and space, however, the key limitation of state-of-art work is that they make the unrealistic assumption that the traffic matrix is static. In this work, we assume that the network traffic is dynamic and to optimize the load on the SDN controller, we propose adaptive mapping between switches and the controller. The objective is to minimize the flow setup time as well as reduce the cost of reassignment.
---
paper_title: Controller placement for maximum throughput under delayed CSI

paper_content:

The performance of wireless scheduling algorithms directly depends on the availability and accuracy of network state information at the scheduler. As channel state updates must propagate across the network, they are delayed as they arrive at the controller. The location of the controller directly affects the attainable throughput, as its dictates the delays with which information is obtained to make scheduling decisions. In this paper, we analyze the optimal controller placement over a network in which CSI delays are proportional to distance. We propose a dynamic controller placement framework, in which the controller is relocated using delayed queue length information at each node, and scheduling is done using delayed QLI and CSI. We characterize the throughput region under such policies, and find a policy which stabilizes the system for all arrival rates within the throughput region.
---
paper_title: Flow processing-aware controller placement in wireless DenseNets

paper_content:

The traffic demand in wireless access networks has grown substantially in recent years and is expected to continue doing so, both in terms of total volume and data rate required by individual users. To overcome the current limitations of wireless access networks, operators already push for very dense and heterogeneous wireless networks, commonly known as DenseNets. Efficiently controlling DenseNets is a task for current research, as simply scaling existing networks by orders of magnitude brings along several problems, e.g. increased energy consumption and the explosion of signaling. Further, new innovations such as Network Functions Virtualization (NFV) which target the operation expenses for networks with a large variety of proprietary hardware appliances, reveal that data flow processing should not be neglected in this research domain. Software-Defined Networking (SDN), which separates the control plane and the data forwarding plane, has been identified as a promising approach for an efficient control of DenseNets. However, the controllers of classic SDN approaches are confined to the routing of data flows, while the support of sophisticated processing mechanisms, e.g. NFV or Coordinated Multi-Point transmission (CoMP), is not considered. Data flow processing imposes many requirements on data rate, latency and processing capacity. Hence, an adequate allocation of the locations for data processing in a network is a challenging task and crucial for network performance. In this paper we propose our flow processing-aware controller placement framework that takes into account data flow processing and control applications, both enhancing the SDN architecture specifically for DenseNets.
---
paper_title: On using bargaining game for Optimal Placement of SDN controllers

paper_content:

In this paper we address the problem of Software Defined Networking (SDN) controller placement in large networks. Indeed, to solve the scalability issue raised by the centralized architecture of SDN, multi-controllers deployment (or distributed controllers system) is envisioned. However, the number and the location of controllers in large networks remain an issue. In this context, several works have been proposed to find the optimal placement of SDN controllers. Most of them consider latency among SDN controllers and switches as the main metric. In this work, we go beyond the state of art by proposing a solution that considers at the same time three critical objectives for the optimal placement of controllers: (i) the latency and communication overhead between switches and controllers; (ii)the latency and communication overhead between controllers; (iii) the guarantee of load balancing between controllers. We then solve the system by using Bargaining Game in order to find a fair trade off between these objectives. Simulation results clearly demonstrate the effectiveness of the proposed solution in finding the optimal placement of controllers that enforces this trade-off.
---
paper_title: Wireless Software Defined Networks: Challenges and opportunities

paper_content:

Software Defined Networking (SDN) is a network paradigm that relies on the separation of the control and forwarding planes in IP networks. The interconnection devices take forwarding decisions solely based on a set of multi-criteria policy rules defined by external applications called controllers. It is possible to let multiple controllers manage each element of a given network, which allows to create independent networks on the same physical infrastructure. If the implementation of SDN in wired networks is relatively easy, it poses a lot of radio-specific problems in the wireless domain, related to link isolation or to channel estimation. Nevertheless, the wireless domain is also where SDN bears the highest potential, as it provides functions that could foster a better collaboration between access points to reduce interferences or to enhance security. This paper reviews some benefits of wireless SDN and exposes related challenges.
---
paper_title: Efficient flow processing-aware controller placement in future wireless networks

paper_content:

Future wireless access networks include a broad variety of applications. Examples for these range from network applications meant to optimize the usage of resources, e.g. Coordinated Multi-Point (CoMP) transmission, over coordinating network mechanisms for Inter-Cell Interference Coordination (ICIC) to virtualized applications to gain flexibility and save hardware costs such as Virtual Network Functions (VNFs). Still, there is one common thread for all these functions: the necessity for data flow processing. Data flow processing imposes many requirements on network resources and a good allocation of the locations for data processing in a network is a challenging task and crucial for network performance. Hence, data flow processing is a significant point to be considered when searching for efficient control architectures for future wireless networks. We propose a flow processing-aware controller placement framework, which introduces data flow processing to the research domain of future wireless network control and enhances the classic Software-Defined Networking (SDN) view of reducing network control to just packet forwarding. We have developed an optimization problem and a heuristic algorithm that verify the practical feasibility of flow processing-aware controller placement. Our evaluations reveal that the heuristic algorithm performs close to optimal, while reducing the runtime by about four orders of magnitude compared to the optimization problem and thus providing acceptable runtime for real-world application.
---
paper_title: Wireless controller placement problem

paper_content:

Software Defined Networking decouples the control and data planes. The response time and quality of service of the controllers is a key aspect in implementing the Software Defined Networking paradigm. A wireless Software Defined Networking control plane is even more challenging. Many radio communication problems arise in modeling the wireless east west bound and southbound interfaces. Wireless networks feature many unique components and metrics that often do not exist in wired networks: separate control transport may intensify on the latency within the wireless data plain with additional interference. Obviously, Wi-Fi based control plane has its implications, e.g., higher packet loss and hidden or exposed terminals. Moreover, wireless links can be operated in a number of different wireless characteristics, e.g., transmission rates and power settings. In this paper we define and solve the known Controllers Placement Problem, but for a Wi-Fi based control plane: the Wireless Control Placement Problem. We define the metrics for an effective wireless controllers placement and propose a multi-objective optimization for the Wireless Controller Placement Problem. Then we evaluate the influence of the variant metrics on the number of controllers and their locations.
---
paper_title: Wireless Mesh Software Defined Networks (wmSDN)

paper_content:

In this paper we propose to integrate Software Defined Networking (SDN) principles in Wireless Mesh Networks (WMN) formed by OpenFlow switches. The use of a centralized network controller and the ability to setup arbitrary paths for data flows make SDN a handy tool to deploy fine-grained traffic engineering algorithms in WMNs. However, centralized control may be harmful in multi-hop radio networks formed by commodity devices (e.g. Wireless Community Networks), in which node isolation and network fragmentation are not rare events. To exploit the pros and mitigate the cons, our framework uses the traditional OpenFlow centralized controller to engineer the routing of data traffic, while it uses a distributed controller based on OLSR to route: i) OpenFlow control traffic, ii) data traffic, in case of central controller failure. We implemented and tested our Wireless Mesh Software Defined Network (wmSDN) showing its applicability to a traffic engineering use-case, in which the controller logic balances outgoing traffic among the Internet gateways of the mesh. Albeit simple, this use case allows showing a possible usage of SDN that improves user performance with respect to the case of a traditional mesh with IP forwarding and OLSR routing. The wmSDN software toolkit is formed by Open vSwitch, POX controller, OLSR daemon and our own Bash and Python scripts. The tests have been carried out in an emulation environment based on Linux Containers, NS3 and CORE tools.
---
paper_title: On Using SDN in 5G: The Controller Placement Problem

paper_content:

To integrate Software Defined Networking (SDN) in the envisioned 5G system, a separation of the control and user data plane functions of the Evolved Packet Core (EPC) is required. This separation will impact mainly the functions available at the Serving GateWay (SGW) and Packet data GateWay (PGW) elements, and will result in two new entities; i.e. the S/PGW-C and S/PGW-U (PGW-C and PGW-U). The S/PGW-C integrates all the control plane functions (such as signaling and tunnel creation), while S/PGW-U contains only forwarding functions. The S/PGW-C will control the S/PGW-U in order to forward the UE traffic to the appropriate destinations by enforcing rules e.g., using the Openflow protocol. Usually, the S/PGW-C will run as a Virtual Network Function (VNF) running on a Virtual Machine or Container instantiated over a federated cloud. In this paper, we focus on the problem of the SGW-C placement, where a tradeoff is needed between reducing the SGW relocation frequency and balancing the traffic load among the underlying SGW-C VNFs. We formulate this problem using optimisation models, and a fair solution (i.e. Pareto optimal) is derived using Nash Bargaining game and the threat point.
---
paper_title: SoftAir: a software defined networking architecture for 5G wireless systems

paper_content:

Abstract One of the main building blocks and major challenges for 5G cellular systems is the design of flexible network architectures which can be realized by the software defined networking paradigm. Existing commercial cellular systems rely on closed and inflexible hardware-based architectures both at the radio frontend and in the core network. These problems significantly delay the adoption and deployment of new standards, impose significant challenges in implementing and innovation of new techniques to maximize the network capacity and accordingly the coverage, and prevent provisioning of truly- differentiated services which are able to adapt to growing and uneven and highly variable traffic patterns. In this paper, a new software-defined architecture, called SoftAir, for next generation (5G) wireless systems, is introduced. Specifically, the novel ideas of network function cloudification and network virtualization are exploited to provide a scalable, flexible and resilient network architecture. Moreover, the essential enabling technologies to support and manage the proposed architecture are discussed in details, including fine-grained base station decomposition, seamless incorporation of Openflow, mobility- aware control traffic balancing, resource-efficient network virtualization, and distributed and collaborative traffic classification. Furthermore, the major benefits of SoftAir architecture with its enabling technologies are showcased by introducing software- defined traffic engineering solutions. The challenging issues for realizing SoftAir are also discussed in details.
---
paper_title: Large-Scale Dynamic Controller Placement

paper_content:

The controller placement problem (CPP) is one of the key challenges of software defined networks (SDNs) to increase performance. Given the locations of ${n}$ switches, CPP consists of choosing the controller locations that minimize the latency between switches and SDN controllers. In its current form, however, CPP assumes a fixed traffic and no existing solutions adapt the placement to the load. In this paper, we have addressed the dynamic CPP that consists of: 1) determining the locations of controller modules to bound communication latencies and 2) determining the number of controllers per module to support the dynamic load. We propose an algorithm named LiDy+ that runs in ${O(n^{2})}$ and combines a controller module placement algorithm with a dynamic flow management algorithm. We evaluate the number of controllers, the controller utilization, and the power consumption and the maintenance cost of LiDy+ on both sparse and dense networks. Our comparison against a previous solution shows that LiDy+ does not only achieve a smaller number of controllers and a higher controller utilization but also incurs less energy and maintenance costs than the previous solution. Finally, we run LiDy+ in a large-scale environment where the previous solution of time complexity $ {\Omega (n^{2} \log {n})}$ is impractical.
---
paper_title: Moving Big Data to The Cloud: An Online Cost-Minimizing Approach

paper_content:

Cloud computing, rapidly emerging as a new computation paradigm, provides agile and scalable resource access in a utility-like fashion, especially for the processing of big data. An important open issue here is to efficiently move the data, from different geographical locations over time, into a cloud for effective processing. The de facto approach of hard drive shipping is not flexible or secure. This work studies timely, cost-minimizing upload of massive, dynamically-generated, geo-dispersed data into the cloud, for processing using a MapReduce-like framework. Targeting at a cloud encompassing disparate data centers, we model a cost-minimizing data migration problem, and propose two online algorithms: an online lazy migration (OLM) algorithm and a randomized fixed horizon control (RFHC) algorithm , for optimizing at any given time the choice of the data center for data aggregation and processing, as well as the routes for transmitting data there. Careful comparisons among these online and offline algorithms in realistic settings are conducted through extensive experiments, which demonstrate close-to-offline-optimum performance of the online algorithms.
---
paper_title: Placing controllers in software-defined wireless mesh networks

paper_content:

Software Defined Networks (SDN) are a novel class of networking solutions in which the traditional paradigm of distributed networking has been replaced with centralized networking approach in which a central controller or a group of controllers make the optimal decisions and the nodes become merely forwarding switches. Similar to the wired domain, Software-Defined Wireless Mesh Networks (SDWMNs) SDWMNs leverage the power of centralized decision making to reap the benefits of sophisticated mathematical optimization models in wireless networks. However, there are several issues including controller placement that remain to be addressed for SDWMNs compared to their wired counterparts. The controller placement problem has received significant attention for wired networks, but is an open research area for software-defined mesh networks. The problem is harder because of the wireless channel including interference (collisions, retransmissions, bit errors etc.) and especially since the wireless channel is used for control messages as well. In this paper, we propose an efficient algorithm for the problem of optimal controller placement in SDWMNs. The proposed algorithm efficiently places N controllers at optimal positions in the network so as to minimize interference compared to random deployment of controllers. Simulation results show the better performance of our solution with random deployment.
---
paper_title: The controller placement problem

paper_content:

Network architectures such as Software-Defined Networks (SDNs) move the control logic off packet processing devices and onto external controllers. These network architectures with decoupled control planes open many unanswered questions regarding reliability, scalability, and performance when compared to more traditional purely distributed systems. This paper opens the investigation by focusing on two specific questions: given a topology, how many controllers are needed, and where should they go? To answer these questions, we examine fundamental limits to control plane propagation latency on an upcoming Internet2 production deployment, then expand our scope to over 100 publicly available WAN topologies. As expected, the answers depend on the topology. More surprisingly, one controller location is often sufficient to meet existing reaction-time requirements (though certainly not fault tolerance requirements).
---

Title: A Survey of Controller Placement Problem in Software Defined Networks

Section 1: Abstract 
Description 1: Summarize the content and main objectives of the survey on the controller placement problem (CPP) in Software Defined Networks (SDNs).

Section 2: Introduction
Description 2: Introduce the motivation, importance, and context behind researching CPP in SDNs.

Section 3: Related Works and Previous Surveys
Description 3: Discuss the existing surveys on SDN, highlighting the lack of comprehensive coverage on CPP.

Section 4: Survey Strategy 
Description 4: Explain the methodology and strategy adopted in this survey, including comparison criteria and classification bases.

Section 5: Roadmap
Description 5: Provide an overview of the organization of the paper and the flow of topics discussed.

Section 6: Background
Description 6: Present the basic concepts of SDN, including its architecture, components, interfaces, packet forwarding, and signaling.

Section 7: SDN Architecture Issues
Description 7: Discuss the limitations of a single control plane and the design issues with distributed control plane architecture in SDN.

Section 8: Controller Placement Problem (CPP)
Description 8: Define CPP, discuss its formal mathematical representation, and introduce the various objectives used in its optimization.

Section 9: Objective Criteria in CPP
Description 9: Classify and describe different performance metrics used in CPP solutions, including latency, flow setup time, availability, capacity, energy, and cost metrics.

Section 10: Static CPP Solutions
Description 10: Review different static CPP solutions based on various optimization objectives and performance metrics.

Section 11: Dynamic CPP Solutions
Description 11: Discuss adaptive CPP solutions which adjust the controller placement dynamically based on network conditions.

Section 12: CPP Solutions for Wireless Networks
Description 12: Examine CPP solutions specifically tailored for wireless networks and the unique challenges they present.

Section 13: Characteristics of CPP Solutions
Description 13: Summarize the problem formulations and solution approaches for both static and adaptive CPP solutions.

Section 14: Discussion & Future Research Direction
Description 14: Identify research gaps, challenges, and potential future research directions in CPP.

Section 15: Conclusion
Description 15: Provide a comprehensive conclusion to the paper summarizing the findings and suggestions for future research.