Security and self-healability enforcement of dynamic components in a service-oriented system

par Yufang Dan

Thèse de doctorat en Informatique et mathèmatiques

Sous la direction de Stéphane Frénot.

Soutenue le 14-05-2014

à Lyon, INSA , dans le cadre de École doctorale en Informatique et Mathématiques de Lyon , en partenariat avec CITI - Centre d'Innovation en Télécommunications et Intégration de services (Lyon, INSA) (laboratoire) et de CITI Centre of Innovation in Telecommunications and Integration of services / CITI (laboratoire) .

Le président du jury était Ioannis Parissis.

Le jury était composé de Stéphane Frénot, Ioannis Parissis, Lydie Du Bousquet, Gaël Thomas, Frédéric Dadeau, Nicolas Stouls.

Les rapporteurs étaient Lydie Du Bousquet, Gaël Thomas.

  • Titre traduit

    Sécurité et exécution autorétablie des composants dynamiques dans un système axé sur le service


  • Résumé

    Les architectures dynamiques orientées services (D-SOA) se concentrent sur les interactions client-serveur à couplage faible, où les deux peuvent apparaître et disparaître à l’exécution. Notre objectif est de concevoir des systèmes de surveillance pour ces architectures. Comme les systèmes de surveillance classiques sont statiquement injectés dans les services surveillés, ils ne peuvent pas gérer correctement le cycle de vie des services d’exécution. En outre, quand un service est remplacé par un autre service, d’autres services peuvent toujours utiliser l’ancienne référence. Cette référence vers un service absent, lorsqu’elle est gardée en mémoire, peut induire des comportements non désirés. Cette thèse contribue à la conception d’un système de surveillance de l’utilisation des services, qui soit résistant à la dynamique de la plateforme et qui soit en mesure de faire face à l’utilisation des références obsolètes. Ce but est atteint en trois étapes. Tout d’abord, en considérant le caractère dynamique des systèmes SOA dans un environnement ouvert, nous concevons une approche de monitoring résistant au la dynamique de la plateforme. Nous identifions deux propriétés clés du système de surveillance à couplage faible: résilience à la dynamicité, c’est-à-dire qu’un moniteur d’interface et son état sont maintenus en mémoire et transférés à un nouveau service lors de la disparition d’un service utilisé, et exhaustivité́, c’est-à-dire qu’un service surveillé ne peut pas contourner les observations du moniteur. Ensuite, pour éviter l’usage de références vers des services qui ne sont plus actifs, nous proposons un service de sécurité́ côté client (SSU Layer), qui permet de traiter ce problème de manière transparente. Si un service utilisé disparaît, la couche SSU peut soit substituer le service de manière transparente, soit lever une exception pour avertir explicitement le client. Cette couche SSU est basée sur une approche transactionnelle qui vise à préserver la cohérence des services actifs. Enfin, nous proposons d’intégrer les deux approches dans un nouveau système de surveillance (NewMS). Les NewMS hérite des principes des deux systèmes précédents : la résilience à la dynamicité, l’exhaustivité et la tolérance aux fautes. Il peut dynamiquement surveiller l’utilisation de services et traiter les références obsolètes de manière transparente. Ces trois propositions sont implémentées dans la plateforme OSGi. Nous avons développé une application simple qui simule un système de réservation de place, qui est monitoré par notre système. Nous avons également proposé différentes spécifications pour ce système. Nos résultats démontrent que le coût d’observation de notre moniteur est proche du coût d’un monitor classique, ne prenant pas en compte les problématiques liées à la dynamique.


  • Résumé

    Dynamic service-oriented architectures (D-SOA) focus on loosely coupled client- server interactions where both of them can appear and disappear at runtime. Our goal is to design monitoring systems for these architectures. Since classical monitoring systems are statically injected into the monitored services, they cannot properly handle the runtime services’ lifecycle. Moreover, when a service is substituted by a new one, other services may still use the old reference. This reference is kept in memory as a stale reference which induces some forbidden behaviors. This thesis contributes to design a monitoring system with resilient dynamicity that monitors services usage and is able to deal with stale references usage. This goal is achieved in three steps. Firstly, by considering the dynamicity of SOA systems in an open environment, we design a corresponding dynamic monitoring approach. We identify two key properties of the loosely coupled monitoring system: dynamicity resilience, i.e., after the unregistration of a service, its interface monitor and its current state are kept alive in memory and transferred to a new loaded service; comprehensiveness, i.e., the implementations of the monitored interface can’t bypass the monitor observations. Secondly, to avoid stale references usage, we propose a client-side safe service usage (SSU) layer to automatically handle them. If a used service disappears, then the SSU layer can either transparently substitute it or throw an exception to the client. This SSU layer is based on a transactional approach which aims to preserve the coherence of active services. Thirdly, we propose to integrate both approaches into a new monitoring system (NewMS). The NewMS inherits the principles of both systems: dynamicity resilience, comprehensiveness and fault tolerant. It can dynamically monitor service usage and transparently handle stale references of dynamic SOA systems. All the three propositions are implemented on OSGi-based platform. We develop a simple application that simulates an Airline Reservation system, which is monitored by our monitoring systems. We also develop various automata to handle the dynamicity of the Airline Reservation system in the NewMS. Our results demonstrate that the time cost of our monitoring systems is close to one of classical monitoring systems.


Il est disponible au sein de la bibliothèque de l'établissement de soutenance.

Consulter en bibliothèque

La version de soutenance existe

Où se trouve cette thèse\u00a0?

  • Bibliothèque : Institut national des sciences appliquées (Villeurbanne, Rhône). Service Commun de la Documentation Doc’INSA. Bibliothèque numérique.
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.