Решение по мониторингу пропускной способности для IP-трафика и формированию трафика для сети 100 МБ
У меня около 30 серверов, подключенных к коммутатору Cisco серии 3500, с пропускной способностью 100M в восходящем направлении. Периодически один или несколько моих серверов выполняют передачу больших файлов, что полностью насыщает сеть и приводит к потере пакетов на 10-15% другими устройствами. Мне нужно хорошее решение: 1) контролировать пропускную способность для каждого IP-адреса на всех серверах; 2) предотвращать использование любого IP-адреса более чем на 50% доступной пропускной способности; 3) отдавать приоритет определенным протоколам (потоковый трафик, SSH).) и более низкий приоритет для другого трафика (BitTorrent, SMTP, FTP). С помощью этого коммутатора я могу отслеживать трафик для каждого порта, но это не дает мне никакой видимости уровня IP и контроля полосы пропускания, кроме настройки скорости порта.
У меня есть запасной Dell R200 с двумя сетевыми картами 1G, который я могу посвятить делу, и я довольно комфортно отношусь к Linux. Я знаю, что это можно сделать с помощью IPTABLES, TC и HTB, но я бы предпочел более комплексное решение с достойной документацией и интерфейсом управления. Если ответ - купить Cisco XXX, я тоже открыт для этого, но, поскольку у меня сидит сервер, я решил попробовать это в первую очередь.
Таким образом, вопрос заключается в следующем: какое решение Linux/BSD Firewall/Router/QOS будет отвечать этим требованиям? Я видел список на http://en.wikipedia.org/wiki/List_of_router_or_firewall_distributions, но я ищу реальный опыт работы с любым из них.
3 ответа
Готовое решение для этого типа сценария было бы замечательно, но я пока не нашел идеального. Моим конкретным параметром является меньший беспроводной Интернет-провайдер, но это аналогичная проблема, связанная с представлением конкретных клиентов от затопления сети. Два решения, которые я использовал:
- cbq.init или htb.init. Обе эти функции упрощают администрирование управления различными очередями и фильтрацией. Если вы уже понимаете tc и формирование, это может быть хорошим способом управления различными очередями. Это решение, которое я использую для большинства наших серверов управления пропускной способностью. Работает хорошо, но нет интеграции в iptables для маркировки трафика. Мы используем фильтры tc, но они не идеальны.
- Проект брандмауэра shorewall - это пакет Linux для общего управления брандмауэром. Он включает поддержку управления пропускной способностью и позволяет помечать пакеты с помощью правил iptables, с которыми мне легче работать. Большая кривая обучения, но, возможно, она того стоит.
Вы можете использовать Mikrotik RouterOS для организации трафика. Вы можете ознакомиться с функциями Traffic Engineering в http://wiki.mikrotik.com/wiki/Category:Manual которые могут удовлетворить ваши потребности.
Почему бы не использовать некоторые функции ограничения скорости и QoS в IOS на коммутаторе?