Review of Energy Reduction Techniques for Green Cloud Computing

The growth of cloud computing has led to uneconomical energy consumption in data processing, storage, and communications. This is unfriendly to the environment, because of the carbon emissions. Therefore, green IT is required to save the environment. The green cloud computing (GCC) approach is part of green IT; it aims to reduce the carbon footprint of datacenters by reducing their energy consumption. The GCC is a broad and exciting field for research. A plethora of research has emerged aiming to support the GCC vision by improving the utilization of computing resources from different aspects, such as: software optimization, hardware optimization, and network optimization techniques. This paper overviews the approaches to GCC and classifies them. Such a classification assists in comparisons between GCC approaches by identifying the key implementation approaches and the issues related to


INTRODUCTION
Cloud computing is a new computing paradigm that relies on a business model whereby services, such as servers, storage and applications, are delivered to users' devices from the Internet [1] [11] [12].To provide and deliver the services to users' devices, cloud computing utilizes a large number of datacenters [13].
Each datacenter consists of hundreds or thousands of physical machines arranged in hundreds of racks that can run millions of virtual machines (VMs) [5].For instant, Google, one of the most famous cloud-based companies, delivers all of its services through the cloud, such as Gmail and Google Earth.To deliver this content to end users in real-time, videos, pictures and other data are stored in huge datacenters [8].It has at least 14 datacenters around the world [9], and more than two million servers, as estimated in [10].
Virtualization is becoming a hot topic in Information Technology.The concept began in the 1960s, when IBM partitioned mainframe computers to increase processor utilization [14].In cloud computing, lht oilnotlaz la tri haoiaa ac iaglooiir l l lzg o aih ihla hiaa hoias eoor rralooi aih ih la ohtltlazi ta oaztolz a itl ii lz i iz izt iaglooi aih ihas oa eha ecnOs ]zoi tri rralooi aih ih la ohtltioned, each virtual server runs an independent operating system and applications.
The main advantages of VMs are improved portability, manageability, maintenance effort, and security [15].VMs also provide isolation, meaning that a VM does not affect any other VM in the physical machine.Also, it prevents the guest operating system from directly accessing the real hardware.Furthermore, it improves hardware utilization by up to 70% [2], by reducing the number of physical servers necessary to store and process data.In contrast, VMs suffer from performance degradation due to the overheads associated with creating, running, and maintaining VMs on the physical machine [14].Also, they suffer from single point of failure problems, because many VMs are dependent on one physical machine; failure in one physical machine will cause failure of many VMs [12].
A datacenter is a massive facility that consumes large amounts of energy for data processing, storage and communication, which negatively impacts the environment [6].The environmental impact is the resulting carbon emission; one datacenter can produce 170 million metric tons of carbon per year.The expected carbon emissions by datacenters worldwide in 2020 is 670 million metric tons annually [7].Additionally, the huge energy consumption in datacenters causes high operational costs.The total estimated energy for datacenters in 2013 was 91 billion kilowatt-hours of electricity [6].As indicated in [5], the typical datacenter consumes as much energy as 25,000 households per year.As a result of such potential impacts to the environment, the green cloud computing initiative has emerged as part of the green IT vision [16].The overall objective of green IT is to increase energy efficiency and hi oim]nialaalaza to save the environment.Since 2007 it has hioil i ghaglzgottiztlazgriztriezlti totia ez lhazaiztoi ihatiotlaz Agency (EPA) submitted a report to the United States Congress about the expected energy consumption by datacenters.nz nrcrs ihial izt Obama invested 90 million dollars in green initiatives via the American Recovery and Reinvestment Act (ARRA).The United States Energy Department granted $47 million of the ARRA money towards projects that optimize datacenter software and hardware [17] [18].
The rest of this paper is structured as follows: Section II presents an overview of energy reduction techniques.In Section III, the software techniques and related research are presented.Section IV discusses various research into hardware optimization techniques.In Section V, network techniques and www.ijacsa.thesai.orgrelated studies are presented.Section VI presents our conclusions.

