1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn mesures de performances d'une primitive de diffusion atomique dans un cluster

40 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Mesures de performances d'une primitive de diffusion atomique dans un cluster
Trường học Université Pierre et Marie Curie
Chuyên ngành Computer Science
Thể loại Thèse
Thành phố Paris
Định dạng
Số trang 40
Dung lượng 573,56 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Couseusus syuchroue aver paunes « Transformation du Consensus 4 la Diffusion Atomique ‘Ivansformation de la Diffusion Atomique au Consensus Diffusion atomique avec ler fautee Déploiea

Trang 1

Abstract

To access Uke dala shared in a disLribuled eyslem with Uke ainiaum: of

the paseagee in the network, the cata shonfc be replicated There are many algorithms to ensnre the coherence of the cata when the rep‘ications are

updated, Bul il does aol exist a comparison of hese algorilluns

‘The objective of this training course is to study, simulate and measure Uhese algoritluns of dala's coherence, ia parLicular those are conceived Lor

the agreement prohtems which are the consensne and the atomic broartcast

hen we try to implement and stimulate these algorithms on the Appia fra- mework which is developped by the group of the university Lisboa We run

the emulation on the cluster of the [LEGAL group of LIP6

Trang 2

Table des matiéres

1) Introduction

1.1 Dref đescripHf đạaboratoire

1.2 Problamatique et objectifs du rapport

1.2 Annance đa nhan

23 Hypothése de temps

2.3.1 Syetémes

24 ĐetecLeur de dé

24.1 Variances de détecteurs de défaillances

2.5 Détecteur de défailiances parfait P -

2.3.4 Algoridlune pour le détectour de defuillauces

17

ig

18 18

Trang 3

Consensus en †'absenee đe pannes

Couseusus syuchroue aver paunes «

Transformation du Consensus 4 la Diffusion Atomique

‘Ivansformation de la Diffusion Atomique au Consensus Diffusion atomique avec ler fautee

Déploieaieat P Appia aur te cluster

43.1 Laucement coucursenl des processus

4.4.20 Prévaration avant de !'ntfisatian ssh

43.3 ExGcubion des processuss

Mestre de ia, performance

4.4.1 Rombre de massages at Nombre des rammds

au a0

Trang 4

Chapitre 1

Introduction

1.1 Bref descriptif du laboratoire

Le LIP6 est un laboraloire de recherche cous Lulelle de 2 Université Picere

& Marie Curie et dit CKTIS Avec 198 cherchenrn permanenta st 2Ä1 đoero

rants, i est l'un des principaux laburatoires de recherche eu informatique ex

France

Le laboratoire couvre un large spectre d'activités regroupées au sein de

cing départements : Calcu! Scientifique; DEcision, Systames Intelligents ot Recherche opérationnetle ; Donmées at Apprentiaage Artificiel ; Téseanx an

Systemes Reépartis ; Systemes Embarqués sur Puce En compiément de fa re-

cherche académique, le LIPG a une longue tradition de coopération aver des

partenaires industriels dans de trés nombreux projets nationaux, européens

ou internationaux Deux centres RAcD ont été créés : le CERME, Centre Eu- ropéen de Recherche en Micra Electronique cur les eystémes embarqués, et Luronetlab, sur Vinternet et tes réseaux de télécommunication Le LIP est Ggalousont innpbiqu6 dang los poles du compelilivite de VDe-de-France : Cap Tigital snr la connenn nmméricgie et Systemaric snr les ayetémen embhareqiés

