4 pontos por xguru 2020-01-06 | 4 comentários | Compartilhar no WhatsApp

Explica passo a passo como criar um cliente baseado em tracker (excluindo DHT, magnet etc.)

  • Fazer o parsing de arquivos .torrent

  • Descobrir peers

  • Fazer o parsing da resposta do tracker

  • Trocar payload com peers (Concurrency, Pipe Lining etc.)

4 comentários

 
nezz1204 2020-01-07

Eu usava torrents, mas ficava curioso sobre como isso é feito; obrigado pelas boas informações.

 
xguru 2020-01-06

Pesquisei porque fiquei pensando se hoje em dia ainda existe algum uso para torrent que não seja ilegal.

O Murder, open source que o Twitter usava para implantação de servidores, não recebe mais manutenção.

https://github.com/lg/murder

A Blizzard usava o protocolo torrent para distribuir clientes grandes, mas isso também foi descontinuado depois de 2015.

https://us.battle.net/forums/en/bnet/topic/16283439122

No máximo, ainda dá para citar o Internet Archive, que usa isso para download de arquivos.

https://help.archive.org/hc/en-us/…

 
olivecake 2020-01-08

Às vezes isso também é bastante útil para conseguir distribuições menores de sistemas operacionais baseados em Linux.

Muitos sistemas operacionais baseados em Linux oferecem a opção de download via torrent,

então, se mais tarde não for mais possível fazer o download direto por motivos como a descontinuação do desenvolvimento daquele sistema,

você ainda pode baixar via torrent de outros usuários que já fizeram o download e continuam mantendo o seed.

 
xguru 2020-01-06

Existem vários outros clientes BitTorrent completos e bibliotecas feitos em Go além destes.

https://github.com/cenkalti/rain

https://github.com/anacrolix/torrent