2012-06-12 14 views
17

Estoy tratando de entender cómo puede funcionar un enlace magnético, ya que he leído que usan DHT y PEX para obtener los pares, pero si soy un nuevo nodo en la red, ¿cómo puedo encontrar pares solo con el hash? del archivo ?! ¿No siempre requiere un enlace a un host conocido?¿Cómo el protocolo PEX (enlaces magnéticos) lo encuentra primero IP?

Gracias

+0

La etiqueta 'Pex' es para la herramienta de prueba de la caja blanca de Microsoft, no para el Intercambio entre iguales. Reetiquetado – shamp00

+1

¡Una nota !: los enlaces de imán (que se encuentran en la bahía de piratas) generalmente tienen URL de rastreador incrustadas en ellos. Al usar este tipo de enlaces, puede preguntar al rastreador por sus pares – gsk

Respuesta

22

La DHT bittorrent se pueden bootstrap de muchas maneras. Solo necesita la IP y el puerto de cualquier otro nodo de DHT alcanzable.

clientes

actuales suelen utilizar varias de las siguientes estrategias:

  • de arranque de una caché de nodos de larga vida de una sesión anterior
  • utilizar una asignación de grabación/AAAA DNS A a un nodo conocido (por ejemplo, router.bittorrent.com o dht.transmissionbt.com) con un puerto conocido
  • utilizar un nodo embedded in a .torrent file
  • recuperar el DHT port from a bittorrent client través de una conexión bittorrent establecido a través de otros medios, por ejemplo, un rastreador convencional.
    • Si un pares es embedded in a magnet link uno también puede piggyback un bootstrap DHT en que a través del mensaje de puerto
  • descubrimiento de vecinos de multidifusión a través LSD
  • transversal charla de la IPv4 a los DHTs IPv6 y viceversa (si es necesario)

Otras formas tales como listas de arranque configurables por el usuario, registros SRV de DNS mapeo de round-robin para vivir nodos o - en caso de fallar todo lo demás - adición de la IP de su amigo (s) Manua Sólo trabajo.

Una vez que un nodo se ha unido a la red, la primera estrategia mencionada anteriormente se activará y es poco probable que deba reiniciarse.

Por lo tanto, aunque la mayoría de las implementaciones dependen de un único/pocos puntos de entrada a la red para su comodidad, el protocolo en sí mismo es lo suficientemente flexible como para descentralizar los puntos de entrada también.

Solo para enfatizar: Cualquier nodo en el DHT puede usarse para unirse a la red. Los nodos de rutina de arranque dedicados son un detalle de implementación, no son parte del protocolo, y podrían ser reemplazados por otros mecanismos de detección si es necesario.

+1

ok, lo entiendo, pero si es un nodo nuevo y desea ingresar a la red, no hay manera de que pueda hacerlo sin pedir un par , y la forma habitual es usar un servidor para eso, por lo que siempre necesitará uno, o hará que el acceso a la red sea más difícil –

+3

Sí, la forma habitual es usar un servidor en este momento. Pero su conclusión de que "siempre la necesita" es incorrecta. Otras formas son posibles El objetivo de mi respuesta fue que no necesita "un servidor central", solo que es una forma conveniente de hacer las cosas. – the8472

+1

sí lo tengo, pero para que funcione cada vez que un servidor es la opción correcta, de lo contrario el nodo que se proporciona puede estar fuera de línea –

Cuestiones relacionadas