QoS - разделение полосы пропускания по всем IP при высокой нагрузке
У нас есть маршрутизатор на базе Linux, который в настоящее время работает довольно хорошо, но наша сеть имеет только входящее соединение со скоростью 1,5 Мбит / с. Сеть небольшая, но в периоды высокой нагрузки некоторые системы могут в конечном итоге доминировать в полосе пропускания. Например, клиент, загружающий файл, может легко насытить соединение, оставляя всем остальным практически без доступа к внешнему миру.
Естественно, я бы хотел это исправить. Я считаю, что комбинация правил iptables и tc в порядке, но я понятия не имею, как добиться равномерного распределения пропускной способности между клиентами.
Было бы неплохо, если бы был способ разделить пропускную способность только между клиентами, которые фактически используют соединение, а не жестко ограничивать каждое соединение (пропускная способность / количество клиентов).
2 ответа
Если вы говорите о веб-трафике, то Squid может это сделать. Это может ограничить максимальную пропускную способность для всех пользователей и максимальную пропускную способность для каждого пользователя.
Я реализовал это решение, чтобы исправить эту проблему.
Если вы когда-нибудь захотите использовать что-то другое, не используйте tc. Это беспорядок. Используйте OpenSolaris и flowadm, что намного проще.
Вот что-то похожее на сценарии, которые я использовал однажды:
http://www.amiryan.org/2009/02/16/traffic-shaping-under-linux-with-tc-and-iptables/
НТН