Onde um cliente magnet / torrent procura o hash / torrent / arquivo?

9

Em resumo:

A Wikipedia menciona uma "pesquisa de disponibilidade" necessária para encontrar pares (e o arquivo real):

Observe que, embora um arquivo específico seja indicado, uma pesquisa de disponibilidade ainda deve ser realizada pelo aplicativo cliente.

Onde o cliente olha? Um link magnético requer um URI de rastreador ou depende da rede do cliente?

Mais informações:

Um determinado ímã URI / URN do tpb se parece com isso:

magnet:?xt=urn:btih:e9b785fc2d70811a72df5a76bb34bd2eaf9df956&dn=Dances+with+Wolves+1990+20th+Anniversary+Extended+Cut+720p+BRRip&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80

Ele contém 4 trparâmetros de consulta com (suponho) localizações de rastreadores que contêm algum tipo de índice de hash. No entanto, a Wikipedia não menciona o trparâmetro, então presumo que não seja obrigatório.

Onde um cliente começa a procurar o arquivo se nenhum URI do rastreador estiver incluído? E se houver? Eu posso imaginar um cliente de torrent (como o uTorrent) em si com um enorme índice de hashes de arquivos.

Rudie
fonte
2
Kudos para pedir tão bem, apenas uma pequena correção no entanto: A Wikipedia não mencionar o trparâmetro (pelo menos na época eu estava vendo-o do artigo)
Saxtus
Foi mal. Eu só vi a parte dos parâmetros em "Descrição técnica". Não é mencionado lá. Diz "sem a necessidade de suporte DHT". Um cliente não usaria sempre DHT e / ou PeX mesmo quando um rastreador foi provado? (Se não, por que não?)
Rudie

Respostas:

7

O cliente usará o DHT e o Peer Exchange para procurar clientes se nenhum rastreador for fornecido.

Der Hochstapler
fonte
O URI do ímã acima funcionaria se eu removesse os trparâmetros? Meu cliente uTorrent ficaria via DHT e PeX? Usaria (ou mesmo encontraria) rastreadores de outros pares (porque outros obtiveram o URI de ímã completo, incluindo rastreadores)?
Rudie
@ Rudie: Deve funcionar. Como bem ele vai trabalhar depende do cliente, sua rede, quão comum o arquivo está dentro do enxame, ...
Der Hochstapler
Procuraria rastreadores ou ignoraria toda a abordagem do rastreador se um rastreador inicial não fosse um provedor? (Um colega compartilharia o URL do rastreador com outro colega?) Sinto muito por ser chato e redundante, mas só preciso saber =)
Rudie
Além disso (desculpe!), A Wikipedia diz "identifica um arquivo", mas um torrent pode conter muitos arquivos. O arquivo inteiro é mencionado no arquivo ou todo arquivo real possui seu próprio hash de ímã?
Rudie
@ Rudie: Para meu entendimento, os clientes não trocam rastreadores . Eles negociam apenas outros clientes . Um teste rápido que acabei de realizar parecia confirmar isso. Suponho que o "arquivo" mencionado na Wikipedia esteja relacionado ao contêiner de dados que descreve o conteúdo do torrent.
Der Hochstapler
3

Se os rastreadores estiverem listados, o cliente os consultará primeiro. Se nenhum estiver listado, o DHT é usado para consultar outros clientes em busca de cópias do arquivo e, em seguida, o PEX entra em ação para encontrar mais cópias assim que a primeira for encontrada. Mesmo que sejam encontrados rastreadores, o cliente ainda pode usar o DHT para encontrar outros pares.

A abordagem sem rastreador é análoga à rede Gnutella (2) se você estiver familiarizado com a operação.

BowlesCR
fonte
DHT e PeX funcionariam muito bem juntos, não? Por que primeiro DHT e depois PeX? (O resultado do DHT contém rastreadores PeX ou algo assim ??) O princípio é o mesmo, não é? Pergunte aos colegas da rede do cliente?
Rudie
Desculpe desenterrar isso dos mortos. O DHT encontra uma semente / ponto mesmo quando você não tem nenhuma para um determinado torrent. O PEX se comunica com colegas existentes para encontrar mais.
BowlesCR