Welcome to the P2PWeb project. Benvingut al projecte P2PWeb.

Introduction Introducció

In the recent years, peer-to-peer has atracted a lot of attention as a promising technology for massive scalable applications. En els últims anys, peer-to-peer ha atret molta atenció com una tecnologia prometedora per a grans aplicacions escalables. On the one hand, killer applications like file-sharing (Naspter, Kazaa, eDonkey), content distribution (BitTorrent) and VoIP (Skype) are already generating most of the Internet traffic (surpassing Web traffic). D'una banda, les aplicacions com l'assassí d'intercanvi d'arxius (Napster, Kazaa, eDonkey), distribució de contingut (BitTorrent) i VoIP (Skype) ja estan generant la major part del tràfic d'Internet (superant el tràfic d'Internet). This is a proof of the viability and success of such technologies. Aquesta és una prova de la viabilitat i l'èxit d'aquestes tecnologies.

On the other hand, in the research setting it has emerged a new kind of purely decentralized peer-to-peer networks called Structured peer-to-peer overlays or Distributed Hash Tables (DHT). D'altra banda, en l'entorn de la investigació que ha sorgit un nou tipus de xarxes descentralitzades purament peer-to-peer estructurat anomenat "peer-to-peer o superposicions Taules de Hash Distribuïdes (DHT). These kind of networks offer interesting features like massive scalability, efficient Content-based routing and resource discovery, fault-tolerance and self-adjusting behaviors. Aquest tipus de xarxes ofereixen característiques interessants com l'escalabilitat massiva, el descobriment eficient basat en el contingut d'enrutament i de recursos, la tolerància a falles i conductes d'auto-ajust. Furthermore, DHTs are considered as a key building block for a plethora of distributed services like file-sharing, content distribution and retrieval, publish/subscribe systems, or naming systems among others. D'altra banda, DHTs es consideren com un element clau per a una gran quantitat de serveis distribuïts com d'intercanvi d'arxius, la distribució de continguts i recuperació, publicació i subscripció de sistemes, o sistemes de nomenclatura, entre altres. Nevertheless, DHTs have not gained the popularity of killer applications like Skype or Kazaa. No obstant això, DHTs no han guanyat la popularitat de les aplicacions assassines com Skype o Kazaa. They are still restricted to academic spheres and specific distributed niche applications. Encara estan restringides a àmbits acadèmics específics i aplicacions distribuïdes nínxol. We however believe that in a short term, applications will benefit from DHTs services in a natural way and thus leaving the research arena definetly. Nosaltres però creiem que en un curt termini, les aplicacions es beneficiaran dels serveis DHTs d'una manera natural i així deixar el camp de la investigació definitivament. Examples of this trend are Emule/Kad (Overnet DHT) or Azureus use of a DHT layer for locating torrent sources. Exemples d'aquesta tendència són l'ús de l'eMule / Kad (Overnet DHT) o Azureus d'una capa de DHT per localitzar fonts de torrent.

