Para empezar, un proyecto relacionado con las redes de distribución P2P (peer-to-peer). Los actuales sistemas de distribución P2P presentan varios problemas:

|
El proyecto Avalanche surge con el objetivo de proporcionar un sistema rápido y robusto de distribución P2P, que solucione los anteriores problemas. Para ello, Avalanche se sirve de algoritmos de codificación, de tal forma que cada pieza (bloque) codificada posea el “ADN” de todas las piezas que forman el fichero. Así, un cliente podría utilizar cualquiera de estas piezas codificadas para sustituir otra pieza que aún no haya descargado. Estas piezas codificadas son creadas mediante ecuaciones lineales que tienen en cuenta al resto de piezas del fichero. Para poder recontruir el fichero original, es necesario que el cliente descargue un número de piezas suficiente, y que resuelva el conjunto de ecuaciones matemáticas utilizadas para su codificación. De esta manera, se acelera la velocidad de descarga de los ficheros, ya que no es necesario descargar todas sus piezas, y también se reduce la dependencia del cliente de las semillas.
Con Avalanche, no es necesario que los nodos continuen sirviendo el fichero después de finalizar su descarga para ayudar a otros nodos, el rendimiento de la red continúa siendo el mismo, y se reduce la carga del servidor.
Otra característica a destacar es que este sistema de distribución permitirá identificar de forma única al proveedor de los contenidos, evitando así la descarga de piezas no autorizadas. Y asegura que el contenido descargado en cada cliente es exactamente el mismo que el compartido por el proveedor.
Todo esto sin la necesidad de conocer información de quién tiene un determinado archivo, ni de la topología de la red o ancho de banda disponible.
Avalanche ha sido desarrollado en el Laboratorio Microsoft Research en Cambridge por Pablo Rodríguez Rodríguez, el único español que está trabajando como investigador en este laboratorio, y Christos Gkantsidis.
Más información sobre Avalanche aquí.

