A Switch Based Resource Management Method for Energy Optimization in Cloud Data Center

Proliferation of large number of cloud users steered the exponential increase in number and size of the data centers. These data centers are energy hungry and put burden for cloud service provider in terms of electricity bills. There is environmental concern too, due to large carbon foot print. A lot of work has been done on reducing the energy requirement of data centers using optimal use of CPUs. Virtualization has been used as the core technology for optimal use of computing resources using VM migration. However, networking devices also contribute significantly to the responsible for the energy dissipation. We have proposed a two level energy optimization method for the data center to reduce energy consumption by keeping SLA. VM migration has been performed for optimal use of physical machines as well as switches used to connect physical machines in data center. Results of experiments conducted in CloudSim on PlanetLab data confirm superiority of the proposed method over existing methods using only single level optimization.


I. INTRODUCTION
LOUD Computing has changed the scenario of how computing resources are used by industries. Nowadays computing resources are used as utilities. Cloud computing means on demand usage of computing resources through internet. Cloud is metaphor of internet As per NIST definition "The Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction" [1].
Cloud computing requires enormous size of data centers consisting of large number of devices. Consequently it consumes high amount of electricity and therefore it has worst effect on environment Anders et al. reported that the electricity consumption by the datacenter will reach to 3-13% in 2030 [2]. According to a report [3], 12% of monthly expenditure of a data center is energy consumption only. High consumption of electricity invites a lot of problems like sustainability issue, energy wastes, less returns on investment and environmental impact, i.e., carbon footprint [4]. So, the energy consumption needs to be checked and monitored to avoid these problems. This can be done with efficient utilization of resources at data centers. Computing resources play an important role towards it. Studies show that physical machines of the data centers are hardly 100% utilized [5,6]. Hence optimized utilization of computing resources will result into less energy consumption. As energy consumption can be reduced by optimized use of physical machines, the same is true for networking devices namely switches used in data centers. In this paper, optimization is applied on both the resources, i.e., CPU and switches. In a report [7], it is found that 30% of physical machines are idle. Similarly the idle switches use almost 90% of its energy at peak load [8]. Whenever physical machines or switches are C working below threshold, then their workload can be transferred to another one and these devices may be putting off to save energy. Using less number of resources results in less energy consumption. Many researchers have proposed different ways to minimize the energy consumption in data centers. Ghani et al. [9] have classified these approaches into four categories: 1-energy saving techniques focusing on servers, 2-energy saving solutions for network, 3-combined energy saving solutions for servers and network and 4-Renewable Energy Usage in Cloud data Centers.

II. LITERATURE REVIEW
Energy efficient data center is the need of the hour in cloud computing. Some good survey papers have been published to reflect the current work going on to achieve energy efficient data centers [10,11]. In early research energy management was done using dynamic voltage and frequency scaling [12]. In DVFS, voltage and frequency of CPU is scaled up and down as per requirement to reduce energy consumption. But DVFS is not appropriate for high performance computing. One of the methods of power management in cloud is consolidation of VMs running on different PMs. After consolidation, idle PMs are switched off. A two point control technique was proposed by Nathuji & Schwan [13]. A multi-objective virtual machine placement technique was proposed by Jing et al. [14]. Van et al. proposed VM placement method based on constraint programming [15]. Modified best fit decreasing algorithm was used for VM placement by Beloglazov et al. [16]. Same researchers have proposed optimal online heuristic algorithm in order to consolidate VMs [17]. Gao et al. [18] proposed energy optimization through DVFS as well as VM consolidation by keeping SLA. Their work is based on maximizing the resource utilization consequently minimizing power consumption and resource wastage. Adaptive resource scheduler is designed for networked fog datacenters to reduce computing as well as communication links' energy consumption by considering communication links between nodes [19]. Ant colony optimization was applied for energy efficiency by some researchers [20,21]. A predictive optimization was applied for energy reduction by Dinh Mao et al. [22]. In this paper author used Gaussian process regression method to predict the workload pattern on PMs. Shaw et al. [23] proposed a linear regression based method for overload detection and for VM selection, maximum difference between requested and allocated CPU utilization. Haghighi et al. [24] proposed a method of VM consolidation to decrease the energy consumption of the cloud data center using K-mean clustering algorithm combined with meta heuristic micro genetic algorithm. Some researchers have worked on network aware resource management in cloud data centers. In these techniques emphasis is on decreasing the energy consumption of network devices. This can be done by controlling the traffic of the network and switching of idle network devices. Another approach can be lowering the traffic rate to preserve energy. VPTCA (Virtual machine placement and traffic configuration algorithm) is a method for VM placement which considers energy consumption and network traffic [25]. In this approach communicating VMs are placed on the same switch or same pod to save energy. This is done by designing a two tier DNA coding technique. A VM placement technique known as MAPLE which is based on stochastic bin packing algorithm to reduce number of active PMs [26] and its extension MAPLEx is introduced in [27]. Both estimates the effective bandwidth between servers to maintain QoS (quality of service). T. Chen et al. [28] proposed Locality-Aware Virtual Machine Placement Problem with Traffic-Aware Balancing (LVMPPTB). It is a multi-objective algorithm which works on minimization of the number of the VMs as well as requires bandwidth at lowest layer of the network. Guan et al. [29] proposed Bandwidth-aware Energy Efficient flow routing and scheduling (BEERS) to reduce the energy consumption of the data center by fully utilizing the communication link and switching off unused network elements. Marotta et al. [30] proposed a Simulated Annealing based Resource Consolidation algorithm (SARC) for energy efficient migration of VMs considering routes of the network traffic.

