Objectif du travail :
Les méthodes existantes de tests de protocoles des réseaux informatiques sont
basées sur une approche centralisée où toute l'activité de tests (injection de
stimuli et observations des réactions de l'implantation à tester) est réalisée
par une seule et même entité. Dans le nouveau contexte du test réparti, cette
activité est effectuée par un ensemble de testeurs parallèles appelés les PTCs
(Parallel Test Components). La difficulté réside essentiellement dans
l'écriture de la procédure de coordination entre les PTCs. En effet, elle est
d'une importance capitale car elle ne doit pas introduire de biais (i.e.
rejeter une implantation conforme) ni conduire à l'acceptation d'une
implantation incorrecte. Nous avons proposé une méthode [1] qui prend en
entrée un test centralisé et fournit en sortie un test réparti sous la forme de
PTCs échangeant des messages de synchronisation dans un environnement
asynchrone. Nous avons montré que le test réparti ainsi obtenu a le même
pouvoir de test que le test centralisé. Nous avons fait l'hypothèse de
l'existence d'un service de consensus permettant à chaque PTC d'effectuer un
choix local en accord avec les autres PTCs, à chaque étape de la progression
parallèle des PTCs. Cette hypothèse est trop forte et la synchronisation peut
être relachée à certaines étapes du test.
Le stage commencera par l'étude de la méthode développée dans [1] et mise en oeuvre dans un prototype d'étude. Il faudra aussi étudier les récentes tentatives de solutions dans le domaine. Il s'agira ensuite de proposer des solutions pour synthétiser automatiquement (en même temps que la distribution) la procédure de coordination des testeurs répartis. Les solutions préconisées doivent prendre en compte la spécificité du contexte ``boîte noire'' du test et le traitement de l'asynchronisme. Le stagiaire bénéficiera d'un environnement lui permettant de valider rapidement ses solutions : la boîte à outils CADP qui offre une architecture ``ouverte'' permettant de prototyper rapidement de nouveaux algorithmes en utilisant des primitives de manipulation de graphes et de stockage de haut niveau, l'outil TGV de génération automatique de tests développé par l'équipe Pampa, le prototype PiXiT qui permet de simuler des implantations et d'exécuter des tests répartis au dessus de TCP/IP, etc.
Bibliographie :
[1] C. Jard, T. Jéron, H. Kahlouche, and C. Viho,
Towards automatic distribution of testers for distributed conformance
testing, In S. Budkowski, A. Cavali, and E. Najm, editors, IFIP
TC6/WG6.1 Joint International Conference on formal description techniques,
and protocol specification, testing and verification, p. 353-368, Paris, nov 1998.
Commentaires divers :
Ce sujet convient plus particulièrement à tout stagiaire intéressé par le
domaine des réseaux, alliant à la fois des aspects théoriques (concepts,
modèles et langages pour la spécification formelle des systèmes répartis) et
des aspects pratiques (langages et outils de mise en oeuvre de tests et de
programmation des architectures de réseaux). Ce stage doit lui permettre
d'acquérir une bonne connaissance du domaine du test de réseaux pouvant lui
permettre soit de poursuivre en thèse sur les travaux engagés sur le test
réparti de système réparti dans l'équipe Pampa, soit d'intégrer une grande
entreprise de R&D Télécom.