• Aucun résultat trouvé

pr´ edicats de communication

2.2 Syst` emes ` a ´ echanges de messages et pr´ edicats de communication

2.2.2 Pannes par valeurs

Nous avons d´ecrit dans ce chapitre un grand nombre de syst`emes sujets `a des pannes b´enignes. Dans [38, 30], Pease, Shostak et Lamport ont introduit pour la premi`ere fois un nouveau type de pannes, commun´ement appel´ees pannes byzantines en raison de l’´enonc´e imag´e du Probl`eme des G´en´eraux Byzantins ´etudi´e par eux dans ces travaux. Un processus est dit byzantin s’il peut se comporter de mani`ere arbitraire.

Comme c’est le cas pour les pannes b´enignes, on peut distinguer deux types de pannes byzantines : des d´eviations par rapport `a la fonction de transition d’´etat, ou des d´eviations par rapport `a la fonction d’envoi de mes- sages. Alors qu’il est possible de couvrir toutes les pannes b´enignes par des pr´edicats de communication, les d´eviations arbitraires par rapport `a la fonc- tion de transition dans le cas byzantin, ou corruptions d’´etat, ne peuvent pas ˆetre exprim´ees comme des propri´et´es sur les communications. Nous nous attachons, dans la suite, `a pr´esenter des pr´edicats de communication corres- pondant `a des syst`emes dans lesquels seules des d´eviations par rapport aux fonctions d’envoi de messages peuvent intervenir.

Syst`emes synchrones. Pannes statiques. [30]

Lamport, Shostak et Pease consid`erent dans [30] le mod`ele ´el´ementaire en rounds pour les syst`emes synchrones afin d’´etudier des syst`emes synchrones sujets `a des pannes byzantines. Ils supposent qu’`a chaque round, chaque processus envoie un message `a chacun des autres et que si, au cours d’un round, un processus p ne re¸coit pas de message provenant d’un processus q, alors p se comporte comme s’il avait re¸cu de q une valeur arbitraire fix´ee. Les erreurs de transmission b´enignes sont donc couvertes ici par des erreurs de transmission par valeurs. On peut, dans le mod`ele HO, adopter la mˆeme approche dans le cas des pannes par valeurs en supposant HO(p, r) = Π, pour tout r > 0 et pour tout processus p ∈ Π, et en consid´erant des pr´edicats sur les collections

(SHO(p, r))r>0,p∈Π et non sur les collections

(HO(p, r); SHO(p, r))r>0,p∈Π.

Consid´erons un syst`eme synchrone comme celui d´ecrit dans [30] dans lequel au plus f processus sont fautifs. `A chaque round, chacun des n − f

processus corrects est correctement entendu par tous les autres, ce `a quoi correspond le pr´edicat de communication suivant, que nous notons PSKf :

PSKf :: |SK| ≥ n − f

Syst`emes synchrones. Pannes dynamiques. [42]

Comme nous l’avons pr´ecis´e, Santoro et Widmayer ([42]) ont d´efini un mod`ele en rounds pour l’´etude des syst`emes distribu´es, enti`erement couvert par le mod`ele HO. Nous avons, dans la sous-section 2.2.1, pr´esent´e deux pr´edicats de communication qui correspondent `a deux syst`emes sujets `a des pannes b´enignes consid´er´es dans [42]. Nous pr´esentons ici des pr´edicats de communication qui correspondent `a des syst`emes consid´er´es dans [42] dans le cas particulier des erreurs de transmission par valeurs.

Consid´erons tout d’abord un syst`eme synchrone dans lequel les transmis- sions sont continues, en ce sens qu’`a chaque round, chaque processus envoie un message `a chacun des autres, les erreurs de transmission sont des corrup- tions - le message re¸cu est diff´erent de celui qui a ´et´e envoy´e - et, `a chaque round r > 0, on d´enombre au plus f , f ≤ n2, erreurs de transmission.

Dans un tel syst`eme, la continuit´e des transmissions, combin´ee avec le fait que le syst`eme est synchrone, implique qu’`a chaque round r > 0, n2 transmis-