An important misconception that is hindering the adoption of DHT services is the classical use of peer-to-peer in edge desktop computers. Un error important que està obstaculitzant l'adopció dels serveis DHT és l'ús clàssic de peer-to-peer en els ordinadors d'escriptori vora. Although it is interesting to benefit from desktop resources and bandwidth, other kind of peer-to-peer applications can be devised for the server setting. Encara que és interessant per beneficiar-se dels recursos d'escriptori i ample de banda, un altre tipus d'aplicacions peer-to-peer es pot dissenyar per a la configuració del servidor. In fact, DHT services are ideally aimed for creating a distributed glue for a network of web servers offering integrated internet-wide services. De fet, els serveis DHT estan perfectament dirigides per a la creació d'una cua distribuïda per una xarxa de servidors web que ofereixen serveis integrats de tot l'Internet. Let us study severals reasons that favour DHTs for creating such a glue service: Anem a estudiar les raons que afavoreixen severals DHTs per a la creació d'un servei de cua:

  1. Churn vs Stability: Web servers are stable peers that are not continuously entering and leaving the network. Abandonament vs Estabilitat: Els servidors web són companys estables que no estan contínuament entrant i sortint de la xarxa. This dynamicity is a strong problem for DHTs deployed in networks of volatile edge nodes. Aquest dinamisme és un problema fort per DHTs desplegats en les xarxes de nodes de la vora volàtils. Because of this, the DHT abstraction can offer almost optimal efficiency without the burden of heavy self-adjusting stabilisation protocols. A causa d'això, la DHT pot oferir gairebé una eficàcia òptima sense la pesada càrrega de l'estabilització dels protocols d'auto-ajust.
  2. NAT traversal and firewalls vs Web accessibility: edge peers are usually located behind firewalls or NATs that preclude their full participation as routers in the network. NAT i tallafocs davant l'accessibilitat web: els companys de la vora són normalment es troba darrere de tallafocs o NAT que impedeixen la seva plena participació en els routers de la xarxa. Although there exist proxying techniques to overcome this problem, they represent a burden for the overall overlay. Encara que existeixen tècniques de proxy per superar aquest problema, que representen una càrrega per a la plantilla en general. The use of HTTP for the communication between Web servers in the DHT overlay permits to avoid such firewall and NAT problems so all nodes are full-fledged routers. L'ús d'HTTP per a la comunicació entre els servidors web en la superposició de DHT permet evitar tallafocs, NAT i els problemes perquè tots els nodes són routers de ple dret.
  3. Persistent connections Vs decoupling: most egde peer-to-peer networks use TCP or UDP as their communication protocol and HTTP only for downloads. Connexions persistents Vs dissociació: la majoria de peer-to-peer xarxes vora d'això utilitzar TCP o UDP com el seu protocol de comunicació i HTTP només per a les descàrregues. Every machine has a limit of open connections and they are consuming the bandwith of peers even in the lightest protocols. Cada màquina té un límit de connexions obertes i que estan consumint l'ample de banda dels seus companys, fins i tot en el més lleuger dels protocols. The use of HTTP for inter-webpeer communication creates a decoupled infrastructure that saves traffic and open connections and thus creates a very lightweight infrastructure. L'ús d'HTTP per a la comunicació entre webpad crea una infraestructura dissociada que redueix el trànsit i les connexions obertes, el que crea una infraestructura molt lleuger. A webnode routing table is not a collection of open connections but instead a list of URLs. Un webnode taula d'encaminament no és un conjunt de connexions obertes, sinó una llista d'URL. This costless approach will permit the creation of URL-caches to improve the overall performance of the infrastructure. Aquest enfocament sense cost permetrà la creació de la URL-memòria cau per millorar el rendiment global de la infraestructura.
  4. Peers Vs Super-peers: the decentralized network of web servers (glue DHT) is in fact an overlay of super-peers that can offer added services to the huge mass of edge peers. Enfront dels parells de Super-companys: la xarxa descentralitzada de servidors web (DHT cua) és en realitat una superposició de super-companys que poden oferir serveis afegits a la gran massa dels companys de la vora. By stabilishing these two levels, we can devise innovative distributed services derived from the interaction of both layers. Per estabilitzadors, aquests dos nivells, podem dissenyar innovadors serveis distribuïts derivat de la interacció de les dues capes. It is a transition from a Web of isolated Web server islands to a true interconnected (glued) web of peer web servers. Es tracta d'una transició d'una web d'illes aïllades de servidor web a una veritable interconnexió (enganxats) xarxa de servidors web de parells.

We foresee a lot of applications that can benefit from such infrastructure. Preveiem una gran quantitat d'aplicacions que poden beneficiar-se d'aquesta infraestructura. From efficient distributed RSS syndication using publish/subscribe services on top of the network, to instant messaging protocols or even distributed geo-information indexes like GoogleMaps and Google Local. Des eficient sindicació RSS distribuït amb publicació / subscripció de serveis a la part superior de la xarxa, per a protocols de missatgeria instantània i fins i tot els índexs de distribució d'informació geogràfica com Google Maps i Google Local. Our proposed proof of concept application is framed in a known open source project called Moodle. La nostra prova de concepte d'aplicació proposat s'emmarca en un projecte de codi obert anomenat Moodle coneguda. Moodle is a virtual campus web application used in thousands of Universities and Learning Institutions around the world. Moodle és una aplicació web, el campus virtual que s'utilitza en milers d'Universitats i Institucions d'aprenentatge en tot el món. We have developed an extension of Moodle that aims to interconnect all the Moodle sites in the Internet. Hem desenvolupat una extensió de Moodle que té com a objectiu interconnectar tot arreu Moodle a Internet. For the moment, this extension will offer worldwide statistics of the usage of Moodle around the world, but it will also permit to locate resources in the whole Moodle network of servers. De moment, aquesta extensió s'ofereixen a tot el món les estadístiques de l'ús de Moodle a tot el món, sinó que també permetrà localitzar recursos en tota la xarxa de servidors Moodle. It will be thus possible for a teacher to locate course contents related to his subject in other Moodles located elsewhere. Serà per tant possible que un mestre per localitzar continguts dels cursos relacionats amb el seu tema en Moodle, situats en altres llocs.

