Los sistemas peer-to-peer son sistemas descentralizados, en los que los cálculos pueden llevarse a cabo en cualquier nodo de la red y, al menos en principio , no se hacen distinciones entre clientes y servidores . En las aplicaciones peer-to-peer, el sistema en su totalidad se diseña para aprovechar la ventaja de la potencia computacional y disponibilidad de almacenamiento a través de una red de computadoras potencialmente enorme.
Clay Shirky, del The Accelerator Group definió que “P2P es una clase de aplicaciones que toma ventajas de los recursos – almacenamiento, ciclos de CPU, contenido y presencia humana – disponible en los entremos de Internet” [SHI01], y planteó un test para definir si una aplicación es P2P basado en dos preguntas:
- ¿Permite (la aplicación) conectividad variable y direcciones de red temporarias?
- ¿Brinda a los nodos de los extremos de la red autonomía significativa?
Según el mencionado autor, si la respuesta a ambas preguntas es afirmativa, entonces la aplicación es considerada P2P.
Ejemplos de P2P
En los últimos años han surgido aplicaciones en Internet que aprovechan las capacidades de los equipos de usuario final. Cada una de estas aplicaciones implementan un servicio que opera de manera distribuida en computadoras de usuario final. Por ejemplo ICQ [ICQ03] y AIM [AIM03] brindan servicios de mensajería, Gnutella [BOR01], Freenet [CLA00] y Napster [NAP00] servicio de distribución de archivos y SETI@Home [KOR01] procesamiento distribuido.
Aplicación | Red o Protocolo | Sistema operativo | Software libre |
---|---|---|---|
aMule | eDonkey, Kad | Multiplataforma | Sí |
eMule | eDonkey, Kad | Windows | Sí |
FilesWire | Gnutella, G3 | Multiplataforma | No |
giFT | eDonkey, FastTrack, Gnutella | Multiplataforma | Sí |
Gnucleus | Gnutella, Gnutella2 | Windows | Sí |
iMesh | FastTrack, eDonkey, Gnutella, Gnutella2 (versiones anteriores a la 6.0) | Windows | No |
KCeasy | Ares Galaxy, FastTrack, Gnutella, OpenFT | Windows | Sí |
Kiwi Alpha | Gnutella, Gnutella2 | Windows | No |
MLDonkey | BitTorrent, Direct Connect, eDonkey, FastTrack, Kad, OpenNap, SoulSeek, HTTP/FTP | Multiplataforma | Sí |
Morpheus | BitTorrent, Gnutella, Gnutella2 | Windows | No |
Shareaza | Gnutella, Gnutella2, eDonkey, BitTorrent, HTTP/FTP | Windows | No |
Vagaa | BitTorrent, eDonkey, Kad | Windows | No |
WinMX | WPNP, OpenNap | Windows | No |
Zultrax | Gnutella, ZEPP | Windows | No |
Características deseables:
- Escalabilidad. Las redes P2P tienen un alcance mundial con cientos de millones de usuarios potenciales. En general, lo deseable es que cuantos más nodos estén conectados a una red P2P, mejor será su funcionamiento. Así, cuando los nodos llegan y comparten sus propios recursos, los recursos totales del sistema aumentan. Esto es diferente en una arquitectura del modo servidor-cliente con un sistema fijo de servidores, en los cuales la adición de clientes podría significar una transferencia de datos más lenta para todos los usuarios. Algunos autores advierten que, si proliferan mucho este tipo de redes, cliente-servidor, podrían llegar a su fin, ya que a cada una de estas redes se conectarán muy pocos usuarios.
- Robustez. La naturaleza distribuida de las redes peer-to-peer también incrementa la robustez en caso de haber fallos en la réplica excesiva de los datos hacia múltiples destinos, y en sistemas P2P puros permitiendo a los peers encontrar la información sin hacer peticiones a ningún servidor centralizado de indexado. En el último caso, no hay ningún punto singular de falla en el sistema.
- Descentralización. Estas redes por definición son descentralizadas y todos los nodos son iguales. No existen nodos con funciones especiales, y por tanto ningún nodo es imprescindible para el funcionamiento de la red. En realidad, algunas redes comúnmente llamadas P2P no cumplen esta característica, como Napster, eDonkey o BitTorrent.
- Distribución de costes entre los usuarios. Se comparten o donan recursos a cambio de recursos. Según la aplicación de la red, los recursos pueden ser archivos, ancho de banda, ciclos de proceso o almacenamiento de disco.
- Anonimato. Es deseable que en estas redes quede anónimo el autor de un contenido, el editor, el lector, el servidor que lo alberga y la petición para encontrarlo, siempre que así lo necesiten los usuarios. Muchas veces el derecho al anonimato y los derechos de autor son incompatibles entre sí, y la industria propone mecanismos como el DRM para limitar ambos.
- Seguridad. Es una de las características deseables de las redes P2P menos implementada. Los objetivos de un P2P seguro serían identificar y evitar los nodos maliciosos, evitar el contenido infectado, evitar el espionaje de las comunicaciones entre nodos, creación de grupos seguros de nodos dentro de la red, protección de los recursos de la red... La mayor parte de los nodos aún están bajo investigación, pero los mecanismos más prometedores son: cifrado multiclave, cajas de arena, gestión de derechos de autor (la industria define qué puede hacer el usuario; por ejemplo, la segunda vez que se oye la canción se apaga), reputación (permitir acceso sólo a los conocidos), comunicaciones seguras, comentarios sobre los ficheros, etc.
Ventajas y desventajas
En un sistema p2p, donde un cálculo (que requiere un uso intensivo del procesador) se distribuye a través de un gran número de nodos , es normal que se distingan algunos nodos cuyo papel es distribuir el trabajo a otros nodos y reunir y comprobar los resultados del cálculo. Si bien hay sobrecargas obvias en los sistemas peer-to-peer, éstos son una aproximación mucho más eficiente para la computación interorganizacional que la aproximación basada en servicios que veremos seguidamente.
Todavía hay problemas en el uso de las arquitecturas p2p , ya que cuestiones tales como la protección y la autenticidad no están del todo resueltas . Esto significa que los sistemas p2p se usan más en sistemas de información no críticos.
Principales tipos de redes P2P
No hay comentarios:
Publicar un comentario