Elsevier

Computer Communications

Volume 123, June 2018, Pages 24-35
Computer Communications

Multi-objective optimization controller placement problem in internet-oriented software defined network

https://doi.org/10.1016/j.comcom.2018.04.008Get rights and content

Abstract

In Internet-oriented Software Defined Network (SDN), the feasibility and scalability are guaranteed by the cooperation among multiple controllers, thus the effective placement of these controllers becomes the significant task. In this paper, we formulate a Multi-objective Optimization Controller Placement (MOCP) problem, which focuses on achieving high network reliability, load balance among controllers, and low latency among controllers and switches. The MOCP covers three specific questions: where the controllers should be placed, how to assign controllers to switches, and how many routing requests should be processed by each controller. We use Adaptive Bacterial Foraging Optimization (ABFO) algorithm and redefine its computation rules to solve the MOCP problem. Simulation results demonstrate that the proposed ABFO based MOCP scheme is effective and has better performance than the existing ones.

Introduction

Software Defined Network (SDN) [1] is a new networking paradigm which emphasizes the decoupling of control plane and data plane, realizes the user customized demands by programmability. SDN moves control logic off packet forwarding hardware, the complex functionalities in network devices are delivered to the specialized SDN controller. As a core component to realize SDN, SDN controller is responsible for maintaining the global view of network and providing the programmatic interfaces to the entire network [2], [3].

A single controller is often sufficient to meet existing response time requirements in many medium-size networks, but only one controller is not enough to manage the whole network with the expansion of network [4]. Furthermore, the physically centralized controller easily causes the single point failure over network, especially the large-scale or hyper-scale network, which significantly limits the reliability of network. If the controller breakdowns or becomes the performance bottleneck, the superiority of SDN will be lost [5]. Therefore, multiple controllers should be deployed and used cooperatively to improve network scalability, provide fault tolerance, and reduce latency of control plane. If one switch is connected to multiple controllers, these controllers can work together to handle routing requests from the switch. Although there are many studies have designed architecture of distributed SDN controller to enhance network scalability [6], [7], [8], [9], it is not efficient to increase the number of controllers merely. Both the number of controllers and their placement locations can affect the network performance significantly, thus it is necessary to investigate the controller placement problem [10]. That is to determine the layout and architecture of control plane, the optimal number of controllers, their locations in network topology, the optimal assignment of controllers to switches, and the optimal workload division among controllers. Heller et al. [10] formally presented the placement problem of controllers in the wide-area networks where the long latency between controllers or controller-switch leads to long response time, and then influences their ability to respond to network events.

In fact, the placement strategy of controllers has many influences on SDN performance [11], such as network reliability, operation cost and response time of events. A controller’s failure affects connection between control plane and forwarding plane, breaks down its controlled switches, even disables some functions of control plane. Hence, the controller placement strategy must take reliability into account to improve network availability. When the load of controller exceeds its processing capability, it will suffer more failures because it has no enough resources to deal with all arrived requests from switches [12]. Sometimes this may even lead to the cascading controller failure and increase the overhead of communicating with switches or other controllers, thus how to balance load among multiple controllers is vital. The controller processing latency will substantially increase with the increasing of flows from switches. There are many limitations on network availability, for example, whether controllers can response to network events or push forwarding commands to switches in time [13]. Therefore the latency constraints should be considered in Internet-oriented SDN.

A Multi-objective Optimization Controller Placement (MOCP) problem considering the above three optimization objectives is formulated in this paper. We use the Adaptive Bacterial Foraging Optimization (ABFO) algorithm to solve it and propose an ABFO based MOCP scheme. The major contributions of this paper are summarized as follows.

  • We formulate the MOCP problem, and the proposed solution can improve network reliability, balance load among controllers and reduce latency between controller and switch comprehensively.

  • The proposed scheme can select controller locations, determine mapping relationship among controllers and switches, and decide the proportion of routing requests from switches processed by each controller. In particular, there is many-to-many mapping relationship of controllers and switches, and the controllers cooperate on processing routing requests from the assigned switches.

  • We redefine the computation rules of ABFO, especially we customize its chemotaxis step to address MOCP. A 3-dimensional chemotaxis operation is devised to carry out 3 kinds of changes during each iteration time, i.e., change of the controller locations, change of the mapping relationship among controllers and switches, and change of the proportion of routing requests from switches processed by the controllers.

The rest of this paper is organized as follows. Section 2 reviews the related work. Section 3 describes the control network and then formulates the MOCP problem to be solved. Section 4 elaborates the controller placement scheme based on ABFO. Section 5 simulates the proposed scheme and evaluates its performance. Finally, this paper is concluded in Section 6.

