KEMBAR78
Module 1 - Updated | PDF | Multi Core Processor | Central Processing Unit
0% found this document useful (0 votes)
13 views35 pages

Module 1 - Updated

The document discusses the evolution of computing technology, highlighting the transition from centralized systems to cloud computing and the emergence of high-performance and high-throughput computing. It outlines various computing paradigms, including service-oriented architecture and the Internet of Things, while emphasizing the importance of scalability, efficiency, and reliability in future computing designs. Additionally, it covers advancements in multicore processors, GPU computing, and the challenges faced in memory and storage technologies.

Uploaded by

try.bharathv
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views35 pages

Module 1 - Updated

The document discusses the evolution of computing technology, highlighting the transition from centralized systems to cloud computing and the emergence of high-performance and high-throughput computing. It outlines various computing paradigms, including service-oriented architecture and the Internet of Things, while emphasizing the importance of scalability, efficiency, and reliability in future computing designs. Additionally, it covers advancements in multicore processors, GPU computing, and the challenges faced in memory and storage technologies.

Uploaded by

try.bharathv
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

BCS601 CLOUD COMPUTING

Module-01
Distributed System Models and Enabling Technologies

SCALABLE COMPUTING OVER THE INTERNET


Evolution of Computing Technology
• Over the last 60 years, computing has evolved through multiple platforms and environments.
• Shift from centralized computing to parallel and distributed systems.
• Modern computing relies on data-intensive and network-centric architectures.

The Age of Internet Computing


• High-performance computing (HPC) systems cater to large-scale computational needs.
• High-throughput computing (HTC) focuses on handling a high number of simultaneous tasks.
• The shift from Linpack Benchmark to HTC systems for measuring performance.

Platform Evolution
• First Generation (1950-1970): Mainframes like IBM 360 and CDC 6400.
• Second Generation (1960-1980): Minicomputers like DEC PDP 11 and VAX.
• Third Generation (1970-1990): Personal computers with VLSI microprocessors.
• Fourth Generation (1980-2000): Portable and wireless computing devices.
• Fifth Generation (1990-present): HPC and HTC systems in clusters, grids, and cloud computing.

High-Performance Computing (HPC)


• Focuses on solving complex, large-scale computational problems.
• Used mainly in scientific, engineering, and industrial applications.
• Limited to a small number of specialized users.

High-Throughput Computing (HTC)


• Shift from HPC to HTC for market-oriented applications.
• Used in Internet searches, web services, and enterprise computing.
• Emphasis on cost reduction, energy efficiency, security, and reliability.

Emerging Computing Paradigms


• Service-Oriented Architecture (SOA): Enables Web 2.0 services.
• Virtualization: Key technology for cloud computing.
• Internet of Things (IoT): Enabled by RFID, GPS, and sensor technologies.
• Cloud Computing: Evolution of computing as a utility.

Computing Paradigm Distinctions


1. Centralized Computing: All resources in one system.
2. Parallel Computing: Processors work simultaneously in a shared-memory or distributed-memory
setup.

CSE DEPT | CITECH Page 1 of 35


BCS601 CLOUD COMPUTING

3. Distributed Computing: Multiple autonomous computers communicate over a network.


4. Cloud Computing: Uses both centralized and distributed computing over data centers.

Distributed System Families


1. Clusters: Homogeneous compute nodes working together.
2. Grids: Wide-area distributed computing infrastructures.
3. P2P Networks: Client machines globally distributed for file sharing and content delivery.
4. Cloud Computing: Utilizes clusters, grids, and P2P technologies.

Future Computing Needs and Design Objectives


• Efficiency: Maximizing parallelism, job throughput, and power efficiency.
• Dependability: Ensuring reliability and Quality of Service (QoS).
• Adaptation: Scaling to billions of requests over vast data sets.
• Flexibility: Supporting both HPC (scientific/engineering) and HTC (business) applications.

Scalable Computing Trends and New Paradigms


Computing Trends and Parallelism
Technological progress drives computing applications, as seen in Moore’s Law (processor speed
doubling every 18 months) and Gilder’s Law (network bandwidth doubling yearly).
Commodity hardware advancements, driven by personal computing markets, have influenced large-
scale computing.

Degrees of Parallelism (DoP):


1. Bit-Level Parallelism (BLP)
o This refers to increasing processing power by handling larger chunks of data per CPU cycle,
transitioning from 4-bit to 64-bit processors.
o In cloud-based databases like Amazon RDS, using 64-bit CPUs allows faster processing of
encryption and decryption in cloud security compared to older architectures, leading to
quicker data retrieval and storage.
2. Instruction-Level Parallelism (ILP)
o Allows execution of multiple instructions simultaneously. This is implemented using
pipelining, superscalar execution, VLIW, and multithreading.
o AWS Lambda functions executing multiple instructions concurrently using pipelining
enhance performance in serverless computing, reducing latency for applications like real-
time analytics in AWS Kinesis.
3. Data-Level Parallelism (DLP)
o This involves processing multiple data points at once using SIMD (Single Instruction, Multiple
Data) and vector processing, optimizing parallel execution.
o In AI model training on Google Cloud TPU, matrix operations are parallelized using SIMD,
allowing deep learning models like TensorFlow to perform large-scale computations efficiently.
4. Task-Level Parallelism (TLP)
o Enabled by multicore processors and chip multiprocessors (CMPs).
o Difficult to implement efficiently due to complex programming and compilation challenges.
5. Job-Level Parallelism (JLP)

CSE DEPT | CITECH Page 2 of 35


BCS601 CLOUD COMPUTING

o Found in distributed computing environments.


o Integrates fine-grain parallelism (BLP, ILP, DLP, and TLP) into large-scale distributed
processing.

Innovative Applications:

The Trend toward Utility Computing:


• Computing Paradigms in Distributed Systems: Includes Web services, Data centers, Utility
computing, Service computing, Grid computing, P2P computing, and Cloud computing. These
paradigms enable massive parallelism at different processing levels.
• Common Attributes of These Paradigms:
o Ubiquitous: Designed for reliability and scalability.
o Autonomic: Self-organizing and supports dynamic discovery.
o Composable: Supports QoS (Quality of Service) and SLAs (Service-Level Agreements).
• Utility Computing and Cloud Computing
o Utility computing is a business model where customers pay for computing resources.
o Grid and cloud computing act as utility service providers.
o Cloud computing extends beyond utility computing by running distributed applications across
edge networks.

CSE DEPT | CITECH Page 3 of 35


BCS601 CLOUD COMPUTING

The Hype Cycle of New Technologies:


The hype cycle describes the expectations of emerging computing and IT technologies through five
stages: Innovation Trigger, Peak of Inflated Expectations, Trough of Disillusionment, Slope of
Enlightenment, and Plateau of Productivity.
1. Innovation Trigger:
a. A breakthrough, invention, or new concept emerges, There’s early research, experimentation,
and media hype.
b. No real-world applications yet, but investors and industry experts take notice.
2. Peak of Inflated Expectations:
a. Early success stories (sometimes exaggerated) fuel massive enthusiasm. Hype builds up, and
unrealistic expectations arise.
b. Many companies and startups jump on board, but actual results vary.
3. Trough of Disillusionment:
a. Reality sets in as initial implementations fail to meet expectations.
b. Companies abandon projects that don't deliver immediate ROI.
4. Slope of Enlightenment:
a. The technology matures as real-world use cases emerge.
b. Companies start understanding the practical applications and limitations.
5. Plateau of Productivity:
a. The technology becomes mainstream and widely adopted.
b. Clear benefits and best practices are established.

CSE DEPT | CITECH Page 4 of 35


BCS601 CLOUD COMPUTING

Eg: Cloud computing was expected to mature in 2-5 years.

The Internet of Things and Cyber-Physical Systems:


The Internet of Things:
• IoT extends the Internet to everyday objects, interconnecting devices, tools, and computers via
sensors, RFID, and GPS.
• History: Introduced in 1999 at MIT, IoT enables communication between objects and people.
• Development & Challenges:
o IoT is in its early stages, mainly advancing in Asia and Europe.
o Cloud computing is expected to enhance efficiency, intelligence, and scalability in IoT
interactions.

Cyber-Physical Systems (CPS):


• CPS integrates computation, communication, and control (3C) into a closed intelligent feedback
system between the physical and digital worlds.
• CPS enhances automation, intelligence, and interactivity in physical environments.
• Still in the Trough of Disillusionment for full automation (e.g., fully autonomous cars, widespread
smart cities).

TECHNOLOGIES FOR NETWORK-BASED SYSTEMS


• Discusses hardware, software, and network technologies for distributed computing.
• Focuses on designing distributed operating systems for handling massive parallelism.

CSE DEPT | CITECH Page 5 of 35


BCS601 CLOUD COMPUTING

Multicore CPUs and Multithreading Technologies:


• The growth of component and network technologies over 30 years has been key to HPC and HTC
development.
• Processor speed (MIPS) and network bandwidth (Mbps/Gbps) are key metrics, with 1 GE
representing 1 Gbps Ethernet.
Advances in CPU Processors:
Today, advanced CPUs or microprocessor chips assume a multicore architecture with dual, quad, six, or
more processing cores.
• Multicore CPU Architecture: They utilize Instruction-Level Parallelism (ILP) and Thread-
Level Parallelism (TLP).
• Processor Speed Growth increased from 1 MIPS (VAX 780, 1978) to 22,000 MIPS (Sun
Niagara 2, 2008). Growth followed Moore’s Law.
• Clock Rate Limitations grew from 10 MHz (Intel 286) to 4 GHz (Pentium 4, 2002). Now
limited by power consumption & heat issues (rarely exceeds 5 GHz).
• ILP Techniques for Performance: Superscalar architecture, branch prediction, speculative
execution improve efficiency.
• GPU Parallel Processing: GPUs use Data-Level Parallelism (DLP) & Thread-Level
Parallelism (TLP). Many-core GPUs leverage hundreds to thousands of simple cores for
parallel processing.

Architecture of a typical multicore processor:

CSE DEPT | CITECH Page 6 of 35


BCS601 CLOUD COMPUTING

• Cores (Core 1, Core 2, ..., Core n): Each core is an independent processing unit within the
processor. Cores execute instructions and perform computations.
• L1 Cache (Level 1 Cache): Each core has its own dedicated L1 cache. The fastest but
smallest cache, storing frequently used data and instructions.
• L2 Cache (Level 2 Cache): A shared cache among multiple cores. Larger than L1 cache but
slower, used for temporary storage of data needed by the cores.
• L3 Cache / DRAM (Level 3 Cache or Main Memory): Acts as a last-level cache, shared
among all cores. Larger than L2 but slower, reducing the access time to DRAM (main
memory). If data is not found in L3, it is fetched from the main memory (DRAM).

Multicore CPU and Many-Core GPU Architectures:


• Multicore CPUs may scale from tens to hundreds of cores, but face DLP limitations due to
the memory wall.
• Many-core GPUs with hundreds of thin cores have emerged to handle massive parallelism.
• x86 processors (IA-32 & IA-64) are widely used in HPC & HTC systems, replacing RISC
processors in Top 500 supercomputers.
• GPUs power large clusters & MPP supercomputers, with x86 upgrades dominating data
centers & supercomputing.
• Future heterogeneous processors will combine fat CPU cores and thin GPU cores on a single
chip.

Multithreading Technology:

CSE DEPT | CITECH Page 7 of 35


BCS601 CLOUD COMPUTING

Working:

1. 4-Issue Superscalar Processor: Executes multiple instructions per cycle (up to 4). Uses ILP to
process independent instructions in parallel. Threads are not interleaved as execution depends on
instruction availability.
2. Fine-Grain Multithreaded Processor: Switches between threads at each cycle to hide latencies.
Ensures continuous execution, reducing idle cycles. Uses TLP by interleaving multiple threads at
fine granularity.
3. Coarse-Grain Multithreaded Processor: Switches threads only when a long-latency event occurs
(e.g., cache miss). Minimizes context-switch overhead but results in longer idle slots compared to
fine-grain multithreading. Suitable for workloads with infrequent stalls.
4. Dual-Core (2-Processor CMP - Chip Multiprocessing): Two separate cores, each executing its
own instructions. Uses TLP to execute multiple threads simultaneously on separate cores. More
power-efficient and scalable compared to superscalar processors.
5. Simultaneous Multithreading (SMT) Processor: Executes multiple threads in parallel within a
single core. Combines ILP & TLP by allowing multiple threads to share execution resources.
Improves CPU utilization by filling idle execution slots with instructions from other threads.

Types of processor architectures:

• Superscalar processors maximize ILP, while multithreading architectures improve TLP.


• Fine-grain multithreading minimizes idle cycles, while coarse-grain reduces context-switch
overhead.
• Dual-core processors execute threads independently on different cores.
• SMT (Simultaneous Multithreading) achieves the highest resource utilization by running multiple
threads in parallel.

GPU Computing to Exascale and Beyond:

CSE DEPT | CITECH Page 8 of 35


BCS601 CLOUD COMPUTING

• GPU (Graphics Processing Unit) is a graphics coprocessor/accelerator used in video editing and
graphics-intensive tasks.
• First GPU: NVIDIA GeForce 256 (1999), capable of processing 10 million polygons per second.
• GPUs are now common in all computers and some features have been integrated into modern CPUs.
• Comparison with CPUs:
o Traditional CPUs have few cores (e.g., Xeon X5670 with 6 cores).
o Modern GPUs have hundreds of cores for parallel execution.
• GPU Architecture:
o Uses a throughput-oriented design, executing many parallel threads slowly instead of a single
fast thread like a CPU.
• GPGPU (General-Purpose GPU Computing):
o GPUs are now used for high-performance computing (HPC) beyond graphics.
o NVIDIA CUDA enables GPUs for HPC applications.

How GPUs Work:

• Early GPUs functioned as CPU coprocessors.


• Modern GPUs have 128+ cores, each handling multiple threads.
• GPUs optimize throughput, CPUs optimize latency.
• Used in supercomputers, AI, deep learning, gaming, and mobile devices.

GPU Programming Model:

• The CPU sends tasks (such as rendering instructions or computational workloads) to the GPU.
• The GPU's multiprocessors execute tasks in parallel, using multiple processing units (P1, P2, ..., Pn).
• Processed data is stored in device memory and can be transferred back to the CPU if needed.

CSE DEPT | CITECH Page 9 of 35


BCS601 CLOUD COMPUTING

Example 1.1 the NVIDIA Fermi GPU Chip with 512 CUDA Cores

• This is a streaming multiprocessor (SM) module. Multiple SMs can be built on a single GPU chip.
The Fermi chip has 16 SMs implemented with 3 billion transistors.
• Each SM comprises up to 512 streaming processors (SPs), known as CUDA cores. The Tesla GPUs
used in the Tianhe-1a have a similar architecture, with 448 CUDA cores.
• Modern CUDA-based GPUs leverage massive parallelism with highly efficient memory and thread
scheduling, making them ideal for HPC (High-Performance Computing), AI, deep learning, and
scientific simulations.

Power Efficiency of the GPU:

• GPUs offer better performance per watt than CPUs.


• Energy consumption:
o CPU: ~2 nJ per instruction.
o GPU: ~200 pJ per instruction (10x more power-efficient).
• Challenges in future computing:
o Power consumption constraints.
o Optimization of storage hierarchy and memory management.
• Need for self-aware OS, locality-aware compilers, and auto-tuners for GPUbased computing.

CSE DEPT | CITECH Page 10 of 35


BCS601 CLOUD COMPUTING

Memory, Storage, and Wide-Area Networking:


Memory Technology:

• DRAM Growth:
o 16 KB (1976) → 64 GB (2011).
o 4x increase every 3 years.
o Memory access time improvement is slow (Memory Wall problem)

• Hard Drive Growth:


o 260 MB (1981) → 250 GB (2004) → 3 TB (2011).
o 10x increase every 8 years and disk arrays expected to grow even more.

• Challenges:
o Faster processors vs. slow memory access → Widening gap.
o Memory wall issue may limit CPU performance in the future

Disks and Storage Technology:

• Disk Storage Growth:


o Exceeded 3 TB after 2011
o 7 orders of magnitude growth in 33 years
• Flash Memory & SSDs:
o Significant impact on HPC and HTC systems
o SSD lifespan: 300,000 to 1 million write cycles per block
o Faster performance in many applications
• Challenges:
o Power consumption, cooling, and packaging limit system development
o Power increases with clock speed and voltage
o Lower voltage supplies are in demand
• Future Perspective:

CSE DEPT | CITECH Page 11 of 35


BCS601 CLOUD COMPUTING

o Jim Gray: "Tape units are dead, disks are tape units, flashes are disks, and memory is
cache now."
o SSDs (as of 2011) are still expensive compared to disk arrays.

System-Area Interconnects:

• Small Clusters:
o Nodes are connected via Ethernet switch or LAN
• Large Clusters (Three Network Types):
o Local Area Network (LAN): Connects client hosts to big servers
o Storage Area Network (SAN): Links servers to network storage (disk arrays)
o Network Attached Storage (NAS): Connects client hosts directly to disk arrays
• Small Clusters without Distributed Storage:
o Can use a multiport Gigabit Ethernet switch with copper cables
• Availability:
o All three network types are commercially available.

CSE DEPT | CITECH Page 12 of 35