III. NETWORK ARCHITECTURE
Network architecture describes the communication infrastructure inside the data center. Most of the existing data centers use three tier topology at the core of their network. There are three layers of switches, namely core layer, aggregation layer and access layer in this type of network. The switches existing in two bottom layers, i.e., access and aggregation are connected in the form of bipartite graph [31]. Description of three layers is as following: Core Layer: This is the topmost layer of the architecture. The switches of this layer are connected to the switches of its lower layer.
Aggregation Layer: This is the middle layer where switches are connected to both core and access layer switches. Two aggregation switches are connected to each other to form a module.
Access Layer: This is the bottom layer where access layer switches are directly connected with physical machine. Access layer switches are also connected to aggregation layer switches. Fig. 1. represents the layered architecture. Core and aggregation layer switches are energy hungry. These cannot be put into sleeping mode when idle, because any time these can be used for equal cost multipath routing (ECMP). Power management can be applied at the 3rd layer. Switches at this level can be powered down when in idle state.

IV. ENERGY MODEL FOR CLOUD
Energy consumption in cloud data center is mainly by computing devices and cooling system. Energy consumed by computing resources is mainly done by physical machines, storage and network devices. Among these, physical machine consumes most of the power. It has been observed that networking devices consumes approximately 15% of data center's energy [7].
The power consumption by PM is linearly related to CPU power consumption. So, power consumption by PM can be calculated using eq n 1.
where EIdle, EPeak are power consumptions at idle condition and at the highest workload, UCPU is the percentage of CPU utilization.
Idle CPU consumes 70% of the energy consumed at peak level, so eq n 1 can be modified as Energy Consumption by network switch is dependent on three factors namely switch type, number of active line cards and number of active ports. DENS [32] described energy model of switch which is shown in eq n 3.
where EBasis , ELinecard and E are power consumed by switch hardware, line card and port running at rate r respectively. NLinecard and Nport denote number of line card and active ports on switch.
The power consumed by switch hardware is constant. It is being observed that power consumption by line card is also independent of traffic rate. Only power consumption of port gets affected by traffic rate passing through switch. Hence power consumption by switch can be decreased either by switching off the network switches completely or by decreasing the number of active ports. The number of active ports consumes 3% to 15% of energy consumption by switch [33].
Research shows that once a switch is on with its all ports active then it consumes energy very close to energy consumption at peak load [34], Hence in our work we are switching off the access layer switches based on their active number of ports to reduce the energy consumption.
Energy of the datacenter is the sum of the energy consumed by PMs and energy consumed by switches as shown in eq n 4.
where m is the number of PMs and n is the number of switches. EPM and ESwitch represent energy consumed by PM and switch respectively. EPM can be calculated using eq n 2.

V. PROPOSED METHOD
In order to reduce energy consumption by data center, we are applying energy optimization at two levels, i.e., switch level and PM level. Depending on the utilization of switch and PM, VMs from different PMs are consolidated on few numbers of PMs to save energy. There are following three criteria for initializing VM migrations. Under loaded Switch: We have used lower bound threshold for a switch, namely TSlower which is equal to 25% of number of ports on the switch. In our case a switch is under-loaded if only one port is active. If a switch is underloaded then all the VMs running on the switch are to be moved to another switch and the switch will be turned off to save the energy.
PM overloaded: If PM utilization is above upper threshold (TPupper) then some of the VMs are to be transferred to another PM until its utilization becomes below upper threshold.
PM underloaded: If PM utilization is below lower threshold (TPlower) then all the VMs of PM are to be migrated to another suitable PM and then the PM is switched off to optimize the energy consumption.
PMs overload is managed by dynamic threshold using upper outer fence [35]. Upper threshold for the current dataset can be calculated using CPU utilization history of the previous dataset. Eq n 5 describes the formula for calculating upper outer fence.
where Q3 and IQR represent third quartile and an interquartile range respectively. IQR can be calculated using eq n 6.
IQR= Q3-Q1. (6) The formula for calculation of upper threshold is given below where α is known as safety parameter whose value is a real number. Different values of α produces different results in terms of energy consumption and SLA violation. The lower threshold is the minimum value of CPU utilization from the previously recorded values of CPU utilization. Hence it can be described as: where U1, U2,…………,Um are CPU utilization of PM1,PM2,……….,PMm respectively.

