• Aucun résultat trouvé

Derrière le consensus : coordination faiblement contrainte dans les systèmes distribués asynchrones

N/A
N/A
Protected

Academic year: 2021

Partager "Derrière le consensus : coordination faiblement contrainte dans les systèmes distribués asynchrones"

Copied!
189
0
0

Texte intégral

(1)

HAL Id: tel-00485704

https://tel.archives-ouvertes.fr/tel-00485704

Submitted on 21 May 2010

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

contrainte dans les systèmes distribués asynchrones

Corentin Travers

To cite this version:

Corentin Travers. Derrière le consensus : coordination faiblement contrainte dans les systèmes

dis-tribués asynchrones. Réseaux et télécommunications [cs.NI]. Université Rennes 1, 2007. Français.

�tel-00485704�

(2)

N

o

d'ordre:3661

THÈSE

Présentéedevant

devant l'Université de Rennes 1

pour obtenir

le gradede : Do teur de l'Université de Rennes 1

Mention Informatique

par

Corentin Travers

Équipe d'a ueil: asap

É ole Do torale:Matisse

Composante universitaire :IFSIC/IRISA

Titre de lathèse :

Derrière le onsensus :

Coordination faiblement ontrainte dans

les sytèmes distribués asyn hrones

soutenue le20novembre 2007 devant la ommission d'examen

M. : Patri e Quinton Président

MM. : Hagit Attiya Rapporteurs

Ra hid Guerraoui

MM. : A hour Mostéfaoui Examinateurs

Nir Shavit

(3)
(4)
(5)
(6)

Introdu tion 5

1 Cadre de l'étude 13

1.1 Modèles de systèmesdistribués . . . 13

1.1.1 Pro essus . . . 13

1.1.2 Médiumde ommuni ation . . . 14

1.1.2.1 Modèleà messages . . . 15

1.1.2.2 Mémoire partagée . . . 16

1.1.2.3 Rédu tion entremodèles . . . 16

1.1.3 Aspe tstemporels . . . 16

1.2 Déte teursde défaillan es . . . 18

1.2.1 Dénition . . . 20

1.2.2 Modèles hoisisetnotations . . . 22

1.3 Outillagealgorithmique . . . 22

1.3.1 Colle te . . . 23

1.3.2 Colle teordonnée ouAtomi snapshot . . . 25

1.3.3 Colle teordonnée immédiate(ImmediateSnapshot) . . . 27

1.4 Coordination danslessystèmes distribués . . . 29

1.4.1 Problèmes étudiés . . . 29

1.4.2 Forme généraled'unproblème dedé ision . . . 31

1.4.3 Cal ultolérant les défaillan es. . . 32

1.4.4 Rédu tion . . . 33

1.4.5 Cal ulabilité . . . 35

1.4.6 Di ultérelative desdiérents problèmes . . . 41

1.5 Résultats . . . 42

1.5.1 Organisationdu do ument . . . 44

2 Relations entre problèmes de oordination faible 47 2.1 Coordination faible . . . 48

2.1.1 Consensus ensembliste . . . 48

2.1.2 A ord surplusieurs frontsou dé isionde omité . . . 49

2.1.3 Test&Set ensembliste. . . 52

(7)

2.1.5 Parti ipating set . . . 54

2.2 Modèle etrédu tions . . . 55

2.3 A ord etrenommage . . . 58

2.3.1 (

k + 1, k

)-test&setet(

n, k

)-test&set . . . 58

2.3.2 Objet(

n, k

)-parti ipating-set . . . 60

2.3.3 Un algorithmede (

n, f

k

)-renaming adaptatif . . . 64

2.3.4 Du (

k + 1, f

k

)-renaming vers(

k + 1, k

)-test&set . . . 68

2.4 A ord etdé isionen omité. . . 69

2.4.1 Du (

n, k

)-a ord versle(

n, k

)- omité . . . 70

2.4.2 Une solutionsans attente au problèmedu (

[k], k

)-BG. . . 71

2.4.3 Restreindre le nombre de propositions : du (

n, k

)- omité-binaire versle (

[k + 1], k

)-BG . . . 74

2.4.4 Du (

n, k

)- omité-binaire versle(

n, k

)- omité . . . 81

2.4.5 Du (

n, k

)- omité vers(

n, k

)-a ord . . . 82

3 Composition de déte teurs de défaillan es 85 3.1 Une ménagerie dedéte teurs de défaillan es . . . 91

3.1.1 Lesfamilles

(3S

x

)

1≤x≤n

et

(S

x

)

1≤x≤n

. . . 91 3.1.2 La famille

(Ω

z

)

1≤z≤n

. . . 92 3.1.3 Lesfamilles

(3φ

y

)

1≤y≤n

et

y

)

1≤y≤n

. . . 92 3.1.4 Lesfamilles

(3ψ

y

)

1≤y≤n

et

y

)

1≤y≤n

. . . 93 3.2 Les lasses

φ

y

(3φ

y

)

et

ψ

y

(3ψ

y

)

sont équivalentes . . . 94 3.2.1 De

φ

y

(3φ

y

)

vers

ψ

y

(3ψ

y

)

. . . 94 3.2.2 De

ψ

y

(3ψ

y

)

vers

φ

y

(3φ

y

)

. . . 96

3.3 (

n, k

)-a orddans lemodèle

MP

n,t

[Ω

z

]

. . . 99

3.3.1 Un algorithmepour le (

n, k

)-a ord. . . 100

3.3.2 Preuvede l'algorithme . . . 100

3.3.3 Optimalité . . . 104

3.4 Compositiondes lasses

3S

x

et

y

. . . 104

3.4.1 Composant rouedu bas . . . 105

3.4.2 Roue duhaut . . . 109

3.5 Optimalité etimpossibilitésdes ompositions . . . 114

4 Vers une ara térisation algorithmique des déte teurs dedéfaillan es121 4.1 Le modèle

IIS

. . . 123

4.1.1 Notion depro essus orre tsdanslemodèles

IIS

. . . 127

4.1.2 Identierles plus petitssnapshots :get_smin

()

. . . 128

4.2 Restri tiondu domaine de lalutte:

IRIS(PR

C

)

. . . 130

4.2.1 Dénition desmodèles

IRIS(PR

C

)

. . . 131

4.2.2 Constru tions de

IRIS(PR

C

)

dansle modèlelire/é rire . . . 134

4.2.3 Simulation de

IRIS

(PR

3Sx

)

danslemodèle

SM

n,n−1

[3S

x

]

. . . 136 4.2.4 Simulation de

IRIS

(PR

y

)

danslemodèle

SM

n,n−1

[3ψ

y

]

. . . 137

4.2.5 Simulation de

IRIS

(PR

z

)

danslemodèle

SM

n,n−1

[Ω

z

]

. . . 140

(8)

4.3.1

3S

x

danslemodèle

IRIS(PR

3Sx

)

. . . 141

4.3.2

y

danslemodèle

IRIS(PR

y

)

. . . 142

4.3.3

z

danslemodèle

IRIS

(PR

z

)

. . . 143

4.4 Cara térisation . . . 143

4.4.1 Simulation de

SM

n,n−1

[C]

dans

IRIS

(PR

C

)

. . . 144

4.4.2 Cara térisation . . . 152

4.5 Appli ations. . . 153

4.5.1 (

n, z

)-a ord dans

IRIS(PR

z

)

. . . 154

4.5.2

z

par groupes:la lasse

z

x,q

. . . 156 4.5.2.1 La lasse

z

x,q

etlarestri tion

PR

z

x,q

. . . 156 4.5.2.2

SM

n,n−1

[Ω

z

x,q

]

vs.

IRIS

(PR

z

x,q

)

. . . 157

4.5.2.3 Borne pourle (

n, k

)-a orddans

SM

n,n−1

[Ω

z

x,q

]

. . . . 162

Con lusion 167

Bibliographie 169

(9)
(10)

Un système distribué est une olle tion de al ulateurs qui ommuniquent entre

eux. Par exemple, les ar hite tures multi-pro esseurs modernes, les réseaux lo aux de

stations de travail ou Internet sont des systèmes distribués. Un système distribué ou

réparti est don onstitué de deux types d'entités, les al ulateurs ou pro essus et un

système (appelé aussi médium) de ommuni ation. Du fait de leur nature répartie,

es systèmes sont sujetsà diérents typesd'in ertitude qui rendent non triviale, voire

impossible, larésolution denombreux problèmes simples.

In ertitudes Cesin ertitudespeuventgrossièrementêtre lasséesentrois atégories:

1. In ertitudetemporelle.Àladiéren ed'unsystème entralisé,iln'existepas

d'hor-loge globale à laquelle les pro essus peuvent se référer. D'autre part, les délais

d'exé ution d'une même a tion par diérents pro essus sont sujetsà de grandes

variations et sontsouvent imprévisibles. Enparti ulier, les temps detransfert de

donnéesentreles al ulateurssontsujetsàdegrandesvariations.Cesdélaisvarient

parexempleenfon tiondela hargelo aledelama hinesurlaquelleunpro essus

s'exé uteoudépendentdel'étatduréseau.L'estimationde esdélaismetdon en

