O cliente usará DHT e Peer Exchange para procurar clientes se nenhum rastreador for fornecido.
Resumindo:
A Wikipédia menciona uma "pesquisa de disponibilidade" obrigatória para encontrar os pares (e o arquivo real):
Note that, although a particular file is indicated, an availability search for it must still be carried out by the client application.
Onde o cliente está? Um link magnético requer um rastreador URI ou é até a 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 tr
query params com (suponho) localizações de rastreador que contêm algum tipo de índice hash. No entanto, a Wikipédia não menciona o tr
param, por isso suponho que não seja obrigatório.
Onde um cliente começa a procurar pelo arquivo se nenhum URI do rastreador estiver incluído? E se houver? Eu posso imaginar um cliente de torrent (como o uTorrent) tendo um enorme índice de hashes de arquivos.
O cliente usará DHT e Peer Exchange para procurar clientes se nenhum rastreador for fornecido.
Se os rastreadores estiverem listados, o cliente os consultará primeiro. Se nenhum for 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 localizar mais cópias depois que o primeiro for encontrado. Mesmo se os rastreadores forem encontrados, o cliente ainda poderá aproveitar o DHT para encontrar outros pares.
A abordagem sem tracker é análoga à rede Gnutella (2) se você estivesse familiarizado com sua operação.