Figure 2. Flow Chart for Two Level Energy Optimization
Allocation of PM for a VM is done using power aware best fit decreasing algorithm [16]. Selection of new PM for VM migration is done using four policies namely: maximum correlation, minimum migration time, minimum utilization and random selection [17].

Algorithm: Two Level Energy optimization for cloud data center
Input: hostList, switchList ; Output: updated hostList and switchList // minimize energy at host level 1. for each host in hostList do 2.
Calculate the CPU utilization of host.

3.
If host is overload then 4.
Migrate VM to other host to balance the load on host.
Migrate all the VM to other host. 7.
Switch off the host. 8.
Update hostList, switchList. // one port gets switched off due to switching off the PM. 9.
end if 10. end loop // minimize energy at switch level 11. for each switch in switchList do 12.
Calculate the number of ports active on the switch.
Migrate all the VM to other switches which can accommodate VM. 15.
Power off the switch. 16.
end if 18. end loop

VI. EXPERIMENTAL SETUP
In order to check the performance of the proposed method we have used CloudSim simulator [36]. In CloudSim we have created 800 physical machines. In order to make heterogeneous environment we have considered two types of PMs which are HP ProLiant ML 110 G4 (dual core Intel Xeon 3040 processor and 4 GB RAM) and HP ProLiant ML 110 G5 (dual core Intel Xeon 3075 processor and 4 GB RAM). Both the PMs are equal in number, i.e., 400. Energy opimization on switches has been applied at access layer's switches only. Two hundred Cisco Catalyst 2960-S switches with four ports have been considered for the experiment. Each switch has energy consumption of 71 Watts. Different values of CPU utilization consumes different energy which is shown in Table 1. VMs' characterisitcs are the same as Amazon EC2 instance types. All VMs are single core machines. The characteristics of VMs used in the experiment are listed in Table 2. The workload is considered from CoMon Project [37] of PlanetLab. CPU utilization of PM is measured at an interval of 5 minutes for 10 days which is considered as workload. Table 3 shows of number of VMs created on each day.

A. PERFORMANCE METRICS
In order to evaluate the performance of proposed method, we have used two metrics which are Energy Eat by Server and Switches (EESS) and Energy Eat and SLA violation Factor (EESF) [38]. EESS measures energy consumed by physical machines and switches where as EESF provide insight of the tradeoff between energy savings and SLA violations. EESS and EESF can be calculated as where EPMs and ESwitches denotes energy consumed by PMs and switches respectively.

B. RESULTS
The proposed method is implemented using upper outer fence technique for threshold selection. UoF threshold is combined with four migration techniques Maximum Correlation, Random Selection, Maximum Utilization, and Minimum Migration Time popularly known as UoFMC, UoFRS, UoFMU, and UoFMMT respectively. As per results reported in [17], Local Regression (LR) combined with Minimum Migration Time (MMT) known as LRMMT is best, so we have considered that too for comparing performance of our method. These five combinations are implemented using our two level optimization with the existing energy optimization method considering only CPU. It is obvious from Fig. 3, that relative performance of all the methods is the same as it was reported earlier [38], but value of EESF is decreased in each case. Hence energy optimization is achieved by keeping SLA. Figs. 3 and 4, clearly show that energy metrics EESF and EESS have been improved using the proposed method. The proposed method has provided better tradeoff with SLAV in all five combinations as shown in Fig. 5. It is found that UoFMMT is best among the five combinations tried and shown in Fig. 6. Also, there is always a tradeoff between energy consumption and SLA violation. The tradeoff has been measured using EESS. Fig. 7 shows that among the five combinations tried, UoFMMT is best among the all as it leads to energy saving of 3.8% with a unit increase in SLA violation. As VM migrations are taking place at two levels, the number of migrations will definitely increase which leads to slight increase in SLAV shown in Fig. 8.

VII. CONCLUSION
As energy requirement of data centers is increasing regularly, it is utterly required to optimize energy consumption of the data centers. Major focus of the energy optimization has been the CPU utilization using VM consolidations. The energy consumed by the network devices had been quite neglected. We have proposed an optimization method working at two levels. Experiments conducted in CloudSim have shown the significant improvement in energy consumption with slight tradeoff with SLAV. The method is particularly helpful in case of sparse load. It reduces energy consumption by powering off under-loaded switches along with the CPU optimization. Latest energy metrics have been used to evaluate the performance of the method. To the best of our knowledge there is no similar work in the literature, hence performance comparison has been done with the state of the art methods available without using energy optimization for switches.