Middleware for service provision in disconnected mobile ad hoc networks
Intergiciel pour la fourniture de services dans les réseaux mobiles ad hoc discontinus
Résumé
Mobile ad hoc networks (MANETs) are spontaneously formed out of mobile devices that communicate thanks to short-range wireless communication capabilities (e.g. Wi-Fi, Bluetooth). In many ad hoc networks deployed in real conditions, mobile devices can exhibit highly dynamic behaviors of mobility and volatility. Because of their behavior and their distribution, the devices in such network environments form so-called "islands" whose topology evolves continuously, rather than a single fully connected network. In this work, I focus on this class of MANETs which I refer to as disconnected MANETs. Network-wide communication in disconnected MANETs is still a challenge, namely because routing techniques designed for fully connected MANETs cannot be applied. The store-carry-and-forward approach provides a solution. With this approach, a message can be stored temporarily on a node, in order to be forwarded later when circumstances permit. Mobility then becomes an advantage as it facilitates message propagation from one island to another. The service-oriented computing (SOC) model seems suited for ad hoc environments because it emphasizes the decoupled nature of its entities. Effectively, the decoupling between a client entity and a provider entity becomes essential in mobile environments with a fluctuating availability of providers, and where end-to-end communications are not guaranteed. Still, in existing service-oriented systems, providers are usually supposed to be available and always reachable. Therefore, implementing distributed services for such networks still poses several challenges. Not only network-wide communication features must be provided, in spite of constant network fragmentation, but aspects such as the unpredictable reachability of the providers, or potential communication delays, must be taken into account at the service level. I propose a service platform for mobile nodes that supports the execution of service-oriented applications in disconnected MANETs. The service platform is implemented as a middleware composed of two layers: a communication layer, and a service layer. The communication layer provides mechanisms to decouple two service entities in terms of temporaneous interaction, synchronous behavior, and mutual knowledge. For this layer (DoDWAN), I use an opportunistic and content-driven protocol. The service layer (DiSWAN) provides mechanisms that decouple service providers and clients in terms of interoperability and service contract. For this layer, I propose solutions for service discovery and invocation. The elements that construct the discovery protocol are the description and advertisement at the provider side, and collection and selection at the client side. Description includes functional and nonfunctional service properties, as well as context properties. Discovery is based on a peer-to-peer architecture, where a client collects only interesting services. Content-based invocations are used to benefit from the service replication, in case a multitude of providers can be offering the same business service. A client creates a functional request according to a discovered provider, then publishes its contentbased request message to the attention of all compatible providers. Profiting from this provider multiplicity can generate redundant messages, I propose network healing mechanisms in order to eliminate the redundant invocation requests and responses. Using a prototype implementation of the middleware, I conducted simulations in a disconnected MANET environment. The performances of discovery is directly related to those of the underlying communication layer. Simulations confirm the benefits of content-based invocations in providing faster response times and better client satisfaction. Simulations also show a drastic reduction of redundant and leftover messages when applying the healing mechanisms.
Les réseaux mobiles ad hoc (MANETs) se forment spontanément à partir de terminaux mobiles qui communiquent en utilisant des interfaces sans fil à faible portée (e.g. Wi-Fi, Bluetooth). Dans la plupart des réseaux ad hoc déployés dans des conditions réelles, ces terminaux mobiles peuvent être volatiles et distribués de manière clairsemée, et former par conséquent des îlots de connectivité qui évoluent continuellement. Dans cette thèse, je considère spécifiquement ce type de réseaux, qui sont appelés MANETs discontinus. Les communications dans les MANETs discontinus présentent un défi, parce que les protocoles de routage conçus pour les MANETs connexes ne fonctionnent pas dans de tels réseaux. L'approche storecarry- and-forward est proposée depuis quelques années pour palier les discontinuités du réseau. Elle permet à un nœud de stocker temporairement un message, afin de le transmettre plus tard quand les conditions deviennent favorables. La mobilité des nœuds devient alors un avantage, en facilitant la propagation des messages d'un îlot vers un autre. L'approche orientée services semble appropriée pour mettre en œuvre des applications dans les MANETs discontinus à cause de la nature découplée des entités qu'elle met en jeu. En effet, le découplage entre un client et un fournisseur de service est essentiel dans un environnement où la disponibilité des fournisseurs est fluctuante, et où les communications de bout en bout ne sont pas garanties. Malgré ce découplage, dans les systèmes orientés services existants les fournisseurs sont souvent supposés stables et toujours accessibles. Bien que l'approche orientée services semble appropriée dans les MANETs discontinus, la mise en œuvre de services distribués nécessite des communications dans l'ensemble du réseau, malgré la fragmentation de celui-ci. En outre, la mise en œuvre doit prendre en compte l'accessibilité non prévisible des fournisseurs, ainsi que les délais potentiels de la communication. Cette thèse propose une plate-forme de services pour les terminaux mobiles, qui supporte l'exécution d'applications orientées services dans les MANETs discontinus. La plate-forme consiste en un intergiciel structuré en deux couches : une couche de communication et une couche de services. La couche de communication permet le découplage entre deux entités en termes d'interactions dans le temps, de comportement synchrone, et de connaissance mutuelle. Pour cette couche de communication (DoDWAN), un protocole opportuniste et basé contenu est utilisé. La couche de services (DiSWAN) permet le découplage entre les fournisseurs de services et les clients en termes d'interopérabilité et de contrat de service. Pour cette couche, des solutions de découverte et d'invocation de services sont proposées. Les éléments du protocole de découverte sont la description et la publication du coté fournisseur, et la collecte et la sélection du coté client. La description inclut des propriétés fonctionnelles et nonfonctionnelles du service, ainsi que des propriétés contextuelles. La découverte est basée sur le modèle pair à pair, où un client ne collecte que les services intéressants. Les invocations sont basées contenu pour bénéficier de la réplication de services, dans le cas où plusieurs fournisseurs peuvent fournir le même service métier. Le client crée sa requête en connaissant un fournisseur déjà découvert, mais il publie cette requête afin qu'elle soit reçue par tous les fournisseurs compatibles. L'exploitation de la multiplicité des fournisseurs pouvant engendrer des communications superflus, plusieurs mécanismes de "guérison" du réseau ont été mis en place pour éliminer les requêtes et réponses d'invocation redondantes. Des simulations dans un MANET discontinu ont été effectuées. Les simulations montrent que la performance de la découverte étant directement liée à celle du protocole de communication et que l'utilisation des invocations basées contenu permet de meilleurs temps de réponses et une meilleure satisfaction du client. Les simulations montrent aussi que les mécanismes de "guérison" du réseau sont efficaces.
Loading...