Я использую Микртотик RB201UiAS для управления моей сетью. Чтобы избежать создания простых очередей для каждого IP-адреса, я создал очереди для диапазонов IP-адресов.
Вопрос: используя эту конфигурацию
или
Текущая конфигурация:
# oct/21/2015 15:25:55 by RouterOS 6.23
# software id = U3SW-9LU3
#
/queue simple
add dst=ether1 max-limit=5M/10M name=Klasat target=172.16.2.0/25
add dst=ether1 max-limit=5M/10M name=Administrata target=172.16.2.128/26
add dst=ether1 max-limit=1M/1M name=DVR target=172.16.2.192/27
add dst=ether1 name=Sallat target=172.16.2.224/28 add dst=ether1 name=Unlimited target=172.16.2.240/28
Если вы не используете Тип очереди PCQ, то ограничения применяются ко всем IP-адресам в заданном диапазоне.
С участием PCQ (на очередь подключения) вы можете применить желаемые ограничения для каждого IP-адреса на основе критериев, определенных вами в PCQ (адрес dst / src, порт dst / src или любое их сочетание).
От официального MikroTik документация:
PCQ был введен для оптимизации массовых систем QoS, в которых большинство очередей абсолютно одинаковы для разных подпотоков. Например, подпоток может быть загружен или выгружен для одного конкретного клиента (IP) или подключения к серверу.
Алгоритм PCQ очень прост - сначала он использует выбранные классификаторы, чтобы отличить один подпоток от другого, затем применяет индивидуальный размер очереди FIFO и ограничение для каждого подпотока, затем группирует все подпотоки вместе и применяет глобальный размер очереди и ограничение.
Параметры PCQ:
pcq-classifier (dst-address | dst-port | src-address | src-port; default: "") : selection of sub-stream identifiers pcq-rate (number) : maximal available data rate of each sub-steam pcq-limit (number) : queue size of single sub-stream (in KB) pcq-total-limit (number) : maximum amount of queued data in all sub-streams (in KB)
Таким образом, вместо 100 очередей с ограничением для загрузки 1000 кбит / с мы можем иметь одну очередь PCQ со 100 подпотоками.
Также есть пример, доступный на сайте MikroTik Вики
Выдержка из вики:
Это можно сделать двумя способами: с помощью дерева очередей и mangle или с помощью простых очередей.
Пометьте все пакеты метками загрузки / загрузки: (позволяет понять, что ether1-LAN является общедоступным интерфейсом к Интернету, а ether2-LAN - локальным интерфейсом, к которому подключены клиенты
/ip firewall mangle add chain=prerouting action=mark-packet in-interface=ether1-LAN new-packet-mark=client_upload /ip firewall mangle add chain=prerouting action=mark-packet in-interface=ether2-WAN new-packet-mark=client_download
Установите два типа очереди PCQ - одну для загрузки и одну для загрузки. dst-address - это классификатор трафика загрузки пользователя, src-адрес - трафика загрузки:
/queue type add name="PCQ_download" kind=pcq pcq-rate=64000 pcq-classifier=dst-address /queue type add name="PCQ_upload" kind=pcq pcq-rate=32000 pcq-classifier=src-address
Наконец, требуются два правила очереди, одно для загрузки и одно для загрузки:
/queue tree add parent=global-in queue=PCQ_download packet-mark=client_download /queue tree add parent=global-out queue=PCQ_upload packet-mark=client_upload
Если вам не нравится использовать дерево очереди и mangle, вы можете пропустить шаг 1, выполнить шаг 2, а шаг 3 будет заключаться в создании одной простой очереди, как показано здесь:
/queue simple add target-addresses=192.168.0.0/24 queue=PCQ_upload/PCQ_download
Благодаря Cha0sОтвет. Мне удалось создать ограничение ярмарки, не создавая сотен простых очередей.
Примечание для других зрителей, пытающихся сделать то же самое.
Будьте осторожны после добавления типов очередей в настроить предел загрузки / выгрузки на Скорость типа очереди и удалять (сделать неограниченным) Целевая загрузка и Целевая загрузка с Простая очередь
Мой пример:
/queue type
add kind=pcq name=pcq-download-Klasat pcq-classifier=dst-address pcq-rate=2M
add kind=pcq name=pcq-upload-Klasat pcq-classifier=src-address pcq-rate=2M
/queue simple
add dst=ether1 name=Klasat queue=pcq-upload-Klasat/pcq-download-Klasat
target=172.16.2.0/25 total-queue=pcq-download-Klasa