Ta également des quipes cousmuaes aver INRIA cur les (héaaliques du cater farmed at des syatémen répartie Ta caopération internationale est ume coustante pour les avlivilés du laboratuice Le LIPG est asembre de plusieurs

réseaux Pexeellence eb dévdoppe égulement des rations suivies avee des

mmiversitas au Rréei!, any Fitats Unis an Japon, et dane de nomhrenx paye

eurvpéens, Le laboratoire est largement ouvert aux projels đe coopEraion

et &Vaccuell de visiteurs scientifiques Le Iazoratoire est impliqué dans des enseignements liés @ la recherche, qui sont dispensés au Master "Sciences et technologie” a l'Université Pierre et Marie Curie L'EDITE de Paris (Ecole Doctorate @’Informatique, Télécommunication et Eiectronique de Paris) ac

cueille ses doctorants.

Trang 5

REGAL (Répartition et Gestion des Ayplicalious a Large échelle} est,

ime éeqtipe comme avec PINRIA Racqnenconrt L'ahjectif de Véquipe est

la gestion de ressources dans le cadre tres ¢ynamique de erands réseaux, RE- GAL sintéresse aux techniques de déploicmaent d’applications (cade ct dan- nées) adaptées aux envirounements extrémement distrioués de grande taille (nombre de processeurs, distances}, fortement dynamiques, hét érogénes, cans possibilité simple de gestion centralisée ct/ou instantanéc de Ìa comnaissance murnelle approche de REGAL repose sur des techniques de Téplication

et @adaptation dynamique dans lesquelies um code applicatif et ses don- uées vou dupliquéy sur plusieurs sitet ve qui permet de luldrer les fautes,

@angmenter la disponihilité et rédnire les temps d'acces dn service rend par Vapplicatiow Cut Cquipe Cludic là fagou dout les uystemes peuvent ga- Tantir nme cmalité ce eervice en termes da Rabifité, dieponihilité en cohérence

1.2 Problématique et abjectifs du rapport

Tl existe de nombrenx algorithmes ponr assurer la cohérence cee réplicate

des doauées parlagées dans uu sysléme répacti Ha besoin d'une solution

pour qne toms es instancer partagées aient lee mémes cécisiome om hien ler

mémes Gécieions en mame ordre

Liobjectif' de ce stage est d'étudier cos algorithmes du probléme d’ac cord Ce sont le consensus et Ja diffusion atomique En suite on observe Je code source libre Appia qui a deja implémente ces algorithmes en langage JAVA On va déplover Appia sur le Custer du LIP6 En fin, on mesure la performance de l'algorithme de ia diffusion atomique : nombre de messages, nouibre dvs rounds, lemps d'exéeution,

1

Annonce de plan

Ce rapport se compose 4 sections principates La section 1 introduit de

Fobjctif du stage ot un bref descriptif du laboratoirc LIP6 La section 2 rap-

peli les notations trés connues Gans un systéme reparti La section 3 présente

lee probleme: d'aecord Daus vette parl, on couveutre au eonscasuy cl a fa diffusion atomique Ces problémes d'accord cont obsorvés sur Venvironne- ment d’un systéme aeynchrone avec te détecteur parfait des Géfaiddances La seclion 4 aontre anon (ravaux Je vais déployer Fimplémenlation des algo-

rithmes dn concensus et de la diffueion atomiqne sur wn cluster Min enite

je siesure ‘a perforumace de ce systaune : le nombre de messages echangés,

le nombre de sounds, le temps d'exceution Les s

conchisions, les perspectives er, lee bibliographies Lites vuivautcs cont lee

Trang 6

Chapitre 2

Principes de base

2.1.1 Horloge logique

L'hudoge logique est défiaie comme Masignation ui uombre du kempx

ait Vévénement s'est produit De maniare plus précise, une horioge Œ¡ liá À

un processus Pi cet une fouclion qui ausigue un nombre Cy(a) & u'imporle

quel événement a dans ce processit

Dans celle fouclion, Févénement a s'exéeulé avaul Mévénement b si Cla} <

O(®) Cette condition est ntite pont déterminer ordre des messages échan gés dans Je systeme réparti

2.1.2 Horloge physique

utilisation de Mhorloge fogique cat uniyucuseal utile daus Ie cas of los

événcments sont dan3 un méme processus En conséquence, dans le cas ot

les événements sont de différents processus I'horloge physique est souvent utile

2.1.3 Processus ct Messages

Processus

Tiane un syetéme réparti, le pronessue ent ctétini comme Tes nninés qui peuvent exéeuter des caleuls, Ln processus peut étre un processeur, un pro- cossue d’cxécution, un thread ou un eystéme d’exploitation

Le processus a les propriétés suivantes :

-Les processus savent de I'un & Ì'autre

Trang 7

-Les processus dự système se Jancent avec 1e même alporithme

~‘Tons les processne se farment Valgorithme distribnté

Gétecteur de défailiances, (3) subir unc transition d'état, ct (4) peut envoyer

Tm meEsage à tt praceestts single

Etape

Une exécution d'um automata d'un algorithme est représentée par un ordre Cui des Clapes dans le eas Cai ot par un ordce infui des étapes dans le cas infini

+ cuvoyer un message a un verlain procuwus (Gvéuemcul global}

L’exécution du calcul local et de Henvoi d’un message sont determines par Feutomate de processus, c'est a dire, Valgorithme Les événemente locame sont produits par les étapes échangés entre les modules du méme processus aux différentes couches

2.1.5 Streté et Vivacité

Pour construire une application officace ct stable, V'algorithme nécessite

2 propriétés cuivantes : sdreté et vivacité

La propriété de sfreté dé

le vrai résutat

farent que Valgorithme devrait nous donner

Trang 8

Par exemple : Le processus ne devrait que recevoir un message seulement sila él diffuse par uu processus

De toute fagon, 2es propriétés de edreté ne cont pas assez, Parfois, une bonne maniére d’ompécher de mauvaiscs choses de 3c produire consiste A faire rien

La propriété vivacité aseure que quciques bonnes choses se praduisent

éventieement

Par cwmple : Si ux processus eorrcel cuvoic un mesuage & un pracesuus correct da destination, le processus de destination devrait éventnellement recowir ce aicsuige La propriété de viewcité est Cuoued que pour a'unport quel le temps é, il y nm espoir qne Ta propriété pent étre saxiefai à mm rnomenr:

tờt

2.2.1 Processus en pannes

Un pracessns est consideré en panne sium de ses compansantes ne marche

pas Tl y quequey lypes de paunes de processus : crash (omission de ate sage) dépasrement de tampon (hifer overflows : ie processne est blormé), fautif comportement (Byzantine)

2.2.2 Crash

Un processus est "crash" s'il ne finit pas ses fonctions, Par exemple au

lieu déchauger les nieeuages, fe proccusuy u'envoic plus aucun auveeage & Fautre Les messages sont perdus on Pentréc ou on 1a sortic ou tous les deux

2.2.3 Fautif comportement

An contraire le dernier, te fartif comportement eet defini qne [mm pro

vessus ue fouclioune pas correclement el 2 douue des résullals aléaloires

Por exemple, un processus envoie les messages 4 T'extérieur ou bien plus nombreux messages nécescaires

2.2.4 Dépassement de tampon

Hans le cas du dépassement de tampon t¢ process ne marche pins I}

ge peul pos crveyer ni revevuir aucun meusage, Gu voil que le temps de

réponse di systame cénarse tee exigances des spécificarions

10

Trang 9

2.2.5 Récupération

Dane ce coabexte, si un proves: est on puune à Ÿinstanl f,® sera considere

toujoure mort bien qu'il puiese se récupérer aprée cat instant

En bref, détorminer ai nous pouvons faire de n’importe quelle hypathésc sur

des Sornes de temps, sur les délais de communication et sur les vitesses de

processus col Le facleur important cu déGuissant ua modéle d'un sysléme réparti

sage du Leaps

2.4.1 Systémes synchrones et asynchrones

Jans un systèrse réparti les composants exécutent des opérations à des viteases différentes Par exemple le processeur d'un seveur est genéralement pluc rapide que cetui utilies dane un commutateur ou dans une carte réseau Les messages sont aussi recus avec des déiais différents en fonction de Ia

Jus Hew: physiques ch du nuwbre de bouds utcessaires pour pave- nir jnsqt'an destinaire Vontefois différents phénoménes comme ia charge Tes priorités assignés aux processus, et ie type d'ordonnaceur ont des effets sur lee vilesees auxquetles 'exécutent lee algoritlune:

Tes systames synehranes dane leqnel la vitesse des procesens et dee

cauaux est bornée el coumtue

-Les systémes asynchrones cans iequel la vitesse des proceseus et des

vanaux est bornée, mais la bornée est incounue

11

Trang 10

En conséquence, le détecteur de défaillances est vraiment nécessaire dans le

systéme réparti

Qu’est-ce qu'un détecteur de défaillances ?

Un détecteur de défaillances est un service réparti composé de đétecteurs

locaux attachés A chaque processus, Un détecteur fonrnit sur la demande

Ia liste des processus qu'il soupgonne d’étre en panne Les divers détecteus

locaux coopérent entre eux pour établir cette liste,

Trang 11

tion effective des procesens défaillants

Formeliament, Uhistoriqne [7 d'm détectenr de défailannes est ime fone

tion de Pensemble [] x / vers l'ensembie 2” od H(y,t) est te valeur du

détectcur de défailanecs du processus p a Pinstant t dans I Si q ¢ IHp.2)

alore p suspecte ạ à Linetam ‡ dang ïƑ Sĩ p #: ạ slore 1T(p,f) # TI(a.1)

est possible, Un détecteur de défaillances D est une fonction qui associe &

chaque modéle de défaillanee F un casemble dhictoriquos de detecteurs dc

áefalaness (1/21 (1°) est Pensemble de tous tes historiqnes panvant axis

ter durant les axéoutions avec ensemble des défaillances # et le détecteur

de défailiances D Chandra ef Toueg defisivseut deux propricies de comphe-

inde et quatre de axacrimds donnant, ime fois combinées, hit classes de

déteeleurs de défuilinacce

1.Complatude : La détectanr doit détecter les pracessns fantifs

Complétude forte : Tont processes fantif tinit par étre sonpcanné par

Loul proveseus correct

VEWWH © DUE), 3 © Lp € crash(t').v@ © correct(P), VE > tip © H@,tV21)

Complétude faible :

um processus correct ‘out procescus fautif finit par etre soupgonné par

VE,VH C D(P), 3i Tp ¢ cresh(P), 3a C evrreci{F),We > bsp C Hla, 3.3)

2.Exuclitude : Le détecteur av doit pas déelarer fausseaneal un proves-

ana correct

Exaclilude forte : Aucun provessuy correct west jamais soupgouné par

im amtire processus correct:

Exuclitude faible: Il existe wz provesuy cocmel qui a'est jamais soup:

conné pari are processus correct

VF,VI © DUP), 4p & correct(P), vt T.Va c |][—F0).p ¢ F(a, 412.4)

