SAMOVAR UMR 5157

  • Accueil
  • Accueil
  • Accueil
  • Accueil

CNRS

Rechercher




Accueil > Équipes > ACMES > Bilan scientifique 2008-2013 > Axes de recherche

Intergiciels et algorithmique pour les environnements ubiquitaires

Intergiciels et algorithmique pour les environnements ubiquitaires

  • Membres : Djamel Belaïd, Guy Bernard (HDR, jusqu’au 1/1/2011, retraité), Sophie Chabridon, Denis Conan, Claire Lecocq, Sébastien Leriche (jusqu’au 1/2/2013, mutation à l’ENAC), Chantal Taconet (HDR) ;
  • Doctorants : 9 dont 5 soutenues
  • Post-doctorants : Zakia Iman Kazi Aoul (mai 2008 à février 2009), Alain Ozanne (décembre 2008 à mars 2011)
  • Ingénieurs de recherche : Cao-Cuong Ngo (décembre 2009 à décembre 2010), Cong Kinh Nguyen (novembre 2008 à décembre 2010 )

Nous nous intéressons aux algorithmes et services intergiciels pour les environnements mobiles (équipements,
composants logiciels et utilisateurs mobiles), ouverts (arrivée et départ de nouveaux équipements et services),
ambiants (adaptation du système à l’environnement ambiant) et diffus (les dispositifs et systèmes informatiques
disparaissent). Les contributions sur la période s’articulent en quatre points : algorithmique répartie pour réseaux
très dynamiques, services intergiciels répartis pour l’observation du système et de son environnement ambiant,
intergiciels et algorithmes répartis pour les adaptations dynamiques, et déploiement autonomique.

Algorithmique répartie pour réseaux très dynamiques

En vue de la fiabilisation des applications réparties en environnement ubiquitaire, nous nous intéressons à la
problématique de la tolérance aux entraves spécifiques à ces environnements, plus précisément les déconnexions et les
partitionnements, en plus des défaillances. Nos travaux sur cette problématique ciblent la construction de solutions
algorithmiques pour les services intergiciels de communication de groupe. Nous avons commencé par étudier plus
particulièrement la partie gérant la formation des groupes. Par analogie avec l’approche que nous suivons en matière
d’adaptation dynamique en cours d’exécution des applications ubiquitaires sensibles au contexte, les solutions
algorithmiques que nous développons font collaborer les algorithmes des services intergiciels avec ceux de la partie
applicative : c’est l’approche collaborative mise en avant dans [1][Satyanarayanan, 1996] et [Satyanarayanan, 2001] [2]
Notamment, le résultat d’impossibilité de la gestion de groupe démontré dans [Fischer et al., 1985] [3] et [Chandra
et al., 1996] [4]
implique que le service de gestion de groupe ne peut pas fournir seul (comme dans une approche par
« transparence ») des informations de qualité suffisante sur les défaillances, les déconnexions, et les partitionnements
dans les réseaux très dynamiques.

Nous avons commencé par étudier la différence entre la détection de défaillances et la détection de déconnexions,
puis de partitionnements [254, 182]. Ensuite, nous avons travaillé à l’uniformisation du traitement de la détection
de ces trois types d’entraves pour construire un service de gestion de groupe partitionnable pour systèmes répartis
très fortement dynamiques. Comme montré dans [Pleish et al., 2008]
 [5]
, aucune des spécifications existantes dans
la littérature ne satisfait les deux exigences antagonistes suivantes : 1) être assez forte pour fournir des garanties
utiles aux applications réparties dans les systèmes partitionnables, 2) être assez faible pour être résoluble. Dans
nos travaux, nous fournissons à notre connaissance la première spécification respectant ces deux exigences [122,
272, 309]. Nous commençons par définir un modèle de système réparti adapté aux caractéristiques des réseaux
mobiles spontanés. Concernant la première exigence, notre spécification de gestion de groupe partitionnable évite
l’apparition de vues dites capricieuses : l’apparition ou la disparition d’un processus d’un groupe est la conséquence
d’un événement effectivement survenu dans le monde réel. Pour montrer le respect de la seconde exigence, nous
implantons la spécification en transformant le problème en une séquence de consensus dits abandonnables, chaque
consensus étant constitué d’un détecteur ultime des - participants d’une partition et d’un registre ultime par
partition. Une thèse a été soutenue en 2012 (Léon Lim) et 4 publications ont été effectuées sur la période.

Services intergiciels répartis pour l’observation du système et de son environnement ambiant

