Como você diz que o limite é por computador, é possível fazer o download do arquivo em, digamos, dez blocos de dez computadores.
Na verdade, eu começaria a baixar de um computador, depois adicionaria outro e outro ... até eu perceber que a velocidade real de download ficou abaixo da taxa máxima teórica permitida de 50 Kb / s. Isso significaria que o uplink agora está saturado e não há razão para continuar adicionando clientes (na verdade, isso diminuiria a eficiência de transferência)
Para baixar uma única parte de um arquivo, você precisa de um utilitário como curl
(curl.haxx.se)
curl -r 0-10000000 -o Block1.bin http://www.site.com/path/to/largefile.zip
isto fará o download dos primeiros dez megabytes em Block1.bin
.
Se você já sabe com antecedência que pode usar no máximo, digamos, sete clientes, divida o tamanho do arquivo por sete e faça o download de sete grandes blocos. Isso fará o uso ideal da conexão TCP. Se você não sabe o tamanho, 10M é um tamanho de bloco razoável: basta monitorar os clientes e iniciar outro download assim que tiver terminado.
Para remontar as partes, você pode usar cat
. Eles dizem que COPY /B
funciona tão bem no Windows, mas eu nunca ousei. Se você se sentir aventureiro, tente
copy /b Block1.bin+Block2.bin+Block3.bin+... mylargefilereconstructed.zip
Importante : o que você disser, se houver uma política de 50K / s por PC, significa que a largura de banda é escassa e / ou houve problemas de ocupação de largura de banda. O que você está fazendo agora irá recriar esses problemas , portanto é melhor esclarecer isso primeiro com os administradores de rede e talvez concordar com algum tempo para realizar o download com o mínimo de interrupção na rede (à noite, durante a pausa para o almoço, nos fins de semana e assim por diante). Isso poderia significar a diferença entre um download rápido e um término rápido da sua posição de trabalho .