mod_qos
Стабильная версия | 11 |
---|---|
Репозиторий | |
Написано в | С |
Операционная система | Кросс-платформенный |
Доступно в | Английский |
Тип | Модуль для HTTP-сервера Apache |
Лицензия | Лицензия Апач |
Веб-сайт | мод-qos |
mod_qos — это модуль качества обслуживания (QoS) для HTTP-сервера Apache, реализующий механизмы управления, которые могут предоставлять разный приоритет различным запросам.
Описание
[ редактировать ]Веб-сервер может обслуживать только ограниченное количество одновременных запросов. QoS используется для обеспечения доступности важных ресурсов при высокой нагрузке на сервер. mod_qos используется для отклонения запросов к неважным ресурсам и предоставления доступа к более важным приложениям. Также есть возможность отключить ограничения доступа, например, для запросов к очень важным ресурсам или для очень важных пользователей.
Механизмы контроля доступны на следующих уровнях:
- Контроль уровня запросов: mod_qos контролирует количество одновременных запросов к пространству имен (URL). Он используется для определения различных приоритетов для разных страниц или приложений на веб-сервере.
- Контроль уровня соединения: mod_qos контролирует количество TCP-соединений к веб-серверу. Это помогает ограничить подключения, исходящие от одного клиента или из неизвестных сетей, чтобы уменьшить максимальное количество одновременных подключений к виртуальному серверу или реализовать динамические настройки поддержки активности HTTP.
- Контроль уровня пропускной способности: регулирует запросы/ответы на определенный URL-адрес на веб-сервере.
- Общая строка запроса и фильтр заголовков, удаляющие подозрительные URL-адреса запросов или заголовки HTTP.
Модуль может быть полезен при использовании в обратном прокси-сервере для разделения ресурсов между разными веб-серверами .
Варианты использования
[ редактировать ]Медленное приложение
[ редактировать ]Первый вариант использования показывает, как mod_qos может избежать сбоев обслуживания веб-сервера из-за медленного ответа одного приложения. Если приложение (здесь /ccc) работает очень медленно, запросы ждут, пока не истечет тайм-аут. Из-за большого количества ожидающих запросов на веб-сервере заканчиваются свободные TCP-соединения, и он не может обрабатывать другие запросы к приложению /aaa или /bbb. mod_qos ограничивает одновременные запросы к приложению, чтобы гарантировать доступность других ресурсов.
HTTP-поддержание активности
[ редактировать ]Расширение поддержки активности HTTP 1.1 обеспечивает постоянные TCP-соединения для нескольких запросов/ответов. Это ускоряет доступ к веб-серверу за счет меньшего и оптимизированного сетевого трафика. Недостаток этих постоянных соединений заключается в том, что ресурсы сервера блокируются, даже если между клиентом и сервером не происходит обмена данными. mod_qos позволяет серверу поддерживать поддержку активности до тех пор, пока свободно достаточно соединений, прекращая поддержку поддержки активности при достижении определенного порога соединения.
Клиент открывает множество одновременных соединений
[ редактировать ]Один клиент может открывать множество одновременных TCP-соединений для загрузки различного контента с веб-сервера. Хотя клиент получает много подключений, другие пользователи могут не иметь доступа к серверу, поскольку для них не остается свободных подключений. mod_qos может ограничить количество одновременных подключений для одного исходного IP-адреса.
Множество запросов к одному URL
[ редактировать ]Если вам необходимо ограничить количество запросов к URL-адресу, mod_qos также может помочь в этом. mod_qos ограничивает максимальное количество запросов в секунду к этому URL. Модуль также может контролировать полосу пропускания. Просто укажите максимально допустимую пропускную способность, и moq_qos начнет регулирование, когда это станет необходимым.
Смягчение атак типа «отказ в обслуживании» с низкой пропускной способностью
[ редактировать ]mod_qos может помочь защитить веб-сервер Apache от DoS-атак с низкой пропускной способностью, обеспечивая минимальную пропускную способность загрузки/выгрузки, которую должен генерировать клиент. [1]
История
[ редактировать ]Первоначальная версия mod_qos была создана в мае 2007 года и опубликована на SourceForge.net. [2] как проект программного обеспечения с открытым исходным кодом. Он смог ограничить количество одновременных HTTP-запросов для определенных ресурсов (часть пути URL-адресов запроса ) на веб-сервере.Было добавлено больше функций, некоторые из них были полезны для защиты серверов Apache от DoS- атак. [3] [4] В 2012 году mod_qos был включен в дистрибутив Ubuntu Linux. [5]
Основные релизы: [6]
- Май 2007 г., версия 1: Ограничивает одновременные запросы для каждого URL-пути.
- Июль 2007 г., версия 2.2: Введение утилит поддержки.
- Август 2007 г., версия 3: представлены элементы управления уровнем подключения, а также средство просмотра состояния.
- Сентябрь 2007 г., версия 4: регулирование запросов/ответов и общая фильтрация запросов.
- Декабрь 2007 г., версия 5: Ограничение по событиям, определяемым пользователем.
- Март 2008 г., версия 6: Механизмы управления по каждому клиенту (IP).
- Май 2008 г., версия 7: Обеспечивает минимальную пропускную способность загрузки/выгрузки, которую должен создать клиент.
- Сентябрь 2009 г., версия 9: Обнаружение аномалий с использованием измерения характеристик клиента.
- Февраль 2012 г., версия 10: добавлены функции геолокации (коды стран ISO 3166).
- Май 2014 г., версия 11. Значительно улучшено регулирование ответа (ограничение в байтах в секунду).
- Июль 2015 г., версия 11.15: Сериализация не только на уровне сервера, но и на уровне клиента (IP).
- Май 2016 г., версия 11.28: поддерживает дифференцированные услуги путем управления полем IP DSCP.
Ссылки
[ редактировать ]- ^ «Руководство по mod_qos» . Архивировано из оригинала 13 марта 2012 г. Проверено 29 ноября 2012 г.
- ^ «mod_qos на SourceForge.net» . 18 мая 2007 г. Проверено 24 ноября 2012 г.
- ^ Маркус Шпигель (15 июля 2009 г.). «Как защититься от DDoS-атак Slowloris с помощью mod_qos» . HowtoForge . Проверено 24 ноября 2012 г.
- ^ Чарли Куэнаст (май 2010 г.). «Из будней сисадмина: Mod_qos против Slowloris» . Журнал Линукс . Проверено 24 ноября 2012 г.
- ^ «Пакет mod_qos для Ubuntu» . Проверено 24 ноября 2012 г.
- ^ «Журнал изменений» . Проверено 27 ноября 2012 г.