BCS601 CLOUD COMPUTING

Wide-Area Networking

Ethernet speed evolution:

• 10 Mbps (1979) → 1 Gbps (1999) → 40-100 Gbps (2011) → projected 1 Tbps (2013).
• Network performance grows 2× per year, surpassing Moore’s Law for CPUs.
• High-bandwidth networking enables large-scale distributed computing.
• IDC 2010 report: InfiniBand & Ethernet will dominate HPC interconnects.
• Most data centers use Gigabit Ethernet for server clusters.

Virtual Machines and Virtualization Middleware

• Traditional computers have a single OS, tightly coupling applications to hardware.


• Virtual Machines (VMs) provide flexibility, resource utilization, software manageability, and
security.
• Virtualization enables access to computing, storage, and networking resources dynamically.
• Middleware like Virtual Machine Monitors (VMMs) or hypervisors manage VMs.

• Host Machine: Physical hardware runs an OS (e.g., Windows).


• Native VM (Bare-Metal): A hypervisor directly manages hardware, running guest OS (e.g., XEN
on Linux).
• Host VM: The VMM runs in non-privileged mode without modifying the host OS.
• Hybrid VM: VMM operates at both user and supervisor levels, requiring host OS modifications.
• Advantages: OS independence, application portability, hardware abstraction.

CSE DEPT | CITECH Page 13 of 35


BCS601 CLOUD COMPUTING

VM Primitive Operations:

o Multiplexing: Multiple VMs run on a single hardware machine.


o Suspension & Storage: VM state is saved for later use.
o Resumption: Suspended VM can be restored on a different machine.
o Migration: VM moves across platforms, enhancing flexibility.
o Benefits: Improved resource utilization, reduced server sprawl, increased efficiency
(VMware reports 60–80% server utilization).

Virtual Infrastructures:

o Virtual infrastructure dynamically maps physical compute, storage, and networking


resources to applications in VMs, separating hardware from software.
o This improves cost efficiency, responsiveness, and resource utilization.
o Server virtualization enables consolidation and containment for better management.

CSE DEPT | CITECH Page 14 of 35


BCS601 CLOUD COMPUTING

Data Center Virtualization for Cloud Computing:


• Cloud architecture relies on commodity hardware, x86 processors, terabyte disks, and
Gigabit Ethernet for cost-effective data centers.
• The focus is on performance-to-price ratio, storage, and energy efficiency rather than raw
speed. By 2010, 43 million servers were in use, with utility costs surpassing hardware
costs after three years.
1. Data Center Growth and Cost Breakdown:
• Large data centers contain thousands of servers.
• Cost Distribution (2009 IDC Report):
o 30% for IT equipment (servers, storage).
o 60% for maintenance and management (cooling, power, etc.).
o Electricity & cooling costs increased from 5% to 14% in 15 years.
2. Low-Cost Design Philosophy:
• Uses commodity x86 servers and Ethernet networks instead of expensive hardware.
• Software manages network traffic, fault tolerance, and scalability.
3. Convergence of Technologies in Cloud Computing:
• Key Enablers of Cloud Computing:
o Hardware virtualization & multicore chips allow dynamic configurations.
o Utility & grid computing provides the foundation.
o SOA, Web 2.0, and mashups enhance platform integration.
o Autonomic computing & data center automation improve efficiency.
• Impact of Data Deluge:
o Science faces massive data challenges from sensors, simulations, and web sources.
o Efficient data management, storage, and analysis tools are needed.
o CSTB (2007) emphasized tools for data creation, capture, and analysis.
• Cloud Computing & Scientific Advancements:
o Supports e-science applications across disciplines.
o MapReduce & Iterative MapReduce optimize data-intensive workflows.
o Cloud runs on large-scale clusters & many-core GPUs for parallel processing.
• Future Computing Trends:
o Cloud computing, data science, & multicore computing are converging.
o Shift towards machine wisdom through advanced SOA and scalable computing.

SYSTEM MODELS FOR DISTRIBUTED AND CLOUD COMPUTING


Distributed and Cloud Computing Systems
• Built over a large number of autonomous computer nodes.
• Nodes are interconnected using SANs, LANs, or WANs in a hierarchical manner.
• Clusters of clusters can be created using WANs for large-scale systems.
• These systems are highly scalable, supporting web-scale connectivity.

CSE DEPT | CITECH Page 15 of 35


BCS601 CLOUD COMPUTING

Classification of Massive Systems


• Four major types: Clusters, P2P Networks, Computing Grids, and Internet Clouds.
• Involves hundreds, thousands, or even millions of participating nodes.
• Clusters: Popular in supercomputing applications.
• P2P Networks: Used in business applications but face copyright concerns.
• Grids: Underutilized due to middleware and application inefficiencies.
• Cloud Computing: Cost-effective and simple for providers and users.

Clusters of Cooperative Computers:


A computing cluster consists of interconnected computers working as a single unit. Handles heavy
workloads and large datasets efficiently.
1. Cluster Architecture:
• Uses low-latency, high-bandwidth interconnection networks (e.g., SAN, LAN).
• Built using Gigabit Ethernet, Myrinet, or InfiniBand switches.
• Connected to the Internet via VPN gateways.
• Cluster nodes often run under different OS, leading to multiple system images.

CSE DEPT | CITECH Page 16 of 35


BCS601 CLOUD COMPUTING

