Я ищу способ установить предел для уровня загрузки для приложения, не ограничивая всю машину.
Вариант использования следующий:
Пользователь (самостоятельно) создает большой файл с намерением загрузить его на сайт хостинга видео. Однако файлы являются большими, и интернет-соединение является медленным. Таким образом, могут потребоваться часы (часто десятки часов) для загрузки этих файлов.
В то время как загрузки файла очень трудно использовать Интернет. Из-за полного взятия ofver восходящий поток загрузкой файла.
Цель состоит в том, чтобы смочь ограничить браузер 80% скорости интернет-соединения.
Идеальное решение состояло бы в том, чтобы смочь изменить предел во время процесса загрузки, не имея необходимость перезапускать что-либо или прерывать саму загрузку. (Скажите, что пользователь хочет взять дремоту, ванну, что-то для еды, и т.д., и может временно позволить загрузке брать целые 100% предела ISP).
Попытайтесь установить струйка
sudo apt-get install trickle
, Струйка является добровольным, совместным формирователем пропускной способности. это работает полностью в пространстве пользователя и очень просто в использовании.
большая часть простого приложения должна ограничить использование пропускной способности программ.
вот ссылка: http://www.tuxradar.com/content/control-your-bandwidth-trickle
Да так может использовать iptables, чтобы отметить упакованный на основе процесса (-изодромный с предварением владелец) и затем использовать tc для ограничения пропускной способности.
Попытка, читая эта ссылка , например, и посмотрите, что исходящий трафик HTTP формирует: просто предположите делать то же, но заставьте правило метки iptables относиться к PID вместо порта 80!