A. Reducing Server Consumed Energy
The energy consumption of servers can be decreased by reducing the number of active servers.This is usually implemented by scheduling optimization, which is a common approach for green clouds and is considered [31] more efficient than hardware optimization, in terms of cost, consumed hiaa hoia oz aooiorliltr.It depends on finding a suitable mapping between requests for VMs and physical servers to minimize the amount of consumed power [31].
One of the important issues for energy efficiency in virtualized cloud environments is where to place new VM requests within the physical servers.In [2], they proposed a heuristic-based energy-efficient approach for VM placement in cloud based datacenter which relies on statistical analysis of historical data.It uses the multiple correlation coefficient (MCC) method; i.e. measuring the strength of association between a given variable and other variables; to select the server that provides a suitable trade-off between power efficiency and SLA violation.
Higher the correlation coefficient of CPU utilization between selected VMs running on a server, the higher the risk of SLA violation in the datacenter.They used the CloudSim 3.0 toolkit to simulate a datacenter with heterogeneous physical hosts and computed the energy consumption.However, this algorithm requires information from the hardware level [2].
An inspired approach is proposed in [19] based on the behavior of real ants.It uses the Ant Colony Optimization (ACO) meta-heuristic for VM placement.It aims to minimize the number of active servers by maximizing the resources utilization.VM placement is computed dynamically according to the current server load.In this algorithm, each ant (server) receives all VMs, and starts scheduling them to the servers.After all ants have built their solutions, the solution with lowest value for objective function is chosen.The pheromone trails are updated for only this solution.They have developed their own java-based simulation toolkit [19].As the case with all ACO techniques, this algorithm takes a long time to converge [32].It also wastes a lot of resources as each ant must compute its own solution, but then only the one with the lowest value of objective function will be considered.
A server consolidation algorithm (Sercon) is proposed in [11].It aims to reduce the energy consumption in homogeneous datacenters by minimizing the number of active servers.The algorithm inherits some properties from First-and Best-Fit (FF and BF) bin packing problems.First, it sorts the servers in decreasing order based on their load.Then the VMs in the least loaded server become candidates for migration.Thereafter, those VMs are sorted in decreasing order based on their weights.After that, those VMs are allocated one-by-one to the most loaded servers.Therefore, the least loaded server will be idle.So the number of running servers is reduced by switching off idle servers, reducing energy consumption.A simulation software is developed using the .NET 3.5 framework to evaluate an experiment of the proposed method.However, the algorithm is fully centralized, considers homogenous servers, and prevents the server's processor from being fully utilized.
VM migration technique can be used to optimize scheduling.This focuses on transferring VMs between servers via the network.It is used as a solution for improving energy efficiency, by consolidating the VMs on fewer physical servers [20][21].In [20] both scheduling and VM migration methods were used to reduce the energy consumed by servers.It proposed the Energy-aware Scheduling algorithm using Workload-aware Consolidation Technique (ESWCT).The algorithm aims to consolidate the VMs in minimum amount of servers based on balancing the integrated resources (processor, memory and network bandwidth) which are shared concurrently among users in cloud datacenters.It considers heterogeneous workloads of various resource consumption characteristics.The aim of this algorithm is to reduce the power consumption by improving resources utilization based on the fact that heterogeneous workloads have different resource consumption characteristics.The algorithm is centralized and consists of two phases: the first phase shows where to place the VM to get a better balanced utilization of resource among physical servers.First, it computes the processor, memory, network capabilities for each physical server, and the requirements of the VM.Then it selects the server with the smallest value of Imbalanced Utilization Value (IUV) and assigns the new VM to that sever.The IUV is calculated by a mathematical function that considers different resources utilizations (processor, memory, network bandwidth) considering the integrated resources utilization and the current www.ijacsa.thesai.orgaverage resources utilization of the server.The second phase of the algorithm, ELMWCT, optimizes the current VM allocation and deals with where to migrate VMs.It migrates running VMs from underutilized servers to others which are more fully utilized.At the first step, the algorithm chooses the VMs to be migrated (VMs in servers where utilization of processor, memory or network are below threshold).At the second step, the chosen VMs are allocated to the selected physical servers.The performance measures are the IUV and the integrated resource consumption.CloudSim is used as a simulation platform to evaluate the algorithms.The simulation results of the two algorithms showed that multi-dimensional resources have well-balanced utilizations and good power savings compared to other methods.However, the algorithm is fully centralized and includes computing overheads associated with calculating IUV for each server before every VM allocation.
In [21], they propose an approach for VM placement and migration to deal with both over-utilized and under-utilized servers.In the VM placement, they applied a modification of the Best Fit Decreasing algorithm called Power Aware Best Fit Decreasing (PABFD), to allocate a new request for a VM to a server that provides the least increase in power consumption caused by the allocation.They modeled the VM placement problem as a bin packing problem with variable bin sizes and prices; bin sizes are the available processor capacities of the nodes; and prices correspond to the power consumption by the nodes.Bins represent the physical nodes, items are the VMs that have to be allocated.They apply the PABFD method by sorting all VMs in decreasing order of their current processor utilizations and allocate each VM to the server that provides the least increase of power consumption caused by the allocation.This migration approach is proposed to overcome the problem of under loaded servers.The system finds the server with the minimum utilization compared to the other servers, all of its VMs are selected for migration.The target server is selected based on a Best Fit Decreasing heuristic: the migrating VMs are sorted in decreasing order by processor utilization and placed in the server that provides the least increase in power consumption, the source server is then switched to the sleep mode (power-saving mode) once all migrations have been completed.If all the VMs from the source server cannot be placed on other servers, the server is kept active.They used the CloudSim toolkit simulation tool to evaluate the proposed algorithm.In order to evaluate the efficiency of the algorithms, the total energy consumption and the number of VM migrations are used as performance metrics.