2. Single-System Image:
• SSI creates an illusion where multiple cluster resources appear as a single integrated system
to users.
• Cluster OS or middleware should support CPU, memory, and I/O sharing across nodes.
• Enhances usability and resource management by presenting the cluster as a unified system.
3. Hardware, Software, and Middleware Support:
• Clusters using massive parallelism are known as Massively Parallel Processors (MPPs) and
dominate the Top 500 HPC list.
• Built from computer nodes (PCs, servers, SMPs), communication software (PVM, MPI), and
high-bandwidth networks (Gigabit Ethernet, Myrinet, InfiniBand).
• OS & Middleware: Mostly run on Linux with cluster middleware to support Single-System
Image (SSI) and High Availability (HA).
• Parallel Applications: Need special environments for distributed resource sharing, like
Distributed Shared Memory (DSM).
• Virtual Clusters: Virtualization allows dynamic creation of clusters based on user demand.
4. Major Cluster Design Issues:
• No unified cluster-wide OS for resource sharing.
• Middleware is required for cooperative computing and high performance.
• Benefits of clusters: Scalability, efficient message passing, fault tolerance, and management.

Grid Computing Infrastructures:


• Growth Path: From Internet → Web → Grid Computing over 30 years.
• Technologies:
o Internet services (e.g., Telnet) allow remote computer access.
o Web services (e.g., HTTP) enable remote page access.
o Grid computing supports interaction among applications on distant computers.
• Impact: Major driver of IT-based economy growth, projected from $1 trillion (2001) → $20
trillion (2015).

CSE DEPT | CITECH Page 17 of 35


BCS601 CLOUD COMPUTING

1. Computational Grids:
• Similar to an electric power grid, integrates computers, software, middleware, and users.
• Constructed across LANs, WANs, or the Internet at various scales.
• Virtual platforms for supporting virtual organizations.
• Computers used: Workstations, servers, clusters, supercomputers.
• Personal devices (PCs, laptops, PDAs) can also access grid systems.
• A Computational Grid can be
o Built over multiple resource sites owned by different organizations.
o It offers diverse computing resources (e.g., workstations, large servers, Linux
clusters).
o Uses broadband IP networks (LANs, WANs) to integrate computing, communication,
and content.
• Special applications:
o SETI@Home (search for extraterrestrial life).
o Astrophysics research (pulsars).
• Examples of large grids:
o NSF TeraGrid (USA).
o EGEE (Europe).
o ChinaGrid (China)

CSE DEPT | CITECH Page 18 of 35


BCS601 CLOUD COMPUTING

2. Grid Families:
• Requirements: Needs new computing models, middleware, network protocols, and hardware.
• Types of Grid Systems:
o Computational/Data Grids – Focus on processing power and storage.
o P2P Grids – Decentralized, peer-to-peer resource sharing.

Peer-to-Peer Network Families:


1. P2P Systems:
• Every node acts as both client and server, sharing system resources.
• No central coordination or database, the system is self-organizing.
• Peers join and leave the system freely, leading to dynamic topology changes.
• Uses TCP/IP and NAI protocols over the Internet instead of a dedicated interconnection network.
2. Overlay Networks:
• Logical structure formed by peer IDs mapped onto physical machines.
• Two types of overlays:
o Unstructured: Random connections, uses flooding for queries (inefficient).
o Structured: Follows specific rules for connectivity and routing (efficient).

CSE DEPT | CITECH Page 19 of 35


BCS601 CLOUD COMPUTING

3. P2P Application Families:


• File Sharing: Napster, BitTorrent (digital content sharing).
• Collaboration: MSN, Skype (chat, messaging, collaborative design).
• Distributed Computing: SETI@home, FightingAID@home (computing resource aggregation).
• P2P Platforms: JXTA, .NET (support for discovery, security, and communication).
4. P2P Computing Challenges:
• Heterogeneity Issues: Different hardware, software, and network protocols.
• Scalability: Performance and bandwidth concerns as workload increases.
• Data Management: Data locality, network proximity, and interoperability affect performance.
• Security Risks: Lack of trust among peers, vulnerability to viruses and cyberattacks.
• Reliability & Fault Tolerance: No single point of failure but hard to manage due to
decentralization.
• Use Case Limitation: Suitable only for low-security applications with minimal data sensitivity
concerns.

Cloud Computing over the Internet:


• Computational science is shifting towards handling large datasets, requiring supercomputers
with balanced CPU, I/O, and networking capabilities. Instead of moving data to workstations,
computations will be sent to the data, reducing transfer overhead.
• The growing data explosion has led to the adoption of cloud computing, where computing and
storage are centralized in large data centers offering on-demand services.

Key Feature of Cloud Computing:


• Rapid provisioning of virtual/physical machines for quick deployment and scaling.
• Redundant and self-recovering systems for fault tolerance.
• Highly scalable programming models for efficient workload management.
• Real-time monitoring of resources for optimized allocation.

CSE DEPT | CITECH Page 20 of 35


BCS601 CLOUD COMPUTING

Internet Clouds

• Uses virtualized platforms with dynamic resource provisioning.


• Provides cost-effective solutions for both users and providers.
• Ensures security, trust, and dependability in cloud operations.
The Cloud Landscape

Traditional Distributed Computing vs. Cloud Computing


• Traditional distributed systems are owned and managed by an organization for on-
premises needs.
• These systems face issues like maintenance, low utilization, and high upgrade costs.
• Cloud computing addresses these problems by offering on-demand computing
resources.
Cloud Service Models
1. Infrastructure as a Service (IaaS):
• Provides servers, storage, networks, and data center infrastructure.
• Users can run multiple VMs but do not manage the underlying infrastructure.
• Example: Amazon EC2, Google Compute Engine.
2. Platform as a Service (PaaS)
• Allows deployment of user-built applications on a cloud platform.
• Provides middleware, databases, and runtime environments (e.g., Web 2.0,
Java, .NET).
• Users focus on app development without managing infrastructure.
• Example: Google App Engine, Microsoft Azure PaaS.
3. Software as a Service (SaaS)
• Offers browser-based applications for businesses and consumers.
• Used for CRM, ERP, HR, collaboration tools.
• No upfront investment in servers or licenses.
• Example: Google Workspace, Microsoft 365, Salesforce.
Cloud Deployment Models
1. Private Cloud – Owned and operated by a single organization.
2. Public Cloud – Available to the general public on a pay-per-use basis.
3. Hybrid Cloud – Combination of private and public clouds.