Exactitnde éventuellement forte: An hont d'un certain temps, ancm

processus correct n’est plus jamais soupconné par un processus correct

VE,VH C D(F), SE C Tụ 3 t,¥p.q C correct(Fi.p ¢ Tat) (2.5)

Exaclitude éventuellement [aible ; Au bout d'un certain bemps, i existe

im processus correct qni West plns jamais sompgommé par mm ante

processns correct

VE,VI & DUF 4 & Tp & correct( PF) vf > £89 & corrent(F).p ¢ T{a,2'42.6)

18

Trang 12

Une clasce des détecteurs de défaillances est défini par un peir de com- plelude el exactitude que les célecleun de céfeilances caus celle casse

doivent eatisfaire En général, ia complétnde recaiert cụm đếtectenr de

défailances éventuellement suspecte chaque processus qui se crashe éven- tucllement, pendant que Vcxactitude limite foe orrours qu'un détecteur de

Géfaillances peut faire Deux propriétés de complétude et quatre propriété

Gexactitude compozent huit classes des détecteurs de défailiances suivants

Exactude

Compleude] ruw | gapjy Eversuelenen: Ben denert

Fore | Parte | Fores [Pr unlene| Fert seme

Paible ạ w 2a Event ong

Fig 2.2 & classes détecteurs de défailances

Chandra et Toueg [CT96] ont montré que un propriété faible est ¢quiva-

lente & un proprié.é currespoudant Lurle

Par exerpie : On anit téaliser ia complefmde forte si on dispose de Ta com plétnde faible

2.4.1 Variaucea de détecleurs de défaillancea

6teLeurs đe đi

nên sieppiémentaires enive

AcOlE de 8 clasces ci-descus,

particnliers ot les propri aillances sur tes sysleace

wnter

-synchrone : il peut connattre la borne sur le temps de tranmission

-esyuchroue i] ue peul pes conuailre fa Dome sur fe Lenigs de Lranmission

~pamnes franchcs (fail-stop) : soit 'e processus fonctionne normalement (loz

résnitats sont corrects), soit ib ne fait rien Tl s‘agit dn type de panne

