Sample Technical Seminar
Sample Technical Seminar
On
Cloud Computing
Presented
By
Nirosha Chunakar
15E41D5801
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
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
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
5
Cloud Computing
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.
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.
6
Cloud Computing
(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.
(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.
7
Cloud Computing
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 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
9
Cloud Computing
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.
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.
10
Cloud Computing
11
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.
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].
15
Cloud Computing
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
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.
{ 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
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.
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.
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.
22
Cloud Computing
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.
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.
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.
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
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.
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.
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]
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]
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.
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]
[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.
[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.
[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.
[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.
[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
28