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

S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003 1 Les Réseaux « peer to peer »

Présentations similaires


Présentation au sujet: "S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003 1 Les Réseaux « peer to peer »"— Transcription de la présentation:

1 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Les Réseaux « peer to peer »

2 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Plan 1.Le peer to peer 1.Définition 2.Historique 3.Applications 4.Les différentes architectures 5.Comparatif (avantages / inconvénients) 2.Le protocole Gnutella 3.Le projet JXTA

3 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Définition Peer to peer en français : « dégal à égal » ou « pair à pair » Système d'échange direct de ressources entre machines connectées en réseau Se distingue fondamentalement de larchitecture client / serveur

4 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Historique Historique : –Années 60 : à lorigine Internet était axé sur l échange dinformations entre universités (Arpanet) –1999 : Napster (S.Fanning), architecture centralisée qui compte plus de dusagers en 2000 –2000 : Gnutella (AOL – Nullsoft), architecture décentralisée –2001 : Kazaa (Zennstrom & Fiis), projet JXTA (Sun), architecture centralisée-décentralisée

5 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Calcul distribué Ex : projet SETI Échange de fichiers Ex : Napster, Gnutella, Kazaa, … Stockage distribué, plate-forme de développement et groupes de collaboration Ex : JXTA Le peer to peer : Applications

6 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Architectures Architecture centralisée : –Mise en relation à partir du serveur –Puis liaison directe entre les clients Architecture client / serveur : –Ce nest PAS un réseau peer to peer –Ici tout passe par le serveur –Aucune liaison directe entre les clients

7 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Architectures Architecture décentralisée : –Égalité entre tous les utilisateurs –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

8 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Architectures Architecture centralisée-décentralisée (utilisation d « ultra-peers ») : –Pratiquement le même schéma que larchitecture décentralisée –Permet de palier au problème de la bande passante

9 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Comparatif P2P centralisé –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 dutilisateurs pour les revendre à des compagnies spécialisées

10 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Comparatif P2P décentralisé –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 : Problèmes au niveau de la bande passante Anonymat => risques de piratage et déchange de données illégales

11 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le peer to peer : Comparatif P2P centralisé-décentralisé –Avantages : Les mêmes quen décentralisé Plus de bande passante –Inconvénients : Choix difficile des ultra-peers Compliqué à mettre en place

12 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Plan 1.Le peer to peer 2.Le protocole Gnutella 1.Introduction 2.Description 3.Inconvénients 4.Nouvelle version 3.Le projet JXTA

13 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Introduction Développé en 2000 par NullSoft (J.Frankel & T.Pepper) qui fut ensuite racheté par AOL-Time- Warner Dédié avant tout au partage de fichiers Chaque utilisateur joue à la fois le rôle de client et de serveur : on les appelle les servants

14 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Ce protocole fonctionne au moyen de 5 descripteurs principaux : –Ping –Pong –Query –QueryHit –Push Ces descripteurs permettent la transmission : –Des infos entre les servants (nœuds) du réseau –Des règles qui régissent l'échange de ces descripteurs

15 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description EN-TETE des descripteurs : –Descriptor ID : identifie le descripteur de façon unique –Payload Descriptor : 0x00 : Ping 0x40 : Query0x81 : Push 0x01 : Pong 0x80 : QueryHit –TTL : « time to live » indique le nombre de sauts que peut encore effectuer le descripteur entre servants Gnutella avant sa destruction –Hops : nombre de sauts déjà accomplis –Payload Length : indique la longueur du descripteur suivant immédiatement l'en-tête DescriptorIDPayload DescriptorTTLHopsPayload length

16 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur PING N'a pas de Payload associé Ne contient qu un en-tête dans lequel Payload Lenght vaut 0x et Payload Descriptor vaut 0x00 Permet de sonder le réseau à la recherche d'autres servants Chacun des servants qui reçoit un Ping répond avec un Pong

17 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur PONG Port : numéro de port sur lequel le servent atteint peut accepter les connexions incidentes. IP Adress : adresse IP du servent atteint. Nb of files shared, Nb of kB shared : nombre de fichiers et nombre d'octets de données partagés par le servant défini par le port et l'adresse IP précédents. N.B : à un Ping reçu, plusieurs Pongs peuvent être renvoyés. Cela permet à un servant de renvoyer des infos le concernant personnellement, mais aussi des infos qu'il gardait en mémoire cache sur d'autres servants. PortIP adressNb of files sharedNb of kB shared

