Institut National de Recherche en Informatique et en Automatique PowerPoint PPT Presentation

presentation player overlay
1 / 33
About This Presentation
Transcript and Presenter's Notes

Title: Institut National de Recherche en Informatique et en Automatique


1

Noel De Palma Sardes INRIA Rhône-Alpes Noel.depa
lma_at_inria.fr
2
Contributions à Arcad
  • Intégration d'aspects non-fonctionnels
  • Optimisation
  • Contribution à D1.4
  • Adaptation d'une application multimédia répartie
  • Prise en compte du contexte dexécution
  • Démonstration D4.3, D2.3
  • Déploiement des applications à base de composants
  • Infrastructure de déploiement
  • Contribution à D4.2

3
Intégration d'aspects non-fonctionnels
  • Modèles à composants
  • Séparation des aspects
  • Implantation des intergiciels
  • Objets dindirection (OI)
  • Composition hiérarchique multiplication des OI
  • En local surcoût significatif
  • Approche
  • Supprimer les OI par injection de code
  • Expérimentation dans lenvironnement Java

4
Approche générale
O2
O1
stub
skeleton
m()
injection
injection
5
Expérimentation
  • Deux aspects traités
  • Javanaise réplication dobjets
  • Contrôle daccès par capacités logicielles
    cachées
  • Pour chaque aspect
  • Implantation avec des OI
  • Implantation avec de linjection de code
  • Comparaison des performances des 2 approches

6
Javanaise liaison dynamique
Void m() If (ref_o2 null)
ref_o2server.fetch(o2_id) Ref_o2.m()
ref_o2 id_o2
Object o1
m()
ref_o2 id_o2
Stub_o2
m()
Void m() lock_read() ref_o2.m() unlock()
Skel_o2
m()
Object o2
7
Javanaise Injection de code (stub)
Public class O1 transient Itfo2 o2null Id
id_o2 // the id of the o2 object public
void x() // managing dynamic binding if (o2
null) o2 Server.fetch(id_o2)
o2.m()
Public class O1 Itfo2 o2null public void
x() o2.m()
8
Javanaise Injection de code (skel)
Public class O2 public int id_o2 private
short lock public void m() // code of the
lock_read method // code of the method m()
// code of the unlock method
9
Capacités cachées exemple du serveur
dimpression
Client
Print server
Text object
(1)
Printer object
text_capa
(2)
text_capa
(1) invoke printing (passing text_capa) (2) read
the file (using text_capa)
10
HSC implantation
Print server
Client
printer_skel
caller
print(t)
print(t)
print(t)
printer_stub
printer
text_stub
text
text_skel
inutile
11
HSC code
void init() println("Access Violation !")
void print(Text_itf text) obj.print(text)
obj.print()
obj.print()
obj.print()
Client
Printer_stub
Server
Printer_skel
String read() return obj.read() void
write(String s) println("Access Violation
!")
text.read
create
Text
Text_skel
obj.read
12
Mesures
m(O3)
O1
O2
O3
13
Conclusion sur linjection
  • Langage de description dinjection
  • Pattern  poids mouche 
  • Implantation du pattern par injection de code
  • Explorer dautres aspects
  • Application à des structures de composants
    hiérarchiques

14
Adaptation d'une application multimédia répartie
  • Variations des capacities réseau
  • Variations des capacités matérielles des
    terminaux
  • Variations des capacités logiciels

Diffusion TV
Comment gérer cette hétérogénéité, pour offrir un
accès efficace à tous les clients ? gt Adaptation
dynamique sur un proxy
15
Approche
  • Adaptation sur des nuds intermédiaires
  • Pourquoi ladaptation sur des proxy
  • Adaptations transparentes aux applications
    installées sur le client et le serveur
  • Configuration dynamique du proxy en fonction des
    conditions dexécution

16
Adaptation par transcodage
  • Transcodage transformation des données
    multimédia, à partir dun format original vars un
    autre format en sortie

17
Configuration dynamique du proxy
  • Configuration dune chaîne de transcodage à
    partir de composants multimédia

18
Expérimentation
  • Environnement dexpérimentation

19
Conclusion sur Adaptation d'une application
multimédia répartie
  • Transcodage des flux multimédia pour mieux gérer
    lhétérogénéité
  • Expérimentations dans plusieurs scénarios
    dapplications
  • Gains de performances significatifs

20
Infrastructure dadministration dapplications
réparties
  • Administration
  • Déploiement
  • Installation du Code
  • Instanciation
  • Démarrage
  • Surveillance
  • Reconfiguration
  • Les applications réparties sont difficiles à
    déployer, à administrer

21
Problématique
  • Cest une application répartie complexe
  • Difficultés liées à la répartition
  • Difficultés liées à la programmation de la
    fonction dadministration

22
Contexte
  • Projet OLAN
  • Objectif
  • Programmation des applications
  • Administration des applications

23
Vue densemble
24
Architecture
  • Composants administrables
  • Logique dadministration du composant
  • Modèle abstrait du composant
  • Opérations de configuration/reconfiguration/survei
    llance sur le
  • composant

25
Architecture
  • Niveau de Contrôleur
  • Logique dadministration de lapplication
  • Hiérarchie de composants contrôleurs
  • Passage à léchelle de la fonction
    dadministration

26
Architecture
  • Contrôleur
  • Modèle abstrait de lapplication
  • Opérations de configuration/reconfiguration,
    surveillance de lapplication
  • Fiabilité des communications

27
Architecture
  • Service de contrôle
  • Intermédiaire outils/contrôleurs
  • Création de la hiérarchie de contrôle
  • Communication avec les contrôleurs

28
Mise en oeuvre
  • Modèle dagent AAA
  • Objets  réactifs  se comportant suivant un
    modèle  événement réaction .
  • Propriétés des agents
  • État persistant
  • Réactions atomiques
  • Propriétés des communications
  • Asynchrones (mode déconnecté)
  • Fiables (garantie de délivrance)

29
Exemple
  • Pare-feux
  • Protection dun réseau par rapport à des attaques
  • Fichiers de trace ( log )
  • Application de gestion de  log 
  • Analyse a posteriori
  • Détection dintrusion, statistiques, compression

30
Exemple
  • Application de gestion de  log distribuée
  • Fédération de pare-feux
  • 100 pare-feux, 50000 machines
  • Coopération des applications de log
  • Vision globale pour le diagnostic des pannes et
    des attaques

31
Exemple
32
Conclusion
  • Problématique
  • Applications réparties difficiles à administrer
  • Détecter les problèmes
  • Effectuer des opérations de maintenance
  • Besoin dune infrastructure dadministration
  • Application répartie complexe à construire
  • Difficultés liées à la répartition
  • Difficultés liées à la programmation de la
    fonction dadministration

33
Conclusion
  • Contributions
  • Infrastructure dadministration
  • Vision cohérente de lapplication
  • Opérations de surveillance et de maintenance
  • Validée par lapplication de gestion de log
  • Algorithmes de reconfiguration
  • Cohérence globale des applications
  • Modèle de transaction étendue
Write a Comment
User Comments (0)
About PowerShow.com