Этот вопрос похож на этот: Как я могу ограничить пропускную способность интернета? , Но wondershaper
и trickle
не может ограничивать пропускную способность интернета для уже запущенных приложений. Итак, как я могу ограничить пропускную способность интернета для уже запущенных приложений (но только для одного приложения, а не для всей системы)? :)
11
Ответы:
Для общего случая это теоретически возможно в ядре, используя расширение владельца для netfilter. Я вижу эту опцию
--pid-owner
на странице руководстваiptables
на die.net , но там написано, что она не работает с SMP :(В моей собственной системе, 10.04, такой опции нет в руководстве :(. Поэтому я считаю, что в этот раз нам не повезло; (. Может быть, в будущем произойдет еще одно воплощение этой
--pid-owner
опции. Вершина этого не была бы ракетостроением.Первый шаг должен быть сделан на самом Linux и iptables.
Что касается более конкретных типов трафика, таких как HTTP. Должны быть способы создания приспособлений с использованием прокси, но, вероятно, потребуется некоторый взлом, потому что этот вариант использования возникает не часто.
источник
Это не особенно полезно, но единственный способ (насколько я знаю) действительно эффективно ограничить полосу пропускания - это использовать технологию формирования пакетов или организации очередей. Единственный действительно продуманный метод, о котором я знаю, - это линейка приборов PacketShaper, которые теперь принадлежат Bluecoat .
Я не использовал их сам в течение нескольких лет, но я использую прокси Bluecoat ежедневно, поэтому я не отставал от развития диапазона PacketShaper.
Они дорогие, но действительно превосходные в том, что они делают. Они вообще не используют очереди - они динамически манипулируют размером окон TCP, чтобы ограничить пропускную способность в диалоге tcp-pair. В последних выпусках они также поддерживают приложения, так что вы можете сказать «дросселируйте iPlayer и Youtube, но пропустите все остальное».
Я действительно выхожу из-под контроля возможностей этих устройств, но я остановлюсь, поскольку они не имеют отношения к Ubuntu, поэтому я боюсь, что этот ответ не совсем уместен.
источник
Я не пробовал это, но это должно работать ...
Bandwidth-Предельное-HOWTO
источник