CLOUD LOAD BALANCING ARCHITECTURES: A QUANTITATIVE PERSPECTIVE

Design of energy efficient load balancing models in cloud environments requires in-depth analysis of the cloud architecture and nature of requests served by the cloud. Depending upon these parameters, machine learning models are designed which aim at assigning best possible resource combination to serve the given tasks. This assignment varies w.r.t. multiple task and cloud parameters; which include task time, virtual machine (VM) performance, task deadline, energy consumption, etc. In order to perform this task, a wide variety of algorithms are developed by researchers cloud designers. Each of these algorithms aim at optimizing certain load balancing related parameters; for instance, a Genetic Algorithm (GA) designed for optimization of VM utilization might not consider task deadline before task allocation to the VMs. While, algorithms aimed at performing deadline aware load balancing might not provide effective cloud-to-task-mapping before allocation of tasks. Thus, it becomes difficult for researchers to select the best possible algorithms for their cloud deployment. In order to reduce this ambiguity, the underlying text compares different energy efficient cloud load balancing algorithms; and evaluates their performance in terms of computational complexity, and relative energy efficiency. This performance evaluation is further extended via inter architecture comparison; in order to evaluate the most optimum load balancer implementation for a given energy efficient application. Thus, after referring this text, researchers and cloud system designers will be able to select optimum algorithmic implementations for their given deployment. This will assist in reducing cloud deployment delay, and improving application specific load balancer performance.


