From 8b65ea242a9beed37ea3c7013d18914ea0faad82 Mon Sep 17 00:00:00 2001 From: amaury Date: Tue, 11 Apr 2023 14:27:28 +0200 Subject: [PATCH] Rey18_chapitre1 --- recherches/Raynal18.md | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 recherches/Raynal18.md diff --git a/recherches/Raynal18.md b/recherches/Raynal18.md new file mode 100644 index 0000000..b104c2a --- /dev/null +++ b/recherches/Raynal18.md @@ -0,0 +1,44 @@ +# Michel Raynal - FAULT-TOLERANT DISTRIBUTED SERVICES IN MESSAGE-PASSING SYSTEMS + +## Definition +Fault-Tolerence: The service remains uninterrupted even if some component in the network fail. +Distributed System: A collection of computers (or nodes) that communicate amongst themselves [...] to perform a given task. +Distributed Computing: The use of a Distributed System to solve a computational problems. +Static system: The system composition is fixed. +Dynamic system: nodes may enter, leave or move in the system with time. +FLP impossibility result: It is impossible to design a distributed system that is both asynchronous and fault-tolerant. + +Data-Strcutures: + +- linearizability: a data structure is said to be linearizable if it guarantees that all operations appear to happen at a single pointin time between the invocation and response of the operation. +- Shared Register: [a data strcuture] that stores a value and has two opérations: read [...] and write. +- Fault-Tolerent Register: Linearizable (atomic) Shared register. + +Attacks: + +- crash: a node halts, but was working correctly until it halts. +- omission: a node fails to receive incoming messages or send outgoing messages. +- timing: a node's message delivery lies outside of the specified delivery time interval. +- Byzantine: Malicious attacks, operator mistake, software errors and conventional crash faults. +- churn: change in system composition due to nodes entering and leaving. + +Usefull terms: + +- shared memory/message-passing model +- synchronous/asynchronous systems +- static/dynamic systems + +## Chapter 1 + +He's began to define the terms of distributed systemsn and the possibles uses cases. +He define synchronous message-passing systems as giving the best guarantees. Opposite to asynchronous message-passing systems. + +### Failure Detectors + +He's defining te concept of Failure Detectors as an oracle able to identify the failed nodes. And how they can be used to circumvent the FLP impossibility result. +Actually the Failure Detectors needs a certain level of synchronicity to work. And two lines of research are proposed to solve this problem: The first one is to implement the Failure Detector on a increasingly weaker system model. And the second one is to find the weakest Failure Detector. + +### Fault-Tolerant Register + +He defined a "shared register" and explained how it's complicated to implementing them due to the possibility of faulty nodes. And he present the solution who's the Fault-Tolerant Register. He also present the "linearizability" property and how it's used to define the Fault-Tolerant Register. +Finally he introduce two implementation of the Fault-Tolerant Register: one who's crash-tolerent and the other one who's Byzantine-tolerent. \ No newline at end of file