Resource‐efficient load‐balancing framework for cloud data center networks

ETRI JournalVolume 43, Issue 1 p. 53-63 ORIGINAL ARTICLEFree Access Resource-efficient load-balancing framework for cloud data center networks Jitendra Kumar, Corresponding Author Jitendra Kumar jitendrakumar@ieee.org orcid.org/0000-0002-2938-6432 Department of Computer Applications, National Institute of Technology, Kurukshetra, India Correspondence Jitendra Kumar, Department of Computer Engineering and Applications, GLA University, Mathura, India. Email: jitendrakumar@ieee.orgSearch for more papers by this authorAshutosh Kumar Singh, Ashutosh Kumar Singh Department of Computer Applications, National Institute of Technology, Kurukshetra, IndiaSearch for more papers by this authorAnand Mohan, Anand Mohan Department of Electronics Engineering, Indian Institute of Technology, Banaras Hindu University, Varanasi, IndiaSearch for more papers by this author Jitendra Kumar, Corresponding Author Jitendra Kumar jitendrakumar@ieee.org orcid.org/0000-0002-2938-6432 Department of Computer Applications, National Institute of Technology, Kurukshetra, India Correspondence Jitendra Kumar, Department of Computer Engineering and Applications, GLA University, Mathura, India. Email: jitendrakumar@ieee.orgSearch for more papers by this authorAshutosh Kumar Singh, Ashutosh Kumar Singh Department of Computer Applications, National Institute of Technology, Kurukshetra, IndiaSearch for more papers by this authorAnand Mohan, Anand Mohan Department of Electronics Engineering, Indian Institute of Technology, Banaras Hindu University, Varanasi, IndiaSearch for more papers by this author First published: 27 April 2020 https://doi.org/10.4218/etrij.2019-0294Citations: 7 Funding information This research was supported by the Ministry of Electronics & Information Technology (MeitY), Government of India. AboutSectionsPDF ToolsRequest permissionExport citationAdd to favoritesTrack citation ShareShare Give accessShare full text accessShare full-text accessPlease review our Terms and Conditions of Use and check box below to share full-text version of article.I have read and accept the Wiley Online Library Terms and Conditions of UseShareable LinkUse the link below to share a full-text version of this article with your friends and colleagues. Learn more.Copy URL Share a linkShare onFacebookTwitterLinkedInRedditWechat Abstract Cloud computing has drastically reduced the price of computing resources through the use of virtualized resources that are shared among users. However, the established large cloud data centers have a large carbon footprint owing to their excessive power consumption. Inefficiency in resource utilization and power consumption results in the low fiscal gain of service providers. Therefore, data centers should adopt an effective resource-management approach. In this paper, we present a novel load-balancing framework with the objective of minimizing the operational cost of data centers through improved resource utilization. The framework utilizes a modified genetic algorithm for realizing the optimal allocation of virtual machines (VMs) over physical machines. The experimental results demonstrate that the proposed framework improves the resource utilization by up to 45.21%, 84.49%, 119.93%, and 113.96% over a recent and three other standard heuristics-based VM placement approaches. 1 INTRODUCTION Cloud computing has become a salient technology, and its drastic growth has resulted in the development of numerous large-scale data centers across the globe. These data centers consume large amounts of electricity for their smooth operation, which makes them one of the major sources of CO2 emissions. It is expected that data centers will consume 95 TWh of electricity by 2040 as per a report published by the US Energy Information Administration 1. A data center consumes more power during its cooling process rather than during its computing operations, as the power consumption during the latter process can be reduced via an effective and optimal usage of its resources 2. As per a study conducted by IBM, the mean utilizations of the central processing unit (CPU) and memory were only 17.76% and 77.93%, respectively 3. Similarly, a study conducted using Google cluster trace determined that the utilizations of the CPU and memory were less than 60% and 50%, respectively 4. The underutilization of resources results in high operational costs owing to the excess usage of electricity. The resources must be used effectively because an active ideal machine consumes more than half the peak power 5. Therefore, an efficient resource-management scheme that can reduce the operational costs by maximizing the resource utilization and minimizing the power consumption of the cloud system is required 6, 7. Efficient virtual-machine (VM) consolidation can be used to improve the cloud performance, and this includes the selection of an appropriate scheme for migrating VMs and their placement to the most favorable server (PM) 8. Various approaches have been proposed for solving this problem, but most of them involve the use of a weighted-sum approach 9-13, wherein each solution is assigned a weight. A multi-objective problem is converted into the form of , where ωi represents the weight corresponding to the ith objective. The fundamental issue with weighted-sum approaches is the selection of optimal weights to be equilibrated for the differences in the objective function and setting weights to indicate the relative importance of an objective 14, 15. In this study, a true multi-objective approach that considers each objective individually to determine the best possible VM allocations is used. 1.1 Our contributions This paper aims to present a novel multi-objective resource-efficient load-balancing framework (RELB) for realizing effective VM placement. The key contributions of the paper are as follows: (a) a multi-objective framework is developed to improve the resource utilization and power consumption of a data center and (b) a selection operator guided by non-dominated sorting is introduced. It is capable of selecting the best-suited individuals from the population having multiple cost values associated with the respective objectives of the VM allocation problem. The rest of this paper is organized as follows. Section 2 summarizes the related work on the load balancing of cloud servers. Section 3 introduces the framework design, which is followed by a detailed discussion on the proposed VM allocation policy in Section 4. Section 5 presents the experimental findings. Finally, the conclusions of this study are presented in Section 6. 2 RELATED WORK Modern cloud systems have numerous open research challenges including resource management, load balancing, security, privacy, and multi-clouds 16-22. In this section, the recent works on load balancing are summarized as this study concentrates on multi-objective load balancing. Numerous approaches have been proposed for optimizing the placement of VMs while considering various aspects such as resource utilization, power consumption, and bandwidth or traffic management 18, 20, 23. VM placement approaches can be classified based on the number of objectives being optimized and the optimization scheme being used. Based on the number of objectives, these algorithms can be classified into single-objective and multi-objective solutions 16, 22, 24. Furthermore, VM placement schemes can be classified into mono-objective, multi-objective as mono-objective (MAM), and true multi-objective approaches based on the optimization scheme employed 25. The load-balancing approaches that handle a single objective involve the use of various heuristic-based techniques. For instance, vector bin packing problem generation has been applied to the modeling of VM placement 26. Similarly, first-fit decreasing and best-fit algorithms have been applied to the development of greedy heuristics to compute the feasible and near-optimal solutions for resource allocation in the distributed computing paradigm 27. Simulated annealing has also been explored for improving the cost efficiency of data centers by reducing the number of active machines 28. The mono-objective optimization approach optimizes only one parameter of the problem at a time, and it was observed that 64% of the studies on VM placement belong to this category 25. Single-objective-based schemes cannot balance the different objectives involved in VM placement or allocation, and researchers have thus started developing multi-objective methods. Multi-objective optimization algorithms have been of significant interest to researchers in different applications of engineering and optimization. The multi-objective approach has also been applied to the selection of the most suitable host or physical machine (PM) for placing the VMs. The second category of approaches, that is, MAM approaches, optimizes multiple parameters simultaneously; however, these parameters are converted into a single objective by using the weighted sum or other similar approaches. Such proposals account for 32% of the VM placement approaches. The true multi-objective schemes consider multiple objectives for optimization in cases wherein two or more objectives may be conflicting in nature. However, only 4% of existing studies belong to this category 25. The other parameter used to classify the placement schemes is the implementation approach employed to obtain the optimal or near-optimal mapping. A placement scheme involves the use of an approach such as constraint programming, bin packing, or genetic algorithms. Constraint programming is a form of logic programming that defines the variable relations in a special form referred to as constraints. Usually, the constraints define the characteristics of a solution being searched. The constraints are embedded into a logic program. The VM placement problem is formulated as a mathematical problem with constraints, and a logic program can be developed using constraint-programming logic. Numerous approaches have been proposed using the constraint-programming paradigm. For instance, Yu and Gao formulated a placement problem as a multidimensional bin packing and used the constraint solver to optimize the mapping 29. The objective of this approach is to minimize the number of active PMs to improve the resource utilization and power consumption. Similarly, Zhang and others developed a resource allocation approach using constraint programming with the objective of reducing the resource usage cost and improving the quality of service 30. Bin packing is the process of assigning different items to a minimum number of containers referred to as bins. In a standard bin-packing problem, an attempt is made to minimize the number of occupied bins of capacity 1 to pack items of capacity (0, 1). Song and others presented a resource allocation framework that transforms the problem into an online bin-packing problem 31. The approach is called variable-item-size bin packing, and it is capable of adjusting the available resources. The algorithm also handles run-time changes in the resource demands of the VMs. However, this approach results in increased violations of service-level agreements. VM consolidation is the process of fitting the VMs into a minimum number of servers in the datacenter and is often used for load balancing. Numerous heuristics have been introduced for VM consolidation, and they consider the heterogeneity in resource requirements 32. The proposed heuristics have been extensively studied and they have achieved a performance similar to that of multidimensional algorithms. The energy-aware VM placement schemes called dynamic round robin and hybrid have been introduced in 33. The hybrid algorithm fuses the dynamic round robin with the first fit to achieve better placements. Evolutionary algorithms select the best suitable solution from all the possible solutions in the search space. These algorithms have been widely explored for developing VM placement schemes. For instance, the VM reallocation approach that anticipates the future workload information has been presented, and this information is passed to a genetic-algorithm-based model to determine the optimal reconfiguration of the VMs 34. The ant-colony-optimization–based (ACO-based) VM placement scheme was introduced in 35, and its objective was to improve the resource utilization and power consumption. The authors model the VM consolidation as a multidimensional vector-packing problem and use vector algebra to model the different objectives. A VM consolidation approach that uses biogeography-based optimization to optimize multiple objectives has been proposed in 36. This approach is hybridized with differential evolution along with the cosine migration model and Gaussian mutation to obtain candidate solutions of better quality. The approach considers various parameters such as workload, power consumption, and resource utilization for obtaining the best solution for the VM assignment. Tang and Pan presented a hybrid genetic algorithm for obtaining an approximation of the optimal solution for assigning VMs on servers 37. Their approach considers the power consumption in a communication network of data centers in addition to the power consumption of the servers. Similarly, an ACO-based multi-objective approach has been developed for optimizing the VM assignment in a large data center 38. The purpose of this approach was to find a set of solutions that minimize the resource wastage and power consumption. Another approach based on the ant-colony system was presented in 39 wherein the VM assignment problem was formulated as a constrained combinatorial optimization problem, and the information of the VMs and servers was used to minimize the power consumption. Several other intelligent approaches have been presented for optimizing the power consumption 40-48. However, in most of these approaches, the VM assignment problem is converted into a single-objective problem by using the weighted-sum approach. As discussed earlier, the assignment of weights to each objective is crucial, and an inappropriate selection may result in sub-optimal solutions. Therefore, we present a VM allocation model that treats each objective individually and provides a set of solutions. 3 FRAMEWORK DESIGN The proposed RELB framework is a multi-objective approach and is presented in Figure 1. In a cloud computing environment, the resources ranging from infrastructure to software are shared among multiple users. A load-balancing scheme assigns each task to different computing servers based on criteria such as utilization, response time, and quality of service (QoS). The objective of a load-balancing scheme could be to optimize a single objective or multiple objectives. However, an ideal load-balancing scheme should be capable of optimizing multiple objectives simultaneously as the assignment of cloud resources directly affects several other system parameters. An optimization problem is considered a multi-objective problem if multiple objectives are to be optimized simultaneously. Mathematically, this can be stated as follows: where k defines the number of objective functions, which should be greater than 1, that is, k ≥ 2, and Y is the feasible set of decision vectors or constraint functions. FIGURE 1Open in figure viewerPowerPoint RELB framework schematic workflow The RELB framework assigns the VMs to PMs in a manner such that the resource utilization is maximized. Its objective is to minimize the number of active machines to reduce the power consumption and carbon footprint. The users send the resource demands to the cloud-resource manager, which keeps track of the resource states and passes this information to the load-balancing unit. The framework executes the resource-efficient load-balancing algorithm to determine the near-optimal allocation. If an infeasible solution is observed during the optimization process, the infeasible allocations are migrated to feasible servers. The framework uses a genetic algorithm to approximate the VM allocation, which is an optimization approach inspired from genetic evolution. A set of randomly generated solutions in the search space is evolved toward better solutions. Each solution is encoded with a set of properties that can be altered over time using genetic operators such as mutation and crossover. The candidate solutions are evaluated using a fitness function, and new solutions are generated in each iteration. The better solutions among the old and new solutions are stochastically selected for the next iteration. 4 MULTI-OBJECTIVE VM PLACEMENT The objective of the VM placement process is to allocate the VM on the most suitable PM or server. The process is required to consider multiple factors such as resources and performance. The clients (users) and service providers have different objectives and priorities in a sufficiently large distributed and virtualized computing environment. For instance, the users may prioritize the response time, QoS, and other parameters, whereas the service providers may seek to minimize the operational cost of the data center for maximizing their revenue. The objective of the proposed framework is to reduce the operational cost of a data center by maximizing the resource utilization and minimizing the power consumption. The framework attempts to find a suitable PM to host a VM in such a manner that both objectives are reasonably achieved. Let us consider that n VMs (VM1, VM2, …, VMn) of p users (U1, U2, …, Up) are hosted in a data center DC that consists of m PMs or servers (PM1, PM2, …, PMm). Let us also consider that α is a vector of size m that shows the status of each PM. The PMj is said to be active (αj = 1) if one or more VMs are hosted on the server j; else, PMj is in the ideal state (αj = 0). Similarly, β is a matrix of size n × m that keeps track of the VM placement. If PMj hosts VMi, then βij = 1; else, βij = 0. Let PMj have and capacities of the CPU and memory, respectively. The utilizations of the CPU and memory of VMi are and , respectively. The resource utilization of each resource is monitored independently, and the CPU utilization of each PM is computed using (1), which adds the CPU utilization of each allocated VM and divides it by the CPU capacity of the server. Similarly, the memory utilization of each server is observed using (2). (1)and (2) The CPU and memory resources are used to compute the resource utilization. However, the framework is sufficiently general to accommodate and consider any number of additional resources such as a disk. The average resource utilization of the data center (RUDC) is computed using (3), and the objective of the proposed allocation scheme is to maximize it. Here, represents the number of resources under consideration, that is, . (3) A large-scale data center produces a large amount of heat during its operation. Therefore, a major part of its total consumed power is used to maintain the operational temperature. After the cooling infrastructure, the highest power consumption is that of the CPU 49, and the resource-utilization rate has a close relationship with the power consumption 50-52. The energy-saving schemes applied in the case of a single CPU follow the CPU states, that is, busy or ideal. In a busy state, the energy consumed by a processor depends on multiple variables, such as the utilization rate. However, in the ideal state, some of the components are switched off by the resource manager, and thus, the operating frequency is also reduced to reduce the power consumption. The framework uses power consumption modeling to measure the power consumption based on the resource utilization 53. This model has been widely used in the design of energy-aware VM placement approaches 40, 46-48. Considering that and are the minimum and maximum powers required by PMj, respectively, PMj also requires amount of power in the ideal state. Therefore, the power requirements or consumption of PMj can be calculated using (4). Thus, the power consumed by the data center can be obtained by adding the power consumed by each server, as shown in (5). The objective of the proposed framework is to minimize PWDC, that is, . (4)and (5) 4.1 Proposed algorithm As determining the optimal allocation of VMs on servers strictly belongs to the NP-hard class of problems 54, 55, no existing algorithm can be used to find an optimal solution in polynomial time. Therefore, the proposed framework approximates the allocation using a genetic algorithm. The model iteratively improves the VM allocation while obtaining near-optimal solutions. Algorithm 1 shows the pseudocode of the approach, wherein a population (ϵ) of n random solutions (line 3) is first initialized. A solution places the ith VM into a randomly selected jth PM that is active and satisfies the constraints listed in (6) and (7). Both the constraints are used to ensure that no VM is allocated to a server if sufficient resources are unavailable. (6) (7) The solution or chromosome (χ) is a vector of length m that represents the list of VMs hosted on each PM. Let VPj be the set of VMs hosted on PMj, that is, for instance, VPj = {VM1, VM3, VM8} indicates that PMj is hosting VMs indexed as 1, 3, and 8. Thus, a chromosome solution may be represented as χ = (VP1, VP2, …, VPm). Let us assume that PM1, PM2, PM3, and PM4 have the CPU (mips) and memory (MB) capacities of (2500, 4000), (1000, 500), (500, 1000), and (1500, 3000), respectively. We consider that VM1, VM2, …, VM10 with the resource requests (250, 100), (200, 500), (500, 200), (100, 500), (1000, 1000), (500, 1000), (200, 500), (500, 1000), (200, 700), and (1000, 500) are hosted among these machines as per the configuration shown in (8). The chromosome of the aforementioned VM placement is presented in Figure 2. (8) FIGURE 2Open in figure viewerPowerPoint Chromosome encoding (placement of VMs) Each solution ( ) is evaluated using a cost function (Ψ) and the fitness values ( and ) associated with both the objectives that are computed. The Ψ evaluates any given allocation by computing and for resource utilization and power consumption, respectively. To learn the best possible assignment of VMs, an iterative process that includes the mutation, crossover, and selection as key operators is applied. The crossover ( ) is a recombination operator that mimics the reproduction system of genetic evolution wherein two individuals (parents) meet to generate offspring solutions (O), where oc and om are the newly generated solutions from crossover and mutation operator respectively. We applied the single-point crossover, wherein a random point in the range [1, D] is selected, and the tails of both the individuals are exchanged, as shown in Figure 3, where D is the length of the candidate solution. The mutation operator allows the candidate solutions to explore the search space. In the approach, a swap-operation-based mutation operator ( ) is applied, as shown in Figure 4. Here two distinct VM allocations are selected randomly, and their positions are exchanged accordingly. The newly generated solutions are evaluated using a cost function. The n solutions are selected for the next iteration by applying the selection operator ( ), as shown in Algorithm 2, which uses non-dominated sorting to rank the solutions and selects the best n solutions for the next iteration. FIGURE 3Open in figure viewerPowerPoint Crossover operator FIGURE 4Open in figure viewerPowerPoint Mutation operator 4.2 Complexity analysis This section discusses the functions used in detail and presents an analysis of the time complexity of the approach. The line 1 of the RELB framework (Algorithm 1) randomly initializes solutions. The framework first scans for a feasible PM and assigns the VM to an identified server that takes . In the process, n VMs are assigned in each solution. Therefore, the time elapsed in initializing n solutions becomes . Next, in lines 2–4, each individual is evaluated, and the fitness values corresponding to both objectives are computed by applying the Ψ function, which consumes . Lines 9 and 10 correspond to the recombination operators, crossover ( ) and mutation ( ), respectively. The single-point crossover is applied and randomly selects a distinct individual and exchanges its tail with the ith individual. It consumes for performing the operation once. However, it can generate infeasible solutions, and therefore, the feasibility of the solutions must be verified. The feasibility of the solutions is verified by comparing the amount of resources requested by the assigned VMs with the capacity of servers that consume . If any infeasible solution is detected, the appropriate VMs are migrated to other servers. As the approach first reallocates the VM that consumes the highest resources, it is very unlikely that a large number of VMs are required to be migrated. Assuming that the migration process migrates k VMs, where , it consumes . Therefore, the crossover operator requires , that is, . Similarly, the mutation operation interchanges the assignments of two randomly selected VMs that may be performed in . This operation also migrates the infeasible allocations that may be produced during mutation. Therefore, the total time elapsed in the mutation becomes . As both operations are iterated n times, the total time elapsed in lines 7–13 becomes . In lines 14–19, the newly generated solutions and elapsed are evaluated. In line 20, the population is selected for the next iteration using the selection ( ) operator described in Algorithm 2, which takes , where is the number of objectives to be optimized. The total time elapsed in lines 6–20 becomes . As k is a relatively small number, it can be written as . As the process is repeated times (maximum iterations), the total time becomes . After adding the initialization cost, the total cost obtained is . 5 RESULTS AND DISCUSSION We conducted a series of simulations on a machine equipped with an Intel Xeon CPU E5-2630 having 128 GB of memory. The CPU and memory utilizations are measured in millions of instructions per second “mips” and megabytes “MB,” respectively. The simulation environment consisted of three types of servers (HP and IBM) with the CPU and memory capacities of (2660, 4096), (3067, 8172), and (3067, 16 384), as shown in Table 1 56-58, where “PE” defines the number of processing elements, and “MIPS” measures the capacity or speed of the machine in millions of instructions per second. Four types of VMs having the CPU and memory requests of (500, 512), (1000, 1024), (1500, 2048), and (2000, 3072) are used, as shown in Table 2. The efficacy of the approach is evaluated using 20, 60, 100, 300, and 500 VMs running on the data center, which is sufficiently capable of hosting all the VMs. The simulation environment ensures that sufficient resources are available to accommodate the VM requests, and the number of servers for each type is selected as , for example, to experiment with 100 VMs. We evaluated the performance of the algorithm in two different scenarios, that is, homogeneous and heterogeneous requests of VMs. In the homogeneous environment, each VM requests the same amount of resources, whereas in the heterogeneous environment, the VMs are not bound to request the same amount of resources. We also compared the performance of the approach with the performances of one of the most recent approaches, that is, the secure and energy-aware load-balancing approach (SEALB), and three heuristic-based standard VM allocation schemes 59. TABLE 1. Server configuration Name PE MIPS Memory PWmax PWmin PWidle 2 2660 4096 135 93.7 93.7 4 3067 8172 113 42.3 42.3 12 3067 16 384 222 58.4 58.4 TABLE 2. VM configuration Name PE MIPS Memory 1 500 512 2 1000 1024 3 1500 2048 4 2000 3072 5.1 Homogeneous VM requests This section presents an evaluation of the performance of the proposed scheme for homogeneous VM requests. The resource utilization realized using each approach is presented in Figure 5 for various numbers of VMs hosted in the data center. The resource utilization of the proposed approach is better than that of other approaches. The maximum relative improvement realized using the proposed scheme is up to 7.29%, 46.64%, 46.64%, and 50.99% over the SEALB, best-fit, first-fit, and random heuristics-based allocation approaches, respectively. However, the proposed scheme could not outperform the first-fit-based allocation approach for 300 and 500 VMs because the first-fit approach selects a PM based on its availability and index, whereas the proposed scheme follows the convention of sorting the PMs based on the resource availability and selects the one that can host the VM. The first-fit-based allocation approach improved the marginal resource utilization by a maximum factor of . The amounts of power consumed by the data center for homogeneous VM requests with different approaches are presented in Table 3. The proposed framework also reduced the power requirements for the data-center operation. FIGURE 5Open in figure viewerPowerPoint Resource utilization for homogeneous VM requests TABLE 3. Power consumption (W) for homogeneous VM requests VMs RELB SEALB Best fit First fit Random 20 3.42E+04 4.34E+04 3.83E+04 3.99E+04 4.42E+04 60 1.16E+05 1.18E+05 1.09E+05 1.29E+05 1.41E+05 100 2.15E+05 2.14E+05 1.88E+05 2.06E+05 2.42E+05 300 6.27E+05 6.49E+05 5.62E+05 6.96E+05 7.20E+05 500 1.04E+06 1.06E+06 9.15E+05 1.18E+06 1.21E+06 5.2 Heterogeneous VM requests A typical data center h