2. CONTENTS
1. Introduction
2. History
3. Overview
4. Examples of distributed systems
5. Architecture
6. Algorithms
7. Bully Algorithm : In brief
8. Fallacies of distributed computing
9. Problems related to distributed computing
2
3. INTRODUCTION
Distributed computing:
A field of computer science that studies distributed
systems.
Distributed system:
Consists of multiple autonomous computers
that communicate through a computer
network
Use of distributed systems to solve
computational problem
3
4. HISTORY
The first widespread distributed systems
were local-area networks such as Ethernet
that was invented in the 1970s.
E-mail is the earliest example of a large-
scale distributed application.
The study of distributed computing
became its own branch of computer
science in the late 1970s and early 1980s. 4
8. ARCHITECTURE
Various software and hardware architectures used
for distributed computing are as follows:
Client-server
3-tier
N-tier
Tightly-coupled
Loosely-coupled
Peer-to-peer
8
10. ALGORITHMS
1. Bully Algorithm- Leader election
2. Byzantine Fault Tolerance
3. Algorithms based on Clock synchronisation
4. Lamport Ordering
5. Algorithms based on Mutual exclusion
6. Snapshot algorithm
7. Algorithms based on Detection of process
termination
8. Vector clocks
10
11. Leader Election
In distributed computing, leader election is the process of
designating a single process as the organizer, coordinator,
initiator or sequencer of some task distributed among several
computers .
Why Leader Election is required?
The existence of a centralized controller greatly
simplifies process synchronization
However, if the central controller breaks down, the
service availability can be limited
The problem can be alleviated if a new controller
(leader) can be chosen
11
12. BULLY ALGORITHM
The bully algorithm is a method in distributed computing for
dynamically selecting a coordinator by process ID number.
The Bully Algorithm was devised by Garcia-Molina in 1982.
In this algorithm, the highest-numbered process becomes
coordinator.
Thus the biggest guy in town always wins, hence the name
“Bully Algorithm.”
12
13. When a process notices that the coordinator is not responding to
requests, it initiates an election.
Bully algorithm makes note of time of by which the process should
respond.
Election is held as follows:
–P sends an ELECTION message to all processes with higher
numbers.
–If no one responds, P wins the election and becomes coordinator.
–If one of the higher-ups answers, it takes over. P’s job over!
13
14. 1.Process 4 holds an election.
2.Process 5 and 6 respond, sending
OK message that , we are UP.
3.Now 5 and 6 each hold an
election
14
16. Fallacies of distributed computing
1. The network is reliable.
2. Latency is zero.
3. Bandwidth is infinite.
4. The network is secure.
5. Topology doesn't change.
6. There is one administrator.
7. Transport cost is zero.
8. The network is homogeneous.
16