Vous êtes sur la page 1sur 3

cole Doctorale de Grenoble Master 2 Recherche Systmes et Logiciel

Quest-ce quun systme rparti?


!

Dfinition dun systme rparti


" Ensemble compos dlments relis par un systme de communication ; les lments ont des fonctions de traitement (processeurs), de stockage (mmoire), de relation avec le monde extrieur (capteurs, actionneurs) Les diffrents lments du systme ne fonctionnent pas indpendamment mais collaborent une ou plusieurs tches communes. Consquence : une partie au moins de ltat global du systme est partage entre plusieurs lments (sinon, on aurait un fonctionnement indpendant)
De manire plus prcise : toute expression de la spcification du systme fait intervenir plusieurs lments (exemple : prserver un invariant global, mettre des interfaces en correspondance, etc.)

Algorithmique et techniques de base des systmes rpartis


Introduction

"

Sacha Krakowiak
Universit Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/people/krakowia

Une autre dfinition... A distributed system is one that stops you from getting any work done when a machine youve never heard of crashes. Leslie Lamport
Dfinition humoristique, mais qui met laccent sur deux points essentiels linterdpendance entre les lments dun systme rparti limportance du traitement des dfaillances
2003-2004, S. Krakowiak 2

Pourquoi des systme rpartis?


La rpartition est un tat de fait pour un nombre important dapplications
!

Organisation dun systme rparti

Un schma de base : lintergiciel (middleware)


Mais les frontires sont mouvantes !

Besoins propres des applications


" Intgration dapplications existantes initialement spares " Intgration massive de ressources # Grilles de calcul, gestion de donnes " Pntration de linformatique dans des domaines nouveaux dapplication # Intgration dobjets du monde rel (informatique omniprsente (ubiquitous computing))
$ Surveillance et commande dinstallations

APIs haut niveau

Application

Application

Intergiciel APIs bas niveau

Possibilits techniques
" Cot et performances des machines et des communications " Interconnexion gnralise # # Exemple 1 : interpntration informatique-tlcom-tlvision Exemple 2 : Rseaux de capteurs

Systme dexploitation Communication

Systme dexploitation

Lintergiciel sert de super-systme dexploitation pour les applications


2003-2004, S. Krakowiak 3 2003-2004, S. Krakowiak 4

Caractristiques des systmes rpartis (1)


!

Caractristiques des systmes rpartis (2)


Difficults
" Proprit dasynchronisme du systme de communication (pas de borne suprieure stricte pour le temps de transmission dun message # Consquence : difficult pour dtecter les dfaillances " Dynamisme (la composition du systme change en permanence) # Consquences : difficult pour dfinir un tat global # Difficult pour administrer le systme " Grande taille (nombre de composants, dutilisateurs, dispersion gographique) # Consquence : la capacit de croissance (scalability) est une proprit importante, mais difficile raliser

! Proprits souhaites
" Le systme doit pouvoir fonctionner (au moins de faon dgrade) mme en cas de dfaillance de certains de ses lments " Le systme doit pouvoir rsister des perturbations du systme de communication (perte de messages, dconnexion temporaire, performances dgrades) " Le systme doit pouvoir rsister des attaques contre sa scurit (tentatives de violation de la confidentialit et de lintgrit, usage indu de ressources, dni de service) " Le systme doit pouvoir facilement sadapter pour ragir des changements denvironnement ou de conditions dutilisation " Le systme doit prserver ses performances lorsque sa taille crot (nombre dlments, nombre dutilisateurs, tendue gographique)

Malgr ces difficults, des grands systmes rpartis existent et sont largement utiliss le DNS (Domain Name System) (service de base) le World Wide Web (infrastructure) divers services sur lInternet (applications)
5 2003-2004, S. Krakowiak 6

2003-2004, S. Krakowiak

Voies dtude des systmes rpartis

Exemple de problmes fondamentaux


! Comment dcrire une excution rpartie ?
! Comment dterminer des proprits globales partir dobservations locales ? ! Comment coordonner des oprations en labsence dhorloge commune ? ! Comment partager des donnes en labsence de mmoire commune ? ! Quels sont les critres de qualit pour une application rpartie ? ! Y a-t-il des problmes intrinsquement insolubles ? Et, dans une telle situation, que fait-on en pratique ? ! Comment dfinir, et maintenir, la cohrence dinformations rparties ? ! Comment garder un systme en fonctionnement malgr des dfaillances partielles ?
7 2003-2004, S. Krakowiak 8

! Approche descriptive
" tude des divers modles de conception et de construction dapplications rpartis (client-serveur, vnements et messages, objets rpartis, composants rpartis, etc.) " tude des diverses classes de systmes, intergiciels et applications, et de leurs modes dorganisation et de fonctionnement " Cest lobjet du cours Construction dapplications rparties et parallles (CR) - les annes impaires

! Approche fondamentale
" tude des principes de base des systmes rpartis ; les problmes fondamentaux (et leur origine), les solutions connues, les limites intrinsques " Application de ces principes quelques situations concrtes " Cest lobjet du prsent cours

2003-2004, S. Krakowiak

Voie dapproche des problmes fondamentaux


! Dfinir des modles
" Un modle est une reprsentation dune partie du monde rel " Un modle reprsente des lments rels par des lments abstraits (qui ignorent ou simplifient divers aspects du rel) " Un mme systme rel peut tre reprsent par des modles diffrents # selon le problme auquel on sintresse # selon le degr de dtail souhait " Tout modle a des limites (pour son adquation la ralit), quil ne faut pas oublier

Plan du cours

Bases de lalgorithmique rpartie (3 sances)


" Ordre, temps, tat dans un systme rparti " Observation cohrente " Algorithmes rpartis de base

Tolrance aux fautes (3 sances)


" Approches pratiques : ralisation de serveurs fiables, validation atomique " Consensus, prise de dcision " Groupes, diffusion, cohrence

! Utiliser les modles


" Pour observer et comprendre le comportement du systme rel " Pour prdire le comportement du systme rel dans certaines circonstances " Pour aider commander le systme rel (lui imposer un comportement souhait)
2003-2004, S. Krakowiak 9

Gestion de donnes rparties (2 sances)


" Dsignation et localisation " Techniques pour la gestion globale de donnes (exemples)

2003-2004, S. Krakowiak

10

La bibliographie

! Deux types de rfrences


" Rfrences de base (souvent livres, parfois revues), relativement stables " Articles de recherche : avances rcentes, dure de vie en gnral plus limite " La bibliographie contient les deux types de rfrences " Le cours utilise en majorit (pas seulement) les rfrences de base " donc lire aussi les articles de recherche, selon votre intrt spcifique

! Divers degrs de pertinence


" On ne peut pas tout lire " donc classement slectif

2003-2004, S. Krakowiak

11

Vous aimerez peut-être aussi