Proyecto de diseño senior de Penn 2018
Primer lugar en el departamento CIS
David Cao ○ Dylan Mann ○ Alex Moses ○ Graham Mosley
El tráfico de BitTorrent es abundante, pero difícil de analizar. Para capturar suficientes datos para un análisis significativo, se necesita una gran solución distribuida. Actualmente, empresas de investigación como Nielsen no dan cuenta adecuadamente del consumo ilegal de medios. Analizar el tráfico de BitTorrent permitiría a las empresas estudiar comportamientos de los consumidores que antes eran invisibles para las medidas tradicionales de popularidad de los medios.
Nuestra solución es implementar nodos que escuchen la tabla hash distribuida (DHT) de la línea principal de BitTorrent. Cada nodo ejecuta una versión bifurcada del excelente repositorio mldht de the8472. Nuestro tenedor se puede encontrar aquí. Una vez que nuestro nodo es descubierto por pares en DHT, comienza a enrutar consultas, resolver torrents y recopilar metadatos sobre las consultas que recibe. Procesamos estos datos a través de nuestra canalización y almacenamos los resultados procesados en Amazon S3 para facilitar el acceso.
El principal producto de BoonTorrent son datos de series temporales legibles por máquina para investigación. También implementamos dos aplicaciones de prueba de concepto basadas en esos datos. El primero es una visualización de mapas de calor que se actualiza en tiempo real con los últimos 2 minutos de tráfico, y el segundo es un buscador para localizar archivos torrent específicos. En un mes, nuestro motor de búsqueda ha indexado 1,2 millones de torrents que representan 46 millones de archivos con un tamaño total de casi 4 petabytes. Nuestro proceso y ambas aplicaciones se ejecutan por aproximadamente $10 por día, y registramos y analizamos aproximadamente 7 millones de puntos de datos diariamente. Nuestro trabajo ha demostrado que es posible monitorear el tráfico BitTorrent de manera rentable.
Ubicación | Descripción |
---|---|
indexador-lambda | AWS Lambda que indexa torrents resueltos, desencadenados por eventos de creación de objetos s3. |
torrent-resumen-lambda | AWS Lambda que recupera un torrent determinado de S3 y decodifica los metadatos. |
prototipos | Implementaciones de prototipos. |
escala de chispa | Código de procesamiento de chispa local. |
datos de usuario.sh | Script de datos de usuario para instancias EC2. |
documentos | capturas de pantalla y material de referencia. |
aplicación | Prueba de concepto de aplicaciones web escritas con ejs. |
Puede encontrar un ejemplo de archivo de registro de manguera contra incendios aquí.
Durante un mes, rastreamos e indexamos 1,2 millones de torrents que describen 46 millones de archivos con un total de 4 PB.
Si está interesado en los metadatos o archivos .torrent sin formato, presente una incidencia.