sions sont effectu´ees. D’autre part, puisqu’au plus f de ces n2 transmissions

effectu´ees au round r sont incorrectes, le nombre total de transmissions cor- rectes est sup´erieur `a n2− f , ce qui peut s’´ecrire

X

p∈Π

|SHO(p, r)| ≥ n2− f.

Ainsi,

Proposition 2.2.6 Le pr´edicat de communication qui correspond aux syst`emes synchrones dans lesquels les transmissions sont continues et tels qu’`a chaque round, au plus f transmissions sont incorrectes et sont des corruptions, est le pr´edicat de communication suivant, que nous notons PCf :

PCf : ∀r > 0, X

p∈Π

Dans leur ´etude, Santoro et Widmayer consid`erent aussi des syst`emes par- ticuliers dans lesquels, `a chaque round, les transmissions incorrectes forment un bloc, en ce sens que toutes sont initi´ees par un mˆeme processus, c’est-`a-dire des syst`emes tels que

∀r > 0, |AS(r)| ≤ 1.

Consid´erons un syst`eme semblable au pr´ec´edent mais tel qu’`a chaque round, les transmissions incorrectes forment un bloc. Puisque les transmis- sions sont continues et qu’`a chaque round toutes les transmissions incorrectes sont initi´ees par un unique processus p, tous les autres processus distincts de p sont correctement entendus par tous `a ce round. En d’autres termes, on a

∀r > 0, |SK(r)| ≥ n − 1.

De plus, puisqu’`a chaque round r, au plus f des transmissions initi´ees par p sont incorrectes, au moins n − f processus entendent correctement p `a ce round. Ainsi, il existe Πr ⊆ Π tel que |Πr| ≥ n − f et, pour tout processus q

de Πr, on a SHO(q, r) = Π.

En r´esum´e,

Proposition 2.2.7 Le pr´edicat de communication qui correspond aux syst`emes synchrones dans lesquels les transmissions sont continues et tels qu’`a chaque round, au plus f transmissions sont incorrectes, sont des corruptions et forment un bloc, est le pr´edicat de communication suivant, que nous notons PCf, bloc : PCf, bloc : ∀r > 0, ∃Πr ⊆ Π : |Πr| ≥ n − f ∧ ∀p ∈ Πr, SHO(p, r) = Π ∧ |SK(r)| ≥ n − 1

Nous terminons notre ´etude des syst`emes synchrones en consid´erant un syst`eme dans lequel les transmissions sont continues et tel qu’`a chaque round, au plus t transmissions sont des corruptions, et au plus f transmissions sont des omissions.

Si `a chaque round, les corruptions peuvent ˆetre initi´ees par plus d’un pro- cessus, elles ne peuvent l’ˆetre que par au plus t distincts. En d’autres termes, pour tout round r > 0, la r´eunion de tous les ensembles AHO(p, r) d’´ecoute alt´er´es est de cardinal au plus t, ou encore, |AS(r)| ≤ t. D’autre part, puis- qu’au plus f transmissions sont des omissions, on aP

p∈Π|HO(p, r)| ≥ n2−f .

On peut donc ´enoncer

Proposition 2.2.8 Le pr´edicat de communication qui correspond aux syst`emes synchrones dans lesquels les transmissions sont continues et tels qu’`a chaque round, au plus t transmissions sont des corruptions et au plus f transmis- sions sont des omissions, est le pr´edicat de communication suivant, que nous notons POCf, t : POCf, t : ∀r > 0, P p∈Π|HO(p, r)| ≥ n2− f ∧ |AS(r)| ≤ t

