Une architecture pour les systemes repartis a objets mobiles
Institution:
Paris 6Disciplines:
Directors:
Abstract EN:
Pas de résumé disponible.
Abstract FR:
La migration est une abstraction inherente aux systemes repartis. Malgre une grande quantite de recherches et certains resultats importants, aucune solution satisfaisante n'a ete jusqu'a presente proposee. Cette these decrit une architecture de support de migration de grappes entre sites et d'objets entre grappes. Le mecanisme de migration est reellement separe de la politique. La strategie de copie est selectionnee de facon telle que les temps, les tailles et les durees du transfert peuvent etre dynamiquement ajustes, meme durant la migration. Le temps d'inactivite du protocole est celui d'un message asynchrone (12,3 msecs dans les experiences). La migration ne requiert ni du support langage, ni de passerelles, ni de mutation de pointeurs. Une technique de synchronisation pouvant substituer le gel ordonnanceur dans certains cas est concue. La technique est divisee en synchronisation interne et externe. L'interne consiste a synchroniser les activites de facon telle de ramener la grappe vers un etat d'inactivite. L'externe consiste a prevenir une situation d'interblocage en reparti. L'invocation est generique et selectionne la methode de communication selon la localite du destinataire : intra-grappe, inter-grappe locale et inter-grappe distante. Intra-grappe a une performance equivalente a un appel de procedure indirect. Inter-grappe locale utilise une technique d'appel a distance leger (lrpc), adapte aux objets et a la migration, qui est plus performante que des messages locaux. Dans les trois cas, l'utilisation des references sur les tapons du serveur est possible et ameliore les performances. Un schema de mise a jour ou l'identification est reellement separee de l'invocation est etudie. Les entites migrantes enregistrent leur nouvelle localite dans un serveur virtuellement centralise nomme binder. Les clients declenchent la mise a jour lorsqu'une invocation echoue a cause de migration, puis effectuent une requete de localite au binder. La duree esperee de mise a jour est de 3 messages asynchrones et independante du nombre de migrations. La repartition du binder est adaptable a l'augmentation d'echelle et permet des performances de mise a jour equivalentes a la duree d'un message local. Tous ces problemes sont efficacement resolus sans sacrifier aucune fonctionnalite traditionnelle d'un systeme reparti. Des applications n'effectuant pas de migration ne paient pas ce support.