Назад | Перейти на главную страницу

QoS - разделение полосы пропускания по всем IP-адресам при высокой нагрузке

У нас есть маршрутизатор на базе Linux, который в настоящее время работает достаточно хорошо, но наша сеть имеет только входящее соединение 1,5 Мбит / с. Сеть небольшая, но в периоды высокой нагрузки некоторые системы могут доминировать в полосе пропускания. Например, клиент, загружающий файл, может легко перегрузить соединение, оставив всем остальным практически любой доступ к внешнему миру.

Естественно, хотелось бы это исправить. Я считаю, что комбинация правил iptables и tc подходит, но я не знаю, как равномерно распределить полосу пропускания между клиентами.

Было бы неплохо, если бы был способ разделить полосу пропускания только между клиентами, которые фактически также используют соединение, а не жестко ограничивать каждое соединение (пропускная способность / количество клиентов).

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

Я применил это решение, чтобы исправить именно эту проблему.

Если вы когда-нибудь захотите использовать что-то еще, не используйте tc. Это беспорядок. Используйте OpenSolaris и flowadm, что намного проще.

Вот что-то похожее на скрипты, которые я когда-то использовал:
http://www.amiryan.org/2009/02/16/traffic-shaping-under-linux-with-tc-and-iptables/

HTH