Vers une prise en charge des comportements rationnels dans les systèmes distribués
23 septembre 2015De nos jours, la notion de responsabilité dans un système distribué est devenue quasiment incontournable dans les techniques de détection de fautes. Elle permet non seulement de détecter les fautes mais aussi de fournir des preuves de dysfonctionnement contre les noeuds fautifs dans un système distribué. Les noeuds dits rationnels, c'est-à-dire des noeuds qui essayent de tirer profit du système en maximisant leur bénéfice sans y contribuer, en sont un exemple. Dans la littérature, il existe deux types de solutions exploitant cette notion : les solutions spécifiques et les solutions génériques. Les solutions spécifiques sont relatives à un type de système distribué donné et se construisent en tenant compte de la structure du système et de l'application qui s'y exécute. Les solutions génériques quant à elles, sont indépendantes du système. Dans cette thèse nous nous intéressons au second type de solutions c'est à dire les solutions génériques. Dans cette classe de solutions, il existe deux approches pour mettre en place la notion de responsabilité : l'approche matérielle et l'approche logicielle.
Actuellement le seul protocole logiciel, générique qui permet d'assurer la notion de responsabilité dans un système distribué, est le protocole PeerReview. Ce protocole n'est basé sur aucune configuration matérielle. Cependant, il n'est pas robuste aux comportements dits rationnels au sein de ses propres étapes.
Notre objectif est de fournir une solution logicielle sous-jacente renforçant la notion de responsabilité au niveau d'une application qui s'exécute sur un système distribué en présence de noeuds rationnels. Pour ce faire nous proposons FullReview un protocole qui se base sur la théorie des jeux pour motiver et forcer les noeuds rationnels à suivre les différentes étapes, non seulement au niveau de son propre protocole mais aussi au niveau de l'application qu'il surveille. En outre, FullReview utilise l'architecture classique d'un système responsable, qui associe à chaque noeud un ensemble de noeuds appelés moniteurs ou surveillants, et ayant un rôle de surveillance périodique du noeud en question. Nous prouvons théoriquement que notre protocole est un équilibre de Nash, c'est-à-dire que les noeuds rationnels n'ont aucun intérêt à dévier du protocole.
Ce genre de protocole étant coûteux en terme d'échanges de messages, nous nous sommes intéressés à l'étude théorique des différentes techniques de gestion des moniteurs ou surveillants. L'objectif de cette étude est d'identifier les conditions sur les paramètres du protocole pour lesquelles une méthode de gestion convient mieux qu'une autre.
De plus nous évaluons notre protocole en l'appliquant à deux applications largement utilisées : SplitStream, un protocole efficace pour la multi-diffusion de flux vidéo et Onion Routing, le protocole de communication anonyme le plus utilisé. Les résultats montrent que FullReview détecte efficacement les comportements rationnels avec un faible surcoût comparé au protocole PeerReview et passe à l'échelle comme ce dernier.
Mots clés : soutenance thèse