CSE DEPT | CITECH Page 21 of 35


BCS601 CLOUD COMPUTING

4. Managed Cloud – Fully controlled by a third-party provider.


Security and Service-Level Agreements (SLAs)
Security responsibility is shared among cloud providers, users, and third-party
software providers.
Benefits of Cloud Computing
1. Energy-efficient and protected locations for cloud data centers.
2. Better utilization by sharing peak-load capacity among multiple users.
3. Separation of infrastructure maintenance from application development.
4. Lower costs compared to traditional computing.
5. Facilitates programming and application development.
6. Easier service and data discovery & distribution.
7. Addresses privacy, security, copyright, and reliability issues.
8. Flexible business models and pricing policies.

SOFTWARE ENVIRONMENTS FOR DISTRIBUTED SYSTEMS AND CLOUDS


This section introduces popular software environments for using distributed and cloud computing
systems.

Service-Oriented Architecture (SOA)


1. Entities in Different Architectures
o Grid/Web Services → Represented as a Service.
o Java-based Systems → Represented as a Java Object.
o CORBA → Represented as a Distributed Object (supports multiple languages).
2. SOA is built on the seven-layer OSI model, providing essential networking abstractions.
3. Base Software Environment
o .NET or Apache Axis → Used for web services.
o Java Virtual Machine (JVM) →
Supports Java-based applications.
o Broker Network → Facilitates CORBA-
based communication.
4. SOA enhances the base software with
distributed computing features, which
include entity interfaces and
communication mechanisms by recreating
the top four OSI layers at the entity level.

Layered Architecture for Web Services and Grids:


1. Entity Interfaces: Define interfaces using WSDL (Web Services), Java methods, and
CORBA IDL.

CSE DEPT | CITECH Page 22 of 35


BCS601 CLOUD COMPUTING

2. Communication Systems: Utilize protocols such as SOAP (Web Services), RMI


(Java), and IIOP (CORBA), while supporting features like Remote Procedure Calls
(RPC), fault recovery, and specialized routing.
3. Middleware Infrastructure: Utilizes message-oriented middleware such as WebSphere
MQ or JMS for message routing and virtualization.
4. Fault Tolerance & Security:Web Services Reliable Messaging (WSRM) ensures
message reliability. Security measures include IPsec, secure sockets, and concepts
from the OSI model.
5. Discovery & Management Services: This includes JNDI, UDDI, LDAP, and ebXML
for service discovery. Service management is facilitated through CORBA Life Cycle,
Enterprise JavaBeans, and Jini’s lifetime model.
6. Performance & Software Design:Distributed models provide high performance and
software modularity. There is a shift from CORBA and Java-based systems to modern
architectures using SOAP, XML, and REST.
Web Services and Tools
• Loose coupling & heterogeneous support make services preferable over distributed
objects.
• Two main service architectures:
o Web Services – Uses SOAP to specify all aspects of service and environment.
o REST – Follows simplicity, using minimal headers and "XML over HTTP."
• Challenges:
o Web Services – Hard to standardize and implement efficiently (e.g., Apache
Axis). Fully specifies service behavior and environment. Implementation
challenges due to complexity.
o REST Benefits – Better for fast-evolving tech; Web services may be useful in
mature systems. As it focuses on simplicity and lightweight communication.
SOA Evolution
• Service-Oriented Architecture (SOA) has grown to support grids, clouds, and
interclouds.
• Sensor Services (SS) – Sensors collect raw data from devices like ZigBee, Bluetooth,
WiFi, computers, and phones.
• Data Interaction – These sensors communicate with grids, databases, and various
cloud services (compute, storage, filter, discovery).
• Filtering Data – Filter services (FS) remove unnecessary data to meet specific
requests from web, grids, or web services.
• Purpose of SOA – It helps find and organize useful data from large amounts of
collected information.
Grids vs. Clouds
Grid Computing:
• Uses static resources allocated in advance.
• Focuses on distributed computing with a defined structure.
Cloud Computing:

CSE DEPT | CITECH Page 23 of 35


BCS601 CLOUD COMPUTING

• Uses elastic resources that scale dynamically.


• Supports virtualization and autonomic computing.

Trends toward Distributed Operating Systems:


• In distributed systems, the computers are loosely connected, each running its operating
system.
• It manages resources consistently, often using message passing and remote procedure calls
(RPCs) for communication between nodes.
• A distributed OS enhances the performance, flexibility, and efficiency of distributed
applications

Distributed Operating Systems:


Tanenbaum identifies three approaches for distributing resource management functions in a
distributed computer system.
1. Network OS: Low transparency, functions as a distributed file system using file sharing.
2. Middleware: Enables limited resource sharing, similar to clustered systems.
3. Truly Distributed OS: Provides high transparency with seamless resource sharing.

CSE DEPT | CITECH Page 24 of 35


BCS601 CLOUD COMPUTING

Amoeba versus DCE:


• Amoeba, DCE, and MOSIX2 are academic research prototypes with no commercial success.
• Web-based distributed OSs are needed to support resource virtualization.
• Distributed OSs should distribute resource management across servers, unlike centralized
systems.
• They should use lightweight microkernels (like Amoeba) or extend existing systems (like
DCE).
• The goal is to automate resource management and simplify user tasks.
MOSIX2 for Linux Clusters
• Distributed Operating System: MOSIX2 is designed for Linux clusters and grids.
• Virtualization Layer: Provides a partial single-system image for user applications.
• Supports Applications: Works with both sequential and parallel applications.
• Automatic Management: Discovers resources and migrates processes among Linux nodes.
• Flexible Resource Sharing: Enables sharing of computational resources across multiple
trusted cluster owners.
• Versatile Compatibility: Manages resources in Linux clusters, GPU clusters, grids, and cloud
environments using virtual machines (VMs).
Transparency in Programming Environments
• Four Levels: User data, applications, OS, and hardware are separated into distinct levels.
• User Data Ownership: Data is owned by users and is independent of applications.
• OS Features: The OS provides standard programming interfaces (e.g., system calls) for
developers.
• Hardware Independence: Future cloud infrastructure separates hardware from the OS with
standard interfaces, allowing users to choose their preferred OS on any hardware.
• Cloud Applications (SaaS): Users can use cloud-based applications (Software as a Service) to
keep data independent of specific apps.
• Service Flexibility: Users can switch between different services without being tied to any one
application.

