2-Recent Trends in Computing-04-01-2024
2-Recent Trends in Computing-04-01-2024
Winter 23-24
Cloud computing enables customers to use infrastructure and
applications via the internet, without installing and maintaining
them on-premises.
2
Cloud Computing
Cloud computing is on-demand access, via the internet, to computing
resources—applications, servers (physical servers and virtual servers),
data storage, development tools, networking capabilities, and more—
hosted at a remote data center managed by a cloud services provider (or
CSP). The CSP makes these resources available for a monthly
subscription fee or bills them according to usage.
3
Module 1
4
Computing Paradigm Distinctions
• Centralized Computing
• All computer resources are centralized in one physical system.
• Parallel Computing
• All processors are either tightly coupled with central shared memory or loosely
coupled with distributed memory
• Distributed Computing
• A distributed system consists of multiple autonomous computers, each with its
own private memory, communicating over a network.
• Cloud Computing
• An Internet cloud of resources that may be either centralized or decentralized.
The cloud applies to parallel or distributed computing or both. Clouds may be
built from physical or virtualized resources.
Background
• Computing itself, to be considered fully virtualized, must allow
computers to be built from distributed components such as processing,
storage, data, and software resources.
• Technologies such as cluster, grid, and now, cloud computing, have all
aimed at allowing access to large amounts of computing power in a
fully virtualized manner, by aggregating resources and offering a
single system view.
• Utility computing describes a business model for on-demand delivery
of computing power; consumers pay providers based on usage (“pay-
as-you-go”), similar to the way in which we currently obtain services
from traditional public utility services such as water, electricity, gas,
and telephony. 6
Grid Computing
Grid computing Grid computing is a computing
infrastructure that combines computer resources spread
over different geographical locations to achieve a
common goal. All unused resources on multiple
computers are pooled together and made available for a
single task. Organizations use grid computing to
perform large tasks or solve complex problems that are
difficult to do on a single computer.
7
Grid Computing
Grid computing is a form of distributed computing
whereby a "super and virtual computer" is composed
of a cluster of networked, loosely coupled computers,
acting in concert to perform very large tasks.
9
Criteria and Benefits : Grid Computing
Criteria
Benefits
1. Exploit Underutilized
1. Coordinates resources that resources
are not subject to 2. Resource load Balancing
centralized control. 3. Virtualize resources across
2. Uses standard, open, an enterprise
general-purpose protocols eg. Data Grids, Compute
and interfaces. Grids
3. Delivers nontrivial qualities 4. Enable collaboration for
of service. virtual organizations
10
Grid Applications
1. Data and computationally intensive applications:
This technology has been applied to computationally-intensive
scientific, mathematical, and academic problems like drug discovery,
economic forecasting, seismic analysis back office data processing in
support of e-commerce
2. A chemist may utilize hundreds of processors to screen thousands of
compounds per hour.
3. Teams of engineers worldwide pool resources to analyze terabytes of
structural data.
4. Meteorologists seek to visualize and analyze petabytes of climate data
with enormous computational demands.
11
Ctd..
Resource sharing
• Computers, storage, sensors, networks, …
• Sharing always conditional: issues of trust, policy, negotiation, payment, …
Coordinated problem solving
• distributed data analysis, computation, collaboration,
12
Grid computing
Data Grid
• Data Grid is the storage component of a
Computational Grid grid environment. Scientific & engineering
• A computational grid is a applications require access to large
hardware and software amounts of data, and often this data is
infrastructure that provides widely distributed.
dependable, consistent, • A data grid provides seamless access to the
pervasive, and inexpensive local or remote data required to complete
access to high-end compute intensive calculations.
computational Example :
capabilities.” Biomedical informatics Research Network (BIRN),
Example : Science Grid (US the Southern California earthquake Center (SCEC).
Department of Energy)
13
Typical Grid Environment
14
Computational or Data Grid
Ctd..
• Globus Toolkit is a middleware that implements several standard Grid
services and over the years has aided the deployment of several
service-oriented Grid infrastructures and applications.
• An ecosystem of tools is available to interact with service grids,
including grid brokers, which facilitate user interaction with multiple
middleware and implement policies to meet QoS needs.
• Virtualization technology has been identified as the perfect fit to issues
that have caused frustration when using grids, such as hosting many
dissimilar software applications on a single physical platform. In this
direction, some research projects.
16
Cluster Computing
• Cluster computing defines several computers linked on a network and
implemented like an individual entity. Each computer that is linked to
the network is known as a node.
• Cluster computing provides solutions to solve difficult problems by
providing faster computational speed, and enhanced data integrity. The
connected computers implement operations all together thus
generating the impression like a single system (virtual device). This
procedure is defined as the transparency of the system.
17
Advantages of Cluster Computing
• Cost-Effectiveness − Cluster computing is considered to be much more
cost-effective. These computing systems provide boosted
implementation concerning the mainframe computer devices.
• Processing Speed − The processing speed of cluster computing is
validated with that of the mainframe systems and other supercomputers
demonstrate around the globe.
• Increased Resource Availability − Availability plays an important role
in cluster computing systems. Failure of some connected active nodes
can be simply transformed onto different active nodes on the server,
providing high availability.
• Improved Flexibility − In cluster computing, better description can be
updated and improved by inserting unique nodes into the current server.
18
Cluster Vs Grid
• A cluster computer refers to a • Grid computing refers to a
network of same type of network of same or different
computers whose target is to work types of computers whose
as one collaborative unit. target is to provide an
• Such a network is used when a environment where a task
resource-hungry task requires can be performed by multiple
high-computing power or memory. computers together on need
• Two or more same types of basis.
computers are clubbed together to
make a cluster and perform the • Each computer can work
task. independently as well.
19
Cluster and Grid Computing
Compute Cluster : Nodes or computers have Grid: Nodes or computers can be
to be of the same type, like same of same or different types. Grid
r Type CPU, same OS. Cluster computing computers can have homogeneous
needs a homogeneous network. or heterogeneous network.
Computers of Cluster Computing Computers of Grid Computing can
Task are dedicated to a single task and leverage the unused computing
they cannot be used to perform any resources to do other tasks.
other task.
Computers of Cluster computing Computers of Grid Computing can
Location are co-located and are connected by be present at different locations
high speed network bus cables. and are usually connected by the
Internet or a low speed network
bus.
20
Ctd..
Cluster computing network is Grid computing network is
Topology
prepared using a centralized network distributed and have a
topology. decentralized network topology.
A centralized server controls the In Grid Computing, multiple
Task scheduling of tasks in cluster servers can exist. Each node
Scheduling computing. behaves independently without
the need of any centralized
scheduling server.
Cluster Computing network has a In Grid Computing, each node
Resource
dedicated centralized resource independently manages its own
Manager
manager, managing the resources of resources.
all the nodes connected.
21
System Models for Distributed and Cloud
Computing
Peer-to-Peer (P2P) Network
• A distributed system architecture
• Each computer in the network can act as a client or server for other
network computers.
• No centralized control
• Typically many nodes, but unreliable and heterogeneous
• Nodes are symmetric in function
• Take advantage of distributed, shared resources (bandwidth, CPU,
storage) on peer-nodes
• Fault-tolerant, self-organizing
• Operate in dynamic environment, frequent join and leave is the
norm
Peer-to-Peer (P2P) Network
27
Clouds and Internet of Things
HPC: High-Performance
Computing
HTC: High-Throughput
Computing
P2P:
Peer to Peer
MPP:
Massively Parallel
Processors
• The term ‘Cloud Computing’ has only been around since the early
2000s.
• However, the concept has been around for much longer and dates back
to as far as the 1960s. Companies used to rent time on a mainframe
from computer bureaus without the need to buy one.
• The affordability of PCs overtook these kinds of time-sharing services,
later, so did the popularity of corporate data centers.
• Before Cloud Computing, client/server computing was prevalent,
which acted as centralized storage in which software applications,
data, and controls all existed on the server-side.
30
Ctd..
• Whenever a user wanted access to specific data or wanted to run a
program, the user was required to connect to the server and gain
access to carry out the task.
• Subsequently, distributed computing was introduced, and in this
system, all computers were networked together and resources were
shared whenever the requirement arises. Based on this, Cloud
Computing concepts were later implemented.
• Around 1961, John McCarthy at MIT suggested the idea of computing
being sold like a utility.
31
Ctd..
• By 2002, Amazon had started their Amazon Web Services (AWS). It
provided services like storage, computation, and even human
intelligence.
• However, only with the launch of the Elastic Compute Cloud in 2006
was it considered a truly successful commercial service that was
finally available for use by everyone.
• Later in 2009, Google Apps started to provide Cloud Computing
enterprise applications.
32
Why is Cloud Computing popular?
33
Buyya et al. Cloud Computing Definition
“Cloud is a parallel and distributed computing system
consisting of a collection of inter-connected and Virtualised
computers that are dynamically provisioned and presented as
one or more unified computing resources based on service-
level agreements (SLA) established through negotiation
between the service provider and consumers.”
34
(NIST) Cloud Computing Definition
• The National Institute of Standards and Technology
characterizes cloud computing as “A pay-per-use model
for enabling available, convenient, on-demand
network access to a shared pool of configurable
computing resources (e.g. networks, servers, storage,
applications, services) that can be rapidly provisioned
and released with minimal management effort or
service provider interaction.”
35
NIST Reference Architecture
36
NIST cloud computing reference
architecture
• As shown in Figure 1, the NIST cloud computing reference
architecture defines five major actors:
• cloud consumer,
• cloud provider,
• cloud carrier,
• cloud auditor and
• cloud broker.
37
Cloud Reference architecture Components
38
Cloud consumer
• Cloud consumer is the main participants of cloud computing
environment.
• A cloud consumer is a person or organization that use the cloud
services such as SaaS, PaaS and IaaS.
• A cloud consumer browses the service catalog provided by a cloud
provider, cloud consumer requests the appropriate service.
• Cloud provider sets up cloud environment for the service and make
a contracts with the cloud consumer for the use of the service.
• Cloud consumers need cloud Service Level Agreement(SLA).
39
SLA
• SLA act as a agreement for technical performance
requirements provided by a cloud provider.
• Some terms and conditions regarding the quality of
service, security, remedies for performance failures are
mentioned in the SLA.
40
cloud provider
41
Service Provider to Consumer
42
A Cloud Providers activities
• Activities can be described in five major areas, a cloud provider
conducts its activities in the areas of service deployment, service
orchestration, cloud service management, security, and privacy.
43
Cloud Auditor
• Cloud Auditor: A cloud auditor is a party that can perform an
independent examination of cloud service controls with the intent to
express an opinion thereon.
• Audits are performed to verify conformance to standards through a
review of objective evidence.
• A cloud auditor can evaluate the services provided by a cloud provider
in terms of security controls, privacy impact, performance, etc.
44
Ctd..
• A cloud auditor is a dedicated team of technically skilled
person that can perform an independent examination or
review of cloud service controls with the intent to express
strength and weakness of the process and some suggestion or
improvement.
• Audits are performed to verify the standards of services after
checking the evidence.
• Major role of a cloud auditor is to evaluate the services
provided by a cloud provider against the parameters such as
security controls, privacy impact and performance etc. 45
cloud broker
• A cloud broker is an entity that manages the use, performance and
delivery of cloud services and negotiates relationships between cloud
providers and cloud consumers.
• In general, a cloud broker can provide services in three categories :
• Service Intermediation:
• A cloud broker enhances a given service by improving some specific
capability and providing value-added services to cloud consumers.
• The improvement can be managing access to cloud services, identity
management, performance reporting, enhanced security, etc.
46
Cloud Broker
• Some time services integrations becomes more complex due to which it
becomes difficult for the cloud consumer to manage the cloud service.
• In such situation cloud consumer request cloud services from cloud
broker. Cloud Broker acts as mediator between consumer and provider.
• A cloud broker manages the delivery of cloud services , their
performance and use.
• A cloud broker negotiates relationships between cloud providers and
cloud consumers.
• In general, a cloud broker involves in three types of activities which are
as follow
47
Service Intermediation
48
Service Aggregation
49
Service Arbitrage
• Service arbitrage is very similar to service aggregation but
there is a little bit different also.
• In service arbitrage the services to be aggregated are not
fixed in advance.
• In Service arbitrage, a broker can select services from
multiple agencies.
• The cloud broker, for example, can use a credit-scoring
service to measure and select an agency with the best score.
50
ctd
• Service Aggregation: A cloud broker combines and integrates multiple
services into one or more new services. The broker provides data
integration and ensures the secure data movement between the cloud
consumer and multiple cloud providers.
• Service Arbitrage: Service arbitrage is similar to service aggregation
except that the services being aggregated are not fixed. Service
arbitrage means a broker has the flexibility to choose services from
multiple agencies. The cloud broker, for example, can use a credit-
scoring service to measure and select an agency with the best score.
51
Cloud Carrier
• Cloud Carrier A cloud carrier acts as an intermediary that provides
connectivity and transport of cloud services between cloud consumers
and cloud providers.
• Cloud carriers provide access to consumers through network,
telecommunication and other access devices.
• For example, cloud consumers can obtain cloud services through
network access devices, such as computers, laptops, mobile phones,
mobile Internet devices (MIDs), etc. The distribution of cloud services
is normally provided by network and telecommunication carriers or a
transport agent
52
Interaction between Actors in Cloud
53
Example Usage Scenario 1:
• In this scenario, A cloud consumer may request service from
a cloud broker instead of contacting a cloud provider directly.
• The cloud broker may create a new service by combining
multiple services or by enhancing an existing service.
• In this example, the actual cloud providers are invisible to the
cloud consumer and the cloud consumer interacts directly
with the cloud broker.
• Depict what would be the Usage Scenario of Cloud Broker ?
54
Usage Scenario of Cloud Broker
55
Example Usage Scenario 2
• Cloud carriers provide the connectivity and transport of cloud services
from cloud providers to cloud consumers. Illustrated how a cloud
provider participates in and arranges for two unique service level
agreements (SLAs)?
• A cloud provider arranges service level agreements (SLAs) with a
cloud carrier.
• It may request dedicated and encrypted connections to ensure the
cloud services are secure with the cloud consumers.
56
Usage Scenario of Cloud Carrier
57
Example Usage Scenario 3:
• For a cloud service, a cloud auditor conducts independent assessments
of the operation and security of the cloud service implementation.
• The audit may involve interactions with both the Cloud Consumer and
the Cloud Provider.
59
Controls between Provider and Consumer
60
Application Layer
• Application layer includes software applications targeted at end users or
programs.
• The applications are used by SaaS consumers, or installed/ managed
/maintained by PaaS consumers, IaaS consumers, and SaaS providers.
Middleware layer
The middleware layer provides software building blocks (e.g., libraries,
database, and Java virtual machine) for developing application software
in the cloud.
The middleware is used by PaaS consumers,
installed/managed/maintained by IaaS consumers or PaaS providers, and
61
hidden from SaaS consumers
OS layer
• . The OS layer includes operating system and drivers, and is hidden
from SaaS consumers and PaaS consumers.
• An IaaS cloud allows one or multiple guest OS‟s to run virtualized on
a single physical host.
• Generally, consumers have broad freedom to choose which OS to be
hosted among all the OS‟s that could be supported by the cloud
provider.
• The IaaS consumers should assume full responsibility for the guest
OS‟s, while the IaaS provider controls the host OS.
62
FAQs
• What is NIST model in cloud computing ?
• What is reference architecture of cloud computing ?
• Who are cloud consumer ?
• Write the difference between cloud consumer and cloud provider ?
• What do you mean by a cloud provider ?
• What are the role of cloud provider ?
• What are different audits performed by cloud auditor ?
• What is service aggregation in cloud?
• Why is auditing necessary in cloud computing ?
• What does a cloud broker do ?
• What is the role of cloud carrier ?
• What is carrier in cloud computing ?
63