Gestion des déconnexions pour applications réparties à base de composants en environnements mobiles

Les récentes avancées dans le domaine des communications sans fil aussi bien du point de vue réseau (GSM, GPRS, UMTS, Wi-Fi. . . ) que matériel (assistants personnels numériques, PC portables, téléphones portables. . . ) ont rendu possibles de nouvelles applications dans lesquelles l’utilisateur peut avoir accès à l’information à n’importe quel moment et depuis d’importe quel endroit. Ainsi, un nouveau paradigme est apparu connu sous le nom d’informatique mobile. L’informatique mobile se caractérise par le nomadisme des utilisateurs qui introduit le facteur de variabilité des capacités matérielles : mémoire, bande passante, batterie. . . Cette variabilité ne doit pas être vue comme une faute puisqu’elle est une conséquence de la mobilité des utilisateurs. Malheureusement, elle peut induire des déconnexions réseau. Nous considérons deux types de déconnexions : les déconnexions volontaires et les déconnexions involontaires. Les premières, décidées par l’utilisateur depuis son terminal mobile, sont justifiées par les bénéfices attendus sur le coût financier des communications, l’énergie, la disponibilité du service applicatif, et la minimisation des désagréments induits par des déconnexions inopinées. Les secondes sont le résultat de coupures intempestives des connexions physiques du réseau, par exemple, lors du passage de l’utilisateur dans une zone d’ombre radio.

Par ailleurs, le développement des intergiciels et des applications réparties pour les environnements mobiles est générateur de nouveaux défis. D’une part, de nombreuses problématiques similaires à celles rencontrées en environnements classiques nécessitent des traitements différents, d’autre part, des problématiques spécifiques à ces environnements doivent être traitées.

Introduction à l’informatique mobile 