B. Reducing Memory Consumed Energy
The article [22] proposed a technique for reducing memory energy consumption using virtual machine scheduling in multicore systems.It presented two scheduling policies: Biggest Cover Set First (BCSF), and Biggest memory Node First (BNF).Each policy makes a scheduling decision based on the currently used memory nodes at time t (C(t)), and the access set of the VMs (memory nodes accessed by these virtual machines) in run queues.To reduce the currently running memory nodes, it tries to find the biggest access set that is completely covered by C(t) and schedules the corresponding VM.BNF schedules the VMs based on the popularity of individual memory nodes, the number of VMs that use the memory node in the entire computer system.Memory power simulator, called MPSim, is developed to evaluate the scheduling algorithms.The consumed energy, the average elapsed time to schedule a VM and the average waiting time of VMs in running queue are measured.

IV. HARDWARE TECHNIQUES
Other technique reduce the consumed energy by utilizing flexible hardware that varies the server computing capability via controlling the frequencies and voltages in the server, which affects the energy consumption [31] [33].However, as with all other hardware techniques, this approach to green cloud is costly and suffers from poor scalability because of the special hardware requirements.
A power-aware scheduling algorithm is presented in [23].It implements Dynamic Voltage Frequency Scaling (DVFS) technique, which is applied with a number of special processors that can to operate at different voltage and frequency levels.It selects the appropriate supply voltages and frequencies of processing elements to minimize energy consumption without violating the SLA, based on the VMs workload.Each VM is allocated to the First Fit server, and each server applies the DVFS to save the energy while complying with the SLA requirements.The result shows a reduction in energy consumption without violating the SLA, and is compared with a non-power aware algorithm.It is implemented by using CloudSim toolkit and it is provided as an example in the simulator.
The study in [24] follows the same approach but they consider the SLA based on the task level (task deadline), and scaling only the supply voltage.The scheduling algorithm applies Dynamic Voltage Scaling (DVS) to save energy while testing the ability of each scheduled task to meet its deadlines.They consider two DVS scheduling policies: one a spaceshared policy and the other a time-shared policy.They simulate the proposed algorithms by using GridSim toolkit.The DVSserver is required to control its supply voltages, so it needs special or additional hardware.
The study in [25] applied DVFS technique to find the optimal frequency for each task of a scientific workflow without affecting its performance.A multi-step heuristic workflow scheduling algorithm is proposed, namely Energy-Aware Resource Efficient workflow Scheduling under Deadline constraint (EARES-D).In the first phase, they calculate the estimated earliest completion time for a workflow, in all datacenters.Then the optimal frequency for executing each task is determined by scaling down the processor frequency under the deadline constraint.The datacenter is selected based on the first and second phase.Thereafter, the task is forwarded to the selected datacenter for scheduling.The resource utilization rate is improved by reusing VM and shrinking the idle time between tasks if the deadline is still guaranteed.They used CloudSim toolkit as a simulator tool to evaluate the scheduling algorithm.The simulation results showed an improvement in energy consumption and resources utilization rate.www.ijacsa.thesai.org In [26], they develop six green task scheduling strategies for sequential tasks to minimize the total energy consumption, which are: The strategies have two main steps: consolidate the tasks as much as possible, and setting the same optimal speed for all tasks in each server.These green strategies are developed for heterogeneous and adjustable speeds servers to effectively reduce energy consumption and finish all tasks before the deadline.They evaluate those strategies by using the simulation, but they did not indicate which simulation.The simulation results indicate that the best policy among these policies is STF-CME strategy.
As indicated earlier, the special hardware requirements [24] limit the scalability of the hardware optimization techniques.Also, they are more costly and not feasible in all datacenters, compared with software and network optimization techniques.

V. NETWORK TECHNIQUES
The communications between VMs consumes energy in the datacenter [6].Reducing the network traffic between servers reduces energy consumption.The studies [6][27] [28][29] [30] consider the network traffic of the VMs placements to reduce the energy consumption.
In [7], two heuristics for VMs migration are presented based on the communication graph and other resource requirements such as processor, memory etcetera.The communication graph is represented as a weighted graph.The weight for each edge in the communication graph shows the amount of traffic between two VMs.So the connected component means those VMs communicate with each other while disconnected components means there is no network traffic between these components.The algorithm identifies the under-loaded servers and the heavily-loaded servers.Then it identifies the physical servers with sufficient residual capacity and sorts them in ascending order according to load.From the lightly loaded servers, it identifies the set of VMs whose load can be accommodated by these physical machines and constructs the communication graph of those VMs.After that, it sorts the components in decreasing order of their size.The algorithm migrates the largest and least connected component first.Each component is migrated as a whole to a single physical machine based on the load of the VMs and the residual capacity of the target physical machine.So the VMs with high communications with each other will be in one server.If this is not possible, either a modified breadth-first search algorithm or a modified Prim's maximum spanning tree algorithm is used to partition the VMs.Then the partitions are migrated to physical machines in proximity to each other based on their distance matrix.Thus, the network traffic between the servers is reduced resulting in less power consumption in the datacenter.They didn't implement these algorithms for the evaluation.
Study [27] optimizes the VM placements by consolidating the VMs to the minimum number of servers, and reducing the network traffic between those, to decrease the energy consumption.It consolidates the VMs with high communication flow together in order to reduce the network traffic between racks, number of active servers and number of active network elements (links and switches).It evaluated in terms of simulation to estimate the number of active servers and intra-rack traffic.
Datacenter Energy-efficient Network-aware Scheduling (DENS) is proposed in [28].It aims to reduce the energy consumption in a datacenter by optimizing the tradeoff between task consolidation and traffic pattern distribution.The proposed DENS selects the best-fit server to execute a job based on weighted computational function that considers the load and the communicational potential at server, rack, and module levels.The proposed function converges VMs towards the maximum loaded server in the least-utilized rack with low network traffic.
The study in [29] proposes two techniques for flow migration and VMs migration.The proposed flow migration technique is called Disjoint Edge Node Divided Spanning Tree with traffic-aware Flow Migration (DENDIST-FM).It aims to generate various disjoint spanning trees to avoid overlapping paths, and chooses the least utilized path to reroute the flow.The second technique is Energy-and-Topology Aware VM Migration (ETA-VMM).It detects and migrates VMs from under-or over-utilized servers to the nearest machine based on the network distance.It evaluates a simulation using Network Simulator NS2 and CloudSim simulator.The results show an improvement in the throughput but it increase the energy consumption by 2.2% comparing with Shortest Path Bridge (SPB) [29].
The study in [30] proposes VM placement algorithm that aims to provide a balance between server energy consumption and network energy consumption.It considers the datacenter as a dependency graph, similar to [6].It employs fuzzy logic to combining those two conflicted objectives.A detailed review of network optimization techniques for green clouds is presented in [34].
In summary, network optimization techniques provide a reduction in the energy consumption with the ability to meet the SLA.On the other hand, a datacenter is usually constructed with a fixed network topology, which limits the scalability and the flexibility in the datacenter.This approach needs to be aware of network topology to decide the flow route as in [28] [29].www.ijacsa.thesai.orgUtilizes MCC method to provides a balance between power consumption and SLA.
•Energy consumption by a placement •Average execution time They developed their own simulation toolkit.[11] Applies VMs consolidation method by utilizing FF and BF bin packing.Applies DVFS to provide a balance between power consumption and SLA.
•Energy consumption •SLA violation CloudSim toolkit. [24] Applies DVS to provide a balance between power consumption and tasks deadline.
•Energy consumption •Job acceptance ratio GridSim toolkit. [25] EARES-D utilizes DVFS to schedule DAG workflow based on earliest completion time for a workflow.
•Energy consumption •Resources utilization rate CloudSim toolkit.[26] Six different algorithms that aim to set the same optimal speed for all tasks in the server and increase its utilization under the deadline constraint.
Reduces the network traffic between servers by using weighted graph.
•NA NA. [28] DENS provides a tradeoff between tasks consolidation and traffic patrons distribution.
•Throughput •Energy consumption CloudSim toolkit.[30] Applies fuzzy logic to provide balance between servers energy consumption and network energy consumption. •

