Cloud Computing Deployment Models Explained
Cloud Computing Deployment Models Explained
SYLLABUS (UNIT - II): Cloud Deployment Models, Cloud Service Models, Technological
Drivers for Cloud Computing: SOA and Cloud, Multicore Technology, Web 2.0 and Web 3.0,
Pervasive Computing, Operating System, Application Environment.
I) Cloud Deployment Models
Deployment models can be defined as the different ways in which the cloud can be deployed. These
models are fully user centric, that is, these depend on users’ requirement and convenience. A user
selects a model based on his or her requirement and needs. There are several types to choose from
when it comes to cloud installations. The location of each workload in your cloud architecture will
be determined by your business needs.
Deployment models describe the ways with which the cloud services can be deployed or made
available to its customers, depending on the organizational structure and the provisioning location.
Four deployment models are usually distinguished, namely,
1) Private Cloud
2) Public Cloud
3) Community Cloud
4) Hybrid Cloud
The classification of the cloud is based on several parameters such as the size of the cloud (number
of resources), type of service provider, location, type of users, security, and other issues. The
smallest in size is the private cloud.
The private cloud is the most basic deployment model that can be deployed by a single
organization for its personal use. It is not shared by other organizations, and it is not allowed for
public use. The private cloud is to serve the people of an organization. It is usually on premise but
can be outsourced also.
The next one is the community cloud, which is an extension of the private cloud. Here, the cloud is
the same as the private cloud but is shared by several organizations. The community cloud is
established for a common cause. The cause can be anything, but usually it leads to mutual benefits
among the participating organizations.
The next is the public cloud, which is the opposite of the private cloud. This cloud allows access
from any place in the world and is open to the public. This cloud is biggest in size among all other
deployment models. The public cloud model is one of the most popular deployment models. The
public cloud service provider charges the users on an hourly basis and serve the users according to
the service-level agreements (SLAs).
The next one is the hybrid cloud, which is a combination of other deployments. Usually, it consists
of the private and public clouds combined. Several properties of the private cloud are used with the
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
properties of the public cloud. This cloud is one of the upcoming cloud models growing in the
industry.
1. Private Cloud Model: Private Cloud allows systems and services to be accessible within an
organization. The Private Cloud is operated only within a single organization. The cloud
infrastructure is provisioned for exclusive use by a single organization comprising multiple
consumers (e.g., business units). It may be owned, managed, and operated by the organization, a
third party, or some combination of them, and it may exist on or off premises.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Benefits:
There are many benefits of deploying cloud as private cloud model. The following diagram shows
some of those benefits:
High Security and Privacy: Private cloud operations are not available to general public and
resources are shared from distinct pool of resources. Therefore, it ensures high security and privacy.
More Control: The private cloud has more control on its resources and hardware than public cloud
because it is accessed only within an organization.
Cost and Energy Efficiency: The private cloud resources are not as cost effective as resources in
public clouds but they offer more efficiency than public cloud resources.
Restricted Area of Operation: The private cloud is only accessible locally and is very difficult to
deploy globally.
High Priced: Purchasing new hardware in order to fulfill the demand is a costly transaction.
Limited Scalability: The private cloud can be scaled only within capacity of internal hosted
resources.
Additional Skills: In order to maintain cloud deployment, organization requires skilled expertise.
2. Public Cloud Model: The cloud infrastructure is provisioned for open use by the general public.
It may be owned, managed, and operated by a business, academic, or government organization, or
some combination of them. It exists on the premises of the cloud provider.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Benefits: There are many benefits of deploying cloud as public cloud model. The following
diagram shows some of those benefits:
Cost Effective: Since public cloud shares same resources with large number of customers it turns out
inexpensive.
Reliability: The public cloud employs large number of resources from different locations. If any of the
resources fails, public cloud can employ another one.
Flexibility: The public cloud can smoothly integrate with private cloud, which gives customers a
flexible approach.
Location Independence: Public cloud services are delivered through Internet, ensuring location
independence.
Utility Style Costing: Public cloud is also based on pay-per-use model and resources are accessible
whenever customer needs them.
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.
3. Community Cloud Model: The cloud infrastructure is shared by several organizations and
supports a specific community that has shared concerns (e.g., mission, security requirements,
policy, and compliance considerations). It may be managed by the organizations or a third party and
may exist on premise or off premise.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Benefits: There are many benefits of deploying cloud as community cloud model.
Cost Effective: Community cloud offers same advantages as that of private cloud at low cost.
Security: The community cloud is comparatively more secure than the public cloud but less secured
than the private cloud.
Disadvantages:-
Since all data is located at one place, one must be careful in storing data in community
cloud because it might be accessible to others.
It is also challenging to allocate responsibilities of governance, security and cost among
organizations.
4. Hybrid cloud: The cloud infrastructure is a composition of two or more distinct cloud
infrastructures (private, community, or public) that remain unique entities but are bound together by
standardized or proprietary technology that enables data and application portability (e.g.,cloud
bursting for load balancing between clouds).
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Benefits: There are many benefits of deploying cloud as hybrid cloud model. The following
diagram shows some of those benefits:
Scalability: It offers features of both, the public cloud scalability and the private cloud scalability.
Cost Efficiency: Public clouds are more cost effective than private ones. Therefore, hybrid clouds can
be cost saving.
Security: The private cloud in hybrid cloud ensures higher degree of security.
Disadvantages:
Networking Issues: Networking becomes complex due to presence of private and public cloud.
Security Compliance: It is necessary to ensure that cloud services are compliant with security
policies of the organization.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
II) Cloud Service Models (Three Cloud Service Models (SPI Model))
Cloud computing is a model that enables the end users to access the shared pool of resources such
as compute, network, storage, database, and application as an on-demand service without the need
to buy or own it.
The services are provided and managed by the service provider, reducing the management effort
from the end user side.
The essential characteristics of the cloud include on-demand self-service, broad network access,
resource pooling, rapid elasticity, and measured service.
The National Institute of Standards and Technology (NIST) defines three basic service models,
namely, IaaS, PaaS, and SaaS
The different service models of cloud computing can be deployed and delivered through any one of
the cloud deployment models.
The NIST defines four different types of cloud deployment models, namely, public cloud, private
cloud, community cloud, and hybrid cloud.
The service delivery of cloud services through different deployment models is shown below
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Cloud computing provides three primary service models, each addressing different levels of user
needs:
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.
• What it offers:
o Virtualized hardware resources such as servers, storage, and networking.
o Users have full control over operating systems and applications but do not manage the
underlying hardware.
• Features:
o Scalability to handle varying workloads.
o Flexibility to deploy and manage any software or applications.
• Examples:
o Amazon EC2: Elastic Compute Cloud for virtual servers.
o Google Compute Engine: Virtual machines on Google's infrastructure.
o Microsoft Azure: Virtual machines for hosting applications and services.
• Use Cases:
o Hosting websites.
o Data storage and backups.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
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 over computing resources through administrative access to VMs: IaaS allows the
customer to access computing resources through administrative access to virtual machines in the
following manner:
Customer issues administrative command to cloud provider to run the virtual machine or to
save data on cloud server.
Customer issues administrative command to virtual machines they owned to start web
server or to install new applications.
Flexible and efficient renting of computer hardware: IaaS resources such as virtual machines,
storage devices, bandwidth, IP addresses, monitoring services, firewalls, etc. are made available to
the customers on rent.
The payment is based upon the amount of time the customer retains a resource. Also with
administrative access to virtual machines, the customer can run any software, even a custom
operating system.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Disadvantages:
Compatibility with legacy security vulnerabilities: Because IaaS offers the customer to run
legacy software in provider's infrastructure, it exposes customers 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 customer 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.
Hypervisor is a software layer that includes hardware support for virtualization to split a physical
computer into multiple virtual machines.
Data erase practices: The customer uses virtual machines that in turn use the common disk
resources provided by the cloud provider.
When the customer releases the resource, the cloud provider must ensure that next customer to rent
the resource does not observe data residue from previous customer.
• What it offers:
o A platform that includes tools and frameworks for developers to build, test, and deploy
applications.
o Users focus on application development without managing infrastructure.
• Features:
o Pre-configured environments for application development.
o Support for multiple programming languages and frameworks.
• Examples:
o Google App Engine: For building scalable web applications.
o Microsoft Azure App Service: Deploy web apps without managing servers.
o Heroku: A cloud platform for building and deploying apps in various languages.
• Use Cases:
o Developing mobile and web applications.
o Streamlining software development and deployment.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
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, approval processes, and business rules.
It is easy to integrate PaaS with other applications on the same platform.
PaaS also provides web services interfaces that allow us to connect the applications outside
the platform.
Benefits:
Lower administrative overhead: Customer need not bother about the administration because it is
the responsibility of cloud provider.
Lower total cost of ownership: Customer need not purchase expensive hardware, servers, power,
and data storage.
Scalable solutions: It is very easy to scale the resources up or down automatically, based on their
demand.
More current system software: It is the responsibility of the cloud provider to maintain software
versions and patch installations.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Disadvantages:
Lack of portability between PaaS Clouds: Although standard languages are used, yet the
implementations of platform services may vary.
For example, file, queue, or hash table interfaces of one platform may differ from another, making
it difficult to transfer the 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 PaaS applications are dependent on network,
they must explicitly use cryptography and manage security exposures.
PaaS Types: Based on the functions, PaaS can be classified into four types as shown in the
following diagram:
Open platform as a service: Open PaaS offers open source software that helps a PaaS provider to
run applications.
Add-on development facilities: The add-on PaaS allows customizing the existing SaaS platform.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
3. Software as a Service (SaaS): Software-as a-Service (SaaS) model allows to provide software
application as a service to the end users. It refers to software that is deployed on a host service and
is accessible via Internet. There are several SaaS applications listed below:
• What it offers:
o Fully functional software applications delivered over the internet.
o Users access software via a browser or an app without installation or
maintenance.
• Features:
o Accessible from any device with an internet connection.
o Updates and maintenance are managed by the provider.
• Examples:
o Gmail: Email as a service.
o Microsoft Office 365: Cloud-based productivity tools.
o Sales force CRM: Customer relationship management.
• Use Cases:
o Email services.
o Collaborative tools for document editing and sharing.
o Customer management and analytics.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Benefits:
Modest software tools: The SaaS application deployment requires a little or no client side software
installation, which results in the following benefits:
Disadvantages / Issues: There are several issues associated with SaaS, some of them are
listed below:
Browser based risks: If the customer visits malicious website and browser becomes infected, the
subsequent access to SaaS application might compromise the customer's data.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
To avoid such risks, the customer 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 by the customer.
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.
No License Required
Low Deployment Cost
Less Vendor Lock-in
More portable applications
More Robust Solution
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Employees in a company require to login to system to perform various tasks. These systems may be
based on local server or cloud based. Following are the problems that an employee might face:
IDaaS offers management of identity information as a digital entity. This identity can be used
during electronic transactions.
Identity: Identity refers to set of attributes associated with something to make it recognizable. All
objects may have same attributes, but their identities cannot be the same. A unique identity is
assigned through unique identification attribute.
Single Sign-On (SSO): To solve the problem of using different username and password
combinations for different servers, companies now employ Single Sign-On software, which allows
the user to login only one time and manage the access to other systems.
SSO has single authentication server, managing multiple accesses to other systems, as shown in the
following diagram:
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
User logs into the authentication server using a username and password.
The authentication server returns the user's ticket.
User sends the ticket to intranet server.
Intranet server sends the ticket to the authentication server.
Authentication server sends the user's security credentials for that server back to the intranet
server.
If an employee leaves the company, then disabling the user account at the authentication server
prohibits the user's access to all the systems.
OpenID:
It offers users to login into multiple websites with single account. Google, Yahoo!, Flickr,
MySpace, [Link] are some of the companies that support OpenID.
Benefits
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
NaaS uses virtualized network infrastructure to provide network services to the customer. It is
the responsibility of NaaS provider to maintain and manage the network resources. Having a
provider working for a customer decreases the workload of the customer. Moreover, NaaS offers
network as a utility. NaaS is also based on pay-per-use model.
To use NaaS model, the customer is required to logon to the web portal, where he can get online
API. Here, the customer can customize the route. In turn, customer has to pay for the capacity used.
It is also possible to turn off the capacity at any time.
Nowadays, more companies and enterprises are entering the cloud scenario either as service
providers or as service consumers. There has been a considerable increase in the adoption rate of
cloud computing among service providers and users across the globe.
The success of cloud computing can be closely associated with the technological enhancements in
various areas such as service-oriented architecture (SOA), virtualization, multi core
technology, memory and storage technologies, networking technologies, Web 2.0, and Web
3.0. Also, the advancements in programming models, software development models, pervasive
computing, operating systems (OSs), and application environment have contributed to the
successful deployment of various clouds.
There are two major categories of technological drivers for cloud computing:-
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
SOA provides a conceptual framework for designing modular and interoperable services, and cloud
computing offers a scalable and flexible infrastructure for deploying and consuming those services
over the Internet.
SOA and cloud computing are highly complementary. SOA principles can be applied in the design
and development of services deployed in the cloud, contributing to a modular and scalable
architecture.
Cloud services themselves often adhere to SOA principles such as they are designed as modular,
reusable, and loosely coupled components that can be orchestrated to deliver business solutions.
Both SOA and cloud computing contribute to the flexibility and agility of IT environments,
enabling businesses to adapt quickly to changing requirements.
The combination of SOA and cloud computing can contribute to building modern, responsive, and
cost-effective IT solutions.
Definition of SOA:
SOA provides a conceptual framework for designing modular and interoperable services.
Each service represents a discrete business function and can be independently developed, deployed,
and scaled.
Characteristics of SOA:
In SOA, services are the fundamental building blocks. They are self-contained, modular
units that perform specific tasks and expose well-defined interfaces.
Services in SOA are loosely coupled, i.e. they are independent and can be changed or
updated without affecting other services.
Benefits of SOA:
Services can be reused multiple times across multiple applications, reducing redundancy
and promoting consistency.
Individual services can be scaled independently based on demand.
SOA supports flexibility and agility in software development because changes to one
service do not impact others and work independently.
SOA supports interoperability, allowing services to communicate and work together
seamlessly, often using standardized protocols like SOAP (Simple Object Access Protocol)
or REST (Representational State Transfer).
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Introduction of SOC:
Service-Oriented Computing (SOC) and cloud computing share common principles to deliver
flexible, scalable, and efficient solutions.
The principles of SOC, such as service-oriented architecture and service composition, align well
with the cloud’s capabilities to provide scalable and on-demand access to computing resources.
The cloud environment supports the entire service lifecycle as emphasized by SOC. This includes
the design, development, deployment, and management of services.
Definition of SOC:
Characteristics of SOC:
SOC extends beyond just architectural considerations and includes the entire ecosystem of
service-oriented technologies and methodologies.
SOC is the composition of services to create larger, more complex applications by
orchestrating (coordinating the elements of (a situation) to produce a desired effect)
individual services.
SOC involves the entire lifecycle of services, including design, development, deployment,
management, and retirement.
Benefits of SOC:
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Multi-core technology has become a standard in modern computing architectures, and its
widespread adoption has significantly contributed to the performance improvements
observed in various computing devices.
It plays a crucial role in meeting the increasing computational demands of modern
applications and workloads.
Multi-core technology has become a standard in modern computing and is widely used in a
variety of devices, from personal computers to servers and mobile devices.
Multi-core technology is the integration of multiple processor cores on a single chip, allowing a
computer’s central processing unit (CPU) to simultaneously execute multiple tasks or processes.
Multi-core processors enable parallel processing, where multiple tasks or instructions are
executed simultaneously. Each core can handle its own set of instructions independently,
leading to improved performance for applications that can be parallelized.
Different cores on a multi-core processor can execute separate tasks independently. This
allows for better task isolation and prevents one task from adversely affecting the
performance of another.
Multi-core processors often support multithreading, where each core can handle multiple
threads simultaneously. This is different from multi-processing, where multiple independent
processes run on separate cores.
In some cases, multi-core processors can be more energy-efficient than their single-core
counterparts. This is because the workload can be distributed across multiple cores,
allowing for better power management and reduced overall power consumption.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
The operating system is responsible for allocating tasks to different cores based on factors
such as the type of task, system load, and other considerations. Efficient task allocation is
crucial for maximizing the benefits of multi-core technology.
V) Web 2.0:
Web 2.0 (or Web 2) is the popular term given to the advanced Internet technology and applications
that include blogs, wikis, really simple syndication (RSS), and social bookmarking.
The two major contributors of Web 2.0 are the technological advances enabled by Ajax and other
applications such as RSS and Eclipse that support the user interaction and their empowerment in
dealing with the web.
One of the most significant differences between Web 2.0 and the traditional World Wide Web
(referred to as Web 1.0) is that Web 2.0 facilitates greater collaboration and information sharing
among Internet users, content providers, and enterprises.
Hence, in that sense, this can be considered as a migration from the read-only web to a
read/write web.
The main focus of Web 2.0 is to provide the web users the ability to share and distribute
information online with other users and sites.
It refers to the transition from the static HTML web pages to a more dynamic web for serving web
applications to users effectively. A Web 2.0 site such as a social networking site allows its users to
interact with each other in a social media dialogue, in contrast to websites where people are
restricted to the passive viewing of information.
Common examples of Web 2.0 include social networking sites, blogs, wikis, video-sharing sites,
and any other hosted services or web applications that allow dynamic sharing of information among
users.
Also, Web 2.0 technologies can be used as interactive tools to provide feedback on contents or
information provided in the web page such as the best practices and recent updates. This feedback
will help the service providers to improve the quality of their services and thereby the business
values.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Cloud computing is closely related to the SOA of Web 2.0 and virtualization of hardware and
software resources. Cloud computing makes it possible to build applications and services that can
run/execute utilizing the resources (hardware and software) provided by the service providers,
without restricting the application developers or consumers to the resources available on premise.
Web 2.0 is also called network as a platform computing as it provides software, computing, and
storage facilities to the user all through the browser. The major applications of Web 2.0 include
social networking sites, self-publishing platforms, tagging, and social bookmarking.
Folksonomy
Rich user experience
User as a contributor
User participation
Dispersion
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Web 1.0: Web 1.0 was the first generation of the Web in which the main focus was building the
web, making it accessible, and also commercializing it. The key areas of interest in Web 1.0
included protocols such as HTTP, open standard markup languages such as HTML and XML,
Internet access through ISPs, the first web browsers, platforms and tools for web development,
web-development software languages such as Java and Javascript, and the commercialization of
the web.
Web 2.0: The phrase Web 2.0 was coined by O’Reilly and it refers to the second generation of
Internet-based services, such as social networking sites, wikis, and communication tools, that
facilitate online collaboration and sharing among various users.
Web 3.0: John Markoff of The New York Times coined the term Web 3.0 and it refers to the third
generation of Internet-based services that is collectively called the intelligent web. Web 3.0
includes services on the Internet that use technologies such as semantic web, natural language
search, machine learning, recommendation agents, and artificial intelligence to achieve machine-
facilitated understanding of information in order to provide a more productive and intuitive
experience to the web users.
Web 2.0 technologies allows the use of read/write web, blogs, interactive web applications, rich
media, tagging or folksonomy while sharing content, and also social networking sites focusing on
communities
Web 3.0 is considered as the next logical step in the evolution of the Internet and web technologies.
For Web 1.0 and Web 2.0, the Internet is confined within the physical walls of the computer, but
as more and more devices such as smartphones, cars, and other household appliances become
connected to the web, the Internet will be omnipresent and could be utilized in the most efficient
manner.
In this case, various devices will be able to exchange data among one another and they will even
generate new information from raw data (e.g., a music site, [Link], will be able to anticipate the
type of music the user likes depending on his previous song selections).
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Hence, the Internet will be able to perform the user tasks in a faster and more efficient way, such as
the case of search engines being able to search for the actual interests of the individual users and
not just based on the keyword typed into the search engines.
Web 3.0 embeds intelligence in the entire web domain. It deploys web robots that are smart enough
of taking decisions in the absence of any user interference. If Web 2.0 can be called a read/write
web, Web 3.0 will surely be called a read/write/execute web.
The two major components forming the basis of Web 3.0 are the following:
1) Semantic web
2) Web services
Semantic Web:
The semantic web provides the web user a common framework that could be used to share and
reuse the data across various applications, enterprises, and community boundaries .
The semantic web is a vision of IT that allows the data and information to be readily interpreted by
machines, so that the machines are able to take contextual decisions on their own by finding, com-
bining, and acting upon relevant information on the web.
The semantic web, as originally envisioned, is a system enabling the machines to understand the
context and meaning of complex human requests and respond to them appropriately. Also, the
semantic web is considered as an integrator of contents or information across different applications
and systems.
Web Services:
A web service is a software system that supports computer-to-computer interaction over the
Internet. Web services are usually represented as APIs.
For example, the popular photography-sharing website Flickr provides a web service that could be
utilized by the developers to programmatically interface with Flickr in order to search for images.
Currently, thousands of web services are available for users, and they form an important component
in the context of Web 3.0.
By the combination of semantic markup and web services, the Web 3.0 paradigm promises the
potential for applications that can communicate to each other directly and also facilitates broader
searches for information through simpler interfaces.
Ubiquitous connectivity
Network computing
Open technologies
Open identity
The intelligent web
The technology is moving beyond the PC to everyday devices with embedded technology and
connectivity. Pervasive computing is also called ubiquitous computing, in which almost any
device or material such as clothing, tools, appliances, vehicles, homes, human body, or even the
coffee mug can be imbedded with chips to connect that object to an infinite network of other
devices.
The goal of pervasive computing, which combines current network technologies with wireless
computing, voice recognition, Internet capability, and artificial intelligence, is to create an
environment where the connectivity of devices is achieved in such a way that the connectivity is
unobtrusive and always available.
Pervasive computing also has a number of prospective applications, which range from home care
and health, to geographical tracking and intelligent transport systems.
The success of ubiquitous computing rests with the proper integration of various components that
talk to each other and thereby behaving as a single connected system. Figure 6.8 shows the
architecture of a ubiquitous computing stack.
At the bottom of the stack is a physical layer. Tiny sensors are attached (carried, worn, or
embedded) to people, animals, machines, homes, cars, buildings, campuses, and fields. Sensors
capture various bits of information from the immediate surroundings. Beyond the microphone and
camera, multiple sensors such as GPS, accelerometer, and compass can be integrated into it.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Above the sensors lies the wireless communication infrastructure, which can be provided by the
802.11 family of networks. Together with mesh networks, such standards ensure the connectivity of
sensors and devices.
Another technology called ZigBee is a low-cost alternative for keeping multiple devices
connected, allowing parent devices to wirelessly control child sensors. Near field communication
(NFC) is yet another technology standard that can be used for ubiquitous computing, especially in
scenarios where non-battery-operated passive points are concerned. NFC-powered devices can
also interact with one another.
Pervasive computing helps cloud computing by providing the ability to access the cloud resources
anytime, anywhere and also through any device. Pervasive computing provides the necessary
features such as ubiquitous computing, storage and archiving, social community–based
applications, and business as well as non business applications in order for cloud computing to gain
its full potential.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Cloud computing is typically a client-server architecture, where the client can be any portable
device like a laptop, phone, browser, or any other OS-enabled devices. A main issue with these
portable devices is the constraints they present in terms of storage, memory, processing, and battery
lifetime. By storing data on the cloud, and interacting with the cloud through secure communication
channels, all these constraints can be easily met.
Types of Operating Systems: The different variants of OSs are the following:
2. Web OSs: Web OSs are basically websites that replicate the desktop environment of modern
OSs, all inside a web browser. They are installed onto web servers and live on the Internet. Thus,
a user can access his virtual desktop from any device, anywhere, that is connected to the net.
Web OSs are also called the dynamic computers. In this case, the applications, hard disk, and
OSs are all present at the servers from where they are accessed. The web OS service provider
manages the application and database accesses of the various users.
The user is provided with a graphical user interface similar to the one available on a desktop PC,
which can be used to access the data and the applications from the server. Google Chrome OS is
an example of a web OS.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
3. Distributed OS:
A distributed OS is a software that is present over a collection of independent, networked,
communicating, and physically separate computational nodes. Each individual node holds a
specific software that is a subset of the global aggregate OS. Each subset consists of two distinct
components of the distributed OS.
The first one is a ubiquitous minimal kernel, or microkernel, that directly controls the node’s
hardware.
The second one is a higher-level collection of system management components that coordinate
The node’s individual and collaborative activities. The microkernel and the management
components work together.
They support the distributed system’s goal of integrating multiple resources and processing
functionality into an efficient and stable system. To a user, a distributed OS works in a manner
similar to a single-node, monolithic OS. That is, although it consists of multiple nodes, it appears to
the users and applications as a single-node OS.
4. Embedded systems:
Embedded systems are OSs present in electronic devices used for various purposes in order to make
them smart and more efficient. Embedded systems present in devices such as routers, for example,
typically include a preconfigured web server, DHCP server, and some utilities for its effective
networking operation, and they do not allow the installation of new programs in them.
Examples of embedded OSs for routers include Cisco Internetwork Operating System (IOS),
DD-WRT, and Juniper Junos. An embedded OS can also be found inside an increasing number
of consumer gadgets including phones, personal digital assistance (PDA), and digital media player
for the successful completion of their intended tasks.
Most of the basic functions of current virtualization software are inherited from this early VM OS.
The virtualization software is now represented with the term hypervisor. Hardware virtualization is
used to share the resources of the cloud providers effectively with the customers by generating
an illusion of dedicated computing, storage, and networking on a computing infrastructure.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
The concept of virtualization is physically implemented using the hypervisor modules, and the
operation and processing of hypervisors are materialized by the OSs. In other words, hypervisor
modules are installed on top of OSs, which act as an interface between hardware units and
hypervisor packages.
1. The cloud OS must permit autonomous management of its resources: The cloud OS should
expose a consistent and unified interface that conceals whenever possible the fact that
individual nodes are involved in its operations, and what those low-level operations are. It
should support the autonomous management of the various cloud resources on behalf of its
users and applications.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
2. Cloud OS operation must continue despite failure of nodes, clusters, and network
partitioning: Guaranteeing continued operation of the cloud management processes in these
conditions involves mechanisms for quickly detecting the failures and enacting appropriate
measures for recovering from the failures. Several cloud libraries that implement common
fault tolerance and state recovery features are provided for the customers to use.
3. The cloud must support multiple types of applications: Applications of different types such as
high-performance computing, high data availability, and high network throughput should
ideally coexist in a cloud environment and obtain from the system the resources that best
match the application requirements.
4. The cloud OS management system must be decentralized, scalable, and cost effective:
Moreover, apart from initial resource deployment, no human intervention should be
required to expand the cloud resources. Likewise, user management should only entail the
on-demand creation of user credentials, which are then automatically propagated throughout
the cloud.
5. The resources used in the cloud architecture must be accountable: The resource usage of the
various cloud customers should be monitored effectively in the cloud environment. This monitoring
activity could be used for charging the customers for their resource access, and also for the security
auditing (if needed). Moreover, dynamic billing schemes based on resource congestion could be an
effective way for resource allocation.
The standards-based application environment must ensure the interoperability of the application
development components. In particular, it must enable customized content, extensible functionality
and advanced user interfaces.
For the web to be ubiquitous, web access devices must be present almost everywhere. For this to
occur, web access devices must become small and portable. As web-enabled devices evolve from
today’s desktop computers to such things as cellular telephones, car radios, and personal organizers,
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
the challenge will be to provide a common application authoring environment across a diverse
range of devices. The existing standard web application environment consists of HTML,
JavaScript, and an ad hoc collection of standard graphics file formats, processed by an HTML
browser.
Distributed Development
Agile Development
Distributed Development:
This is the natural by-product of the Internet and the phenomenon that not all coding geniuses
live within commuting distance from the workplace. Distributed development is a global
development that brings its own challenges with collaboration and code management. There are
applications available for distributed code management such as git and Subversion. They are
widely used in distributed environments.
Agile Development:
This is where cloud development can really be much more than just online. Since cloud
environments can be provisioned instantly and nearly any configuration can be copied and
activated, the possibilities for instant developments and test environments are very attractive to
developers.
Cloud development can also boost agile development by coordinating collaboration, planned
sprints, and emergency bug fixes. Deploying to the cloud is also very useful for agile
development. Prereleases can be pushed out to customers’ test machines on their cloud almost
instantly. Even if the customer is not in a cloud environment yet, prereleases can be posted on a
public cloud for the customer to access and test remotely before accepting delivery of the final
release of the application. Toolsets that can help the agile management in the cloud include
Code2Cloud, in conjunction with Tasktop and CollabNet.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Through models like Software as a Service (SaaS), businesses can efficiently create and deliver
applications across various devices. Cloud platforms also reduce development time from months to
weeks, improve resource utilization, and support quick market deployment.
Overall, cloud computing enables faster, cheaper, and more collaborative software development
with enhanced scalability and accessibility.
This is time consuming, error prone, and challenging to automate. Many developers have
multiple computers and are forced to repeat these tasks on each machine. There is no way to
synchronize the configurations of components across different machines, and each machine
requires similar hardware and OSs to operate the components identically.
2. Decreased productivity: Many IDEs are memory and disk hogs, with significant boot times.
They are so resource-hungry that they can starve other applications and the net effect is less
productivity due to a slower machine.
3. Limited accessibility: Normally, desktop developer workspaces are not accessible via mobile
devices through the Internet. Developers who need remote access have to resort to some complex
and slow solutions such as GotoMyPC.
4. Poor collaboration: These days, most developers work as part of a team, so communication and
collaboration among the team members are critical for the success of the project.
In the case of desktop IDEs, they must outsource collaboration to communication systems outside
the developer’s workflow, forcing developers to continuously switch between developing within
the IDE and communicating with their team via other means.
To solve these problems, it requires moving the entire development workspace into the cloud. The
cloud-based environment is centralized, making it easy to share. Developers can invite others into
their workspace to coedit, cobuild, or codebug and can communicate with one another in the
workspace itself.
The cloud can offer improvements in system efficiency, giving each individual workspace a
configurable slice of the available memory and computing resources.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
Some of the benefits of the application development in the cloud are given as follows:
In the cloud computing context, applications are generally deployed by cloud. Cloud provides
the ADE as PaaS. There are several solutions available in the PaaS market, including Google App
Engine, Microsoft Windows Azure, [Link], and Manjrasoft Aneka.
Windows Azure:
Windows Azure provides a wide array of Windows-based services for developing and deploying
Windows-based applications on the cloud. It makes use of the infrastructure provided by
Microsoft to host these services and scale them seamlessly. The Windows Azure Platform
consists of SQL Azure and the .NET services.
The .NET services comprise of access control services and .NET service bus. Windows Azure is a
platform with shared multitenant hardware provided by Microsoft. Windows Azure application
development mandates the use of SQL Azure for RDBMS functionality, because that is the only
coexisting DBMS functionality accessible in the same hardware context as the applications.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.
CLOUD COMPUTING MATERIAL (UNIT -2)
developers with a simulated environment to build and test applications locally with any OS or any
system that runs a suitable version of Python and Java language environments. Google uses the
JVM with Jetty Servlet engine and Java Data Objects.
Rackspace: Developers have access to the API documentation and software development kit
(SDK) across all of Rackspace’s services at their developer site, [Link]
Thus, Rackspace provides developers with the tools and resources necessary to create new
applications and services on top of their APIs.
IBM: IBM introduced new APIs, which can be found at the IBM developer site,
[Link]/developerworks/. The introduction of the new APIs focuses on arming developers
with the tools and resources to build new products, applications, and services.
Intel: Intel has several SDKs that aimed at cloud computing developers. Intel has a cloud
services platform beta where developers can download the SDK for identity-based and cross-
platform services. The Intel Cloud Builders program brings together leading systems and software
solutions vendors to provide the best practices and practical guidance on how to deploy, maintain,
and optimize a cloud infrastructure based on Intel architecture. And for developers seeking to
use public cloud infrastructure services, the Intel Cloud Finder makes it easier to select providers
that meet a developer’s requirements.
PREPARED BY
[Link] KUMAR ([Link])
VEC-KHAMMAM.