SKR 5302: Advanced Distributed Computing
2. System Model: Distributed System
2.7. Failure Model
- Is a definition of in which way failures may occur in distributed systems
- Provides a basis for understanding the effects of failures
- Definition of the failure model of a service enables construction of a new service that hides the faulty behaviour of the service it builds upon
- example: TCP on top of IP
- TCP: reliable byte-stream service
- IP: unreliable datagram service
Specification of Failure Model
- Specification of failure models requires a way to describe failures
- Omission failures
- A process or channel fails to perform actions that it is supposed to do
- Arbitrary failures
- Process or channel may exhibit arbitrary behaviour
- Timing failures
Omission Failure
- Usual assumption that a server has “fail-stop” failure model
- the server crashes in a “nice” way
- it halts completely
- other servers may detect it has failed
- if the server nevertheless fails in a different way, the software that uses the server, may fail in unpredictable ways
- It is difficult to detect omission failures for processes in an asynchronous system
- Student → Do search example of cases for this failure type.
Arbitrary Failure (Byzantine failure)
- Process or channel may exhibit arbitrary behaviour when failing,
- send/receive arbitrary messages at arbitrary intervals
- a process may halt or perform “faulty” steps
- a process may omit to respond now and then
- By adopting a byzantine failure model, we can attempt to make systems that are “ultra-reliable” (handles HW failures, and provide guaranteed response times)
- control systems in air planes
- patient monitoring systems
- robot control systems
- control systems for nuclear power plants
Time Failure
- Applicable in synchronous distributed systems
- responses that are not available to clients in a specified time interval
- timing guarantees requires guaranteed access to resources when they are needed
- Examples: control and monitoring systems, multimedia systems
- Student → Do search example of cases for this failure type.
|