LE STOCKAGE DISTRIBUÉ
Polytech’Grenoble – RICM 3ème Année
Vendredi 21 Novembre 2008
Etude d’Approfondissement Réseau
Robin Favre
Fabien Touvat
I. Systèmes distribuésA. Définition
B. Exemples
II. Stockage distribuéA. Le stockage et les réseaux
B. Les Systèmes de fichiers distribués
C. Système P2P
III. Oceanstore projectA. Historique
B. Fonctionnement
C. Critiques et limites
Plan
“A distributed system is a collection of independent computers that appear to the users of the system as a single computer”
Distributed Operating System. A. Tanenbaum, Prentice Hall, 1994
I Systèmes DistribuésA) Définition
Petite échelle Grande échelle
Application SupercalculateurHPC (parallélisme)Scientifiques/Industriels
P2P via Internet :•Calcul•Stockage
Avantages Nombre limité de machinesécurité,synchronisation,« simplicité »
RessourcesMises à l’échelleFaible coût
Inconvénients Ressources LimitéesCoût élevé
Sécuritésynchronisation
I Systèmes DistribuésA) Définition
I Systèmes DistribuésB) Exemples
Projets P2P « Hybride » : Client/Serveur et utilisation P2P sur Internet.
SETI@HOME Napster
II Stockage distribuéLe réseau et le stockage
Pourquoi stocker l’information ?ArchivageDisponibilitéTraitement
Critères de stockages
II Stockage distribuéA) Le réseau et le stockage
Les SAN (Stockages Area Network)Très utilisé pour les data-center et HPCLiens à très haut débit
○ iSCSI, Fiber Channel, AoEUtilisation de système de fichier distribué
Les NAS (Network Attached Storage)Utilisé pour la sauvegardeDébit moyen
/ /etc
/mnt
/dev
/home
/home_remote
mount nfs
Exemple de NFS : Network file system
II Stockage distribuéA) Le réseau et le stockage
Présentation générale
II Stockage distribuéB) Les systèmes de fichiers distribués
Difficultés Temps d’accès et performance R/W Cohérence des données
II Stockage distribuéB) Les systèmes de fichiers distribués
Bien pour les réseaux locaux Non applicable aux réseaux étendus
II Stockage distribuéB) Les systèmes de fichiers distribués
Pour réseau LAN et WANAFS (OpenAFS…)DFS (évolution de NFS)CodaFS
Pour cluster :GFSGPFSLustre
II Stockage distribuéB) Les systèmes de fichiers distribués
II Stockage distribuéC) Stockage sur P2P
P2P de partage de données :une ressource est sur une seule machine lecture seule
P2P de partage d’espace de stockage :lecture / écriture sur plusieurs machines distantes
Avantages
Fonctionnement à large échelle Faible coût Haute disponibilité Tolérance aux fautes
II Stockage distribuéC) Stockage sur P2P
Inconvénients
Performance des réseaux Gestion de la cohérence Dynamicité du réseau Sécurité
II Stockage distribuéC) Stockage sur P2P
Plusieurs problématiques :Nommage, Localisation
○ Routage tolérant aux pannesDisponibilité & Pérennité
○ RedondanceSécurité & Confidentialité
○ Cryptographie & AuthentificationPartage des ressources
○ Equité et Cohérence des donnéesPerformance
○ Placement, migration
II Stockage distribuéC) Stockage sur P2P
Localisation
1ère génération : index centralisé
II Stockage distribuéC) Stockage sur P2P
Localisation
2ème génération : inondation
II Stockage distribuéC) Stockage sur P2P
3ème génération : DHT Structure du DHT Partitionnement des clés Structure du réseau Maintenance de la structure
Localisation
II Stockage distribuéC) Stockage sur P2P
Localisation
CHORD CAN KADEMLIA PASTRY TAPESTRY
II Stockage distribuéC) Stockage sur P2P
Données persistante redondance des données
Insertion et départ Exemple avec Chord
N32
N10
N5
N20
N110
N99
N80
N60
K19
K19
Disponibilité et pérennité
II Stockage distribuéC) Stockage sur P2P
K19
Il faut assurer que les données soient cohérente
Plusieurs modèles ayant une cohérence plus ou moins fortesCohérence forteCohérence faible
Cohérence et équité
II Stockage distribuéC) Stockage sur P2P
Données mise en cache Déplacement de données proactive
Equilibrage de charge Introspection
Optimisation
II Stockage distribuéC) Stockage sur P2P
II Stockage distribuéC) Stockage sur P2P
Plusieurs projets actuel : OceanStore (Berkeley) CFS (MIT) PAST (Rice) PASTA (Microsoft) Farsite (Microsoft) InterMemory (NEC)
Ivy (MIT) PlanetP (Rutger U.) Mnemosyne (sprintlab) Clique (HP) Mammoth (BC U) Ficus (UCLA) Tornado (Tsing Hua U.)
III Ocean Store ProjectA) Historique
John Kubiatowicz 1999 University of California, Berkeley 30 personnes
14 étudiants15 profs et externes
Open Source, Licence BSD (Pond) But du projet
III Ocean Store ProjectB) Fonctionnement
Hypothèses Localisation par DHT Disponibilité Modèle de cohérence Sécurité
« OceanStore is a global-scale persistent data store.
A consistent, highly-available, and durable storage »
Infrastructure « untrusted » Bande passante conséquente L’utilisation poussée du cache Résolution de conflit au niveau applicatif
III Ocean Store ProjectB) Fonctionnement
Hypothèses
Système développé à Berkeley pour les besoin d’Oceanstore.
Espace de clé est grand (2^160) Clé en hexadécimal : « 3ABB »
III Ocean Store ProjectB) Fonctionnement
Tapestry
Chaque noeud connait au moins un noeud de chaque niveau
III Ocean Store ProjectB) Fonctionnement
Tapestry : table des voisins
Exemple : 7642 6531
III Ocean Store ProjectB) Fonctionnement
Tapestry : Routage
Chaque objet est associé à un nœud racine
Le nœud racine est le nœud où on a noeudID = GUID
III Ocean Store ProjectB) Fonctionnement
Tapestry : Localisation/publication
III Ocean Store ProjectB) Fonctionnement
Tapestry : Localisation/publication
III Ocean Store ProjectB) Fonctionnement
Tapestry : Localisation/publication
III Ocean Store ProjectB) Fonctionnement
Tapestry : Localisation/publication
III Ocean Store ProjectB) Fonctionnement
Tapestry : Localisation/publication
Redondance :Deep Archival StorageReplica float Fragment code
Système de Gestion des Versions (SVN)
III Ocean Store ProjectB) Fonctionnement
Disponibilité
III Ocean Store ProjectB) Fonctionnement
Disponibilité
III Ocean Store ProjectB) Fonctionnement
Mise à jour :
Modèle de cohérence
Cryptage avec RSA Lecteurs possèdent la clé Auteurs authentifiés Fichiers et opérations cryptés
III Ocean Store ProjectB) Fonctionnement
Sécurité
III Ocean Store ProjectC) Critiques et limites
Critiques :Utilisation de Tapestry
Limites :Partie centraliséeHypothèses
Références
Bibliographie Olivier SOYEZ, 2002, La RIA, Système de Stockage Pair à Pair Sébastien VARETTE, 2005, Introduction aux Systèmes distribués Jean-François Deverge, 2003, IRISA, Systèmes distribués de partage de
données S. Rhea, P. Eaton, D. Geels, H. Weatherspoon, B. Zhao, and J.
Kubiatowicz. 2003, Pond: the OceanStore Prototype Franck CAPELLO, 2005, INRIA, P2P : Développement récents et
Perspectives Arvind Krishnamurthy, 2003, Fall, Tapestry Wrapup
Webographie http://fr.wikipedia.org/ et http://en.wikipedia.org http://oceanstore.cs.berkeley.edu/ http://schuler.developpez.com/articles/p2p/
MERCI POUR VOTRE ATTENTION
Avez-vous des questions ?
Annexes Architecture Centralisée vers Décentralisée
Technologie RessourcesRecherche de
ressourcesRecherche de
pairsMulti-source
Architecture client-serveur
centralisé centralisé centralisé non
Napster (1999) décentralisé centralisé centralisé non
Direct Connect (?)
décentralisé décentralisé centralisé non
eDonkey (2003) décentralisé semi-centralisé semi-centralisé oui
Kademlia (?) décentralisé décentralisé décentralisé oui