Skip to content

Ограничение пропускной способности сетевого трафика (SQM и Nft QoS)

Возможности базовой операционной системы не позволяют ограничивать скорость трафика, однако это можно сделать с помощью специального ПО.

В данной статье мы разберем несколько возможных вариантов регулирования скорости трафика. Например, ограничение по интерфейсам с помощью пакета SQM (Smart Queue Management) и ограничение по IP или MAC адресу с помощью пакета Nft QoS.

SQM позволяет ограничить общую скорость соединения с провайдером (WAN), клиентов, подключенных к физическим портам LAN (LAN1, LAN2 и пр.), клиентов, например, гостевой Wi-Fi-сети, VLAN, туннелей и пр. При этом SQM не позволяет ограничивать скорость клиентов по IP или MAC-адресам, для чего нам понадобится уже пакет Nft QoS.

Подсказка

SQM может не только ограничивать трафик, но и бороться с таким явлением как bufferbloat - нежелательной задержкой, которая возникает, когда маршрутизатор буферизирует слишком много данных.

Устранение излишней буферизации (без прямой необходимости ограничивать трафик) является одной из основных функций SQM и позволяет и позволяет более эффективно использовать пропускную способность канала. Но это тема для отдельной статьи.

Установка

Информация

Обратите внимание что при настройках роутера по умолчанию у вас может быть активен пункт Программный flow offloading. Данный пункт не полностью совместим с используемыми нами пакетам, поэтому перейдите во вкладку "Сеть" → "Межсетевой экран" и уберите галочку с этого пункта, если она есть.
Flow offloading

SQM устанавливается как отдельный пакет (luci_app_sqm), после чего он становится доступен в веб-интерфейсе роутера в виде отдельного меню. Подробности в статье о том, как устанавливать пакеты и на скриншоте ниже.
Установка пакета

После его установки требуется обновить страницу (в некоторых случаях может потребоваться обновить страницу браузера с очисткой кэша (Ctrl+F5) и/или перезагрузить роутер).

В результате вы увидите в разделе "Сеть" вкладку "SQM QoS".

Аналогичным образом необходимо также установить пакет "luci_app_nft_qos", вследствие чего вы также увидите в разделе "Службы" вкладку "QoS over Nftables".

Пример работы с SQM

Пункт "Enable this SQM instanse" включает функцию ограничения скорости, и в полях Download speed и Upload speed вы можете задать скорость в кбит/с для интерфейса, выбранного в поле Имя интерфейса.

Информация

Обратите внимание, для регулировки скорости соединения на своём ПК, например для теста, вам необходимо выбрать в селекторе интерфейса wan, после установки пакета там может быть указан любой другой.
SQM QoS

Почти все остальные опции и вкладки, предназначаются для настроек параметров в контексте борьбы с излишней буферизацией. Для ограничения скорости достаточно минимальных, вышеописанных настроек.

Попробуем ограничить общую скорость оператора до 1 Мбит/с.

Для этого сперва проверим максимальную скорость соединения. В нашем случае она доходит до 632 Мбит/с.
Проверка скорости соединения

Теперь попробуем ограничить скорость 1000 кбит/с и повторно запустим тест скорости. Как видим, ограничение работает.
Ограничение скорости соедининия

Теперь попробуем выставить ограничение в 2500 кбит/с и повторить тест.
Ограничение скорости соедининия
Ограничение скорости соедининия

Как видим, всё работает.

Пример работы с Nft QoS

Для регулировки скорости соединения пользователей с помощью данного пакета, необходимо получить их IP или MAC-адрес.

Для этого мы открываем вкладку "Сеть" → "Беспроводная сеть". Здесь мы видим пункт Подключенные клиенты, в котором указаны необходимые нам данные.
Беспроводная сеть

Теперь мы можем перейти во вкладку "Службы" → "QoS через Nftables".

В открывшемся окне по умолчанию активирована возможность ограничения скорости по IP-адресу устройства.
Ограничение по умолчанию

Но также данный пакет позволяет вам реализовать ограничение пропускной способности сети и ограничение скорости по MAC-адресу устройства. Также присутствует возможность регулировки приоритета трафика для разных потребителей, но это тема для отдельной статьи.

Ограничение по IP-адресу устройства

Ограничение по IP-адресу

Информация

Данное меню позволяет указать вам:

  • Тип лимита - в данном селекторе вы можете выбрать один из двух пунктов:
    • Static - вариант, при котором происходит ограничение скорости соединения конкретных клиентов;
    • Dynamic - вариант, при котором происходит ограничение пропускной способности сразу для целой сети из нескольких клиентов.
  • Скорость загрузки по умолчанию и Скорость отправки по умолчанию - установленные в этих строках значения, будут автоматически присваиваться для устройств, которым вы хотите ограничить скорость соединения;
  • Единица загрузки по умолчанию и Единица отправки по умолчанию - эти пункты служат для удобства регулировки и не являются обязательными. Например вы можете изменить значение с KByts/s (килобайт в секунду) на MByts/s (мегабайт в секунду), в таком случае значения в строках можно указывать уже не 15 000, а просто 15;
  • Белый список для ограничения скорости - здесь вы можете указать список IP-адресов устройств для которых хотели бы снять ограничения.

Ниже находятся ещё две вкладки в которых вам и нужно будет добавлять новые устройства.

Статический QoS - скорость загрузки и Статический QoS - скорость отправки, то есть при желании вы можете ограничить только один из этих параметров.

В необходимой вкладке нажмите кнопку "ДОБАВИТЬ" и введите IP-адрес нужного устройства, а также желаемую скорость, если она будет отличаться от выставленной по умолчанию.

После чего не забудьте нажать на кнопку "СОХРАНИТЬ И ПРИМЕНИТЬ".

В нашем примере мы ограничили скорость загрузки и скорость отправки устройства, но сделали их выше чем значения по умолчанию.
Ограничение скорости

Информация

Обратите внимание, что регулировка скорости происходит в Мегабайтах, а тест в Мегабитах, поэтому указанные нами 1 000 Килобайт превратились в 8 Мегабит.

Рекомендуем при регулировке скорости отталкиваться от пропорции 1 Мбит/с = 125 KBytes/s.
Перевод величин

Ограничение пропускной способности сети

Если изменить Тип лимита на Dynamic, то в открывшемся окне вы можете ограничить пропускную способность для сети, то есть суммарно для всех клиентов находящихся в ней.

Вам требуется только указать желаемые ограничения и целевую сеть, например по умолчанию сеть вашего роутера будет обозначаться 192.168.1.0/24.

Также при необходимости вы можете указать устройства на которые не будет распространяться ограничение, для этого нужно ввести в строку Белый список для ограничения скорости IP-адрес устройства и нажать кнопку +.
Белый список

Ограничение по MAC-адресу устройства

Для того чтобы настроить ограничение скорости по MAC-адресу устройства, необходимо поставить галочку напротив пункта Включить ограничение и нажать на кнопку "СОХРАНИТЬ И ПРИМЕНИТЬ". После чего у вас появится новая вкладка "Ограничение скорости трафика по MAC-адресу".

Нажимаем кнопку "ДОБАВИТЬ" и указываем необходимые ограничения в поле. После настройки не забудьте нажать кнопку "СОХРАНИТЬ И ПРИМЕНИТЬ".
Ограничение по MAC

Все права защищены