Dans une étude sur la mobilité éditée en décembre 2002 par IDC (http://www.idc.fr), plus de 4,5 millions de personnes en France sont mobiles au sens qu’ils travaillent sur plus d’un lieu physique unique au sein de leur entreprise, et plus de 6 millions le sont à l’extérieur. Cette mobilité peut être locale, avec les réseaux sans fil de l’entreprise, comme elle peut être étendue, avec les réseaux sans fil à grande échelle. Par ailleurs, les réseaux informatiques ont évolué des simples réseaux locaux filaires à des réseaux sans fil interconnectant des équipements mobiles tels que les assistants personnels numériques (Personal Digital Assistant, PDA) ou les téléphones portables. Cette évolution a abouti au développement de l’informatique mobile dans laquelle l’utilisateur peut continuer à utiliser les services fournis par une infrastructure répartie quelque soit son emplacement.

Informatique mobile

Depuis le début des années 90, la forte évolution réalisée dans les réseaux sans fil et les terminaux mobiles suscite un intérêt croissant pour l’informatique [49]. En outre, l’être humain se caractérise par son nomadisme : il semble avoir été le premier à avoir quitté sa terre d’origine et peuplé progressivement les différents continents. Nous ne voulons pas rentrer dans l’histoire de l’humanité, mais juste souligner que l’être humain est par nature nomade. Aujourd’hui, cette ambition de nomadisme n’est pas uniquement liée à un désir ardent de promotion sociale mais aussi à une vision professionnelle [100]. En effet, dans son entourage professionnel, l’être humain utilise quotidiennement différentes sortes d’ordinateurs, au travail, à la maison ou même lorsqu’il voyage [145, 116, 157]. Ainsi, un nouveau paradigme est apparu, connu sous le nom d’informatique mobile. L’informatique mobile offre un mécanisme de communication flexible entre les utilisateurs et un accès à l’ensemble des services normalement disponibles dans un environnement classique (fixe), à travers un réseau, indépendamment de la localisation physique (géographique) et des déplacements de l’utilisateur. Nous décrivons dans les prochaines sections les différentes étapes de constitution de l’informatique mobile, ses caractéristiques et les problèmes qu’elle introduit.

Les premières machines informatiques étaient équipées d’un système d’exploitation mono-utilisateur et obligeaient l’utilisateur à être physiquement présent à côté de l’ordinateur. La deuxième étape de l’évolution est l’introduction du système d’exploitation multitâche qui permet de partager les ressources de l’unité de calcul centrale entre plusieurs programmes. Cependant, bien que l’utilisateur ne soit pas obligé d’exécuter ces tâches séquentiellement, sa présence physique est toujours exigée. L’étape suivante est l’apparition du système d’exploitation multiutilisateur. À cette époque, la machine est située dans une salle informatique, les utilisateurs y étant connectés au moyen d’un terminal ou d’un émulateur de terminal. Ceci permet de partager les ressources de l’ordinateur et d’être physiquement un peu plus éloigné de l’ordinateur. Ensuite, avec l’évolution des réseaux informatiques et des postes de travail, plusieurs limitations ont été résolues. Les utilisateurs disposent de leurs propres ressources, comme les postes de travail personnels dédiés, et de ressources partagées, comme les serveurs et les imprimantes qui sont accessibles à travers le réseau. Les systèmes répartis ont donc été l’étape suivante de l’évolution en offrant un éloignement géographique de grande envergure à travers des réseaux informatiques terrestres.

L’étape suivante de l’évolution avait comme objectif d’offrir à l’utilisateur plus d’indépendance envers son emplacement géographique. Les utilisateurs peuvent accéder aux ressources du système n’importe quand et n’importe où. Ainsi, l’informatique mobile vient répondre à ces objectifs. Enfin, l’étape la plus récente de l’évolution est l’informatique ambiante (en anglais, pervasive computing). Tout en incluant les domaines de recherche de l’informatique mobile, l’informatique ambiante ajoute d’autres domaines de recherche tels que la gestion efficace du contexte comme la localisation géographique [145].

Les environnements d’exécution des applications réparties classiques se basent sur plusieurs hypothèses [72]. Dans ces environnements, les ordinateurs sont connectés une fois pour toute à un réseau filaire et se caractérisent aussi par leurs puissances  offrent une bande passante stable, de bonne qualité et peu coûteuse voire même gratuite. Ces hypothèses sont différentes de celles de l’informatique mobile mettant en œuvre des réseaux sans fil et des terminaux mobiles. Dans un réseau sans fil, les utilisateurs sont mobiles et peuvent accéder à leurs applications depuis n’importe quelle localisation géographique. Cependant, la communication sans fil est moins fiable que dans les réseaux filaires. Le signal propagé sur le réseau sans fil subit des perturbations dues à l’environnement. Dans les cas extrêmes, ces perturbations conduisent à des déconnexions du terminal mobile.

Typologie de la mobilité

Mobilité du terminal
Aussi désignée par mobilité des unités, elle définit la capacité d’un terminal à changer sa localisation physique, en permettant à ce terminal d’accéder aux services à partir de n’importe quelle localisation. Cette mobilité est en effet le résultat du déplacement de l’utilisateur du terminal. L’utilisateur et le terminal forment alors une seule entité logique que nous appelons unité mobile. Ainsi, la relation qui existe entre le terminal et l’utilisateur est statique. Le réseau doit localiser et identifier l’unité mobile en déplacement tout en permettant l’accès aux services répartis de n’importe quel endroit. La relation entre le terminal mobile et le réseau est donc dynamique, tandis que la relation entre le réseau et les services est statique. La mobilité du terminal peut être classée suivant la disponibilité des services en deux catégories [70] : discrète ou continue. Dans la mobilité discrète du terminal, le déplacement de l’unité mobile est contrôlée seulement quand l’utilisateur n’est pas en communication. En d’autres termes, l’environnement mobile doit offrir la continuité de service à partir d’endroits fixes (maison, bureau. . . ) mais pas lorsque l’unité mobile se déplace d’un endroit à un autre. Par contre, la mobilité continue du terminal exige le maintien de la communication même lorsque l’unité mobile se déplace.

La mobilité continue des terminaux offre un avantage aux utilisateurs dans la mesure où ils peuvent continuer à travailler tout en se déplaçant. Cependant, cette mobilité exige des capacités réseau importantes [161]. En effet, les systèmes de gestion des réseaux sans fil doivent prendre en compte la mobilité des unités intra-réseau et inter-réseaux (cf. section 1.3.1). Les recherches qui existent sur la mobilité du terminal se focalisent particulièrement sur les aspects réseau [43] et les aspects système [126]. Le travail que nous présentons dans cette thèse aborde le problème des déconnexions d’un point de vue système.

Mobilité de l’utilisateur
La mobilité de l’utilisateur définit la capacité d’un utilisateur mobile à accéder aux services à partir de différents terminaux (fixes ou mobiles) de différentes localisations géographiques. Donc, contrairement à la mobilité du terminal, l’utilisateur et le terminal ne forment plus une entité unique, mais la relation entre eux est dynamique [24]. En outre, la relation entre le terminal et le réseau peut être statique (dans le cas où le terminal est fixe), comme elle peut être dynamique (dans le cas où le terminal est mobile). Ainsi, la mobilité de l’utilisateur peut inclure aussi la mobilité du terminal. Dans ce type de mobilité, les utilisateurs mobiles doivent s’identifier au niveau de chaque terminal afin d’utiliser les services. L’utilisateur mobile doit être muni d’un numéro ou d’un code d’identification personnel plutôt que d’un terminal, ce qui offre plus de flexibilité. Par exemple, dans le projet CESURE [130], les données personnelles de l’utilisateur mobile sont stockées dans une carte à microprocesseur. La mobilité de l’utilisateur a des répercussions sur le réseau de communication (filaire ou sans fil). En effet, ces réseaux doivent fournir les services suivants [103] :
– identification globale des utilisateurs en utilisant un schéma d’identification unique et sécurisé. Plusieurs travaux sont en cours de standardisation, en particulier le protocole SIP (Session Initiation Protocol) [66] ;
– adaptation de la présentation des services aux caractéristiques des terminaux pour permettre à l’utilisateur de mieux utiliser les services. Si le terminal n’offre pas les caractéristiques requises par le service, ce dernier peut être offert avec une qualité restreinte. Par exemple, pour afficher les pages Web, les téléphones portables de deuxième génération (cf. section 1.3.2) utilisent le protocole WAP (Wireless Application Protocol) [171].

Mobilité de la session

La mobilité session offre la possibilité aux utilisateurs mobiles de suspendre une session de travail ouverte sur un terminal et de la réactiver sur un autre terminal [176]. De plus, la suspension/réactivation de la session peut être initiée par l’utilisateur ou faite automatiquement. La session est définie comme une période dans l’espace-temps qui commence par l’activation du terminal ou le lancement d’un programme, qui se poursuit par une authentification et se termine par l’arrêt de ce qui a été démarré. Comme exemple de ce type de mobilité, le Teleporting [13] est un système qui permet aux utilisateurs d’assurer le rapatriement de leurs applications sur n’importe quelle station du réseau. Dans ce système, seuls les affichages sont transférés, les exécutions restant distantes. La mobilité de la session est généralement couplée soit avec la mobilité du terminal, soit avec la mobilité de l’utilisateur [104], ceci pour s’assurer que la session active n’est pas perturbée ou altérée quand l’unité mobile ou l’utilisateur se déplace [54]. Par ailleurs, la mobilité de la session est intimement liée au concept de réseau intelligent [135]. Les réseaux intelligents facilitent l’introduction et la modification de nouveaux services dans les réseaux : le profil de l’utilisateur est sauvegardé dans une base de données à laquelle l’utilisateur peut accéder pour contrôler les services qu’il utilise [7].

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela rapport-gratuit.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Introduction
I État de l’art
1 Introduction à l’informatique mobile
1.1 Informatique mobile
1.1.1 Introduction à l’informatique mobile
1.1.2 Problèmes de l’informatique mobile
1.2 Typologie de la mobilité
1.2.1 Mobilité du terminal
1.2.2 Mobilité de l’utilisateur
1.2.3 Mobilité de la session
1.3 Technologies liées à l’informatique mobile
1.3.1 Réseaux sans fil avec infrastructure et ad hoc
1.3.2 Terminaux mobiles
1.4 Synthèse
2 Intergiciel et séparation des préoccupations
2.1 Principes des intergiciels
2.1.1 Systèmes répartis à base d’intergiciel
2.1.2 Interactions entre services d’intergiciel
2.2 Types d’intergiciels
2.2.1 Intergiciels synchrones
2.2.2 Intergiciels asynchrones
2.2.3 Limitations des intergiciels
2.3 Séparation des préoccupations
2.3.1 Architecture basée sur les modèles
2.3.2 Paradigme composant/conteneur
2.3.3 Réflexivité
2.3.4 Programmation orientée aspects
2.3.5 Mécanisme d’interception
2.4 Synthèse
3 Gestion de déconnexions
3.1 Besoins et modes de fonctionnement
3.1.1 Besoins d’adaptation
3.1.2 Modes de fonctionnement
3.2 Opération déconnectée
3.3 Gestion de cache pour la déconnexion
3.3.1 Critères d’étude
3.3.2 Système orienté fichier
3.3.3 Système orienté base de données
3.3.4 Système orienté page web
3.3.5 Système orienté objet
3.3.6 Système orienté composant
3.4 Synthèse
II Contribution
4 MADA
4.1 Motivations et objectifs
4.2 Présentation générale de MADA
4.2.1 Présentation de l’application exemple
4.2.2 Modèle « 4+1 » vues de l’architecture
4.2.3 Patron de conception Façade
4.2.4 Présentation générale de MADA
4.3 Méta-modèle de MADA
4.4 Modélisation de l’architecture logicielle
4.4.1 Notion de service
4.4.2 Méta-données pour la gestion du cache
4.4.3 Profil UML pour la déconnexion
4.4.4 Développement des vues de l’architecture logicielle
4.5 Graphe de dépendances
4.5.1 Construction du graphe de dépendances
4.5.2 Propagation des méta-données
4.5.3 Représentation du graphe de dépendances
4.6 Discussion
4.7 Synthèse
5 Gestionnaire du cache de DOMINT
5.1 Introduction
5.2 Canevas logiciel DOMINT
5.3 Service de gestion du cache
5.3.1 Stratégie de déploiement
5.3.2 Stratégie de remplacement
5.3.3 Architecture
5.3.4 Caractéristiques des prototypes réalisés
5.4 Conteneur du composant
5.4.1 Modèle statique
5.4.2 Modèle dynamique
5.4.3 Implantation avec ECM
5.5 Discussion
5.6 Synthèse
6 Étude de performances
6.1 Objectifs
6.2 Manipulation du graphe de dépendances
6.2.1 Prototype de base
6.2.2 Prototype pour PDA
6.3 Stratégies de déploiement et de remplacement
6.3.1 Environnement du test
6.3.2 Résultats
6.4 Mesures de batterie utilisée
6.4.1 Environnement du test
6.4.2 Résultats
6.5 Synthèse
III Conclusions
Conclusions

Rapport PFE, mémoire et thèse PDFTélécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *