Elsevier

Computer Networks

Volume 164, 9 December 2019, 106918
Computer Networks

An adaptive load balancing scheme for software-defined network controllers

https://doi.org/10.1016/j.comnet.2019.106918Get rights and content

Abstract

Software-defined networking (SDN) is considered as one of the promising paradigms for the future Internet. It allows users to configure the network depending on the application-level requirements. One of the major challenges in SDN is the uneven distribution of traffic load in the controllers that degrades system performance. In this paper, we propose a self-adaptive load balancing (SALB) scheme that balances load among multiple controllers dynamically with multiple switch migration from source controllers to target controllers. The key feature of our scheme is an effective distribution of load under high load condition while considering the distance between switches and target controllers simultaneously. The efficacy of our proposed scheme is demonstrated through experimentation, where we compare our scheme with existing approaches. The results show that SALB experiences a small number of packet drops, which is less than 1.23% of the total number of message exchanges among the controllers.

Introduction

Software-defined networking (SDN) has emerged as a new and promising paradigm for the future Internet over the traditional network, which offers programmability, easier network monitoring, and management [1], [2], [3], [6]. One of the essential aspects of SDN is that it provides a more flexible software platform for evolving network-wide abstractions while potentially making the data plane simple [4], [5], [7]. In SDN, a logically centralized control plane functionally manages the network and abstracts the underlying network infrastructure to the applications. SDN controller communicates with the application layer using the northbound protocol to implement the application-level requirements and southbound protocols to generate the flow tables [8], [12]. Then, the generated flow tables are assigned to the OpenFlow switches for efficient and effective distribution of traffic in SDN [14]. By acquiring network topology information, the SDN controller has a global network view of OpenFlow switches. Also, it implements a flexible network configuration with the network management functions [11]. In comparison to the traditional network, the SDN platform can effectively enhance the robustness by introducing network function virtualization and implementing various network functions in the controller [10], [13].

With growth and usage of network applications, there is a need for managing heterogeneous traffic in the network [15]. Failure of efficient traffic management creates load imbalance in the controllers. Inefficient load distribution degrades network performance and utilization, e.g., packet reordering, end-to-end delay, increase of latency, etc [14]. It also does not allow end-users to access the required services. Therefore, it is important to distribute the traffic load evenly among the controllers through appropriate network paths.

Current research on load balancing covers two classes of decision-making algorithms, namely centralized and distributed algorithms. In centralized algorithms, a single controller is responsible for load balancing [18]. However, this approach does not scale well for large systems and is not robust and reliable. In distributed algorithms controllers collect load information from other controllers before an overloaded controller decides to distribute the traffic load [17]. This process increases the completion time of load balancing [9]. The load balancing time can be reduced using multiple controllers, but it requires high bandwidth. Therefore, the key challenges that need to be addressed in distributed load balancing are:

  • (1)

    How to migrate overloaded switches from source controllers to target controllers simultaneously under high load situation?

  • (2)

    How to dynamically adjust the threshold of the controller when an overloaded controller could not find a suitable lightly loaded controller?

In this paper, we first prove that load balancing in SDN is an NP-complete problem. Then, we propose a heuristic approach, referred to as self-adaptive load balancing (SALB) scheme, to solve this problem. The key features of our proposed scheme are as follows:

  • (1)

    The impact of the geographical boundary has been considered while migrating switches from one controller to other.

  • (2)

    Dynamic adjustment of base threshold in the controllers has been implemented depending on the variations of loads in the controllers.

  • (3)

    Simultaneous migration of multiple switches from a set of highly loaded controllers to a set of lightly loaded controllers has been addressed in the proposed scheme.

The rest of the paper is organized as follows. Section 2 discusses related works on load balancing in SDN. The problem is formulated formally in Section 3. The problem is proved to be NP-complete in Section 4. The SALB scheme is described in Section 5. Detailed simulation results are presented and analyzed in Section 6. Extensibility, limitations, and deployment scenarios of SALB scheme which are depicted in Section 7. Finally, we conclude the paper in Section 8.

Section snippets

Related works

The research works in load balancing is divided into two subsections: the first subsection discusses the works done on load balancing in traditional networks and how load balancing in SDN is different from it, and the second subsection reviews the works done on load balancing in SDN.

Problem formulation

Let us consider a SDN network G=V=SC,I, where S={S1,S2,,Sm} is the set of m switches, C={C1,C2,,Cn} is the set of n controllers, and IV × V is the set of interconnections among switches and controllers. Each controller Ci has a potential switch set SCi, and it can only control the flows from those switches.

Each switch Si ∈ S has a load SLi. The current load CLi of ith controller is defined as the sum of incoming packets from the connected switches, i.e., CLi=jSCiSLj. Each controller Ci

Proof of NP-Completeness

In this section, we first define a restricted version of the SALB problem, referred to as Restricted Self Adaptive Load Balancing Problem (R-SALB), where we relax the distance constraint (constraint (iii)), and only consider constraints (i) and (ii) of SALB problem. Now we show that the R-SALB problem is NP-complete by proving R-SALB  ∈  NP and R-SALB is NP-hard by reducing Set-Partition Problem [16] to R-SALB in deterministic polynomial time. Clearly, this also implies that the SALB problem is

Self-Adaptive load balancing scheme

In this section, we present our self-adaptive load balancing (SALB) scheme in detail. Due to the large packet arrival rate, load on multiple controllers increase simultaneously, which asks for load balancing. Our scheme runs on every controller present in the network, and whenever there is a requirement of load balancing, it transfers control of switches from highly loaded controllers (source) to lightly loaded controllers (target). In the first step, highly loaded controllers find suitable

Evaluation and results

We evaluated our SALB scheme in two stages. First, we analyzed the performance of the scheme against state-of-art SDN load balancing methods. Then, we verified its accuracy using real world traffic applications in the designed testbed.

Discussions

In this section we discuss extensibility, limitations and deployment scenarios of our proposed SALB scheme.

Conclusion

In the paper, a self-adaptive load balancing scheme is proposed for SDN controllers under high load condition, where simultaneous migration of switches from source controllers to target controllers is considered while maintaining a distance constraint between switches to target controllers. The scheme dynamically adjusts the threshold value of the source controller when no suitable target controllers are found for migration. The experimental results show that our SALB scheme is more effective

Declaration of Competing Interest

The authors declare that there is no conflict of interest associated with this paper.

Madhukrishna Priyadarsini is a research scholar in School of Electrical Sciences, IIT Bhubaneswar, India. Her current work includes computer network management, software-defined Network, securityissues in SDN. Despite these areas, she is also interested in Image processing, Game theoretical approaches. She is a student member of IEEE as well as the secretary in IEEE student branch. Certain workshops in real time implications of SDN has been organized by her.

