Como é a granularidade das verificações de CRC em transferências bittorrent?

0

Eu acho que nunca usei com sucesso qualquer cliente de torrent em 20 anos de tentativas de vez em quando. Eu estou em um remanso do mundo dos dados: eu posso obter cerca de 3000 bytes por segundo em uma conexão dial-up ou 7000 em um telefone celular 2G, em um bom dia. A maioria das pessoas não tem ideia do que é isso.

Então, minha pergunta é se posso obter um cliente de torrent para a soma de verificação, digamos, pelo menos a cada megabyte transferido? Não há nenhum ponto em baixar toda a semana se você teve um erro na segunda-feira, você vai perder tempo e largura de banda e acabar com o lixo. Arquivos PAR ajudariam, mas eu só vi aqueles usados em um contexto binário usenet. Idealmente, gostaria de verificar o CRC pelo menos a cada 10 minutos, refazer esses dados se estiver errado e continuar.

Eu estou olhando para um arquivo de 1,3 gig que eu quero, que pelos meus cálculos vai demorar pelo menos 52 horas. Minha largura de banda também é medida para os primeiros (rápidos) 5 shows por mês, eu já explodi a cota deste mês tentando obter este arquivo via HTTP. Novamente, os arquivos PAR podem salvar o que eu baixei, mas é claro que a maioria dos sites não os usa. Eu baixei por 2 dias, ruim SHA, a coisa toda é inútil.

    
por Alan Corey 28.04.2016 / 15:04

1 resposta

1

Provavelmente não, mas o BitTorrent (BT) ainda pode ser uma boa ideia para o seu problema.

O BT divide arquivos grandes em pedaços (os chamados pedaços) e calcula hashes SHA1 para cada peça. As peças podem ser carregadas individualmente umas das outras (fora de ordem e também em paralelo). Depois que uma parte é baixada completamente (!), O SHA1 é verificado e se uma corrupção for encontrada, a peça é descartada e baixada novamente.

O tamanho de uma peça é variável, mas determinado pelo criador da torrente. O tamanho padrão da peça de valor é 256 KiB. Torrents maiores geralmente usam tamanhos de peças maiores. Por exemplo, o ubuntu 16.04 ISO (1.3 GiB) usa 512 KiB. O Caine 7.0 ISO (2,9 GiB) usa 1 MiB.

Então, se o tamanho da sua peça não for tão grande, o bittorrent conseguirá o que você deseja.

Para economizar largura de banda, talvez você queira desativar alguns recursos do BT, como o DHT e o PeX, e contar apenas com rastreadores.

Você também pode querer limitar o número de conexões paralelas e o número de partes paralelas, a fim de completar uma peça antes que a conexão possa ser interrompida. (Eu acho que isso pode ser conseguido com a configuração "em ordem" do qBittorrent)

Também muitos clientes (como o qBittorrent) também podem usar fontes HTTP além do protocolo de torrent. Embora eu não tenha certeza se eles também fizeram parte do checksum por fontes HTTP.

    
por 28.04.2016 / 15:34