Al principio el funcionamiento de este protocolo puede parecer complicado pero en realidad es muy sencillo sobretodo si os fijáis bien en el esquema siguiente, el único que demuestra al 100% el funcionamiento de este protocolo. Fijaros hacia donde apuntan las flechas y los colores que son muy importantes.
Tracker: Es el servidor situado en el centro de la imagen. Es el único ordenador que conoce dónde se encuentran todos los usuarios y dónde todos los usuarios se conectaran para poder encontrar al resto de usuarios y conocer cuando se conectan nuevos usuarios. Podemos ver esta unión por las flechas de color verde por la que solo circula un poco de información para realizar la gestión de usuarios.
Seeds: Son los ordenadores de color azul y los únicos que tienen el 100% del archivo que queremos descargar. Estos usuarios envían el archivo al resto de usuarios. Como podemos observar en el esquema tan solo envían el archivo y no reciben nada.
Peers: Son los ordenadores de color negro. Se dedican a descargar los archivos de todos los peers y, a la vez, suben el trozo que tienen de archivo a otros peers. Aunque en el esquema no se da el caso puede ser que un peer no esté conectado a ningún seed, incluso podría ocurrir que no hubiera seeds. Hay que tener en cuenta que cuanto más ancho de banda se comparte, más ancho de banda se recibe. O lo que es lo mismo, si queremos recibir el archivo rápidamente tendremos también que subir muchos datos.
Ahora que ya conocemos la función de cada ordenador vamos a ver qué pasos ocurren para poder bajar un archivo y hasta la desaparición de la red de dicho archivo. Cuando alguien decide colgar un archivo en BitTorrent lo primero que ha de hacer es el .torrent, que lo mandara a un tracker y en el .torrent contendrá la información para que el tracker la pueda interpretar. Luego lo que hace es abrir el .torrent con un cliente de BitTorrent cualquiera e indicarle como lugar de descarga el mismo lugar donde tenemos “el original”. Al tenerlo 100% descargado nos convertiremos automáticamente en un seed.
Hay que tener en cuenta que el tracker divide el archivo en trozos de unos 512 Kb aproximadamente cada uno, por ejemplo un archivo de 700 Mb se dividiría en 1400 trocitos. Por lo que si mientras bajamos un trozo nos caemos o se cierra el programa podremos perder los trozos que no estaban bajados completamente.
Cuando un nuevo usuario se conecta, se añade un peer y empieza recibir trozos del archivo ya sea desde otro peer o un seed. Cuando consigue tener el 100% del archivo, automáticamente pasa de ser un peer a convertirse en un seed y así sucesivamente. Cuantos más seeds y peers hayan más rápidamente bajara un archivo. Por eso es importante seguir compartiendo aunque tengamos el archivo descargado por completo.
Los archivos desaparecen en el momento que el tracker los descarta y éste suele hacerlo a las 24 o 48 horas seguidas sin la conexión de ningún seed, aunque puede variar porque depende de la configuración del tracker.
Otra cosa a tener en cuenta es que no siempre estamos bajando de los mismos usuarios, sino que se va cambiando. Lo que es constante es la conexión con dichos usuarios, es decir la lista que tenemos de usuarios y sólo se cortará dicha conexión cuando uno de los dos usuarios se desconecte, ya sea por voluntad propia o porque se caiga. Incluso se mantiene las conexiones que teníamos aunque el tracker se caiga, pero en este caso no podrán conectarse nuevos usuarios.
Se recomienda seguir leyendo los siguientes artículos.