Architecture Arquitectura

The key idea of our p2pWeb architecture is to interconnect Web servers using a hierarchical peer-to-peer overlay, where communications are performed with the HTTP protocol. La idea clau de la nostra arquitectura p2pWeb és la interconnexió de servidors web amb una estructura jeràrquica peer-to-peer de superposició, on les comunicacions es realitzen amb el protocol HTTP.

On the one hand, the use of HTTP is adequate thanks to server stability, NAT and firewall traversal and decoupling. D'una banda, l'ús de HTTP és adequada gràcies a l'estabilitat del servidor, NAT i firewall transversal i la dissociació. Routing is thus performed with HTTP redirects and there is no need for a heavy stabilization protocol. L'enrutament és el que realitza amb redirecció HTTP i no hi ha necessitat d'un protocol d'estabilització pesats.

On the other hand, the hierarchical design offers two key advantages to the p2pWeb architecture: content locality and path locality. D'altra banda, el disseny jeràrquic ofereix dos avantatges clau de l'arquitectura p2pWeb: La localitat de contingut i de la localitat camí. Content locality permits applications to store information in specific domains/ clusters and path locality ensures that a routing path stays entirely within an organization if needed. localitat de contingut permet que les aplicacions per a emmagatzemar la informació en àmbits específics o grups i la localitat ruta s'assegura que una ruta d'enrutament es manté totalment dins d'una organització, si cal.

P2PWeb components P2PWeb components

P2PWeb projects P2PWeb projectes

Download Descarregar

See Download section for more information or SVN access. Veure Descarregar per obtenir més informació o accedir a SVN.

Mailing lists Llistes de correu

Mailing lists: Llistes de correu:

Developers: Desenvolupadors:

Users: Usuaris:

Contribute Contribuir

This project is under development and we will appreciate your suggestions or p2pweb bugs. Aquest projecte està en desenvolupament i podrem apreciar els seus suggeriments o errors p2pweb. To add a request for new functionalities or to submit a bug you an use our ticket system . Per afegir una petició de noves funcionalitats o per enviar un error que un utilitza el nostre sistema de tiquets .

Tutorial Tutorial

P2PWeb Introduction and Tutorial. P2PWeb Introducció i tutorial.

API Documentation Documentació de l'API

See API Documentation with doxygen. Veure documentació de l'API amb doxygen.

Authors Autors

  Pedro García López , full-time professor in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Pedro García López , Professor a temps complet en el Departament de Ciències de la Computació i Matemàtiques a la Universitat Rovira i Virgili de Tarragona, Catalunya, Espanya.
<pedro.garcia <Pedro.garcia arroba.gif urv.cat> > Urv.cat

  Lluís Pàmies i Juárez , PhD student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Lluís Pàmies i Juárez , estudiant de doctorat al Departament de Ciències de la Computació i Matemàtiques a la Universitat Rovira i Virgili de Tarragona, Catalunya, Espanya.
<lluis.pamies <Lluis.pamies arroba.gif urv.cat> > Urv.cat

  Marc Sanchez Artigas , PhD student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Marc Sánchez Artigas , estudiant de doctorat al Departament de Ciències de la Computació i Matemàtiques a la Universitat Rovira i Virgili de Tarragona, Catalunya, Espanya.
<marc.sanchez <Marc.sanchez arroba.gif urv.cat> > Urv.cat

  Jordi Pujol Ahulló , PhD student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Jordi Pujol Ahulló , estudiant de doctorat al Departament de Ciències de la Computació i Matemàtiques a la Universitat Rovira i Virgili de Tarragona, Catalunya, Espanya.
<jordi.pujol <Jordi.pujol arroba.gif urv.cat> > Urv.cat

Marc Espelt Palau , M. Sc. Espelt Palau Marc, M. Sc. Computer Science Student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Equip Estudiants de Ciències en el Departament de Ciències de la Computació i Matemàtiques a la Universitat Rovira i Virgili de Tarragona, Catalunya, Espanya.
<marc.espelt <Marc.espelt arroba.gif estudiants.urv.cat> > Estudiants.urv.cat

Publications Publicacions

Text anglès original:
These kind of networks offer interesting features like massive scalability, efficient Content-based routing and resource discovery, fault-tolerance and self-adjusting behaviors.
Suggereix una traducció millor