La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

www-sop.inria.fr/members/Didier.Parigot

Présentations similaires


Présentation au sujet: "www-sop.inria.fr/members/Didier.Parigot"— Transcription de la présentation:

1 www-sop.inria.fr/members/Didier.Parigot Didier.Parigot@inria.fr
Architectures des applications de l’Internet du Futur Décentralisées, Partagées, Mobile par tous Didier Parigot www-sop.inria.fr/members/Didier.Parigot

2 Programmable Overlay Network
Prototype de recherche lignes de Java Avec Baptiste Boussemart (1 an d’ingénieur)

3 Plan Court CV Survol rapide de PON Contexte : Les quatre couches
Quelques petites applications de PON Squelette de programmation Architecture de PON Architecture Orientée Service Information publiées dans l’Overlay Network Communication, Protocole de transport Conclusion

4 Mes travaux de recherche
Grammaire Attribuée : FNC [ ] Programmation dirigée par la grammaire, [méta-modèle] par Domain Specific Language (DSL) Programmation générative par excellence Fabrique logicielle : SmartTools [2000] Programmation générative Programmation par DSLs, par Aspects Programmation par composants, Architecture Orientée Services (SOA) Programmable Overlay Network : PON [2008] Architecture Orientée Services en Pair à Pair

5 SOA de SmartTools Pair à Pair ? DHT SOA Locale Passage en Réparti C3
ConnectTo CM Instances de composant OSGi Bundles SOA Locale

6 Organisation en P2P d’une application
Client Arrivée d’un Organisation Décentralisée Client Client Départ d’un Fournisseur Ses services Client Client Client Client Fournisseur Ses services Arrivée d’un Client Client Fournisseur Ses services Client Fournisseur Ses services Départ d’un

7 Pub/Sub des services en pair à pair
SOA P2P Client Client Fournisseur Client Réseaux de recouvrement CHORD Ses services Client Client Client Fournisseur Ses services Client Client Fournisseur Fournisseur Ses services Client

8 PON: les quatre couches
Navigateur Serveur GWT C3 Client Fournisseur CM Composants Chord CHORD VirtPipes JXTA OSGi Bundles OSGi

9 The Future of The Internet
Discovery Invocation Composition Planification Orchestration Mobility Topology Fault tolerance Load Balancing Reputation Extensible Decentralization Self organization Interoperability Scalability Security Underlay Network Virtual Pipes Overlay Network Pub/Sub Overlay Application SOA WEB Services Components Protocols Resources Wireless, Ad-hoc Network, Mobile Internet of Things

10 Quelques applications
Programmable Overlay Network Quelques applications

11 Chat instantané en P2P Les utilisateurs s'inscrivent (put) sur un SON et demandent à être en communication avec quelqu'un (get, connect)

12 Localisation de Services
Le prestataire de services publie pour une zone géographique leurs services dans un SON : put() l'utilisateur recherche en fonction de sa position, les services dans sa zone : get() et se connecte à un service Prestataire Utilisateur

13 Publication d’information en P2P
Publication d’une information (une liste) par un utilisateur Publication, Connexion, Partage, Edition Eric Utilisateur Application de type Web 3.0 Didier

14 Squelette de programmation Un DSL
ConnectTo() Put() Connect() Get() Send() Receive() Overlay Application SOA Overlay Network Pub/Sub Underlay Network Virtual Pipes

15 La programmation avec PON
Ecriture d’un projet Génération et lancement Ecriture des services Création d’un projet

16 Programmable Overlay Network
Archictecture

17 Architecture Modulaire de PON
CM ST Mod “local” ST Mod “PON” ST Mod ... Modules Services VirtPipes VP VP Mod ... Modules Communication “Openchord” KVS Mod ... Modules Key Values Storage Publication/Recherche

18 Architecture Orientée Services le « Run-time » de SmartTools
Composant Orienté Services (publication, recherche) Déclarative à l’aide d’un DSL (CDML) Couplage faible Inversion du contrôle Messages Asynchrones Dynamique (connexion des services) Orchestration Intégration dans OSGi, Eclipse En mode distribué et décentralisé Publication, Recherche, Organisation en P2P.

19 Technologies SOA : OSGi, Spring, SCA WebServices…
The Dynamic Module System for Java™ Passerelle OSGi Bundle = composant POJO (Objets) SOA locale Protocoles de communication Internet des Objets

20 Publication et recherche des services
Architecture Orientee Service ; SOA Appels synchrones sur des objets

21 Cycle de vie des Bundles: OSGi
Gestion : ClassPath Dynamique

22 SOA de SmartTools au-dessus OSGi Gestionnaire de Composants
Déclaration des Services Opération de connexion connectTo(C1, C2) Gestion des messages asynchrones Passerelle OSGi

23 Ingénierie dirigée par les modèles
Multi paradigmes Auto utilisée

24 Intégration de SmartTools dans Eclipse

25 Publication et Recherche des Services
Programmable Overlay Network Publication et Recherche des Services en Pair à Pair

26 Service-Oriented Architecture + Overlay Network
P2P apporte une Architecture Décentralisée (intelligente) SOA apporte un Modèle de programmation (d’application) Une ressource = un ensemble de services = un composant

27 Informations publiées dans Chord
Services : à chaque création de composant Nom de l’instance du composant-> Description des services du composant ID unique du tuyau virtuel d’entrée du composant ID du tuyau virtuel du gestionnaire de composants Map de services de sorties qui donne pour chacun un ID du tuyaux virtuel de sortie VirtPipes : à chaque JVM ID-VirtPipe -> ID-VirtPipesService ID-VirtPipesService -> liste des adresses IP + port 3 6 9 8 11 1 2 clé → valeur put(clé, valeur) valeur ← get(clé)

28 Programmable Overlay Network
Communication

29 Communication à la JXTA
Tuyau Virtuel Identificateur Unique par Tuyau API lectures/écritures non bloquantes (NIO) Publication/Recherche des tuyaux ou des services indépendant

30 Connexion entre A et B (unicast)
TCP B B B A CM CM ST Mod “local” ST Mod “PON” ST Mod “local” ST Mod “PON” VirtPipes VirtPipes NIO NIO GET B PUT Chord Chord A

31 Tuyau de communication : unicast
Pour chaque composant un tuyau d'entrée (service fourni) Publié dans le SON : nom du composant → tuyau Connexion connect (A,B), B à distance Le DS de A recherche dans le SON le tuyau d'entrée de B. Le DS de A crée un proxy associé au tuyau d'entrée de B. Le DS associe les sorties (service requis) de A à ce proxy B. L'opération connect s'effectue aussi dans l'autre sens. Autres informations publiées sur le SON Tuyau de service d'un DS pour effectuer les connexions dans le sens inverse.

32 Connexion entre A et B, B1 (multicast)
TCP B B1 A.a A.b CM CM ST Mod “local” ST Mod “PON” ST Mod “local” ST Mod “PON” VirtPipes VirtPipes NIO NIO A.a A.b PUT GET Chord Chord

33 Tuyau de communication : Multicast
Communication en MultiCast, écriture d'un seul message pour l'envoi d'un message vers une même JVM. Pour chaque service en sortie (écriture) d'un composant, publication d'un tuyau de sortie sur le SON. connect (A,B) et connect (A,B1), B et B1 sur la même JVM Le DS de B et B1 recherche sur le SON le tuyau de sortie (écriture) de A pour l'associé au service d'entrée (lecture) de B et B1 Le DS associe ce tuyau au service d'entrée (lecture) de B et B1 Une seule écriture du message pour deux lectures

34 Distribution de PON Distribution sous PON (Programmable Overlay Net) Les Bundles/Plugins de base pour PON. Version Plugins ou Bundles Exemples en version Standalone Chat Transport Le site de PON sop.inria.fr/members/Didier.Parigot/pon/ Informations sur l'installation et utilisation (source plugins/Eclipse) Développement en java Linux, Windows, Mac, Nokia 800

35 Petit logiciel

36 Logiciel modulaire

37 Quelques perspectives
Conclusion Quelques perspectives Web Protocole WorkFlow Overlay Application SOA Annuaire intelligent Alignement Overlay Network Pub/Sub Serveur de requêtes Underlay Network Virtual Pipes

38 Résumé Architecture Décentralisée = Partagée Pour Tous = Mobile
Pluridisciplinaire Petit logiciel

39 www-sop.inria.fr/members/Didier.Parigot
Programmable Overlay Network FIN www-sop.inria.fr/members/Didier.Parigot

40 Composition Structurelle
B f Transformation Donnée A A’ g Traitement Donnée B g’ B’ Traitement g’  g O f Donnée


Télécharger ppt "www-sop.inria.fr/members/Didier.Parigot"

Présentations similaires


Annonces Google