• No results found

How To Compare Cloud Computing Providers

N/A
N/A
Protected

Academic year: 2021

Share "How To Compare Cloud Computing Providers"

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

A comparative study of major service providers for

cloud computing

Noman Islam

Team Lead, Research and Development Technology Promotion International

Karachi, Pakistan Research Fellow

Center for Research in Ubiquitous Computing, Karachi, Pakistan

[email protected]

Aqeel-ur-Rehman

Associate Professor FEST, Hamdard University

Karachi, Pakistan Research Fellow

Center for Research in Ubiquitous Computing Karachi, Pakistan

[email protected]

Abstract—Cloud computing enables aggregation of a pool of resources that are provided dynamically as a utility to users over the internet. The users assume that infinite resources are available and pay only for the resources they consume. Different cloud computing providers have emerged during recent years, providing various services and features to end-users. Due to the diversity of the features provided by these providers, it becomes very difficult for an ordinary user to select a platform based on their requirements. This paper provides reflections on different cloud computing providers currently available in market. It analyzes the features provided by existing providers and summarizes the current options available to an ordinary user. Based on the comparative study, conclusions have been drawn and research avenues have been highlighted.

Keywords—cloud computing, high performance computing, cloud service provider, provider comparison

I. INTRODUCTION

The increasing computing demands during past few years have lead to emergence of a new paradigm called Cloud Computing. Traditionally, high performance computing was performed by expensive super computers, clusters or grids [1]. All of these options had limitations in the form of infrastructure cost or non-optimal resource utilization etc. Cloud computing provides a better alternative to users. It comprises large data centers that are equipped with a collection of tightly coupled resources. The resources are dynamically provisioned to satisfy end-users demands. Similar to the conventional utilities, users can consume the computing resources from the large pool of resources. They dont need to worry about the resource limi-tations or scalability issues. The users are also relieved from initial investment plans and pay only for the amount of services availed. During last few years, tremendous developments have been observed in the domain of cloud computing and different types of cloud providers have emerged. However, the absence of a universal standard leads to these developments in parallel directions. Some providers have focused on computing aspects and provide CPU, storage, databases and networking as ser-vices to end-users. Few solutions focused on ensuring reduced service costs, while others have focused more on providing scalable and guaranteed delivery of services. These diverse efforts made it very difficult for an ordinary user to align

different features and select a service provider based on their requirements. Realizing this problem, this paper presents a comparative study of currently available providers. Rest of the sections is organized as follows. The next section introduces the reader to fundamental concepts of cloud computing. A comparative analysis of different service providers is then provided. The discussion highlights current trends and ignored research areas. The paper concludes with indicating limitations of current work and presenting directions for further research.

II. BACKGROUND

This section provides a brief overview of cloud computing. It formally defines cloud computing and its enabling technolo-gies, various services provided by cloud providers and different deployment models available for cloud computing.

A. Cloud computing

Cloud Computing is defined as a distributed system, com-prising a set of inter-connected resources that are dynamically provisioned using virtualization mechanisms, and offered as services to end-users based on various service-level agreements [2]. A cloud computing system is characterized by its on-need self service, access over internet, pooling of resources, elastic-ity of service availabilelastic-ity, and measurement of services utilized by individual users [3]. There are several enabling technologies that work together to realize the vision of cloud computing as discussed in [4]. Following section briefly discusses these technologies.

B. Enabling technologies

One of the fundamental concepts in cloud computing is utility computing. The computing resources i.e. storage, CPU and memory etc. are provided to end-users as a utility service. The various services provided to users are measured and the users are charged for the units of services they have consumed. Another important concept is service oriented architecture, in which the data centers in cloud expose their resources (e.g. infrastructure and software etc.) as web services. This enables different loosely coupled and heterogeneous systems to interoperate with each other.

(2)

To enable execution of multiple users requests on a single physical platform, the virtualization mechanism is employed. For every user, a virtual machine (VM) instance is spawned by hypervisor, a software that resides between the VM and physical system. VMWare, Xen and KVM etc. are examples of some of the hypervisor software [4]. Another relevant concept is autonomic computing. It enables self management of cloud systems by automating different tasks i.e. resource provisioning, capacity management, service measurement and disaster management etc.

C. Service models

Different types of service models are supported by cloud systems. Following are some of the models:

1) Infrastructure-as-a-Service (IaaS): In Infrastructure as a service (IaaS), the raw resources like computation, storage and communication are provided as service to user. GoGrid, Joyent and Rackspace are some of the popular IaaS providers [7-9]. A special case of IaaS is Data storage as a Service (DaaS), where the physical storage is provided as a service to users. The service also accompanies features for backup, reliability and redundancy etc. Examples are Amazon S3 and Apache HBase etc. [3]

2) Platform-as-a-Service (PaaS): The end-users are pro-vided a platform i.e. an abstraction over existing infrastruc-ture that can be used to build applications. Examples of PaaS providers are Microsoft Windows Azure and Google AppEngine etc. [5, 6]

3) Software-as-a-Service (SaaS): In the Software as a service (SaaS) model, different types of utility applications i.e. accounting, spread sheet and word processing etc. are offered as service to clients.

4) Hadware-as-a-Service (HaaS): In this approach, the entire hardware or data center can be rented by an organization to meet their hardware demands. The hardware resources can dynamically scale up or down as the end-users require-ments change. Besides the service models discussed above, miscellaneous services are also provided over the cloud. For example, BitBucket provides different services to developers for managing their code repositories [10]. An overview of different cloud issues and service models is provided in [3]. D. Deployment models

The concept of cloud has mainly been proposed for public deployment, but other options are also available. The most common model is public cloud in which the services can be consumed by anyone who pays for it. A private cloud is internal datacenter of an organization and is generally preferable for organizations that are more concerned about privacy (military organizations and research groups etc.), or in places where it is cumbersome to shift complete infrastructure to a public cloud. Sometimes, multiple organizations jointly es-tablish a community cloud infrastructure, sharing infrastructure and policies. A hybrid cloud is a combination of private and public cloud. The private cloud is used for normal operations of organization. The facilities of public cloud are utilized for cloud bursting i.e. for handling spikes in computing demands. Recently, a new type of cloud called virtual private cloud has

emerged. There is a virtual private network (VPN) that extends the organizations internal infrastructure by connecting it with a public cloud. Since, the VPN is part of organizations network, all the policies of the organization are applied on the resources available over VPN. An example of this type of service is Amazons virtual private cloud [11].

III. RELATED WORK

There have been a small number of comparative studies reported on comparison of cloud computing systems. This section provides a summary of such studies. Buyya et al. [2] provided a comparison of selected cloud platforms from aspect of market oriented cloud computing. The study focused on the need for emergence of strategies for market-based cloud management based on customers demands and risk manage-ment etc. Zhang et al. [11] provided a general comparison of four commercial cloud platforms and concluded that existing platforms provide diverse types of services. These services are provided at various levels of abstraction. Therefore, end-users should choose more than one platform based on their require-ments to satisfy business needs. Voorsluys et al. [4] in their discussion about cloud computing, provided a comparison of features provided by major Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS) providers. In some of the studies reported in literature, a taxonomic approach has been employed for comparing cloud providers. In this direction, Hofer et al. [12] presented a tree-based taxonomy based on the characteristics of different cloud systems. The cloud providers were classified based on the proposed taxonomy. Among the characteristics considered were service model, license type, cost model, supported languages and operating systems, de-velopment tools and virtualization mechanism etc. Similarly, Rimal et al. [13] developed a taxonomy based on providers features and used it for comparison of existing providers. The attributes considered for the comparison were providers archi-tecture, virtualization mechanism, services provided, mecha-nisms for load balancing, fault tolerance, interoperability and security, and support for software and programming languages etc. In some of the studies, quantitative comparisons have been drawn among different providers. CloudComp, for instance, is a framework proposed to provide performance comparison of various providers [14]. The authors developed different metrics (scalability, latency and throughput etc.) to analyze compu-tational and network aspects of these providers. Similarly, a quantitative comparison of cloud computing platforms have been done in [1]. The authors analyzed Amazon EC2 for scien-tific computing purpose. Table 1 summarizes different studies reported in literature on the topic. It classifies these studies as qualitative, taxonomy-based and qualitative comparisons. As the number of providers currently available are very large (more than 80 according to [15]), therefore, the current studies have considered a subset of providers for comparison. The studies have employed different criteria for comparison. Due to the large number of cloud providers currently available, we feel that existing studies are not sufficient, and an updated comparison is required. Therefore, the next section provides a comparison of top service providers currently available.

