Professional Documents
Culture Documents
Abstract Cloud computing enables aggregation of a pool of solutions focused on ensuring reduced service costs, while
resources that are provided dynamically as a utility to users others have focused more on providing scalable and
over the internet. The users assume that infinite resources are guaranteed delivery of services. These diverse efforts made it
available and pay only for the resources they consume. very difficult for an ordinary user to align different features
Different cloud computing providers have emerged during and select a service provider based on their requirements.
recent years, providing various services and features to end- Realizing this problem, this paper presents a comparative
users. Due to the diversity of the features provided by these study of currently available providers. Rest of the sections is
providers, it becomes very difficult for an ordinary user to organized as follows. The next section introduces the reader
select a platform based on their requirements. This paper
to fundamental concepts of cloud computing. A comparative
provides reflections on different cloud computing providers
currently available in market. It analyzes the features provided
analysis of different service providers is then provided. The
by existing providers and summarizes the current options discussion highlights current trends and ignored research
available to an ordinary user. Based on the comparative study, areas. The paper concludes with indicating limitations of
conclusions have been drawn and research avenues have been current work and presenting directions for further research.
highlighted.
II. BACKGROUND
Keywords- cloud computing, high performance computing, This section provides a brief overview of cloud
cloud service provider, provider comparison computing. It formally defines cloud computing and its
enabling technologies, various services provided by cloud
I. INTRODUCTION providers and different deployment models available for
cloud computing.
The increasing computing demands during past few years
have lead to emergence of a new paradigm called Cloud A. Cloud computing
Computing. Traditionally, high performance computing was Cloud Computing is defined as a distributed system,
performed by expensive super computers, clusters or grids comprising a set of inter-connected resources that are
[1]. All of these options had limitations in the form of dynamically provisioned using virtualization mechanisms,
infrastructure cost or non-optimal resource utilization etc. and offered as services to end-users based on various
Cloud computing provides a better alternative to users. It service-level agreements [2]. A cloud computing system is
comprises large data centers that are equipped with a
characterized by its on-need self service, access over
collection of tightly coupled resources. The resources are
dynamically provisioned to satisfy end-users demands. internet, pooling of resources, elasticity of service
Similar to the conventional utilities, users can consume the availability, and measurement of services utilized by
computing resources from the large pool of resources. They individual users [3]. There are several enabling technologies
dont need to worry about the resource limitations or that work together to realize the vision of cloud computing
scalability issues. The users are also relieved from initial as discussed in [4]. Following section briefly discusses these
investment plans and pay only for the amount of services technologies.
availed. B. Enabling technologies
During last few years, tremendous developments have
been observed in the domain of cloud computing and One of the fundamental concepts in cloud computing is
different types of cloud providers have emerged. However, utility computing. The computing resources i.e. storage,
the absence of a universal standard leads to these CPU and memory etc. are provided to end-users as a utility
developments in parallel directions. Some providers have service. The various services provided to users are measured
focused on computing aspects and provide CPU, storage, and the users are charged for the units of services they have
databases and networking as services to end-users. Few consumed.
Another important concept is service oriented cloud is internal datacenter of an organization and is
architecture, in which the data centers in cloud expose their generally preferable for organizations that are more
resources (e.g. infrastructure and software etc.) as web concerned about privacy (military organizations and
services. This enables different loosely coupled and research groups etc.), or in places where it is cumbersome to
heterogeneous systems to interoperate with each other. shift complete infrastructure to a public cloud. Sometimes,
To enable execution of multiple users requests on a multiple organizations jointly establish a community cloud
single physical platform, the virtualization mechanism is infrastructure, sharing infrastructure and policies. A hybrid
employed. For every user, a virtual machine (VM) instance cloud is a combination of private and public cloud. The
is spawned by hypervisor, a software that resides between private cloud is used for normal operations of organization.
the VM and physical system. VMWare, Xen and KVM etc. The facilities of public cloud are utilized for cloud bursting
are examples of some of the hypervisor software [4]. i.e. for handling spikes in computing demands. Recently, a
Another relevant concept is autonomic computing. It new type of cloud called virtual private cloud has emerged.
enables self management of cloud systems by automating There is a virtual private network (VPN) that extends the
different tasks i.e. resource provisioning, capacity organizations internal infrastructure by connecting it with a
management, service measurement and disaster public cloud. Since, the VPN is part of organizations
management etc. network, all the policies of the organization are applied on
the resources available over VPN. An example of this type
C. Service models
of service is Amazons virtual private cloud [11].
Different types of service models are supported by cloud
systems. Following are some of the models: III. RELATED WORK
There have been a small number of comparative studies
1) Infrastructure-as-a-Service (IaaS): reported on comparison of cloud computing systems. This
In Infrastructure as a service (IaaS), the raw resources section provides a summary of such studies.
like computation, storage and communication are provided Buyya et al. [2] provided a comparison of selected cloud
as service to user. GoGrid, Joyent and Rackspace are some platforms from aspect of market oriented cloud computing.
of the popular IaaS providers [7-9]. A special case of IaaS is The study focused on the need for emergence of strategies
Data storage as a Service (DaaS), where the physical for market-based cloud management based on customers
storage is provided as a service to users. The service also demands and risk management etc. Zhang et al. [11]
accompanies features for backup, reliability and redundancy provided a general comparison of four commercial cloud
etc. Examples are Amazon S3 and Apache HBase etc. [3] platforms and concluded that existing platforms provide
2) Platform-as-a-Service (PaaS): diverse types of services. These services are provided at
The end-users are provided a platform i.e. an abstraction various levels of abstraction. Therefore, end-users should
over existing infrastructure that can be used to build choose more than one platform based on their requirements
applications. Examples of PaaS providers are Microsoft to satisfy business needs. Voorsluys et al. [4] in their
Windows Azure and Google AppEngine etc. [5, 6] discussion about cloud computing, provided a comparison
3) Software-as-a-Service (SaaS): of features provided by major Infrastructure-as-a-Service
In the Software as a service (SaaS) model, different (IaaS) and Platform-as-a-Service (PaaS) providers.
types of utility applications i.e. accounting, spread sheet and In some of the studies reported in literature, a taxonomic
word processing etc. are offered as service to clients. approach has been employed for comparing cloud providers.
4) Hadware-as-a-Service (HaaS): In this direction, Hofer et al. [12] presented a tree-based
In this approach, the entire hardware or data center can taxonomy based on the characteristics of different cloud
be rented by an organization to meet their hardware systems. The cloud providers were classified based on the
demands. The hardware resources can dynamically scale up proposed taxonomy. Among the characteristics considered
or down as the end-users requirements change. were service model, license type, cost model, supported
Besides the service models discussed above, languages and operating systems, development tools and
miscellaneous services are also provided over the cloud. For virtualization mechanism etc. Similarly, Rimal et al. [13]
example, BitBucket provides different services to developed a taxonomy based on providers features and
developers for managing their code repositories [10]. An used it for comparison of existing providers. The attributes
overview of different cloud issues and service models is considered for the comparison were providers architecture,
provided in [3]. virtualization mechanism, services provided, mechanisms
for load balancing, fault tolerance, interoperability and
D. Deployment models
security, and support for software and programming
The concept of cloud has mainly been proposed for languages etc. In some of the studies, quantitative
public deployment, but other options are also available. The comparisons have been drawn among different providers.
most common model is public cloud in which the services CloudComp, for instance, is a framework proposed to
can be consumed by anyone who pays for it. A private provide performance comparison of various providers [14].
Table 1: A summary of comparative studies done on cloud computing providers
Objective Providers compared Features compared Comparison Type Conclusion
Zhang et al. To present an updated Amazon EC2 Services, applications, Qualitative Existing providers offer
[11] account of features Microsoft Windows virtualization mechanism diverse features. Therefore,
provided by selected Azure and scalability an end-user should use
cloud service providers Google AppEngine more than one providers
for attaining his business
objectives
Buyya et al. To present the notion of Amazon EC Services, virtualization Qualitative Currently, the provider
[2] market oriented cloud Google AppEngine mechanism, QoS, control doesnt comply with
computing Microsoft Live Mesh mechanism and tools requirements for market
SunNetwork.com oriented cloud computing.
GRIDS Lab Aneka Research efforts are
therefore required to
introduce new models
Rimal et al. Development of a AWS Virtualization mechanism, Taxonomy-based When a cloud provider
[13] taxonomy that can GoGrid services, scalability, share a resource, it must be
classify selected cloud FlexiScale reliability, compensated for its
providers Mosso interoperability, security contribution
Google AppEngine and tools
GigaSpaces
Microsoft Windows
Azure
RightScale
SunCloud
SalesForce.com
Hofer et al. Development of a Microsoft Windows Services, license model, Taxonomy-based There is a need for
[12] taxonomy that can Azure users type, payment standardization such that
classify selected cloud Google AppEngine model, QoS, security, issues of interoperability
providers standard and openness etc. among different providers
can be addressed
Li et al. [14] To propose a novel AWS Computation, storage and Quantitative Variations have been
framework for Rackspace network performance observed in performance of
comparing different providers for different
attributes (cost and scenarios
performance etc.) of
current cloud providers
The authors developed different metrics (scalability, latency providers in [16-20], five major IaaS and five PaaS
and throughput etc.) to analyze computational and network providers are selected. Table 2 and 3 provide a comparison
aspects of these providers. Similarly, a quantitative of selected providers. The various information about the
comparison of cloud computing platforms have been done
features provided by these providers have been selected
in [1]. The authors analyzed Amazon EC2 for scientific
computing purpose. primarily from the providers website and the information
Table 1 summarizes different studies reported in available in [15].
literature on the topic. It classifies these studies as From the comparison, it can be said that Amazon EC2
qualitative, taxonomy-based and qualitative comparisons. and Microsoft Windows Azure provide the best combination
As the number of providers currently available are very of feature for an ordinary user. GoGrid, Joyent and
large (more than 80 according to [15]), therefore, the current Rackspace provide better scalability and also promise 100%
studies have considered a subset of providers for
availability of service. Hence, they are useful for customers
comparison. The studies have employed different criteria for
comparison. Due to the large number of cloud providers that are more concerned about scalability. Based on the
currently available, we feel that existing studies are not features provided by various providers and intensive study
sufficient, and an updated comparison is required. performed during this research, following paragraphs
Therefore, the next section provides a comparison of top provide further insights and highlight areas that demand
service providers currently available. more attention.
IV. A BRIEF OVERVIEW OF MAJOR CLOUD COMPUTING
PROVIDERS
1) Virtualization mechanism:
As we discussed earlier, virtualization allows execution of
This study is restricted to 10 major cloud providers multiple users operating system on a single machine. Most
currently available in market. Based on the list of top cloud of the IaaS providers are based on Xen virtualization
mechanism, while the PaaS providers mostly employ their 3) Access interface:
own mechanism for virtualization. An important aspect of any cloud computing system is
2) Pricing model: the end-user interface provided to clients for access,
There are two types of pricing model currently supported. configuration and deployment purposes. Different
First model is pay-as-you-go, in which user pays for the approaches are taken by existing providers. Some cloud
services when they are consumed. In the subscription based providers (Windows Azure, GoGrid and Rakspace etc.)
model, user subscribed to services in a cheap price for a provide a control panel over the web, while others (Amazon
period of time. The user will pay for the services whether EC2 and Joyent etc.) provide a command line interface for
they are used during the period or not. A hybrid model is also this purpose. Some providers, Google App Engine for
offered by some providers, where a small amount of services instance, are too restricted, and only provide an application
are subscribed, however, user will pay for additional programming interface to developers.
computing capacity.