Automáticamente, cuando el cliente de BitTorrent comienza una descarga lo primero que hace es preguntar al tracker por el resto de usuarios que se están bajando el mismo archivo. El tracker le irá dando las IPs de los usuarios; aunque si son demasiados es probable que no se las dé todas ya que un número muy grande de usuarios no provoca más velocidad. Al contrario, se producirá una saturación en el ancho de banda. Esto es debido a que aunque el cliente no esté descargando nada de otro usuario, cada dos minutos aproximadamente se realiza una petición para conocer el estado del otro usuario y poder así cerrar la conexión de alguien que se hubiera caído. Para un funcionamiento óptimo del protocolo BitTorrent sería recomendable estar conectado de 15 a 60 usuarios para la mayoría de conexiones que hay disponible en el mercado.
Pongamos que, por ejemplo, estamos conectados con 50 usuarios. Esto no quiere decir que estemos descargando de 50 personas. Lo más probable es que lo estemos haciendo de 5 a 10 usuarios de forma simultánea y que vayamos cambiando de usuarios de forma “semialeatoria” (será explicado más adelante). Esto se realiza de este modo ya que sería mucho más efectivo descargar por ejemplo de un sitio a 20 kbytes/s que descargar de 20 sitios a 1 kbyte/s. Con el segundo método se provoca un lag (tiempo transcurrido desde que realizamos una petición y obtenemos la respuesta) mucho mayor que en el primero. Esto lo podemos comprobar fácilmente poniendo a descargar algo desde un ftp: a pesar de llenar nuestro ancho de banda podemos chatear de forma totalmente fluida. En cambio, si tenemos un P2P al máximo veremos que la conversación se ralentizará.
Ahora que está aclarado que demasiadas conexiones simultáneas no son recomendables para conseguir una buena velocidad, en el siguiente paso explicaremos qué hace el BitTorrent para llevarlo a cabo.