(3)

TABLE I. ASUMMARY OF COMPARATIVE STUDIES DONE ON CLOUD COMPUTING PROVIDERS

Objective Providers compared Features compared Comparison Type Conclusion Zhang et al. [11] To present an updated account

of features provided by se-lected cloud service providers

Amazon EC2 Microsoft Windows Azure Google AppEngine

Services, applications, virtual-ization mechanism and scala-bility

Qualitative Existing providers offer di-verse features. Therefore, an end-user should use more than one providers for attaining his business objectives Buyya et al. [2] To present the notion of

mar-ket oriented cloud computing

Amazon EC Google AppEngine Microsoft Live Mesh SunNetwork.com GRIDS Lab Aneka

Services, virtualization mech-anism, QoS, control mecha-nism and tools

Qualitative Currently, the provider doesnt comply with requirements for market oriented cloud com-puting. Research efforts are therefore required to introduce new models

Rimal et al. [13] Development of a taxonomy that can classify selected cloud providers

AWS GoGrid FlexiScale Mosso Google AppEngine GigaSpaces Microsoft Windows Azure RightScale SunCloud SalesForce.com

Virtualization mechanism, services, scalability, reliability, interoperability, security and tools

Taxonomy based When a cloud provider share a resource, it must be compen-sated for its contribution

Hofer et al. [12] Development of a taxonomy that can classify selected cloud providers

Microsoft Windows Azure Google AppEngine

Services, license model, users type, payment model, QoS, security, standard and open-ness etc.

Taxonomy-based There is a need for standard-ization such that issues of in-teroperability among different providers can be addressed Li et al. [14] To propose a novel

frame-work for comparing differ-ent attributes (cost and perfor-mance etc.) of current cloud providers

AWS Rackspace Computation, storage and net-work performance

Quantitative Variations have been observed in performance of providers for different scenarios

IV. ABRIEF OVERVIEW OF MAJOR CLOUD COMPUTING PROVIDERS

This study is restricted to 10 major cloud providers cur-rently available in market. Based on the list of top cloud providers in [16-20], five major IaaS and five PaaS providers are selected. Table 2 and 3 provide a comparison of selected providers. The various information about the features provided by these providers have been selected primarily from the providers website and the information available in [15].

From the comparison, it can be said that Amazon EC2 and Microsoft Windows Azure provide the best combination of feature for an ordinary user. GoGrid, Joyent and Rackspace provide better scalability and also promise 100% availability of service. Hence, they are useful for customers that are more concerned about scalability. Based on the features provided by various providers and intensive study performed during this research, following paragraphs provide further insights and highlight areas that demand more attention.

1) Virtualization mechanism:As we discussed earlier, virtualization allows execution of multiple users operating system on a single machine. Most of the IaaS providers are based on Xen virtualization mechanism, while the PaaS providers mostly employ their own mechanism for virtualization.

2) Pricing model:There are two types of pricing model currently supported. First model is pay-as-you-go, in which user pays for the services when they are consumed. In the subscription based model, user subscribed to services in a cheap price for a period of time. The user will pay for the services whether they are used during the period or not. A hybrid model is also offered by some providers, where a small amount of services are subscribed, however, user will pay for additional computing capacity. 3) Access interface:An important aspect of any cloud

computing system is the end-user interface provided

to clients for access, configuration and deployment purposes. Different approaches are taken by existing providers. Some cloud providers (Windows Azure, GoGrid and Rakspace etc.) provide a control panel over the web, while others (Amazon EC2 and Joyent etc.) provide a command line interface for this purpose. Some providers, Google App Engine for instance, are too restricted, and only provide an application programming interface to developers. 4) Security One of the most important concerns for a

user is the security and privacy of the data they host on the cloud. There are two types of measures that can be adopted for security purpose. The preventive measures include data protection, privacy and firewall etc. The reactive measures include mechanisms to counter for a threat that has penetrated into the network. Monitoring and intrusion detection etc. are some of the steps that can be adopted. Unfortunately, the security features offered by current provider are not adequate enough to satisfy end-user demands. Only, data privacy and protection are the mechanisms offered by most of the providers. Advanced features for threat prevention and response are not provided by current solutions. Among the providers that offer moderate security measure are salesforce.com (pro-vides adequate preventive measures including data protection, privacy and authentication features) and Amazon EC2 (provides intrusion detection and mon-itoring features).