Section snippets

Related work

There are many researches on SDN controller placement problem. Some of them are about control plane architecture design. In [6] and [14], a logically centralized but physically distributed control plane was proposed, switches reduced the cost of looking up flow by communicating with local controllers. In [7], a kind of hybrid control mode was proposed, the local applications employed local controllers while some policies needed centralized network status and would be redirected to global

Control network

The SDN control network is a logical network which overlays the physical network, and it consists of controllers and switches which are placed at the same location. In this paper, the SDN control network can be divided into multiple domains, and each one is controlled by some controllers. As depicted in Fig. 1, the SDN control network has two kinds of paths, one is general switch-switch connection, and the other one is control path, i.e., switch-controller connection and inter-controller

Expression of solution

In this paper, a solution of controller placement problem is denoted by a two-dimensional matrix P=[pij]n×(n+1).

P=[p10p11p12p1,n1p1np20p21p22p2,n1p2npi0pi1pijpi,n1pi,npn1,0pn1,1pn1,2pn1,n1pn1,npn0pn1pn2pn,n1pnn]

From this matrix, we can see where controllers are placed, which switches are controlled by which controllers and how many routing requests of switches are dealt with by each controller. There are n nodes in the network, i=1,2,,n means the node locations,

Evaluation and analysis

The proposed scheme is simulated by MATLAB and its performances are evaluated over three topologies which are Internet2 OS3E, Tinet from Internet Topology Zoo [38] and RF-II which is an ISP topology from the RocketFuel repository [39]. Internet2 OS3E has 34 nodes and 42 edges, Tinet has 53 nodes and 52 edges, and RF-II has 108 nodes and 306 edges. In this section, we analyze and evaluate our proposed ABFO based MOCP scheme with Heuristic algorithm in [27] and Pareto Simulated Annealing (PSA) in

Conclusion

The controller placement problem is to determine the layout of control plane, the optimal number of controllers to be placed and their locations in the network, etc. We define the MOCP problem and establish the mathematical model with the objective function aiming at improving control network reliability, balancing controller load and reducing control path latency to solve the formulated multiple controllers placement problem. We propose the method that combines heuristic rules and bio-inspired

Acknowledgements

This work is supported by the National Natural Science Foundation of China under Grant No. 61572123; the Major International (Regional) Joint Research Project of NSFC under Grant No. 71620107003; the National Science Foundation for Distinguished Young Scholars of China under Grant No. 71325002; the Program for Liaoning Innovative Research Term in University under Grant No. LT2016007.

References (40)

  • S.H. Yeganeh et al.

    A framework for efficient and scalable offloading of control applications

    Proceedings of the First Workshop on Hot Topics in Software Defined Networks

    (2012)
  • F. Yonghong et al.

    A dormant multi-controller model for software defined networking

    Communications

    (2014)
  • A. Koshibe et al.

    Towards distributed hierarchical SDN control plane

    Science and Technology Conference(Modern Networking Technologies, MoNeTeC)

    (2014)
  • B. Heller et al.

    The controller placement problem

    ACM SIGCOMM Comput. Commun. Rev.

    (2012)
  • Open networking foundation, openflow switch specification (version 1.3.0),...
  • B. Yi et al.

    A Multi-stage Solution for NFV-enabled Multicast over the Hybrid Infrastructure

    IEEE Commun. Lett.

    (2017)
  • Node.js,...
  • Devolved control of ATM networks,...
  • H. Yannan et al.

    On reliability-optimized controller placement for SDN

    China Commun.

    (2014)
  • Y. Zhang et al.

    Fast failover for control traffic in software-defined networks

    IEEE Global Communications Conference(GLOBECOM)

    (2012)
  • Cited by (65)

    • Effective multi-controller management and adaptive service deployment strategy in multi-access edge computing environment

      2023, Ad Hoc Networks
      Citation Excerpt :

      The relevant services are migrated to the backup server when a server goes down. Zhang et al. [17] propose a combinatorial optimization approach that guarantees that services can be unaffected when a certain number of hosts fail. However, the number of host failures is certain.

    • A cross entropy based approach to minimum propagation latency for controller placement in Software Defined Network

      2022, Computer Communications
      Citation Excerpt :

      Fourth, the controller placement demonstrations are plotted in MATLAB. In order to evaluate the performance of the proposed approaches, we compare the cross entropy with four representative solutions in the literature: K-means, K-means++, Adaptive Bacterial Foraging Optimization (ABFO) [24] and Pareto Simulated Annealing (PSA) [25]. Moreover, the experimental results of the cross entropy are further compared with the optimal solution.

    View all citing articles on Scopus
    View full text