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


"

Algorithmique et techniques de base des


systmes rpartis

"

Introduction

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.)

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

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

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

Pourquoi des systme rpartis?

Organisation dun systme rparti

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


!

Un schma de base : lintergiciel (middleware)

Besoins propres des applications


" Intgration dapplications existantes initialement spares
" Intgration massive de ressources

APIs
haut niveau

# Grilles de calcul, gestion de donnes


" Pntration de linformatique dans des domaines nouveaux dapplication
# Intgration dobjets du monde rel (informatique omniprsente (ubiquitous
computing))
$

Application

Application

Mais les
frontires sont
mouvantes !

Intergiciel

Surveillance et commande dinstallations

Possibilits techniques
" Cot et performances des machines et des communications

APIs
bas niveau

" Interconnexion gnralise


#

Exemple 1 : interpntration informatique-tlcom-tlvision

Exemple 2 : Rseaux de capteurs

Systme
dexploitation

Systme
dexploitation
Communication

Lintergiciel sert de super-systme dexploitation pour les applications


2003-2004, S. Krakowiak

2003-2004, S. Krakowiak

Caractristiques des systmes rpartis (1)

Caractristiques des systmes rpartis (2)


!

! Proprits souhaites

" 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

" 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)

2003-2004, S. Krakowiak

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

Voies dtude des systmes rpartis

2003-2004, S. Krakowiak

Exemple de problmes fondamentaux


! Comment dcrire une excution rpartie ?

! Approche descriptive

! Comment dterminer des proprits globales partir dobservations


locales ?

" 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

! 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 ?

! Approche fondamentale

! Y a-t-il des problmes intrinsquement insolubles ? Et, dans une telle


situation, que fait-on en pratique ?

" 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

Difficults

! Comment dfinir, et maintenir, la cohrence dinformations rparties ?


! Comment garder un systme en fonctionnement malgr des dfaillances
partielles ?
7

2003-2004, S. Krakowiak

Voie dapproche des problmes fondamentaux

Plan du cours

! 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

" Ordre, temps, tat dans un systme rparti


" Observation cohrente
" Algorithmes rpartis de base

Gestion de donnes rparties (2 sances)


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

" 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)
9

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

Tolrance aux fautes (3 sances)


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

! Utiliser les modles

2003-2004, S. Krakowiak

Bases de lalgorithmique rpartie (3 sances)

11

2003-2004, S. Krakowiak

10