18 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur QUERY Minimum speed : vitesse minimale (en ko/s) des servants qui doivent répondre à ce message. Les servants plus lents que ce seuil ne sont pas censés répondre Search Criteria : –Cette chaîne contient des critères de recherche, tels que des noms de fichier, ou des types de fichiers (MP3, jpeg,...) et se termine par 0x00 –Sa longueur n'est limitée que par le Payload length de l'en-tête Minimum speedSearch Criteria 02 …

19 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur QueryHit –Nb of hits : Nb de "coups au but" dans le Result Set –Port : Le numéro de port sur lequel le servant atteint peut accepter les connexions incidentes –IP Adress : Adresse IP du servant atteint –Speed : Vitesse du servant atteint Nb of hitsPortIP AdressSpeedResult SetServant ID n n+16

20 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur QueryHit Result Set : –File Index : nombre attribué par le servant répondant, destiné à identifier de façon unique le fichier correspondant à la requête. –File Size : Taille en ko du fichier référencé par File Index. –File Name : Nom du fichier référencé par File Index, se termine nécéssairement par 0x0000. Sa taille est limitée par le champ Payload Lenght de l'en-tête. Nb of hitsPortIP AdressSpeedResult SetServant ID n n+16 File IndexFile SizeFile Name 048 …

21 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur QueryHit Servant ID : Chaîne de 16 octets qui identifie le servant répondant à la requête. –Un QueryHit n'est envoyé que si le servant possède des fichiers correspondants aux critères de recherche d'un Query –Le champ Descritpor ID dans l'en-tête du QueryHit doit contenir la même valeur que le champ Descritpor ID de l'en-tête du Query Nb of hitsPortIP AdressSpeedResult SetServant ID n n+16

22 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur PUSH –Servant ID : Chaîne de 16 octets qui identifie le servant à qui l'on demande de "pousser" le fichier référencé par File Index. –File Index : Cet index détermine le fichier qui doit être "poussé" à partir du servent cible. –IP Adress : Adresse IP du servant vers lequel le fichier référencé par File Index doit être "poussé". –Port : Port vers lequel le fichier référencé par File Index doit être "poussé". Servant IDFile IndexIP adressPort

23 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Descripteur PUSH –Utilité : Palier au problème des FireWalls Lorsquon est derrière un firewall, au lieu dinitier soit même la connexion, le servant qui possède le fichier linitialise en « poussant » le fichier

24 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description Routage des descripteurs –Les Pongs (resp. QueryHit, Push) empruntent le même chemin que les Pings (resp. Query ) auxquels ils répondent –Un servant recevant un Ping (ou Query) le transmettra à tous ses voisins immédiats, sauf celui d'où provient le descripteur –Chaque servant, à la réception d'un descripteur, décrémente son TTL et incrémente son Hops –TTL = 0 => le descripteur n'est plus transmis –Non transmission des descripteurs ayant le même payload et DescriptorID quun autre reçu précédemment

25 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Description A se connecte A envoie un Ping à B et C B et C répondent avec un Pong Un Query est lancé par A Le Query est relayé jusqu'à un servent possédant les fichiers demandés Celui-ci renvoie un QueryHit contenant la liste des fichiers vérifiant les critères de recherche Le téléchargement se fait via HTTP

26 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Inconvénients –Réseau inondé de Pings : si la connectivité moyenne d'un servant est de n, on obtient n^TTL Pings sur le réseau ! –Beaucoup dutilisateurs ont une connexion lente (modem 56K) –Problème du descripteur Push : un servant ne sait pas s'il se trouve derrière un Firewall ou encore que le servant qu'il essaye de joindre se trouve derrière un Firewall –Immense gâchis de bande passante

27 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Nouvelle version Concept des ultrapeers –Hierarchie des nœuds –Choix des ultrapeers basé sur les capacités de calcul et de bande passante

28 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Nouvelle version Lultrapeer envoie périodiquement des "indexing queries" à ses fils qui répondent en envoyant chacun leur liste de fichiers partagés Lultrapeer ne fait suivre les Query quaux clients qui ont une entrée correspondante. Concept compatible avec les clients anciens qui sont vus comme des ultrapeers sans fils.

