Простейшая приоритизация трафика (QoS) на MikroTik
Как правило, интернет-канал меньше по скорости, чем локальная сеть. Сейчас гигабитные локальные сети не редкость, однако интернет-канал, как правило, не превышает 100 Мбит/с. Таким образом, одно устройство может занять всю полосу пропускания, из-за чего на других будут возникать проблемы доступа в интернет. Но есть решение.
При использовании оборудования MikroTik можно настроить приоритизацию трафика (QoS) в локальной сети, чтобы делить скорость интернет-канала поровну.
В операционной системе RouterOS, предустановленной на маршрутизаторы MikroTik, из коробки есть поддержка очередей. Самая подходящая для данного сценария это очередь PCQ. С подробной реализацией алгоритма можно ознакомиться в официальном Wiki.
Итак, предположим у нас стандартная сеть 192.168.88.0/24 и к порту ether1 подключен интернет-канал. Для настройки очереди нужно зайти в раздел Queues и создать новую Simple Queues. Я использую утилиту WinBox для доступа к устройству.
![](https://blog.mark99.ru/wp-content/uploads/2020/11/que.png)
Описание некоторых пунктов:
- Name – любое имя, по которому идентифицируется данная очередь
- Target – сеть, к которой применяется данное правило, можно указать несколько, если их несколько
- Dst. – интерфейс, к которому применяется данное правило, в данном случае ether1 – интернет-канал.
- Max Limit – скорость, которая предоставляется вам интернет-провайдером, ее имеет смысл указать немного меньше, чем в реальности.
Далее на вкладке Advanced нужно указать тип очереди:
- Target Upload -> Queue Type -> pcq-upload-default
- Target Download -> Queue Type -> pcq-download-default
Остальные пункты оставить по умолчанию и сохранить изменения. Готово.
При использовании скриптов и командной строки (терминала) создание Simple Queue будет выглядеть таким образом:
/queue simple
add dst=ether1 max-limit=96M/96M name=my_queue queue=\
pcq-upload-default/pcq-download-default target=192.168.88.0/24
Теперь при попытке одним клиентов занять весь интернет-канал очередь будет ограничивать максимальную скорость и делить канал между всеми устройствами в сети. Когда в очереди есть отложенные пакеты иконка становится желтой, а когда очередь переполнена и отбрасывает пакеты иконка становится красной.
![](https://blog.mark99.ru/wp-content/uploads/2020/11/que1.png)
Имейте в виду, что полноценно контролировать можно только исходящий с интерфейса трафик. Входящий трафик можно контролировать только косвенно, отбрасывая некоторые пакеты. Протокол TCP на клиентах будет автоматически изменять параметры соединения таким образом, чтобы потерь было меньше, то есть снижая общую скорость потока.
Если очередь не работает, убедитесь что в IP -> Firewall отключено правило fasttrack connection. Данная технология несовместима с очередями.