0% found this document useful (0 votes)
133 views

Sample Technical Seminar

This technical seminar report provides an overview of cloud computing. It defines cloud computing as a recent paradigm for distributed computing that provides on-demand IT services on a pay-as-you-use basis with flexibility, availability, reliability and scalability. The report discusses the basics of cloud computing including types of cloud, stakeholders, advantages, and how cloud computing evolved from earlier technologies like grid and utility computing. It also provides examples of popular cloud applications and discusses how cloud computing could benefit applications in e-governance and rural development in India.

Uploaded by

VIJAY kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
133 views

Sample Technical Seminar

This technical seminar report provides an overview of cloud computing. It defines cloud computing as a recent paradigm for distributed computing that provides on-demand IT services on a pay-as-you-use basis with flexibility, availability, reliability and scalability. The report discusses the basics of cloud computing including types of cloud, stakeholders, advantages, and how cloud computing evolved from earlier technologies like grid and utility computing. It also provides examples of popular cloud applications and discusses how cloud computing could benefit applications in e-governance and rural development in India.

Uploaded by

VIJAY kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 48

Technical Seminar report

On
Cloud Computing
Presented
By
Nirosha Chunakar
15E41D5801

Department of Computer Science &


Engineering
(DATA SCIENCE)

CMR ENGINEERING COLLEGE

(Approved by AICTE-New Delhi, Affiliated to J.N.T.U, Hyderabad)


Kandlakoya (v), MedchalRoad, Hyderabad-501401, Telangana State,
India.Website:www.cmrec.ac.in (2023-24)
Cloud Computing

Abstract
The term \cloud computing" is a recent
buzzword in the IT world. Behind this fancy
poetic phrase there lies a true picture of the
future of computing for both in technical
perspective and social perspective. Though the
term \Cloud Computing" is recent but the idea
of centralizing computation and storage in
distributed data centers maintained by third
party companies is not new but it came in way
back in 1990s along with distributed computing
approaches like grid computing. Cloud
computing is aimed at providing IT as a service
to the cloud users on-demand basis with
greater exibility, availability, reliability and
scalability with utility computing model. This
new paradigm of computing has an immense
potential in it to be used in the eld of e-
governance and in rural development
perspective in developing countries like India.
Cloud Computing

Contents
1 Introduction 4

2 Cloud Computing Basics 5


2.1 Types of Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Cloud Stakeholders . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 Advantages of using Cloud . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Motivation towards Cloud in recent time 7

4 Cloud Architecture 8
4.1 Comparison between Cloud Computing and Grid Computing . . . . . 10
4.2 Relation between Cloud Computing and Utility Computing . . . . . . 10
4.3 Types of utility cloud services . . . . . . . . . . . . . . . . . . . . . . 10

5 Popular Cloud Applications: A Case study 13


5.1 Amazon EC2 and S3 Services . . . . . . . . . . . . . . . . . . . . . . 13
5.2 Google App-Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.3 Windows Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

6 Cloud Computing Application in Indian context 19


6.1 E-Governance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
6.2 Rural development . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

7 Conclusion 25

3
Cloud Computing

1 Introduction
Cloud computing is a recently developing paradigm of distributed computing.
Though it is not a new idea that emerged just recently. In 1969 [16] L. Kleinrock
anticipated, \As of now, computer networks are still in their infancy. But as they
grow up and become more sophisticated, we will probably see the spread of
'computer utilities' which, like present electric and telephone utilities, will service
individual homes and o ces across the country." His vision was the true indication
of today's utility based computing paradigm. One of the giant steps towards this
world was taken in mid 1990s when grid computing was rst coined to allow
consumers to obtain computing power on demand. The origin of cloud computing
can be seen as an evolution of grid computing technologies. The term Cloud
computing was given prominence rst by Google's CEO Eric Schmidt in late 2006
(may be he coined the term) [6]. So the birth of cloud computing is very recent
phenomena although its root belongs to some old ideas with new business,
technical and social perspectives. From the archi-tectural point of view cloud is
naturally build on an existing grid based architecture and uses the grid services
and adds some technologies like virtualization and some business models.
In brief cloud is essentially a bunch of commodity computers networked
to-gether in same or di erent geographical locations, operating together to serve
a number of customers with di erent need and workload on demand basis with
the help of virtualization. Cloud services are provided to the cloud users as
utility ser-vices like water, electricity, telephone using pay-as-you-use business
model. These utility services are generally described as XaaS (X as a Service)
where X can be Software or Platform or Infrastructure etc. Cloud users use
these services provided by the cloud providers and build their applications in the
internet and thus deliver them to their end users. So the cloud users don't have
to worry about installing, maintaining hardware and software needed. And they
also can a ord these services as they have to pay as much they use. So the
cloud users can reduce their expen-diture and e ort in the eld of IT using cloud
services instead of establishing IT infrastructure themselves.
Cloud is essentially provided by large distributed data centers. These data
centers are often organized as grid and the cloud is built on top of the grid services.
Cloud users are provided with virtual images of the physical machines in the data
centers. This virtualization is one of the key concept of cloud computing as it
essentially builds the abstraction over the physical system. Many cloud applications
are gaining popularity day by day for their availability, reliability, scalability and
utility model. These applications made distributed computing easy as the critical

4
Cloud Computing

aspects are handled by the cloud provider itself.


