Elsevier

Computer Communications

Volume 133, January 2019, Pages 115-128
Computer Communications

Multi criteria analysis of Controller Placement Problem in Software Defined Networks

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

Abstract

Controller Placement Problem (CPP) is an important task in Software Defined Networks (SDNs). Meanwhile, the assignment of switches to the controllers plays a key role in the Quality of Service (QoS). Most of previous works assumed that each switch is assigned to the nearest controller based on propagation latency. In this paper, propagation delay, hop count and link utilization are considered for such assignment. First, the influence of these metrics on the QoS is analyzed. Then, using these criteria, a new Analytic Hierarchy Process (AHP) technique is presented to perform the multi criteria assignment process. Several evaluations are conducted to analyze this approach and justify the importance of trade-off among all the assignment criteria. Furthermore, an algorithm called Controller Placement Genetic Algorithm (CPGA) that is hybridized by the proposed AHP technique is introduced to solve this special kind of CPP. Results show the efficiency of our new assignment approach regarding link load balancing problem.

Introduction

Software Defined Networking (SDN) provides communication networks with flexible operation and programmability in which the management as well as the operation of a network is performed through a controller having a global view of the network [1], [2]. Nonetheless, the control plane not necessarily represents a single and centralized device; but it may comprise of multiple controllers responsible for controlling various administrative domains of the network or different parts of the flow space. Many reasons for using a distributed control plane can be summarized as [3], [4]: (1) administration; (2) SDN providers with geographically local footprints; (3) scalability; (4) decreasing the latency between a switch and its closest controller; (5) fault-tolerance; and (6) load-balancing. In addition to administration and fault tolerance, efficiency also provides an important motivation.

It is necessary to overcome a network of distributed controllers; each of the controllers may have a partial view of the network, and they have to cooperate and exchange information together [5]. However, partitioning network into multiple control domains opens many challenges such as latency, reliability, and load balancing [6]. Given the real assumptions, there are many critical questions to answer including how to identify the minimum number of required controllers, how to partition the network into several small SDN domains, and where the controller location in each SDN domain is placed [7]. These issues, in turn, make the problem of deploying multiple controllers to manage a network and enforce policies in such a distributed control plane as a hot research issue in SDN [8]. This problem has been investigated in many papers as the Controller Placement Problem (CPP) [3], [6], [7].

Earlier studies showed different types of contributions to cope with SDN challenges. However, there are still challenges in solving the controller placement problem. Some articles in this area have not been very much involved in the assignment of switches to controllers. Indeed, they usually implicitly assumed that during the location finding of controllers, each switch is assigned to the closest controller, based on propagation delay [3], [9], [10]. Furthermore, none of the papers which considered load and capacity of the controllers has paid attention to load of paths and the amount of loads imposed on each link [11], [12]. It is clear that the more amount of load, the more delay and failure probability of links and connected nodes will be generated. Generally, an in-depth quantitative investigation of the assignment has received limited attention in the literature; i.e. how the controllers are assigned to switches and what paths should be selected to connect them. There are still many unanswered questions regarding assignment of switches in related papers.

This paper investigates the control placement problem so that an appropriate location of controllers is found. During the search in the search space of placements, two important aspects of this problem are also considered: Given a particular placement in the space which the algorithm faces, two mechanisms are developed to find the best possible assignment of switches to the considered controllers as well as to select the best paths for establishing these connections. Regarding the importance of the allocation of controllers to switches as well as the paths through which they are connected (assignment process), we aim at looking the controller placement problem in SDN not only as a location but also as a location-allocation problem.

For this purpose, fundamental parameters that are very effective in this regard are examined. These factors include switch to controller propagation latency, the number of hop count between switches and controllers and the amount of link utilization for control traffic in assigned path. Since many papers in the literature considered the propagation delay and this parameter affects the availability and convergence time in the large-scale networks, we also consider it as one of the most important parameters. The second important metric is hop count which is defined as the number of hops between the switches and the controllers. Since any hop incurs store and forward and other latencies, this metric may be a good estimation of distance between the switch and the controller. The final metric which is considered in our work is link utilization. This metric is related to the quality of assigned paths. It is simply the amount that links are being used by only control traffic.

