GroupCommunication
A group is a collection of users sharing some common
interest.Groupbased activities are steadily increasing.
There are many types of groups:
Open group (anyone can join, customers
DistributedConsensus
DistributedConsensus
Reaching agreement is a fundamental problem in distributed
computing. Some examples are
Leaderelection/MutualExclusion
CommitorAbortindistributedtransactions
Time and Clock
TimeandClock
Primary standard of time = rotation of earth
De facto primary standard = atomic clock
(1 atomic second = 9,192,631,770 orbital transitions of Cesium 133 atom.
86400 atomic
Representing distributed algorithms
How to represent a distributed
algorithm?
We will introduce the notions of atomicity, nondeterminism, fairness etc that are important
issues in specifying distribut
DistributedSnapshot
Thinkaboutthese
How many messages are in transit
on the internet?
 What is the global state of a distributed
system of N processes?
How do we compute these?
Onedollarbank
2
(2,0)
GlobalStateCollection
Globalstatecollection
Some applications
 computing network topology
 termination detection
 deadlock detection
ChandyLamport algorithm does a partial job. Each process
genera
Replication
Improves reliability
Improves availability
(What good is a reliable system if it is not
available?)
Replication must be transparent
and create the illusion of a single
copy.
Updatingrep
Minimum Spanning Tree
Minimum Spanning Tree
Given a weighted graph G = (V, E), generate a spanning tree T = (V,
E) such that the sum of the weights of all the edges is minimum.
A few applications
Mini
GraphAlgorithms
GraphAlgorithms
Many problems in networks can be modeled as graph
problems.

The topology of a distributed system is a graph.

Routing table computation uses the shortest path algori
Faultsandfaulttolerance
Faultsandfaulttolerance
One of the selling points of a distributed system is
that the system will continue to perform (at some
level) even if some components / processes / link
Distributed Consensus (continued)
Byzantine Generals Problem
Solution with signed message
A signed message satisfies all the conditions of oral message,
plus two extra conditions
Signature cannot be
CS 5620
Distributed Systems and Algorithms
Sukumar Ghosh
Department of Computer Science
University of Iowa
Spring 2015
What is a distributed system?
1
What is a distributed system?
0
2
1
11
5
4
3
8
7