GR20A3118 -
CLOUD COMPUTING
UNIT-1
Understanding Cloud Computing
Cloud Computing , Introduction to Cloud Computing , Cloud Architecture and
Cloud Services(IaaS, PaaS, SaaS) , Cloud models Public vs Private, Cloud
Technologies for Network-Based System , System Models for Distributed and
Cloud Computing , NIST Cloud Computing Reference Architecture
Course Objectives:
1. Understand the current trend and basics of cloud computing.
2. Learn cloud services from different providers.
3. Understand the architecture and concept of different cloud models: IaaS, PaaS, SaaS.
4. Understand the underlying principle of cloud virtualization, cloud storage, data management
and data visualization.
5. Learn basic concepts of Map Reduce programming models for big data analysis on cloud.
Course Outcomes:
1. Understand the features, advantages and challenges of cloud computing, compare their
operation ,implementation and performance.
2. Understand, Analyze and compare different types of clouds and cloud services.
3. Understanding and validating the financial and technological implications in selecting cloud
computing paradigm for an organization.
4. Understand and Analyze the security challenges and risks involved in the cloud.
5. Create/Deploying of an application in cloud.
UNIT-1 : Understanding Cloud Computing 2
What is Cloud?
• The term Cloud refers to a Network or Internet.
• In other words, we can say that Cloud is something, which is present
at remote location.
• Cloud can provide services over network, i.e., on public networks or
on private networks, i.e., WAN, LAN or VPN.
• Applications such as e-mail, web conferencing, customer
relationship management (CRM),all run in cloud.
UNIT-1 : Understanding Cloud Computing 3
• Cloud Computing refers to
manipulating, configuring,
and accessing the
applications online.
• It offers online data storage,
infrastructure and
application.
What is Cloud Computing
UNIT-1 : Understanding Cloud Computing 4
Cloud Computing - Definition
Cloud computing is a model for enabling ubiquitous,
convenient, on-demand network access to a shared pool of
configurable computing resources (e.g., networks, servers, storage,
applications, and services) that can be rapidly provisioned and released
with minimal management effort or service provider interaction.
Technologies for network-based systems
With the concept of scalable computing under our belt, it‘s time to
explore hardware, software, and network technologies for distributed
computing system design and applications.
In particular, focus on viable approaches to building distributed operating
systems for handling massive parallelism in a distributed environment.
UNIT-1 : Understanding Cloud Computing 5
Basic Concepts
• There are certain services and models working behind the scene
making the cloud computing feasible and accessible to end users.
Following are the working models for cloud computing:
• Deployment Models
• Service Models
UNIT-1 : Understanding Cloud Computing 6
DEPLOYMENT
MODELS
• Deployment models define
the type of access to the
cloud.
• i.e., how the cloud is
located?
• Cloud can have any of the
four types of access: Public,
Private, Hybrid and
Community.
UNIT-1 : Understanding Cloud Computing 7
PUBLIC CLOUD
• The Public Cloud allows systems and services to be easily accessible to the
general public. Public cloud may be less secure because of its openness, e.g., e-
mail.
PRIVATE CLOUD
• The Private Cloud allows systems and services to be accessible within an
organization. It offers increased security because of its private nature.
COMMUNITY CLOUD
• The Community Cloud allows systems and services to be accessible by group of
organizations.
HYBRID CLOUD
• The Hybrid Cloud is mixture of public and private cloud. However, the critical
activities are performed using private cloud while the non-critical activities are
performed using public cloud.
UNIT-1 : Understanding Cloud Computing 8
SERVICE MODELS
• Service Models are the reference models on which the Cloud Computing is
based. These can be categorized into three basic service models as listed
below:
• Infrastructure as a Service (IaaS)
• Platform as a Service (PaaS)
• Software as a Service (SaaS)
There are many other service models all of which can take the form like
XaaS, i.e., Anything as a Service. This can be Network as a Service, Business
as a Service, Identity as a Service, Database as a Service or Strategy as a
Service.
UNIT-1 : Understanding Cloud Computing 9
SERVICE MODELS….
• There are many other service models all of which can take the form like
XaaS, i.e., Anything as a Service.
• This can be
Network as a Service,
Business as a Service,
Identity as a Service,
Database as a Service
Strategy as a Service.
UNIT-1 : Understanding Cloud Computing 10
CLOUD SERVICES
• The Infrastructure as a Service (IaaS) is the
most basic level of service.
• Each of the service models make use of the
underlying service model, i.e., each inherits the
security and management mechanism from
the underlying model, as shown in the
following diagram
UNIT-1 : Understanding Cloud Computing 11
CLOUD SERVICES
INFRASTRUCTURE AS A SERVICE ( IAAS)
• IaaS provides access to fundamental resources such as physical
machines, virtual machines, virtual storage, etc.
PLATFORM AS A SERVICE ( PAAS)
• PaaS provides the runtime environment for applications,
development & deployment tools, etc.
SOFTWARE AS A SERVICE ( SAAS)
• SaaS model allows to use software applications as a service to end
users.
UNIT-1 : Understanding Cloud Computing 12
History
• The concept of Cloud Computing came into existence in 1950 with
implementation of mainframe computers, accessible via thin/static
clients.
• Since then, cloud computing has been evolved from static clients to
dynamic ones from software to services.
UNIT-1 : Understanding Cloud Computing 13
Evolution
The following diagram explains the evolution of cloud computing
UNIT-1 : Understanding Cloud Computing 14
Benefits
Cloud Computing has numerous advantages. Some of them are listed below:
• One can access applications as utilities, over the Internet.
• Manipulate and configure the application online at any time.
• It does not require to install a specific piece of software to access or
manipulate cloud application.
• Cloud Computing offers online development and deployment tools,
programming runtime environment through Platform as a Service model.
UNIT-1 : Understanding Cloud Computing 15
Benefits…..
Cloud resources are available over the network in a manner that
provides platform independent access to any type of clients.
Cloud Computing offers on-demand self-service. The resources
can be used without interaction with cloud service provider.
Cloud Computing is highly cost effective because it operates at
higher efficiencies with greater utilization. It just requires an Internet
connection.
Cloud Computing offers load balancing that makes it more reliable.
UNIT-1 : Understanding Cloud Computing 16
UNIT-1 : Understanding Cloud Computing 17
Risks
Although Cloud Computing is a great innovation in the world of computing,
there also exist downsides of cloud computing. Some of them are discussed
below:
SECURITY & PRIVACY
• It is the biggest concern about cloud computing. Since data management
and infrastructure management in cloud is provided by third-party, it is
always a risk to handover the sensitive information to such providers.
• Although the cloud computing vendors ensure more secure password
protected accounts, any sign of security breach would result in loss of clients
and businesses.
LOCK-IN
• It is very difficult for the customers to switch from one Cloud Service
Provider (CSP) to another. It results in dependency on a particular CSP for
service.
UNIT-1 : Understanding Cloud Computing 18
Risks….
ISOLATION FAILURE
• This risk involves the failure of isolation mechanism that separates storage,
memory, routing between the different tenants.
MANAGEMENT INTERFACE COMPROMISE
• In case of public cloud provider, the customer management interfaces are
accessible through the Internet.
INSECURE OR INCOMPLETE DATA DELETION
• It is possible that the data requested for deletion may not get deleted. It
happens either because extra copies of data are stored but are not available or
disk destroyed also stores data from other tenants.
UNIT-1 : Understanding Cloud Computing 19
Characteristics
• There are four key
characteristics of cloud
computing. They are shown
in the following diagram:
UNIT-1 : Understanding Cloud Computing 20
ON DEMAND SELF-SERVICE
• Cloud Computing allows the users to use web services and resources on
demand.
• One can logon to a website at any time and use them.
BROAD NETWORK ACCESS
• Since Cloud Computing is completely web based, it can be accessed from
anywhere and at any time.
RESOURCE POOLING
• Cloud Computing allows multiple tenants to share a pool of resources.
One can share single physical instance of hardware, database and basic
infrastructure.
UNIT-1 : Understanding Cloud Computing 21
RAPID ELASTICITY
• It is very easy to scale up or down the resources at any time.
• Resources used by the customers or currently assigned to customers
are automatically monitored and resources. It make it possible
MEASURED SERVICE
• Service Models & Deployment Models
UNIT-1 : Understanding Cloud Computing 22
Cloud Computing-Technologies
There are certain technologies that are working behind the cloud
computing platforms making cloud computing flexible, reliable,
usable. These technologies are listed below:
• Virtualization
• Service-Oriented Architecture (SOA)
• Grid Computing
• Utility Computing
UNIT-1 : Understanding Cloud Computing 23
Virtualization
• Virtualization is a technique, which allows to share single physical
instance of an application or resource among multiple organizations
or tenants (customers).
• It does so by assigning a logical name to a physical resource and
providing a pointer to that physical resource when demanded.
• The Multitenant architecture offers virtual isolation among the
multiple tenants and therefore the organizations can use and
customize the application as though they each have its own instance
running.
UNIT-1 : Understanding Cloud Computing 24
UNIT-1 : Understanding Cloud Computing 25
Service-Oriented Architecture(SOA)
• Service-Oriented Architecture helps to use applications as a service for
other applications regardless the type of vendor, product or technology.
• Therefore, it is possible to exchange of data between applications of
different vendors without additional programming or making changes to
services.
UNIT-1 : Understanding Cloud Computing 26
Service Oriented Architecture
UNIT-1 : Understanding Cloud Computing 27
Grid Computing
• Grid Computing refers to distributed computing in which a group of
computers from multiple locations are connected with each other to
achieve common objective.
• These computer resources are heterogeneous and geographically
dispersed.
• Grid Computing breaks complex task into smaller pieces. These smaller
pieces are distributed to CPUs that reside within the grid.
UNIT-1 : Understanding Cloud Computing 28
Grid Computing Architecture
UNIT-1 : Understanding Cloud Computing 29
Utility Computing
• Utility computing is based on Pay per Use model.
• It offers computational resources on demand as a metered service.
• Cloud computing, grid computing, and managed IT services are based
on the concept of Utility computing.
UNIT-1 : Understanding Cloud Computing 30
Cloud Computing-Architecture
The Cloud Computing architecture comprises of many cloud
components, each of them are loosely coupled. We can broadly
divide the cloud architecture into two parts:
• Front End
• Back End
Each of the ends are connected through a network, usually via Internet.
UNIT-1 : Understanding Cloud Computing 31
The following diagram shows the graphical view of cloud computing architecture:
UNIT-1 : Understanding Cloud Computing 32
FRONT END
• Front End refers to the client part of cloud computing system.
• It consists of interfaces and applications that are required to access the
cloud computing platforms.
e.g., Web Browser.
BACK END
• Back End refers to the cloud itself.
• It consists of all the resources required to provide cloud computing services.
• It comprises of huge data storage, virtual machines, security mechanism,
services, deployment models, servers, etc.
UNIT-1 : Understanding Cloud Computing 33
Points to note
• It is the responsibility of the back end to provide built-in
security mechanism, traffic control and protocols.
• The server employs certain protocols, known as middleware,
helps the connected devices to communicate with each
other.
UNIT-1 : Understanding Cloud Computing 34
Cloud Computing Infrastructure
• Cloud infrastructure consists of servers, storage, network,
management software, and deployment software and platform
virtualization
UNIT-1 : Understanding Cloud Computing 35
Cloud Computing Infrastructure
MANAGEMENT SOFTWARE
Management Software helps to maintain and configure the infrastructure.
DEPLOYMENT SOFTWARE
Deployment software helps to deploy and integrate the application on the cloud.
HYPERVISOR
Hypervisor is a firmware or low-level program that acts as a Virtual Machine
Manager.
It allows to share the single physical instance of cloud resources between several
tenants.
Note : In virtualization technology, hypervisor is a software program that manages
multiple operating systems (or multiple instances of the same operating system) on a
single computer system.
UNIT-1 : Understanding Cloud Computing 36
Cloud Computing Infrastructure
NETWORK
Network is the key component of cloud infrastructure. It allows to connect
cloud services over the Internet.
It is also possible to deliver network as a utility over the Internet, i.e., the
consumer can customize the network route and protocol.
SERVER
• Server helps to compute the resource sharing and offer other services such
as resource allocation and deallocation, monitoring resources, security, etc.
STORAGE
• Cloud uses distributed file system for storage purpose.
• If one of the storage resource fails, then it can be extracted from another
one which makes cloud computing more reliable.
UNIT-1 : Understanding Cloud Computing 37
Infrastructural Constraints
UNIT-1 : Understanding Cloud Computing 38
Infrastructural Constraints
TRANSPARENCY
• Since virtualization is the key to share resources in cloud environment. But it is
not possible to satisfy the demand with single resource or server.
• Therefore, there must be transparency in resources, load balancing and
application, so that we can scale them on demand.
SCALABILITY
• Scaling up an application delivery solution is not that easy as scaling up an
application because it involves configuration overhead or even re-architecting the
network.
• So, application delivery solution is need to be scalable which will require the
virtual infrastructure such that resource can be provisioned and de-provisioned
easily.
UNIT-1 : Understanding Cloud Computing 39
Infrastructural Constraints
INTELLIGENT MONITORING
• To achieve transparency and scalability, application solution delivery
will need to be capable of intelligent monitoring.
SECURITY
• The mega data center in the cloud should be securely architected.
• Also the control node, a entry point in mega data center also needs
to be secure.
UNIT-1 : Understanding Cloud Computing 40
Public Cloud Model
The Public Cloud allows systems and services to be easily accessible to
general public.
e.g., Google, Amazon, Microsoft offers cloud services via Internet.
UNIT-1 : Understanding Cloud Computing 41
Public Cloud Model :Benefits
COST EFFECTIVE
• Since public cloud share same resources with large number of consumer, it
has low cost.
RELIABILITY
• Since public cloud employs large number of resources from different
locations, if any of the resource fail, public cloud can employ another one.
FLEXIBILITY
• It is also very easy to integrate public cloud with private cloud, hence gives
consumers a flexible approach.
UNIT-1 : Understanding Cloud Computing 42
Public Cloud Model :Benefits
LOCATION INDEPENDENCE
• Since, public cloud services are delivered through Internet, therefore ensures
location independence.
UTILITY STYLE COSTING
• Public cloud is also based on pay-per-use model and resources are accessible
whenever consumer needs it.
HIGH SCALABILITY
• Cloud resources are made available on demand from a pool of resources, i.e.,
they can be scaled up or down according the requirement.
UNIT-1 : Understanding Cloud Computing 43
Public Cloud Model :Benefits
UNIT-1 : Understanding Cloud Computing 44
Disadvantages Of Public Cloud Model
LOW SECURITY
• In public cloud model, data is hosted off-site and resources are shared
publicly, therefore does not ensure higher level of security.
LESS CUSTOMIZABLE
• It is comparatively less customizable than private cloud.
UNIT-1 : Understanding Cloud Computing 45
Private Cloud Model
The Private Cloud allows
systems and services to be
accessible with in an
organization.
The Private Cloud is operated
only within a single
organization.
However, It may be managed
internally or by third-party.
UNIT-1 : Understanding Cloud Computing 46
Benefits of private cloud model.
HIGHER SECURITY AND PRIVACY
• Private cloud operations are not available to general public and resources
are shared from distinct pool of resources.
• Therefore ensures high security and privacy.
MORE CONTROL
• Private clouds have more control on its resources and hardware than
public cloud because it is accessed only within an organization.
COST AND ENERGY EFFICIENCY
• Private cloud resources are not as cost effective as public clouds but they
offer more efficiency than public cloud.
UNIT-1 : Understanding Cloud Computing 47
Benefits of private cloud model.
UNIT-1 : Understanding Cloud Computing 48
Disadvantages of using private cloud model
RESTRICTED AREA
• Private cloud is only accessible locally and is very difficult to deploy
globally.
INFLEXIBLE PRICING
• In order to fulfill demand, purchasing new hardware is very costly.
LIMITED SCALABILITY
• Private cloud can be scaled only within capacity of internal hosted
resources.
UNIT-1 : Understanding Cloud Computing 49
Cloud Models-lnfrastructure-as-a-service
IaaS provides access to fundamental resources such as physical machines, virtual
machines, virtual storage, etc., Apart from these resources, the IaaS also offers:
Virtual machine disk storage
Virtual local area network (VLANs)
Load balancers
IP addresses
Software bundles
• All of the above resources are made available to end user via server virtualization.
• Moreover, these resources are accessed by the customers as if they own them.
UNIT-1 : Understanding Cloud Computing 50
UNIT-1 : Understanding Cloud Computing 51
IAAS: Benefits
IaaS allows the cloud provider to freely locate the infrastructure over the
Internet in a cost-effective manner. Some of the key benefits of IaaS are
listed below:
• Full Control of the computing resources through Administrative Access to
VMs.
• Flexible and Efficient renting of Computer Hardware.
• Portability, Interoperability with Legacy Applications.
UNIT-1 : Understanding Cloud Computing 52
FULL CONTROL OVER COMPUTING RESOURCES THROUGH
ADMINISTRATIVE ACCESS TO VMS
IaaS allows the consumer to access computing resources through
administrative access to virtual machines in the following manner:
• Consumer issues administrative command to cloud provider to run
the virtual machine or to save data on cloud's server.
• Consumer issues administrative command to virtual machines they
owned to start web server or installing new applications.
UNIT-1 : Understanding Cloud Computing 53
FLEXIBLE AND EFFICIENT RENTING OF COMPUTER HARDWARE
• IaaS resources such as virtual machines, storages, bandwidth, IP
addresses, monitoring services, firewalls, etc., all are made available to
the consumers on rent.
• The consumer has to pay based the length of time a consumer retains a
resource. Also with administrative access to virtual machines, the
consumer can also run any software, even a custom operating system.
UNIT-1 : Understanding Cloud Computing 54
PORTABILITY, INTEROPERABILITY WITH LEGACY
APPLICATIONS
• It is possible to maintain legacy between applications and workloads
between IaaS clouds.
• For example, network applications such as web server, e-mail server
that normally runs on consumer-owned server hardware can also be
run from VMs in IaaS cloud.
UNIT-1 : Understanding Cloud Computing 55
IAAS: Issues
• IaaS shares issues with PaaS and SaaS, such as Network dependence and browser
based risks.
• It also have some specific issues associated with it.
COMPATIBILITY WITH LEGACY SECURITY VULNERABILITIES
• Because IaaS offers the consumer to run legacy software in provider's
infrastructure, therefore it exposes consumers to all of the security vulnerabilities
of such legacy software.
VIRTUAL MACHINE SPRAWL
• The VM can become out of date with respect to security updates because IaaS
allows the consumer to operate the virtual machines in running, suspended and off
state.
• However, the provider can automatically update such VMs, but this mechanism is
hard and complex. UNIT-1 : Understanding Cloud Computing 56
IAAS: Issues
COMPATIBILITY WITH LEGACY SECURITY VULNERABILITIES
• Because IaaS offers the consumer to run legacy software in provider's
infrastructure, therefore it exposes consumers to all of the security
vulnerabilities of such legacy software.
VIRTUAL MACHINE SPRAWL
• The VM can become out of date with respect to security updates because
IaaS allows the consumer to operate the virtual machines in running,
suspended and off state.
• However, the provider can automatically update such VMs, but this
mechanism is hard and complex.
UNIT-1 : Understanding Cloud Computing 57
IAAS: Issues
ROBUSTNESS OF VM-LEVEL ISOLATION
• IaaS offers an isolated environment to individual consumers through
hypervisor.
• Hypervisor is a software layer that includes hardware support for
virtualization to split a physical computer into multiple virtual machines.
DATA ERASE PRACTICES
• The consumer uses virtual machines that in turn uses the common disk
resources provided by the cloud provider.
• When the consumer releases the resource, the cloud provider must ensure
that next consumer to rent the resource does not observe data residue from
previous consumer.
UNIT-1 : Understanding Cloud Computing 58
IAAS: Characteristics
• Virtual machines with pre-installed software.
• Virtual machines with pre-installed Operating Systems such as
Windows, Linux, and Solaris.
• On-demand availability of resources.
• Allows to store copies of particular data in different locations.
• The computing resources can be easily scaled up and down.
UNIT-1 : Understanding Cloud Computing 59
Platform-as-a-Service
• PaaS offers the runtime environment for applications.
• It also offers development & deployment tools, required to develop
applications.
• PaaS has a feature of point-and-click tools that enables non-developers
to create web applications.
• Examples of PaaS offering vendors :Google's App Engine, Force.com are
• Developer may log on to these websites and use the built-in API to
create web-based applications.
UNIT-1 : Understanding Cloud Computing 60
Platform-as-a-Service : Disadvantages
Disadvantage of using PaaS : is that the developer lock-in with a
particular vendor.
• For example : an application written in Python against Google's API
using Google's App Engine is likely to work only in that environment.
Therefore, the vendor lock-in is the biggest problem in PaaS.
UNIT-1 : Understanding Cloud Computing 61
Platform-as-a-Service
The following diagram shows how PaaS offers an API and
development tools to the developers and how it helps the end
user to access business applications.
UNIT-1 : Understanding Cloud Computing 62
Platform-as-a-Service : Benefits
UNIT-1 : Understanding Cloud Computing 63
Platform-as-a-Service : Benefits
LOWER ADMINISTRATIVE OVERHEAD
• Consumer need not to bother much about the administration because it's the
responsibility of cloud provider.
LOWER TOTAL COST OF OWNERSHIP
• Consumer need not purchase expensive hardware, servers, power and data
storage.
SCALABLE SOLUTIONS
• It is very easy to scale up or down automatically based on application resource
demands.
MORE CURRENT SYSTEM SOFTWARE
• It is the responsibility of the cloud provider to maintain software versions and
patch installations.
UNIT-1 : Understanding Cloud Computing 64
Platform-as-a-Service : Issues
• Like SaaS, PaaS also place
significant burdens on
consumer's browsers to
maintain reliable and
secure connections to the
provider systems.
• Therefore, PaaS shares
many of the issues of
SaaS.
UNIT-1 : Understanding Cloud Computing 65
Platform-as-a-Service : Issues
LACK OF PORTABILITY BETWEEN PAAS CLOUDS
• Although standard languages are used yet the implementations of
platforms services may vary.
• For example : file, queue, or hash table interfaces of one platform may
differ from another, making it difficult to transfer workloads from one
platform to another.
EVENT BASED PROCESSOR SCHEDULING
• The PaaS applications are event oriented which poses resource constraints
on applications, i.e., they have to answer a request in a given interval of
time.
SECURITY ENGINEERING OF PAAS APPLICATIONS
• Since the PaaS applications are dependent on network, PaaS applications
must explicitly use cryptography and manage security exposures.
UNIT-1 : Understanding Cloud Computing 66
Platform-as-a-Service : Characteristics
characteristics of PaaS service model:
• PaaS offers browser based development environment.
• It allows the developer to create database and edit the application code
either via Application Programming Interface or point-and-click tools.
• PaaS provides built-in security, scalability, and web service interfaces.
• PaaS provides built-in tools for defining workflow and approval processes
and defining business rules.
• It is easy to integrate with other applications on the same platform.
• PaaS also provides web services interfaces that allow us to connect the
applications outside the platform
UNIT-1 : Understanding Cloud Computing 67
Platform-as-a-Service : Types
PaaS Types
• Based on the functions, the PaaS can be classified into
four types
UNIT-1 : Understanding Cloud Computing 68
Platform-as-a-Service : Types
STAND-ALONE DEVELOPMENT ENVIRONMENTS
• The Stand-alone PaaS works as an independent entity for a specific
function.
• It does not include licensing, technical dependencies on specific SaaS
applications.
APPLICATION DELIVERY-ONLY ENVIRONMENTS
• The Application Delivery PaaS includes on-demand scaling and application
security.
OPEN PLATFORM AS A SERVICE
• Open PaaS offers an open source software that helps a PaaS provider to
run applications.
ADD-ON DEVELOPMENT FACILITIES
• The Add-on PaaS allows to customize the existing SaaS platform.
UNIT-1 : Understanding Cloud Computing 69
Software-as-a-Service
Software as a Service(SaaS ) model allows to provide software application as
a service to the end users.
It refers to a software that is deployed on a hosted service and is accessible
via Internet.
There are several SaaS applications, some of them are listed below:
Billing and Invoicing System
Customer Relationship Management (CRM) applications
Help Desk Applications
Human Resource (HR) Solutions
• Some of the SaaS applications are not customizable such as an Office Suite.
But SaaS provides us Application Programming Interface (API), which allows
the developer to develop a customized application.
UNIT-1 : Understanding Cloud Computing 70
Software-as-a-Service: Characteristics
• SaaS makes the software available over the Internet.
• The Software are maintained by the vendor rather than
where ever they are running.
• The license to the software may be subscription based or
usage based. And it is billed on recurring basis.
• SaaS applications are cost effective since they do not
require any maintenance at end user side.
• They are available on demand.
UNIT-1 : Understanding Cloud Computing 71
Software-as-a-Service: Characteristics
• They can be scaled up or down on demand.
• They are automatically upgraded and updated.
• SaaS offers share data model. Therefore, multiple users can
share single instance of infrastructure. It is not required to
hard code the functionality for individual users.
• All users are running same version of the software.
UNIT-1 : Understanding Cloud Computing 72
Software-as-a-Service: Benefits
Using SaaS has proved to be beneficial in terms of scalability, efficiency,
performance and much more.
Some of the benefits are listed below:
• Modest Software Tools
• Efficient use of Software Licenses
• Centralized Management & Data
• Platform responsibilities managed by provider
• Multitenant solutions
UNIT-1 : Understanding Cloud Computing 73
Software-as-a-Service: Benefits
MODEST SOFTWARE TOOLS
The SaaS application deployment requires a little or no client side software
installation which results in the following benefits:
• No requirement for complex software packages at client side
• Little or no risk of configuration at client side
• Low distribution cost
EFFICIENT USE OF SOFTWARE LICENSES
• The client can have single license for multiple computers running at different
locations which reduces the licensing cost.
• Also, there is no requirement for license servers because the software runs in the
provider's infrastructure.
UNIT-1 : Understanding Cloud Computing 74
Software-as-a-Service: Benefits
CENTRALIZED MANAGEMENT & DATA
• The data stored by the cloud provider is centralized.
• However, the cloud providers may store data in a decentralized manner for sake of
redundancy and reliability.
PLATFORM RESPONSIBILITIES MANAGED BY PROVIDERS
• All platform responsibilities such as backups, system maintenance, security,
hardware refresh, power management, etc., are performed by the cloud provider.
• The consumer need not to bother about them.
MULTITENANT SOLUTIONS
• Multitenancy allows multiple users to share single instance of resources in virtual
isolation.
• Consumers can customize their application without affecting the core functionality.
UNIT-1 : Understanding Cloud Computing 75
Software-as-a-Service: Issues
There are several issues associated with SaaS, some of them are listed
below:
• Browser based risks
• Network dependence
• Lack of portability between SaaS clouds
UNIT-1 : Understanding Cloud Computing 76
Software-as-a-Service: Issues
BROWSER BASED RISKS
• If the consumer visits malicious website and browser becomes infected, and the
subsequent access to SaaS application might compromise the consumer's data.
• To avoid such risks, the consumer can use multiple browsers and dedicate a
specific browser to access SaaS applications or can use virtual desktop while
accessing the SaaS applications.
NETWORK DEPENDENCE
• The SaaS application can be delivered only when network is continuously
available.
• Also network should be reliable but the network reliability cannot be guaranteed
either by cloud provider or the consumer.
LACK OF PORTABILITY BETWEEN SAAS CLOUDS
• Transferring workloads from one SaaS cloud to another is not so easy because
work flow, business logics, user interfaces, support scripts can be provider
specific.
UNIT-1 : Understanding Cloud Computing 77
OPEN SAAS AND SOA
Open SaaS uses SaaS applications that are developed using open source
programming language.
These SaaS applications can run on any open source operating system
and database.
Open SaaS has several benefits, some of these are listed below:
• No License Required
• Low Deployment Cost
• Less Vendor Lock-in
• More portable applications
• More Robust Solution
UNIT-1 : Understanding Cloud Computing 78
NIST :NATIONAL INSTITUTE OF STANDARDS AND
TECHNOLOGY
Definition :
Cloud computing is a model for enabling ubiquitous,
convenient, on-demand network access to a shared pool of
configurable computing resources (e.g., networks, servers,
storage, applications, and services) that can be rapidly
provisioned and released with minimal management effort or
service provider interaction.
UNIT-1 : Understanding Cloud Computing 80
Advantages of NIST
• The Cloud Computing model offers the promise of massive cost savings
combined with increased IT agility.
• It is considered critical that government and industry begin adoption of
this technology in response to difficult economic constraints.
• However, cloud computing technology challenges many traditional
approaches to data center and enterprise application design and
management.
• Cloud computing is currently being used; however, security,
interoperability, and portability are cited as major barriers to broader
adoption.
UNIT-1 : Understanding Cloud Computing 81
Goals of NIST
• The long term goal is to provide thought leadership and guidance around
the cloud computing paradigm to catalyse its use within industry and
government.
• NIST aims to shorten the adoption cycle, which will enable near-term cost
savings and increased ability to quickly create and deploy enterprise
applications.
• NIST aims to foster cloud computing systems and practices that support
interoperability, portability, and security requirements that are
appropriate and achievable for important usage scenarios.
UNIT-1 : Understanding Cloud Computing 82
NIST Reference Model
NIST Cloud Computing
Reference model
(Architecture)
• Cloud consumer: Cloud
Consumer Person or
organization that
maintains a business
relationship with, and
uses service from
Cloud Providers
83
UNIT-1 : Understanding Cloud Computing
Cloud Carrier
• The intermediary that provides
connectivity and transport of cloud
services between Cloud Providers and
Cloud Consumers.
• Provide access to cloud consumers
through network, telecommunication
and other access devices.
• Example: Network access devices
include computers, laptops, mobile
phones, mobile internet devices
(MIDs), etc.
• Distribution can be provided by
network and telecommunication
carriers or a transport agent.
UNIT-1 : Understanding Cloud Computing 84
Transport agent
• A business organization that
provides physical transport of
storage media such as high-
capacity hard drives.
• A cloud provider shall set up SLAs
(service level agreement) with a
cloud carrier to provide a
consistent level of service.
• In general, the cloud carrier may
be required to provide dedicated
and encrypted connections.
UNIT-1 : Understanding Cloud Computing 85
Usage Scenario of Cloud Carriers
UNIT-1 : Understanding Cloud Computing 86
Cloud Broker
• An entity that manages the use, performance and delivery of cloud
services and negotiates relationships between Cloud Providers and
Cloud Consumers
Usage Scenario of
UNIT-1 : Understanding Cloud
Cloud Brokers
Computing 87
Cloud Broker
Service Intermediation:
A cloud broker enhances a given service by improving some specific
capability and provides the value-added service to cloud
consumers.
Service Aggregation:
A cloud broker combines and integrates multiple services into one
or more new services.
• The broker will provide data integration and ensure the secure
data movement between cloud consumer and multiple cloud
providers.
Service Arbitrage:
Service arbitrage is similar to service aggregation, with the
difference in that the services being aggregated aren’t fixed.
Service arbitrage allows flexible and opportunistic choices for the
broker.
For example : the cloud broker can use a credit-scoring service and
UNIT-1 : Understanding Cloud Computing 88
select the best score from multiple scoring agencies.
Cloud Provider
• Person, organization or
entity responsible for
making a service
available to Cloud
Consumers.
Cloud Provider Services
UNIT-1 : Understanding Cloud Computing 89
Cloud Provider
Cloud providers perform different tasks for different service models.
• SaaS: Installs, manages, maintains and supports the software application
on a cloud infrastructure.
• PaaS: Provisions and manages cloud infrastructure and middleware for the
platform consumers; provides development, deployment and
administration tools to platform consumers.
• IaaS: Provisions and manages the physical processing, storage, networking
and the hosting environment and cloud infrastructure for IaaS consumers.
UNIT-1 : Understanding Cloud Computing 90
Cloud Auditor
• A party that can conduct
independent assessment of
cloud services, information
system operations,
performance and security of
the cloud implementation.
• A cloud auditor can evaluate
the services provided by a
cloud provider in terms of
security controls, privacy
impact, performance, etc.
UNIT-1 : Understanding Cloud Computing 91
Cloud Auditor
• For security auditing, a cloud auditor can assess the security controls
in the information system to determine the extent to which the
controls are implemented correctly, operating as intended, and
producing the desired outcome with respect to meeting the security
requirements for the system.
Cloud Services
• A cloud service is any service made available to users on demand via the
Internet from a cloud computing provider's servers as opposed to being
provided from a company's own on- premises servers.
• Cloud services are designed to provide easy, scalable access to
applications, resources and services, and are fully managed by a cloud
services provider.
UNIT-1 : Understanding Cloud Computing 92
ASSIGNMENT - 1
List 5 essential Characteristics of Cloud Computing. Discuss in detail
1
about Cloud Service Models.
2 Briefly explain about Cloud Computing Technologies.
3 Explain the Architecture of Cloud computing with a neat Sketch.
4 Discuss about the components in Cloud Computing Infrastructure.
5 What are the types of Cloud computing, explain.
6 Write a brief note on NIST Reference Architecture
UNIT-1 : Understanding Cloud Computing 93