le plus simple

-puunes byzantines : le déteeleur peul caplurer som sculunont Fes erushe

mais ansei len fautifs compartemente

2.5 Détecteur de défuillances parfait P

Trane le casire da re stage om examine le problem @Paccard avec te détec tenr de défaiitances parfait

T’ensemble cle tons teis détectents de défai

tions de P Similar surgissent pour chaque paire de propriétes de completude

14

Trang 13

et exactitude, II y a huit teiles paires, cbtenues on choisissant une des deux propriélés de complélude el uae des qualre propriélés C'exactilude préesen- tées dane ta cection pracécente Ta notation réenttante ce définitione ef de

correspondance sont données sur le eure 2.2

Un détectour de défaillances serait parfait s'il satisfait ta complétude forte et Fexactitude forte

Complétude forte : ‘lont processus fantif fnit par étre sonpconné par

Loul provescus corre

Exactitude forte : Aucun processus correct n'est jamais soupgonné par

un autre processus correct

2.5.1 Algorithme pour le détecteur de défaillances

Pour implémenter 1m dénecteur đe défaillances, me horne de temps mart

esl ulilisé & Géleminer un provessus qui esl en panue ou correct Les processus

Goivent envoyer tes signanx qni elgnifient vivant Si dans la pérind de Ia, hore