In order to apply these criteria in the allocation of switches to controllers and also control paths to each pair switch-controller, a novel multi-criteria assignment approach which works based on Analytic Hierarchy Process (AHP) technique is designed. AHP technique is a smart choice to apply these criteria since it is flexible to impose the preferences of the decision maker to find the solution [13]. Using this technique, the impact of the important criteria is efficiently imposed on the placement of controllers. This method is adapted well to the considered controller placement problem for assigning not only switches to controllers but also control paths for these connections. By this multi-criteria technique and selecting the weight preferences, our proposed AHP-based assignment algorithm generalizes the classic assignment techniques of papers in the literature. Some techniques which introduced in [13], and [14] are adapted for this assignment.

To solve the controller placement problem with the new assignment (location-allocation model), a very efficient algorithm which is inherited from Genetic Algorithm is developed. The good design and adaptation of this strong algorithm to our underlying problem was the main reason for selecting it as the base of our algorithm. The results confirm this algorithmic choice. The Genetic Algorithm works as the master algorithm and other procedures and algorithms such as the AHP-based assignment algorithm are called by the master algorithm whenever they are needed.

In order to evaluate the performance of our proposed method, various evaluation experiments are carried out. First, the performance of the AHP-based algorithm with respect to different weights has been analyzed. The goal of this evaluation is to analyze the importance of different influential factors on the assignment of switches to controllers. Then, to show that the proposed model has a great deal of efficiency in locating a problem and provides better quality solutions, we have used two important metrics to evaluate our model, named “link load indicator” and “maximum link utilization of control paths”, or briefly “LL(l)” and “MLUCP”, respectively. The MLUCP and LLl metrics are important because they consider the load balancing on the links [15], [16]. The lower the value of these metrics, the better the load on the links is achieved. Several papers on the subject of networks and data centers seek to minimize these metrics [15], [17]. We have used this metric to evaluate the quality of our solution and we have shown that the proposed method has a better load balancing than other methods.

To the best of our knowledge, this is the first work to consider the effect of three parameters (propagation latency, hop count, link utilization) on optimizing location of controllers and offer optimal paths for assigning switches to the controllers in solving CPP. For this, a new AHP based algorithm is introduced to perform a new multi-criteria assignment. Here, we discuss how other criteria, in addition to propagation latency, can be effective on CPP problem and start assignment process as a new important problem in CPP. Furthermore, we propose Controller Placement Genetic Algorithm (CPGA) to solve the controller location-allocation problem.

The rest of the paper is outlined as following. Section 2 presents the literature review of the discussion. Section 3 describes the roles of important different criteria in assignment process. A multi-criteria AHP based algorithm with the proposed algorithm to solve a special kind of controller placement problem is proposed in Section 4. Several results of simulations are presented in Section 5. The final section is dedicated to the conclusion.

Section snippets

Related works

The controller placement problem has been considered by many researchers in recent years. Usually, in controller placement literature, CPP is considered as K-median or K-center problems aiming at minimizing the average case or the worst-case latencies, respectively [9], [18], [19]. Several alternatives which go beyond the simple k-median or k-center alike problems have been studied in recent years. Given a topology, the CPP needs to find the number and the locations of required controllers

Importance of criteria

In this section, the assignment problems for different criteria and their important roles in the assignment of switches to controllers are evaluated through examples.

Proposed method

In this section, regarding the importance of propagation delay, hop count and link utilization in the assignment of switches to controllers, a new efficient algorithm called Analytic Hierarchy Process (AHP) method is proposed to consider these criteria with different preferences. Furthermore, a Controller Placement Genetic Algorithm (CPGA) is introduced to solve this special kind of CPP. In the following, the assignment process and related issues are presented.

Result and evaluations

In this section, the evaluation method through which our experiments are performed is described in some planned scenarios. In order to evaluate the performance of our proposed method, various evaluation experiments are carried out. This is done through two subsections. The first Section 5.1 aims to analyze the performance of the AHP-based algorithm with respect to different weights. For this, the performance of AHP-based assignment is examined on some case studies. The goal of this evaluation

Conclusion

In this paper, a new issue in Controller Placement Problem called switch to controller assignment process is presented. In order to assess the performance of the process, three important metrics including latency, hop count and link utilization are considered. These metrics are used to analyze the optimality of the controller’s locations and also switch to controller assignment. Moreover, since a multi-criteria decision must be performed for the switch to controller assignment problem, we

