Understanding Cloud Computing: Experimentation and Capacity Planning
Source: George Mason University
Cloud computing is a relatively new concept but has its roots in many not-so-new technologies. It is a modality of computing characterized by on demand availability of resources in a dynamic and scalable fashion. This paper discusses in detail the concept of cloud computing, its advantages such as pay as one goes, no need to provision for peak loads, time to market, consistent performance and availability as well as its disadvantages such as privacy and security, disaster recovery, external dependency for mission critical application and monitoring and enforcement of SLA's. It also describes several existing cloud computing platforms. In order to provide a more concrete example of the benefits of cloud computing, the paper shows results of experiments conducted on PlanetLab. It is a virtual lab network that builds on top of the concepts of grid computing, distributed computing, and utility computing to support large-scale research and development using the service-on-demand paradigm. The paper also focuses on how cloud users can optimally select the values of Service Level Agreements (SLAs) to be negotiated with cloud providers in order to maximize their utility subject to cost constraints. It also discusses how the methods of capacity planning are impacted by the advent of cloud computing from the point of view of the cloud user and from the cloud provider.