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.
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 :
Il existe deux grandes variantes de l'architecture peer-to-peer :