CSE DEPT | CITECH Page 25 of 35


BCS601 CLOUD COMPUTING

Parallel and Distributed Programming Models:


Distributed computing has four programming models with expected scalable performance and application
flexibility.
1. Message-Passing Interface (MPI):
• Programming Standard: MPI is the main standard for developing parallel and concurrent
programs for distributed systems.
• Library of Subprograms: It provides a library of subprograms callable from C or FORTRAN
for parallel programming.
• Application: It enables the use of clusters, grid systems, and P2P systems with enhanced web
services and utility computing applications.
• Alternative Support: Distributed programming can also use low-level tools like Parallel
Virtual Machine (PVM).
2. MapReduce:
• Web Programming Model: Designed for scalable data processing on large clusters and data
sets.
• Main Applications: Used in web-scale search and cloud computing.
• Map and Reduce Functions:
o Map: Generates intermediate key/value pairs.
o Reduce: Merges values with the same intermediate key.
• High Scalability: Can handle terabytes of data across tens of thousands of machines, utilizing
parallelism.
• Massive Simultaneous Jobs: Supports hundreds to thousands of concurrent MapReduce
programs, as seen in Google’s clusters.

3. Hadoop Library:

• Software Platform: Initially developed by Yahoo!, it handles vast distributed data.


• Scalable: Can store and process petabytes of web data.
• Open Source: Uses MapReduce, minimizing task and data communication overhead.
• Efficient: Processes data in parallel across many low-cost nodes.
• Reliable: Keeps multiple data copies for system failure recovery.

CSE DEPT | CITECH Page 26 of 35


BCS601 CLOUD COMPUTING

4. Open Grid Services Architecture (OGSA):

• Grid Infrastructure: Developed for large-scale distributed computing with resource and data
sharing.
• OGSA: A common standard for public grid services.
• Genesis II: Realization of OGSA with key features:
o Distributed execution environment.
o PKI ( Public Key Infrastructure) services with local certificate authority.
o Trust management and security policies.

5. Globus Toolkits and Extensions

• It is developed by Argonne National Lab and USC Information Science Institute.


• Implements standards for resource discovery, allocation, and security in grids.
• Supports multisite mutual authentication using PKI certificates.
• GT 4 has been in use since 2008.
• IBM has enhanced Globus for business applications.

PERFORMANCE, SECURITY, AND ENERGY EFFICIENCY

Includes scalability, availability, programming models, and security issues in clusters, grids, P2P networks,
and Internet clouds.

Performance Metrics and Scalability Analysis:


Performance Metrics:
• Distributed system performance depends on several factors, including CPU speed (MIPS), network
bandwidth (Mbps), system throughput (Tflops, TPS), job response time, and network latency.
• High-performance interconnection networks require low latency and high bandwidth. Other key
metrics include OS boot time, compile time, I/O data rate, system availability, dependability, and
security resilience.
Dimensions of Scalability:
1. Size Scalability – Increasing the number of processors, memory, or I/O channels to improve
performance.

CSE DEPT | CITECH Page 27 of 35


BCS601 CLOUD COMPUTING

2. Software Scalability – Upgrading OS, compilers, and application software to work efficiently in
large systems.
3. Application Scalability – Adjusting problem size to match machine scalability.
4. Technology Scalability – Adapting to hardware and networking advancements while ensuring
compatibility with existing systems.
Scalability versus OS Image Count:

• Scalability – Achieved by adding processors, memory, storage, or I/O channels.


• OS Image Count – Based on independent OS images in clusters, grids, P2P, or cloud.
• SMP (symmetric multiprocessor) – Single system image, limited scalability (hundreds of
processors).
• NUMA (nonuniform memory access) – Multiple SMP nodes with shared memory, scalable to
thousands of processors.
• Clusters – Higher scalability than NUMA, OS images depend on active nodes.
• Cloud – Virtualized clusters, scales to thousands of VMs.
• Grid – Consists of clusters, mainframes, or supercomputers; fewer OS images than processors.
• P2P – Scales to millions of nodes, performance depends on network QoS.
• Networking – P2P, cloud, and clusters should be evaluated at the same level.

CSE DEPT | CITECH Page 28 of 35


BCS601 CLOUD COMPUTING

Performance Models: Amdahl’s and Gustafson’s Laws:


Amdahl’s Law states that system speedup is limited by the sequential portion of a program. Even with
infinite processors, speedup is constrained by non-parallelizable code.

Problem with Fixed Workload:

CSE DEPT | CITECH Page 29 of 35


BCS601 CLOUD COMPUTING

Gustafson’s Law: Let W be the workload in a given program. When using an n-processor system, the user scales
the workload to W′= αW +(1−α)nW.

Efficiency in Large Clusters: Scale the problem size to match cluster capability. Gustafson’s Law
(1988): Speedup improves when workload W is scaled based on processor count n.

Fault Tolerance and System Availability


System Availability:

• High Availability (HA): A system is highly available when it has a long mean time to failure
(MTTF) and a short mean time to repair (MTTR). HA is defined as:
System Availability = MTTF / (MTTF + MTTR)
• Factors Affecting HA:
o Failures in hardware, software, or network components can occur.
o A single point of failure disrupts the entire system.

CSE DEPT | CITECH Page 30 of 35


BCS601 CLOUD COMPUTING

