Лучше объяснить на примере. Допустим у вас есть файл в 20 мб. 
Http/s 
Get /files/file.mp3
и  сервер отдает 20 мегабайт. Если произошел обрыв то клиент может послать запрос отдайка мне файл с 10 мегабайта. Проблема в том что не все сервера это поддерживают. 
В итоге нагрузка на сервер FileSize * N * 1.5
В  случае торрента. Файл бьется на чанки (части), там считается как весь хэш файла, так и хэши частей. 
Дальше что происходит. 
Seeder разбивает  файл на чанки пусть будет по 2 мб.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Lecher 1
  скачивает  0 и ставит на загрузку 1
Lecher 2
  Опрашивает всех вокруг, мол у кого есть? начинает качать с Lecher 1 чанк 0
Lecher 3
  Опрашивает всех вокруг, мол у кого есть? начинает качать с Lecher 2 чанк 1
Так в идеале нагрузка на Seeder  будет FileSize. 
Все  остальное передадут друг другу личи.  Поэтому часто можно видеть сообщение не уходите с раздачи. То есть вы скачали файл и если нет сидера, то скачивать будут через вас. 
В общем это если упрощенно.