Chapter-1
Chapter-1
COMPUTING
BCS601
CIE Marks 50
SEE Marks 50
Credits 04
Course objectives:
• Introduce the rationale behind the cloud computing revolution and the
business drivers
Text Books:
We study:
2. Computational grids.
3. Peer-to-peer networks.
1. Hardware architectures
2. OS platforms
3. Processing algorithms
4. Communication protocols
• With the TCP/IP protocols in place, users had the ability to link hypertext documents in an
information system accessible from any node or computer using the TCP/IP protocol. The
resulting information system or database is today’s World Wide Web.
• With the birth of the World Wide Web, expanded usages of this new technology arose along
with expanded business opportunities. Web servers, people who host and store the
documents and web browsers, companies set up to help you view linked documents, help
The Growth of the Internet
Development of a host of web-based applications, which fostered online services, such as email.
User-generated content.
Web 2.0 saw emerging marketplaces that brought together unrelated buyers and
sellers in a seamless, low-cost way. Data became a commodity collected, siloed and
sold; we were giving up our information at a frenzied pace. Websites let users
Web 3.0 - Internet of Value
Web 3.0, also known as the third generation of the World Wide
Web, is characterized by several key features that are closely
related to cloud computing.
Distributed Systems
A distributed system consists of multiple interconnected computers (nodes)
working together to achieve a common goal. In cloud computing, distributed
systems enable scalability, fault tolerance, and resource sharing across global
data centers.
Role of Service-Oriented Architecture
(SOA) in Cloud Computing
Service-Oriented Architecture (SOA) plays a crucial role in cloud computing by
enabling applications to be designed, deployed, and managed as independent,
loosely coupled services.
It provides a framework for building scalable, reusable, and interoperable
services that can be hosted and accessed over the internet.
Example: Facilitates Automation and Orchestration
• Cloud platforms use SOA principles to automate workflows, such as auto-scaling,
load balancing, and event-driven processing.
• Service orchestration allows multiple cloud services to work together in a
coordinated manner.
Example:
An e-commerce application can automatically scale its infrastructure during Black
Friday by orchestrating services like load balancers, databases, and caching
Example: Enables Modular and Scalable Applications
Example:
Netflix’s microservices architecture is an evolution of SOA, allowing
different services (login, recommendations, streaming) to function
Microservices is an architectural style where an application is divided into small, independent
services that communicate via APIs. Each service is loosely coupled, scalable, and deployable
independently, making applications more flexible and resilient.
Amazon Web Services (AWS) is the world's leading cloud computing platform, providing on-
demand computing resources to businesses, developers, and enterprises. AWS offers a scalable,
secure, and flexible cloud infrastructure that supports various computing needs, from basic web
hosting to high-performance computing (HPC) and AI/ML workloads.
Amazon EC2 (Elastic Compute Cloud) – Virtual servers for running applications.
AWS Lambda – Serverless computing that executes code in response to events.
Amazon ECS & EKS – Managed services for Docker containers and Kubernetes clusters.
AWS Batch – HPC & HTC workloads optimized for batch processing.
SOA is a software design pattern where services are provided to other components
via communication protocols over a network.
Example:
Amazon Web Services (AWS) provides cloud-based services (such as storage via S3,
computing via EC2) that businesses can use to build their applications.
Example:
VMware and Microsoft Hyper-V allow organizations to run multiple virtual machines
on a single physical server, improving resource utilization.
Three New Computing Paradigms
3. Internet of Things (IoT): Driven by RFID, GPS, and Sensor Technologies
IoT is a computing paradigm where everyday objects are connected to the internet, enabling
data collection, exchange, and automation. Devices communicate using technologies
like RFID (Radio Frequency Identification), GPS (Global Positioning System), and sensors.
Example: Smart Homes (e.g., Google Nest, Amazon Echo) use IoT devices to automate
home functions like lighting, security, and temperature control.
Healthcare: Wearable devices like Fitbit or Apple Watch monitor heart rate, steps, and sleep
patterns, sending data to mobile apps for health tracking.
For example, in a smart healthcare system:
1. IoT devices track patient vitals.
2. SOA ensures that different medical services communicate seamlessly.
3. Virtualization enables cloud storage and processing of patient data.
"What are the other latest computing paradigms in cloud
computing”
1. Edge Computing
• Both HTC and HPC systems converge into computational and data grids, which allow for
large-scale distributed computing.
2. RFID & Sensors – Provide real-time data collection, essential for IoT and large-scale
monitoring applications.
• The computational and data grids evolve into cloud computing, integrating key
paradigms like:
• Internet of Things (IoT) – Connects smart devices for real-time data processing.
• Web 2.0 Services – Allows user-friendly, interactive web applications.
•
What are the key applications of High-Performance Computing (HPC)
and High-Throughput Computing (HTC) across various domains, and
how do they impact industries such as healthcare, finance, and
government services?"
The Trend toward Utility Computing
"How does technology convergence integrate different computing paradigms to
enhance High-Throughput Computing (HTC) and High-Performance Computing (HPC)
applications in modern distributed computing systems?"
1. Computing Paradigms Driving Convergence
The left side of the diagram lists several computing paradigms that contribute to this
convergence:
• Web services & Cloud computing – Provide scalable and on-demand resources.
• Data centers & Utility computing – Offer centralized storage and processing power.
• Service computing & Grid computing – Enable distributed computing and resource
sharing.
• These technologies are in early R&D, attracting speculation but lacking real-world adoption.
2. Peak of Inflated Expectations: Technologies in this phase receive hype and unrealistic expectations.
• Examples: 3D printing, cloud computing, 4G, speech-to-speech translation, mobile robots, and
social analytics.
• While some projects show promise, many fail due to technological challenges or overestimation.
3. Trough of Disillusionment
4. Slope of Enlightenment
They achieve broad market adoption and integration into everyday use.
• Less than 2 years: Technologies close to productivity, such as speech recognition and biometric
authentication.
• 2 to 5 years: Technologies on the slope of enlightenment, like mobile app stores and
predictive analytics.
• 5 to 10 years: Innovations still in disillusionment but evolving, such as gesture recognition and
virtual assistants.
• More than 10 years: High-risk, long-term technologies like human augmentation and
The Internet of Things and Cyber-Physical Systems
technologies have played a crucial role in High-Performance Computing (HPC) and High-Throughput
Computing (HTC).
• Component Technologies: hardware and software like Processors (CPUs, GPUs, TPUs), Memory
• Network Technologies: communication and data transfer like Interconnection Networks, Cluster
Networking, Cloud and Grid Networking, Software-Defined Networking (SDN), Data Transfer Protocols
2. Processor Speed: Measured in MIPS (Millions of Instructions Per Second), representing CPU processing
capability.
3. Network Bandwidth: Measured in Mbps (Megabits per Second) or Gbps (Gigabits per Second). 1 GE
4. Technological Growth Trends: Continuous improvements in processor speed and network bandwidth
Example
Example: The evolution from dial-up internet (56 Kbps) in the 1990s
to fiber-optic internet (10 Gbps and beyond) today has drastically
improved communication and data processing.
• Early processors like Intel 286 (1982) and Motorola 68020 (1984) had relatively low
MIPS.
• Significant jumps in MIPS with Intel Pentium (1993), Pentium III (1999), and Pentium
4 (2000s).
• Intel Core i7 990X (2011) achieves a massive boost in MIPS compared to earlier CPUs.
• Both CPU processing power and network bandwidth have grown exponentially.
• Faster CPUs required better network infrastructure to handle increasing data loads.
• Advancements in HPC, cloud computing, and big data are enabled by this dual
progress.
Technology Advancements
• 1990s: Rapid growth in processor speeds with Pentium series and rise of Fast Ethernet.
• 2000s: Multi-core processors (Intel Core, AMD FX) and Gigabit+ Ethernet
advancements.
The processor consists of multiple cores (Core 1, Core 2, ..., Core n), each
handling independent processing tasks.
• Each core has its own L1 cache, which is the fastest and closest memory to the
core.
refers to a level of cache memory that multiple processor cores within a single chip
(such as a multi-core CPU or GPU) can access and use collectively.
• Acts as an intermediary between the private L1 caches and the larger memory
L3 Cache / DRAM (Off-Chip Memory): Off-Chip Memory refers to memory that is
located outside the processor chip and is accessed through external buses or interfaces
• Helps manage data exchange between CPU and main memory (RAM).
• Improves system performance by reducing the need for frequent access to main
memory.
• Faster but smaller caches (L1, L2) → Slower but larger memory (L3, DRAM).
• Optimizes speed and efficiency by balancing fast access and storage capacity.
Performance Optimization:
• Demonstrates divide-and-conquer
parallelism.
Producer-Consumer Problem
(Synchronization Example)
• Device memory serves as the GPU's dedicated memory for storing data.
Communication Links
Memory Separation:
• GPUs have their own device memory, which is separate from the main
memory of the CPU.
• Efficient memory management and data transfer between the two are
Power Efficiency of the GPU
• Performance Comparison of CPU, GPU, and
Exascale (EF) Computing
• The figure illustrates the energy efficiency
(performance per watt) of CPUs, GPUs, and
Exascale (EF) computing over time, measured in
Gflops/W (Giga floating-point operations per
second per watt).
• Exascale computing refers to high-performance
computing (HPC) systems capable of executing at
least one exaFLOP (EF), or 10¹⁸ floating-point
operations per second (FLOPS).
(1,000,000,000,000,000,000 operations per second, One
quintillion operations per second,31 billion years)
• GPUs are significantly more power-efficient than CPUs for
computational workloads.
• Future Exascale computing (EF) is expected to
offer an order-of-magnitude improvement, making
HPC systems far more efficient.
System-Area Interconnects
• The nodes in small clusters are mostly
interconnected by an Ethernet switch or a
local area network (LAN).
• A LAN typically is used to connect client
hosts to big servers.
• A storage area network (SAN) connects
servers to network storage such as disk
arrays.
• Network attached storage (NAS) connects
client hosts directly to the disk arrays.
• All three types of networks often
appear in a large cluster built with
commercial network components.
• If no large distributed storage is shared, a
small cluster could be built with a
multiport Gigabit Ethernet switch plus
copper cables to link the end machines. All
three types of networks are
Virtual Machines
An example is an x-86 architecture desktop running its installed Windows OS, as shown in
part (a) of the figure.
• All applications depend on this OS, creating limited flexibility and scalability.
• It manages multiple Guest Operating Systems (Guest OS), each running applications.
• The Host OS manages the hardware and runs the VMM as an application.
• A Host OS (Host Operating System) is the main operating system installed on a physical
machine that manages hardware resources and runs virtual machines (VMs) or other
software applications.
Example: If you run Windows 11 and use VirtualBox to create an Ubuntu VM, then:
Windows 11 is the Host OS
Ubuntu is the Guest OS
• Google operates thousands of clustered servers across multiple data centers worldwide.
• These servers store and process huge amounts of web pages, search queries, and
indexing data.
I/O Devices & Disk Arrays → Distributed Storage System (Google File System - GFS)
• Google stores its data across massive distributed disk arrays (used in cloud
computing, big data processing. Example: Google File System (GFS) / Colossus
(Successor of GFS)), ensuring data redundancy and fast retrieval.
Gateway → Google’s Public Search Interface: The processed results are sent to users
via the internet.
Major Cluster Design Issues
Example is Google Borg, a cluster management system used by
Google to efficiently run its vast data centers.
Google Borg is a cluster management system that runs and manages millions of tasks
across thousands of servers in Google’s data centers.
It ensures that Google’s services—like Search, YouTube, Gmail, and Maps—run smoothly
without downtime.
cluster benefits
Allocates Resources Smartly – Decides which server runs which task based on availability.
Handles Failures Automatically – If a server fails, Borg moves tasks to another working
server.
Balances Workload – Ensures no single server is overloaded while others sit idle.
Scales Efficiently – Manages millions of jobs daily, making sure Google services run fast.
Computational Grids
the Internet.
Data Sharing: Users can access large datasets stored in databases remotely.
• Scientists and users access weather updates on their laptops, mobile phones,
P2P Systems
• The actual data travels through multiple routers, networks, and physical
connections.
1. Allows users to deploy and run multiple Virtual Machines (VMs) with guest operating
systems and specific applications.
4. Offers flexibility and scalability for deploying applications without managing physical
hardware.
Examples:
A cloud computing model where the user has control over the
application and data, but not the underlying infrastructure.
Examples:
•
Software as a Service (SaaS)
A cloud computing model where the user has access to software applications over the internet,
without having to install or maintain the software.
Examples:
• Salesforce CRM
Public Cloud: A cloud computing model where the infrastructure is owned and operated by a
Private Cloud: A cloud computing model where the infrastructure is owned and operated by a
Hybrid Cloud: A cloud computing model where a combination of public and private clouds are
Eight reasons to adapt the cloud for upgraded Internet
applications and web services
1. Desired location in areas with protected space and higher energy efficiency.
2. Sharing of peak-load capacity among a large pool of users, improving overall utilization (popular
event).
4. Significant reduction in cloud computing cost, compared with traditional computing paradigms
(startup, pay-as-you-go pricing models).
5. Cloud computing programming and application development ( Google Cloud Shell, & Java or Python).
6. Service and data discovery and content/service distribution (media company, content delivery
networks (CDNs)).
7. Privacy, security, copyright, and reliability issues (ensure the security and privacy of its customers'
data).
Example: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform.
• Protocol Layer: HTTP, FTP, DNS – Web browsing, file transfers, domain name resolution.
• Presentation Layer: XDR (eXternal Data Representation) – JSON, XML used in REST APIs.
• Session Layer: SSH (Secure Shell) – Secure login for remote servers (e.g., managing AWS
EC2).
• Transport Layer: TCP/UDP – TCP for reliable transactions (e.g., placing an order), UDP for live
• Network Layer: IP (Internet Protocol) – Routing packets between data centers and users.
Example: Traffic cameras and weather sensors process data into traffic
congestion levels.
• Storage cloud retains historical and real-time data for further processing.
Serial Fraction (f): Let's say that 20% of the program is serial, meaning it cannot be
parallelized. This means that 20% of the.
Parallel Fraction (1-f): program's execution time is not affected by the number of processors
The remaining 80% of the program can be parallelized, meaning it can be executed concurrently
on multiple processors.
Amdahl's Law:
Using Amdahl's Law, we can calculate the maximum speedup that can be achieved by parallelizing the
program:
S = 1 / (1 - f + f/n)
Where:
• f is the fraction of the program that cannot be parallelized (20% in this case)
Maximum Speedup:
The maximum speedup that can be achieved by parallelizing the program is approximately 1.176.
This means that even with 4 processors, the program can only be sped up by a factor of 1.176, not 4.
• In cloud computing, Amdahl's Law is particularly relevant
because it helps to: Estimate scalability, Optimize
parallelization, Plan for resource allocation.
Example: Suppose we have a program that takes 10 seconds to complete on a single processor.
We want to parallelize the program to run on 4 processors. We can divide the program into 4 parts,
each running on a separate processor.
Data Parallelism: Let's say that the program is data-parallel, meaning that it can process large
amounts of data in parallel. For example, the program is a matrix multiplication algorithm that can
process multiple rows of the matrix in parallel.
Processor Utilization: Assuming that each processor is fully utilized, we can calculate the total
processing power of the 4 processors that is, 4 processors x 100% utilization = 400% processing
Speedup: Using Gustafson's Law, we can calculate the maximum speedup that can be achieved
by parallelizing the program:
S = (1 - f) / (1 - f/n)
Where:
• S is the speedup
• f is the fraction of the program that is not parallelized (0 in this case, since the program is fully
parallelizable)
The maximum speedup that can be achieved by parallelizing the program is approximately 1.25.
This means that even with 4 processors, the program can only be sped up by a factor of 1.25,
not 4.
Threats to Systems and Networks
Diagram that categorizes various system attacks and network threats
into four types of losses: loss of confidentiality, loss of integrity, loss of
availability, and improper authentication.
Question: Explain the relationships between the attack techniques and their
impact on cybersecurity.
The given diagram categorizes system attacks and network threats into
four major types of cybersecurity losses:
Example: Packet sniffing tools like Wireshark can be misused to intercept network traffic.
Penetration – Gaining unauthorized access and modifying data. Example: SQL injection attacks
altering database records.
Masquerade – Impersonating a legitimate user or system. Example: Phishing emails tricking users
into sharing credentials.
Bypassing Controls – Exploiting weak security measures. Example: Privilege escalation attacks in
operating systems.
Physical Intrusion – Physically tampering with hardware. Example: Plugging a malicious USB device
into a secure system.
Impact on Cybersecurity: Leads to misinformation, data corruption, financial fraud, and loss of
trust in digital systems.
Loss of Availability (Denial of Service - DoS): Availability ensures authorized users can
access resources without interruption.
Impact on Cybersecurity: Causes downtime, financial losses, and reputational damage for
Improper Authentication (Illegitimate Use): Authentication ensures only
authorized users can access systems.
Application Layer : Where user applications run, such as DNA sequencing, physics simulations,
Middleware Layer: Manages distributed resources and services like security, scheduling, and
communication.
• Secure access ensures only authorized users can access weather data.
• Task analyzer & scheduler distribute computational tasks across multiple systems.
• Communication & information services handle data sharing across global weather stations.