References (35)

  • SaatyT.L. et al.

    Uncertainty and rank order in the analytic hierarchy process

    European J. Oper. Res.

    (1987)
  • JiangH.P. et al.

    Energy-aware data center networks

    J. Netw. Comput. Appl.

    (2016)
  • LiaoJ. et al.

    Density cluster based approach for controller placement problem in large-scale software defined networkings

    Comput. Netw.

    (2017)
  • MohammadiR. et al.

    OpenIPTV: a comprehensive SDN-based IPTV service framework

  • MohammadiR. et al.

    A novel multicast traffic engineering technique in SDN using TLBO algorithm

    Telecommun. Syst.

    (2017)
  • JaliliA. et al.

    Optimal controller placement in large scale software defined networks based on modified NSGA-II

    Appl. Intell.

    (2017)
  • WangG. et al.

    An effective approach to controller placement in software defined wide area networks

    IEEE Trans. Netw. Serv. Manag.

    (2018)
  • TanhaM. et al.

    Capacity-aware and Delay-guaranteed Resilient Controller Placement for Software-Defined WANs

    IEEE Trans. Netw. Serv. Manag.

    (2018)
  • SinghA.K. et al.

    A survey and classification of controller placement problem in SDN

    Int. J. Netw. Manage

    (2018)
  • MaY.W. et al.

    Load-balancing multiple controllers mechanism for software-defined networking

    Wirel. Pers. Commun.

    (2017)
  • ul HuqueM.T.I. et al.

    Large-scale dynamic controller placement

    IEEE Trans. Netw. Serv. Manag.

    (2017)
  • G. Wang, Y. Zhao, J. Huang, Q. Duan, J. Li, A K-means-based network partition algorithm for controller placement in...
  • SallahiA. et al.

    Expansion model for the controller placement problem in software defined networks

    IEEE Commun. Lett.

    (2017)
  • LiyanageK.S.K. et al.

    Controller placement optimization in hierarchical distributed software defined vehicular networks

    Comput. Netw.

    (2018)
  • GaoX. et al.

    Traffic load balancing schemes for devolved controllers in mega data centers

    IEEE Trans. Parallel Distrib. Syst.

    (2017)
  • SaatyT.L.

    Decision making with the analytic hierarchy process

    Int. J. Serv. Sci.

    (2008)
  • TsoF.P. et al.

    Improving data center network utilization using near-optimal traffic engineering

    IEEE Trans. Parallel Distrib. Syst.

    (2013)
  • Cited by (36)

    • A survey on cognitive packet networks: Taxonomy, state-of-the-art, recurrent neural networks, and QoS metrics

      2022, Journal of King Saud University - Computer and Information Sciences
      Citation Excerpt :

      The MCDM depends on the multiple objects and attributes models to further enhance the resulting factors. In Jalili et al. (2019), a new analytic hierarchy process algorithm is proposed to perform multiple-criteria assignment problems to find the solution of the multi-criteria controller placements. An improved genetic algorithm i.e. controller placement genetic algorithm (CPGA) is used herein to deploy the methodology.

    • A novel proactive controller deployment protocol for 5G-enabled software-defined Vehicular Networks

      2022, Computer Communications
      Citation Excerpt :

      Henceforth, many research studies have addressed the issue by proposing various SDN-enabled vehicular network architectures that require either a hierarchical controller system [15] or the assistance of the Edge- and Cloud-Computing paradigms [20]. By using additional controllers in the network architecture, the issue of a single point of failure is eliminated, and the controllers’ load is reduced [21]. However, determining the number of local controllers available, their position, and how to group several switches to each controller poses another obstacle, resulting in unbalanced load management and an excessive expense for local control unit deployment.

    • (ITMP) – Intelligent Traffic Management Prototype using Reinforcement Learning approach for Software Defined Data Center (SDDC)

      2021, Sustainable Computing: Informatics and Systems
      Citation Excerpt :

      The agent 1, RL-conp has identified the possible controller positions with the provided network structure through IDS. We compare the outcomes of RL-Conp with two available research works Degree-based [29] and capacitated [30]. Our proposed ITMP outperforms other two existing works with respect to average response time and average latency.

    • SQHCP: Secure-aware and QoS-guaranteed heterogeneous controller placement for software-defined networking

      2021, Computer Networks
      Citation Excerpt :

      Further, Yao et al. [10] introduced the capacity-aware CPP in the SDN. Several researchers considered multiple criteria, such as delay, link utilization rate, and controller loads, to address the CPP more comprehensively [11,12]. Nowadays, considerable research efforts have been made to address the CPP, and the existing studies generally place the homogeneous controllers in the SDN, which means that the entire network is managed by the same type of controllers.

    View all citing articles on Scopus
    View full text