Université de la ManoubaEcole Nationale des Sciences de l’Informatique
Université de Lyon
Institut national des sciences appliquées de Lyon
THÈSE EN COTUTELLEPrésentée pour l’obtention du Diplôme de Doctorat en Informatique de l’INSA
de Lyon et de l’ENSI de Manouba
Préparée au sein des laboratoires CITI et laboratoire RIADI
AxSeL : un intergiciel pour le déploiement autonome et contextuel de services dans des environnements pervasifs
Amira Ben Hamida
1er février 2010
Intelligence ambiante
2
3
Intelligence ambiante et déploiement
4
Intelligence ambiante et déploiement
Approches de déploiement contextuel
AxSeL : un intergiciel de déploiement autonome et contextuelde services
Validation et évaluation des performances par un casd’utilisation réel
Conclusions et perspectives
Sommaire
5
Intelligence ambiante et déploiement
Approches de déploiement contextuelCritères de classification : vue globale, flexibilité, autonomie
Classification des approches de déploiement contextuel
Sommaire
6
7
Approches de déploiement contextuel : critères
8
Approches de déploiement contextuel
Critères A B C CORBA .NET MiDUSCCADeComp
SAMoHa
OSGi Spring SCA CARISMA SOCAM
Multi-fournisseur - + - - - - - - - - - - -
Déploiement + + + + + + + + + + + - -
Exécution - - + - - - - + + + + + +
Dynamicité - - + - - + - + - + + - -
Extensibilité - - - - - - - + + + + - -
Proactivité - - - - - - - + - + - + -
Réactivité - - + - - + + + - - - + +
A : installateurs d’applications : Install Shield, Actual Installer. B : installateurs de packages : Pkgmr, Dpkg, Red Hat Package Manager.C : gestionnaire d’applications : Foglight’s, Quest Manager.
9
Intergiciel de déploiement autonome et contextuel
Vue globale expressive et dynamique
• Architecture orientée services composants
• Multi-fournisseur, multi-dépôt
• Exécution, déploiement
Chargement, adaptation et déchargement.
• Chargement progressif de l’application
• Fonctionnement dégradé
• Déchargement partiel
Contributions de la thèse
10
Intelligence ambiante et déploiement
Approches de déploiement contextuel
AxSeL : un intergiciel pour le déploiement autonome etcontextuel de services
Architecture et dynamique d’AxSeL
Vue globale et flexible pour les applications orientées servicescomposants
Contextualisation autonome et adaptative
Sommaire
11
Architecture
Intergiciel d’exécution de composants et de services
Système d’exploitation
ServicesStandards
Services Applicatifs
Application
ServiceDe découverte
Intégration à l’intergiciel d’exécution
Dynamique avec les services applicatifs
Dynamique avec les services standards : découverte, appel distant, cycle de vie
ServicesStandards
Services Applicatifs
Service de gestion de cycle de vie
Service de déploiement
AxSeL
Machine distante
Système d’exploitation
12
Architecture
Services d’AxSeL :
extraction des dépendances, décision du chargement et gestion du contexte.
Modèles : application et contexte
Intergiciel d’exécution de composants et de services
Système d’exploitation
Application
Service d’extraction des dépendances
Service de décisiondu chargement
Service de gestion du contexte
A
Modèle du contexte
Modèle d’application
A
13
Dynamique de déploiement
Service d’extraction des dépendances
Descripteurs de dépôt de services et composants
Service de décisiondu chargement
Service de gestion du contexte
Adaptation
14
Modèle de service et composant
Installation, mise à jour,déchargement
Dépendances statiques
Service Service
Exécution Exécution, lancementDépendances dynamiques
Composant Composant
Installation Exporte
Importe
Importe
Exporte
0..n 0..n
Dépend
Dépend
Dépend
Dépend
15
Descripteur de dépôt Descripteur de dépôt
Descripteur de dépôt
Graphe bidimensionnel d’applications
16
Graphe bidimensionnel d’applications
S
S
S
S
C C
C
C
S
C
S
Service
Composant
A BA dépend B
C
Opérateur OU
Intelligence ambiante et déploiement
Approches de déploiement contextuel
AxSeL : un intergiciel pour le déploiement autonome etcontextuel de services
Architecture et dynamique d’AxSeL
Vue globale et flexible pour les applications orientées servicescomposants
Contextualisation autonome et adaptative
Extraction du graphe de dépendances de services et composants
Heuristique de décision de déploiement
Adaptation contextuelle dynamique
17
1818
S
S
S
S
C C
C
C
S
C
S
Applications contextuelles
Service d’extraction des dépendances
Service de gestion du contexte
Service de décisiondu chargement
Service
Composant
19
Extraction des dépendances : principe
Service ou composant en entrée
Construction du nœud correspondant
Extraction des dépendances et construction des graphes temporaires
Inclusion des graphes temporaires dans le graphe global
20
S1 C1, S2C1 C2S2 C2, S3C2 C3C3 C4S3 C3, S4 S4 C4C4 C5
Descripteur de dépôt
S3 C3, S’4S’4 C4C4 C5
Descripteur de dépôt
Extraction des dépendances : illustration
S2
C1 C2
S3
C3C4 C5
S’4S4S1
21
Chargement progressif de l’applicationTri pertinent des nœuds
Evaluation de l’installabilité des nœuds
Application d’un code de couleurs (rouge, blanc)
Installation et lancement des nœuds installables
Les nœuds non installables sont mis dans une liste prioritaire
Heuristique de décision de déploiement : principe
22
Multi-stratégie pour le parcours
Multi-critère pour la décision
Heuristiques de décision de déploiement : principe
Parcours
Profondeur Largeur BasVersHaut
Contrainte
Taille Priorité Sécurité
23
S1 S2
C1 C2 C3
S3
C5C4
S’4S4
20 K
10 K
10 K
20 K
40 K
40 K
10 K
10 K
5 K
10 K
Heuristique de décision de déploiement : illustration
Mémoire Disponible
160 Ko1401301201006020155
S4, C5
Adaptation contextuelle et dynamique
24
Dépôt
25
Ajout d’un nœud
Création du nœud et ajout au graphe
Ajout du nœud dans une liste de parcours prioritaire
Lancer la recoloration du graphe
Adaptation contextuelle et dynamique : ajout d’un nœud
26
S1 S2
C1 C2 C3
S3
C5C4
S’4S4
20 K
10 K
10 K
20 K
40 K
40 K
10 K
10 K
5 K
10 K
C4 C6
Descripteur de dépôt Descripteur de dépôt Mémoire Disponible
5 Ko0 Ko
C6
5 K S4, C5
Adaptation contextuelle et dynamique : ajout d’un nœud
27
Déchargement d’un nœud
Décoloration du nœud
Libération de la mémoire occupée
Propagation du traitement à ses dépendances
Adaptation contextuelle et dynamique : déchargement d’un nœud
28
S1 S2
C1 C2 C3
S3
C5C4
S’4S4
20 K
10 K
10 K
20 K
40 K
40 K
10 K
10 K
5 K
10 K
Mémoire Disponible
Ko105
S4, C5
0
C5, S’4
Adaptation contextuelle et dynamique : déchargement d’un nœud
29
Intelligence ambiante et déploiement
Approches de déploiement contextuel
AxSeL : un intergiciel pour le déploiement autonome etcontextuel de services
Validation par un cas d’utilisation réelEtude de cas : application de services documents
Evaluation des performances : comparaison et passage à l’échelle
Sommaire
30
Un service de visionnage de documents PDF,
Navigation dans le document :par clavier (keyNavigator),
par une interface graphique avec des boutons de navigation(widgetNavigator).
Services documents : étude de cas
Service
Composant
Opérateur Ou
31
Stratégie priorité
Services documents
32
Stratégie taille mémoire et priorité
Services documents
3333
Adaptation : ajout à la volée d’un nœud
Services documents
X45Ko
Dépôt
34
Adaptation : déchargement à la volée d’un nœud
Services documentsDépôt
35
Adaptation : réduction de la mémoire
Services documents
36
Adaptation : changement des préférences utilisateur
Services documents
37
OBR architecture de déploiement au dessus d’OSGi
Déploiement et fédération de dépôts
Graphes de dépendances générés artificiellement
Observation d’applications-types,
Graphe à 20 nœuds,
Chaque nœud composant a 1 à 5 dépendances,
Chaque nœud service a 1 à 3 dépendances.
Conditions d’évaluation
38
Comparaison avec OBR
Performance temps / mémoire
Graphe de 20 nœuds
Test avec et sans adaptation
39
Variation de la taille du graphe de dépendances
Temps d’exécution
Mémoire allouée
Passage à l’echelle
AxSeL adaptation
AxSeL adaptation
AxSeL décision
OBR décision
AxSeL extraction
OBR extraction
AxSeL décision
OBR décision
AxSeL extractionOBR extraction
40
Intelligence ambiante et déploiement
Approches de déploiement contextuel
AxSeL : un intergiciel de déploiement autonome etcontextuel de services
Validation et évaluation des performances par un casd’utilisation réel
Conclusions et perspectives
Sommaire
41
Conclusions
Un intergiciel pour le déploiement contextuel etautonome de services
Extraction des dépendances
Décision du chargement
Adaptation contextuelle
Une vue globale et flexible pour les applicationsorientées services
Brique de base service composant
Aspects multi-dépôt et multi-fournisseur
Flexibilité par modification, ajout et retrait
42
Perspectives
Améliorations à court terme
Auto-contextualisation d’AxSeL
Implémentation de nouvelles stratégies de décision
Optimisation des algorithmes d’adaptation
Enrichir les services et composants par des descriptionssémantiques
Concurrence d’applications
43
Perspectives : contextualisation verticale et horizontale
44
Perspectives : agrégation intelligente de dépôts
45
Revue
Une approche pour un chargement contextuel de services dans les environnements pervasifs. A. Ben Hamida, F. Le Mouël, S. Frénot, and M. Ben Ahmed. Ingénierie des Systèmes d'Information (ISI’2008)
Déploiement adaptatif d'applications orientées services. A. Ben Hamida, Frédéric Le Mouël, Stéphane Frénot, Mohamed Ben Ahmed. In Revues Techniques et Sciences Informatiques (TSI’2009) (en revision)
Conférences internationales
ROCS: a Remotely Provisioned OSGi Framework for Ambient Devices. Stéphane Frénot, Noha Ibrahim, Frédéric Le Mouël, Amira Ben Hamida, Julien Ponge, Mathieu Chantrel, Denis Beras , The 12th IEEE/IFIP Operations & Management Symposium (NOMS’ 2010)
A Graph-based Approach for Contextual Service Loading in Pervasive Environments. A. Ben Hamida, F. Le Mouël, S. Frénot, and M. Ben Ahmed. In Proc. of the 10th International Symposium on Distributed Objects and Applications (DOA'2008)
Resurrection: A Platform for Spontaneously Generating and Managing Proximity Documents. A. Ben Hamida and F. Le Mouël. In Proceedings of the IEEE International Conference on Pervasive Services (ICPS'2006)
Conférences nationales
Contextual Service Loading by Dependency Graph Colouring. A. Ben Hamida, F. Le Mouël, S. Frénot, and M. Ben Ahmed. In Proceedings of the 8th International Conference on New Technologies in Distributed Systems (NOTERE'2008)
Middleware minimal et auto-extensible pour le déploiement de services en environnement pervasif. A. Ben Hamidaand F. Le Mouël. In Actes des 3ème Journées Francophones de la Mobilité et Ubiquité (UbiMob'2006)
Approche pour un chargement contextuel de services sur des dispositifs contraints. A. Ben Hamida, F. Le Mouël,S. Frénot, and M. Ben Ahmed. In Actes du 6ème atelier sur les Objets, Composants et Modèles dans l'ingénierie des Systèmes d'Information (OCM-SI'2007)
Publications
Top Related