Abstract

We can view the topology of classical clouds infrastructures as data centers to which are connected user machines. In these architectures the computations are centered on a subset of machines (the data centers) among the possible ones. In our study, we propose to consider an alternative view of clouds where both users machines and data centers are used for servicing requests. We refer to these clouds as volunteer clouds. Volunteer clouds offer potential advantages in elasticity and energy savings, but we have also to manage the unavailability of volunteer nodes. In this paper, we are interested in optimizing the energy consumed by the provisioning of applications in volunteer clouds. Given a set of applications requested by cloud's clients for a window of time, the objective is to find the deployment plan that is less energy consuming. In comparison with many works in resource allocation, our specificity is in the management of the unavailability of volunteer nodes. We show that our core challenge can be formalized as an NP-hard and inapproximable problem. We then propose an ILP (Integer Linear Programming) model and various greedy heuristics for its resolution. Finally, we provide an experimental analysis of our proposal in using realistic data and modeling for energy consumption. This work is a work on modeling with simulation results but not a work with emulation and experiments on real systems. However, the parameters and assumptions made for our simulations fit well with the knowledge generally accepted by people working on energy modeling and volunteer computing. Consequently our work should be analyzed as a solid building block towards the implementation of allocation mechanisms in volunteer clouds.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call