Aplicacions de compartició de fitxers a Internet: p2p Toni Feliu, Jordi Sans
Índex Una mica d’història Què és peer to peer (p2p)? Aplicacions p2p. Característiques Model Centralitzat Model Descentralitzat: Gnutella Model Centralitzat VS Model Descentralitzat Comparativa Bibliografia
Una mica d’història Els mètodes per transferir informació entre ordinadors existeixen des dels inicis de la pròpia informàtica. (Cintes, disquets, etc) Fins fa poc, però, es limitaven a les LANs o a connexions punt a punt a Internet, on els dos nodes s’havien de conèixer prèviament. Avui en dia, gràcies al desenvolupament de les aplicacions peer to peer (p2p), l’abast d’informació disponible s’ha incrementat vertiginosament.
Què és peer to peer (p2p)? Significat:“D’igual a igual” Definició: Dos ordinadors són cosiderats peers si s’estan comunicant entre sí i, a més, els dos juguen rols similars. Exemple: -Ordinador d’oficina comunicant-se amb el servidor de mail: NO (client<>servidor) -2 ordinadors connectats a la xarxa p2p Gnutella: SÍ (host1=host2) Les xarxes p2p eliminen la necessitat de l’existencia servidors, i permeten a qualsevol ordinador comunicar-se i compartir recursos amb qualsevol altre. Concepte clau: Un ordinador o node és alhora client i servidor.
Aplicacions p2p. Característiques 1. Interfície d’usuari corrent al marge d’un navegador (Excepció: Audiogalaxy) 2. Nodes actuant alhora com a clients i servidors 3. Interfície i sistema en general fàcil d’utilitzar 4. Inclouen eines de suport als usuaris per crear continguts o afegir funcionalitats. 5. El sistema proporciona connexions amb altres usuaris 6. El sistema proporciona alguna cosa nova i atractiva 7. El sistema suporta protocols cross-network com SOAP o XML-RPO
Model Centralitzat (I) - Característiques: - Basat en un servidor central que gestiona el trànsit entre usuaris individuals registrats. - El servidor emmagatzema en una BD la informació dels arxius compartits dels usuaris. - La BD s’actualitza cada vegada que un usuari es connecta al servidor - Exemples: - Napster: http://www.napster.com - Audiogalaxy: http://www.audiogalaxy.com - Kazaa: http://www.kazaa.com - iMesh: http://www.imesh.com
Model Centralitzat (II) - Funcionament 1. L’usuari es connecta al servidor p2p 2. L’usuari envia una petició per localitzar un fitxer, i el servidor busca a la BD 4. L’usuari es baixa l’arxiu directament d’un altre usuari de la xarxa p2p. 3. El servidor retorna una llista de fitxers disponibles per ser baixats
Model Descentralitzat - Gnutella (I) - Orígens de Gnutella - Gnutella va ser dissenyat en un principi per Nullsoft, d’America Online. - AOL va abortar el projecte poc després que el protocol estés disponible al públic. - Gnutella va estar disponible online a Nullsoft durant unes hores abans de ser retirat, però durant aquesta estona es van produir milers de descàrregues del programa. - A partir d’aquells executables, diversos programadors van reescriure’n el codi, utilitzant enginyeria inversa.
Model Descentralitzat - Gnutella (II) - Característiques - No s’utilitza un servidor central per seguir la pista dels fitxers dels usuaris - L’usuari es connecta a un altre usuari de la xarxa p2p indicant la seva IP. Quan fa una cerca, per tant, es produirà una cerca recursiva a través de la xarxa començant per l’usuari al qual està connectat. - L’usuari queda connectat directament a uns quants nodes, i indirectament a tots els altres nodes de la xarxa. - Gnutella és caòtic. Pot reunir milers d’usuaris ràpidament, com el model centralitzat, però l’absència de servidors centrals propicia que les dades puguin ser corrompudes fàcilment i propagades a la resta de la xarxa. - Exemples: - BearShare,Gnucleus,etc: http://www.gnutella.com - Morpheus: http://www.morpheus-os.com - MyNapster: http://www.mynapster.com
Model Descentralitzat - Gnutella (III) - Funcionament (I) 1. L’usuari A envia una requesta de nivell 1 als nodes B,C i D. 2. Els usuaris B,C i D envien la requesta al següent nivell de nodes connectats.
Model Descentralitzat - Gnutella (IV) - Funcionament (II) 3. El fitxer és localitzat, i la resposta és enviada cap al node A recorrent el camí invers. 4. El fitxer és descarregat finalment per A, a través d’una connexió directa amb l’altre node.
Centralitzat VS Descentralitzat (I) Centralizat- Aventatges - Gràcies a tenir una BD centralitzada, els arxius es troben ràpidament. - Com que l’índex s’actualitza constantment, els arxius que es troben a la cerca estan disponibles al moment - En estar tots els usuaris registrats, les cerques es fan sobre la informació de tots els usuaris connectats (el màxim possible). Centralizat- Inconvenients - El sistema té només un punt d’entrada. Si falla, la xarxa no funciona. - Si algú vol fer desaparèixer el sistema, sap a quina porta ha de trucar. Ex: Napster
Centralitzat VS Descentralitzat (II) Descentralizat- Aventatges - S’elimina el lligam amb un servidor central, que són punts potencialment crítics de fallada. Impossible d’aturar! - Potencialment es podria connectar amb qualsevol ordinador d’Internet. - Si un usuari es desconnecta, les cerques segueixen fent-se entre la resta d’usuaris Descentralizat- Inconvenients - Cerca lenta, pocs resultats, molts hosts no funcionen. - Qualsevol node connectat ha de suportar un trànsit molt gran d’informació, ja que és un node de pas. - Hem suat per fer-ne anar un (Gnucleus) a la xarxa de la FIB
Comparativa Fitxer de prova: Refused - New Noise.mp3 (una cançó poc coneguda)
Bibliografia p2p: http://compnetworking.about.com/cs/peertopeer/ http://davenet.userland.com/2000/09/20/whatIsP2p http://www.biz2peer.com/esp2p.htm models centralitzat / descentralitzat: http://www.limewire.com/index.jsp/p2p http://www.mynapster.com/faq.php#2 glossari: http://www.limewire.com/index.jsp/glossary#peer