2009-07-25 8 views
63

Si tengo un torrente sin ningún rastreador, y acabo de iniciar un cliente de bittorent, por lo que todavía no tengo pares ... ¿cómo sé con quién me conectaré primero en el DHT? Parece que debería saber al menos UN nodo en el DHT para comenzar ....¿Cómo se "arranca" un DHT en un cliente Bittorent?

+3

Todas las respuestas aquí sólo responde a la pregunta PARCIALMENTE. Puede encontrar una respuesta buena y completa de The8472 aquí: http://stackoverflow.com/questions/10999786/how-pex-protocol-magnetic-links-finds-it-first-ip/11089702#11089702 – Encombe

Respuesta

34

Cuando un cliente BitTorrent se conecta a DHT, hay un lugar inicial que va a buscar pares. Con el cliente original de BitTorrent, había una url a bitorrent.com que ayudaría a comenzar. Intenté buscar la referencia, pero no pude encontrarla. Una vez que haya establecido las conexiones con otros clientes, puede hacer un announce en la red DHT para encontrar pares para el torrente que está buscando.

Aquí hay un enlace al BitTorrent specs que habla de DHT.

Un diccionario de torrents sin tracker tiene no tiene una clave de "anunciar". En cambio, un torrent sin seguimiento tiene una clave de "nodos". Esta clave debe establecerse en K nodos más cercanos en el torrente generando la tabla de enrutamiento del cliente. Alternativamente, la clave podría establecerse en un nodo bueno conocido tal como uno operado por la persona que genera el torrente. No agregue automáticamente "router.bittorrent.com" a los archivos torrent o agregue automáticamente este nodo a las tablas de enrutamiento de los clientes.

+4

Usted 'anunciar' en la red DHT? Pensé que hiciste un 'get_peers()' o incluso el resumen 'get()' para encontrar pares? – gsk

0

Necesita compañeros de algún otro torrent para hablar. Como ha indicado que no tiene estos, no tiene mucho con lo que ir ...

35

Los nodos de bootstrap DHT mainline son router.utorrent.com y un CNAME, router.bittorrent.com. Puerto 6881.

+8

¡Gracias! Este podría ser el único lugar en la web donde los complementos se muestran en texto sin formato. –

+2

Si mira el DNS, estos se resuelven en la misma ubicación con el enrutador.bittorent.com que es un CNAME a enrutador.utorrent.com. Ellos son el mismo nodo. – anthonyryan1

3

Un cliente puede aprender sobre otros compañeros habilitados para DHT a través de sus interacciones con ellos. El soporte de un compañero para DHT se anuncia en su Handshake. Una vez que un cliente descubre al menos un par DHT bueno y bien conectado, puede navegar el DHT para encontrar más y más cercanos pares DHT. Recordará a estos pares, llamados nodos en DHT-speak, entre los reinicios del software y mantendrá/actualizará la lista continuamente mientras se está ejecutando. En el peor de los casos en que un cliente no conoce a buenos pares aptos para DHT, se le pedirá que descargue un torrente basado en el rastreador para poder contactar con unos pocos buenos pares aptos para DHT a través del rastreador.

Actualización: por su lista inicial de pares de DHT, como señala @Seppo, un torrente cliente puede utilizar uno o más nombres DNS no modificables para encontrar las direcciones de los compañeros conocidos, y también puede incluir una lista de pares con código fijo como último recurso también. Una limitación de DNS, sin embargo, no se proporciona información de puerto por lo que generalmente se asume un puerto predeterminado de 6881, mientras que otros medios admiten pares que operan en puertos diferentes.

21

el gráfico en la parte inferior de este sitio DHT monitoring project muestra

  • dht.transmissionbt.com
  • router.utorrent.com
  • router.bittorrent.com

como bootstrapping compañeros

+3

BitTorrent ha publicado el código fuente para que ahora pueda ejecutar su propia máquina de arranque DHT: https://github.com/bittorrent/bootstrap-dht – Encombe

14

En BitTorrent, usted tiene tres opciones principales:

  • de archivos Torrent: algunos archivos torrent se puede incrustar nodes para vincular a la DHT con (en de hecho, se recomienda cuando se hace un archivo torrent)
  • Hardcoding: Algunos clientes de torrent codifican algunos nodos de arranque (como los de los hombres citado por stk). Estos generalmente son administrados por empresas y organizaciones con servidores de larga ejecución.
  • PEX/Conversaciones entre pares: Por lo general, puede solicitar nodos DHT a las personas a las que está descargando otros torrents (si sus clientes entienden el idioma de los demás, es decir, algunas versiones son incompatibles).
8

Transmission utiliza un hardcoded bootstrap node de DHT si no hay otra manera de conseguir compañeros:

bootstrap_from_name("dht.transmissionbt.com", 6881, bootstrap_af(session)); 

supongo que cada cliente Torrent utiliza su propio nodo de arranque.

3

Para el registro, Deluge utiliza también hardcoded boostrap nodes:

 self.session.add_dht_router("router.bittorrent.com", 6881) 
     self.session.add_dht_router("router.utorrent.com", 6881) 
     self.session.add_dht_router("router.bitcomet.com", 6881) 
Cuestiones relacionadas