premières études sur la gestion de la volatilité dans pastis fabio picconi

27
1 Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi Réunion GDS – 19/11/2004

Upload: burt

Post on 23-Jan-2016

24 views

Category:

Documents


0 download

DESCRIPTION

Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi Réunion GDS – 19/11/2004. Plan de l’exposé. Systèmes pair-à-pair Réseaux structurés : Pastry, PAST Pastis Rappel Mises à jour Problème de la volatilité KBR : routage cohérent DHT : accès aux blocs - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

1

Premières études sur la gestion

de la volatilité dans Pastis

Fabio Picconi

Réunion GDS – 19/11/2004

Page 2: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

2

1. Systèmes pair-à-pair Réseaux structurés : Pastry, PAST

2. Pastis Rappel Mises à jour

3. Problème de la volatilité KBR : routage cohérent DHT : accès aux blocs Pastis : modèles de cohérence

Plan de l’exposé

Page 3: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

3

Systèmes pair-à-pair

Page 4: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

4

Systèmes pair-à-pair

Tier 0

Tier 1

Tier 2

KBR : Pastry

DHT : PAST

Syst. de fichiers réparti Pastis

Couches pair-à-pair

Application

Page 5: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

5

Pastry

04F2

5230

834BC52A

8909

8BB2

3A79

8954

8957AC78

895D

E25A

04F2

3A79

5230

834B8909

8954

8957

8BB2

AC78

C52A

E25A

k = 8958

k = 8959

route(m,8959)

root ofkey 8959

Address space

895D

Page 6: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

6

PAST

Interface

void put( Key k, Block b );

Block b = get( Key k );

Page 7: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

7

PAST

04F2

5230

834BC52A

8909

8BB2

3A79

8954

8957AC78

895D

E25A

04F2

3A79

5230

834B8909

8954

8957

8BB2

AC78

C52A

E25A

k = 8958

k = 8959

put(8959,block)

root ofkey 8959 block

Address space

replica

895D

replica

Page 8: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

8

Pastis

Page 9: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

9

Pastis

Caractéristiques Simplicité Complètement décentralisé Passant à l’échelle

Page 10: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

10

Pastis

Structure similaire à l’UFS (Unix File System) inodes stockés dans des User Certificate Blocks (UCB, modifiables) données stockées dans Content-Hash Blocks (CHB, immuables)

metadata@CHB1@CHB2…

@CHBi@CHBii@CHBiii

UCB1

directory inode

file1 @UCB2file2 @UCB3file3 ……

CHB1

directory contents

metadata@CHB3……

………

UCB2

file inode

CHB3

file contents

@CHBx@CHBy@CHBz--- empty ---

CHBi

indirect block

file4 @UCBjfile5 @UCBkfile6 ……

CHBx

directory contents

Page 11: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

11

Pastis – mises à jour

metadata@CHB1@CHB2…

@CHBi@CHBii@CHBiii

UCB1

directory inode

file1 @UCB2file2 @UCB3file3 ……

CHB1

directory contentsmetadata@CHB3……

………

UCB2

file inode

foo

CHB3

file contents

insérer les nouvelles données (CHBs) réinsérer l’inode (UCB) qui pointe vers les nouveaux CHBs

Page 12: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

12

Pastis – mises à jour

insérer les nouvelles données (CHBs) réinsérer l’inode (UCB) qui pointe vers les nouveaux CHBs

metadata@CHB1@CHB2…

@CHBi@CHBii@CHBiii

directory inode

CHB1

directory contentsmetadata@CHB3……

………

file inode

foo

CHB3

file contents

foo bar

CHB4

new file contents

Insert new CHB into the DHT

UCB1 UCB2

file1 @UCB2file2 @UCB3file3 ……

Page 13: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

13

Pastis – mises à jour

insérer les nouvelles données (CHBs) réinsérer l’inode (UCB) qui pointe vers les nouveaux CHBs

metadata@CHB1@CHB2…

@CHBi@CHBii@CHBiii

directory inode

CHB1

directory contentsmetadata@CHB4……

………

file inode

foo

CHB3

file contents

foo bar

CHB4

new file contents