Ge temps mort, 1m procesens qui nhenvnle nas Ïa signal vivant est appellé en pane

Trang 14

Chapitre 3

Probléme d’accord

parti, ou a plusicurs applications daus lesquclles qu'il

a mm eneembie cea apniicationa coapératives pour rérondre ine mama so Dante le systaae

lution Le probleme d'acvord Docme use class foudamental dans te conLexLe

dey eyslémce réparlis Chuquc dasse a unc solution partieulier depend de fa

Vexigence cit prohtéme Tl y 3 classes principaies dn probleme d'accord : la

replication, le consensus ainsi que la diffusion atomique (la diffusion totale- ment ordonnée)

La réplication est une technique usuelle permettant d'introduire de fa redondance dans un eyetéme, afin d’en garantir une meilleure disponitilité

Un serveur répiiqué est un serveur qui est constitué de plusieurs copies afin que, ci Pune Centre elles tombe en panne, les autres puissent continuer & fournir le service Les copies d'un cerveur répliqué sont appelées des réplicas Ces réplicas doivent évoluer de maniére cohérente Ainsi, a modification du serveur répliqué ace

des modifications A aporrer Alene érate respectife Qn considers princina lement deux approches générales permettant de maintenir cette cohérence :

la céplicalion aclive el la céplication passive,

sessile aux réplicas de se metre d'accord sur Veosenble

Le probleme du voasensus fourai une abeLractioa à la pluparl des autres probléaues d'accurd Tous les processus débuleut, un couscasus cn proposal

me vatenr Pirie, tone lea processus doivent finalement edlectionner 2a méme

valeur v, qui doil élre fa valeur proposée iniliatement par l'un des processus

La diffusion atomique est un autre probleme d'accord Des processus Giffusent dec messages A tous lee processus avec Ia contrainte que tous les

messagee doivent imp

processus De surcroit, si im processus recoit un mescage m, alors le probiéme

rativement étre reque dane le méme ordre par tous lee

16

Trang 15

exige que tous les processus correct aient la garantie đe recevoir le message

Guus le: processus comecls Hvrenl le mene enscinble de ancesages, (2) lous le

messages diffnsés par des processns corrects sont livrées et (3) acum faire

message n'est jamais fivré

2.2.1 Spérificationa

Formel.ement, la diffusion faible est défimie en termes de deux primitifis : diffuser(m) ct délivrer(m) eit m cst un mescage tiré d'um ensemble de mes- sages possibies, Quand un de processus s'exécute diffuser(m) nous disons qu'il a diffust m, et quand un processus s’exécute délivrer(m), nous disons qu'il receit 1e m Nous supposens que chacjue message m incut fe champ dé- noté expéditeur(m) qui contient l'identité de Vexpéditeur, et um champ avec wat nombre Cordre; ees deux champe rendcul chaque aiessage unique

Dans la difinsion faible, 1m processes difinise 1m message A 1m ensemble speuifié Ce processus (y comprise luiuadinc), Le protucule Geil vérilier bes trois propiétés snivantes [Haczilacos at Toneg, 1996]

Accord : Si um processus correct [ou fautif] délivre un message m, tous les

