Как работает ограничение на скачивание в торрент клиентах?
Подскажите, каким образом работает механиз ограничения скорости скачивания в торрент клиентах? Т. е. установил я ограничение 1 Мбит/с и что далее происходит?
Как это работает в самом простом случае, когда 1 сид и 1 лич. Сид может отдавать 10 Мбит/с, лич хочет забирать только на 5 Мбит/с.
Передача идёт блоками, длина которых подсчитывается… Эти ограничения справедливы после усреднения на существенный промежуток времени (точные характеристики зависят от реализации протокола — клиента), а пиковая скорость (при передачи каждого блока) максимально возможная. Никакой магии.
Ну например снижать размер окна в процессе передачи. Штатные механизмы TCP. У какого-нибудь uTP, который вроде на UDP работает, найдутся свои механизмы.