MikroTik Log: PCQ rate limit reached on interface — Тюнинг динамического шейпинга
В логе появляется сообщение: queue,warning pcq-download: PCQ rate limit reached on interface ether2, total-limit reached.
- Ограничение скорости для активных пользователей начинает работать нестабильно.
- Новые подключающиеся пользователи получают скорость значительно ниже выделенного лимита.
- Ошибки распределения трафика между десятками активных суб-потоков внутри одной подсети.
- Резкое падение пропускной способности при пиковом числе одновременных загрузок.
1. Архитектура работы PCQ (Per Connection Queue)
PCQ автоматически делит доступную полосу пропускания поровну между всеми активными пользователями сети на основе хэша (Src-Address для исходящего и Dst-Address для входящего трафика). Предупреждение total-limit reached означает, что суммарный буфер всех динамически созданных очередей исчерпал глобальный лимит памяти pcq-total-limit.
2. Анализ настроек текущего типа очереди PCQ
Проверьте текущие параметры PCQ в терминале:
/queue type print detail where kind=pcqПо умолчанию параметры имеют следующие значения: pcq-rate=0, pcq-limit=50KiB, pcq-total-limit=2000KiB.
3. Корректный расчет и увеличение pcq-total-limit
Если в сети одновременно работают более 40 активных клиентов, стандартного pcq-total-limit=2000KiB недостаточно. Формула расчета:
pcq-total-limit = <Количество_активных_клиентов> * <pcq-limit (50KiB)>Для сети на 100 активных пользователей увеличьте общий лимит до 7000–10000 KiB:
/queue type
set pcq-download-default pcq-rate=0 pcq-classifier=dst-address pcq-limit=50KiB pcq-total-limit=10000KiB
set pcq-upload-default pcq-rate=0 pcq-classifier=src-address pcq-limit=50KiB pcq-total-limit=10000KiB4. Настройка гарантированного шейпинга для каждого клиента
Если необходимо выделить фиксированную скорость каждому пользователю (например, не более 20 Мбит/с на человека):
/queue type set pcq-download-default pcq-rate=20M
/queue type set pcq-upload-default pcq-rate=10M5. Применение к Queue Tree или Simple Queue
/queue simple add name="Corporate-PCQ" target=192.168.10.0/24 max-limit=100M/100M queue=pcq-upload-default/pcq-download-default Частые вопросы (FAQ)
Что означает pcq-rate=0?
Значение pcq-rate=0 включает алгоритм динамического деления полосы: вся пропускная способность, указанная в max-limit, делится поровну между всеми пользователями, передающими трафик в данный момент времени.
В чем разница классификаторов src-address и dst-address?
Для входящего трафика (Download) классификатором должен быть dst-address (адрес получателя внутри LAN). Для исходящего трафика (Upload) классификатором должен быть src-address (адрес отправителя из LAN).
Сколько оперативной памяти расходует большой pcq-total-limit?
Лимит 10000 KiB выделяет до 10 МБ оперативной памяти под сетевые буферы пакетов только в моменты пиковой нагрузки. На современных роутерах с 256MB+ RAM это абсолютно безопасно.
Почему PCQ не ограничивает скорость отдельных сайтов?
PCQ работает на L3/L4 уровнях и классифицирует потоки исключительно по IP-адресам и портам источников/назначений. Для шейпинга отдельных доменов используйте сопоставление через Address Lists.