Models of Distributed Systems: Basic Elements
Models of Distributed Systems: Basic Elements
3. Fault Models
Resource managers can be in general modelled as
processes.
If the system is designed according to an object-
oriented methodology, resources are encapsulated
in objects.
Peer-to-peer
peer peer
Peer-to-Peer tries to solve some of the above - multiple servers and caches
- mobile code and mobile agents
It distributes shared resources widely
- low-cost computers at the users side
- mobile devices
Network computers
Mobile agent: a running program that travels from
one computer to another carrying out a task on
someones behalf.
Typical tasks:
Advantages:
Attention: potential security risk (like mobile code)!
The network computer can be simpler, with limited
capacity; it does not need even a local hard disk (if
there exists one it is used to cache data or code).
Users can log in from any computer.
No user effort for software management/
administration.
Synchronous distributed systems Drift rates between local clocks have a known
bound.
No bound on process execution time (nothing can Asynchronous systems are widely and successfully
be assumed about speed, load, reliability of used in practice.
computers).
No bound on message transmission delays In practice timeouts are used with asynchronous
(nothing can be assumed about speed, load, systems for failure detection.
reliability of interconnections) However, additional measures have to be applied in
order to avoid duplicated messages, duplicated
No bounds on drift rates between local clocks. execution of operations, etc.
Important consequences:
What kind of faults can occur and what are their effects?
Intended processing steps or communications are Architectural models define the way responsibilities
omitted or/and unintended ones are executed. are distributed among components and how they
Results may not come at all or may come but carry are placed in the system.
wrong values.
We have studied three architectural models:
1. Client-server model
2. Peer-to-peer
3. Several variations of the two
Timing Faults
Interaction models deal with how time is handled
throughout the system.
Timing faults can occur in synchronous distributed Two interaction models have been introduced:
systems, where time limits are set to process 1. Synchronous distributed systems
execution, communications, and clock drifts. 2. Asynchronous distributed systems
A timing fault occurs if any of this time limits is
exceeded. The fault model specifies what kind of faults can
occur and what their effects are.
Fault models:
1. Omission faults
2. Arbitrary faults
3. Timing faults