Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

MikroTik Log: PCQ rate limit reached on interface — Тюнинг динамического шейпинга

Обновлено: 24.08.2026  ·  Официальная база знаний

В логе появляется сообщение: 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=10000KiB

4. Настройка гарантированного шейпинга для каждого клиента

Если необходимо выделить фиксированную скорость каждому пользователю (например, не более 20 Мбит/с на человека):

/queue type set pcq-download-default pcq-rate=20M
/queue type set pcq-upload-default pcq-rate=10M

5. Применение к 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
Практический опыт инженера: При использовании PCQ для сотен хостов не уменьшайте pcq-limit ниже 30KiB. Слишком маленький индивидуальный буфер вызовет деградацию TCP throughput при пингах выше 40-50 мс из-за ограничения TCP BDP (Bandwidth-Delay Product).

Частые вопросы (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.