0% found this document useful (0 votes)
23 views

Distributed Computing Systems: System Models + Notion of "Time"

Distributed computing systems can use different architectural models including client-server, peer-to-peer, and multiple servers with proxies and caches. The fundamental models consider interaction between processes, failure handling, and security threats. Interaction is modeled as either synchronous or asynchronous based on timing bounds, and the ordering of message sends and receives impacts solvability of problems in the asynchronous model. Failure models include crash failures where processes halt and omissions where messages do not get sent or received, as well as arbitrary Byzantine failures.

Uploaded by

Kushal Cse
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views

Distributed Computing Systems: System Models + Notion of "Time"

Distributed computing systems can use different architectural models including client-server, peer-to-peer, and multiple servers with proxies and caches. The fundamental models consider interaction between processes, failure handling, and security threats. Interaction is modeled as either synchronous or asynchronous based on timing bounds, and the ordering of message sends and receives impacts solvability of problems in the asynchronous model. Failure models include crash failures where processes halt and omissions where messages do not get sent or received, as well as arbitrary Byzantine failures.

Uploaded by

Kushal Cse
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 15

DISTRIBUTED COMPUTING

SYSTEMS
System Models + Notion of “Time”
 Distributed Systems: Concepts and Design
George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair
Architectural Models
 System architecture: Client-Server

Client inv oc ation Server


inv oc ation

result result
Server

Client
Key:
Proc es s: Computer:

• Request-response paradigm
Architectural Models
 System architecture: Peer-to-Peer
Peer 2

Peer 1
Application

Application

Sharable Peer 3
objects
Application

Peer 4

Application

Peers 5 .... N
Architectural Models
 System architecture: multiple servers
Service

Server
Client

Server

Client
Server
Multiple
servers
Architectural Models
 System architecture: multiple servers, proxy servers
and caches,
Service

Server
Client
Client Web
s erv er
Prox y
Server s erv er

Client Web
s erv er
Client
Server
Proxy
Multiple
servers
Fundamental Models
 Three aspects:
 Interaction: how one process communicates with another
 Failure: how to handle failure of processes

 Security: threats
Interaction Model
proc es sp proc es s q
State State
send m receiv e
Message

Communic ation c hannel


Outgoing mes sage buffer Inc oming mes sage buffer

 Distributed algorithm: a sequence of steps, including


transmission and receiving of messages
 Properties of communication channel
 Latency, bandwidth
Interaction Model
 Two variants based on bound on timing of events
 Synchronous systems: take bounded (lower or/and
upper) time for:
 Executing each step of a process
 Receiving a message after the message has been
transmitted
 Asynchronous systems have no known bound on how
much time it can take on an operation
Interaction Model

Communication Type (sync/async)


Personal greetings
Email
Voice call
Skype call
Voice mail/voice SMS
Text messages
Interaction Model

Communication Type (sync/async)


Personal greetings Sync
Email Async
Voice call Sync
Skype call Sync
Voice mail/voice SMS Async
Text messages Async
Interaction model: Ordering of events
s end receiv e receiv e
X
1 m1 4
m2
s end
receiv e
2 3 Phy sical
Y
receiv e time

s end
Z
receiv e receiv e

m3 m1 m2
A
receiv e receiv e receiv e
t1 t2 t3

 Can A determine who sent the message earlier?


Asynchrony interaction
 An important concept in distributed computing

• Two general's problem / Two army problem


• Agreement in Pepperland

• Some problems are impossible to solve in asynchronous


interaction/computing model
Failure Models
Omission and arbitrary failures
Class of failure Affects Description
Fail-stop Process Process halts and remains halted. Other processes may
detect this state.
Crash Process Process halts and remains halted. Other processes may
not be able to detect this state.
Omission Channel A message inserted in an outgoing message buffer never
arrives at the other end’s incoming message buffer.
Send-omission Process A process completes asend, but the message is not put
in its outgoing message buffer.
Receive-omission Process A message is put in a process’s incoming message
buffer, but that process does not receive it.
Arbitrary Process or Process/channel exhibits arbitrary behaviour: it may
(Byzantine) channel send/transmit arbitrary messages at arbitrary times,
commit omissions; a process may stop or take an
incorrect step.
Thanks!

You might also like