Cloud computing is growing now-a-days in the interest of technical and
busi-ness organizations but this can also be bene cial for solving social issues.
In the recent time E-Governance is being implemented in developing countries
to improve e ciency and e ectiveness of governance. This approach can be
improved much by using cloud computing instead of traditional ICT. In India,
economy is agriculture based and most of the citizens live in rural areas. The
standard of living, agricul-tural productivity etc can be enhanced by utilizing
cloud computing in a proper way. Both of these applications of cloud computing
have technological as well as social challenges to overcome.
In this report we would try to clarify some of the ideas { Why is cloud
computing a buzzword today? i.e. what are the bene ts the provider and the
users get using cloud? Though its idea has come long back in 1990 but what
situation made it indispensable today? How is cloud built? What di erentiates it
from similar terms like grid computing and utility computing? What are the di
erent services are provided by the cloud providers? Though cloud computing
now-a-days talks about business enterprises not the non-pro t organizations;
how can this new paradigm be used in the services like e-governance and in
social development issues of rural India?

2 Cloud Computing Basics


Cloud computing is a paradigm of distributed computing to provide the customers
on-demand, utility based computing services. Cloud users can provide more reli-
able, available and updated services to their clients in turn. Cloud itself consists of
physical machines in the data centers of cloud providers. Virtualization is pro-vided
on top of these physical machines. These virtual machines are provided to the
cloud users. Di erent cloud provider provides cloud services of di erent abstraction
level. E.g. Amazon EC2 enables the users to handle very low level details where
Google App-Engine provides a development platform for the developers to develop
their applications. So the cloud services are divided into many types like Software
as a Service, Platform as a Service or Infrastructure as a Service. These services
are available over the Internet in the whole world where the cloud acts as the single
point of access for serving all customers. Cloud computing architecture addresses
di culties of large scale data processing.

5
Cloud Computing

2.1 Types of Cloud


Cloud can be of three types [20].

1. Private Cloud { This type of cloud is maintained within an organization and


used solely for their internal purpose. So the utility model is not a big term
in this scenario. Many companies are moving towards this setting and
experts consider this is the 1st step for an organization to move into cloud.
Security, network bandwidth are not critical issues for private cloud.

2. Public Cloud { In this type an organization rents cloud services from cloud
providers on-demand basis. Services provided to the users using utility
com-puting model.

3. Hybrid Cloud { This type of cloud is composed of multiple internal or exter-


nal cloud. This is the scenario when an organization moves to public cloud
computing domain from its internal private cloud.

2.2 Cloud Stakeholders

To know why cloud computing is used let's rst concentrate on who use it. And
then we would discuss what advantages they get using cloud. There are three
types of stakeholders cloud providers, cloud users and the end users [Figure 1].
Cloud providers provide cloud services to the cloud users. These cloud services
are of the form of utility computing i.e. the cloud users uses these services pay-
as-you-go model. The cloud users develop their product using these services
and deliver the product to the end users.

Figure 1: Interconnection between cloud stakeholders

6
Cloud Computing

2.3 Advantages of using Cloud


The advantages for using cloud services can be of technical, architectural,
business etc [5, 6].

1. Cloud Providers' point of view

(a) Most of the data centers today are under utilized. They are mostly 15%
utilized. These data centers need spare capacity just to cope with the
huge spikes that sometimes get in the server usage. Large companies
having those data centers can easily rent those computing power to
other organizations and get pro t out of it and also make the resources
needed for running data center (like power) utilized properly.
(b) Companies having large data centers have already deployed the
resources and to provide cloud services they would need very little
investment and the cost would be incremental.

2. Cloud Users' point of view

(a) Cloud users need not to take care about the hardware and software
they use and also they don't have to be worried about maintenance.
The users are no longer tied to some one traditional system.
(b) Virtualization technology gives the illusion to the users that they are
having all the resources available.
(c) Cloud users can use the resources on demand basis and pay as
much as they use. So the users can plan well for reducing their usage
to minimize their expenditure.
(d) Scalability is one of the major advantages to cloud users. Scalability
is provided dynamically to the users. Users get as much resources as
they need. Thus this model perfectly ts in the management of rare
spikes in the demand.

3 Motivation towards Cloud in recent time


Cloud computing is not a new idea but it is an evolution of some old paradigm of
distributed computing. The advent of the enthusiasm about cloud computing in
recent past is due to some recent technology trend and business models [5].

7
Cloud Computing

1. High demand of interactive applications { Applications with real time


response and with capability of providing information either by other users
or by non-human sensors gaining more and more popularity today. These
are generally attracted to cloud not only because of high availability but
also because these services are generally data intensive and require
analyzing data across di erent sources.

2. Parallel batch processing { Cloud inherently supports batch-processing


and analyzing tera-bytes of data very e ciently. Programming models like
Google's map-reduce [18] and Yahoo!'s open source counter part Hadoop
can be used to do these hiding operational complexity of parallel
processing of hundreds of cloud computing servers.

3. New trend in business world and scienti c community { In recent times the
business enterprises are interested in discovering customers needs, buying pat-
terns, supply chains to take top management decisions. These require analysis
of very large amount of online data. This can be done with the help of cloud very
easily. Yahoo! Homepage is a very good example of such thing. In the
homepage they show the hottest news in the country. And according to the users'
interest they change the ads and other sections in the page. Other than these
many scienti c experiments need very time consuming data processing jobs like
LHC (Large Hadron Collider). Those can be done by cloud.

4. Extensive desktop application { Some desktop applications like Matlab,


Math-ematica are becoming so compute intensive that a single desktop
machine is no longer enough to run them. So they are developed to be
capable of using cloud computing to perform extensive evaluations.

4 Cloud Architecture
The cloud providers actually have the physical data centers to provide
virtualized services to their users through Internet. The cloud providers often
provide separa-tion between application and data. This scenario is shown in the
Figure 2. The underlying physical machines are generally organized in grids and
they are usu-ally geographically distributed. Virtualization plays an important
role in the cloud scenario. The data center hosts provide the physical hardware
on which virtual ma-chines resides. User potentially can use any OS supported
by the virtual machines used.

8
Cloud Computing

Figure 2: Basic Cloud Computing Architecture

Operating systems are designed for speci c hardware and software. It


results in the lack of portability of operating system and software from one machine
to another machine which uses di erent instruction set architecture. The concept of
virtual machine solves this problem by acting as an interface between the hardware
and the operating system called as system VMs [21]. Another category of virtual
machine is called process virtual machine which acts as an abstract layer between
the operating system and applications. Virtualization can be very roughly said to be
as software translating the hardware instructions generated by conventional soft-
ware to the understandable format for the physical hardware. Virtualization also
includes the mapping of virtual resources like registers and memory to real hard-
ware resources. The underlying platform in virtualization is generally referred to as
host and the software that runs in the VM environment is called as the guest. The
Figure 3 shows very basics of virtualization. Here the virtualization layer cov-ers the
physical hardware. Operating System accesses physical hardware through
virtualization layer. Applications can issue instruction by using OS interface as well
as directly using virtualizing layer interface. This design enables the users to use
applications not compatible with the operating system.
Virtualization enables the migration of the virtual image from one physical
machine to another and this feature is useful for cloud as by data locality lots of
optimization is possible and also this feature is helpful for taking back up in di
erent locations. This feature also enables the provider to shut down some of the
data center physical machines to reduce power consumption.

9
Cloud Computing

Figure 3: Virtualization basic [21]

4.1 Comparison between Cloud Computing and Grid Com-


puting

Most of the cloud architectures are built on Grid architecture and utilizes its ser-
vice. Grid is also a form of distributed computing architecture where
organizations owning data centers collaborate with each other to have mutual
bene t. Although if apparently seen it seems that cloud computing is no di erent
from its originator in the rst look but there are substantial di erence between
them in spite of so many similarities [12]. The relation between Grid and cloud
computing is discussed in Table 1.

4.2 Relation between Cloud Computing and Utility Com-puting

The cloud users enjoy utility computing model for interacting with cloud service
providers. This Utility computing is essentially not same as cloud computing.
Utility computing is the aggregation of computing resources, such as
computation and storage, as a metered service similar to a traditional public
utility like electricity, water or telephone network. This service might be provided
by a dedicated computer cluster speci cally built for the purpose of being rented
out, or even an under-utilized supercomputer. And cloud is one of such option of
providing utility computing to the users.

4.3 Types of utility cloud services


Utility computing services provided by the cloud provider can be classi ed by the
type of the services. These services are typically represented as XaaS where we

10
Cloud Computing

Table 1: Comparison between Grid & Cloud computing

Characteristics Grid Computing Cloud Computing

Adopts project oriented busi-


ness model. The participating
parties agree to share a cer-
Business Model tain amount of resource with Uses Pay-as-you-go model.
others and gain the opportu-
nity of using all other grids'
resources.
Schedules dedicated resources
by a queuing service. Un-
Share all resources simultane-
til all the resources are avail-
ously to all the users at the
able as speci ed by the LRM
same time. This allows la-
Resource Management (Local Resource Manager) the
tency intensive and interac-
job waits in the queue. Thus
tive applications run naively
interactive and latency inten-
in cloud.
sive applications are not exe-
cuted e ciently in grid.
No virtualization, as the data
centers are handled by the in-
dividual organizations of their
own. So they generally man- For cloud computing one of
age those usually physically the essential components is
but not by virtualization. Al- virtualization. This is for pro-
Virtualization
though there are some e orts viding abstraction and encap-
being given by some com- sulation to the users of the
panies like Nimbus for vir- cloud.
tualization to make dynamic
deployment and abstraction
available.
Executing tasks may be small
Supports only loosely cou-
or large, loosely coupled or
Application model pled and transaction oriented,
tightly coupled, compute in-
mostly interactive jobs.
tensive or data intensive.
Grids build on the assump-
tion that resources are hetero-
Cloud security is now in its in-
Security model geneous and dynamic. Thus
fancy.
security is engineered in fun-
damental grid infrastructure.

11
Cloud Computing

can replace X by Infrastructure or Platform or Hardware or Software or Desktop


or Data etc. There are three main types of services most widely accepted -
Software as a Service, Platform as a Service and Infrastructure as a Service.
These services provide di erent levels of abstraction and exibility to the cloud
users. This is shown in the Figure 4.

Figure 4: Cloud Service stack

We'll now discuss some salient features of some of these models -

1. SaaS (Software as a service) { Delivers a single application through the web


browser to thousands of customers using a multitenant architecture. On the
customer side, it means no upfront investment in servers or software licens-ing;
on the provider side, with just one application to maintain, cost is low compared
to conventional hosting. Under SaaS, the software publisher (seller) runs and
maintains all necessary hardware and software. The customer of SaaS accesses
the applications through Internet. For example Salesforce.com with yearly
revenues of over $300M, o ers on-demand Customer Relationship Management
software solutions. This application runs on Salesforce.com's own infrastructure
and delivered directly to the users over the Internet. Salesforce
12
Cloud Computing

does not sell perpetual licenses but it charges a monthly subscription fee
start-ing at $65/user/month [10]. Google docs is also a very nice example
of SaaS where the users can create, edit, delete and share their
documents, spread-sheets or presentations whereas Google have the
responsibility to maintain the software and hardware.
E.g. - Google Apps, Zoho O ce.

2. PaaS (Platform as a service) { Delivers development environment as a ser-


vice. One can build his/her own applications that run on the provider's infras-
tructure that support transactions, uniform authentication, robust scalability
and availability. The applications built using PaaS are o ered as SaaS and
consumed directly from the end users' web browsers. This gives the ability to
integrate or consume third-party web-services from other service platforms.
E.g. - Google App Engine.

3. IaaS (Infrastructure as a Service) { IaaS service provides the users of the


cloud greater exibility to lower level than other services. It gives even CPU
clocks with OS level control to the developers.
E.g. - Amazon EC2 and S3.

5 Popular Cloud Applications: A Case study


Applications using cloud computing are gaining popularity day by day for their
high availability, reliability and utility service model. Today many cloud providers
are in the IT market. Of those Google App-Engine, Windows Azure and Amazon
EC2, S3 are prominent ones for their popularity and technical perspective.

5.1 Amazon EC2 and S3 Services

Amazon Elastic Computing (EC2) [13] is one of the biggest organizations to pro-
vide Infrastructure as a Service. They provide the computer architecture with XEN
virtual machine. Amazon EC2 is one of the biggest deployment of XEN architec-
ture to date. The clients can install their suitable operating system on the virtual
machine. EC2 uses Simple Storage Service (S3) for storage of data. Users can hire
suitable amount CPU power, storage, and memory without any upfront com-
mitment. Users can control the entire software stack from kernel upwards. The

13
Cloud Computing

architecture has two components one is the EC2 for computing purposes and
S3 is for storage purposes [14].

Simple Storage Service: S3 can be thought as a globally available distributed


hash table with high-level access control. Data is stored in name/value pairs.
Names are like UNIX le names and the value can be object having size up-to
5 GB with up-to 4K of metadata for each object. All objects in Amazon's S3
must t into the global namespace. This namespace consists of a \bucket
name" and an \object name". Bucket names are like user names in traditional
email account and provided by Amazon on rst come rst serve basis. An AWS
(Amazon Web Services) account can have maximum of 100 buckets.
Data to S3 can be sent by SOAP based API or with raw HTTP \PUT" com-
mands. Data can be retrieved using SOAP HTTP or BitTorrent. While
using BitTorrent the S3 system operates as both tracker and the initial
seeder. There are also some tools available which enables the users to
view S3 as a remote le system. Upload download rate from and to S3 is
not that much exiting. One developer from Germany reported experiencing
10-100 KBps. This rate can go up-to 1-2 MBps on the higher side
depending on the time of the day. Although the speed is not that much
fascinating it is good enough for deliv-ering web objects and for backup
purposes although for doing computation it is not suitable.
Amazon S3 has a very impressive support for privacy, integrity and short term
availability. Long term availability is unknown as this depends on the internal
commitment of Amazon data centers. Data privacy can be obtained by
encrypting the data to be stored. But this encryption is to be done by the user
before storing the data in S3. One can use SSL with HTTPS to connect to S3
for more security but this usage of SSL increases upload/download time also.
Data integrity can be achieved by checking end to end MD5 checking. When
an object is stored into S3 then it returns MD5 of that object. One can easily
check it with previously computed hash value to guarantee data integrity.
Short term availability depends upon the Amazon's connectivity and load on
its server at that instant. Once the data is actually in the S3 then it is
Amazon's responsibility to take care of it's availability. They claim that the
data is backed up on multiple hard drives in multiple data centers but doesn't
guarantee this by any Service Level Agreement. There is no backup or
recovery mechanism if the user accidentally deletes any data.
Amazon has a very impressive scheme of authentication in comparison to other
cloud services. Every AWS account has an Access Key ID and a Secret Key.
14
Cloud Computing

The ID is of 20 characters and the Key is a 41 character string. When


signing HMAC is rst computed for the sign request parameters using that
Key. And in the Amazon server that HMAC is again computed and
compared with the value previously computed in the client side. These
requests also include timestamp to prevent replay attacks.

Elastic Compute Cloud: As the name implies EC2 rents cloud of


computers to the users with exibility of choosing the con guration of the
virtual machine like RAM size, local disk size, processor speeds etc.
Machines that deliver EC2 services are actually virtual machines running
on top of XEN platform. Users can store a disk image inside S3 and create
a virtual machine in EC2 using tools provided by Amazon. This virtual
machine can be easily instantiated using a java program and can also be
monitored. As EC2 is based on XEN it supports any linux distribution as
well as other OSs. Amazon does not promise about reliability of the EC2
computers. Any machine can crash at any moment and they are not
backed up. Although these machine generally don't crash according to the
experience of the users but it is safe to use S3 to store information which
is more reliable and replicated service. EC2 security model is similar to
that of S3. The only di erence is that the commands are signed with an X
509 private key. But this key is downloaded from AWS account so the
security depends fundamentally on the AWS username and password.

5.2 Google App-Engine


Google App-Engine [1] is a platform for developing and deploying web applications
in Google's architecture. This provides Platform as a Service to the cloud users. In
2008 Google App-Engine was rst released as beta version. Languages supported
by Google App-Engine are python, java and any extension of JVM languages. App-
Engine requires developers to use only languages which are supported by it and
this is also applied with APIs and frameworks. Now Google App-Engine allows
storing and retrieving data from a BigTable non-relational database.
AppEngine applications are expected to be request-reply based. Google
App-engine provides automatic scalability, persistent data storage service. Data
store features a query engine and transaction capabilities. These applications are
easy to scale as tra c and data storage need to grow so the cloud user doesn't have
to worry about the spikes in the tra c or data. These applications are generally
suitable for social networking start-ups, event-based websites catering to seasonal

15
Cloud Computing

events or institutions (schools, colleges, universities, government agencies) etc [22].

5.3 Windows Azure

Windows Azure [9] is an intermediate in the spectrum of exibility vs programmer


convenience. These systems use .NET libraries to facilitate language
independent managed environment. This service falls under the category of
Platform as a Ser-vice. Though it is actually in between complete application
framework like Google App-Engine and hardware virtual machines like EC2.
Azure applications run on machines in Microsoft data centers. By using this
service customers can use it to run applications and store data on internet
accessible machines owned by Microsoft. windows Azure platform provides
three fundamental components - compute com-ponent, storage component and
fabric component. Basic components of Windows Azure are shown in Figure 5.

The Compute Service: The primary goal of this platform is to support a large
number of simultaneous users. (Microsoft also said that they would use Azure
to build their SaaS applications which motivated many potential users.) To
allow applications to scale out Microsoft uses multiple instances of that appli-
cations on virtual machines provided by Hypervisor. Developers use Windows
Azure portal through Web browser, and use Windows live ID to sign in into
his/her hosting account or storage account or both.
Two di erent types of Azure instance is available: Web role instance and
Worker role instances.

{ Web role instance: As the name implies this type of instance can accept
HTTP or HTTPS requests. For this facility Microsoft uses IIS (Internet
Information Services) as a web server inside the VM provided.
Developers can build applications using ASP.NET, Windows
Communication Foun-dation (WCF) or any other .NET technology or
native codes also like C++. PHP or java based technologies also
supported in Azure. Azure scales applications by running multiple
instances without any a nity with a particular Web role instance. So it is
perfectly natural for an Azure application to serve multiple requests from
a single user by multiple in-stances. So this requires to write the client
state in the Azure storage after each client request.
{ Worker role instance: This type of instances are very similar to that of
Web role instances. But unlike the Web role instances these don't have
16
Cloud Computing

Figure 5: Windows Azure component architecture

IIS con gured. They can be con gured to run executable of users'
right. Worker role instance is more likely to function like a background
job. Web role instances can be used to accept request from the users
and then they can be processed by Worker role instances in a later
point of time. For a compute intensive work many Worker role
instances can run in parallel.

Loging and monitoring of Azure applications is made easy by provision of


ap-plication wide log. a developer can collect performance related
information like measure of CPU usage, store crash dumps in the storage.
Azure doesn't give the developer the freedom to use his/her own VM
image for Windows Azure. The platform maintains its own Windows.
Applications in Azure run only in user mode - no administrative access
isn't allowed here. So Windows Azure can update the operating system in
each VM without any concern of a ecting the applications running on it.
This approach separates administrative work from the user domain.

The Storage Service: Applications running in Azure uses storage of di


erent types:
17
Cloud Computing

{ Blobs: This is used for storing binary data in a simple hierarchy. Blobs
can have associated metadata with them. A user account can have
one or more containers and these containers have one or more blobs.
{ Storage tables: Blobs provide mechanisms for unstructured data but
for more structured purposes tables are more suitable. These tables
are nothing like tables in a traditional database. They are actually
stored in a group of entities. These tables can be accessed by using
ADO.NET Data Services. SQL is not preferable for scale out issues.
{ Queue : This is not a structure like tables or blobs to store data but these
queues are used to store messages about tasks to be performed by
Worker role instance. These tasks are written by Web role instances on
receiving request from clients. A Worker role instance waiting on that
queue can read the message and perform the task it speci es.

All data in the Windows Azure storage is replicated three times for
providing fault tolerance. Azure also keeps backups in geographically
distributed data centers. Windows Azure storage can be accessed by any
Windows Azure ap-plication as well as any application hosted at another
cloud platform. All the blobs, tables, queues are named using URIs and
can be accessed by HTTP methods calls.
Some applications have inherent need for relational databases. This is provided
in the form of SQL Azure. This is build on Microsoft SQL Server. This data can
be accessed via ADO.NET or by other Windows data access interfaces.

The Fabric: All Windows Azure application and all of the data stored in
Azure Storage live are physically happen inside some of the data centers
handled by Microsoft. In the data centers the set of machines dedicated to
Azure are organized into a fabric. These machines are managed by fabric
controller. These are replicated in ve to seven machines. These
controllers are aware of every Windows Azure application running in that
fabric and also owns all the resources like computers, switches, load
balancers etc. Controllers monitors, decides which resources to allocate to
new applications looking at the con guration le with the application. They
also monitor the running applications.
18
Cloud Computing

6 Cloud Computing Application in Indian con-text

Today most of the studies in cloud computing is related to commercial bene ts.
But this idea can also be successfully applied to non-pro t organizations and to
the social bene t. In the developing countries like India Cloud computing can
bring about a revolution in the eld of low cost computing with greater e ciency,
availability and reliability. Recently in these countries e-governance has started
to ourish. Experts envisioned that utility based computing has a great future in
e-governance. Cloud computing can also be applied to the development of rural
life in India by building information hubs to help the concerned people with
greater access to required information and enable them to share their
experiences to build new knowledge bases.

6.1 E-Governance
E-Governance is an interface between Government and public or this can be an
interface between two governments or between government and business
organiza-tions [7]. Objectives are generally to improve e ciency and e ectiveness to
serve public demand and to save costs for online services. This requires
Government to have the will to decentralize the responsibilities and processes and
start to have faith on electronic and internet systems. E-government is a form of e-
business in gover-nance and refers to the processes and structures needed to
deliver electronic services to the public (citizens and businesses), collaborate with
business partners and to conduct electronic transactions within an organizational
entity. This E-Governance can be greatly improved by utility computing [8].
Impact of Technology in E-governance -

24/7 Service Model { Systems and services require high availability. Get
the citizens feel that Government is always at their service.

Need for Content { Web contents should be regularly updated and the
infor-mation provided to the public should be su cient. Respective
departments should be responsible for providing the information.

Human Resource { Building these IT skilled resources would need


properly trained personals. This would make government to compete with
other private organizations.
19
Cloud Computing

Security { Sensitive Government data is to be highly secured. Policies are


to be taken seriously maintained and designed.

Privacy { Personal data should be given su cient privacy. It can be a di cult


issue if data is stored across di erent departments and computer systems.

Recently Government of India have taken initiative and launched several


projects to facilitate people with better mechanism of governance using IT as a tool.
They have launched projects like Gyan Ganga, e-Gram [17] to leverage the
strength of connectivity. Gyan Ganga is one of the initiatives of the Government of
Gujrat to ensure wireless Internet connectivity to 18000 villages in Gujrat. This
project is based on corDECT a technology based on Wireless Local Loop (WLL).
Rural citizens are provided with facilities like browsing emails, Internet, land
records, rural job opportunities, status of various government projects, information
about local weather, soil and consult with experts to increase productivity in
agriculture, to have answer to their queries about veterinary and health care. Gyan
Ganga comes with other facilities with on-line registration of various applications,
on-line public grievance form, information on Government projects etc.
Another Government of India initiative is E-Gram computerization of local
Gram panchayats. This is also now implemented in the villages of Gujrat. This
E-Gram provides the rural people services like birth and death certi cation,
property assessment, tax-collection, accounts of gram panchayats etc.
Why traditional systems are not su cient? For maintaining traditional sys-
tems in e-government there are many more disadvantages.

Application life cycle management { Applications are generally developed in


evolutionary manner and changes should be consistent across all the depart-
ments and up gradation should be performed when the system is functioning.

Software licensing { Software should be licensed for each and every


depart-ment terminal. This incurs a large amount of establishment cost.

Scalability { Traditional centralized systems have inherent weakness


towards the aspect of scalability.

Security { This is the most crucial aspect for e-governance. Government


information is highly sensitive. So they should be highly secured. For the
traditional systems all the systems across all the departments should have
su cient security.
20
Cloud Computing

Most of these disadvantages are addressed by cloud computing [2].

Scalability { Cloud computing by design supports scalability. The data cen-


ters have enough computing and storage capacity to cope up with the
spike demand.

Modi able { Applications hosted in cloud can be modi ed internally without


too much concern of the end users. Change in one place would re ect in
all the places inherently and it would be consistent.

Data logging { This central facility can be very useful for locating any fault
in the system. Logging can also be used for detecting unauthorized usage
checking or detecting compromization.

Availability { Cloud services are well known for high availability. If any data
center is down for any reason there is hot backup ready to work
immediately. Virtual machine migration is used to great extend in this
situation to facilitate load balancing in case of failure of some systems.

Reliability { Replication and migration of instances across data centers


make the reliability of the system very high in the cloud scenario.

Physical disaster recovery { Backup policies can be very useful for


physical disaster avoidance and this is inherent to the cloud system. Data
is stored in di erent physical location so that hot backup can be provided
whenever needed.

Policy management { Polices can be managed in a centralized fashion. This is


helpful for introducing Government policies readily unlike the present scenario.

Legacy software { An already developed software can be moved to cloud


with minor changes some times. So the Government doesn't incur cost for
develop-ing applications which it already has.

Pay model { Cloud providers' pay-as-you-use model enables the customer


(Government) to reduce cost of deployment and control the usage.

Reduce power consumption { Adaptation of cloud reduces power consump-


tion in di erent o ces and usage of power is concentrated in the data center
only. But also that is not the concern of the government as those data centers
are to be handled by the third party who provides cloud services.
21
Cloud Computing

Though it seems that cloud computing is indispensable for e-government


but there are many issues related to Cloud Computing application -

Security Concern { Government works are highly security sensitive and the
policies sometimes must not be go into public. But in cloud computing
scenario security is not properly implemented today. So this is a big concern.

Policy Concern { Government has certain policies but the third party cloud
provider may have contradicting policies.

Lack of faith in networks { Many government departments don't have that


much trust in networks and internet. So they would not jump into accepting
cloud computing.

6.2 Rural development


In the context of rural development cloud computing can also be used to success
for its centralized storage and computing facility and utility based pay model. As per
[3] 72.2% of total Indian population resides in rural areas. According to the survey
conducted by \Hole in the Wall project" [11] computer literacy among boys and girls
of age group 8-14 in rural area varies across the regions of India. It is 40-50% in
most of the regions. So the computer literacy is not a concern in rural India and also
in [11] it shown that learning rate is pretty high for computer literacy. Agriculture is
India's biggest employment source, accounting for 52% employment in India [4].
And agricultural sector contributes to 20% of country's total GDP. So it is very
important to make a serious attempt to develop rural India.
Rural development can be in the form of education, agriculture, health, cul-
ture or in any other elds. Now a days most of the villages have some access to
electricity and cellular phone. So there is technical feasibility of establishing com-
puter systems. But the mentality of the people haven't been changed that much and
that's why the spread of personal computer is not that much signi cant in the
villages. We think this growth rate can be enhanced if the computing system is
really cheap, easy to operate with minimum level of knowledge, without upfront
commitment and more essentially if the system is helpful to enhance their life style.
The main aim of the system is to make the people in rural areas to have access to
recent technology and with the help of the computing system enhance their
standard of living and also this would lead to a grater good of developing the nation.
Why not traditional web services?

22
Cloud Computing

Availability { Many of the services should be available always like health


etc. These availability issues are not that well handled by the traditional
web services as they are handled typically by a single server and thus the
server downtime is always there to happen.

The villagers have to own a PC { To use traditional web services through in-
ternet the villagers need to own a PC which would increase their investment.
Then the issues of need for technical experts for software/hardware installa-
tion and maintenance are needed. But naturally the number of such experts is
very less in number in the remote village. Upgradation of software or
hardware would be a problem both economically and technically.

With the help of cloud computing this can be made possible. We'll now
discuss the technological and economic advantages for using cloud.

No upfront commitment { The villagers need not to invest too much to buy
computing system and commit. But instead they can have very low cost
terminals with basic functionality of I/O and have a network access.

No maintenance issues { The users need not to be an expert for maintenance.


This solves the unavailability of technical experts in the remote villages as the
maintenance issues are handled by the cloud provider explicitly.

Upgraded version of hardware and software { The users always use the
up-graded version of software and hardware as maintained by the cloud
provider. This reduces the cost of up gradation.

On-demand resource allocation { The virtual resources can be extended as


needed. If the user needs more resource then it is provided on demand basis.

Utility computing model { The economic model used by the cloud is pay-
as-you-use. This enables the users handle the cost they have to pay.

By using cloud computing model some improvement of the current system is


possible to bring about social and as well as economic prospect in rural India.

Share knowledge and build knowledge base { Most of the agriculture related
issues are generally local and they can't be solved by general expertise. So it
happens many times that the so called experts are not the right person to answer
the problems but instead the local farmers are better in understanding.
23
Cloud Computing

So in these situations better solution can be given by the local experts. If


these local experts access a common space to share their knowledge
then others eventually come to know about the solution. Thus a
knowledge base can be build which would represent the issues in that
local scenario. It is like building Wikipedia.

Health and medical services { In the developing countries like India one of
the concern of Rural health care is in spite of best intention from both the
medical professionals and patients a practical challenge is faced for di
culties of communications among interested parties [15]. This issue can
be solved using cloud computing in an appropriate way. Consultation
among doctors around the world make sharing of knowledge possible and
takes telemedicince to the next level, creating a network that goes beyond
the one-to-one, patient-to-patient, patient-to-doctor or doctor-to-doctor
interactions. In this way a patient su ering from a particular disease can be
better treated by consulting with doctors within region and also outside
who may have more experience with such a case.

Education in remote areas { Education in rural areas can be enhanced


with the help of distance education. Education can be provided in di erent
lan-guages and with respect to di erent curriculum with the aid of e-
learning components. Students can be encouraged to build their own
multimedia pre-sentations. These can be hosted in the cloud. This type of
approach encourage the students to concentrate more on learning and
representing the material and also that would build the knowledge in the
cloud for other students to refer. This is possible with the aid of cloud
computing with greater reliability and availability.

Government decision making { Looking at the common knowledge base


the Government can have a fair knowledge of the local situation and take
adoptive steps.

Access to Information hub { Government can provide relevant information


such as land revenue data, weather data, soil information etc. through
these cloud services to the people concerned.

All these things are possible with right initiative. These may need
customiz-ing the original cloud services. Some generally unpopular services like
Desktop as a Service may make sense in these scenario which essentially tells
about providing the users a virtual desktop environment. But deployment of
cloud services in rural areas have some issues associated with it.

24
Cloud Computing

The rst and foremost issue for the deployment of internet based services in
rural India is the availability of electricity and networks. Currently there are a
number of initiatives underway to explore alternative to wired Internet, in-
cluding WiFi, WiMax, satellite-based Internet connectivity. Such an e ort is
made by Midas Communication technologies and Indian Institute of Madras in
the name of corDECT which is a wireless access system. It provides simul-
taneously voice and 35-70kbps Internet access to wireless subscriber.
Another e ort is [19] where the authors modi ed traditional WiFi to make it e
ciently work in long distance suitable in the context of rural area.

Optimization due to data locality { Store the data where it is mostly used is
known as the data locality. This is very helpful for optimization purpose.
This can be done by establishing data centers in rural India. But the cost
of power and bandwidth may not be cheap in many places. So for those
places some e ciency and economic trade o should be obeyed.

India is now world's 2nd fastest growing economy. As per World Bank
survey, by this year the growth rate of India's economy would be faster than
currently fastest economy China. In India there is very large scope of applying
IT in domestic level and that encouraged the cloud providers to establish cloud
services in India. Today companies like Reliance, TATA, Zenith Computers,
Wipro Technologies, Netmagic Solutions, and Reliance are providing cloud
services in India successfully. These companies can grasp the huge market in
the rural India as well as making social development.

7 Conclusion
Cloud computing is a newly developing paradigm of distributed computing. Vir-
tualization in combination with utility computing model can make a di erence in the
IT industry and as well as in social perspective. Though cloud computing is still in
its infancy but its clearly gaining momentum. Organizations like Google, Yahoo,
Amazon are already providing cloud services. The products like Google App-
Engine, Amazon EC2, Windows Azure are capturing the market with their ease of
use, availability aspects and utility computing model. Users don't have to be worried
about the hinges of distributed programming as they are taken care of by the cloud
providers. They can devote more on their own domain work rather than these
administrative works. Business organizations are also showing increasing in-terest
to indulge themselves into using cloud services. There are many open research

25
Cloud Computing

issues in this domain like security aspect in the cloud, virtual machine migration,
dealing with large data for analysis purposes etc. In developing counties like
India cloud computing can be applied in the e-governance and rural
development with great success. Although as we have seen there are some
crucial issues to be solved to successfully deploy cloud computing for these
social purposes. But they can be addressed by detailed study in the subject.

Cloud computing is the result of the evolution and adoption of existing


technologies and paradigms. The goal of cloud computing is to allow users to
take benefit from all of these technologies, without the need for deep knowledge
about or expertise with each one of them. The cloud aims to cut costs, and
helps the users focus on their core business instead of being impeded by IT
obstacles.[34]

The main enabling technology for cloud computing is virtualization. Virtualization


software separates a physical computing device into one or more "virtual"
devices, each of which can be easily used and managed to perform computing
tasks. With operating system–level virtualization essentially creating a scalable
system of multiple independent computing devices, idle computing resources
can be allocated and used more efficiently. Virtualization provides the agility
required to speed up IT operations, and reduces cost by increasing
infrastructure utilization. Autonomic computing automates the process through
which the user can provision resources on-demand. By minimizing user
involvement, automation speeds up the process, reduces labor costs and
reduces the possibility of human errors.[34]

Users routinely face difficult business problems. Cloud computing adopts


concepts from Service-oriented Architecture (SOA) that can help the user break
these problems into services that can be integrated to provide a solution. Cloud
computing provides all of its resources as services, and makes use of the well-
established standards and best practices gained in the domain of SOA to allow
global and easy access to cloud services in a standardized way.

Cloud computing also leverages concepts from utility computing to provide


metrics for the services used. Such metrics are at the core of the public cloud
pay-per-use models. In addition, measured services are an essential part of the
feedback loop in autonomic computing, allowing services to scale on-demand
and to perform automatic failure recovery.

Cloud computing is a kind of grid computing; it has evolved by addressing the


QoS (quality of service) and reliability problems. Cloud computing provides the
tools and technologies to build data/compute intensive parallel applications with
much more affordable prices compared to traditional parallel computing
techniques.[34]

Cloud computing shares characteristics with:

 Client–server model — Client–server computing refers broadly to any distributed


application that distinguishes between service providers (servers) and service
requestors (clients).[35]
 Grid computing — "A form of distributed and parallel computing, whereby a 'super and
virtual computer' is composed of a cluster of networked, loosely coupled computers
acting in concert to perform very large tasks."
 Fog computing - Distributed computing paradigm that provides data, compute, storage
and application services closer to client or near-user edge devices, such as network
routers. Furthermore, Fog computing handles data at the network level, on smart
devices and on the end-user client side (e.g. mobile devices), instead of sending data
to a remote location for processing.
 Dew computing - In the existing computing hierarchy, the Dew computing is positioned
as the ground level for the Cloud and Fog computing paradigms. Compared to Fog
Computing, which supports emerging IoT applications that demand real-time and
predictable latency and the dynamic network reconfigurability, Dew computing pushes
the frontiers to computing applications, data, and low level services away from
centralized virtual nodes to the end users.[36]
 Mainframe computer — Powerful computers used mainly by large organizations for
critical applications, typically bulk data processing such as: census; industry and
consumer statistics; police and secret intelligence services; enterprise resource
planning; and financial transaction processing.
 Utility computing — The "packaging of computing resources, such as computation and
storage, as a metered service similar to a traditional public utility, such as electricity." [37]
[38]

 Peer-to-peer — A distributed architecture without the need for central coordination.


Participants are both suppliers and consumers of resources (in contrast to the
traditional client–server model).
Characteristics[edit]
Cloud computing exhibits the following key characteristics:

 Agility improves with users' ability to re-provision technological infrastructure


resources.[wtf?]
 Cost reductions claimed by cloud providers. A public-cloud delivery model converts
capital expenditure to operational expenditure.[39] This purportedly lowers barriers to
entry, as infrastructure is typically provided by a third party and does not need to be
purchased for one-time or infrequent intensive computing tasks. Pricing on a utility
computing basis is fine-grained, with usage-based options and fewer IT skills are
required for implementation (in-house).[40] The e-FISCAL project's state-of-the-art
repository[41] contains several articles looking into cost aspects in more detail, most of
them concluding that costs savings depend on the type of activities supported and the
type of infrastructure available in-house.
 Device and location independence[42] enable users to access systems using a web
browser regardless of their location or what device they use (e.g., PC, mobile phone).
As infrastructure is off-site (typically provided by a third-party) and accessed via the
Internet, users can connect from anywhere.[40]
 Maintenance of cloud computing applications is easier, because they do not need to
be installed on each user's computer and can be accessed from different places.
 Multitenancy enables sharing of resources and costs across a large pool of users thus
allowing for:
 centralization of infrastructure in locations with lower costs (such as real estate,
electricity, etc.)
 peak-load capacity increases (users need not engineer for highest possible load-
levels)
 utilisation and efficiency improvements for systems that are often only 10–20%
utilised.[43][44]
 Performance is monitored, and consistent and loosely coupled architectures are
constructed using web services as the system interface.[40][45][46]
 Productivity may be increased when multiple users can work on the same data
simultaneously, rather than waiting for it to be saved and emailed. Time may be saved
as information does not need to be re-entered when fields are matched, nor do users
need to install application software upgrades to their computer.[47]
 Reliability improves with the use of multiple redundant sites, which makes well-
designed cloud computing suitable for business continuity and disaster recovery.[48]
 Scalability and elasticity via dynamic ("on-demand") provisioning of resources on a
fine-grained, self-service basis in near real-time[49][50] (Note, the VM startup time varies
by VM type, location, OS and cloud providers[49]), without users having to engineer for
peak loads.[51][52][53] This gives the ability to scale up when the usage need increases or
down if resources are not being used.[54]
 Security can improve due to centralization of data, increased security-focused
resources, etc., but concerns can persist about loss of control over certain sensitive
data, and the lack of security for stored kernels. Security is often as good as or better
than other traditional systems, in part because providers are able to devote resources
to solving security issues that many customers cannot afford to tackle.[55] However, the
complexity of security is greatly increased when data is distributed over a wider area or
over a greater number of devices, as well as in multi-tenant systems shared by
unrelated users. In addition, user access to security audit logs may be difficult or
impossible. Private cloud installations are in part motivated by users' desire to retain
control over the infrastructure and avoid losing control of information security.

The National Institute of Standards and Technology's definition of cloud computing


identifies "five essential characteristics":

On-demand self-service. A consumer can unilaterally provision computing capabilities, such


as server time and network storage, as needed automatically without requiring human
interaction with each service provider.

Broad network access. Capabilities are available over the network and accessed through
standard mechanisms that promote use by heterogeneous thin or thick client platforms
(e.g., mobile phones, tablets, laptops, and workstations).

Resource pooling. The provider's computing resources are pooled to serve multiple
consumers using a multi-tenant model, with different physical and virtual resources
dynamically assigned and reassigned according to consumer demand.

Rapid elasticity. Capabilities can be elastically provisioned and released, in some cases
automatically, to scale rapidly outward and inward commensurate with demand. To the
consumer, the capabilities available for provisioning often appear unlimited and can be
appropriated in any quantity at any time.

Measured service. Cloud systems automatically control and optimize resource use by
leveraging a metering capability at some level of abstraction appropriate to the type of
service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage
can be monitored, controlled, and reported, providing transparency for both the provider
and consumer of the utilized service.
— National Institute of Standards and Technology[56]

Service models[edit]
Though service-oriented architecture advocates "everything as a service" (with the
acronyms EaaS or XaaS or simply aas),[57] cloud-computing providers offer their "services"
according to different models,[56][58][need quotation to verify] which happen to form a stack: infrastructure-,
platform- and software-as-a-service.[59]

Cloud-computing layers accessible within a stack

Infrastructure as a service (IaaS)[edit]


See also: Category:Cloud infrastructure

In the most basic cloud-service model - and according to the IETF (Internet Engineering
Task Force) - providers of IaaS offer computers – physical or (more often) virtual
machines – and other resources. IaaS refers to online services that abstract user from the
detail of infrastructure like physical computing resources, location, data partitioning, scaling,
security, backup etc. Ahypervisor, such as Xen, Oracle VirtualBox, KVM, VMware
ESX/ESXi, or Hyper-V runs the virtual machines as guests. Pools of hypervisors within the
cloud operational system can support large numbers of virtual machines and the ability to
scale services up and down according to customers' varying requirements. IaaS clouds
often offer additional resources such as a virtual-machine disk-image library, raw block
storage, file or object storage, firewalls, load balancers, IP addresses, virtual local area
networks (VLANs), and software bundles.[60] IaaS-cloud providers supply these resources
on-demand from their large pools of equipment installed in data centers. For wide-
area connectivity, customers can use either the Internet or carrier clouds (dedicated virtual
private networks).
To deploy their applications, cloud users install operating-system images and their
application software on the cloud infrastructure. In this model, the cloud user patches and
maintains the operating systems and the application software. Cloud providers typically bill
IaaS services on a utility computing basis: cost reflects the amount of resources allocated
and consumed.[61][62][63][64]

Platform as a service (PaaS)[edit]


Main article: Platform as a service
See also: Category:Cloud platforms

PaaS vendors offers a development environment to application developers. The provider


typically develops toolkit and standards for development and channels for distribution and
payment. In the PaaS models, cloud providers deliver a computing platform, typically
including operating system, programming-language execution environment, database, and
web server. Application developers can develop and run their software solutions on a cloud
platform without the cost and complexity of buying and managing the underlying hardware
and software layers. With some PaaS offers like Microsoft Azure and Google App Engine,
the underlying computer and storage resources scale automatically to match application
demand so that the cloud user does not have to allocate resources manually. The latter has
also been proposed by an architecture aiming to facilitate real-time in cloud environments. [65]
[need quotation to verify]
Even more specific application types can be provided via PaaS, such as media
encoding as provided by services like bitcodin.com[66] or media.io.[67]

Some integration and data management providers have also embraced specialized
applications of PaaS as delivery models for data solutions. Examples
include iPaaS anddPaaS. iPaaS (Integration Platform as a Service) enables customers to
develop, execute and govern integration flows.[68] Under the iPaaS integration model,
customers drive the development and deployment of integrations without installing or
managing any hardware or middleware.[69] dPaaS (Data Platform as a Service) delivers
integration—and data-management—products as a fully managed service.[70] Under the
dPaaS model, the PaaS provider, not the customer, manages the development and
execution of data solutions by building tailored data applications for the customer. dPaaS
users retain transparency and control over data through data-visualization tools.[71]

Platform as a Service (PaaS) the consumer does not manage or control the underlying
cloud infrastructure including network, servers, operating systems, or storage, but has
control over the deployed applications and possibly configuration settings for the
application-hosting environment.

Software as a service (SaaS)[edit]


Main article: Software as a service
In the software as a service (SaaS) model, users gain access to application software and
databases. Cloud providers manage the infrastructure and platforms that run the
applications. SaaS is sometimes referred to as "on-demand software" and is usually priced
on a pay-per-use basis or using a subscription fee.[citation needed]

In the SaaS model, cloud providers install and operate application software in the cloud and
cloud users access the software from cloud clients. Cloud users do not manage the cloud
infrastructure and platform where the application runs. This eliminates the need to install
and run the application on the cloud user's own computers, which simplifies maintenance
and support. Cloud applications differ from other applications in their scalability—which can
be achieved by cloning tasks onto multiple virtual machines at run-time to meet changing
work demand.[72] Load balancers distribute the work over the set of virtual machines. This
process is transparent to the cloud user, who sees only a single access-point. To
accommodate a large number of cloud users, cloud applications can be multitenant,
meaning that any machine may serve more than one cloud-user organization.

The pricing model for SaaS applications is typically a monthly or yearly flat fee per user,
[73]
so prices become scalable and adjustable if users are added or removed at any point. [74]

Proponents claim that SaaS gives a business the potential to reduce IT operational costs
by outsourcing hardware and software maintenance and support to the cloud provider. This
enables the business to reallocate IT operations costs away from hardware/software
spending and from personnel expenses, towards meeting other goals. In addition, with
applications hosted centrally, updates can be released without the need for users to install
new software. One drawback of SaaS comes with storing the users' data on the cloud
provider's server. As a result,[citation needed] there could be unauthorized access to the data. For
this reason, users are increasingly[quantify] adopting intelligent third-party key-
management systems to help secure their data.[citation needed]

Cloud clients[edit]
See also: Category:Cloud clients and Cloud API

Users access cloud computing using networked client devices, such as desktop
computers, laptops, tablets and smartphones and any Ethernet enabled device such as
Home Automation Gadgets. Some of these devices – cloud clients – rely on cloud
computing for all or a majority of their applications so as to be essentially useless without it.
Examples are thin clients and the browser-based Chromebook. Many cloud applications do
not require specific software on the client and instead use a web browser to interact with
the cloud application. With Ajax and HTML5 these Web user interfaces can achieve a
similar, or even better, look and feel to native applications. Some cloud applications,
however, support specific client software dedicated to these applications (e.g., virtual
desktop clients and most email clients). Some legacy applications (line of business
applications that until now have been prevalent in thin client computing) are delivered via a
screen-sharing technology.
Public cloud[edit]
A cloud is called a "public cloud" when the services are rendered over a network
that is open for public use. Public cloud services may be free.[79] Technically
there may be little or no difference between public and private cloud
architecture, however, security consideration may be substantially different for
services (applications, storage, and other resources) that are made available by
a service provider for a public audience and when communication is effected
over a non-trusted network. Generally, public cloud service providers like
Amazon AWS, Microsoft and Google own and operate the infrastructure at their
data center and access is generally via the Internet. AWS and Microsoft also
offer direct connect services called "AWS Direct Connect" and "Azure
ExpressRoute" respectively, such connections require customers to purchase or
lease a private connection to a peering point offered by the cloud provider.[40]

Hybrid cloud[edit]
Hybrid cloud is a composition of two or more clouds (private, community or
public) that remain distinct entities but are bound together, offering the benefits
of multiple deployment models. Hybrid cloud can also mean the ability to
connect collocation, managed and/or dedicated services with cloud resources.
[56]

Gartner, Inc. defines a hybrid cloud service as a cloud computing service that is
composed of some combination of private, public and community cloud
services, from different service providers.[80] A hybrid cloud service crosses
isolation and provider boundaries so that it can't be simply put in one category
of private, public, or community cloud service. It allows one to extend either the
capacity or the capability of a cloud service, by aggregation, integration or
customization with another cloud service.

Varied use cases for hybrid cloud composition exist. For example, an
organization may store sensitive client data in house on a private cloud
application, but interconnect that application to a business intelligence
application provided on a public cloud as a software service.[81] This example
of hybrid cloud extends the capabilities of the enterprise to deliver a specific
business service through the addition of externally available public cloud
services. Hybrid cloud adoption depends on a number of factors such as data
security and compliance requirements, level of control needed over data, and
the applications an organization uses.[82]
Another example of hybrid cloud is one where IT organizations use public cloud
computing resources to meet temporary capacity needs that can not be met by
the private cloud.[83] This capability enables hybrid clouds to employ cloud
bursting for scaling across clouds.[56] Cloud bursting is an application
deployment model in which an application runs in a private cloud or data center
and "bursts" to a public cloud when the demand for computing capacity
increases. A primary advantage of cloud bursting and a hybrid cloud model is
that an organization only pays for extra compute resources when they are
needed.[84] Cloud bursting enables data centers to create an in-house IT
infrastructure that supports average workloads, and use cloud resources from
public or private clouds, during spikes in processing demands.[85]

The specialized model of hybrid cloud, which is built atop heterogeneous


hardware, is called "Cross-platform Hybrid Cloud". A cross-platform hybrid cloud
is usually powered by different CPU architectures, for example, x86-64 and
ARM, underneath. Users can transparently deploy and scale applications
without knowledge of the cloud's hardware diversity.[86] This kind of cloud
emerges from the raise of ARM-based system-on-chip for server-class
computing.
References
[1] Google app engine. http://code.google.com/appengine/.

[2] Cloud computing for e-governance. White paper, IIIT-Hyderabad, January


2010. Available online (13 pages).

[3] Demographics of india. http://en.wikipedia.org/wiki/Demographics_of_


India, April 2010.

[4] Economy of india. http://en.wikipedia.org/wiki/Economy_of_India, April


2010.

[5] Michael Armbrust, Armando Fox, Rean Gri th, Anthony D. Joseph, Randy
H. Katz, Andrew Konwinski, Gunho Lee, David A. Patterson, Ariel Rabkin,
Ion Stoica, and Matei Zaharia. Above the clouds: A berkeley view of cloud
com-puting. Technical Report UCB/EECS-2009-28, EECS Department,
University of California, Berkeley, Feb 2009.

[6] F.M. Aymerich, G. Fenu, and S. Surcis. An approach to a cloud comput-ing


network. Applications of Digital Information and Web Technologies, 2008.
ICADIWT 2008., pages 113 {118, August 2008.

[7] M. Backus. E-governance in Developing Countries. IICD Research Brief, 1,


2001.

[8] Jaijit Bhattacharya and Sushant Vashistha. Utility computing-based framework


for e-governance, pages 303{309. ACM, New York, NY, USA, 2008.

[9] D. Chappell. Introducing windows azure. http://go.microsoft.com/, De-


cember 2009.
26
Cloud Computing
[10] Vidyanand Choudhary. Software as a service: Implications for investment in
software development. In HICSS '07: Proceedings of the 40th Annual
Hawaii In-ternational Conference on System Sciences, page 209a,
Washington, DC, USA, 2007. IEEE Computer Society.

[11] Ritu Dangwal. Public Computing, Computer Literacy and Educational Out-
come: Children and Computers in Rural India, pages 59{66. IOS Press,
Ams-terdam, The Netherlands, 2005.

[12] I. Foster, Yong Zhao, I. Raicu, and S. Lu. Cloud computing and grid com-
puting 360-degree compared. Technical report. Grid Computing
Environments Workshop, 2008.

[13] Simson L. Gar nkel. An evaluation of amazon's grid computing services:


Ec2, s3 and sqs. Technical report, 2007.

[14] S.L. Gar nkel. Commodity grid computing with amazon's S3 and EC2.
https://www.usenix.org/publications/login/2007-02/openpdfs/ garfinkel.pdf,
2007.

[15] K.I. Juster. Cloud Computing Can Close the Development Gap. http://www.
salesforce.com/assets/pdf/misc/IT-development-paper.pdf.

[16] Leonard Kleinrock. An internet vision: the invisible global infrastructure. Ad


Hoc Networks, 1(1):3 { 11, 2003.

[17] P. Kokil. SAP-LAP Analysis: Gyan Ganga, E-Gram and Communication Infor-
mation Centers (CIC). http://www.iceg.net/2007/books/3/29_290_3.pdf.

[18] Ralf L•ammel. Google's mapreduce programming model { revisited. Sci.


Com-put. Program., 70(1):1{30, 2008.

[19] R. Patra, S. Nedevschi, S. Surana, A. Sheth, L. Subramanian, and E.


Brewer. WiLDNet: Design and implementation of high performance wi
based long distance networks. In USENIX NSDI, pages 87{100, 2007.

[20] Bhaskar Prasad Rimal, Eunmi Choi, and Ian Lumb. A taxonomy and survey
of cloud computing systems. Networked Computing and Advanced
Information Management, International Conference on, 0:44{51, 2009.
[21] J.E. Smith and R. Nair. An overview of virtual machine architectures. pages 1{ 20,
October 2001. http://www.ece.wisc.edu/~jes/902/papers/intro.pdf.

27
Cloud Computing

[22] Persistent Systems. Google app engine. http://www.persistentsys.com/


newpspl/pdf/CMS_1741820566_Google%20Apps%20Engine_WP_010909.pdf,
2009.

28

You might also like