jeu un grandnombre de paramètres et l'on préfère souvent faire l'hypothèse que

les systèmes sont purement asyn hrones. Les pro essus ont onnaissan e de leur

horlogelo ale,maisn'ont pasa ès àune horlogeglobale :leshorlogeslo ales ne

sont passyn hronisées par un périphérique extérieur.

2. In ertitude sur l'étatdu système. Il n'est pasréaliste de supposer quele système

ne onnaîtrapasde défaillan es.Pluslesystèmeest grand,pluslerisqueque des

omposantsmatérielsoulogi ielssoientdéfaillantsestimportant.Lesdéfaillan es

tou hentlespro essus(pannefran he, omportementbyzantin,parexemple)ainsi

que le médium de ommuni ation (perte de messages, orruption des données

transitant sur leréseau,et .).

3. In ertitudestru turelle.Cesdernièresannées,onassisteàunelargeaugmentation

du nombre d'entités inter onne tées au sein d'un même système (par exemple,

réseau de téléphonie mobile, système pair à pair, et .). Dans de tels systèmes,

les utilisateurs se onne tent par intermitten e et la stru ture du médium de

ommuni ationestsus eptiblede hangerau oursdutemps dufaitpar exemple

delamobilité desusagers. Enn, lenombred'entitésqui omposent lesystèmeà

(11)

lo ale del'ensembledu système.

Dans ette thèse,nousnousintéressonsprin ipalement auxin ertitudesdetype

1

et

2

.

Besoin de oordination La mise en ÷uvre d'un servi e au travers d'un système

distribué né essite un ertain degré de oordination entre les sites de al ul. Les sites

distantsee tuentdes al ulslo auxet ommuniquent entreeuxdanslebutderéaliser

une tâ he ommune. L'a omplissement du but ommun né essitelaprise de dé isions

ommunes. Par exemple, les pro essus doivent régulièrement se mettre d'a ord sur

l'étatd'avan ementdu al ulglobal,ousesyn hroniserpourréglerlesa ès on urrents

àdes stru turesdedonnée partagées.

Pourtenterdemettreenlumière ebesoinde oordinationetladi ultédesamise

en ÷uvre, onsidérons l'exemple suivant. Dans lesystème, il existe un ertain nombre

de ressour es

r

1

, . . . , r

α

. Pour mener à bien son al ul, haque pro essus doit a éder à l'une de esressour es en a ès ex lusif. Unpro essus ne her he pasà a quérir une

ressour e parti ulière. Il s'agitsimplement de garantir qu'à haqueinstant, au plusun

pro essusutiliseuneressour edonnée.Parexemple,lesystèmeest omposéd'avionsen

appro he d'unaéroport. Pour éviter les ollisions, haque avion doit hoisir un ouloir

aérien ex lusif.Ou,plus prosaïquement,il s'agitd'attribuer despla es deparkingàun

ensemblede véhi ules.

Une façon simple de résoudre e problème est de désigner une entité parti ulière,

le oordonnateur, quisera hargé d'attribuerles ressour esauxpro essusdemandeurs.

C'est le rle de la tour ontrle de l'aéroport. Cependant, dans ette ar hite ture

en-tralisée le degré de toléran e aux défaillan es est faible puisque lapanne de l'autorité

entrale entraîne l'é roulement ompletdu système.

Pour éviter ela,uneidéenaturelle onsisteà répliquerle oordonnateur :plusieurs

ma hines assurent lafon tion oordinatri e dansle but de pallier à l'arrêt inopiné du

oordonnateur. Dansla répli ation passive,le oordonnateur sauvegarderégulièrement

sonétat ourant (quellessont lesressour esutiliséesetpar qui)surun ensemblede

ré-pli as. S'iltombeen panne,l'undesrépli as est hoisipourprendrelerelais.Ilreprend

l'exé ution à partirdu dernierétat sauvegardé. Cette te hnique né essitedon la

dé-nition de points de reprise ohérents. Remarquons également qu'une partie du travail

ee tuépeutêtreperdue.Eneet,ilestpossiblequelesdernièresa tionsee tuéespar

le oordonnateur avant de défaillir n'apparaissent pasdans le dernier point de reprise

sauvegardé. Ainsi, ette solution estinadaptée à lagestiondu tra aérien.

Larépli ation a tiveviseàtolérerlesdéfaillan esdefaçontransparente.Cha undes

répli as,aulieudesto kerpassivementlesétatssu essifsdu oordonnateurse omporte

ommele oordonnateur. Pour maintenir la ohéren e de l'allo ation desressour es, il

estné essairedemaintenirune oordinationforteentrelesrépli as.Pours'enaper evoir,

envisageonsquelpourraitêtreletraitement d'unedemanded'attributionde ouloirpar

un répli a

m

.

m

ne peut unilatéralement attribuer un ouloir

r

i

au demandeur. En

eet, un autre répli a pourrait attribuer en même temps la même ressour e

r

i

à un

(12)

répli as doivent don semettre d'a ord sur l'attribution des ressour esaux pro essus

ousur l'ordrede traitement desdemandes.

Enn, unedernièresolution onsisteàsepasser omplètement de oordinateur.Les

demandeursee tuentunalgorithmedé entralisépourgérerl'attributiondesressour es.

L'existen e d'untel algorithmen'est a prioripasévidente. En eet,dansle asleplus

défavorable,lesdemandeurssontsus eptiblesdetomberenpanneinopinémentetles

dé-laisde ommuni ationsontimprévisibles.Lessolutionsdutypeattendrelapermission

del'ensembledesautresdemandeursavant d'a quériruneressour esont don vouées

à l'é he . Il s'avère que l'existen e d'unesolution dé entralisée est onditionnée par le

rapportdunombrederessour esdisponiblesaunombrededemandeurs.Parexemple,si

l'onsupposequ'àtoutmoment auplus

3

avionssont enappro hedel'aéroport,ilsut de prévoir

7

ouloirs aériens. Il a également été montré que e nombre est né essaire. Autrement dit, il n'existepas d'algorithme dé entralisé qui résout e problème pour

3

pro essussus eptibles desubirdesdéfaillan esdansunenvironnement asyn hrone sile

nombre de ressour esestinférieur à

7

.

Maîtriserl'in ertitude Nousvoyonsàtravers etexemplesedessinerlebesoindese

mettre d'a ord.Un problèmeélémentaire,briquefondamentale delamiseen÷uvrede

servi esdistribués tolérant lesdéfaillan es est appelé le onsensus. Sa spé i ation est

très simple. Les pro essus proposent initialement une valeur et doivent s'a order sur

unevaleur ommune hoisieparmilespropositions initiales.Malheureusement, l'undes

