An adaptive load balancing scheme for software-defined network 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 where is the set of m switches, is the set of n controllers, and I⊆V × 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., . 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:...
- et al.
A new approach for performance enhancement in software-defined network
25th Int. Conf. Comput.Netw. (CN)
(2018) - et al.
Capacitated next controller placement in software defined networks
IEEE Trans. Netw. Serv. Manage.
(2017) - et al.
An anytime distributed load-balancing algorithm satisfying capacity and quantization constraints
IEEE Trans. Control Netw. Syst.
(2017) - et al.
Load balancing researches in SDN: a survey
7th IEEE Int. Conf. Electron. Inf. Emerg. Commun.
(2017) - 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)- et al.
Adaptive flow assignment and packet scheduling for delay-constrained traffic over heterogeneous wireless networks
IEEE Trans. Veh. Technol.
(2016) - et al.
A load balancing mechanism for multiple SDN controllers based on load informing strategy
18th Asia Pacif. Netw. Oper. Manag. Symp.
(2016) - et al.
A load balancing algorithm for SDN
Scholar. J. Eng. Technol.
(2016)
SDN controllers: a comparative study
Proceedings of the 18th Mediterranean Electrotechnical Conference
A guide for running multiple controllers in software defined networks
An Article on ”TheNewStack”
Heuristic approaches to the controller placement problem in large-scale SDN networks
IEEE Trans. Netw. Serv. Manage.
A Software Defined Networking Evaluation Approach to Distributing Load
Goodput-aware load distribution for real-time traffic over multipath networks
IEEE Trans. Parallel Distrib. Syst.
An efficient SDN load balancing scheme based on variance analysis for massive mobile users
Hindawi Pub. Corp. Mobile Inf. Systems
Computers and Intractability: A Guide to the Theory of NP-Completeness
Cited by (24)
Blue monkey updated chimp optimization algorithm for enhanced load balancing model
2024, Expert Systems with ApplicationsTraffic aware dynamic load distribution in the Data Plane of SDN using Genetic Algorithm: A case study on NSF network
2022, Pervasive and Mobile ComputingCitation 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 NetworksCitation 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 NetworksCitation 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 SystemsAssessing a Real-time Adaptive Traffic Route Based on Ranking Software Defined Networking (SDN) Cluster of Controllers in a Datacenter
2023, International Journal of Computer Networks and Applications
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.