Abstract
Cloud Computing (CC) offers simple and cost effective outsourcing in dynamic service environments and allows the construction of service-based applications extensible with the latest achievements of diverse research areas. CC is built using dedicated and reliable resources and provides uniform seemingly unlimited capacities. Volunteer Computing (VC) on the other hand uses volatile, heterogeneous and unreliable resources. This chapter per the authors makes an attempt starting from a definition for Cloud Computing to identify the required steps and formulate a definition for what can be considered as the next evolutionary stage for Volunteer Computing: Volunteer Clouds (VCl). There are many idiosyncrasies of VC to overcome (e.g., volatility, heterogeneity, reliability, responsiveness, scalability, etc.). Heterogeneity exists in VC at different levels. The vision of CC promises to provide a homogeneous environment. The goal of this chapter per the authors is to identify methods and propose solutions that tackle the heterogeneities and thus, make a step towards Volunteer Clouds.
Reference38 articles.
1. The Grid Application Toolkit: Toward Generic and Easy Application Programming Interfaces for the Grid
2. BOINC: A System for Public-Resource Computing and Storage
3. The Computational and Storage Potential of Volunteer Computing
4. Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R. H., Konwinski, A., & Zaharia, M. (2009). Above the clouds: A Berkeley view of cloud computing (Technical Report No. UCB/EECS-2009-28). Retrieved from http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.html
5. SZTAKI Desktop Grid: a Modular and Scalable Way of Building Large Computing Grids