domingo, 14 de octubre de 2012

Gnutella



El 14 de marzo del 2000 Justin Frankel y Tom Pepper presentaron Gnutella. Al día siguiente, se detuvo la disponibilidad del programa debido a problemas legales y se prohibió continuar trabajando en el proyecto.
Tom Pepper afirmó que el objetivo original de Gnutella era compartir recetas de cocina pero esto no fue el fin de Gnutella; unos días más tarde aparecieron nuevos clientes porque el  protocolo había sido descifrado por ingeniería inversa. Este desarrollo paralelo de distintos clientes por distintos grupos está siendo hoy la manera en que se realiza el desarrollo de Gnutella.
Algunos de esos clientes son:

  • Windows: Bearshare, Morpheus, LimeWire, Phex
  • Linux/Unix: LimeWire, Phex, Mutella
  • Mac: Limewire, Phex

El funcionamiento es, al arrancar, el cliente contacta con unos cuantos nodos (típicamente 4); estos nodos se convierten en sus “vecinos”, para buscar algo el cliente pregunta a sus vecinos, y estos a los suyos, y así sucesivamente. Si alguno de ellos tiene el fichero buscado, responde al participante que hizo la petición. y el fichero se obtiene directamente de quien tiene el fichero.



Sus características son: 
  • Los participantes forman una red abstracta.
  • La transferencia de ficheros es descentralizada.
  • La búsqueda de ficheros es recursiva, los mensajes de petición se envían a todos los vecinos. (Cada búsqueda tiene un identificador para que los vecinos descarten los duplicados).
  • Las transferencias de ficheros se hacen entre participantes utilizando el protocolo HTTP.
  • La localización de ficheros es distribuida (la red depende de los usuarios).
Sus ventajas son:
  • Es descentralizado, significa que no hay puntos de control ni puntos de fallo.
  • Cerrar la red no es fácil, ya que implicaría el cierre de cada participante.
  • Cada participante tiene la misma responsabilidad.

Sus inconvenientes son:
  • Los nodos pueden estar apagados al iniciar el programa.
  • El tráfico de consultas es excesivo, en media, una petición en Napster genera 18 bytes, mientras que esa misma petición en Gnutella genera del orden 90 Mbytes.
  • Los nodos abandonan la red a menudo.
  • El tiempo de búsqueda es impredecible.
  • Puede no encontrarse un fichero a pesar de estar compartido, porque cada fichero tiene un campo TTL que en cada petición disminuye su valor y cuando este sea 0 la petición finaliza.

1 comentario:

  1. Hola;
    Dá pena qué NO se comercialice este producto;qué en el pasado sé producía con mucha aceptación por el consumidor en el cuál me incluyo;me gustaría obtener dicho producto.
    Gracias

    ResponderEliminar