résultatsfondamentaux du al ul distribué [48 ℄ est négatif : il n'existe pasde solution

déterministe quitolère lespannes lorsquele systèmeesttotalement asyn hrone.

Plus généralement, un pan de la théorie du al ul distribué est onsa ré à l'étude

de la al ulabilité : quels sont les problèmes qu'il est possible de résoudre en

environ-nement distribué.C'est une question trèsvaste.Il existe eneet une grandevariétéde

modèlesdesystèmesdistribuésquireètentdiérenteshypothèsessurl'ar hite turedu

réseau,lemédiumde ommuni ation oule omportement despro essus défaillants. De

plus, hanger l'un des paramètres du modèle peut entraîner une diminution drastique

de la lasse des problèmes qu'il est possible de résoudre. Par exemple, si le médium

de ommuni ation garantit un délai maximal sur le temps de transfert des messages,

l'impossibilitédu onsensusne tientplus.

Un aspe t marquant de ette théorie estle nombre onsidérablede résultats

néga-tifs.Dans[47℄,Fi hetRupperénumèrentplusieurs entainesderésultatsd'impossibilité

pour diérentsmodèles.Enquoi esrésultatssontimportantspourle al uldistribué?

Ilsnousaidentà omprendrel'essen edu al uldistribué:pourquellesraisons ertains

problèmessontdi iles,quelle ara téristiquerendunmodèlepuissantet omment des

modèles diérentsse omparent. Ils indiquent quellessont les appro hes qui

n'abouti-rontpaslorsquel'on her he unesolutionàunproblèmedonné.Sileproblèmedoitêtre

résolu, la preuve de son impossibilité suggère des dire tions pour modier légèrement

saspé i ationou omment renfor erlemodèlepourobtenir une solutionraisonnable.

(13)

algo-Coordination faible en environnement asyn hrone Cette thèse ontribue à la

théorie du al ul distribué tolérant les défaillan es. Nous nous plaçons dans un

envi-ronnement asyn hrone (ni les délais de transmission des données, ni les vitesses des

pro essusnesont onnus)danslequellespro essussont sus eptiblesde s'arrêter

inopi-nément(pannefran heou rash).Dans e ontexte,les her heursontformuléplusieurs

problèmessimplesqui apturentdiérentss hémasde oordination.Nousavons

ren on-trédeux problèmesqui rentrent dans ette atégorie :le onsensus quirequiert queles

pro essuss'a ordent surl'unedespropositionsetl'allo ation deressour es.Les héma

d'allo ation de ressour e esquissé i-dessus est onnu sous le nom du problème du

re-nommage.Chaqueparti ipant possèdeinitialement unidentiantuniqueappartenantà

unvasteespa e etdoitséle tionner unnouveau nomunique dansunespa e pluspetit.

Quelles sont, du point de vue de la al ulabilité, les relations entre es deux

pro-blèmes?Ilest lairqu'à partird'unesolution auproblèmedu onsensus,il estpossible

de onstruire un algorithme pour le renommage - les pro essus semettent

su essive-ment d'a ordsurl'attributiondesnoms.Enfait,ilaétémontréqu'unobjet onsensus

( 'est-à-dire une boîte qui résout e problème) est universel [69℄. Dans un système

munid'objets onsensus, toutproblèmequi possèdeune spé i ation séquentiellepeut

être résolu. Au ontraire, la oordination oerte par un objet renommage est

stri te-ment plusfaible :ilesten général impossiblede résoudrele onsensusà l'aided'objets

renommage. Par opposition au onsensus, nous dirons que le renommage est un

pro-blème de oordination faible. Nous nousintéressons aux relations, du point de vue de

la al ulabilité, entrediérentes in arnationsde la oordinationfaible.

Puisque le onsensus est, en un ertain sens,universel, il est naturel de lasser les

problèmesoulesobjetsparrapportau onsensus.Danslahiérar hie du onsensus [69 ℄,

le rang 1

d'un objet

O

est leplus grandnombrede pro essus pour lesquelsil existe un algorithme,solution auproblèmedu onsensus, quiutilisedesobjets

O

.Enparti ulier, unobjetderang

1

n'estd'au uneutilitépourrésoudreleproblèmedu onsensus.Unmot mémoireatomiqueapourrang

1

.Quelestlerangdurenommagedans ettehiérar hie? Laréponsedépend du ardinaldel'espa edesnouveauxnoms.Danslemeilleurdes as

(taille de l'espa e = nombre de parti ipants), le rang du renommage est

2

. Dès que

l'espa e de renommage est supérieur au nombre de parti ipants, le rang s'eondre et

devient

1

. Plus généralement, nous nous intéressons à la lasse des problèmes qui ne sontpas apturéspar lahiérar hiedu onsensus.Lerangd'unobjetquiimplémenteun

problème de ette famille est au mieux

2

, en fon tion des valeurs des paramètres qui

le dénissent. Le grain de la hiérar hie du onsensus n'est pas susamment n pour

établir des relations entre es problèmes. Ainsi, du seul rang du renommage et d'un

motmémoire,il estimpossible d'endéduirel'existen e oul'impossibilitéde résoudrele

renommage àl'aide demots mémoires.

Le problème emblématique de ette famille, qui a reçu une attention onsidérable

dans la littérature est l'a ord ensembliste. De même que pour le onsensus, haque

pro essus doit dé ider une valeur séle tionnée parmi les propositions initiales.

Cepen-1

(14)

dant, lapropriété d'a ord estmoins ontrainte puisquele nombrede valeursdé idées

olle tivement est borné par

k

k

est un paramètre du problème. Ce paramètre

k

ara tériseen un ertainsens ledegré de oordination. Pour

k = 1

,nousretrouvons le

problèmedu onsensus.

Parallèlement,destravauxont her héàquantierl'in ertitudeinhérenteaumonde

distribué en paramétrant les modèles. Ainsi, un paramètre souvent pris en ompte est

uneborne

t

surlenombremaximaldepannessus eptiblesdeseproduire.Ceparamètre

ara térise dans une ertaine mesure le degré d'in ertitude du modèle. On omprend

alorsmieuxl'intérêtportéàl'a ordensembliste.Étudierla al ulabilitéde eproblème,

en fon tion des paramètres

t

et

k

promet d'obtenir une meilleur ompréhension de la

di ultédela oordinationenenvironnement distribué.Defait, ettelignedere her he

aétéfru tueuse.Elleanotammentétéàl'originedel'introdu tiondeste hniquesissues

de latopologie danslemonde du al uldistribué. Ces te hniques ont donné naissan e

à une nouvelle façon d'appréhender le al ul distribué, omme déformation d'espa es

topologiques.Les déformationsautoriséesdépendentde lapuissan e desobjetsdont le

modèle est équipé, ou du degré d'in ertitude (syn hrone ou asyn hrone, borne sur le

nombre de défaillan es, et .). Le prin ipal résultat est le suivant : en environnement

asyn hrone,il existe unesolution à l'a ordensembliste si, etseulement si,

k > t

.

Contributions Cettethèseexplorelaquestionsuivante:Queldegréde oordination

peutêtre atteint enfon tion du degréd'in ertitude du systèmessous-ja ent?

 Le hapitre2explorelesrelationsentrediérentss hémasde oordination:a ord

ensembliste,renommageet onsensussimultanés.Ils'avèrequemalgréleurnature

apparemment diérente, ilexiste une ertaineunité entre es problèmes.

 Le hapitre3 omparelesdiérenteshypothèsesexpriméesdansleformalismedes

déte teurs dedéfaillan es quipermettentde ir onvenirl'impossibilitédel'a ord

ensembliste.

 Enn, dans le hapitre 4 nous her honsà unier l'appro he déte teurs de

dé-faillan es et la vision topologique de l'algorithmique distribuée. Les deux

appro hes visent, dans des adres abstraits diérents, à maîtriser l'in ertitude

danslebutde oordonnerdespro essusauseinde systèmesrépartis.Nous

défen-dons l'idée qu'un adre unié fa ilite la on eption d'algorithmes fondés sur les

déte teurs dedéfaillan esainsiqueladémonstrationderésultatsd'impossibilités.

Les paragraphes qui suivent développent les points i-dessus et pré isent la démar he

adoptée.

L'a ord ensembliste n'est qu'une fa ette des s hémas de oordination. Le

renom-mage abstrait un autre s héma de oordination, en apparen e de tout autre nature.

Nousintroduisons également un nouveau s héma, qui aaiblitle onsensusmais d'une

façon diérente. L'idée est de onsidérer plusieurs instan es du onsensus en parallèle,

haque pro essus devant dé ider dans au moins l'une de es instan es. Là en ore, e

problème ne peut être ara térisé nement dans la hiérar hie du onsensus (son rang

est

1

)etnousnousinterrogeonssursadi ultérelativeparrapportauxdeuxproblèmes évoqués pré édemment. Quelles sont les relations entre es problèmes? À partir d'une

(15)

paramètres qui entrent dans laspé i ation (bornesur le nombrede valeursdé idées,

taille de l'espa e de renommage ou nombre de onsensus simultanés)? Ces questions

sont développées dans le hapitre 2. Nous montrons que malgré leur nature a priori

diérente, ilexiste un lienfort entre esproblèmes.

La démar he que nous défendons i i est purement algorithmique. Nous her hons

à pro éder par rédu tions, une démar he lassique dans le monde séquentiel. Au lieu

d'adapterles démonstrations d'impossibilitéexistantes oud'en on evoir de nouvelles,

nous her hons à établir les impossibilités par rédu tion algorithmique en des

résul-tats onnus. Onpeut dresser un parallèle ave l'étude de la lasse des problèmes

NP- omplets. Lapremière démonstration de l'existen ede problèmes NP- omplets [38 ℄

re-posesurl'utilisationdema hinesdeTuring. Par analogie,ladémonstrationde

l'impos-sibilitédel'a ordensemblistereposesurl'utilisationd'outilsmathématiquesissusdela

topologiealgébrique.Par ontre,iln'estpasné essaired'êtreunexpertdansla

manipu-lationdesma hines deTuringpourmontrerqu'un problèmeest omplet dansla lasse

NP.Onpréférerapro éderpar rédu tionalgorithmiqueàpartir deproblèmessimilaires

dont l'appartenan e à ette lasse est onnue. On souhaiterait qu'il en soit de même

danslemonde distribué.De e point de vue, ette thèseenri hit leGarey-Johnson

[60 ℄ dudistribué enintroduisant de nouveaux problèmesainsique deste hniques

algo-rithmiques originales.

Dans une deuxième partie, nous étudions les relations entre les diérents modèles

danslesquelsil existedessolutions auxs hémasde oordinationmentionnés

pré édem-ment.Unmodèledé ritlemédiumde ommuni ationetle omportement despro essus

en temps normal ainsi qu'en as de défaillan e. Il borne également l'in ertitude. Par

exemple, il peut spé ier le nombre maximal de pro essus défaillants (paramètre

t

), desbornes sur les temps de transfert des messagesou sur lavitesse despro essus. Un

formalisme puissant pour exprimer es diérentes restri tions est elui des déte teurs

de défaillan es [30℄.L'idée est d'enri hir le modèle omplètement asyn hrone ave des

ora les qui fournissent des informations relatives au motif des défaillan es de

l'exé u-tion ourante.Cesora lessontspé iéspardespropriétésabstraitesparoppositionsaux

propriétés physiques duréseau sous-ja ent.La pertinen edesinformationsfournies est

supposée abstraire des propriétés de syn hronie du système sous-ja ent. Par exemple,

un ora le déte teurde défaillan esindiquera lalistedespro essus défaillants. Dansun

systèmes syn hrone (les délaisde transmissiondes messagessont bornés et onnus), il

estfa iledemettreen÷uvreuntel déte teuràl'aided'envois périodiquesdemessages

je suis vivantet délaisdegarde.

Danslalittérature, plusieursfamillesdedéte teursontétéintroduitesdanslebutde

résoudrel'a ord ensembliste. Dansle hapitre 3,nousétudions esdiérentes familles

et her honsàles lasser.Nousrépondonsàdesquestionsdutype:Étant donnésdeux

déte teurs

C1

et

C2

, est-il possible de mettre en ÷uvre

C1

à l'aide de

C2

? Peut-on les ombiner pour obtenir undéte teur

C

plus puissant?Pluspuissant s'entendi i omme undéte teuràl'aideduquel ilestpossiblederésoudreunproblèmeplusdi ile queles

problèmes qu'il estpossible de résoudreen utilisant uniquement

C1

ou

C2

.

(16)

impossibles àrésoudre possèdent maintenant des solutions.Intuitivement, l'adjon tion

del'ora leentraîneladiminutiondel'in ertitude.Cependant,lanaturede ette

restri -tion demeure in onnue. D'autre part, l'appro he topologique a amené ladénition

de modèles dans lesquels les exé utions sont hautement stru turées. Ces modèles

fa- ilitent l'examen de l'ensemble des exé utions possibles et don aident à établir des

résultatsd'impossibilité.Dufaitdeleurgrandestru ture,ilestplusfa iled'obtenirdes

résultats positifs en onstruisant des algorithmes. Dans le hapitre 4, nous her hons

à mieux omprendre omment les déte teurs restreignent l'in ertitude du système en

étendant esmodèles stru turéspour prendreen ompte lesdéte teurs de défaillan es.

Nous pensons également que ette appro he pourraitêtre bénéque pour lare her he

(17)
(18)

Cadre de l'étude

Dans e hapitre, nous dénissons les modèles de systèmes que nous utiliserons et

pré isonslesnotionsévoquéesdansl'introdu tion.Nousintroduisonsd'abordlemodèle

de al ul dans leparagraphe 1.1. Le paragraphe 1.3 présente l'outillage algorithmique

ayant trait à la syn hronisation d'informations globales. Pour résoudre un problème

donné, il est souvent utile que les pro essus obtiennent des vues des informations qui

nedièrent pastrop.Lesprimitives, onstruitesàpartirdesopérationsde basedes

modèles hoisis, permettent l'obtention de telles vues. La paragraphe 1.4 formalise la

notion de problème de oordination etprésente su in tement les prin ipaux résultats

liésàla al ulabilitéde problèmes d'a ord usuels.Enn, le paragraphe 1.5résumeles

prin ipaux résultatsobtenus au oursde ette thèse.

1.1 Modèles de systèmes distribués

Notre étude se déroule dans les modèles standards du al ul distribué. Nous

ren-voyons lele teurà [121, 82℄pour une présentation exhaustive et détaillée.

1.1.1 Pro essus

On onsidère un système statique, 'est-à-dire omposé d'un nombre ni

d'enti-tés de al ul ou pro essus. Les pro essus sont indexés de

1

à

n

(

n > 1

). On notera

Π = {p

1

, . . . , p

n

}

l'ensemble despro essusqui omposent lesystème. L'index

i

du pro- essus

p

i

n'est pas né essairement onnu de

p

i

. Cet index simplie la des ription des algorithmes etla présentation desdémonstrations.

Lespro essusnesontpasanonymes.Chaquepro essuspossède uneidentité propre.

Par exemple, un pro essus peut être identié par le ouple (adresse IP, numéro de

port) dansun réseau lo al. L'identité

id

i

est initialement onnue de

p

i

mais n'est pas

né essairement onnu des autres pro essus. On supposera ependant que les identités

sont deux à deux distin tes et totalement ordonnées (par exemple, les identités sont

tiréesparmilesentiersnaturels).Lorsquetouteslesidentitéssontinitialement onnues,

(19)

Poursimplierlaprésentationdumodèle,onsupposequ'ilexisteunehorlogedis rète

globaleet ommuneàtouslespro essus.Ils'agitd'unpériphérique tif:lespro essus

n'yontpasa ès.

T

désignel'ensembledesvaleurspouvantêtreprisespar ettehorloge. On onfond

T

ave l'ensemble desentiers naturels.

Défaillan e des pro essus Il estpeuréalistede onsidérer quetousles omposants

d'un système sont ables. Plus on augmente le nombre de ma hines ou le nombre de

programmes, pluslaprobabilitéd'unefautematérielle oulogi ielle estimportante. Les

pro essus sont sus eptibles de onnaître des défaillan es. Dans ette thèse, nous nous

limitons aux défaillan es de type panne fran he ou rash. Dans e modèle de faute,

un pro essusdéfaillant arrête soudainement d'exé uterle ode quilui aété attribuéet

n'ee tue alors au un al ul. En parti ulier, il esse de ommuniquer ave les autres

pro essus.Étantdonnéeuneexé ution,unpro essusestdit orre t s'ilnetombepasen

panne au oursde ette exé ution. Dansle as ontraire, il est ditfautif ou défaillant.

Le paramètre

t

, (

0 < t < n

) dénote le nombre maximal de pro essus défaillants dans

toute exé ution. Dans une exé ution donnée, nous noterons

f

(

0 ≤ f ≤ t

) le nombre

ee tifde pro essusdéfaillants.

Motif de défaillan es Unmotif de défaillan e

F

estune fon tion de

T

vers

2

Π

,où

F (τ )

représente l'ensembledes pro essusdéfaillants à l'instant

τ

.Dès qu'un pro essus tombe en panne, il ne peut reprendre son a tivité, d'où l'in lusion

∀τ ∈

N : F (τ ) ⊆

F (τ + 1)

Nousnotons

F

l'ensemble desmotifsde défaillan es.

Soit

F ∈

F

.L'ensemble des pro essus fautifs

Fautif

(F )

dans le motif

F

est déni par

Fautif

(F ) = ∪

τ∈T

F (τ )

.Demême,l'ensembledespro essus orre ts

Correct

(F )

est dénipar

Correct

(F ) = Π−Fautif (F )

.Unpro essus

p

i

∈ F (τ )

/

estditvivant àl'instant

τ

etdéfaillant dansle as ontraire.

La notiond'environnement

E

ara térise lesmotifsdedéfaillan eadmissibles. Nous onsidéronsprin ipalement l'environnement

E

t

qui ontienttouslesmotifsdanslesquels auplus

t

pro essussontdéfaillants.Formellement,

E

t

= {F ∈

F : |Fautif (F )| ≤ t}

.Pour

F ∈ E

t

, le ardinal de l'ensemble des pro essus fautifs

Fautif

(F )

est noté

f

(

0 ≤ f ≤

t

). On supposera également l'existen e d'au moins un pro essus orre t ainsi que la possibilitéd'au moinsune défaillan e,i.e.,

1 ≤ t ≤ n − 1

.

1.1.2 Médium de ommuni ation

Une autre ara téristiqueimportantedessystèmesdistribuésestl'interfa e de

om-muni ation. Ondistingue prin ipalement deux modèles de ommuni ation :passage de

messages et mémoire partagée. Dans le premier modèle les pro essus ommuniquent

en s'é hangeant des messagesqui transitent via un réseau de ommuni ation. Dans le

(20)

1.1.2.1 Modèle à messages

Dans e modèle, les pro essus ommuniquent en s'é hangeant des messages. Les

pro essussont reliés par des anaux de ommuni ation dont l'interfa e omportedeux

primitives :

 send

(msg)

envoiele message

msg

surle anal onsidéré.

 re eive

()

retourne lepremiermessage danslaled'attentedu anal.

Nous ne faisons d'hypothèse ni sur l'ordre de ré eption des messages ni sur les délais

de transmission. Cependant, haque anal est able : il ne perd, n'altère nine rée de

nouveaux messages. En parti ulier, si

p

i

envoie un message

m

alors le destinataire le re evraàmoinsqu'ilnedéfaille.Noussupposonsquelatopologieduréseauestlegraphe

omplet. Chaque paire de pro essus est don onne té par un anal. Cette hypothèse

est assez réaliste ar on ne s'intéresse pas à la omplexité du routage. Sur un réseau

omme Internet, deuxpro essuspeuvent ouvrirune onne tions'ils lesouhaitent.

Laprimitivedediusionbroad ast

(m)

estunra our ipourle odesuivant:forea h

j ∈ Π

dosend

(m)

to

p

j

enddo.Sil'émetteur

p

i

défailleau oursdel'exé utionde ette bou le,

m

n'est peutêtre pasenvoyé à ertains pro essus. Pour pallier e problème et danslebutdesimplierla on eptiondesalgorithmes,nousenri hissonslemodèleave

une primitive de diusion able [67 ℄. L'abstra tion diusion able ore deux

primi-tivesR_b ast

(m)

/R_deliver

()

quipermettent auxpro essus de diuseret re evoir des messages(Nousdirons alors qu'un pro essus

R

_diuse ou

R

_livre unmessage

m

).

Uneprimitivedediusionable 1

R_b ast

()

/R_deliver

()

estdénieparlespropriétés suivantes :

Dénition 1.1 (Diusion able) LapairedeprimitivesR_b ast

()

/R_deliver

()

dela diusionable satisfait(les messages sontsupposés uniques):

 Validité Si unpro essus

R

_livre

m

alors unpro essus apré édemment

R

_diusé

m

;

 Intégrité Un pro essus

R

_livre un message

m

au plus une fois;

 Terminaison Si un pro essus orre t

R

_diuse un message

m

alors il

R

_livre le

message

m

;

 A ord Si un pro essus

R

_livre

m

alors

m

est

R

_livré par tous les pro essus orre ts.

Ladiusionableimposedon quelespro essuss'a ordentsurlesmessageslivrésmais

n'impose pas d'ordre sur la livraison des messages. De même, es primitives n'orent

pasdegarantietemporelles.Un message

R

_diusé serareçupar un pro essus orre t, ependant ledélai de transmissionn'est pas onnu nibornéa priori. On observe enn

que les pro essus orre ts livrent le même ensemble de messages

E

. Par ontre l'en-semble des messages

R

_livrés par les pro essus fautifs est un sous-ensemble de

E

. Il estpossibled'implémenter lesprimitivesR_b ast

()

/R_deliver

()

àpartir desprimitives debasesend

()

/re eive

()

entolérant unnombrequel onquede pro essusfautifs [67℄.On n'augmentedon paspuissan ede al uldumodèleensupposant queles pro essusont

a èsaux primitives R_b ast

()

/R_deliver

()

. 1

(21)

p

1

p

2

p

3

p

4

zoneex lusive de

p

1

zoneex lusive de

p

3

zoneex lusive de

p

2

zoneex lusive de

p

4

M

M

[1]

M

[2]

M

[3]

M

[4]

write

()

read

()

Fig. 1.1 Mémoirepartagée à é rivainunique,

n = 4

1.1.2.2 Mémoirepartagée

Dans un modèle à mémoire partagée, lespro essus partagent une entité ommune,

la mémoire. Pour simplier le raisonnement, nous supposons que ette mémoire est

omposée en registres atomiques ommuns [69 , 80℄. Nous onsidérons dans ette étude

desregistresàé rivain unique.Chaqueregistre nepeutêtreé ritqueparun pro essus

donné.La mémoire peutêtrevue ommeuntableau

M

diviséen

n

zones, haque zone

orrespondant àlazoned'é riture d'unpro essusdonné.Un telsystèmeestreprésenté

danslagure1.1.

1.1.2.3 Rédu tion entre modèles

Dans ette thèse,nousnousintéressonsprin ipalement àla al ulabilité.À etitre,

unequestionnaturelleestlapuissan erelativedesdeuxmodèlesexposés i-dessus.Etant

donné unproblème

P

quel'onpeutrésoudredansl'undesmodèles de ommuni ation,

peut-onlerésoudre dansl'autremodèle de ommuni ation?

Il n'est pas di ile de se onvain re que dansle modèle à mémoire partagé, il est

aisé de simuler lemodèle à passage de messages. Par exemple, haqueregistre

R[i]

est diviséen

n

zones.Poursimulerl'envoid'unmessage

m

vers

p

j

,

p

i

é rit

m

dansla

i

-ième zonede

R[i]

.

p

j

peutalorsobtenirlesmessagesquiluisontadressésenobservant ha un desregistres.

Dansl'autredire tion,ilaétémontré omment onstruireunregistreatomiquedans

lemodèleàpassagedemessages[14℄.Cependant, ettesimulationrequiertunemajorité

de pro essus orre ts(

t <

n

2

).

1.1.3 Aspe ts temporels

Dans le asd'un système entralisé, on supposeen général qu'il existe une horloge

globalea essible par les pro essus, qui permet dedater de façon univoqueune a tion

(22)

Systèmes syn hrones Dans le modèle syn hrone [36 ℄, les pro essus exé utent des

rondes su essives.Durant haque ronde, les pro essus ommuniquent entre euxet

ef-fe tuent des al uls lo aux. Lorsqu'un pro essus termine la ronde

r

, il a la ertitude qu'à etinstant tousles pro essus orre ts qui parti ipent au proto oleont également

terminé ette ronde. Ce modèle est très puissant : il est possible de résoudredes

pro-blèmesquel'onnepeutpasrésoudredansd'autresmodèles(typiquement,le onsensus

peut être résolu dans e type de système [82 ℄). La propriété d'un système syn hrone

estqu'il existe une bornesupérieure sur letemps de transmission desmessages etune

borne maximale surle temps d'exé ution d'uneétape de al ul. Deplus, les pro essus

onnaissent esbornesetdisposentd'horlogessyn hronisées.Ladéte tiondespro essus

défaillantsestdon fa ilementmiseen÷uvreparunmé anismedetypedélaisdegarde.

Cependant, en dehors de ertaines ar hite tures dédiées, il est souvent impossible

d'établir des bornes supérieures utilisables sur le temps de transfert des messages ou

letemps d'exé ution despro essus. Néanmoins,dansle adreplus théorique de la

al- ulabilité, il estintéressant de re her her dessolutions algorithmiques dans e modèle.

Un résultatd'impossibilité s'étendraimmédiatement danstoutmodèle qui autoriseun

omportement syn hrone. De plus, il existe un lien fort entre e a ité syn hrone et

degréde toléran e auxfautesdanslemodèleasyn hrone[50 , 101 ,91℄.

Systèmes asyn hrones Dans un système asyn hrone, il n'existe pas de bornes sur

les temps de al ul, de transmission desmessages ou de le ture/é riture des registres.

Ce modèle est simple et orrespond aux observations des systèmes réels. En eet, en

fon tion dela harge duréseau ou despro esseurs, lestemps de al ulou les délaisde

transmissions sont variableset di ilesà prévoir. Bien queplus réalisteque lemodèle

syn hrone, lemodèle asyn hrone sourede satrop grandegénéralité :ilest très faible

etdenombreux problèmes n'ont pasde solution dans e modèle.

Danslemodèlesyn hrone, l'é oulement dutemps oreunrepère ommunaux

pro- essus.Par ontre,dansle aspurementasyn hrone,seulel'interfa ede ommuni ation

peutorirun telrepère. Plus e médiumore degaranties, plusles algorithmesseront

simples et e a es. À titre d'exemple, le médium de ommuni ation peut assurer un

ordresurlalivraisondesmessages,lapersistan edesdonnéesenvoyéesouune

syn hro-nisationplusou moinsfortesurlesvues su essivesde esdonnées. Pluslemédiumde

ommuni ation ore de garanties, plus la on eptiond'algorithmes sera fa ilitée. Nous

verronsdansleparagraphe 1.3diérentesprimitivesde ommuni ationquiorentplus

oumoins degaranties.

Entre syn hrone et asyn hrone Les modèles syn hrones et asyn hrones

repré-sententdeuxextrêmesdansl'ensembledesmodèlespossibles.Danslemodèlesyn hrone

pur,tousles paramètres temporelssont bornés et esbornessont onnues. Àl'inverse,

rienn'est onnu sur les paramètres temporelsdansles modèles asyn hrones purs.

Plu-sieursmodèlesditspartiellementsyn hrones ontaussiétéproposésandeserappro her

du omportement d'unsystèmeréel.

(23)

 Dans un premier modèle, il existe des bornes sur les délais de transmission des

messagesou le temps né essairepour ee tuer un pas de al ul. Cependant, es

bornes ne sontpas onnuespar les pro essus.

 Dansune autreversion, lesystèmese omportede façonsyn hroneà partir d'un

ertaintemps appeléGST (pour Global Stabilization Time).

Les auteurs étudient ha un des modèles asso iés aux paramètres de es hypothèses

(borne onnueouin onnue,stabilisationimmédiateouinélu table)etmontrentque

er-tainsproblèmesàrésoudredanslemodèlepurementasyn hroneledeviennent.D'autres

travaux, en relation ave la re her he de la syn hronie minimale né essaire pour

ré-soudre le onsensus, étudient des restri tions spatiales du modèle partiellement

syn- hrone [8 , 9, 13, 83 , 112℄. Dans es systèmes, seule une partie du système exhibe un

omportement syn hrone àpartird'un ertain temps.

Dans le modèle asyn hrone temporisé [40 ℄, l'hypothèse une borne

x

apparaîtra

à partir d'un ertain temps est rempla ée par une borne

x

apparaîtra inniment

souvent.Cemodèleessaiedetraduirel'observationquelessystèmesréelsos illententre

périodes stables et périodes instables. Il généralise les modèles proposés dans [44 , 45℄.

D'autresmodèlesranentlesmodèles i-dessus.Parexemple,lemodèlequasi-syn hrone

[10 ℄ impose des bornes onnues sur la vitesse d'exé ution, le délai de transfert des

messages,ledé alagetemporeldeshorlogeslo alesetla hargedusystème.Cependant,

ha unede esbornespeutêtre violée ave une probabilité

p

onnue.

Cebrefsurvolmontrequ'ilexisteunemultitudedemodèlesqui orrespondentà

dif-férentsdegrésd'in ertitudetemporelle.D'autrepart,unemodélisationned'unsystème

réelné essiteungrand nombredeparamètres [10℄.Dans ettethèse,nous hoisissonsle

modèle purement asyn hronepour sasimpli itéetsagénéralité.En eet,toutrésultat

positifdans emodèles'étendauxmodèles quiimposentunerestri tion sur

l'asyn hro-niedusystème.Enn, ommenousleverronsparlasuite(paragraphe1.2),lasyn hronie

d'un modèle peutêtre abstraite au travers d'ora les appelés déte teur de défaillan es.

Aulieudefairedeshypothèsestemporelles,nousenri hirons lemodèleasyn hroneave

desora les (les déte teurs de défaillan es) qui masquent despropriétés temporelles du

système.

1.2 Déte teurs de défaillan es

Comme nous l'avons vu, les pro essus sont sujets aux rashs ou pannes fran hes.

La di ulté ou l'impossibilitéde résoudre unproblème donné provient essentiellement

de la ombinaison desdéfaillan es etde l'absen e de repères temporels. En eet, dans

unmodèle purement asyn hrone, ilestimpossiblede distinguerun pro essusdéfaillant

d'unpro essustrès lent.En parti ulier, il estimpossiblede résoudrele onsensusdans

un modèle purement asyn hrone dans lequel un pro essus est sus eptible de défaillir

[48 ℄.

Pour ontourner ette impossibilité, les her heurs ont renfor é leshypothèses

(24)

du modèle sur la al ulabilité? Par exemple, onsidérons le onsensus etl'un des

mo-dèlesintroduitparDwork,Lyn hetSto kmeyer[45℄.Danslesexé utionsde e modèle,

ilexistedesbornessurles délaisdetransfert desmessagesainsiquesurladurée

maxi-maled'uneétapede al ul.Bienque esbornesnesoient pas onnuesapriori,ils'avère

qu'ilexiste unalgorithmede onsensusqui tolèreuneminorité de pro essusdéfaillants

(

t <

n

2

).

Abstraire les hypothèses temporelles Ainsi,ilestpossiblederésoudrele

onsen-sus si nous restreignons l'in ertitude temporelle. De façon équivalente, le nombre de

problèmes qu'il est possible de résoudre si le système est équipé d'un mé anisme qui

donne desinformationssur lesdéfaillan es augmente.

Supposonsquelespro essusexé utentl'algorithmede déte tiondedéfaillan es

sui-vant [30,45℄.Périodiquement, haque pro essus

p

i

émet unmessage

p

i

estvivantet attendensuitedesmessagesdeviedesautrespro essusavantl'expirationd'undélai

de garde. Si la minuterie expire avant la ré eption d'un message 

p

j

est vivant,

p

i

in lut

p

j

danslalistedespro essussuspe ts.Siplustard,

p

i

reçoitunmessagede

p

j

,il endéduitqu'ill'asoupçonnéàtortetleretiredon delalistedessuspe ts.Ilaugmente

également le délai de laminuteriepour éviter qu'une telleerreur ne se reproduise.Les

propriétésdesyn hroniepartielledumodèleimpliquent l'existen ed'uninstantàpartir

duquel tous les pro essus défaillants seront soupçonnés en permanen e tandis que les

pro essus orre ts neseront plusjamaissoupçonnés àtort.

L'information sur les défaillan es produite par l'algorithme i-dessus dans un

sys-tème partiellement syn hrone peutêtre abstraite de lafaçon suivante. Soit un modèle

purementasyn hronedanslequellespro essusonta èsàunora le distribué.À haque

pro essuset à haque instant, l'ora le fournit une listede pro essussuspe ts.L'ora le

garantit qu'il existe un instant àpartir duquel (1)tous les pro essusdéfaillantsseront

toujourssoupçonnéset(2)au unpro essus orre tne serajamaisplussoupçonné.Cet

ora le estledéte teur dedéfaillan es inélu tablementparfait

3P

.

Quelleestlapuissan ede al uldanslenouveaumodèleenri hi?Ilaétémontréqu'à

l'aide de etora le en apparen e très faible et peu able (les pro essus ne onnaissent

pas l'instant à partir duquel les listes de suspe ts sont pertinentes), il est possible de

résoudrele onsensusmalgré les défaillan eséventuelles d'unefra tiondespro essus.

Capturerlasyn hronieminimale L'appro hedéte teursdedéfaillan es[30℄ onsiste

àenri hirlemodèleasyn hroneave unora lequifournitdesinformationsplusoumoins

pertinentes, aulieuderestreindreexpli itementl'asyn hronieenfaisantdeshypothèses

temporelles.À travers etteabstra tion,on her heà ara tériserlaquantitéde

syn- hronie minimalené essaireetsusante pour résoudreun problèmedonné.

Certains déte teurs sont omparables par l'intermédiaire de rédu tions

algorith-miques.Un déte teur

D

estdit plusfaible qu'un autredéte teur

D

s'il existeun

algo-rithme distribué fondé sur

D

dont la sortie satisfait la spé i ation de

D

. On notera

D

; D

l'existen ed'un telalgorithme. Intuitivement, leshypothèses temporelles

abs-traites par

D

sont plus faibles que elles apturées par

D

(25)

P

impossible à résoudre dans un modèle purement asyn hrone, ette notion d'ordre permetde dénir (s'il existe)le plus faible déte teur

D

min

pour e problème.

D

min

est minimalpour

P

s'ilexisteunalgorithmequirésout

P

dansunmodèleasyn hronemuni d'untelora leetsipourtoutdéte teur

D

àl'aideduquel

P

peutêtrerésolu,

D ; D

min

.

Étonnamment, pour ertains problèmes un tel déte teur minimal existe et a été

identié.Le premierrésultatdeminimalitéa étéétablipourle onsensuspar Chandra,

Hadzila os etToueg [29 ℄.Plus tard, d'autreséquipesont identié ledéte teur minimal

pour plusieurs problèmes fondamentaux en environnement réparti. Citons notamment

l'implémentation d'unregistreatomique danslemodèleàpassage demessages,lorsque

lenombrede pro essusdéfaillants n'est pasbornéa priori (

t = n − 1

) [42℄, l'ex lusion mutuelletolérante auxdéfaillan es[43℄, lavalidation atomique non bloquante[62, 79℄.

Les paragraphes suivants dénissent formellement la notion d'ora le déte teurs de

défaillan es. Lesdénitions sont issuesdu travail fondateurde Chandra et Toueg [30 ℄.

1.2.1 Dénition

Un déte teurdedéfaillan es estunora le quifournit à haqueinstantdes

informa-tions plus ou moinspertinentes surl'état des pro essus(vivant ou défaillant). Au une

ontrainten'estimposéesurl'en odage de etteinformation.Ilestseulementrequisque

laspé i ationdelasortiedel'ora le dépende uniquementdes défaillan es ( 'est-à-dire

qu'undéte teurnefournitpasd'indi ationssurlesvaleursdesvariableslo alesdes

pro- essus). D'un point de vue opérationnel, haque pro essus

p

i

est muni d'une variable lo alefd

i

a essibleseulement enle ture.Lesvaleurssu essivesde ettevariablesont ontrléesparledéte teurdedéfaillan es.Lepro essus

p

i

peutàtoutinstantinterroger ledéte teur enlisant lavaleur ourante de lavariablefd

i

.

Une lassededéte teurdedéfaillan esestasso iéeàunensemble

R

(éventuellement inni),quireprésentedesvaleurspotentiellementfourniesparlesdéte teursappartenant

à ette lasse. Un historiquede déte tion dedéfaillan es

H

estune fon tiondénie sur

Π ×

T

à valeur dans

R

.

H(i, τ )

représente l'information fournie par le déte teur au pro essus

p

i

à l'instant

τ

. Un déte teur de défaillan es

D

à valeurs dans

R

D

est une

fon tion qui asso ie à haque motif de défaillan es

F

un ensemble d'historiques de

déte tion à valeurs dans

R

D

. Cet ensemble noté

D(F )

orrespond à l'ensemble des

historiquesde déte tion autorisés par

D

pour lemotif

F

. Lorsque

p

i

lit fd

i

, ilobtient

par onséquent une valeur

d ∈ R

D

qui en ode de l'information relative au motif de

défaillan e ourant. Remarquons qu'au une hypothèse n'est faite sur l'ensemble des

valeurs possibles

R

D

. Cependant, un déte teur ne peut fournir d'information sur le al ulee tuépar unpro essusdonné.Àpartir defd

i

,

p

i

peutaumieuxdéduirel'état (vivant oudéfaillant)d'unpro essus.

À titred'exemple, nous donnonsla spé i ation des lasses mères dont les

dé-te teurs étudiésdans ette thèsesont issus.

 Ledéte teurparfait

P

[30 ℄fournitunelistedepro essusde onan eà haque pro essus.Chaquepro essusestmunid'unevariabletrusted

i

qui ontientun en-sembled'identitésdepro essussupposés orre ts.

P

garantitla omplétudeforte :

(26)

faillantsetlapré ision forte : haque pro essusfait toujours onan eà tousles

pro essus orre ts. Le déte teurest don à valeur dans

R

P

= 2

Π

etétant donné

un motif de défaillan es

F

,leshistoriques de déte tion permis doivent vérier:

∃τ ∈

T, ∀i ∈ Π, ∀τ

: (Correct (F ) ⊆ H(i, τ

)) ∧ (τ

≥ τ ⇒ H(i, τ

) = Correct (F ))

C'est-à-dire de façon plusopérationnelle :

∃τ ∈

T, ∀i ∈ Π, ∀τ

: (Correct ⊆

trusted

τ

i

) ∧ (τ

≥ τ ⇒

trusted

τ

i

= Correct )

 De même que

P

, le déte teur inélu tablement faible

3S

[30℄ fournit une liste

d'identités de pro essus de onan e supposés orre ts. Cependant les garanties

oertes par e déte teur sont plus faibles. Au bout d'un ertain temps, un

dé-te teur

3S

fournit une liste qui ne ontient pas d'identité de pro essus fautifs ( omplétude forte) etil existe un pro essus orre t à qui tous les pro essusfont

onan e (pré ision faible inélu table). Formellement, étant donné un motif de

défaillan es

F

,

H ∈ 3S(F ) ⇔

∃τ ∈

T, ∃c ∈ Correct(F ), ∀i ∈ Π, ∀τ

≥ τ : H(i, τ

) ⊆ Correct (F ) ∧ c ∈ H(i, τ

)

ou, ensupposant que ledéte teur ontrle le ontenu desvariables trusted

i

:

∃τ ∈

T :



[

τ

≥τ,i∈Π

trusted

τ

i

⊆ Correct (F )





\

i∈Π,τ

≥τ

trusted

τ

i

6= ∅



 Le déte teur leader

[29 ℄ fournit à haque pro essus une identité. Il existe un instant à partirduquel la même identité est fournie àtous les pro essus et ette

identité orrespondà un pro essus orre t.Soit

F

un motif défaillan e

H ∈ Ω(F ) ⇔ ∃τ ∈

T, ∃c ∈ Correct(F ), ∀i ∈ Π, ∀τ

≥ τ : c = H(i, τ

)

On noteraleader

i

lavariable ontrléepar un déte teur

surle pro essus

p

i

. Les spé i ations de es trois lasses font apparaître ertaines relations entre es

trois déte teurs. Par exemple, étant donné un motif

F

, tout historique

H ∈ Ω(F )

appartient à

3S(F )

.Demême, l'ensembledeshistoriques quisatisfont laspé i ation du déte teur

P

est in lus dans

3S(F )

.Intuitivement, le déte teur

P

est plus fort queles déte teurs

3S

et

.

Rédu tion Nouspouvons maintenant formaliser lanotion de rédu tionentre

déte -teurs de défaillan es déjà esquissée pré édemment. Soient

D

et

D

deux déte teurs de

défaillan es. S'il existe un algorithme

T

D

→D

qui transforme

D

' en

D

,

D

est dit plus faible que

D

(noté

D

; D

). Un tel algorithme maintient sur haque pro essus

p

i

unevariableout_d

i

dont lesvaleurssu essivessont ompatiblesave ledéte teur

D

.

Par ompatible, nous entendons que pour tout motif de défaillan es

F

et pour toute

exé ution dans laquelle les défaillan es suivent

F

, l'historique de déte tion

H

(i, τ )

,

'est-à-dire les valeurs su essives de out_d

i

appartient à

D

(F )

. Notons que

T

D

→D

n'émulepasné essairementl'ensembledeshistoriquesdedéte tiondedéfaillan esde

D

. L'algorithme doit seulement assurerque tousles historiques de déte tion qu'ilproduit

appartiennent à

D

.

(27)

1.2.2 Modèles hoisis et notations

Dans ette thèse,nousnousplaçonsdansun modèledanslequel

n

pro essus(

n

est onnu a priori) s'exé utent de manière totalement asyn hrone. Ces pro essus

ommu-niquent par passage de messages ou par l'intermédiaire d'unemémoire partagée. Dans

e dernier as, la mémoire est omposée de registres atomiques à é rivain unique. Le

médiumde ommuni ation, 'est-à-direlatransmissiondesmessagesoulamémoire

par-tagéeestable.Par ontre,lespro essussontsus eptiblesde onnaîtredesdéfaillan es.

Le seul type dedéfaillan e quenous onsidérons est lapanne fran he, 'est-à-dire

l'ar-rêtinopiné d'unpro essus. Au ours d'uneexé ution,le nombremaximalde pro essus

qui tombent en panne est noté

t

. Nous enri hirons lemodèle ave des ora les de type déte teurs de défaillan es.

Soit

C

undéte teur dedéfaillan es. Nous utiliseronsles notations suivantes: 

MP

n,t

[C]

désigne lemodèleasyn hroneave ommuni ationpar passagede

mes-sages dans lequel les pro essus ont a ès à un déte teur

C

. Les indi es

n

et

t

désignentrespe tivementlenombredepro essusetlenombremaximaldepannes

pouvant survenir dans haqueexé ution.



SM

n,t

[C]

désigne le modèle asyn hrone ave ommuni ation par registres muni

d'undéte teur

C

.Lesindi es

n

et

t

ontlamême signi ationquepré édemment. Par extension

MP

n,t

[∅]

et

SM

n,t

[∅]

désignent des modèles asyn hrones pures, 'est-à-dire quine béné ient d'au un ora le.

1.3 Outillage algorithmique

Nous nouseorçonsd'adopterune appro he algorithmique. Comme notédans[22 ℄,

Identifying high-level onstru ts is essential for advan ing the artof

distri-buted algorithm design.

Cettepartie présente des onstru tions de haut niveau dansle modèle àmémoire

par-tagée. Ces onstru tions ont pour but defournir auxdiérentspro essusdesvues d'un

étatglobal ourantquinedièrentpastrop.Ilestimportantdesoulignerquetoutes

les onstru tions présentées i-aprèsn'augmentent paslapuissan e al ulatoiredu

mo-dèle de base. Pour ha une d'entre elles, il existe un algorithme qui tolèreun nombre

arbitrairede défaillan es (

t = n − 1

) danslemodèle

SM

n,t

[∅]

.

Syn hronisationdevues Nousavonsprogressivementenri hilemodèleàpassagede

messages

MP

n,t

[∅]

,d'abordave laprimitivebroad ast

()

/deliver

()

puisave laprimitive R_b ast

()

/R_deliver

()

.Cesabstra tionsquiorentunesémantiquedeplusenplusri he fa ilitentla on eptiond'algorithmesdistribués.Deplus ha uned'entreellespeutêtre

onstruite àpartirde laprimitive de basedumodèle send

()

/re eive

()

.Cesabstra tions

on ernent la diusion globale d'informations à travers tout le système. Un appel à

R_b ast

()

(ou broad ast

()

) introduit un nouveau blo d'informations dans le système tandis qu'en appelant R_deliver

()

(ou deliver

()

) un pro essus enri hit sa onnaissan e

(28)

Ce type de problème (diusion de l'état lo al/ onnaissan e de l'état global) a

lar-gement étéétudié dansle adre dumodèle mémoirepartagée

SM

n,t

[∅]

.Ci-après, nous

dressons un brefpanorama desprimitives onnues qui permettent de al uler une vue

del'état du systèmeave diérents ritères de ohéren e.

Ces primitivessont toujoursdénies par un ouple de fon tion(é rire/lire);la

pre-mière permet de sto kerune information à destination desautres pro essus (diusion

del'étatlo al),ladeuxièmeapour butd'obtenirlesvaleurssto kéesparlesautres

pro- essus. Pour ha une des primitives dénies i-après, il existe une implémentation qui

tolèreunnombrearbitrairededéfaillan es(

t = n − 1

)àpartir deregistresatomiquesà é rivainunique. Puisque notre étude s'intéresse prin ipalement à la al ulabilité, nous

usonssans réserve de esabstra tionsdans les hapitressuivants.

Pour simplier les dénitions, nousnous plaçons dansle ontexte suivant : haque

pro essus

p

i

possède une valeur

v

i

appartenant à un alphabet

V

et désire onnaître la valeur des autres pro essus. Pour une exé ution donnée, les valeurs initiales sont

représentées par un ve teur

I ∈ V

n

telque

I[i] = v

si

p

i

possède initialement lavaleur

v

ou

si

p

i

ne parti ipe pas. Une vue du systèmeobtenue par un pro essus

p

i

est un ensemble

sm

i

de paires

< j, v

j

>

v

j

estlavaleurinitialede

p

j

.Par un légerabusde notation,nousnoterons pour

j ∈ sm

i

ou

v

j

∈ sm

i

lorsque

< j, v

j

>∈ sm

i

.

1.3.1 Colle te

Une primitive de olle te simple 2

[68, 121 ℄ garantit que haque pro essus obtient

des valeurs au moins aussiré entes que elles de sa dernière le ture. Formellement, la

sémantique dela pairewrite

(v)

/ olle t

()

estlasuivante(voirpar exemple [6℄).

Dénition 1.2 (Colle te) Si unpro essus

p

i

exé ute l'opération

op

:

sm

i

olle t

()

alors :

1.

∀j : j /

∈ sm

i

au une opération write

(v)

de

p

j

nepré ède

op

;

2.

∀j :< j, v >∈ sm

i

⇒ v

est la valeur é rite par

p

j

lors d'une opération

wop

: write

(v)

, telle que

wop

pré ède

op

et qu'au une autre opération write

(v

)

par

p

j

n'est inter alée entre

wop

et

op

;

3. Si

p

i

exé uteunese ondeopération

op

: sm

i

olle t

()

après

op

alors

sm

i

⊆ sm

i

.

Demêmequelaprimitivebroad ast

()

/deliver

()

,l'implémentation dewrite

()

/ olle t

()

est très simple. Il sut de lire su essivement le ontenu des registres qui omposent la

mémoire (Figure 1.2). Pour annon er sa valeur,

p

i

é rit simplement ette valeur dans le registre

M [i]

. L'atomi ité des opérations de basniveau surles registres garantit les troispropriétés de laspé i ation.

La primitive pré édente n'ore que peu de garanties quant à l'ordre respe tif des

le tureslorsqu'elles sont on urrentes. Dansl'exemple dé ritdanslagure1.3,

p

1

é rit enpremier.L'exé utiondel'opération olle t

()

par

p

1

est on urrenteave lesé ritures de

p

2

et

p

3

.

p

2

ne voit pas l'é riture de

p

3

et retourne

sm

2

= {1, 2}

. L'é riture de

(29)

operation olle t

()

sm

i

← ∅

forea h

j ∈ Π

do

v ← M [j].

read

()

if

v 6= ⊥

then

sm

i

← sm

i

∪ {< j, v >}

endif enddo return

(sm

i

)

Fig. 1.2 Laprimitive olle t

()

M[1].

write

(1)

M[2].

read

()

M[2].

write

(2)

M[1].

read

() M [3].

read

()

M[3].

write

(3)

M[1].

read

() M [2].

read

()

p

1

p

2

p

3

sm

1

= {1, 3}

sm

2

= {1, 2}

sm

3

= {1, 2, 3}

M[3].

read

()

olle t

()

Fig.1.3 Exé ution nonlinéarisable,

n = 3

p

3

est physiquement la dernière, il retourne né essairement

{1, 2, 3}

. Enn

p

1

renvoie

sm

1

= {1, 3}

.Les deux ensembles

{1, 3}

et

{1, 2}

sont in omparables, e qui implique qu'il n'est pas possible de pla er é ritures et le tures ( olle t

()

) sur un axe de temps

ommun. Or, pla er les opérations sur un axe de temps ommun en respe tant

leur sémantique simplierait le raisonnement sur les exé utions réparties. En eet, au

lieu d'intervalles de temps qui s'interse tent éventuellement, on aurait une vision

sé-quentielle des opérations su essives, haque opération donnant l'illusion des'exé uter

instantanément.Ce on eptest onnusous lenomde linéarisation.

Linéarisation Ce on ept a été introduit par Herlihy et Wing [76℄ an de

simpli-erle raisonnement lors de la on eption d'algorithmes distribués. Informellement, un

objet est linéarisable si sa spé i ation peut s'exprimer par une ma hine séquentielle

(généralement hors dusystème).

Dans le as d'une paire de primitives (annon e d'une valeur/le ture de l'ensemble

des valeurs), la linéarisation stipule qu'il existe un axe de temps ommun etune date

pour ha unedes opérations d'é ritureetdele ture [76℄ :

Linearizability provides the illusion that ea h operation takes ee t

instan-taneously atsome point between its invo ation and its response. (...) It

fa- ilitates ertain kindsof formal (and informal)reasoning(...) It statesthat

(30)

seulpro essus séquentieletles opérations qu'il supportesont linéarisables. Par ontre,

omme le montre la gure 1.3, un ve teur de registres muni des opérations write

()

et olle t

()

n'est paslinéarisable.

1.3.2 Colle te ordonnée ou Atomi snapshot

Nous souhaitons renfor er la primitive (lire/é rire) pour obtenir un objet

linéari-sable. La olle te ordonnée ou snapshot requiert que les ensembles renvoyés soient

or-donnés par in lusion, en plus des ontraintes de (write

()

/ olle t

()

). Ce problème a été poséetrésoluparplusieurséquipesdere her he:Afeketal.[1 ℄dénissentatomi

snap-shot,AspnesetHerlihy[70 ℄parlentd'atomi s an etAnderson[11℄lenomme omposite

register. Ces travaux donnent des spé i ations diérentes ainsi que des

implémenta-tions dans un modèle à registres. La olle te ordonnée ou atomi snapshot est dénie

par lapaire (write

()

/snap

()

)qui vérie laspé i ation suivante:

Dénition 1.3 (Colle te ordonnéeou Atomi snasphot) La pairewrite

()

/snap

()

dela olle teordonnée satisfait:Supposonsque haquepro essusee tuesu essivement

write

(v

i

)

;

sm

i

snap

()

. Alors les ensembles

sm

i

vérient: 1. Auto-in lusion

∀p

i

: i ∈ sm

i

;

(

sm

i

ontientla valeuré rite par

p

i

) 2. Comparaison

∀p

i

, p

j

: (sm

i

⊆ sm

j

) ∨ (sm

j

⊆ sm

i

)

.

(Les ensembles

sm

i

sont ordonnés par la relation d'in lusion) L'ordre par la relation d'in lusion sur les vues retournées supprime les exé utions qui

omportent des inversions entre des valeurs an iennes et des valeursré entes ( omme

dans l'exemple de la gure 1.3).De plus, l'exé ution est linéarisable en se basant sur

l'ordredesensemblesretournés. Par exemple,une linéarisationpossible peut être

obte-nue à l'aidede l'algorithmesuivant :

 ranger les ensembles dansl'ordre

sm

1

⊆ sm

2

⊆ · · · ⊆ sm

k

;

 les é ritures orrespondant aux valeursde

sm

1

sont pla ées au temps

τ = 1

, les é ritures desvaleurs dans

sm

2

− sm

1

sont pla éesau temps

τ = 2

,et .

Il existe plusieurs implémentations sansattente 3

d'un objetatomi snapshot

AS

à

partir de registres atomique à é rivain unique. Le meilleur algorithme à e jour dû à

AttiyaetRa hman[18℄possèdeune omplexitéen

O(n log(n))

en nombred'appelsaux

opérations write

(v)

/read

()

de base.

La gure1.4représente lesentrela ements possiblespour

3

pro essus. Chaque pro- essus

p

i

é ritson index et al ule une vue des index é rits dans lamémoire partagée

R

:

R[i].

write

(i); view

i

← R.

snap

()

3

Un algorithme qui tolère un nombre arbitraire de défaillan es (

t = n − 1

) ne peut omporter d'instru tions d'attente d'informations en provenan e d'autres pro essus. La notion de al ul sans

Figure

Fig. 1.1  Mémoire partagée à érivain unique, n = 4
Fig. 1.4  Entrelaements des opérations write () /snap () , n = 3
Fig. 1.5  Linéarisation des opérations write () /snap () de la gure 1.4
Fig. 1.6  write_snap () : toutes les vues possibles ( n = 3 )
+7

Références

Documents relatifs

Le temps dans les système distribués Temps logique Horloges logiques (Algorithme de Lamport, 1978) Les horloges vectorielles (Fidge et Mattern, 1988) Utilisation des horloges

mais, inopinément, Georgina était survenue ou avait appelé Mathurine, ou bien encore le vieux Fanche était apparu aux alentours, et Alix se

Cette phrase montre que Solvay prend appui sur son référentiel de compétences dans son nouvel accord de GPEC pour saisir les différentes sources de compétences : lors de la

La programmation sur ordinateur ou calculatrice programmable d’une grille autoréférente est très simple mais elle enlève tout le plaisir de la recherche manuelle. Elle a pour

La programmation sur ordinateur ou calculatrice programmable d’une grille autoréférente est très simple mais elle enlève tout le plaisir de la recherche manuelle. Elle a pour

1) Soit un polygone P et un triangle T qui ont un côté commun. Dans la figure ci-après, à titre d’exemple, le quadrilatère ABCD est le polygone P et ADE est le triangle T. Ils

ﺩﻋ لﻘﻨ ﺩﻗ ﻲﺴﻝﺩﻨﻷﺍ ﻥﺎﻴﺤ ﺎﺒﺃ ﺩﺠﻨ لﺎﺜﻤﻝﺍ ﺭﻴﺴﻔﺘﻝﺍ ﻲﻓ ﻁﻴﺤﻤﻝﺍ ﺭﺤﺒﻝﺍ ﻪﺒﺎﺘﻜ ﻲﻓ ﻪﻴﻭﻝﺎﺨ ﻥﺒﺍ ﻥﻋ ﺀﺍﺭﺁ ﺓ.

Exprimer la constante de raideur k du ressort modélisant la suspension du haut-parleur en fonction de la fréquence propre f 0 de l’équipage mobile.. L’équipage mobile du