Evaluation de la performance des communications entre objets mobiles dans le système Aleph
Description
L'université des Andes a développé le système Aleph, un système à objets mobiles utilisant des communications efficaces sur un réseau de stations de travail. Un des intérêts de ce travail concerne les mécanismes utilisés pour assurer les communications en présence de migration. Quand un objet se déplace, les objets qui avaient une référence sur lui doivent la mettre à jour pour communiquer. Deux systèmes simples sont souvent utilisés et ont été bien étudiés précédemment, dans le cadre de la bibliothèque ProActive. Aleph utilise une combinaison de mécanismes pour atteindre ce but. Le premier est un système de caches présent sur chaque site qui maintient une vue locale des objets présents, récemment arrivés ou récemment partis (caching). Parallèlement, les sites peuvent s'échanger des informations pour mettre à jour leurs caches (préfetching). Il est aussi possible d'utiliser les messages échangés par les objets entre les sites pour échanger des informations de localisation (Piggybacking). Finalement, dans le cas d'un échec de la communication, un système de broadcast peut être utilisé.
Ce travail pourra donner lieu à une poursuite en these et à des collaborations avec le Venezuela.
Objectifs
L'objectif de ce travail est de proposer des éléments permettant la modélisation et l'évaluation des performances de ce système.Il pourra être intéressant de comparer ces strategies avec celles déjà implémentées dans la bibliothèque ProActive. Étant donné l'ampleur de ce travail, l'étudiant pourra commencer par étudier les éléments suivants:
- modèles adaptés à ce genre de système.
- modèles permettant d'évaluer les performances de chacun des mécanismes séparemment.
- Importance de chacun des mécanismes sur les performances globales du système (en utilisant par exemple un simulateur à événements discrets ou en faisant des expériences grandeur nature)
Pré-requis
- Bonne connaissande de l'evaluation de performance
- Connaissances en systemes distribues ou mobiles
- Connaissances des langages C/C++ et Java
Encadrement
Références