Upload
dorothy-mills
View
219
Download
2
Embed Size (px)
Citation preview
Lecture 6: Introduction to Distributed Computing
Distribute Systems and Distributed Computing
Contents
• Introduction of Distributed Systems
• Distributed Computation Models
• Synchronous Network Algorithms
• Asynchronous Network Algorithms
• Clock in Asynchronous Distributed Systems and Snapshot algorithms
• Fault-Tolerant Algorithms
Wei Chen, Professor
Tennessee State University
Construction of Distributed Systems
Units of A Distributed System:
• Units/Nodes (Computers, sensors, … )
• Network
• Softwarenetwork
What Is Distribute Systems?
There is no unique definition for distributed systems. Similar terms are
• Networked system
• parallel systems
• Concurrent systems
• Decentralized systems
Enslow’s Definition
Distributed System = Distributed hardware + Distributed control + Distributed data
Distributed Hardware
Physically shared/distributed memory and logically shared/distributed memory
Logically shared Logically distributed
Physically shared
Common memory Simulated message passing
Physically distributed
Distributed shared memory
message passing
processor processor processor
Network
memory
Physically shared memory
processor processor processor
Network
memorymemory memory
Physically distributed memory
Distributed System Software
• Cooperating the actions of units (computers, sensors, …)
• Supporting system resources (hard ware and software) sharing.
• Supporting data sharing.
Distributed Control
• Master/Slave (fixed/dynamic)
• Multi control points (homogenous/heterogeneous)
Distributed Data
• Copies: Processors hold data copies.
• Divided data: Data are divided and distributed to processors.
Features of Distributed Systems
• Resource sharing: hardware, software, data
• Openness: openness of main interface of the system, scalability of the current system
• Concurrency: concurrent execution of the processes, high performance, nice rate of price and performance (PC cluster = poor man’s supercomputer )
• Fault tolerance: ability to tolerate the fault of system units, availability( using potential redundancy to overcome the system fault).
• Transparency: a distributed system can be looked as one computer (access transparency, position transparency, parallel transparency,….)
Distributed Computational models
• Processes: never mind in which unit they are.
• Communicating links: communication channels
Computer
process
Communication link
Process
• Generalized RAM (Random Access Machine)
CPU with program
Infinite memory
Message changeable with adjacent processes
• Each process has a distinct ID.
• Without fault (it will be considered in the model with fault).
Communication Links
• Bidirectional
• Asynchronous
• Infinite FIFO queue
• Without fault (no massage losing, alteration)
Sending in order of A,B,C Receiving in order of A,B,C
Synchronism
• Running speed of each process
• Transmission delay
• Speed of the local clock in each process: constant upper and lower bounds
Local Clock of Synchronous Distribute Systems
p(t): the value of the local clock of process p at moment t
)1()/())()1(
that such constant positiveexist There
21211 attttpa
c, a
Real clock
Real time
Local
clock 1)1( a
)1( a
Typical synchronous distributed model: Round Model
• Processes execute each round synchronously
Each round consists of message receiving, computation, and
message sending
• Processes accept the message sent from the previous round.
Complete asynchronous model
• No assumption for the speed of processes.
• No assumption for the transmission delay of communication links.
• No assumption for the speed of local clocks.