proecsaus corrects ddliveent un (au boul d'un bumpy Lari}

Validité : Si un processus correct diffuse um message 1, tous les processus

corrcels défiveeut Ie message a (au boul d'un Leusps Gai}

Intégrité : Quel que coit ie message m, il est délivré au plus une fois &

tout proceseus correct [ou fautif], et senlement sil a été diffusé par un proecssus

3.2.2 Protucole de diffusion fiable

Toul processus p exéuule le programme suivant :

pour exécuter broadcast(m)

estampilier m avec sender{m) (processus émettcur) ct scq(m}

//seq est un numéro de séquence local a Y’émetteur

{ou a aim unc iduntificalion unique du meseage

17

Trang 16

// send{(m} et reoeive(m) sont lae priritives đu système đe J/ communication Gable disponible

send(m) A tous fes voisine de p.et Ap

//veisin de p :processus q tel qu'il y ait un lien de communication } {dircete de p vers 9,

deliver(m} ee produit comme suit :

sur exécution de receive(m) par processus p

if p n'a pas précédemment cxteuté deliver(m) then

J ivérifié grace & Pidemtification imiqna dem

if sender{m} ¥ p then send(m} a tous les voisins de p deliver(in)

‘Un consensns est im accord général parmi ies membres dim granpe, pouvant permettre de prendre une décision sans vote préalable ‘lous les processus débulent uz consensus eu proposant une valeur Puis, tous lee procesens doivent fnir par prendra la, mame vale 1, qni doin anre la -valenr propesée inilislement par lun des processus

1 Spécifications

Dans ie probléme de consensus, tous les processus corrects proposent une vatcur ct doivent prendre une décision unanime ct irrévecable sur une ccr- taine valenr qni est Hide aux valeurs proposées [Fischer 1982] Le consensns

a deux terms primitifs, proposer(v} et décider (v}, of v est ne valeur tirée

un casemble de valeurs proposes posible Quand un processus stexceule proposer(v), nous disant qu'il propase v; dela mame facon cpeand mn pro-

teggue vexdcule déeider(y), avus disent qu'il dévide te v,

Le consensns est spécifié 4 “aide de trois propriétes

Accord : Si deux processus corrects décident ils décident sur la meme

valeur

Validité : Sim processus correct décide, aa valeur de décision est une der

valeurs initia‘es,

Terrminuison : Tous fev processus corrects déeideal

TntAgrité ; Ancim processne décide 2 fois snr une mame valent

3.3.2 Variances

Tl existe diverses variantes des spécifications Ou pout faire diverses hy- phothése de défaizlances sur les processus et sur le systeme de communication

18

Trang 17

Synchronisation

Dans le systéme synchrone, les consensus savent les bornes des rounds

et ils ont les mémes bornes par la période du temps Mais dans le systeme

asynchrone, les processus ne savent pas de bornes des rounds, et ils ont les

bornes différentes

Uniforme

Dans le consensus uniforme, si un processus p fait la décision d, alors tout processus correct q fait la décision d C’est-a-dire, dans le systéme, s'il exi: tun process an panne et avant de tomber en panne, ce processus pourrait faire

la décision ou faire rien Cette propriété assure que cette décision devrait etre

Ja méme avec ce-la des tous les processus correct

Trang 18

Au round kK", le proceesus &'°"° a 1e droit d'anuioneer la décision pro- poral aux aulres processus qui ale rang plus que k Aprés N rounds, lous lee

procersns cammencent à đécider reeHement Ca demande tanjenrs N rarmdde

pour avoir un accord

Fic 3.3 — La solution hiérarichique

3.3.3 Consensus en Vabseuce de paunes

Hypethéses

ae, La

Eu Vabscuce de pamucy, i} ae out gas le đóteeteur de deäi

cammmnication eet asynchrona ør ñahla øt ne pard pas les messagee

Algorithme

Tidée est que la

les autres ont !e meme ensemble de proposals délivrés écicion ast cléterminé quand chaqne processus sait qne

1 La solution avee un coordinateur

Un coordinaleur est ulilisé comune ue processus ceulral qui cotlecle Lous

les propueals et décider ce qui est Ia dé

jon pour le syeteme

Chaque proceseus pj envoie ca valeur 1 & un coordinateur spécifié A Pavance,

- Quand le cuordimaleur a secu loules les valeurs v1, i choisil une de cee

vnlene, soit ¢ (snr nn critéra qmielcønrme)

- Le coordinateur envoie d a tous les p;

- Apres la réception, chaque p¡ đécide d

Trang 19

- Chaqe processus ÿ; envoie sa valeur vj a tous

= Quand mm processns p; a tag totes tes valeurs 1, 11 applique im Algo-

titlue de choix dune de e

~ Lidigorithise de choix est Le seme pour tous les pi

Si le protovole de diffusion garaulit que tous les destinalaires regaivent

Te anescage (suas diffeullé en Tubscuce de panucs), alors lous lee pi décident

la mame valent

2.2.4 Consensus synchrone avec pannes

Hypothéses

La communication cel fable (lout mesuge parvieat a la destination)

et synchrone (horne supérienra connne pont Ja, cnréa de tranemiesion dim

message) lia maillage cir réseam n’est pas nécessairement complet (la cam- munition cutre deux sile: peul u¢cessiler ÖG pasvage par ua ou plusicurs

antres) Tontefoie on suppose cue denx sites corrects penvent tenejonre com

muniquer entre eux (les pannes de sites ne partitionnent pas le réseaux)

Tes procesens penvent avoir dee pannes franches On snppose qn'll smth

siste an moins un processus correct (n-i défailances au plus pour n proces-

sua)

On suppose disponible um mécanisme de diffusion fiable tel que spécifié plus baut :

~ Tous les proecseue correcly d@ivrent fe uicise cusemble de anvaages

+ Tous les sncysuges diflusts par Ice procewsus corrects don, đế vrếu

- Tous les messages délivré ont été ciffustes par un processus

Algorithme

Le principe de laiguritlune est le anéine que pour fe eyslaine sans panies

(avec diffusion)

Aprés initialisation, chaque proceseus p; diffusc (diffusion fable} ea va-

Terr nj Grace A Vhypathése de synchroniame et a !a connaiseance (le Ìa to

pologje du réseau, on peut déterminer un temps ‘I' au bout duque: tous les

messages qui doivent é@trc défivrés ont cffectivement été délivrés

’apras les propriétés de la diffusion fiable, tous les processus corrects ont regu le méme cnsembie de messages Sion applique alors le mémc algorithmc

de choix, alors chaque processus correct décidera (en temps borné) la méme valour

24

Trang 20

Remarques

Si un processus lombe cat ponue pendant te diffusion d'un message, eclui-

ci cera délivré & tous fes processus corrects ow & aucun

La valeur Gécidée peut étre celle diffusée par un processus fautif (panne pendant ou aprés Ja dilfusiog) Mais cela ue couteedil pas Zu epécifivation du consensns

Lidge tres sommaire de la preuve est comme suivant :

ue esl daus uae

-Qu suppose que 2 valeurs soienl proportes (0,1) Le syst

confignration bivalenta ei lee dens valents sont des chois poseihles ponr

Ja decision

-La configuration initiate est bivalente,

-T est toujours possible de construire une sCqucuce d'éveuenculs qui sain Tienne indétiniment ‘e systéme dans ime contignration bivalente

La source du provléme est que, dans un systéme asynehrone, il est im- possible de distinguer um processus lent (A s'oxécuter ou a répondro} d'un processns défaiilanr,

3.2.5 Algorithme de Paxoa

L’algorithme de Paxos est un autre algorithme pour le consensus asyn- chron, Sex prineipus soul suivantcs :

-L’aigorithme utilise un processus coordinateur {ou primaire) qui gére un

ensembie de processus (dits agents) et tente d'obtenir une vateur de Geision par yulre uajoritaice

nithme doit résister a ls défaillance du primaire Plusieure processus peuvent jouer ie réle du primaire, successivement ou méme simultané- ment

-Diaiguridlane se Leriniue vl adele un primaire uaique pendant uc nêu

enffisamment longue pour ome te primaire ait deus rounds @échanges

aver ume wajorilé dagente

On essaic d'assurer cctte condition & aide de délais de garde Cotte

méthode peut échouer (la commumication étant asynchrone}, et dans ce cas

Falporithme ne se termine pas

22

Ngày đăng: 31/05/2025, 13:29

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm