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

Présenté par : Ben Saad Myriam Hentati Sonia Fatma

Présentations similaires


Présentation au sujet: "Présenté par : Ben Saad Myriam Hentati Sonia Fatma"— Transcription de la présentation:

1 Présenté par : Ben Saad Myriam Hentati Sonia Fatma
P2P et OSGi Encadré par : Mr. Mohamed Romdhani Présenté par : Ben Saad Myriam Hentati Sonia Fatma GL

2 Peer-To-Peer GL

3 Sommaire Définition Historique Architectures Avantages & Inconvénients
Applications GL

4 Définition Peer-to-peer = d’égal à égal
Tout nœud peut être simple client ou serveur de ses ressources (CPU, fichiers, …) Système d'échange direct de ressources entre machines connectées en réseau. Se distingue fondamentalement de l’architecture client / serveur. GL

5 Historique 1969 : première esquisse d'Internet, Arpanet s’appuie sur le concept du P2P 1979 : premiers échanges de fichiers 1996 : première messagerie instantanée en P2P : ICQ 1999 : le moteur de recherche Gnutella : partage de fichiers sur le web 1999 : Napster : échange de fichiers de musique en ligne 1999 : : programme de calcul distribué 2000 : Groove : plate-forme de travail de groupe 2001 : première conférence P2P organisée par l’éditeur O’Reilly GL

6 Architectures Centralisée. P2P
Index centralisé et données décentralisées. Pur P2P Index décentralisés et données décentralisées. GL

7 Architecture centralisée
Modèle client-serveur. 1 seul serveur stable est requis Il sert d’index et de stockage des données. Ce serveur peut être constitué de plusieurs machines stables. Tolérance aux pannes, extensibilité, … GL

8 Index centralisé / Données décentralisées
Principe : Chaque pair annonce à l’index la liste des ressources qu’il sert. Un pair requête l’index pour connaître la liste des pairs qui servent une ressource. Le chargement des données se fait de pair à pair. GL

9 Index centralisé / Données décentralisées
LE SERVEUR CENTRAL TRANSMET LA LISTE DES ORDINATEURS PROPOSANT LE FICHIER DEMANDE. L'USER TELECHARGE LE FICHIER DIRECTEMENT A PARTIR D'UN ORDINATEUR RENSEIGNE PAR LE SERVEUR. UN UTILISATEUR LANCE UNE REQUETE A LA RECHERCHE D'UN FICHIER DONNE. GL

10 Index centralisé / Données décentralisées
Avantage : Efficacité des recherches, facilité d'utilisation. Inconvénients : Complètement tributaire du serveur central. Aucun anonymat n'est garanti. Possibilité pour le serveur central de créer des fichiers clients et des profils d’utilisateurs pour les revendre à des compagnies spécialisées. GL

11 Index décentralisé / Données décentralisées
Principe : Découverte des pairs qui servent l’index. Les pairs qui servent d’index peuvent s’annoncer. Liaisons établies de proche en proche. Requêtes transférées et relayées. Fichiers transférés directement du demandeur au donneur. Réseau en perpétuelle mutation. GL

12 Index décentralisé / Données décentralisées
SI LE FICHIER NE S'Y TROUVE PAS, CHACUN DE CES ORDINATEURS TRANSMET CETTE MEME REQUETE A SES PAIRS CONNUS ET ACTIFS A CET INSTANT. LANCEMENT DE LA RECHERCHE POUR OBTENIR UN FICHIER. UNE REQUETE EST ENVOYEE AUX ORDINATEURS CONNUS PAR LE LOGICIEL. L'INITIATEUR DE LA REQUETE RECOIT LA LISTE DES FICHIERS CIBLES AVEC LEURS LOCALISATIONS. CONNEXION A L'ORDINATEUR EN QUESTION POUR RECUPERER LE FICHIER. GL

13 Index décentralisé / Données décentralisées
Avantages : Grande souplesse, grande robustesse. Anonymat (relatif) assuré car il n'y a pas de serveur qui stocke des données sur les utilisateurs. Inconvénients : Anonymat => risques de piratage et d’échange de données illégales. GL

14 Le P2P : Avantages Échanges plus rapides Résistance aux pannes
• car plus directs. Optimisation de l’utilisation de la bande passante du réseau • Équilibrage de la charge du réseau Maintenance et coûts réduits • Ressources réparties Résistance aux pannes • Réplication des ressources Extensibilité • Passage de 100 à nœuds sans problème Utilisation des ressources inutilisées • CPU, Stockage, … GL

15 Le P2P : Inconvénients QoS • Ligne peu fiable, débit peu élevé…
Sécurité • Crackers • Virus • Confidentialité • Authentification Contenu trompeur • Consistance • Contradiction Loi : Wild Wild Web • Droit d’auteurs • Contenu immoral GL

16 Applications Applications distribuées (Alternative au RPC)
Répartition de stockage • Multimédia, … Répartition de puissance de calcul Applications de collaboration Messageries instantanées Partage de fichiers Indexation et moteurs de recherche Jeux en réseau Enchères GL

17 OSGi (Open Services Gateway initiative)
GL

18 Sommaire Présentation Motivations Architecture Générale Bundles
Services Évènements du framework Sécurité Frameworks Open Source GL

19 Présentation Corporation indépendante fondée en Mars 1999 par une quinzaine de sociétés “ membres ” : Sun Microsystems, IBM, Ericsson et autres. Définit une norme pour développer et déployer des télé-services dans un ‘service gateway’ (serveur embarqué). GL

