510 likes | 870 Views
Le Peer-to-Peer. GALLO Stéphanie LIGOUT Yohann RICM 3 e année. Plan de la présentation. Les concepts du Peer-to-Peer La plate-forme JXTA La vision de Microsoft. Concepts et notions du P2P. Définition. Les architectures P2P. P2P vs client/serveur. Définitions.
E N D
Le Peer-to-Peer GALLO Stéphanie LIGOUT Yohann RICM 3e année
Plan de la présentation • Les concepts du Peer-to-Peer • La plate-forme JXTA • La vision de Microsoft
Concepts et notions du P2P • Définition. • Les architectures P2P. • P2P vs client/serveur.
Définitions • "égal à égal" ou "point à point". • Classe d’applications capables d’optimiser l’utilisation des ressources (CPU, stockage et bande passante) de l’ensemble du réseau. • Fusion des fonctions de client et de serveur.
Les architectures P2P le client/serveur • Le serveur est un intermédiaire de stockage pour les échanges de données entre clients. • Le serveur est un intermédiaire de communication. • Les seules ressources publiées sont celles localisées sur le serveur. Ex: Messagerie Mail.
Les architectures P2PLe modèle P2P centralisé • Modèle hybride entre client/serveur et pur P2P. • Le serveur est un intermédiaire de coordination ou/et de communication entre pairs. • La consommation des ressources se fait par connexion directe.
Les architectures P2PModèle P2P centralisé(Exemples) • Napster • Partage de fichiers musicaux. • Recherche effectuée sur l’index du serveur. • Groove • Service collaboratif d’édition de documents. • Service de relai pour coordonner les pairs sur le contenu des documents.
Les architectures P2PLe modèle P2P décentralisé • Pur P2P. • Pas de serveur dédié. • Les pairs publient et consomment des ressources. • Les pairs orientent les requêtes.
Les architectures P2PLe modèle décentralisé(Gnutella) • Aucun serveur central. • Découvertes et requêtes transmises de proche en proche. • Diffusion limitée par le TTL. • Connaissance locale du réseau.
P2P vs client/serveur (1/2) • Rapidité d’exécution: • Plus de puissance processeur; • Plus de capacité mémoire; • Temps de transit réduits. • Meilleur utilisation de la bande passante. • Tolérance aux pannes: • Connexions plus instables; • Redondance accrue des informations.
P2P vs client/serveur (2/2) • Coûts réduits: • Maintenance; • Equipements. • Meilleure capacité d’extensibilité. • Sécurité. • Problèmes éthiques (droits d’auteurs,...).
La plate-forme JXTA • Architecture • Les protocoles • Les ressources • La sécurité • Avantages/problèmes • A venir
Architecture De Sun Microsystems, Inc
Définitions • Peer: Un élément ayant implémenté le Peer Discovery Protocol; • Peer Group: ensemble de nœuds fournissant le même ensemble de service; • Pipes: Canaux de communication asynchrones et uni-directionnels; • Advertisement: Document XML qui décrit et annonce l’existence d’une ressource; • Message: Unité d’échange entre les nœuds.
JXTA Core • Comprend les primitives minimales nécessaires au P2P: peer, peer group, découverte, communication, contrôle et sécurité; • Cette couche est partagée par tous les nœuds.
JXTA Services • Services fournis en standard par la plate-forme; • Constituent une base pour développer des services plus élaborés. Ex: Indexage, échange de fichiers…
Les Protocoles (1/3) • Peer Discovery Protocol Pour découvrir les nœuds, les groupes de nœuds, les annonces ou toute autre ressource faisant l’objet d’un advertisement. • Peer Resolver Protocol Pour l’envoi et la réception de requête et de réponses;
Les Protocoles (2/3) • Peer Information Protocol Utilisé pour recueillir des informations sur le statut ou les capacités de n’importe quel élément de la plate-forme (peer, peer group, pipes…); • Peer Membership Protocol Régule les droits de création, d’entrée et de sortie des groupes de nœuds;
Les Protocoles (3/3) • Pipe Binding Protocol Utilisé pour définir la fonction d’un pipe pour les nœuds extérieurs; • Peer Endpoint Protocol Permet à un nœud d’interroger un nœud routeur pour connaître une route.
Les Advertisements (1/3) • Peer Advertisement: • PID unique, nom et Mot-clés optionnels; • Des Services et EndPoint Advertisements; • Les services lancés au boot du nœud (optionnel). • PeerGroup Advertisement: • GID unique, nom et Mot-clés optionnels; • Des Services Advertisements pour les services fournis; • Un service Advertisement concernant un service que l’on suggère de démarrer à chaque entrée dans le groupe.
Les Advertisements (2/3) • Pipe Advertisement: • ID unique et un nom optionnel; • Type de qualité de service fournie par le pipe. • Service Advertisement: • ID unique, nom et mot-clés optionnels; • Version du service et fournisseur; • Pipe advertisement du pipe à joindre (si nécessaire); • Liste des paramètres à l’invocation du service; • URI du lieu où trouver une implémentation du service; • Les méthodes du service.
Les Advertisements (3/3) • Content Advertisement: • ID unique du contenu; • Le type et la taille du contenu; • Le type de codage. • Endpoint Advertisement: • Nom et mots-clés optionnels; • Adresse virtuelle (par ex. tcp://123.124.20.20:1002).
Les Pipes • Abstraction de la couche transport du réseau • Deux modes de communication: • Point to point • Propagate De Sun Microsystems, Inc
Les Messages • Composés en XML • Peuvent contenir: • Des données; • Du code; • Des informations sur les ressources du réseau. De Sun Microsystems, Inc
La Sécurité • Basé sur le modèle « sujet-objet-action » • Fournit des bibliothèques de cryptographie • Basé sur les mécanismes et non sur les règles • Neutre vis-à-vis du système de cryptage
Avantages • Interopérabilité • Indépendance vis-à-vis de la plate-forme • Ubiquité Chaque nœud doit pouvoir profiter du fait d’être connecté à des millions d’autres nœuds.
Principaux problèmes • Mécanismes de découverte des ressources • Limitations de propagation des messages • Sécurité • NAT et pare-feu • Contrôle et mesures des capacités des systèmes
A venir • Implémentation C/C++ • Implémentation pour les PDA et téléphones cellulaires • Test à grande échelle • Service de nommage intégré à la plate-forme • Service de sécurité « tout en un »
La vision de Microsoft • A l’initiative de .NET • Qu’est-ce que .NET my services ? • Architecture • Sécurité
A l’initiative de .NET • Problème d’interopérabilité. • Manque de contrôle sur les informations personnelles. • Répétition des saisies à effectuer. • Lourdeur des procédures mise à jour.
Qu’est-ce que .NET My Services ? • Architecture centrée utilisateur. • Services permettant: • la protection des informations. • L’interaction entre services, applications et machines.
Architecture (1/2) • Chaque service a une vocation indépendante. Ex : déclinaison de l’identité (.NET Profile) agenda (.NET Calendar)... • Ce sont des services web XML. • Utilisation du standard SOAP.
Architecture (2/2) • HTTP comme protocole de transport. • L’utilisateur accède aux services via les "endpoints".
Sécurité - Principe • Chargement des informations personnelles dans la "digital safe deposit box ". • L’utilisateur détermine qui ou quel service a des droits d’accès sur ses données. • L’utilisateur peut révoquer les droits d’accès accordés. • L’utilisateur peut donner une date d’expiration aux droits d’accès accordés.
Sécurité - .NET Passport • Mécanisme d’authentification de .NET My Services. • L’utilisateur sélectionne les sites avec lesquels il partage des informations . • Encryptage des données transférées avec SSL. • Les sites utilisant .NET Passport doivent s’inscrire auprès de Microsoft.
Liens utiles • http://www.microsoft.com/myservices/services/faq.asp • http://www.microsoft.com/myservices/passport/overview.asp • http://www.openp2p.com/ • http://www.sun.fr/produits-solutions/logiciels/opensource/p2p • http://www.jxta.org • http://www.groove.net • http://www.limewire.com/