Diseñar redes dinámicas modernas
Las redes peer-to-peer (P2P) adquirieron una gran notoriedad en la década de 1990 como mecanismo que permitía a los usuarios compartir material con los derechos reservados, sobre todo archivos de música en formato MP3. Mientras tanto, los investigadores académicos comenzaron a centrarse en las ventajas y los posibles campos de aplicación de esta estructura de redes descentralizada y a prueba de fallos. En la actualidad, las tecnologías P2P utilizadas para compartir archivos están sustituyendo a los antiguos mecanismos, incluido el tradicional protocolo de transferencia de archivos (FTP). Los sistemas P2P, como BitTorrent, aprovechan el ancho de banda de todos los usuarios de banda ancha y han llegado a más de 100.000 usuarios por archivo/conjunto de datos. PeerSim ha sido desarrollado como un entorno de simulación de código abierto que puede brindar garantías a los desarrolladores de software a la hora de diseñar esos sistemas P2P y de probar las aplicaciones de la red. Las simulaciones no sufren los problemas que surgían al experimentar con el propio sistema P2P o de adoptar un planteamiento analítico, que requerían un modelado matemático de la red P2P. Como los sistemas P2P pueden estar formados por un número muy elevado de nodos, la realización de experimentos con el sistema real requiere importantes recursos, además de ser vulnerable a los fallos de nodo. El coste de las simulaciones de las comunicaciones de red es menor que el de los experimentos a gran escala porque se necesitan menos recursos. Además, el modelo puede ser menos complejo que uno matemático. PeerSim fue diseñado especialmente para los protocolos epidémicos, como OverStat y SG-1 entre otros, con una amplia capacidad de ampliación y dinamismo. La estructura del simulador se basa en componentes, lo que facilita la creación rápida de un prototipo de protocolo mediante la combinación de distintos componentes extensibles. Cada uno de los bloques o componentes se puede sustituir fácilmente por otro con la misma interfaz (i.e. misma funcionalidad). PeerSim admite dos modelos de simulación diferentes: un modelo de ciclos simplificado y un modelo más tradicional basado en sucesos. El modelo de ciclos permite extender el simulador a un gran número de nodos, aunque se pierde cierta precisión si se compara con el motor del simulador de sucesos de PeerSim. Los usuarios interesados pueden encontrar tutoriales y ejemplos, junto con documentos de la interfaz de programación de aplicaciones (API), en la página web del proyecto: http://www.cs.unibo.it/bison/