References (35)

  • ONOS project [online] available:...
  • M. Priyadarsini et al.

    A new approach for performance enhancement in software-defined network

    25th Int. Conf. Comput.Netw. (CN)

    (2018)
  • B. Killi et al.

    Capacitated next controller placement in software defined networks

    IEEE Trans. Netw. Serv. Manage.

    (2017)
  • E. Gravelle et al.

    An anytime distributed load-balancing algorithm satisfying capacity and quantization constraints

    IEEE Trans. Control Netw. Syst.

    (2017)
  • L. Li et al.

    Load balancing researches in SDN: a survey

    7th IEEE Int. Conf. Electron. Inf. Emerg. Commun.

    (2017)
  • X. Gao et al.

    Traffic load balancing schemes for devolved controllers in mega data centers

    IEEE Trans. Parallel Distrib. Syst.

    (2016)
  • Openflow switch specification (1.4 edition)

    Open Netw. Foundat.

    (2017)
  • J. Wu et al.

    Adaptive flow assignment and packet scheduling for delay-constrained traffic over heterogeneous wireless networks

    IEEE Trans. Veh. Technol.

    (2016)
  • J. Yu et al.

    A load balancing mechanism for multiple SDN controllers based on load informing strategy

    18th Asia Pacif. Netw. Oper. Manag. Symp.

    (2016)
  • O. Tkachova et al.

    A load balancing algorithm for SDN

    Scholar. J. Eng. Technol.

    (2016)
  • O. Salman et al.

    SDN controllers: a comparative study

    Proceedings of the 18th Mediterranean Electrotechnical Conference

    (2016)
  • S. Rao

    A guide for running multiple controllers in software defined networks

    An Article on ”TheNewStack”

    (2016)
  • S. Lange et al.

    Heuristic approaches to the controller placement problem in large-scale SDN networks

    IEEE Trans. Netw. Serv. Manage.

    (2015)
  • G. Syl

    A Software Defined Networking Evaluation Approach to Distributing Load

    (2015)
  • J. Wu et al.

    Goodput-aware load distribution for real-time traffic over multipath networks

    IEEE Trans. Parallel Distrib. Syst.

    (2015)
  • H. Zhong

    An efficient SDN load balancing scheme based on variance analysis for massive mobile users

    Hindawi Pub. Corp. Mobile Inf. Systems

    (2015)
  • M.R. Garey et al.

    Computers and Intractability: A Guide to the Theory of NP-Completeness

    (1979)
  • Cited by (24)

    • Traffic aware dynamic load distribution in the Data Plane of SDN using Genetic Algorithm: A case study on NSF network

      2022, Pervasive and Mobile Computing
      Citation Excerpt :

      Re-routing the traffic is a solution, where Hu et al. [10], Attarha et al. [23], Hwang et al. [24], Ramdhani et al. [25], Boero et al. [26], Chakravarthy and Amutha [27] have used and modified the flow rules to improve the degree of load balancing but with increasing overhead and delay. Priyadarsini et al. [28] considered self-adaptive load balancing scheme (without considering delay) to minimize the switch migration but with the increase in cost and delay. Rangisetti et al. [29] reduced overload in LTE networks without considering delay and jitter.

    • Multiple-level threshold load balancing in distributed SDN controllers

      2021, Computer Networks
      Citation Excerpt :

      The switch migration is the operation of changing switch role master from one controller to another. Therefore, it mainly focused on changing one or more switches’ role from the high-load controller to the low-load controller and the complexity of the switch migration problem is proved to be NP-hard [11]. The current research proposes some solutions, but they have their limitations.

    • Software defined networking architecture, traffic management, security, and placement: A survey

      2021, Computer Networks
      Citation Excerpt :

      A hybrid approach for the hierarchical design of the control plane is proposed by Fu et al. [41], where the scalability is improved considering large scale scenarios. Recently, Priyadarsini et al. [42] proposed a self-adaptive load balancing scheme that addresses the aforementioned limitations by adjusting the threshold dynamically. Here, load balancing procedure is completed through five components, namely, Load measurement component that monitors the load on every controller; Load broadcast component that is responsible for broadcasting the load to different controllers in the network; Load balancing component that checks different load balancing conditions under variable load in the network; Load migration component that migrates the load of highly loaded source controllers to lightly loaded controllers as identified in the load balancing component; Link reset component resets the controller-switch links involved in the migration to their initial state.

    • Review of SDN-based load-balancing methods, issues, challenges, and roadmap

      2023, International Journal of Electrical and Computer Engineering Systems
    View all citing articles on Scopus

    Madhukrishna Priyadarsini is a research scholar in School of Electrical Sciences, IIT Bhubaneswar, India. Her current work includes computer network management, software-defined Network, securityissues in SDN. Despite these areas, she is also interested in Image processing, Game theoretical approaches. She is a student member of IEEE as well as the secretary in IEEE student branch. Certain workshops in real time implications of SDN has been organized by her.

    Joy Chandra Mukherjee is working as an assistant professor in department of Computer science and Engineering in Indian Institute of Technology, Bhubaneswar, India. His research interests include smartgrid, mobile computing, and distributed algorithms. He completed his M.Tech. and PhD. from Indian Institute of Technology, Kharagpur, India.

    Padmalocahan Bera is working as an assistant professor in department of Computer science and Engineering in Indian Institute of Technology, Bhubaneswar, India. His research interest includes Network Security, Cryptography, Access Control, Software Defined Networks (SDNs), Cloud Computing, Formal Verification and optimization. He completed his PhD. from Indian Institute of Technology, Kharagpur, India and he was a post doctoral fellow in CyberDNA Research Center, University of North Carolina Charlotte, USA from 2010 to 2011.

    Shailesh Kumar is working as an analyst in Goldman Sachs, Bangalore, India. He completed his B.Tech from Indian Institute of Technology, Bhubaneswar, India. He is interested in designing network management algorithms considering real-life scenarios, network security, future Internet.

    AHM Jakaria is a research scholar in Teenese Tech University, USA. His research interest includes cloud computing, network security, network function virtualization. He is experienced in real-life network implementation.

    Mohammad Ashiqur Rahman is working as an assistant professor in department of Electrical and Computer Engineering in Florida International University Miami, Florida. His research interest includes Formal verification and synthesis of security and resiliency configurations, risk analysis and security hardening, game theoretic analysis for security and resource management, secure and privacy preserved resource sharing, dependable resource management, and parallel and distributed computing. He completed his PhD. in Computing and Information Systems, University of North Carolina, USA. He is also referee in the following journals; ACM/IEEE Transactions on Networking, IEEE Transactions on Smart Grid, Elsevier Computer and Security, IEEE Transactions on Network and Service Management, IEEE Transactions on Industrial Informatics, Journal of the Network and Systems Management, IEEE Security and Privacy Magazine.

    View full text