Paper Title (use style: paper title)

advertisement
International Journal on Advanced Computer Theory and Engineering (IJACTE)
_______________________________________________________________________________________________
Cloud Computing: A New Paradigm in Utility Computing
1
Mayanka Katyal and 2Atul Mishra
1
Deptt. of Computer Engineering, YMCA University of Science and Technology, Faridabad, Haryana, INDIA,
Deptt. of Computer Engineering, YMCA University of Science and Technology, Faridabad, Haryana, INDIA,
Email: 1mayankakatyal@gmail.com, 2mish.atul@gmail.com
2
Abstract- Cloud computing can be regarded as integration
of various computing technologies which offered better
utilization of resources but could not achieve optimized
performance. Cloud computing made use of all existing
technologies like grid and utility, including internet to
deliver infrastructure, applications and business processes
as services to its users. It provided a means to attain IT
(information technology) resources on demand at cheaper
rates in scalable and shared environment. In this paper we
discuss the roots of cloud computing which eventually lead
to emergence of this technology.
Keywords: Cloud Computing, Virtualization, Grid, Service
oriented architecture (SOA).
I.
INTRODUCTION
In the field of information technology (IT), the term
Cloud Computing used to describe a category of ondemand computing services offered initially by
commercial providers. Cloud computing is a model in
which infrastructure attainable for computing is viewed
as a “cloud”. Business and individuals from anywhere in
the world can access their applications from cloud and
save it on cloud storage. This model of computing offers
“storage” as a service, “software” as a service and
“computing” as a service. Initially this sophisticated
category of computation was offered by Amazon [1],
Google and Microsoft.
Emergence of technologies such as cluster [2] and grid
[2] provide a way of aggregating resources and allowed
access to enormous amount of computational power in
fully virtualized manner while offering single system
view at the same time. Similar to cluster and grid, Cloud
computing also aims at providing large amount of
computing power while eliminating the shortcomings of
previous technologies.
dynamically provisioned and presented as one or more
unified computing resources based on service level
agreements (SLA) established through negotiations
between service provider and consumers.”
Over the years, emergence of technologies has
significantly contributed to make cloud computing
viable. In this direction this introduction tracks the
emergence of cloud computing in Section II. Section II
also explains the concept of virtualization which forms
the backbone of cloud computing. Section III presents
the layered architecture of cloud computing along with
cloud deployment models. Section IV further describes
features of cloud computing. The discussion ends with
the benefits and capabilities of cloud computing in
Section V and finally the paper concludes in section VI.
II.
EMERGENCE OF CLOUD
COMPUTING
In this section, we discuss the advancement of different
technologies in the field of information technology
which lead to the evolution of cloud computing.
Convergence in the fields of internet technology,
distributed
computing,
hardware
and
system
management contributed significantly to development of
cloud computing environment. Table I, shows the list of
technologies that contributed in the emergence of cloud
computing.
TABLE I. TECHNOLOGIES LEADING TO
EMERGENCE OF CLOUD COMPUTING
TECHNOLOGIES
Internet Technology
Distributed Computing
ADVANCEMENT IN
TECHNOLOGIES
Web Services, Service
Oriented Architecture
Grid
and
utility
computing
Virtualization
Autonomic Computing,
Datacenter Automation
After the advent of internet [3] a lot of hype surrounded
Hardware
cloud computing field. When trying to define cloud
System Management
computing and its computing infrastructure, a great deal
of confusion aroused. Buyya et al. [4] defined cloud
computing as follows “Cloud is a parallel and
distributed computing system consisting of a collection
of interconnected and virtualized computer that are
_______________________________________________________________________________________________
ISSN (Print): 2319-2526, Volume -3, Issue -6, 2014
1
International Journal on Advanced Computer Theory and Engineering (IJACTE)
_______________________________________________________________________________________________
Maturity of such technologies closely linked to the
emergence of cloud computing. With the aim to provide
clearer picture of cloud computing environment, we
present further a closer look at the advancement in these
technologies that form the roots of cloud computing.
which turned out to be a bottleneck for its acceptance in
the field of information technology. Various issues
encountered in grid computing are as described as
follows:
i.
Quality of Service (QoS): Lack of performance
isolation degraded the demand of grid computing.
Performance perceived by one user can be
influenced by activities of other user using the
same platform in an uncontrollable manner. As a
result execution time cannot be guaranteed in
time critical applications.
ii.
Availability of Resources: Resources with
diverse software configuration were not easily
available in cloud computing environment.
iii.
Portability: There also existed barrier
portability in grid computing infrastructure.
A. Internet Technology: Web Services and Service
Oriented Architecture
Significant advancement in the field of software
integration was obtained prior to emergence of web
services. Web services make use of internet to make
available internal applications. They enable information
from one application to be easily made available to other
application by integrating application running on
different messaging product platforms. Web services
also provide common mechanism for delivering
services, as standards for web services have been created
on the top of existing technologies such as XML and
HTTP. This feature of web services enable ease of
implementation of service oriented architecture (SOA).
In a SOA, well defined and self contained modules are
offered as “services” over internet. Services in SOA are
packaged software resources that provide standard
business functionality and can be delivered over
internet.
The true power of web services resides in its interface
that is being accessible by other services. Standard
protocols such as SOAP and REST [5] are used by
service providers like Amazon, Facebook and Google so
as to make their service APIs accessible to all varieties
of users.
Composition of services by same or different provider
form the roots of Software as a service (SaaS) domain in
cloud computing. Services such as e-mail, authentication
and calendars can be reused and combined to provide
single packaged software having all these features, in
case single system does not provide it. Variety of
interesting solutions can be composed by combining
popular APIs such as twitter, Google Maps, You tube
and variety of other technologies.
B. Grid Computing
Grid computing [8] is a technology that permits sharing
of computational and storage resources that are widely
distributed across different administrative domain over a
network. TeraGrid [6] and EGEE [7] are production
grids that focus on accelerating a wide range of
applications such as drug design and climate modeling.
Grid computing allows distributed resources to be
“identified, accessed, provisioned, controlled and
accounted for” via standard web services based protocol.
These resources are managed as single virtual system.
Although grid computing facilitated sharing of resources
across network but it also had various shortcomings
in
The solution to all these issues was offered by
virtualization which gives determination to development
of cloud computing.
C. Utility Computing
Equitable access to resources must be provided to all
users in a fair manner. Resources must be managed in
such a manner that there exists no partial allocation of
resources. Grid computing failed to provide efficient
management of resources in case of excessive demands
of resources. There were no techniques in grid
computing that offered flexibility about resource
requirements. There were no techniques to provision
users having urgent work.
In utility computing [8] environment, utility is either
fixed or time varying. The value of utility is decided on
the basis of various QoS constraints like importance,
deadline and satisfaction. The value calculated is the
amount the customer is ready to pay to the service
provider in order to satisfy their requirement. The
service provider on the other hand attempt to maximize
their utility which is directly related to profit earned.
Provider can prioritize job that earn them higher utility
(profits), thus making customers compete for resources.
This concept of utility computing is presently used in
cloud computing to provision resources to user in payas-you-say manner.
D. Virtualization
Cloud computing involves deployment of large scale
datacenters [2]. Datacenters comprise of thousands of
computers. The purpose of these datacenters is to serve
all cloud users [2] and host their applications. The
maintenance and building of datacenters can be achieved
by means of virtualization [9].
_______________________________________________________________________________________________
ISSN (Print): 2319-2526, Volume -3, Issue -6, 2014
2
International Journal on Advanced Computer Theory and Engineering (IJACTE)
_______________________________________________________________________________________________
Figure 2(b) Hosted Virtualization
Figure 1. Virtualization layer in a physical machine
The vision of improving sharing and utilization of IT
infrastructure including processors, memory, and inputoutput devices gave rise to the idea of virtualizing
computer system. Virtualization technology separates
the request for a service from underlying hardware
responsible for delivering that service. Virtualization
layer is added between hardware and operating system
as shown in fig. 1. In fig. 1, multiple instances of
operating system (OS) run concurrently on a single
computer within a virtual machine (VM) [2] by means
of virtualization. The physical resources such as CPU,
storage, memory and I/O devices are shared among all
the VMs residing on a single computer. Virtualization
offers full abstraction of OS and application from
hardware.
Virtualization uses two types of architecture: either
hypervisor or hosted. Hypervisor architecture as shown
in fig. 2(a) is a bare metal architecture in which
virtualization layer is directly installed on a clean x-86
[9] based system. In hosted architecture virtualization
layer is hosted and run as an application on the top of an
OS as shown in fig. 2(b).
The responsibility of virtualization layer is to host
and manage VMs on hypervisor running directly on
hardware. Hypervisor is also referred to as virtual
machine monitor (VMM). Functions of VMM are:
i.
ii.
iii.
Implementing the abstraction of VM hardware.
Running guest OS.
Partitioning of hardware resources.
Table II summarizes the two types of virtualization
architecture along with their features and benefits.
TABLE II. CATEGORIES OF VIRTUALIZATION
ARCHITECTURE
Type of
Virtualization
Architecture
Hypervisor
based
virtualization
Hosted
Virtualization
Features
Benefits
It
has i. More efficient
direct
ii. Deliver
greater
access to
scalability
hardware
iii. Robustness
resources
iv. Performance
It
goes Supports broad range
through
of
hardware
OS
to configurations
hardware
All these features of VMM enable to successfully
achieve virtualization. Also there is one another issue
that poses difficulty in achieving fully virtualized
system. There exist some sensitive instructions that
cannot be virtualized. These need special type of
handling.
TABLE III. ADVANTAGES OF DIFFERENT TYPES
OF VIRTUALIZATION.
Type of
Virtualization
Full
Virtualization
Paravirtualization
Advantages
i.
ii.
iii.
i.
ii.
iii.
Hardware
Assisted
Virtualization
i.
ii.
Best isolation
Security of VMs
Simplifies
migration
and
portability
Binary translation is not
required
Modification of guest OS is
easy as compared to binary
translation.
Hypervisor provides memory
management,
interrupt
handling and time keeping
Does not require binary
translation or changes in guest
OS
Offers
compatibility
and
portability
Figure 2(a) Hypervisor based virtualization
_______________________________________________________________________________________________
ISSN (Print): 2319-2526, Volume -3, Issue -6, 2014
3
International Journal on Advanced Computer Theory and Engineering (IJACTE)
_______________________________________________________________________________________________
Based on handling of these non-virtualizable
instructions virtualization is divided into three
categories: discussed ahead.
i.
Full Virtualization: It uses a combination of
binary translation and direct execution. VMM
translates the kernel code containing nonvirtualizable instructions using binary translation.
However the instructions that are virtualizable
are directly executed.
ii.
Paravirtualization: This is also known as OS
assisted virtualization. In this changes are made
in the kernel of the guest OS to replace nonvirtualizable instructions with hypercalls. The
hypercalls directly communicate with VMM.
iii.
Hardware assisted Virtualization: In this the
hardware generates trap for non-virtualizable
instructions eliminating the need for binary
translation or paravirtualization.
Table III gives the advantages of different types of
virtualization. Each type of virtualization has its own
usage in given environment depending upon user
requirements.
A number of VMM platforms exist that form basis of
cloud computing. VMware ESXi, Xen and KVM (kernel
based virtual machine) are most notable ones. Table IV
gives features of these VMMs.
E. Autonomic Computing
Cloud infrastructure layer [11] is responsible for
providing computation, storage and communication
resources to cloud users. This layer provides on demand
provisioning of resources.
Cloud platform layer [11] offers cloud users
(particularly developers) with an environment to create
and deploy applications.
Cloud application layer [11] resides on the top of cloud
architecture. These are the applications accessible by
end users through appropriate web portals.
TABLE IV. FEATURES OF DIFFERENT VMMS
VMM
Features
VMwa
re
ESXi
i.Offers
advanced
virtualization
ii. Memory
flexibility
iii.VMs
flexibility
i.Open
Source
ii.Improved
performance
Linux
virtualization
subsystem
Xen
KVM
Autonomic computing [10] is a computing technology
that aims at improving systems capability by decreasing
human intervention in operations of computer. The
systems must be capable enough to manage themselves,
with high level of guidance being given by humans.
System possessing following four properties are said to
be autonomic systems: i) self-configuration, ii) self
optimization, iii) self protection, and iv) self healing.
Autonomic computing promotes datacenters in cloud
computing to be self managed.
Type
of
Virtualizati
on
supported
Full
virtualizati
on
Hypervisor
Paravirtuali
zation
Bare Metal
Hardware
assisted
virtualizati
on
Implemented
as a kernel
module and
allows
its
host OS to
act as a bare
metal
Bare Metal
The capabilities of all these technologies constitute the
basic features of cloud computing as discussed in further
sections.
III.
LAYERED ARCHITECTURE OF
CLOUD COMPUTING AND
DEPLOYMENT MODELS
Services of cloud computing are divided into three
classes namely, Infrastructure as a service (IaaS),
Platform as a service (PaaS), and Software as a service
(SaaS). Figure 3 depicts the layered architecture of a
cloud in which each layer is abstracted from layer below
it.
Figure 3. Layered architecture of Cloud
TABLE V. TYPES OF CLOUD
Type of Cloud
Public Cloud
Private Cloud
Community Cloud
Deployment
Cloud made available
to common public.
Cloud
available
internally within an
organization
Cloud shared by group
_______________________________________________________________________________________________
ISSN (Print): 2319-2526, Volume -3, Issue -6, 2014
4
International Journal on Advanced Computer Theory and Engineering (IJACTE)
_______________________________________________________________________________________________
Hybrid Cloud
of institutes or specific
community
Private
cloud
is
supplemented
with
capabilities of public
cloud.
Regardless of the service offered by cloud computing
environment, cloud can be categorized as public,
private, community, or hybrid based on the deployment
model. Table V categorizes the cloud along with their
deployment details.
IV.
FEATURES OF CLOUD
COMPUTING ENVIRONMENT
Cloud computing environment must possess following
features in order to satisfy increasingly growing
customers requirements which vary rapidly.
i. Elasticity: Cloud is provisioned with enormous
computational resources. The cloud computing
environment must deploy techniques to efficiently
increase and decrease the quantity of resources when the
demand increase and decreases respectively.
ii. Per-Usage Metering and Billing: The customers of the
cloud pay for every unit of resource they use on demand.
Therefore, the metering must be done efficiently for
different types of resources (processor, storage, and
bandwidth) in a transparent manner.
iii. Self Service: The users of cloud must be provided an
interface to directly request, use and pay for cloud
services without human assistance.
iv. Customizable: Different users have different
requirements which vary from time to time. Cloud
computing must provide an environment where users
can customize their resources as per their requirement.
There is lesser flexibility in customization of platform
and software. However, infrastructure can be easily
customized.
V.
BENEFITS AND CAPABILITIES OF
CLOUD COMPUTING
balancing and recovery from disaster. In this sense, the
cloud computing inspires both cloud users and cloud
providers to move towards more efficient computing in
which resources are readily available on demand with
batter performance and at better rates.
VI.
CONCLUSION
Cloud computing is a revolutionary computing paradigm
in the field of distributed computing that can be used by
variety of users ranging from large organizations to
common user of internet. It offers huge amount of
resources to users in masses. It has effectively catered
the issues related to performance and utilization.
Efficient balancing of cloud computing resources will
further lead to evolution of highly effective
computational environment.
REFERENCES
[1].
Amazon Elastic Compute Cloud (EC2).
Retrieved from
http://www.amazon.com/ec2/
(accessed on April 18, 2010).
[2].
Mayanka Katyal, Atul Mishra, “A Comparative
Study of Load Balancing Algorithms in Cloud
Computing Environment” International Journal
of Distributed and Cloud Computing Volume 1
Issue 2 December 2013.
[3].
N.Carr, The Big Switch:Rewiring the world,
From Edison to Google. W.W. Norton & Co.,
New York, 2008.
[4].
R.Buyya, C.S.Yeo, S.Venugopal, J.Broberg, and
I.Brandic, Cloud Computing and emerging IT
platforms: Vision,hype and reality of delivering
computing as the 5th utility, Future generation
computer systems,25:599-616,2009.
[5] .
B.Blau et al. Planning and pricing of service
mashups, in proceedings of the 2008 10th IEEE
Conference on E-Commerce Technology.
[6].
C.Catlett, The Philosophy of Tera Grid:Building
an Open , Extensible, distributed Tera scale
facility in proceedings of 2nd IEEE/ACM
International Symposium on cluster computing
and the Grid.
The advent of innovative and efficient technologies has
lead to adoption of cloud computing. Traditionally,
improvement in utilization of resources, higher degree
of sharing, higher reliability and better manageability
[7]. F.Gagliardi et al. Building an infrastructure for
were seen as benefits of cloud computing. However the
scientific Grid Computing: Status and goals of
adoption of technology of virtualization has provided
EGEE project, philosophical transactions of the
efficient way to manage workload in an “isolated”
royal society.
manner. Also cloud computing further improves
utilization level by supporting consolidation of
[8]. Buyya et al. “Market oriented frid and utility
heterogeneous workload onto a single machine. Apart
computing:The state-of-the-art and the future
from these workload migration is the distinct capability
directions”, journal of grid computing, 6:255of cloud computing which makes it more innovative and
276,2008.
beneficial. Workload migration helps in achieving load
_______________________________________________________________________________________________
ISSN (Print): 2319-2526, Volume -3, Issue -6, 2014
5
International Journal on Advanced Computer Theory and Engineering (IJACTE)
_______________________________________________________________________________________________
[9].
Understanding
Full
Virtualization,
Paravirtualization, and Hardware Assist-A white
paper.
[11]. Lamia Youseff ,Maria Butrico, Dilma Da Silva,
“Toward a Unified Ontology of Cloud
Computing”.
[10]. International Business Machines Corp., An
architectural Blueprint of autonomic computing,
White paper 4th edition, 2006.

_______________________________________________________________________________________________
ISSN (Print): 2319-2526, Volume -3, Issue -6, 2014
6
Download