o Enhancing HA involves:
▪ Redundancy in hardware.
▪ Increasing component reliability.
▪ Designing for testability.
• System Size and HA: As distributed systems grow, HA decreases due to higher chances of failure
and difficulties in isolating them.
• SMP and MPP: Symmetric multiprocessor (SMP) and massively parallel processor (MPP) systems
are vulnerable because they rely on centralized resources under a single OS.
• NUMA Machines: Non-uniform memory access (NUMA) systems have better HA with the use of
multiple operating systems.
• Clusters:
o Designed with failover capabilities for HA.
o Private clouds created from virtualized data centers have availability similar to the hosting
cluster.
• Grids:
o Visualized as hierarchical clusters.
o Higher availability is achieved through fault isolation.
o Availability decreases as system size grows.
• P2P Networks:
o Peer-to-peer (P2P) networks can aggregate many client machines.
o Despite the aggregation, they have low availability due to independent operations and
simultaneous failures or departures of peer nodes.

Network Threats and Data Integrity:


Security and copyright protection are essential for clusters, grids, P2P networks, and clouds, requiring
measures against system vulnerabilities, network threats, and unauthorized access in distributed computing.
Threats to Systems and Networks
• Network Viruses can cause widespread attacks, leading to significant financial losses.
• Worm Epidemic – Can disable routers and servers, disrupting services.
• Types of Attacks & Damage.
o Information Leaks – Loss of confidentiality.
o Data Integrity Loss – Caused by user alterations, Trojan horses, and spoofing.
o Denial of Service (DoS) – Disrupts system operation and Internet access.
o Unauthorized Access – Due to weak authentication and authorization.
• Vulnerable Systems – Data centers, P2P networks, grids, and clouds are prime targets.
• Need for Protection – Without security, users should not trust these systems for outsourced work.
• Malicious Intrusions – Can damage hosts, networks, and storage resources.
• Internet Anomalies – Issues in routers, gateways, and distributed hosts can affect service reliability.
Security Responsibilities:
• Three Key Security Requirements: Confidentiality, Integrity, and Availability (CIA).
• Security Responsibility Varies by Cloud Model:
o SaaS: Provider handles all security functions.
o PaaS: Provider ensures integrity & availability, while users manage confidentiality &
privacy.

CSE DEPT | CITECH Page 31 of 35


BCS601 CLOUD COMPUTING

o IaaS: Users handle most security tasks, while providers ensure availability.

Copyright Protection
• Collusive Piracy – Main source of intellectual property violations in P2P networks.
• Issue – Paid clients (colluders) illegally share copyrighted files with unpaid users (pirates).
• Impact – Online piracy limits the commercial use of open P2P networks.
• Solution – Content Poisoning Scheme prevents piracy without affecting legitimate users.
• Detection Methods – Uses identity-based signatures and timestamped tokens to identify pirates.
System Defence Technologies:
• First-Generation defence – Focused on prevention, using access control, cryptography, and security
policies.
• Limitation – Systems remained vulnerable due to weak security links.
• Second-Generation defence – Introduced intrusion detection with firewalls, IDS, PKI services, and
reputation systems.
• Third-Generation defence – Provides intelligent, adaptive responses to intrusions.
Data Protection Infrastructure:
Security infrastructure is essential for web and cloud services, requiring trust negotiation, reputation
aggregation, and defences against worms, DDoS, and piracy. Cloud security responsibilities vary: providers
ensure platform availability, IaaS users handle confidentiality, and IaaS providers ensure data integrity,
while PaaS and SaaS share responsibility for integrity and confidentiality.

Energy Efficiency in Distributed Computing


• Traditional Goals – High performance, high throughput, and reliability (fault tolerance & security).
• New Challenges – Energy efficiency, workload outsourcing, and resource management are crucial
for sustainability.
• Energy Consumption Issues – Addressed through Distributed Power Management (DPM) in servers
& HPC systems.

CSE DEPT | CITECH Page 32 of 35


BCS601 CLOUD COMPUTING

• Cost Impact – High energy costs for Earth Simulator (12MW, $1,200/hour) and Petaflop systems
(100MW, $10,000/hour).
• Cooling Challenges – High temperatures damage electronic components, reducing lifespan and
efficiency.
Energy Consumption of Unused Servers:
Running a server farm is costly, requiring significant investments in hardware, software,
operations, and energy. However, many companies fail to optimize resource utilization, leading to
unnecessary energy consumption. Studies show that 15% of servers remain powered on but idle
daily, meaning 4.7 million of the world's 44 million servers perform no useful work. Turning off
these servers could save $3.8 billion in energy costs and $24.7 billion in total operational expenses
globally. Additionally, this wasted energy contributes to 11.8 million tons of CO₂ emissions yearly,
equivalent to the pollution from 2.1 million cars. IT departments must first analyze and identify
unused or underutilized servers to improve efficiency and reduce environmental impact.

CSE DEPT | CITECH Page 33 of 35


BCS601 CLOUD COMPUTING

Energy Management in Distributed Systems (Four Layers):


Application Layer:
• Focus on energy-aware applications that balance energy consumption with performance.
• Key factors: Instruction count and storage transactions affect energy use.
Middleware Layer:
• Manages energy-efficient scheduling and task management.
• Incorporates energy-aware techniques to optimize power usage during task scheduling.
Resource Layer:
• Manages hardware (e.g., CPU) and operating systems to optimize energy usage.
• Dynamic Power Management (DPM): Switches between idle and lower-power states.
• Dynamic Voltage-Frequency Scaling (DVFS): Controls power consumption by adjusting voltage and
frequency.
Network Layer:
• Focuses on energy-efficient network routing and protocols.
• New energy-efficient routing algorithms and models are needed for optimized performance and
reduced energy consumption.

CSE DEPT | CITECH Page 34 of 35


BCS601 CLOUD COMPUTING

DVFS Method for Energy Efficiency:

CSE DEPT | CITECH Page 35 of 35

You might also like