Fiche de l`AWT Le modèle peer to peer

Transcription

Fiche de l`AWT Le modèle peer to peer
Fiche de l'AWT
Le modèle peer to peer
L'arrivée du peer to peer (point à point) bouleverse le modèle traditionnel client-serveur.
Dorénavant, toute application peut être à la fois client et serveur. Quels sont les caractéristiques et
les limites de cette technologie?
Créée le 29/11/01
Modifiée le 29/11/01
1.
Présentation de la fiche
L'arrivée du peer to peer (point à point) bouleverse le modèle traditionnel clientserveur. Dorénavant, toute application peut être à la fois client et serveur. Quels
sont les caractéristiques et les limites de cette technologie?
Avec Internet et le Web, nous sommes familiarisés avec le concept de client-serveur. Le
client demande un service au serveur qui l'exécute et transmet le résultat au client.
L'arrivée du peer to peer bouleverse ce modèle. Dorénavant, toute application peer to
peer peut être à la fois client et serveur. Cette fiche présente différents modèles de peer to
peer et la nouvelle génération d'applications qui découle de ce concept.
1.1.
•
Autres fiches à consulter
La communication via le réseau Internet
Comment se déroule une communication d'informations sur le réseau Internet?
Descriptions des éléments logiciels et matériels, présentation des différentes couches et
rôle des ISP
création le 28/11/00 | dernière modification le 27/02/03
2.
Un nouveau modèle de communication
sur Internet
Avec l'arrivée du peer to peer (point à point), on ne parle plus de client et de
serveur mais d'applications qui sont à la fois client et serveur. Deux architectures
existent: hybride ou native
2.1.
Une rupture avec le modèle client-serveur
classique
A l'ère d'Internet et du Web, nous sommes familiarisés avec le concept client-serveur.
Dans ce concept, le client demande un service au serveur. Le serveur l'exécute et
transmet le résultat au client. En d'autres termes, la demande vient toujour d'un client et
le serveur ne prend jamais d'initiative.
Avec l'arrivée du peer to peer (point à point), on ne parle plus de client et de serveur
mais d'applications qui sont à la fois client et serveur.
Ce concept est notamment apparu en 1998 avec la célèbre application Napster qui
permet de partager et d'échanger entre amis des fichiers contenant de la musique, au
format MP3. Condamné par la justice américaine, Napster a été obligé de revoir son organisation.
Sur les traces de Napster, d'autres applications suivant ce concept ont vu le jour, comme Gnutella,
Seti, Groove, etc.
Le peer to peer permet des échanges entre utilisateurs et applications dans un univers
hétérogène et mouvant. La force évidente de ce modèle est d'apporter des informations rares et
utiles, car ces informations sont générées par les utilisateurs eux-mêmes.
2.2.
Peer to peer, pour quoi faire?
Dans un environnement peer to peer, les applications se trouvant sur des ordinateurs
personnels (PC) se mettent sur un même pied d'égalité. Il n'y en a plus une qui initialise le
dialogue et l'autre qui répond, toute application est capable d'initialiser un dialogue avec une autre
et/ou de répondre à un appel. Parmi les applications les plus fréquentes permises par le peer to
peer, on peut citer:
•
•
•
•
•
la collaboration, par exemple entre ordinateurs au sein d'une entreprise ou d'une
organisation,
le partage de ressources entre deux ordinateurs de particuliers,
le peer-to-peer computing, c'est-à-dire l'utilisation des CPU d'ordinateurs se trouvant
n'importe où sur le réseau Internet pendant les moments où ces ordinateurs ne sont pas
utilisés,
la messagerie instantanée qui permet à deux ordinateurs de communiquer sans passer
par un ordinateur central,
la distribution d'une masse importante de fichiers sur plusieurs ordinateurs au
sein d'un LAN. Cela revient à répartir le travail de cache, réalisé habituellement par un
serveur proxy, sur plusieurs ordinateurs du LAN.
2.3.
Deux modèles d'architecture
Il existe deux grandes variantes de l'architecture peer-to-peer:
•
•
architecture hybride (assistée par un serveur): deux ordinateurs communiquent entre
eux après la localisation du fichier recherché. La localisation de la ressource se fait via un
serveur, connu par une communauté, contenant un annuaire commun où les utilisateurs
s'enregistrent et déclarent les ressources à partager;
architecture native: chaque ordinateur se prête au rôle de client/serveur/moteur de
recherche.
3.
Architecture peer-to-peer hybride
Pour échanger des fichiers de ressources, les utilisateurs s'enregistrent dans un
annuaire central où ils déclarent les fichiers qu'ils désirent partager, ainsi que
l'endroit à partir duquel on peut les transférer
3.1.
Présentation
Pour échanger des fichiers de ressources (par exemple de la musique), les utilisateurs
s'enregistrent dans un annuaire central (serveur) où ils déclarent les fichiers qu'ils
désirent partager, ainsi que l'endroit à partir duquel on peut les transférer.
Ce répertoire central se trouve sur un serveur. Ce serveur contient et gère les polices de contrôle
des échanges (par exemple pour préserver les droits d'auteur dans le cas de Napster).
3.2.
Fonctionnement de l'application
Si on cherche un fichier sur le répertoire central et que la disponibilité de ce fichier est
conforme à la police d'échange du système (par exemple libre de droits d'auteur pour un
fichier musical), on obtient les adresses des machines mettant cette ressource à
disposition des utilisateurs désirant le transférer.
L'utilisateur se connecte alors à un de ces ordinateurs et transfère le fichier souhaité. Pour pouvoir
réaliser cette opération, l'ordinateur de l'utilisateur en question doit disposer d'un logiciel spécifique
en général fourni par l'entreprise qui gère l'ensemble du système (par exemple le logiciel fourni par
Napster).
3.3.
Schéma explicatif
1. Un utilisateur recherche un fichier ressource en envoyant une requête au serveur central.
2. Le serveur central répond et transmet la liste des ordinateurs utilisateurs proposant le
fichier demandé.
3. L'utilisateur télécharge le fichier directement à partir d'un des ordinateurs renseignés par le
serveur.
Pour échanger des fichiers de ressources, les utilisateurs s'enregistrent dans un annuaire central où
ils déclarent les fichiers qu'ils désirent partager, ainsi que l'endroit à partir duquel on peut les
transférer
4.
Architecture peer-to-peer native
Avec le modèle natif ou pur, on parle de communication entre ordinateurs sans
l'intermédiaire d'un serveur. Les usagers peuvent échanger leurs fichiers à
condition d'utiliser un même logiciel peer to peer
4.1.
Présentation
Avec le modèle peer to peer natif ou pur, on parle de communication entre ordinateurs
sans l'intermédiaire d'un serveur (par exemple Gnutella ou Freenet). Les usagers
connectés peuvent échanger leurs fichiers sans passer par un serveur central à condition
d'utiliser un même logiciel peer to peer.
A l'installation de ce logiciel, il faut fournir les adresses IP des machines qui désirent participer au
groupe de collaboration et les rendre ainsi visibles aux autres ordinateurs du groupe. Le système
fournit en général une liste d'adresses IP par défaut, liste qui peut être enrichie avec des adresses
publiées régulièrement sur les sites de cette communauté.
4.2.
Fonctionnement
Lorsque l'on souhaite obtenir un fichier, une requête est envoyée aux ordinateurs connus
par le logiciel. Si le fichier ne s'y trouve pas, chacun de ces ordinateurs transmet cette
même requête à leurs pairs connus et actifs à cet instant, et ainsi de suite. Au final,
l'initiateur de la requête reçoit la liste des fichiers cibles avec leur localisation. Il peut
alors déclencher une connexion vers un de ces ordinateurs pour obtenir le fichier
recherché.
Vu la multiplication de requêtes dans tous les sens sur un réseau étendu, le danger est de voir le
nombre de ces requêtes se multiplier à l'infini. Afin d'éviter ce phénomène, la durée de vie d'une
requête diffusée sur le réseau est limitée par le temps d'existence de son datagramme IP. Par
contre, le nombre de résultats peut s'avérer important et contenir des redondances.
Le débit d'une connexion peer to peer est toujours aligné sur le maillon le plus faible de la chaîne
de transmission, c'est-à-dire l'ordinateur qui offre le débit le plus bas parmi la communauté. Par
ailleurs, le principe d'anonymat des participants peut être respecté.
4.3.
Schéma explicatif
1.
Un utilisateur (celui du cercle) recherche un fichier et transmet une requête aux différents
utilisateurs connus,
2. La question est relayée vers d'autres utilisateurs connus des premiers utilisateurs sollicités,
3. L'utilisateur qui dispose du fichier répond en suivant le chemin inverse,
4. Le transfert du fichier se fait directement à partir de l'ordinateur qui dispose du fichier vers
celui qui le réclame.
5.
Exemples d'applications
Outre les très connus Napster et Gnutella, d'autres applications se développent sur
le modèle d'architecture peer to peer
Outre les très connus Napster et Gnutella, d'autres applications se développent sur le
modèle d'architecture peer to peer.
5.1.
Seti@home: à la recherche des extraterrestres
Basé sur le calcul distribué, Seti@home (Search for Extra-Terrestrial Intelligence)a été
développé par l'université de Berkeley. Cette application permet ainsi de réunir la
puissance de calcul de dizaines de milliers d'ordinateurs reliés à Internet.
Cette application est destinée à analyser la totalité des ondes radio reçues sur terre en vue de
rechercher une autre forme de vie intelligente dans l'univers. Il faut ainsi analyser de gigantesques
volumes de données et donc la puissance des ordinateurs doit être tout aussi colossale! L'approche
adoptée a été de fractionner le problème en une multitude de petits calculs et de les repartir entre
des milliers d'ordinateurs en utilisant leurs ressources non utilisées (typiquement en remplaçant
l'économiseur d'écran).
L'architecture se base sur la présence d'un ordinateur central qui répartit les données et collecte les
résultats effectués sur les ordinateurs. Le transfert de la tranche des données à analyser et la
transmission des résultats s'effectuent par Internet.
5.2.
Groove: un portail personnel
Groove (Groove Networks) a été développé par un groupe de techniciens travaillant sur
le Lotus Notes d'IBM. Groove se définit comme étant un portail personnel qui agit du
côté client en tant que complément nécessaire aux traitements effectués côté serveur. Il
est optimisé pour le travail de groupe des petites communautés d'utilisateurs.
Dédié à la collaboration, il permet la création d'un espace de travail virtuel basé sur des outils de
groupware et workflow: calendrier, partage des fichiers, messagerie instantanée ou vocale,
gestionnaire de conversation hiérarchisé, etc.
5.3.
Kontiki: distribution de contenu à la demande
Kontiki est une société de distribution de contenu sur demande (vidéo, audio, images et
logiciels). Basé sur une architecture regroupant un mélange de serveurs centraux et
d'ordinateurs individuels, ce réseau de distribution utilise un logiciel capable de localiser
le fichier demandé et d'envoyer une requête pour le transférer, au meilleur prix et avec
la connexion la plus rapide, soit à partir d'un serveur central soit à partir d'un PC situé à
côté.
Le contenu délivré sera sous le contrôle de ce réseau sécurisé et les producteurs seront rassurés
quand à la distribution légale des contenus. Un nombre important de ces contenus seront gratuits,
comme c'est le cas aujourd'hui sur beaucoup de sites commerciaux, mais ils seront sous le contrôle
des distributeurs.
Kontiki se présente donc comme un réseau CDN (Content Delivery Network) basé sur une
architecture logicielle distribuée et sécurisée, qui permet d'offrir de la distribution de contenu au
tiers du coût d'un CDN traditionnel. Le réseau Kontiki Delivery Network a démarré ses activités au
mois d'août 2001 en version test.
5.4.
Moteurs de recherche
Plusieurs moteurs de recherche, dont AltaVista, ont annoncé le lancement de produits
adaptant le concept peer to peer pour la recherche d'information sur le Web. Ces produits
cherchent l'information sur les ordinateurs personnels et dans des formats des fichiers différents
(mail, tableur, etc.).
Si l'idée en soi est intéressante, la technique, un peu trop intrusive, n'est pas du goût de tout le
monde à cause des dérives potentielles qu'elle implique!
6.
Modèles économiques et limites
Le business model du peer to peer n'est pas encore très précis, notamment en matière de sources
de revenus. Par ailleurs, cette technologie présente certains inconvénients
6.1.
Quel modèle économique ?
Le business model du peer to peer n'est pas encore très précis, notamment en matière
de sources de revenus:
•
•
technologies vendues par des éditeurs à des fins professionnelles: le modèle peut
être celui de l'édition de logiciel,
réseaux de partage de contenu : si ils sont centralisés, le modèle d'abonnement payant
pour les utilisateurs et de rémunération pour les auteurs et producteurs est possible. Par
ailleurs, le développement des agents intelligents de commerce électronique pourrait
permettre d'acheter et de vendre automatiquement et directement entre les parties, selon
des règles programmées.
Certaines des applications utilisant le peer to peer seront mieux adaptées pour
fonctionner en Intranet afin d'exploiter et de partager l'information entre les utilisateurs
(partage des fichiers, recherche dans des formats de fichiers différents: e-mail, tableurs, etc).
6.2.
Le "pire" du peer to peer
Cette technologie entraîne néanmoins plusieurs inconvénients:
•
•
•
•
risque de saturer le réseau:
o dû au nombre des connexions qui augmentent dangereusement,
o dû aux nombreuses requêtes envoyées dans tous les sens,
remise en question et abandon partiel du modèle client-serveur,
administration et sécurisation difficiles. Une solution est de proposer une bibliothèque de
fonctions peer-to-peer sécurisées (authentification, infrastructure à clé publique, respect de
l'anonymat, etc),
échange des contenus protégés par la propriété intellectuelle (MP3, vidéo, jeux) très
difficilement contrôlable dans une communauté peer to peer native.
Par ailleurs une limitation importante de ce modèle est liée au fait que les ordinateurs
n'ont pas toujours une adresse IP fixe. Soit une adresse leur est attribuée dynamiquement par
l'ISP (elle change alors à chaque connexion), soit ils utilisent le NAT pour cacher leurs vraies
adresses. Ce problème sera résolu avec l'adoption du standard Ipv6 par tous les ordinateurs
utilisant la suite des protocoles TCP/IP, mais ce ne sera pas pour demain.
© Agence Wallonne des Télécommunications
Avenue de Stassart 16 à 5000 Namur - Belgium
www.awt.be - [email protected]

Documents pareils