Update file inode to point to new CHB

file1 @UCB2file2 @UCB3file3 ……

UCB1 UCB2

Page 14: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

14

Pastis – mises à jour

insérer les nouvelles données (CHBs) réinsérer l’inode (UCB) qui pointe vers les nouveaux CHBs

metadata@CHB1@CHB2…

@CHBi@CHBii@CHBiii

directory inode

CHB1

directory contentsmetadata@CHB4……

………

file inode

foo

CHB3

file contents

foo bar

CHB4

new file contents

Reinsert inode UCB into the DHT

file1 @UCB2file2 @UCB3file3 ……

UCB1 UCB2

Page 15: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

15

Volatilité dans les systèmes pair-à-pair

Page 16: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

16

Problématique

Réseaux structurés Routage efficace [O(log N)] Routage correcte : le message est délivré à la racine de la clef Il faut maintenir des tables de routage correctes

Resistance à la volatilité : Résilience statique Mesures de temps de session sur des réseaux existants Comportement des prototypes existants en présence d’une forte

volatilité Effets sur les couches DHT et Pastis

Page 17: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

17

Volatilité

Résilience statiqueCapacité d’un algorithme de routage pair-à-pair de délivrer un message à sa destination après défaillance d’un ensemble de nœuds

Gummadi et al. (2003) :

Page 18: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

18

Mesures de temps de session Effectuées sur des réseaux existants Méthodes actives (crawling, probing) et passives (tracing) Résultats très différents

Volatilité

Page 19: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

19

Comportement des prototypes existants Injection de fautes selon un processus de Poisson Mesures : pourcentage de lookups cohérents, latence du lookup

Rhea et al. (2004) :

Volatilité

Page 20: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

20

Volatilité

Effets d’un routage défaillantKBR Messages délivrés à de fausses racines

(un nœud croit, à tort, être la racine leafsets incorrects)

DHT Vision incohérente, voir partitionnement du replica set Mises à jour effectuées sur des répliques différentes Données existantes non retrouvées (répliques flottantes)

Pastis Non respect du modèle de cohérence

Page 21: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

21

Volatilité – Effets sur le KBR

04F2

3A79

5230

834B8909

8954

8957

8BB2

AC78

C52A

E25A

k = 8959

Address space

895D

root seen by node 5230

root seen by node 3A79

k = 8959

Page 22: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

22

Volatilité – Effets sur la DHT

04F2

3A79

5230

834B8909

8954

8957

8BB2

AC78

C52A

E25A

k = 8959

Address space

895D

répliques

Page 23: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

23

Volatilité – Effets sur la DHT

04F2

3A79

5230

834B8909

8954

8957

8BB2

AC78

C52A

E25A

k = 8959

Address space

895D

répliques déconnectées

Page 24: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

24

Volatilité – Effets sur la DHT

04F2

3A79

5230

834B8909

8954

8957

8BB2

AC78

C52A

E25A

k = 8959

Address space

895D

répliques reconnectées

Page 25: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

25

Volatilité

Premiers systèmes adressant la volatilité au niveau KBR : Bamboo (Berkeley, basé sur Pastry)

• Maintenance périodique au lieu de réactive

MSPastry (Microsoft, évolution de Pastry)• Heartbeats, active probing• Propagation des leaf sets correctes

Difficultés Comportement prototypes difficile à analyser par seule simulation Absence de preuve des algorithmes Modèle de communication peu clair DHT : protocole de réplication (répliques flottantes)

Page 26: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

26

Volatilité

Directions Peut-on caractériser le comportement défaillant des couches KBR et

DHT en présence d’une forte volatilité ? Peut-on les fiabiliser ?

• Détection de routage défaillant• Déviation maximale par rapport à la vraie racine

Disposant d’un KBR non fiable, peut-on construire au-dessus une DHT fiable ?

• Protocole de réplication (niveau DHT)• Quorum dynamiques ?

Peut-on envisager de fiabiliser la couche tier 2 (Pastis) à partir d’une DHT et KBR non fiables ?

Page 27: Premières études sur la gestion de la volatilité dans Pastis Fabio Picconi

27

Questions ?