5) Availability and reliability Most of the IaaS providers guarantee 100% availability, while PaaS solutions offer slightly low availability of about 99.9%. Different measures have been adopted by the providers to guarantee reliability of system. Unfor-tunately, the reliability provided by current systems is not of satisfactory level and research efforts are also required in this domain. Few providers including Amazon EC2, GoGrid and LunaCloud offer features

(4)

TABLE II. ACOMPARISON OF FEATURES PROVIDED BY MAJORIAASCLOUD COMPUTING PROVIDERS

GoGrid [8] Joyent [9] Rackspace [7] VMWare [21] Amazon EC2 [1]

Introduction GoGrid provides dynamic provisioning and scaling of resources in real-time manner. One of the prominent features is RAID 6+0 technology that ensures resilience; availability and handles failover conditions. The provider offers different solutions for SQL and NoSQL databases

The provider offers three types of services. The com-pute service facilitates in exe-cution of reliable and resilient applications on cloud. The manta storage service offers a scalable and distributed ob-ject storage service. The third service provided is facility for private clouds.

Rackspace offers 100% avail-ability of applications based on RAID10. Besides; users can also create backup snap-shot images for later use. A RESTful API is provided along with web-based control panel and console based ac-cess for controlling cloud re-sources

VMWares cloud solution is based on its vCloud suite that provides an API based access to manage and control cloud. The most prominent feature of provider is improved relia-bility based on predictive and data driven approach to in-cident reporting and problem management

Amazon is amongst the pi-oneers in cloud computing. Its Elastic Compute Cloud (EC2) is based on concepts of zones that provide fault iso-lation and robustness against failures in other zones. Differ-ent zones combined together to form regions. Storage is also offered as Simple Storage Service (S3). Another impor-tant feature is Amazon Virtual Cloud (VPC) that connects companys internal infrastruc-ture with Amazon cloud Virtualization Xen hypervisor Solaris container OpenStack-based vSphere Xen hypervisor Pricing model Pay-as-you-go, then

subscrip-tion

Pay-as-you-go Pay-as-you-go Subscription Pay-as-you-go, then subscrip-tion

Major products / services

Computation, load balancing, storage, content distribution network

Computation, storage, private cloud

Managed cloud, block stor-age, load balancing, monitor-ing

Computation, data center, re-covery manager

Elastic block store, IPad-dresses, virtual private cloud, cloud watch, clusters etc. Access

interface

Web-based, API Web-based, API, console Web-based control panel API Web-based, API, console

Security features Preventive measures

Basic Basic Basic Basic Moderate

Reactive mea-sures

Basic Basic Basic Moderate

Reliability Good Inadequate Good Poor Good