INTRODUCTION
Due to the current CoVID-19 pandemic, most businesses are forced to adopt the work-from home (WFH) model. This model has increased dependency of users on cloud-based services, thereby requiring cloud service providers to optimize their load-balancing models. These models are broadly categorized into 2 types; which are hardware load balancing, and elastic load balancing. The former type consists of optimizing performance of hardware components like virtual machines, servers, memory utilization, task optimization, and central processing unit (CPU) optimization.
While, the later type consists of network load balancers, application load balancers and hybrid load balancers. Hierarchical categorization of these algorithms can be observed from figure 1, from where it can be observed that network load balancing depends on VM and Server load balancing; application load balancing depends on memory, task and CPU load balancing; while classic (or hybrid) load balancing depends on all the hardware-based load balancing models. VM load balancing models aim at optimizing virtual machine performance by assigning tasks in such a manner that most VM resources are utilized, thereby improving hardware utilization efficiency.
This model does not take into consideration deadline constraints, memory constraints, etc. while modelling the load balancer. In contrast, memory-based load balancer models only take into consideration memory utilization; and aim at optimizing task storage without considering resource or CPU load values. Server load balancing algorithms assist in optimization server utilization while performing load balancing, while CPU load balancers aim at optimizing CPU utilization while load balancing. Moreover, task load balancing models aim at executing tasks under a given deadline without considering CPU load, memory or virtual machine efficiency values. Figure1. Hierarchical categorization of load balancing models.
Elastic load balancers aim at optimizing a group of parameters during load balancing. For instance, network load balancers optimize virtual machine and server parameters; while application load balancers aim at optimization of memory, CPU load and task parameters. A combination of these parameters is optimized by classic load balancers, wherein depending upon the application; one or more cloud task parameters are optimized. An in-depth survey of these optimization models can be referred from the next section; wherein various machine learning models for load balancing are described. This is followed by statistical analysis of these models; their comparative evaluation. The evaluation assists in identification of best suited for models for any given application; which will assist researchers and system designers for high speed and high efficiency system design. Finally, this text concludes with some interesting observations about the reviewed algorithms; and recommends methods to improve them.
A wide variety of energy efficient cloud load balancing models have been proposed by researchers and cloud designers. These algorithms aim at improving energy efficiency via application of different machine learning models including but not limited to bio-inspired models, swarm-optimization models, neural networks, etc. The work in (Panda, Moharana, Das, and Mishra, 2019) [1] introduces such an energy efficient model that utilizes virtual machine consolidation in cloud environments.
The model aims at minimizing energy consumption during virtual machine (VM) migration process via threshold-based sleep scheduling. Here, virtual machines with lower load levels are put to sleep for specified clock cycles, thereby assisting in energy reduction. Due to this sleep scheduling, VMs with high loads are easily identified. This identification assists in assigning tasks to the sleep mode VMs, thereby reducing the probability of load imbalance. Description of the model can be observed from figure 2, wherein load balancing and VM migration processes are described.   [1] Due to efficient migration of VMs, and proper load division, the model is able to reduce load imbalance levels by 15% energy consumption by 20% when compared with non-energy aware models. A similar model that uses dynamic energy efficient resource (DEER) allocation can be observed from (Rehman, Ahmad, Jehangiri, Ala'Anzy, Othman, Umar, and Ahmad, 2020) [2], wherein resource with minimum utilization is used for load balancing. This model also performs intelligent sleep scheduling, due to which an energy efficiency of 15% is achieved when compared with Dynamic Resource Allocation Strategy (DRAM) model. This model also reduces computational cost by 10% when compared with DRAM, thereby making is useful for real time load balancing applications. A load-based model that uses self-organizing maps (SOMs) can be observed from (Malshetty and Mathapati, 2019) [3], wherein cluster heads are created, and all load requests are handled by them.
The selected cluster heads are able to reduce computational load on centralized server, and select machines with minimum power consumption, thereby improving overall energy efficiency of the system. It is observed that the proposed model is able to reduce energy consumption by 18% and delay of processing by 10% when compared with Low-energy adaptive clustering hierarchy (LEACH) model. This approach can be compared with other models, a survey of these models can be observed from (Ala'anzy and Othman, 2019) [4], wherein effects load balancing & server consolidation are studied. The work compares algorithms like load-aware Global resource affinity management, advanced prediction-based minimization of load migration, multidimensional hierarchical VM migration, extended first fit decreasing algorithm, locusts inspired scheduling algorithm, etc.
It is observed that soft computing models outperform linear models in terms of energy efficiency & load balancing performance. An example of such a soft computing model can be observed from (Salem Alatawi and Abdullah Sharaf, 2020) [5], wherein Honey Bee optimization is combied with fuzzy logic for improved energy efficiency during load balancing. The model uses a fuzzy approach for host & VM selection, and then deploys a Honey Bee optimization model for load scheduling https://doi.org/10.17993/3cemp.2022.110250.232-248 between these components. Due to incorporation of VM energy levels, and task length in the fitness function (described in equation 1), the model is able to schedule tasks with good energy efficiency.
Where, T length T deadline are task length, and task deadline; while E vm is the per task execution energy of the VM. The model aims are reducing this fitness value in order to improve the energy efficiency, and execute tasks of the given length under the given deadline. The model is able to reduce energy consumption by up to 18% when compared with only fuzzy model, and up to 15% when compared with only the Honey Bee optimization model, thereby making it applicable for real time use. Execution of tasks with high energy efficiency must be accompanied with effective placement of VM services. This placement allows schedulers to select nearby VMs in order to execute tasks with high efficiency and low energy consumption. Example of such an architecture can be observed from (Alharbi, El-Gorashi, and Elmirghani, 2019) [6], wherein researchers have showcased the use of cloudto-fog load balancing reduces energy consumption by 75% when compared with only-cloud load balancing architecture. This architecture can be observed from figure 3, wherein data from cloud is offloaded to fog nodes for efficient balancing. Figure3. Offloading data from single cloud to fog nodes for energy efficient load balancing [6]. Figure 3. Offloading data from single cloud to fog nodes for energy efficient load balancing [6] Due to offloading of tasks on fog nodes, the computational load is shared between different nodes, thereby assisting in faster task execution, and better energy efficiency. This efficiency can be further improved via addition of soft computing models. Such a model is defined in (Dong, Xu, Ding, Meng, and Zhao, 2019) [7], wherein glow worm swarm optimization (GSO) is used. The model combines clustering for extraction of large task resources, with sine cosine analysis (SCA) in order to modify the step size of GSO for energy adaptive scheduling. This modification in step size allows the GSO model to select load & energy optimized cloud resources for the given task. tasks with high CPU utilization but low memory consumption, while the cloud group retains tasks with high memory consumption. This task division is governed using the following equation, Where, L group is resource requirement for the given group, L cpu is resource requirement w.r.t CPU utilization, L memory is resource requirement w.r.t. memory utilization, while and are cloud and edge constants. The model is compared with First Fit Decreasing (FFD) & OTS models and it is observed that the GSO model has 25% better energy efficiency, 15% better throughput, and 18% better load balancing degree when compared with these algorithms. This efficiency can be further improved by performing computations on fog devices as observed from (Bhuvaneswari and Akila, 2019) [8], wherein comparison of different fog-based load balancing algorithms w.r.t. their energy performance is studied. Algorithms like ant colony optimization (ACO), max-min algorithm, active monitoring for load balancing (AMLB), and round robin (RR) are compared. It is observed that the ACO based soft computing model has 15% better efficiency when compared with RR, while AMLB when combined with ACO provides 25% better energy efficiency than individual algorithms. Another hybrid combination that uses ACO with support vector machines (SVM) can be observed from (Junaid, Sohail, Ahmed, Baz, Khan, and Alhakami, 2020) [9], wherein file type formatting (FTF) is used for load classification. Input requests are given to SVM model and depending upon file type at input, the model classifies load types into low power, medium power and high power. After this, the classified load is given to ACO, wherein VM to load mapping is performed using greedy heuristics. Flow of the model can be observed from figure 4, wherein training phases and testing phases can be seen with the final load balancing process. It is observed that the model performs SVM training on file formats, and provides the classified results to ACO. The ACO model internally maps suitable VMs to tasks for high energy efficiency. Due to this, the proposed SVMFTF model provides 8% better energy efficiency than random forest (RF), 6% than Na¨ıve Bayes, 9% than k-nearest neighbours (kNN), and 4% than convolutional neural network (CNN) models.   [9] The model also showcases better throughput, and migration performance when compared with RF, Na¨ıve Bayes, kNN, CNN models. Specifically, the model provides 8% better throughput than RF, 3% better than Na¨ıve Bayes, 15% better than kNN, and 5% better than CNN; while it provides 10% better migration performance than RF, 4% better than Na¨ıve Bayes, 8% better than kNN, and 5% better than CNN models when compared on the same task set and cloud configurations . Comparison of this model can be done with other standard load balancing models as suggested in ( energy efficiency. The same trend is observed for other parameters, due to the sophistication of the RLR methods, and in-depth analysis for the given tasks. A similar study like [10] can be observed in (Kulshrestha and Patel, 2019) [11], wherein models like ALB, transport layer load balancer (TLLB), network layer load balancer (NLLB), VM provisioning on host, consolidation of VMs on host, and VM-level task scheduling are described. Out of these algorithm ALB outperforms other models in terms of energy efficiency by providing 8% better performance than TLLB, 5% better performance than VM provisioning, and 15% better performance than VM consolidation. An example the ALB scheme can be observed in (Zhang, Jia, Gu, and Guo, 2019) [12], wherein Matrix sparseness with normalizedWater-Filling (MSNWF) is described. This model is compared with Heterogeneous Network (HETNET), and OPT models, and it is observed that MSNWF provides 15% better energy efficiency than HETNET and 5% better energy efficiency than OPT. Thus, the MSNWF model can be used for high performance cloud load balancing applications, wherein along with efficiency of task scheduling, energy efficiency is also improved. This model performance can be further improved by integration of broker service policy for software as a service (SaaS) application. Modelling of such architectures requires high efficiency broker design, wherein any incoming task is first given to a broker for estimation of approximate processing site. This estimation allows the cloud VMs to pre-allocate resources for the task, thereby improving the task execution efficiency. In order to model such brokers, architectures like shortest job scheduling, Minmin, Max-min, Two-phase (OLB + LBMM), Modified active monitoring, Throttled Load Balancer, Genetic Algorithm, Honey Bee foraging algorithm, ACO, etc. are available (Jyoti, Shrimali, Tiwari, and Singh, 2020) [13]. It is observed that ACO and other soft computing models when utilizing fog and cloud computing, outperform other models in terms of energy efficiency. An example of such a model can be observed from (Lin, Peng, Bian, Xu, Chang, and Li, 2019) [14], wherein the soft computing models are deployed on cloud. The results of these models are VM-to-task mapping, which are executed either on the cloud infrastructure or offloaded to the fog device for better load balancing capabilities. The model for this architecture can be observed from figure 5, wherein offloading process is performed using different wireless standards. Figure5. Fog-cloud load balancing model with soft computing for efficient task mapping [14]. Figure 5. Fog-cloud load balancing model with soft computing for efficient task mapping [14] The model utilizes total amount of resource in host, total amount of resource in VM, estimated execution time of task, normalization of task average demand for resource, normal resource load of task, relative load of task for resource upon VM, task length, and task priority for scheduling. It is observed that the proposed soft computing model outperforms first come first serve by 15%, random assignment by 25%, trade-off by 8%, main resource load & time balancing by 16%, and main resource task balance by 9% in terms of energy efficiency. This is due to design of energy & task length aware fitness function design, which suggests that soft computing must be used for any kind of load balancing models. A similar model is proposed in ( [17], wherein a reliability aware load balancer model is applied. The model uses a modified version of Genetic Algorithm (GA) for task scheduling, and is able to obtain 15% better energy efficiency when compared with queue length-based load balancing (QLBLB) model. Another low power model that uses first of maximum loss scheduling algorithm (FOML) is described in (Liang, Dong, Wang, and Zhang, 2020) [18], wherein relationship between energy utilization & average completion time is used. The model selects VM with maximum energy utilization and assigns it to a task that has average completion time (when compared to all tasks in queue). This task is then deleted, and a new average completion task is evaluated and assigned to the next maximum energy utilization VM. This process makes sure that all the high energy consuming VMs are assigned to moderate sized tasks, while other VMs are assigned to large & small sized tasks. Flow of this model can be observed from figure 6, wherein ETC (extended time of completion) and ACT (average completion time) matrices are evaluated for the given set of tasks. Figure6.Maximum energy utilization model for efficient task scheduling [18]. Figure 6. Maximum energy utilization model for efficient task scheduling [18] The FOML model is able to obtain 10% better energy utilization when compared with min-min model, 8% better utilization when compared with max-min model, 12% when compared with suffrage model, and 15% better than E-HEFT model, thereby making it highly effective for real time deployments.
Similar models are described in (Hadikhani, Eslaminejad, Yari, and Ashoor Mahani, 2020) [19], and (Sadeghi and Avokh, 2020) [20], wherein geographic information and Two-hop Routing Tree with Cuckoo search (CCTRT) models are defined. These models able to achieve 5% and 12% better energy efficiency when compared with E-HEFT model, thereby suggesting that the use of soft computing models is fundamental to design of energy efficient load balancing algorithms. The efficiency of these models can be further improved via use of predictive workload balancing, wherein the system is able to predict workloads depending upon task patterns, and pre allocate cloud & fog VMs for efficient execution. Architecture for such a system can be observed in (Jodayree, Abaza, and Tan, 2019) [21], wherein rule-based workload prediction is defined. It uses a combination of historical data analysis and random workload assignment in order to speed up workload balancing. Due to predictive analysis, the model is able perform host reduction and thereby reduce energy consumption by 10% when compared with random assignment algorithm.
This model can be further extended via use of deadline constrained task scheduling as suggested in (Ben Alla, Ben Alla, Touhafi, and Ezzati, 2019) [22], wherein a dynamic classifier is used to divide incoming tasks into priority queues, and each of these queues is processed using Fuzzy Logic and Particle Swarm Optimization model (FLPSO). The FLPSO model used in this approach is able to reduce energy consumption by 60% when compared with FCFS (first come first serve), 25% when compared with EDF (earliest deadline first), and 15% when compared with Differential Evolution (DE) with Multiple Criteria Decision Making (MCDM) algorithms. This comparison appears to be true for different VM and task combinations, thereby assisting in deploying the FLPSO model for a wide variety of cloud infrastructures.
This approach must be compared with other models like the ones mentioned in (Pourghebleh and Hayyolalam, 2020) [23] in order to evaluate its real time applicability and deployment capabilities.
Similar energy efficient models are discussed in (Rashid, Tripathi, Prakash, and Tripathi, 2019) [24], (Singh and Kumar, 2019a) [25] and (Kansal and Chana, 2018) [26] wherein load based energy efficiency, security aware energy efficiency, and migration aware energy efficiency models are https://doi.org/10.17993/3cemp.2022.110250.232-248 described. Each of these models utilize soft computing techniques like ACO, PSO, GA, and GSO in order to achieve high energy efficiency. A resource aware load balancing model can be observed in (Ahmed, Aleem, Noman Khalid, Arshad Islam, and Azhar Iqbal, 2021) [27], wherein heterogenous clustering is used in order to perform resource-based task mapping. The model performs job to resource mapping depending upon resource availability, and resource aware load balancing for obtaining higher utilization ratio. It uses a predictive model for classification and forecasting job device suitability & job time estimation matrix as observed from figure 7, wherein the overall model is described. The model extracts features including front end clang (percentage of tasks remaining), kernel features ratio of task length to current machine configuration), and static features (initial performance of machines and number of tasks) from tasks and provides them to Resource aware load balancing and hierarchical clustering (RALBHC) model for improvement of resource utilization.
The model is able to achieve an energy efficiency of 25% when compared with Max-min algorithm, 15% when compared with Minimum Completion Time, 8% when compared with Resource-Aware Scheduling Algorithm (RASA), and 10% when compared with Task-Aware Scheduling Algorithm (TASA). Another energy efficient model that uses equal load distribution for fog-to-cloud & cloudtofog migration (EDCW) is described in (Kaur and Aron, 2020) [28], wherein linear programming (LP) is used. The use of LP results into equal distribution of tasks between fog node and cloud node, thereby assisting in improved load balancer performance. The model is able to achieve 15% better energy efficiency when compared with Round Robin model, and 8% better efficiency when compared with throttled model, thereby making it useful for low energy load balancing applications.
Similar energy-efficient models are proposed in (Escobar, Ortega, D´ıaz, Gonz´alez, and Damas, 2019) [29], (?, ?) [30], (Taboada, Aalto, Lassila, and Liberal, 2017) [31],(Kumar, Singh, and Mohan, 2021) [32], and (Singh and Kumar, 2019b) [33], where in parallel evolutionary algorithms, contextbased load balancing, energy-aware load balancing, resource-efficient load-balancing, and secure load balancing models are described. These models make use of different soft computing methods in order to perform task-based & resource-based load balancing. The underlying models are able to reduce energy consumption via optimization of the fitness function, wherein resource energy, task length, task deadline, and resource performance parameters are used. A quantitative analysis of these models is described in the next section, wherein the underlying models are compared in terms of relative energy efficiency values, thereby assisting cloud system designers to identify energy-efficient load-balancing models for their deployment.

QUANTITATIVE ANALYSIS
From the literature, it is observed that the energy efficiency of different cloud load balancing algorithms is estimated using their relative percentages. This limits the quantitative comparison capability of these algorithms. In order to resolve this drawback, this section evaluates absolute percentage energy efficiency when compared with the basic first come first serve (FCFS) algorithm.
This process will allow researchers to estimate energy performance of reviewed algorithms, along with their computational complexity. The computational complexity is divided into fuzzy ranges of low (L), medium (M), high (H) and very high (VH). Maintaining a balance between energy efficiency and computational complexity is a must while designing load balancing models for cloud. The quantitative results are tabulated in Moreover, standard CNN models are also not available for this purpose, therefore it is a necessity that researchers should develop such models that aim towards energy efficiency. These models can then be extended via transfer learning or recurrent networks in order to incrementally tune their performance. Neural network models have very low energy consumption during evaluation, thus pre-training of models is further recommended.  Energy efficient models utilize soft computing techniques like PSO, ACO, GA, GSO, and Honey Bee Optimization in order to achieve this task via energy aware fitness function design. Deep learning models are not used for this purpose due to their energy intensive training process.
This limitation can be removed via using pre-trained CNN models that are optimized for energy efficient load balancing. Furthermore, existing models like SLA based model [15]