>Удастся ли такое же действие реализовать путем задержки подтверждений (ACK)? Существует несколько стратегий управления TCP-потоком. Одной из самых распостраненных является стратегия "медленного старта - устранения затора".
В фазе медленного старта при получении каждого ACK отправитель увеличивает значение своего окна переполнения, что приводит к росту скорости передачи. Т.е. задерживая отправку ACK Вы замедляете рост скорости(ускорение) передачи данных, но не саму скорость.
Фаза устранения затора наступает по тайм-ауту получения ACK и приводит к сбросу размера окна переполнения(и, соответственно, снижению скорости передачи). После чего снова запускается алгоритм медленного старта.
Т.е в Вашем случае решение(ИМХО) выглядит следующим образом: при достижении отравителем некой пороговой скорости, нужно не посылать ACK в течении тайм-аута, что приведёт к сбросу скорости.И повторять эти действия циклично.
Подробнее об алгоритмах управления TCP-потоком можно почитать тут:
http://www.opennet.me/docs/RUS/inet_book/4/44/tcp_443.html
RFC-793,1323
ОС Unix(А. Робачевский)