Availability (Scalability

Good Good Good Basic Good

Support Good Good Good Good Good

Tools/ frame-work

C/C++, Java, PHP, Python, Ruby

Java, Perl,PHP, SQL Amazon machine image (AMI), Java,PHP,Python

TABLE III. ACOMPARISON OF FEATURES PROVIDED BY MAJORPAASCLOUD COMPUTING PROVIDERS

Google App Engine [5] Microsoft Windows Azure [6] Citrix [22] Salesforce.com [23] LunaCloud [24] Introduction Google provides a platform

to application development based on Java and Python. The various cloud services provided are cloud storage and BigQuery etc.

A window-based platform is provided for deployment and execution of applications. The applications can be written in C, C++ and C. The SQL Azure storage service enables hosting of data in cloud data centers

Citrix provides an open source platform-as-a-service cloud to develop applications. The ser-vices are provided on a sub-scription based costing model, where users can build a pub-lic, private or hybrid clouds

Salesforce.com offers the first real-time cloud to develop fast, secure and reliable multi-tenant customized or busi-ness apps. Among the var-ious cloud options available are cloud for sales, business services and marketing etc.

Lunacloud provides a flexible platform for development of cloud applications, controlled via web-control panel and RESTful API. The provider offers features for virtual elas-tic server, virtual disk space and cloud appliances etc. Virtualization Application container Microsoft CLR VM Xen Server n/a OpenStack-based Pricing model Pay-as-you-go Pay-as-you-go, then

subscrip-tion

Subscription Pay-as-you-go Pay-as-you-go

Major products / services

Computation, Cloud SQLDatabase, Google cloud storage

Web server, Big Data, SQL Azure storage etc.

Public and private cloud, DHCP, load balancing, IP ad-dresses

Sales cloud, service cloud, marketing cloud

Cloud server, cloud storage, cloud appliances

Access interface

API Web-based, API, console Web-based Web-based, API Web-based, API, console

Security features Preventive measures

Basic Basic Moderate Moderate

Reactive mea-sures

Basic Basic Basic

Reliability Inadequate Inadequate Poor Good Good

Availability (Scalability

Good Basic Basic Good Good

Support Basic Good Good Basic Good

Tools / frame-works

Django, Pylons, CherryPy, web2spy, Java, Python

(5)

for fail-over handling, and taking snapshots and backup of system.

6) ScalabilityOne of the core properties of cloud com-puting is dynamic scaling to end-users comcom-puting requirements. Almost all of the current providers sup-port auto-scaling and load balancing features. Only, Microsoft Azure and VMWare dont auto-scale to end-users requirements.

7) Support A good provider should provide options to develop applications in different programming languages and architecture, and enable deployment of these applications on operating systems of their choice. Most of the providers support different flavors of both Windows and Linux based environments. Almost all of the providers (except Google App Engine) offer deployment options for both 32 and 64 bit architectures. It can be seen that Java, Python and Ruby have been the dominant languages for development of applications and supported by most of the platforms.

V. CONCLUSION

This paper provides a survey of features provided by major service providers for cloud. It enlightens the reader with fun-damental concepts of cloud computing and then summarizes currently available comparative studies on the topic. Existing studies can be classified as qualitative, taxonomic and quan-titative comparisons. The paper also performed a comparative study of major cloud computing providers currently available. It has been found that existing providers offer complementary features. Various types of service models exist and various oth-ers are emerging. Current progress on cloud computing are in two directions. The first type of providers focused on providing good reliability, while others focused on reduced cost for the provided features. Security and privacy have always been a concern of most of the users, but almost none of the providers offer comprehensive security support. It is also found out that current providers use own nomenclature for specification of their services, that lead to difficulties for an ordinary user to perform comparison among the service providers. The review of literature also points out about absence of a survey that can compare the providers from economic perspective. Therefore, future work should also be done on economic comparison of cloud systems.

REFERENCES

[1] S. Ostermann, A. Iosup, N. Yigitbasi, R. Prodan, T. Fahringer, and D. Epema, “A Performance Analysis of EC2 Cloud Computing Services for Scientific Computing,” Cloud Computing, vol. 34, 2010, pp. 115-131. [2] R. Buyyaa, C. S. Yeoa, S. Venugopala, J. Broberg, and I. Brandic, “Cloud

Computing and Emerging IT platforms: Vision, Hype, and Reality for Delivering Computing as the 5th Utility,” Future Generation Computer Systems, vol. 25, 2009, pp. 599-616.

[3] T. Dillon, C. Wu, and E. Chang, “Cloud Computing: Issues and Chal-lenges,” presented at 24th IEEE International Conference on Advanced Information Networking and Applications, Perth, Western Australia, 2010.

[4] W. Voorsluys, J. Broberg, and R. Buyya, “Introduction to Cloud Com-puting,” in Cloud Computing: Principles and Paradigms, R. Buyya, J. Broberg, and A. Goscinski, Eds.: John Wiley & Sons, Inc., 2011, pp. 1-41.

[5] E. Ciurana, ”Google App Engine,” in Developing with Google App Engine, E. Ciurana, Ed.: First Press, 2009, pp. 1-10.

[6] T. Redkar and T. Guidici, Windows Azure Platform, 2012.

[7] “public Cloud Hosting, Computing Storage and Networking by Rackspace”, available at www.rackspace.com/cloud/, accessed on August 2013.

[8] “Cloud Infrastructure Security & Compliance with GoGrid: A GoGrid White Paper addressing Cloud Infrastructure Security and Compliance Concerns for Large, Medium and Small Businesses.,” Cloudsleuth 2010. [9] Xi-Xian, “An Anatomy of Joyent Smart Cloud Computing Technology,”

Journal of Xi’an Eurasia University, vol. 1, 2012.

[10] “Free source code hosting for Git and Mercurial by Bitbucket”, available at https://bitbucket.org, accessed on August 2013.

[11] Q. Zhang, L. Cheng, and R. Boutaba, “Cloud Computing: State-of-the-art and Research Challenges,” Journal of Internet Services and Applications, vol. 1, issue 1, 2010, pp. 7-18.

[12] C. N. Hfer and G. Karagiannis, “Cloud Computing Services: Taxonomy and Comparison,” Journal of Internet Services and Applications (S I : Future Net Service Models & Designs), vol. 2, 2011, pp. 81-94. [13] B. P. Rimal, E. Choi, and I. Lumb, “A Taxonomy and Survey of Cloud

Computing Systems,” presented at Fifth International Conference on INC, IMS and IDC, Seoul, Korea, 2009.

[14] A. Li, X. Yang, S. Kandula, and M. Zhang, “CloudCmp: Comparing Public Cloud Providers,” presented at 10th ACM SIGCOMM conference on Internet measurement, Melbourne, Australia, 2010.

[15] “Compare Cloud Computing Providers”, available at http://cloud-computing.findthebest.com/, accessed on 28th July, 2013.

[16] “Top 6 IaaS Competitors in Cloud Platform”, available at http://www.siliconindia.com/news/enterpriseit/Top-6-IaaS-Competitors-in-Cloud-Platform-nid-124330-cid-7.html, accessed on August 2013. [17] “10 most powerful IaaS Companies”, available at

http://www.networkworld.com/supp/2012/enterprise2/040912-ecs-iaas-companies-257611.html, accessed on August 2013.

[18] “The Top 20 Infrastructure as a Service (IaaS) Vendors”, available at http://www.clouds360.com/iaas.php, accessed on August 2013. [19] “The Top Five Platform-as-a-service offerings you should know about”,

available at http://sdt.bz/35695, accessed on August 2013.

[20] “The Top 20 Platform as a Service (PaaS) Vendors”, available at http://www.clouds360.com/paas.php, accessed on August 2013. [21] “VMware vCloud Suite,” VMware, Inc. 2012.

[22] ”Citrix Cloud Platform for the Service Provider,” Citrix Systems 2013. [23] “Cloud Computing, Customer Relationship Management, (CRM)”, available at http://www.salesforce.com/in/?ir=1, accessed on August 2013.

[24] “Cloud Server and Cloud Storage”, available at www.lunacloud.com/, accessed on August 2013.

Figure

TABLE I. A SUMMARY OF COMPARATIVE STUDIES DONE ON CLOUD COMPUTING PROVIDERS
TABLE III. A COMPARISON OF FEATURES PROVIDED BY MAJOR P AA S CLOUD COMPUTING PROVIDERS

References

Related documents

Talk to an NRC inspector on-site or call or write to the nearest NRC Regional Office in your geographical area (see map below). If you call the NRC’s toll- free SAFETY HOTLINE

Approaching Future Wage Loss 1995 SLT (News) 173 Multipliers for Future Wage Loss 1998 SLT (News) 291 Admissibility of Video Evidence Civil Practice Bulletin Issue 58 Damages

The Evaluator will place a check mark in the box for each numbered item completed correctly. The Firefighter will get three attempts to PASS

By using the bank payment slip with reference number (BESR), you can significantly simplify and rationalize the control procedure for incoming payments and accounts receivable

A4 OUR STORAgE AS A SERvICE OFFERIngS InClUdE: STORAGE AS A SERvICE — STORE Unlike traditional storage models — by which you purchase storage in incremental blocks or steps, and

Leveraging the cloud as a component, Storage Infrastructure as a Service (SIaaS) is a new solution for enterprise data storage that delivers uniform storage with

enterprises and Service Providers can utilize the cloudian Platform for applications such as back up, device synchronization, collaboration, archiving, cdn storage, and low

• Webcast #1 –May 12– Introduction to Cloud Computing • Webcast #2 –May 19– Software as a Service (SaaS).. • Webcast #3 –May 26– Infrastructure as a Service (IaaS)