José Manuel Mendoza IIC2523 – Sistemas Distribuidos Profesor: Cris>an Daniel Ruz • Es uno de los protocolos más comunes de intercambio de archivos grandes. • Sistema P2P donde la red se sub-­‐agrupa en enjambres donde cada nodo sube y baja un mismo archivo simultáneamente. • Peer: Cada usuario de la red es un peer. • Leecher: Usuario que está en la red descargando el archivo, sin tenerlo completo todavía. • Seeder: Usuarios en la red que poseen el archivo completo • Tracker: Servidor especial con la información para que un peer se conecte con otros. U>lizado para la inicialización, localizan y vinculan el nodo a un enjambre • Setup para compar>r un archivo: 1. Crear un archivo torrent asociado al archivo a compar>r. 2. Ligar el archivo torrent a uno o más trackers. 3. Compar>r el archivo torrent de forma convencional. 4. Conectarse a la red para mantenerse como seed. 5. Los que obtengan el archivo torrent se conectan a la red como leechers, y descargarán el archivo desde el seed original. • El archivo a compar>r se subdivide en partes de tamaños iguales. Cuando un leecher recibe una de estas partes, puede comenzar a compar>rla con el resto del enjambre. • RFA (rarest first algorithm) – Llamemos ‘‘Piezas’’ a las partes en las que se divide el archivo compar>do por el enjambre. – Cada peer construye y man>ene una lista con el número de veces que aparece cada pieza entre todos sus peers conocidos . – Cada peer selecciona la pieza más rara en su lista como la siguiente a descargar. – Excepciones: <4 Piezas y End Game Mode. • Choke Algorithm – Algoritmo para la selección de peers con los cuales interactuar. – Se dice que un peer A está ‘interesado’ en un peer B si B >ene piezas que A no >ene. – Se dice que un peer A bloquea a un peer B cuando A decide no enviarle piezas a B • Choke Algorithm – Cada peer debe tener un máximo de 4 peers remotos desbloqueados e interesados a la vez. – Cada 10 segundos se desbloquean los 3 peers remotos interesados con los que el peer local tenga mayor velocidad de descarga. ¡Se evitan los free-­‐riders! – Cada 30 segundos se desbloquea un peer aleatorio: Op>mis>c Unchoke. • Los clientes de BitTorrent pueden mejorar el protocolo por su propia cuenta. • Ejemplo interesante: Superseeding. – Primer seed A entra al enjambre encubierto como un leecher que no >ene ninguna pieza. – Cuando entra un segundo peer B, A le no>fica que >ene una pieza. – Después de que B descargue dicha pieza, A no le compar>rá más piezas hasta que B haya entregado la pieza que descargó a algún nuevo peer. – A ahorra su ancho de banda, se asegura una mayor creación de seeds. • Para protegerse de modificaciones maliciosas de piezas o del archivo completo, cada pieza es protegida con un hash criptográfico . • A par>r del archivo torrent se puede verificar entonces que cada pieza sea autén>ca y descartar las que no lo sean. • La caída del tracker implica un peor funcionamiento en los swarms y que nuevos nodos no se puedan unir a estos. • Poca eficiencia en transmisión de archivos pequeños (mensajes de protocolo pesados). • Los clientes no >enen sistemas de búsqueda de archivos -­‐> Solución: Directorios de torrents. • No se >ene como verificar que el archivo de un torrent sea malicioso -­‐> Confiar en ra>ngs de directorios. • Los free-­‐riders (no suben nada, solo descargan), como ya se explicó, se evitan con el Choke algorithm. • «Leechers» que salen de la red de inmediato al terminar la descarga causan que la descarga del archivo solo sea rápida durante los primeros días. -­‐> Se ha trackers privados que revisan cuánto comparte solucionado con cada usuario y así priorizan a los que han sido seeders por mayor >empo. ***Nace el ataque de la subida corrupta: Abusadores que man>enen un archivo corrupto subiéndose para que la revisión de bloques lo rechace pero el tracker privado aumente su prioridad. -­‐> Los clientes de BitTorrent los bloquean. • Es la mejor opción para compar>r archivos grandes: – Evita carga en el ancho de banda de un servidor permi>endo altas velocidades de descarga gracias a la distribución de trabajo. – Permite la pausa y reanudación de descargas debido a la separación por piezas • Genera redundancia del archivo a través de la red, haciendo muy dilcil detener su distribución. • La tecnología en si es totalmente legal, pero el uso que se le ha dado para compar>r archivos protegidos por copyright ha generado muchos conflictos legales. • HBO en el 2005 intentó detener la distribución de sus series subiendo data corrupta a las redes de sus torrents. • En el 2010 el ‘US Copyright Group’ demandó a cerca de 16,200 usuarios de BitTorrent por descargas de películas específicas, obteniendo las iden>dades mediante las ISP de los usuarios. • La legalidad de estas demandas masivas fueron cues>onadas y se comenzaron a rechazar. • Constante conflicto entre servicios de directorios de torrents con la ley. Algunos Clientes y Directorios • uTorrent • Vuze • BitComet • BitTorrent (original) • • • • • • • www.kat.ph www.torrents.to www.thepiratebay.sx www.mininova.org www.isohunt.com www.youtorrent.com www.torrentz.eu