Consensus
Tous les processeurs doivent se mettre d’accord sur
une sortie en se basant sur leurs entrées qui ne sont
pas nécessairement les mêmes.
Exemple : Dans une base de données distribuées il
faut se mettre d’accord sur un commit ou un abort
d’une transaction.
Ce qui est important est que tous les processeurs ar-
rivent à la même conclusion. La décision prise est
moins importante.
En l’absence des défaillances, les processeurs peu-
vent voter et se mettre d’accord sur la valeur majori-
taire.
Les processeurs doivent se mettre d’accord sur une
valeur qui a un rapport avec les entrées - sinon le
problème est trivial - tout le monde décide 0.
1
Le problème : Le processeurs non défaillants doivent
se mettre d’accord sur la valeur d’un bit.
nprocesseurs p0,...,pn1
xiest l’entrée du processeur pi
yiest la sortie du processeur pi(i.e. la décision prise
par pi) Note : une décision est non réversible.
yi=ypour tout ipiest non défaillant.
2
Une solution au problème doit satisfaire les conditions
suivantes :
- termination - chaque processeur qui fonctionne
correctement doit prendre une décision (affecter
une valeur à yi)
- accord - tous les processeurs qui fonctionnent cor-
rectement décident de la même valeur (affecter la
même valeur à yi)
- validité - si tous les processeurs proposent la même
valeurv(xi=vpour tout i) alors chaque processeur
qui fonctionne correctement doit décider de cette
valeur (yi=v).
3
Modèle A :
- systéme synchrone
- commmunication par échange de messages
- chaque processeur peut envoyer un message à
chacun des autres processeurs (topologie du réseau)
- au plus fprocesseurs qui crash (Si un processeur
crash, un ensemble aléatoire de ses messages
est envoyé juste avant qu’il ne crash.)
- pas de défaillances en communication
4
Mesures de l’efficacité de la solution
- nombre de phases nécessaires (en fonction de f)
- taille maximum d’un message
- la f-robustesse - nombre maximum de processeurs
qui peuvent être défaillant (en fonction de n)
5
1 / 13 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !