Можно ли зарезервировать / ограничить использование сети для определенных процессов (приложений)?

Можно ли зарезервировать (по крайней мере, такую ​​большую пропускную способность) или ограничить (не более, чем такую ​​большую пропускную способность) сетевое использование определенных процессов или приложений. В качестве альтернативы, зарезервировать / ограничить использование в сети / некоторых пользователей и / или групп?

Я заинтересован в ...: Ограничение пропускной способности определенного процесса (PID). Ограничение пропускной способности каждого процесса определенным именем (например, каждый экземпляр rtorrent не может использовать более 20 Кбит / с, но, таким образом, пять экземпляров могут использовать 100 Кбит / с). Ограничение использования всех экземпляров программы (например, все экземпляры rtrorrent могут использовать не более 50 Кбит / с). Ограничение использования групп программ - либо для каждого и / или коллективно (например, любого - или всех - веб-браузеров (очевидно, они будут где-то перечислены) может использовать не более 100 Кбит / с).

Бонус: возможно ли установить лимит для каждого компьютера? У меня есть два компьютера с общим доступом к интернет-соединению, и иногда один занимает всю полосу пропускания. С другой стороны, иногда один компьютер использует не очень или очень небольшую полосу пропускания, поэтому другой, очевидно, должен иметь возможность использовать все, что есть. Я был бы удовлетворен, установив жесткий предел около половины для каждого; но более динамичный подход, который позволяет одному брать все, когда другой не используется, был бы желателен.

Я понятия не имею, что возможно или как это можно сделать, вот почему я спрашиваю.

Я страдаю из-за тайм-аута веб-браузера, в то время как я использую wget или bittorrent-клиенты для загрузки файлов, поэтому я хотел бы наложить некоторые ограничения для обеспечения возможности просмотра.

3
задан 7 February 2017 в 15:34

2 ответа

Это возможно, но это очень сложно. Для полного контроля вам нужно использовать qdisc и iptables для «формирования» сетевого трафика. Это «формирование сети» является одним из самых передовых, что можно научиться делать. Этот сайт объясняет довольно мало процесса: http://laddumishra.wordpress.com/2011/12/27/traffic-control-using-tc-in-linuxubuntu/

Для более легкого времени вы можете использовать Wondershaper, но он не предлагает опций, для которых процессы имеют приоритет, и имеет проблемы с запуском в некоторых версиях Ubuntu. http://lartc.org/

В заключение, похоже, что эта конкретная функциональность требует серьезных инвестиций, если пользователям когда-нибудь станет проще контролировать свой сетевой трафик простым способ.

0
ответ дан 7 February 2017 в 15:34

Существует программное обеспечение под названием Trickle , которое делает именно это; это менеджер / формирователь полосы пропускания в пользовательском пространстве.

Попробуйте

trickle -d 20 rtorrent
0
ответ дан 7 February 2017 в 15:34

Другие вопросы по тегам:

Похожие вопросы: