De uma perspectiva de codificação, um download é apenas uma matriz de bytes incluída no fluxo de resposta HTTP.
O protocolo HTTP 1.1 (ver página 30) inclui um campo no cabeçalho chamado 'Intervalo', que permite que o pedido especifique o byte offset e o comprimento da resposta solicitada.
Então, em essência, você pode dizer: "me dê o objeto HTTP neste URL, mas eu quero apenas os 1024º - 4096º bytes". O navegador do cliente, em seguida, acrescenta o fluxo de bytes à parte do arquivo já baixado. O cliente pode dizer onde é necessário retomar simplesmente verificando o tamanho do arquivo já baixado e incrementando-o para determinar o deslocamento necessário.
Quanto ao modo como seu gerenciador de downloads pode dizer, ele envia uma solicitação HTTP "HEAD". Se o código de resposta for 206 (conteúdo parcial), o fluxo HTTP suportará a retomada.