VI. CONCLUSION
In general, the growth of cloud computing has led to uneconomical energy consumption in data processing, storage and communication.The massive energy consumption is unfriendly to the environment because of the huge carbon footprints of the datacenters.Therefore, green cloud computing is required to support the environment.Green computing produces environmental-friendly and cost-efficient cloud computing by using computing resources more efficiently.This paper overviews the GCC approaches and classifies them.This classification assists in comparisons between GCC approaches by recognizing the key implementation techniques and the related issues Three approaches can be followed to implement the green cloud computing: software optimization, hardware optimization, and network optimization.
The software optimization is easy to implement and most scalable, usually not requires special network topology or special hardware.But in the software optimization techniques, www.ijacsa.thesai.orgSLA compliance and energy consumption have a negative correlation.
Hardware optimization provides a reduction in the energy consumption while complying with the SLA.On the other hand, it more costly and has a limitation in scalability because of the special hardware requirements.
Network optimization techniques can reduce energy consumption while complying with the SLA.But it needs to be aware of the network topology and can applied only in a specific network topology, which limits its scalability and the flexibility.

Fig. 1 .
Fig. 1.Energy Reduction Techniques for GCC III.SOFTWARE TECHNIQUES There are two software approaches for energy consumption reduction: reducing the energy consumed by servers (by reducing the number of active servers), and reducing the energy consumed by memory (by reducing the number of running memory nodes).
Shortest Task First for Computer with Minimum Energy (STF-CME)