Distributed Computing:
A system where tasks and data are shared across
many computers instead of one main computer.
Types of Distributed Computing System Models –
Physical Model
A physical model shows the actual hardware and
connections of a distributed system. It helps design,
manage, and check the system’s performance.
Main Components:
1. Nodes
• These are devices like computers, servers, or
workstations.
• They process data, run tasks, and communicate
with other nodes.
• Each node has an operating system, software
environment, and middleware to help it work
with others.
2. Links
• These are the connections between nodes,
either wired (cables, fiber optics) or wireless.
• Types of links:
o Point-to-point: Connects two nodes
directly.
o Broadcast: One node sends data to many
nodes.
o Multi-access: Many nodes share the same
channel (protocols prevent interference).
3. Middleware
• Software on nodes that helps them work
together.
• Handles communication, resource
management, synchronization, fault tolerance,
and security.
4. Network Topology
• The layout of nodes and links.
• Common types: Bus, Star, Mesh, Ring, Hybrid.
• Chosen based on system needs.
5. Communication Protocols
• Rules for sending and receiving data.
• Examples: TCP, UDP, HTTPS, MQTT.
• Ensure nodes can understand and share data
properly.
Architectural Model
It shows how a distributed system is designed and
organized, and how its parts work together. A good
architecture makes the system efficient, scalable,
and easy to manage.
Types of Architectural Models:
1. Client-Server Model
• Centralized system: clients request, servers
respond.
• Works on request-response.
• Used in web services, cloud, databases.
•
2. Peer-to-Peer (P2P) Model
• Decentralized: all nodes are equal and can
request or provide services.
• Nodes communicate directly without a central
server.
• Example: BitTorrent.
•
3. Layered Model
• System divided into layers, each providing a
specific service.
• Layers talk to adjacent layers using protocols.
• Simplifies the system and organizes complexity.
•
4. Microservices Model
• Breaks a large application into small
independent services.
• Each service does one job and runs on different
servers.
• Makes the system scalable, maintainable, and
easy to update.
Fundamental Model
The fundamental model is a basic framework that
explains how distributed systems work and what
components are essential. It helps understand the
behavior, communication, and security of the
system.
Three Key Models:
1. Interaction Model
• Focuses on how processes communicate and
coordinate.
• Message Passing: Processes send data,
instructions, or sync messages. Can be
synchronous or asynchronous.
• Publish/Subscribe (Pub/Sub): Publishers send
messages to a topic; subscribers receive and
act on them. Useful in event-driven systems.
2. Remote Procedure Call (RPC)
• Lets a process call a method on a remote
machine as if it were local.
• The client sends a request; the server executes
it and sends back the result.
3. Failure Model
• Deals with faults in the system and how to
handle them.
• Types of failures:
o Crash: Node stops working unexpectedly.
o Omission: Messages are lost.
o Timing: Processes are slow or out of sync.
o Byzantine: Malicious or wrong messages
sent.
4. Security Model
• Protects the system from attacks, unauthorized
access, and data breaches.
• Key aspects:
o Authentication: Verify user identity
(passwords, keys, multi-factor).
o Encryption: Convert data to unreadable
form for protection.
o Data Integrity: Ensure data isn’t changed or
tampered (hashes, digital signatures).