29 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Nouvelle version Choix des ultrapeers : Lordinateur ne doit pas être situé derrière un firewall et doit avoir un système dexploitation relativement récent. Doit avoir une bande passante et un processeur de bonne qualité. Doit être sur le réseau depuis assez longtemps.

30 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Problème Beaucoup de « pillards » Répartition des fichiers inégales

31 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Le protocole Gnutella : Solution Réplication des données –Réplication après téléchargement –Réplication « sur le chemin » –Réplication au hasard Evite une concentration des fichiers Difficile à mettre en place

32 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Quelques clients Gnutella : LimeWire Shareazaa BearShare Gnucleus Morpheus Ares

33 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Exemple de client Gnutella : FreeWire

34 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Plan 1.Le peer to peer 2.Le protocole Gnutella 3.Le projet JXTA 1.Introduction 2.Larchitecture 3.Les concepts 4.Les protocoles 5.Conclusion

35 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Introduction Pourquoi un tel projet ? –De plus en plus dinternautes –Un engouement pour le p2p –Les mêmes problèmes rencontrés par les développeurs Les objectifs –Interopérabilité : facilité de localisation et de communication quels que soient les systèmes –Indépendance envers les plates-formes : langages (C, Java…), systèmes (Windows, Unix…) et réseau (TCP/IP, Bluetooth…) –Ubiquité : tout type de support (PDA, routeurs, ordinateurs…)

36 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Architecture La structure possède 3 couches : –Le noyau : JXTA Core –La couche des services : JXTA Services –La couche des applications : JXTA Applications

37 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Architecture JXTA Core –Encapsule le minimum pour avoir un réseau p2p –Les applications communiquent à travers ce noyau JXTA Services –Propose différents services optionnels : Recherche, partage de fichier, authentification … JXTA Applications –Couche la plus haute –Instant messaging, , etc…

38 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Concepts Pipes –Tubes de communication unidirectionnels pour envoyer et recevoir des messages –Ils supportent tout type dobjets –Deux types de connexions : Connexion point-à-point Connexion par propagation Annonces –Messages XML qui nomment, décriventt et publient lexistence dune ressource –Durée de vie limitée

39 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Concepts Peer pipes

40 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Concepts Peer –Entité qui peut communiquer à travers les protocoles JXTA. –Fournissent une interface pour des connections point-à-point –Recherchent des autres pairs pour former des relations passagères ou durables appelées « peer groups » Peer Groups –Collection de peers coopérant et fournissant un ensemble de services communs –Un peer peut appartenir à plusieurs groupes –Le groupe par défaut est le « Net Peer Group »

41 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Protocoles JXTA définit une série de messages XML pour la communication entre peers Utilisés pour découvrir dautres peers, annoncer et trouver des ressources pour la communication et le routage Ils sont basés sur le principe question/réponse

42 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Protocoles Des protocoles aux nombres de six : –Peer Discovery Protocol : trouver les annonces sur dautres peers et rechercher des ressources (Peers, Peers group, pipe, services) –Peer Resolver Protocol : envoyer et recevoir des requêtes génériques ciblées –Peer Information Protocol : prendre connaissance du statut dun autre peer –Peer MemberShip Protocol : obtenir les autorisations pour accéder à un groupe –Peer Binding Protocol : établir un Pipe entre 2 ou plusieurs peers –Peer Endpoint Protocol : demander à un routeur les accès disponibles pour envoyer un message à un peer cible

43 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre JXTA : Conclusion Une technologie encore jeune De nombreuses applications en cours de développement Un futur standard ?

44 S.Feres - Les réseaux peer to peer - UFRIMA - Octobre Références –http://www.zdnet.frhttp://www.zdnet.fr –http://solutions.journaldunet.comhttp://solutions.journaldunet.com –http://www.openp2p.comhttp://www.openp2p.com –http://www-lor.int-evry.frhttp://www-lor.int-evry.fr –The OReilly Peer-to-Peer and Web services Conference, Washington DC – Sept.18-21, 2001 : –http://www.jxta.orghttp://www.jxta.org –http://www.gnutella.orghttp://www.gnutella.org


Télécharger ppt "S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003 1 Les Réseaux « peer to peer »"

Présentations similaires


Annonces Google