20 Présentation OSGi permet la gestion de modules Java embarqués sur des équipements tels que : des plateformes de services résidentiels, des téléphones mobiles, des modems ADSL, des équipements de mesure électrique, des applications modulaires comme l'IDE open-source Eclipse. GL

21 Présentation OSGi repose sur : un modèle de déploiement simple.
une gestion du cycle de vie des composants (conteneur de composants). des définitions de services standards. des API pour exécuter et gérer des services sur une passerelle. GL

22 Motivations Indépendance de la plate-forme
Chargement/Déchargement de code dynamique langage Java Déploiement dynamique d’applications Programmation orientée service dynamique GL

23 Architecture Générale
Un environnement OSGi comprend les entités suivantes : Passerelle OSGi (Service Gateway) Fournisseurs de service (Service Provider) Opérateur de la passerelle (Gateway Operator) Réseaux locaux et périphériques GL

24 Architecture Générale
Bundle - Unité de livraison et de déploiement sous forme d’une archive jar. Unité fonctionnelle (offre des services). Conteneur de composants bundle GL

25 Cycle de vie d’un bundle
Le bundle a été installé correctement. Le bundle démarre,il enregistre ses services,et obtient les services dont il a besoin. Toutes les classes que nécessite le bundle sont disponibles, il peut démarrer. Retour à l’état Resolved. Le bundle est actif. Le bundle s’arrête, il désenregistre ses services. Le bundle est désinstallé, il ne peut plus changer d’état. GL

26 Structure d’un bundle Ressources Services fournis Packages exportés
Activateur + objets métiers qui implémentent les services Fichier Manifest importés requis GL

27 Manifest Fournit des informations descriptives.
Essentiel pour le framework. Décrit le déploiement et l’exécution. Manifest-Version: 1.0 Bundle-Name: BundleHelloWorld Bundle-SymbolicName: BundleHelloWorld Bundle-Version: 1.0.0 Bundle-Description: Bundle qui affiche Hello World ! Bundle-Vendor: GL5 Bundle-Activator: atelier.hello.Activator Import-Package: org.osgi.framework GL

28 Manifest Informations nécessaires au framework : GL

29 Manifest Informations nécessaires au framework : GL

30 Activator • Implémente les 2 méthodes start() et stop() de
Classe publique • Implémente les 2 méthodes start() et stop() de BundleActivator. • qui reçoivent une référence sur un contexte. GL

31 Activator start(BundleContext ctxt) stop(BundleContext ctxt)
recherche et obtient des services requis auprès du contexte et/ou positionne des listeners sur des événements. enregistre les services fournis auprès du contexte. stop(BundleContext ctxt) désenregistre les services fournis. relâche les services requis. GL

32 BundleContext Interface vers le framework
• Passé lors des invocations de start() et stop() de l’Activator. Permet : • L’enregistrement de services. • L’obtention et la libération des services. • La souscription aux évènements du Framework. • L’accès aux ressources du bundle. • L’accès aux propriétés du framework. • L’installation de nouveaux bundles. • L’accès à la liste des bundles. GL

33 Services Une interface publique et des implémentations.
se trouvent dans des packages différents. implémentation normalement non publique. multiples implémentations possibles. « emballés » dans les bundles. Qualifiés par des propriétés. GL

34 Enregistrement d’un service
Le framework gére les services enregistrés en utilisant un objet ServiceRegistration. GL

35 Recherche d’un service
Le framework gére les références aux services en utilisant un objet ServiceReference. GL

36 Services standards (1) Log Service
Permet de journaliser des traces ou de se mettre en l’écoute de ces traces. Http Service Offre un serveur HTTP sur lequel les autres bundles peuvent enregistrer des ressources ou des servlets. Device Access Permet l’utilisation de périphériques matériels (chargement de drivers, utilisation de matériel plug-and-play). Service Tracker Suit l’évolution d’un service (enregistrement, modification, désenregistrement) GL

37 Services standards (2) Configuration Administration Service
Gère la configuration de l’environnement OSGI. Permission Administration Service Gère les droits du bundle. Preferences Service Gère la personnalisation. User Administration Service Définit les droits des utilisateurs. Package Administration Service Autorise l’import et l’export de packages. GL

38 Évènements du framework
Le framework expose différents évènements aux bundles à travers le bundle context : ServiceEvent : signale l’enregistrement, le désenregistrement, et le changement de propriétés pour les objets services. BundleEvent : signale les changements dans le cycle de vie des bundles. FrameworkEvent : signale que le framework a démarré ou rencontré des erreurs. GL

39 Sécurité Basée sur les permissions du JDK1.2
Définit 3 permissions standards : AdminPermission : Autorise l’accès aux fonctions d’administration du framework. ServicePermission : Contrôle l’enregistrement et la récupération de services. PackagePermission : Contrôle l’import et l’export de packages. GL

40 Knopflerfish GL

41 OSCAR GL

42 Passons à la démonstration
GL

43 Bibliographie Open Services Gateway initiative : http://www.osgi.org
Framework open source : • Richard Hall, « OSCAR, Open Service Container Architecture », • Knopflerfish OSGi : Complément de cours : • Donsez, Hall, Cervantes, Chomat •http://www.adele.imag.fr/donsez/cours/osgi.pdf • Donsez •http://www.adele.imag.fr/donsez/cours/p2p.pdf Site P2P d’O'Reilly : GL

44 Merci de votre attention.
GL


Télécharger ppt "Présenté par : Ben Saad Myriam Hentati Sonia Fatma"

Présentations similaires


Annonces Google