Chapter-1
Chapter-1
CLOUD COMPUTING
Semester 6
Course Code BCS601
CIE Marks 50
SEE Marks 50
Credits 04
Course objectives:
Introduce the rationale behind the cloud computing revolution and
the business drivers
Understand various models, types and challenges of cloud
computing
Understand the design of cloud native applications, the necessary
tools and the design tradeoffs.
Realize the importance of Cloud Virtualization, Abstraction`s,
Enabling Technologies and cloud security.
Text Books:
1. Kai Hwang, Geoffrey C Fox, and Jack J Dongarra, Distributed and Cloud
Computing, Morgan Kaufmann, Elsevier 2012
Course outcome (Course Skill Set) At the end of the course, the student
will be able to:
Module-1
Module-2
Module-3
Module-4
Cloud Security: Top concern for cloud users, Risks, Privacy Impact
Assessment, Cloud Data Encryption, Security of Database Services, OS
security, VM Security, Security Risks Posed by Shared Images and
Management OS, XOAR, A Trusted Hypervisor, Mobile Devices and Cloud
Security Cloud Security and Trust Management: Cloud Security Defense
Strategies, Distributed Intrusion/Anomaly Detection, Data and Software
Protection Techniques, Reputation-Guided Protection of Data Centers.
Module-5
Module-1
SUMMARY
This chapter presents the evolutionary changes that have occurred in
parallel, distributed, and cloud computing over the past 30 years, driven
by applications with variable workloads and large data sets.
We study:
1. High-performance and high-throughput computing systems in
parallel computers appearing as computer clusters, service-oriented
architecture.
2. Computational grids.
3. Peer-to-peer networks.
4. Internet clouds, and the Internet of Things.
These systems are distinguished by their:
1. Hardware architectures
2. OS platforms
3. Processing algorithms
4. Communication protocols
5. Service models applied.
Also introduce essential issues on the distributed systems:
1. Scalability
2. Performance
3. Availability
4. Security
5. Energy Efficiency
2. Parallel Computing:
o Processors are either tightly coupled with centralized shared
memory or loosely coupled with distributed memory.
o Interprocessor communication occurs through shared memory
or message passing.
o Systems capable of parallel computing are called parallel
computers, and programs running on them are called parallel
programs.
o The process of writing such programs is known as parallel
programming.
3. Distributed Computing:
o Involves multiple autonomous computers, each with its own
private memory, communicating through a network.
o Information exchange is achieved through message passing.
o Programs running in such systems are called distributed
programs, and the process of writing them is known as
distributed programming.
4. Cloud Computing:
o Can be either centralized or distributed.
o Utilizes parallel or distributed computing, or both.
o Built with physical or virtualized resources over large data
centers.
o Some view it as a form of utility computing or service
computing.
5. Alternative Terms:
3. Challenges in Applications:
o Distributed Transaction Processing: Widely used in banking
and finance, representing 90% of the market for reliable
banking systems. Challenges include:
Managing multiple database servers.
2. Utility Computing:
o Focuses on a business model where customers receive
computing resources from paid service providers.
o All grid/cloud platforms are considered utility service
providers.
o Cloud Computing: Offers a broader concept than utility
computing, enabling distributed cloud applications to run on
any available servers in edge networks.
3. Technological Challenges:
o Encompasses all aspects of computer science and
engineering, including:
1. Hardware: Development of network-efficient
processors, scalable memory, and storage schemes.
2. Software: Distributed operating systems, middleware
for machine virtualization, new programming models,
effective resource management, and application
program development.
Modern CPUs have architectures with dual, quad, six, or more cores.
These architectures exploit Instruction-Level Parallelism (ILP) and
Thread-Level Parallelism (TLP).
Processor Speed Growth:
Parallelism in GPUs:
Intel i7, Xeon, AMD Opteron, Sun Niagara, IBM Power 6, and X Cell
processors.
Support multithreading for enhanced performance.
Niagara II Example:
Definition of GPU:
Core Comparison:
o Traditional CPUs have few cores (e.g., Xeon X5670 has six
cores).
o Modern GPUs can have hundreds of processing cores.
Throughput Architecture:
Evolution of GPUs:
Applications of GPUs:
GPU Architecture:
The upper curve in Figure 1.10 plots the growth of DRAM chip
capacity from 16 KB in 1976 to 64 GB in 2011.
This shows that memory chips have experienced a 4x increase in
capacity every three years.
Memory access time did not improve much in the past. In fact, the
memory wall problem is getting worse as the processor gets faster.
The lower curve in Figure 1.10 plots the rapid growth of Ethernet
bandwidth from 10 Mbps in 1979 to 1 Gbps in 1999, and 40 ~ 100
GE in 2011.
The IDC 2010 report predicted that InfiniBand and Ethernet would
dominate as the primary interconnect technologies in High-
Performance Computing (HPC).
Most data centers were using Gigabit Ethernet as the interconnect in
server clusters.
In Figure 1.12, the host machine is equipped with the physical hardware,
as shown at the bottom of the figure.
The VMM provides the VM abstraction to the guest OS. With full
virtualization, the VMM exports a VM abstraction identical to the physical
machine so that a standard OS such as Windows 2000 or Linux can run
just as it would on the physical hardware. Low-level VMM operations are
indicated by Mendel Rosenblum and illustrated in Figure 1.13.
This will eliminate server sprawl via deployment of systems as VMs, which
move transparency to the shared hardware. With this approach, VMware
claimed that server utilization could be increased from its current 5–15
percent to 60–80 percent.
Above figure shows the architecture of a typical server cluster built around
a low-latency, high bandwidth interconnection network.
Greg Pfister, has indicated that an ideal cluster should merge multiple
system images into a single-system image (SSI).
Scalable performance
Efficient message passing
High system availability
Seamless fault tolerance
Cluster-wide job management
In the past 30 years, users have experienced a natural growth path from
Internet to web and grid computing services.
In a P2P system, every node acts as both a client and a server, providing
part of the system resources.
Each peer machine joins or leaves the P2P network voluntarily. Only the
participating peers form the physical network at any time.
Unlike the cluster or grid, a P2P network does not use a dedicated
interconnection network.
The physical network is simply an ad hoc network formed at various
Internet domains randomly using the TCP/IP and NAI protocols.
Thus, the physical network varies in size and topology dynamically
due to the free membership in the P2P network.
When a new peer joins the system, its peer ID is added as a node in
the overlay network. When an existing peer leaves the system, its
peer ID is removed from the overlay network automatically.
Therefore, it is the P2P overlay network that characterizes the
logical connectivity among the peers.
There are two types of overlay networks: unstructured and
structured.
An unstructured overlay network is characterized by a random
graph. There is no fixed route to send messages or files among the
nodes. Often, flooding is applied to send a query to all nodes in an
unstructured overlay, thus resulting in heavy network traffic and
nondeterministic search results.
Structured overlay networks follow certain connectivity topology
and rules for inserting and removing nodes (peer IDs) from the
overlay graph. Routing mechanisms are developed to take
advantage of the structured overlays.
P2P Network Families: The first family is for distributed file sharing of
digital contents (music, videos, etc.) on the P2P network.
Routing efficiency.
Self-organization by participating peers.
Challenges in P2P Networks:
Computing power.
Storage space.
I/O bandwidth.
Gordon Bell, Jim Gray, and Alex Szalay advocate that computational
science is becoming data-intensive.
Future of Data Processing: Working with large data sets will involve
sending computations (programs) to the data, rather than copying data to
workstations.
Trend in IT:
Below figure depicts the cloud landscape and major cloud players, based
on three cloud service models.
Allows users to deploy and run multiple Virtual Machines (VMs) with
guest operating systems and specific applications.
Users do not manage or control the underlying cloud infrastructure.
Users can specify when to request and release resources as
needed.
The different SLAs imply that the security responsibility is shared among
all the cloud providers, the cloud resource consumers, and the third-party
cloud-enabled software providers.
Higher-Level Environment:
This includes:
The filter services (FS) refine raw data, and the processed data moves
through different clouds (compute, storage, filter, and discovery) to
extract meaningful information.
Finally, all refined data and insights are sent to a portal, where users can
access and make informed decisions. This structured approach helps in
managing large-scale data efficiently for better intelligence and decision-
making.
Evolution of SOA: SOA has evolved over the years and applies to various
computing paradigms such as: Grids, Clouds, Grids of clouds, Clouds of
grids, Clouds of clouds (Interclouds) and Systems of systems.
Filter Services (FS) for Data Refinement: Filter services (FS) help
eliminate unwanted raw data.
They respond to specific requests from: The Web, The Grid, Web
services.
A collection of filter services forms a filter cloud.
Compute cloud
Storage cloud
Filter cloud
Discovery cloud
For example:
Requirement Description
Requirement Description
Resources environments
The user data, applications, OS, and hardware are separated into
four levels. Data is owned by users, independent of the applications.
The OS provides clear interfaces, standard programming interfaces,
or system calls to application programmers.
In future cloud infrastructure, the hardware will be separated by
standard interfaces from the OS.
Thus, users will be able to choose from different OSes on top of the
hardware devices they prefer to use.
To separate user data from specific application programs, users can
enable cloud applications as SaaS.
Thus, users can switch among different services. The data will not
be bound to specific applications.
Benefits:
Efficient Communication.
Easy to Use.
Scalability.
Flexibility.
Use Cases:
High-Performance Computing.
Cloud Computing.
Computing.
Peer-to-Peer Computing.
MapReduce
Benefits:
Scalability
Parallelism
Flexibility
Ease of Use
Use Cases:
Web-Scale Search:
Cloud Computing
Data Processing
Big Data
Hadoop Library
Table 1.8 introduces OGSA as a common standard for general public use
of grid services.
Size Scalability:
Achieved by increasing machine size to enhance performance or
functionality.
"Size" refers to adding processors, cache, memory, storage, or I/O
channels.
Measured by counting the number of processors installed.
Not all architectures are equally size-scalable.
Example: IBM S2 scaled to 512 processors in 1997.
Software Scalability:
Systems like Cloud and Grid offer high scalability but require
managing multiple OS instances, while SMP is simpler but less
scalable.
Scalability:
Formula:
Sequential Bottleneck:
Thus:
Increasing the number of processors alone does not guarantee a good speedup if
the sequential bottleneck is large. Focus should be on reducing the
sequential portion of the code to improve parallel performance.
System Efficiency:
Efficiency calculation:
Scaled Workload:
Scaled-Workload Speedup:
Efficiency Expression:
Open resources such as data centers, P2P networks, and grid and
cloud infrastructures are potential targets for attacks.
Users need to protect clusters, grids, clouds, and P2P systems to
prevent malicious intrusions.
Consequences of Attacks:
Users must ensure the security of clusters, grids, clouds, and P2P
systems.
If these systems are not adequately protected, users should avoid
using or trusting them for outsourced work.
Thus,
The diagram visually explains how different cyber threats impact system
security, helping users understand vulnerabilities and their
consequences on confidentiality, integrity, availability, and
authentication.
1.5.3.2 Security Responsibilities
These are critical for most Internet service providers and cloud
users.
The responsibility for security control shifts from providers to users
across different cloud service models: SaaS, PaaS, and IaaS.
Energy costs during peak operation times: 1,200 and 10,000 per
hour, respectively
Cooling is another issue due to negative effects of high temperature
on electronic components
Around 4.7 million servers worldwide are not doing any useful work
These two factors (compute and storage) are correlated and affect
completion time
Acts as a bridge between the application layer and the resource layer
Resource broker
Communication service
Task analyzer
Task scheduler
Security access
Reliability control
Information service
Resource Layer
Hardware devices (e.g. CPU) can switch from idle mode to lower-
power modes
Network Layer:
The DVFS method enables the exploitation of the slack time (idle time)
typically incurred by intertask relationship.
Specifically, the slack time associated with a task is utilized to execute the
task in a lower voltage frequency.
_ _ _*****_ _ _