D'igual a igualLes xarxes d'igual a igual (peer to peer o P2P en anglès), són un sistema de comunicació per Internet que no té clients ni servidors fixos, sinó una sèrie de nodes que es comporten alhora com a clients i com a servidors dels altres nodes de la xarxa, en el qual les dades o les metadades es transfereixen a través d'una xarxa dinàmica. Aquesta tecnologia permet l'intercanvi de fitxers en xarxa sense que calgui un servidor central que redistribueixi les dades.[1] Normalment, aquests tipus de xarxes s'implementen com a xarxes superposades construïdes a la capa d'aplicació de xarxes públiques com Internet. Aquest model contrasta amb el model client-servidor: qualsevol node pot iniciar o completar una transacció compatible, convertint doncs els PCs en elements actius que permeten als usuaris intercanviar informació i/o agrupar capacitat de processament, fent-ho a més al marge de la World Wide Web i sense necessitar un servidor centralitzat.[2] Els arxius poden ser compartits de forma legal o il·legal, en relació a la pirateria informàtica, si es distribueixen arxius amb drets d'autor sense pagar-ne el preu corresponent.[3] Un dels sistemes més populars és el protocol BitTorrent àmpliament utilitzat en la distribució de programari. Les xarxes P2P aprofiten, administren i optimitzen l'ús de l'ample de banda dels altres usuaris de la xarxa a través de la connectivitat entre ells, obtenint així més rendiment en les connexions i transferències que amb d'altres mètodes centralitzats convencionals, on una quantitat relativament petita de servidors proveeix el total de l'ample de banda i recursos compartits per a un servei o aplicació. Aquestes xarxes són útils per a diversos propòsits, però principalment s'utilitzen per a compartir arxius de qualsevol tipus (audio, video o software) així com en telefonia VoIP per a fer més eficient la transmissió de dades en temps real. FuncionamentS'utilitza fonamentalment per compartir arxius per internet: textos, arxius audiovisuals, imatges i d'altres recursos informàtics de tota mena, els quals es distribueixen la càrrega de forma apropiada entre els nodes. Això permet la distribució massiva de fitxers, en perfecta escalabilitat, sense necessitat d'un servidor central. Per a això els destinataris finals són alhora nodes que col·laboren en els metamissatges de la xarxa i reenvien les dades que reben a altres interessats. Com que la majoria de PCs no tenen una IP fixa, no poden connectar-se entre si perquè no coneixen la IP que han d'utilitzar. La solució habitual és realitzar una connexió a un servidor (o servidors) amb una adreça coneguda, que s'encarrega de mantenir la relació d'adreces IP dels clients de la xarxa, dels altres servidors i normalment d'informació addicional, com un índex de la informació de què disposen els clients. Després d'això, els clients ja tenen una informació sobre la resta de la xarxa i poden intercanviar informació entre ells, ja sense la intervenció dels servidors. Per resoldre el problema de connexió quan els nodes no tenen direcció pública, aquests es connecten a través d'un altre node que funciona com proxy de la connexió: els dos nodes es connecten al proxy i aquest envia la informació que arriba de l'un a l'altre. Qualsevol node amb una adreça IP pública pot ser escollida com a proxy d'una connexió entre dos nodes. L'eficàcia dels nodes en l'enllaç i la transmissió de dades pot variar segons la seva configuració local (tallafocs, NAT, routers, etc.), velocitat de procés, disponibilitat de l'ample de banda de la seva connexió a la xarxa i la capacitat d'emmagatzematge en dics. Tot i així, mentre el nombre de nodes creixi, més difícil serà l'administració de recursos de la xarxa i la seguretat pot ser afectada, ja que si un node és infectat, és possible que pugui infectar a cada node de la xarxa (a més nombre de nodes connectats, més risc que un d'aquests nodes es pugui presentar a la xarxa). HistòriaLa idea de compartició d'arxius d'igual a igual va començar a la dècada e 1960 quan es va crear la xarxa ARPANET (antecessor d'Internet). ARPANET fou creat per compartir arxius entre centres d'investigació dels Estats Units d'Amèrica i cada node de la xarxa tenia la mateixa importància.[4] Les primeres xarxes P2P que sorgiren van ser les híbrides o centralitzades, utilitzant servidors per a l'obtenció de metadades (informació que indexa les dades o els recursos interns a la xarxa). Les principals funcions que s'implementaven en el servidor centralitzat d'una xarxa de compartició de fitxers eren totes les necessàries per posar en contacte el node buscador i el posseïdor. Per tant, el servidor incloïa la identificació dels nodes, la recerca dels diversos nodes que ofereixen el fitxer desitjat, la ponderació d'aquestes resolucions i definitivament l'entrega de les opcions detectades. Finalment, l'esquema P2P sols es manté en l'últim procés, el de transferència de fitxers. Tot i així, els sistemes centralitzats de compartició de fitxers van assolir un èxit massiu a la fi del segle xx gràcies a lloc web de Napster ideat per Shawn Fanning.[4] Aquest va ser el primer sistema de distribució d'arxius que permetia als seus usuaris compartir les seves col·leccions de fitxers mp3 fàcilment. Aquest fet portà Napster als jutjats, ja que diferents discogràfiques veien perillar el seu negoci. Tot això va comportar un increment de la popularitat de la xarxa fins a assolir un màxim de 13,6 milions d'usuaris als inicis de l'any 2001. Aproximadament al cap d'un any del naixement de Napster, es va presentar la xarxa eDonkey2000 (ed2k) que superava en molts aspectes la seva predecessora. El fet de ser concebuda com a xarxa de compartició de qualsevol tipus d'arxius sense limitar-se a fitxers mp3, va fer que nasqués amb característiques més evolucionades com el suport a la descàrrega simultània de diferents porcions d'un sol arxiu provinents de diversos clients. D'aquesta manera s'explotava l'amplada de banda de tots els clients sense limitar-se a un sol peer. Altres millores provenien de la utilització de funcions resum per identificar arxius o de la recerca interna entre servidors, per localitzar fitxers en clients llunyans. Al cap de cinc anys del naixement d'aquesta xarxa l'empresa que distribuïa el client eDonkey va arribar a un acord amb l'associació de la defensa dels interessos de la discografia americana, la Recording Industry Association of America (RIAA), per causes similars a la fi de Napster. Aquest acord va suposar la fi d'aquest client i de l'empresa. Tot i així, la xarxa que s'havia desenvolupat havia crescut de forma impressionant i va continuar operativa a través de clients creats en iniciatives personals com el famós eMule o projectes codi obert com aMule. Arran dels diversos problemes judicials i d'altres mancances que presentaven aquestes xarxes, va sorgir la necessitat de crear un Macaco (el servidor central) i així crear una xarxa més robusta i a la vegada, més difícil de litigar judicialment. D'aquesta forma es va iniciar la recerca per a crear les xarxes P2P pures o completament descentralitzades, que tenen com a màxim exponent els sistemes Gnutella i Freenet. Aquestes xarxes funcionen per inundació, i.e. eliminen la necessitat d'un servidor centralitzat a base d'enviar missatges en mode broadcast. Aquest fet les fa clarament poc escalables, ja que diversos estudis demostren que només el 12% del tràfic relacionat amb la recerca de nodes genera respostes rellevants i, per tant, el 88% restant és tràfic inútil. Actualment s'està treballant per eliminar aquest inconvenient amb les xarxes P2P de tercera generació, les xarxes estructurades (structured peer-to-peer overlays), com és el cas de CAN, Chord, Pastry, Tapestry i que neixen amb la intenció de proporcionar un substrat per a aplicacions d'alta disponibilitat i escalabilitat, i a la vegada complir el paradigma del P2P (oferir un sistema capaç de funcionar d'una forma completament autònoma sense requerir una entitat centralitzada). La majoria d'aquestes plataformes no s'han dissenyat específicament per a una aplicació, sinó que han sigut dissenyats com un substrat per implementar-hi diversos serveis descentralitzats, tal com pot ser l'emmagatzemament en xarxa, distribució de continguts o web-caching. A diferència de les xarxes precedents, les P2P estructurades han estat i són objecte d'una anàlisi més extensa i d'un disseny més acurat per a complir uns mínims requisits d'eficiència, repartiment de càrrega, escalabilitat i tolerància a fallades. Aquestes configuracions permeten localitzar un element en un nombre limitat de salts, requerint que cada node mantingui una taula d'encaminament amb un cert nombre d'entrades. Aquestes taules d'encaminament es basen en sistemes DHT. Ens aquests moments s'estan dissenyant protocols anomenats One Hop, que són capaços de localitzar el recurs desitjat utilitzant un sol salt dins la xarxa i sense necessitat de cap control centralitzat. CaracterístiquesHi ha sis característiques principals que tota xarxa P2P hauria de complir:
ClassificacióLes xarxes P2P es poden classificar segons:
Segons el grau de centralitzacióUna possible classificació de les xarxes P2P en funció del seu grau de centralització pot ser la següent: Xarxes P2P centralitzadesAquest tipus de xarxa P2P es basa en una arquitectura monolítica en la que totes les transaccions es fan a través d'un únic servidor que serveix de punt d'enllaç entre dos nodes i que, a la vegada, emmagatzema i distribueix els nodes on s'emmagatzemen els continguts. Contenen una administració molt dinàmica i una disposició més permanent de contingut. Tot i així, està molt limitada en la privacitat dels usuaris i en la falta d'escalabilitat d'un sol servidor, a més d'oferir problemes en punts unics d'error, situacions legals o enormes costos en el manteniment, així com el consum d'ample de banda. Una xarxa d'aquest tipus reuneix les següents característiques:
Alguns exemples d'aquest tipus de xarxes són Napster y Audiogalaxy. Xarxes P2P híbrides, semicentralitzades o mixtesEn aquest tipus de xarxes es pot observar la interacció entre un servidor central que serveix com a hub i administra els recursos de banda ampla, enrutaments i comunicació entre nodes però sense saber la identitat de cap node i sense emmagatzemar cap informació, motiu pel qual el servidor no comparteix arxius de cap tipus a cap node. Té la peculiaritat de funcionar d'ambdues maneres (com és el cas de Torrent), és a dir, pot incorporar més d'un servidor que gestioni els recursos compartits, però també, en cas que el servidor o servidors que ho gestionen caiguin, el grup de nodes pot seguir en contacte a través d'una connexió directa entre ells mateixos. Per tant, és possible seguir compartint i descarregant més informació en absència dels servidors. Aquest tipus de P2P presenta les següents característiques:
Xarxes P2P <<pures>> o totalment descentralitzadesLes xarxes P2P d'aquest tipus són les més comunes, sent les més versàtils al no requerir d'una gestió central de cap tipus. Això permet una reducció de la necessitat d'utilitzar un servidor central, transformant als mateixos usuaris en nodes d'aquestes connexions i també com a emmagatzemadors d'aquesta informació. En altres paraules, totes les comunicacions són directament d'usuari a usuari amb ajuda d'un node (que és un altre usuari) qui permet enllaçar aquestes comunicacions. Les xarxes pures tenen les següents característiques:
Cadascun dels parells dins aquesta arquitectura tracta de mantenir un cert nombre de connexions amb altres parells durant tota l'estona. Aquest conjunt de parells connectats transporta el tràfic de xarxa, que està conformat essencialment per peticions i respostes a aquestes peticions, i diferents missatges de control que faciliten el descubriment d'altres nodes (missatges ping s Gnutella). El model P2P pur és el més robust al no dependre d'un servidor central i, a més, és el més econòmic. El principal inconvenient és l'elevat temps i sobrecàrrega d'ample de banda que suposen les cerques d'informació a la xarxa. A més, pot ser que el recurs buscat i existent ni tan sols pugui ser trobat. Alguns exemples de xarxes P2P pures són: Kademlia, Ares Galaxy, Gnutella, Freenet, Gnutella2 y Maidsafe. Segons la seva estructuraLa xarxa de sobrecapa del P2P consisteix en tots els usuaris que participen com a nodes de xarxa. Hi ha enllaços entre dos nodes qualsevol que es coneguin: és a dir, si un usuari participant coneix la localització d'un altre usuari a la xarxa P2P, llavors hi ha un marge dirigit del node anterior a l'últim node a la xarxa de la sobrecapa. Segons com els nodes a la xarxa de la sobrecapa s'entrellacen l'un a l'altre, les xarxes P2P es poden classificar com a no estructurades o estructurades. Es forma una xarxa P2P no estructurada quan els enllaços de la sobrecapa s'estableixen arbitràriament. Aquestes xarxes poden construir-se molt fàcilment quan un usuari que desitja unir-se a la xarxa pot copiar enllaços existents d'un altre node i després formar els seus propis enllaços en un lapse de temps determinat. Exemple d'aquest tipus de xarxa és Gnutella. En una xarxa P2P no estructurada, si un usuari desitja trobar informació específica a la xarxa, la petició ha de recórrer tota la xarxa per trobar tants usuaris com sigui possible, per aconseguir a algú que comparteixi les dades. El principal inconvenient amb aquestes xarxes és que les peticions no sempre es poden resoldre. És molt probable que un contingut popular estigui disponible per a varis usuaris, i és molt probable que qualsevol usuari que el busqui, el trobi. Tot i així, si un usuari està buscant dades no molt populars que comparteixin només uns quants usuaris, serà altament probable que la cerca no doni els resultats esperats. Donat que no hi ha correlació entre un usuari i els contingut compartit per ell mateix, llavors no hi ha garantia de que l'usuari trobi a aquella que tingui la informació desitjada. El flooding també incrementa el tràfic a la xarxa i, per tant, aquestes xarxes solen tenir una eficàcia més baixa en el resultats de cerca. La major part de les xarxes populars P2P (Napster, Gnutella i KaZaA) són xarxes P2P sense estructura. Les xarxes P2P estructurades, per la seva banda, superen les limitacions de les xarxes no estructurades, mantenen una taula de hash distribuïda (DHT) i permeten que cada usuari sigui responsable d'una part específica del contingut a la xarxa. Aquestes xarxes utilitzen funcions de hash distribuït i assignen valors a cada contingut i a cada usuari de la xarxa. Després, segueixen un protocol global en la determinació de quin usuari serà responsable de quin contingut. D'aquesta manera, sempre que un usuari desitgi buscar certes dades, utilitzarà el protocol global per determinar a l'usuari o usuaris que el tenen i després dirigirà la cerca cap a aquests. Algunes xarxes P2P estructurades són: Chord, Pastry P2P Network, Tapestry P2P Network, Content Addressable Network, Tulip Overlay, CAN, etc. Segons la generació a la que pertanyenTambé es podria classificar les xarxes P2P segons la seva generació: Primera generació P2PEs tracta de les primeres xarxes P2P, és a dir, la definició bàsica de P2P. El primer exemple més representatiu d'aquesta generació és Napster, que va servir per intercanviar arxius (no molt grans) de música a través d'una arquitectura centralitzada en la que els arxius els emmagatzemaven i proporcionaven els propis usuaris. Segona generació P2PEn aquesta generació es va implementar per primera vegada la característica de descentralització, per la qual no existeix cap servidor central i tots els nodes actuen de la mateixa manera (com a client i com a servidor). Aquesta característica s'ha estès a la majoria de xarxes P2P actuals. Un dels exemples més coneguts és BitTorrent, que entre les seves millores es troba poder compartir arxius més grans. Aquí neix el middleware P2P, que és un tipus de middleware que dona un suport horitzontal a un servei web. Es tracta d'una plataforma a la xarxa per accedir als recursos de manera ràpida i sense importar on estiguin ubicats. Napster (primera generació P2P), per a solucionar aquest problema, mantenia un índex unificat d'arxius disponibles. En canvi, a la segona generació, els sistemes d'arxius com Gnutella i Freenet fan ús dels índexs distribuïts, amb algoritmes específics per a cada sistema. Els sistemes middleware P2P estan dissenyats específicament per a satisfer la necessitats d'ubicació automàtica dels objectes distribuïts que manipulen els sistemes i les aplicacions peer-to-peer.
Alguns exemples de middleware P2P són el routing overlay, les taubles de hash distribuïdes i Kademlia. Tercera generació P2PSón les més recents. En aquestes s'ha estès i estabilitzat el concepte de middleware P2P que es va donar a conèixer a la segona generació, descentralitzant el procés indexat (DHT) i establint un enrutament més eficient (routing overlay, taules d'encadenament). Implementen una comunicació no directa, xifrada i anònima. Segons el grau de protecció de la identitatEs poden classificar les xarxes P2P segons com protegeixen la identitat:
Controvèrsia legalA través de xarxes P2P és possible descarregar arxius protegits per drets d'autor i això ha provocat diverses denúncies i controvèrsies legals contra les companyies responsables del programari.[5] Cal destacar que la tecnologia en si no és il·legal, ja que promou una comunicació horitzontal, permetent publicar continguts de forma econòmica, tot evitant intermediaris. En efecte, gran part dels arxius compartits en aquestes xarxes són fitxers de música i vídeo; hi ha molts interessos en joc i és per això que a les xarxes P2P es troben involucrades en problemes legals, tècnics i econòmics, tot i que ja compten amb milions d'usuaris. Per evitar ser perseguits per la llei, alguns programes com Aimster (combina missatgeria i intercanvi de fitxers) o IMesh (d'origen israelià), es basen en el precepte dels límits sobre la còpia privada i el fair use. Permetent només l'intercanvi de fitxers entre els buddies (amics) d'un usuari, se situen en aquell límit borrós en el qual la llei no està molt clara. Aimster, a més a més, presenta una paradoxa aparentment irresoluble: tot el que passa al seu voltant està xifrat. Les discogràfiques no poden saber si els usuaris intercanvien fitxers de música o simplement fotos de l'últim viatge. Provar de saber-ho suposaria trencar el xifrat, violant la Digital Millenium Copyright Act, la mateixa llei que va fer que Napster tanqués.(xinès) Altres programes, com Freenet o Gnutella, permeten l'intercanvi entre un nombre il·limitat d'usuaris, però pel fet de no necessitar un servidor central són molt difícils de controlar. S'ha de tenir en compte que també s'intercanvia gran quantitat d'informació que no està subjecta a drets d'autor, com per exemple distribucions Linux sota la llicència GPL, i que existeixen aplicacions específiques de xarxes P2P directament orientades a aquest tipus de material, com Skype (videoconferència) o Hello, de Picasa (àlbums de fotos personals). Unes aplicacions P2PActualment, en Internet, l'amplada de banda o les capacitats d'emmagatzematge i còmput són recursos cars. En aquelles aplicacions i serveis que requereixin una enorme quantitat de recursos poden fer-se servir les xarxes P2P. Alguns exemples d'aplicació de les xarxes P2P són els següents:
La següent llista fa un recull d'altres xarxes P2P d'ús habitual o conegut:
Les xarxes P2P també es poden fer servir per a fer funcionar grans sistemes de programari dissenyats per a dur a terme proves que identifiquin la presència de possibles fàrmacs. El primer sistema dissenyat amb aquest propòsit es va desenvolupar el 2001, al Centre Computacional per al Descobriment de Medicaments (Centre for Computational Drug Discovery) a la prestigiosa Universitat d'Oxford i amb la cooperació de la Fundació Nacional per a la Investigació del Càncer (National Foundation for Cancer Research) dels Estats Units. Actualment, existeixen diferents sistemes de programari similars que es desenvolupen sota la protecció de projectes com el Projecte de Dispositius Units en la Investigació del Càncer (United Devices Cancer Research Project). Més a petita escala, existeixen sistemes d'administració autònoma per als biòlegs computacionals, com el Chinook, que s'uneixen per a executar i fer comparacions de dades bioinformàtiques amb els més de 25 serveis d'anàlisis diferents que ofereix. Un dels seus propòsits consisteix a facilitar l'intercanvi de tècniques d'anàlisis dins d'una comunitat local. Finalment, les institucions acadèmiques també han començat l'experimentació amb compartiment d'arxius, com és el cas de LionShare. Vegeu també
Referències
|