Syst`emes partiellement synchrones. Dwork et al. ([19]).

Nous avons pr´esent´e dans la sous-section pr´ec´edente le pr´edicat de com- munication correspondant aux syst`emes partiellement synchrones sujets `a des pannes crash d´ecrit dans [19]. Dans ce mˆeme travail, Dwork et al. d´ecrivent deux types de syst`emes partiellement synchrones sujets `a des pannes by- zantines. Pour chacun des deux syst`emes, Dwork et al. supposent que, dans toute ex´ecution, au plus f processus peuvent ˆetre byzantins et, de plus, qu’il existe un round appel´e GST `a partir duquel le syst`eme se comporte comme s’il ´etait synchrone, en ce sens que tout message envoy´e au cours d’un round r ≥ GST par un processus correct est re¸cu au round r. Dans le premier type de syst`emes, les messages peuvent ˆetre authentifi´es, en ce sens que chaque processus peut signer un message qu’il envoie et que les signatures ne peuvent pas ˆetre falsifi´ees ou imit´ees. Dans le deuxi`eme type de syst`emes, aucune hy- poth`ese d’authentification n’est faite. Cependant, Dwork et al. montre qu’il est possible d’impl´ementer une primitive de communication qui simule les propri´et´es v´erifi´ees par le m´ecanisme d’authentification.

Nous restreignons ici le type de pannes consid´er´ees en nous limitant aux d´eviations par rapport aux fonctions d’envoi. Nous imposons, de plus, que

tous les processus envoient un message `a tous les autres `a chaque round. L’hypoth`ese selon laquelle au plus f processus sont fautifs implique, d’une part, que la partie alt´er´ee AS de toute ex´ecution est de cardinal au plus ´egal `a f , ce `a quoi correspond le pr´edicat suivant, que nous avons pr´esent´e dans le Chapitre 1 :

Pfperm :: |AS| ≤ f

D’autre part, puisqu’au plus f processus sont fautifs dans chaque ex´ecution, tous les processus corrects sont entendus par tous `a partir du round r0

consid´er´e pr´ec´edemment, ce `a quoi correspond le pr´edicat suivant, que nous notons P⋄SKf : P⋄SKf :: ∃r0 > 0 : \ r≥r0 SK(r) ≥ n − f

Ces trois observations nous conduisent `a ´enoncer le r´esultat suivant :

Proposition 2.2.9 Le pr´edicat de communication qui, dans le cas particu- lier des erreurs de transmission par valeurs, correspond aux deux types de syst`emes partiellement synchrones d´ecrits dans [19], dans lesquels on sup- pose que chaque processus envoie un message `a chacun des autres `a chaque round et tels que, dans toute ex´ecution, au plus f processus sont fautifs est le pr´edicat suivant :

Pfperm ∧ P⋄SKf

Syst`emes asynchrones

Nous donnons ici deux pr´edicats correspondant `a des syst`emes asyn- chrones sujets `a des pannes de transmission par valeurs.

On consid`ere tout d’abord un syst`eme asynchrone dont les ex´ecutions ´evoluent en rounds sujet `a des pannes dynamiques et transitoires comme ceux qui sont d´ecrits dans [13]. `A chaque round, chaque processus re¸coit au plus f messages diff´erents de ceux qui auraient dˆu lui ˆetre envoy´es. Le pr´edicat correspondant est le suivant, que nous notons Pf :

Pf :: ∀r > 0, ∀p ∈ Π : |AHO(p, r)| ≤ f

Dans le cas o`u les pannes sont statiques, le pr´edicat correspondant est Pfperm, que nous avons ´evoqu´e dans le cas des syst`emes partiellement syn- chrones :

Notons que, pour f fix´e, Pfperm implique Pf.

R´ecapitulatif

syst`eme pr´edicat de communication Synchrone,

PSKf au plus f processus fautifs [30]

Synchrone, transmissions continues,

PCf au plus f corruptions [42]

Synchrone, transmissions continues,

Pf, blocC un bloc d’au plus f corruptions [42]

Synchrone, transmissions continues,

au plus t corruptions et POCf, t f omissions par round [42]

Partiellement synchrone,

Ppermf ∧ P⋄SKf au plus f processus fautifs [19]

Asynchrone,

pannes dynamiques Pf

et transitoires [13] Asynchrone,

pannes statiques Ppermf et transitoires [13]

Tab. 2.2 – Syst`emes `a ´echanges de messages et pr´edicats de communication correspondants : pannes par valeurs.

2.3

Pr´edicats pour la r´esolution de Consen-