Que ce soit pour l’informatique mobile (besoin d’identifier des situations dans des environnement d’exécution instables),
pour l’informatique diffuse (besoin d’analyser les informations en provenance de l’environnement ambiant)
ou pour l’informatique autonomique (besoin d’observation et d’analyse du système), la prise de décision pour le
déclenchement d’adaptations repose sur des services intergiciels qui fournissent au système des informations de
contexte pertinentes et de haut niveau d’abstraction. Nous avons proposé une approche impérative pour d’une part
formuler des expressions de contexte et d’autre part les transformer en un graphe d’assemblage de composants
de contexte [69]. Ces travaux ont été effectués dans le cadre du développement du cadriciel COSMOS. Sur cette
période, nous avons proposé un langage dédié (COSMOS DSL) pour décrire les expressions de contexte. Nous avons
suivi l’approche transformation de modèle pour produire des artefacts logiciels de gestion de contexte à partir des
expressions de contexte. En collaboration avec l’axe « Intelligence Collective et social », nous avons comparé les
approches impérative d’une part et par inférence d’autre part pour l’obtention d’informations de contexte de haut
niveau d’abstraction. En outre, les informations de contexte étant par nature imprécises et parfois incohérentes,
nous avons proposé des algorithmes afin d’extraire, interpréter et analyser la qualité des informations de contexte.
Enfin, nous nous sommes attachés à proposer des solutions intergicielles permettant de libérer le concepteur d’applications
des aspects liés à la gestion de contexte en lui proposant d’exprimer des contrats d’observation de contexte.
L’ensemble de ces travaux ont donné lieu à plusieurs publications [49, 247, 293, 153, 186, 2, 65]. Une thèse a été
soutenue sur la période (Zied Abid) et trois thèses sont en cours sur le sujet (Nadia Masmoudi, Samer Machara
Marquez et Sam Rottenberg). Un projet ANR INFRA a démarré en 2012 (INCOME, INfrastructure de gestion de
COntexte Multi-échelle pour l’Internet des Objets avec l’IRIT Toulouse et la société ARTAL).

Intergiciels et algorithmes répartis pour adaptations dynamiques de systèmes répartis

Dans un premier temps, nos travaux sur l’adaptation dynamique ont porté sur la phase de déploiement. Nous avons
proposé le concept d’assemblage de composants sensible à son contexte d’exécution. Le résultat étant la construction
dynamique d’un assemblage adapté à la fois aux caractéristiques logicielles et matérielles des terminaux et serveurs
ainsi qu’aux caractéristiques de l’environnement ambiant (utilisation des contrats lors du déploiement [48]). Durant
cette période, nous avons proposé d’étendre la phase d’adaptation du système lors de son exécution. Pour cela,
nous avons proposé d’ajouter une préoccupation de sensibilité au contexte dans le processus de conception des
applications [64, 292]). Le résultat du processus de conception est un modèle d’adaptation qui dirige les adaptations
à l’exécution. La définition de modèles d’adaptation va de pair avec des intergiciels qui mettent en oeuvre les
adaptations à l’exécution. Nous avons proposé des intergiciels pour la sélection dynamique d’algorithmes de synchronisation
de données [197], pour la sélection de terminaux [242] et de composants [228], pour la reconfiguration
dynamique de composants [65], pour la sélection de patrons d’adaptation [60], ainsi que pour la composition de
services [229, 32]. Trois thèses ont été soutenues sur le sujet dans la période (Hamid Mukhtar, Abdul Malik Khan
et Imen Ben Lahmar).

Déploiement autonomique de systèmes répartis

Nous nous sommes intéressés à l’automatisation du déploiement de logiciels répartis dans des environnements ouverts
et des systèmes grande échelle (tels les grilles et les systèmes P2P). Ces environnements sont par nature
distribués, hétérogènes et de nature instable. Nos propositions concernent le déploiement décentralisé de composants
logiciels en environnement instable. Pour un certain nombre de cadriciels de déploiement distribué, le domaine
de déploiement doit être connu à l’avance. Dans nos travaux, nous nous intéressons à un domaine de déploiement
découvert dynamiquement et potentiellement instable. Nous avons proposé un langage dédié au déploiement autonomique
pour exprimer des contraintes de déploiement sans connaissance préalable du domaine de déploiement.
Nous avons conçu une infrastructure répartie pour découvrir le domaine de déploiement, collecter les propriétés
des sites cibles afin de résoudre les contraintes de déploiement. Enfin, nous proposons un intergiciel à base d’agents
mobiles pour la réalisation et la supervision du déploiement autonomique. Ces travaux ont donné lieu à deux
publications sur la période [124, 267]. Une thèse est en cours sur ce sujet (Mohamed Amine Matougui).



[1Satyanarayanan, M. (1996). Fundamental Challenges in Mobile Computing. In Proc. 15th ACM Symposium on Principles of
Distributing Computing, pages 1–7, Philadelphia, USA.

[2Satyanarayanan, M. (2001). Pervasive Computing : Vison and Challenges. IEEE Personal Communications, 8(4) :10–17.

[3Fischer, M. J., Lynch, N. A., and Paterson, M. S. (1985). Impossibility of distributed consensus with one faulty process. Journal
of the ACM, 32(2) :374–382.

[4Chandra, T., Hadzilacos, V., Toueg, S., and Charron-Bost, B. (1996). On the Impossibility of Group Membership. In Proc. 15th
ACM Symposium on Principles of Distributing Computing, Philadelphia, USA.

[5Pleish, S. and Rutti, O. and Schiper, A. (2008). On the Specification of Partitionable Group Membership. In Proc. 7th European
Dependable Computing Conference, Kaunas, Lithuania, pages 37–45