Les r seaux peer to peer
This presentation is the property of its rightful owner.
Sponsored Links
1 / 44

Les Réseaux « peer to peer » PowerPoint PPT Presentation


  • 191 Views
  • Uploaded on
  • Presentation posted in: General

Les Réseaux « peer to peer ». Plan. Le peer to peer Définition Historique Applications Les différentes architectures Comparatif (avantages / inconvénients) Le protocole Gnutella Le projet JXTA. Le peer to peer : Définition.

Download Presentation

Les Réseaux « peer to peer »

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Les r seaux peer to peer

Les Réseaux « peer to peer »

S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


Les r seaux peer to peer

Plan

  • Le peer to peer

    • Définition

    • Historique

    • Applications

    • Les différentes architectures

    • Comparatif (avantages / inconvénients)

  • Le protocole Gnutella

  • Le projet JXTA

  • S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer d finition

    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 l’architecture client / serveur

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer historique

    Le peer to peer : Historique

    Historique :

    • Années 60 : à l’origine Internet était axé sur l’ échange d’informations entre universités (Arpanet)

    • 1999 : Napster (S.Fanning), architecture centralisée qui compte plus de 25.000.000 d’usagers en 2000

    • 2000 : Gnutella (AOL – Nullsoft), architecture décentralisée

    • 2001 : Kazaa (Zennstrom & Fiis) , projet JXTA (Sun), architecture centralisée-décentralisée

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer applications

    Le peer to peer : Applications

    • 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

  • S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer architectures

    Le peer to peer : Architectures

    • Architecture centralisée :

      • Mise en relation à partir du serveur

      • Puis liaison directe entre les clients

    • Architecture client / serveur :

      • Ce n’est PAS un réseau peer to peer

      • Ici tout passe par le serveur

      • Aucune liaison directe entre les clients

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer architectures1

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer architectures2

    Le peer to peer : Architectures

    • Architecture centralisée-décentralisée (utilisation d’ « ultra-peers ») :

      • Pratiquement le même schéma que l’architecture décentralisée

      • Permet de palier au problème de la bande passante

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer comparatif

    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 d’utilisateurs pour les revendre à des compagnies spécialisées

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer comparatif1

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le peer to peer comparatif2

    Le peer to peer : Comparatif

    • P2P centralisé-décentralisé

      • Avantages :

        • Les mêmes qu’en décentralisé

        • Plus de bande passante

      • Inconvénients :

        • Choix difficile des ultra-peers

        • Compliqué à mettre en place

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Les r seaux peer to peer

    Plan

    • Le peer to peer

    • Le protocole Gnutella

      • Introduction

      • Description

      • Inconvénients

      • Nouvelle version

  • Le projet JXTA

  • S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella introduction

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description1

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description2

    Le protocole Gnutella : Description

    • Descripteur PING

      • N'a pas de Payload associé

      • Ne contient qu’ un en-tête dans lequel Payload Lenght vaut 0x00000000 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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description3

    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.

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description4

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description5

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description6

    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.

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description7

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description8

    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é".

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description9

    Le protocole Gnutella : Description

    • Descripteur PUSH

      • Utilité :

        • Palier au problème des FireWalls

        • Lorsqu’on est derrière un firewall, au lieu d’initier soit même la connexion, le servant qui possède le fichier l’initialise en « poussant » le fichier

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description10

    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 qu’un autre reçu précédemment

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella description11

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella inconv nients

    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 d’utilisateurs 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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella nouvelle version

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella nouvelle version1

    Le protocole Gnutella : Nouvelle version

    • L’ultrapeer envoie périodiquement des "indexing queries" à ses fils qui répondent en envoyant chacun leur liste de fichiers partagés

    • L’ultrapeer ne fait suivre les Query qu’aux clients qui ont une entrée correspondante.

    • Concept compatible avec les clients anciens qui sont vus comme des ultrapeers sans fils.

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella nouvelle version2

    Le protocole Gnutella : Nouvelle version

    • Choix des ultrapeers :

      • L’ordinateur ne doit pas être situé derrière un firewall et doit avoir un système d’exploitation relativement récent.

      • Doit avoir une bande passante et un processeur de bonne qualité.

      • Doit être sur le réseau depuis assez longtemps.

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella probl me

    Le protocole Gnutella : Problème

    • Beaucoup de « pillards »

    • Répartition des fichiers inégales

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Le protocole gnutella solution

    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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Quelques clients gnutella

    Quelques clients Gnutella :

    • LimeWire

    • Shareazaa

    • BearShare

    • Gnucleus

    • Morpheus

    • Ares

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Exemple de client gnutella freewire

    Exemple de client Gnutella : FreeWire

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Les r seaux peer to peer

    Plan

    • Le peer to peer

    • Le protocole Gnutella

    • Le projet JXTA

      • Introduction

      • L’architecture

      • Les concepts

      • Les protocoles

      • Conclusion

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta introduction

    JXTA : Introduction

    • Pourquoi un tel projet ?

      • De plus en plus d’internautes

      • 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…)

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta architecture

    JXTA : Architecture

    • La structure possède 3 couches :

      • Le noyau : JXTA Core

      • La couche des services : JXTA Services

      • La couche des applications : JXTA Applications

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta architecture1

    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, e-mail, etc…

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta concepts

    JXTA : Concepts

    • Pipes

      • Tubes de communication unidirectionnels pour envoyer et recevoir des messages

      • Ils supportent tout type d’objets

      • Deux types de connexions :

        • Connexion point-à-point

        • Connexion par propagation

    • Annonces

      • Messages XML qui nomment, décriventt et publient l’existence d’une ressource

      • Durée de vie limitée

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta concepts1

    JXTA : Concepts

    • Peer pipes

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta concepts2

    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 »

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta protocoles

    JXTA : Protocoles

    • JXTA définit une série de messages XML pour la communication entre peers

    • Utilisés pour découvrir d’autres peers, annoncer et trouver des ressources pour la communication et le routage

    • Ils sont basés sur le principe question/réponse

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta protocoles1

    JXTA : Protocoles

    • Des protocoles aux nombres de six :

      • Peer Discovery Protocol : trouver les annonces sur d’autres 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 d’un 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

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    Jxta conclusion

    JXTA : Conclusion

    • Une technologie encore jeune

    • De nombreuses applications en cours de développement

    • Un futur standard ?

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


    R f rences

    Références

    • http://www.zdnet.fr

    • http://solutions.journaldunet.com

    • http://www.openp2p.com

    • http://www-lor.int-evry.fr

    • The O’Reilly Peer-to-Peer and Web services Conference, Washington DC – Sept.18-21, 2001 :

      • http://conferences.oreilly.com/p2p

    • http://www.jxta.org

    • http://www.gnutella.org

    S.Feres - Les réseaux peer to peer - UFRIMA - Octobre 2003


  • Login