Test et validation des systèmes pair-à-pair

par Eduardo Cunha de Almeida

Thèse de doctorat en Informatique

Sous la direction de Patrick Valduriez et de Gerson Sunyé.


  • Résumé

    Peer-to-peer (P2P) offers good solutions for many applications such as large data sharing and collaboration in social networks. Thus, it appears as a powerful paradigm to develop scalable distributed applications, as reflected by the increasing number of emerging projects based on this technology. However, building trustable P2P applications is difficult because they must be deployed on a high number of nodes, which can be autonomous, refusing to answer to some requests and even unexpectedly leaving the system. This volatility of nodes is a common behavior in P2P systems and can be interpreted as a fault during tests. In this thesis, we propose a framework and a methodology for testing and validating P2P applications. The framework is based on the individual control of nodes, allowing test cases to precisely control the volatility of nodes during their execution. We also propose three different architectures to control the execution of test cases in distributed systems. The first approach extends the classical centralized test coordinator in order to handle the volatility of peers. The other two approaches avoids the central coordinator in order to scale up the test cases. We validated the framework and the methodology through implementation and experimentation on two popular open-source P2P applications (i. E. FreePastry and OpenChord). The experimentation tests the behavior of the system on different conditions of volatility and shows how the tests were able to detect complex implementation problems

  • Titre traduit

    Testing and validation of peer-to-peer systems


  • Résumé

    Le pair-à-pair (P2P) offre de bonnes solutions pour de nombreuses applications distribuées, comme le partage de grandes quantités de données et ou le support de collaboration dans les réseaux sociaux. Il apparaît donc comme un puissant paradigme pour développer des applications distribuées évolutives, comme le montre le nombre croissant de nouveaux projets basés sur cette technologie Construire des applications P2P fiables est difficile, car elles doivent être déployées sur un grand nombre de noeuds, qui peuvent être autonomes, refuser de répondre à certaines demandes, et même quitter le système de manière inattendue. Cette volatilité des noeuds est un comportement commun dans les systèmes P2P et peut être interprétée comme une faute lors des tests. Dans cette thèse, nous proposons un cadre et une méthodologie pour tester et valider des applications P2P. Ce cadre s’appuie sur le contrôle individuel des noeuds, permettant de contrôler précisément la volatilité des noeuds au cours de leur exécution. Nous proposons également trois différentes approches de contrôle d’exécution de scénarios de test dans les systèmes distribués. La première approche étend le coordonnateur centralisé classique pour gérer la volatilité des pairs. Les deux autres approches permettent d’éviter le coordinateur central afin de faire passer à l’échelle l’exécution des cas de tests. Nous avons validé le cadre et la méthodologie à travers la mise en oeuvre et l’expérimentation sur des applications P2P open-source bien connues (FreePastry et OpenChord). Les expérimentations ont permis de tester le comportement des systèmes sur différentes conditions de volatilité, et de détecter des problèmes d’implémentation complexes

Consulter en bibliothèque

La version de soutenance existe sous forme papier

Informations

  • Détails : 2 vol. (118-39 f.)
  • Annexes : Bibliogr. f. 109-118

Où se trouve cette thèse\u00a0?

  • Bibliothèque : Université de Nantes. Service commun de la documentation. BU Sciences.
  • Disponible pour le PEB
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.