La programmation distribuée est une tâche difficile. Elle a énormément gagné en importance avec le développement des réseaux qui supportent un nombre croissant exponentiellement d'applications. Les systèmes distribués fournissent des fonctionnalités assurées par les noeuds qui forment un réseau et échangent des données et services, éventuellement par le biais de messages. La provenance du service n'est souvent pas pertinente, alors que sa fiabilité est essentielle. Notre objectif est de fournir un nouveau modèle de communication qui permet de spécifier intentionnellement lequel service est demandé, et non les noeuds qui le fournissent. Cette spécification intentionnelle des échanges offre un potentiel pour faciliter la programmation distribuée, garantir la persistance des données dans les messages et la résilience des systèmes, qui constituent le sujet de cette thèse. Nous proposons donc un cadre qui supporte des messages avec destinations intentionnelles, qui sont évaluées uniquement à la volée au fur et à mesure du déplacement des messages. Nous introduisons un langage, Questlog, qui gère les destinations intentionnelles. Contrairement aux langages à base de règles existants pour les réseaux, comme Datalog, qui suivent le mode push, Questlog permet d'exprimer des stratégies complexes afin de récupérer de manière récursive des données distribuées en mode pull. Le langage fonctionne sur une machine virtuelle qui s'appuie sur un SGBD. Nous démontrons l'approche avec des exemples pris dans deux domaines: (i) les architectures orientées données, où une classe restreinte d'applications client-serveur sont distribuées de manière transparente sur les systèmes pair-à-pair basés sur une DHT, (ii) les réseaux de capteurs sans fil, où un protocole de groupement des noeuds en clusters virtuels est proposé pour agréger les données. Dans ce protocole, les chefs des clusters sont élus à l'aide des destinations intentionnelles. Nos simulations sur la plate-forme QuestMonitor montrent que cette approche offre une simplicité, une modularité aux protocoles, ainsi qu'une fiabilité accrue.
Identifer | oai:union.ndltd.org:CCSD/oai:tel.archives-ouvertes.fr:tel-00908354 |
Date | 04 November 2013 |
Creators | Ahmad Kassem, Ahmad |
Publisher | INSA de Lyon |
Source Sets | CCSD theses-EN-ligne, France |
Language | English |
Detected Language | French |
Type | PhD thesis |
Page generated in 0.0017 seconds