Programmé en MR2AMRIR701, MR2ARIR101
Présentation :
Responsable : Michel Raynal (michel.raynal@irisa.fr)
Équipe pédagogique : Michel Raynal
Le calcul réparti consiste à produire de la "valeur ajoutée" au-dessus d'un réseau. La question "Quelles tâches peuvent collectivement accomplir un ensemble de processeurs communicants ?" est l'une des questions fondamentales posées par le calcul réparti. La réponse à cette question constitue le fil conducteur de ce module dans lequel sont présentés des résultats positifs (algorithmes distribués) ainsi que des résultats négatifs (tels que des preuves d'impossibilité pour la résolution de certains problèmes dans certains contextes de communication et de fautes). La connaissance de ces résultats constitue la base à partir de laquelle il devient possible de concevoir des solutions réparties sûres de fonctionnement (provably correct software).
De façon générale, le calcul réparti surgit dès que l'on doit résoudre un problème en termes d'entités (processeurs, processus, agents, capteurs, pairs, acteurs, noeuds, etc.) telles que chaque entité n'a qu'une connaissance partielle des multiples paramètres du problème à résoudre. Alors que le parallélisme peut être caractérisé par la "recherche d'efficacité" sur une architecture donnée, le calcul réparti peut être caractérisé par la "maîtrise de l'incertitude" face à un support donné. Cette incertitude provient des communications qui peuvent être synchrones ou asynchrones, du type de défaillance que peuvent subir les entités ou les communications, du caractère dynamique du système, de la mobilité, du facteur d'échelle, etc.
À la fin du cours, seront maîtrisées les concepts qui permettent de mieux comprendre la nature de l'incertitude créée par le "réparti" et les techniques et mécanismes qui permettent de la maîtriser. Du point de vue méthodologie, les mots-clés de ce cours sont donc "comprendre" pour "apprendre" afin de savoir "faire" : lorsqu'une solution marche, on doit savoir pourquoi, et lorsqu'elle ne marche pas, on doit également savoir pourquoi (ce qui constitue le fondement même de la démarche scientifique).
Liens :
http://master.irisa.fr/master/live/modules/p2m1_fr.html
Volume horaire :
20h
Contenu détaillé :
Introduction : modèles de calcul réparti
Communiquer au-delà du "send" et du "receive" : la diffusion fiable uniforme
Modèle de défaillances : arrêt par crash, fautes d'omission, fautes byzantines
Le modèle synchrone (illustré avec le consensus et la validation atomique)
Le modèle asynchrone et quelques premiers résultats d'impossibilité
Le consensus est un objet universel, la hiérarchie de Herlihy
Le concept de détecteur de fautes
Le consensus dans les systèmes asynchrones à passage de messages
La mise en oeuvre de détecteurs de fautes
La cohérence de données réparties
Quelques grands résultats qui fondent le calcul réparti
Année 2016/2017
Dernière mise à jour le 04-MAY-16
Validation par le responsable de programme le
|