Меню

Микротик настройка квоты скорости для пользователей

Инструкции по настройке MikroTik

Настройка MikroTik Simple Queues, равномерное ограничение скорости

Краткое описание: Руководство по настройке MikroTik Simple Queues на маршрутизаторе MikroTik. Быстрый шейпинг от MikroTik, равномерное распределение скорости

Нужна настройка ограничение скорости в MikroTik?

Настройка сервисов на маршрутизаторах MikroTik: подключение интернета, DHCP, brige, VLAN, WiFi, Capsman, VPN, IpSec, PPTP, L2TP, Mangle, NAT, проброс портов, маршрутизация(routing), удаленное подключение и объединение офисов.

Немного про ограничитель скорости(bandwidth control) Queues в MikroTik

В маршрутизаторах(роутерах) MikroTik чаще всего используют два самых распространённых метода по ограничиванию скорости для локальных подключений:

И масса других вариантов, когда можно комбинировать оба способа в разной последовательности. В рамках данной статьи рассмотрим п.2, как более часто встречаемое в частном и корпоративном сегменте.

Как настроить MikroTik Simple Queues

Настройка находится в Queues->Simple Queues

Как будет распределяться трафик?

Общий исходящий канал 100Мб будет делиться между всеми клиентами равномерно. Когда подключается первый клиент, ему отдается вся ширина канала, а при подключении второго – ширина канала делится между двумя клиентами. Но это правило уходит ещё глубже: если первый клиент потребляет 5% трафика, а второму нужно 80% – оба запроса будут удовлетворены. Но как только запросы обоих клиентов превышают 50% пропускной способности канала, срабатывает ограничитель равномерного распределения.

Поддержи автора статьи, сделай клик по рекламе ↓↓↓

Max Limit – максимальная ширина канала. Значение должно быть меньше скорости, предоставляемой провайдером, иначе шейпер не сработает и возложиться на провайдера.

В данном примере значение 85Мб было подобрано опытным путём из-за большого количества клиентов и потребляемого трафика.

Как ограничить скорость для двух провайдеров используя Mangle и Simple Queues в новой статье « Настройка ограничение скорости в MikroTik, Simple Queues для двух провайдеров → »

Если MikroTik Simple Queues не считает трафик

В статье Настройка MikroTik FastTrack Connection, быстрый FireWall есть упоминание о том, что при трафик FastTrack Connection минует шейпер Simple Queues. Это практическая особенность позволяет делать выбор между FastTrack Connection и Simple Queues.

Есть вопросы или предложения по настройке ограничений скорости в MikroTik? Активно предлагай свой вариант настройки! Оставить комментарий

Источник

Использование Simple Queue для ограничения скорости в Mikrotik.

В этой статье я опишу как можно настроить QoS на Mikrotik для работы, скажем в небольшой корпоративной сети до 42 компьютеров. Предлагаемая ниже схема маркировки пакетов и шейпинга трафика позволяет получать хорошие задержки при практически полной загрузке канала интернета. Так же можно добиться довольно быстрого открытия страниц при скачке торрентов другими пользователями. Канал делится поровну между качающими в любой конкретный момент пользователями. В общем, это хорошо реализованая идея динамического шейпинга на микротик. Кроме того предлагается пиринговый трафик отделить от основного и шейпить по другому.

Отмаркируем пакеты пиринговых (гостевых) ресурсов byfly. Дабы упростить задачу воспользуемся терминалом, чтобы указать те адреса, которые мы будем считать пиринговыми:

Откроем терминал и вставим туда команду:

ip firewall address-list

В результате выполнения должно получится что-то подобное:

Отмаркируем соединения пользователей на пиринговые (гостевые) ресурсы. Для этого переходим на вкладку IP-Firewall-Mangle и нажимаем плюсик +:

На вкладке Advanced выберем список адресов Guest:

Выберем маркировку соединенений меткой guest-connection:

Создадим правило маркировки гостевых пакетов:

Чтобы исключить дальнейшую перемаркировку пакетов последующими правилами снимаем галочку с passthrough:

В результате получаем 2 правила маркировки гостевых соединений и пакетов:

Нажмём ещё раз плюсик, чтобы создать правило маркировки оставшихся пакетов, как идущих из интернета. Сначала маркируем все соединения:

Маркируем пакеты идущие через соединения internet-connection:

Получится четыре правила в Mangle:

Настроим Simple Queues для канала интернета в 6M/0.5M и скорость на ADSL порту 12M/0.8M. Настроим шедуллер для исходящего трафика. Будем его делить между пользователями поровну классифицируя согласно IP копьютеров в сети.

Так же настроим шедуллер для входящего трафика. Трафик классифицируем:

Создадим родительскую очередь All, через которую будет проходить весь трафик. Укажем сети, в которых находятся наши клиенты и ограничения скорости для них 10M/0.5M. Нужно указывать скорости, которые ниже на 15-25% чем скорости на ADSL порту, иначе возможно увеличение задержек и неправильная работа шейпера, при использовании канала на полную. Очередь All всегда должна быть под номером в таблице.

Перейдём на вкладку Advanced и выберем пакеты, которые мы от маркировали в мангле метками «internet-packet«, «guest-packet«. Установим гарантированные скорости равными максимальным и включим для них ранее созданные шедуллеры «up-pcq» и «down-pcq»:

Создадим дочернюю очередь, к которой будет относится пиринговый «гостевой» трафик. Target Address – пишем сеть, в которой находятся клиенты, в нашем случае — 192.168.88.0/24. Чтобы всё хорошо работало, Max limit в квоте Guest должен быть немного меньше чем в квоте All. Очередь Guest должна быть под номером 1 в таблице.

Читайте также:  Мтс модем 4g wifi как зайти в настройки

Одно из условий правильной работы HTB шейпера: cумма гарантированных скоростей «limit-at» дочерних очередей должна быть меньше максимальной скорости «max-limit» родительской очереди. Установим 2m/64k гарантированной полосы на пиринговые ресурсы. Увеличим приоритет квоты Guest до 7, и выберем правильный шедуллер (Queue Type):

Создадим дочернюю по отношению к All очередь ByFly, по которой пойдёт интернет трафик. Из опыта скажу, что 10% канала 6m/512k придётся зарезервировать для нормальной работы шейпера. Это связано с особенностями устройства HTB деревьев и тем, что провайдер иногда может немного недодавать вам полосу. Кроме того, возможно дрожание в канале, если резервировать меньше. Итак, Max-limit устанавливаем 5400k/430k для нашего канала.

Укажите для очереди ByFly гарантированные скорости, тип шедуллера, родительскую очередь, приоритет и маркированные пакеты согласно скрину:

Создадим в очереди ByFly очередь для пользователя user1 c такими настройками:

Пакеты становящиеся в очередь: internet-packet.

Шедуллеры: up-pcq down-pcq.

Родительская очередь: ByFly.

Гарантированая полоса 128k/10k, выделяемая пользователю, позволит создать до 42 очередей в родителе ByFly для клиентских компьютеров (5400k/128k=42 очереди, 430k/10k=43 очереди).

После добавления пользователей дерево выглядеть будет так в порядке обработки очередей:

Источник

Queues в RouterOS: Simple Queues MikroTik (часть 1)

Ближайшие
тренинги Mikrotik

Места
проведения

г. Санкт-Петербург, Крестовский остров, Северная дорога, дом 12.

г. Санкт-Петербург, ст. м. «Приморская»,
ул. Одоевского, д. 24 к. 1, 2 этаж

В первой части статьи будет рассмотрен один из механизмов QoS, реализованный в RouterOS, по управлению очередями и пропускной способностью, а именно Simple Queues.

Введение

Одним из способов управления качеством обслуживания в сети является внедрение механизмов QoS (quality of service — качество обслуживания). Использование MikroTik QoS позволяет повысить приоритет трафика одного типа над другим, ограничить полосу пропускания для разных типов трафика. Распространённым сценарием является использование комбинированных методик. В этом случае из общего трафика выделяются потоки в соответствии с заданными критериями и между ними распределяются ресурсы: потокам, для которых важно время обработки, выделяется приоритет в обслуживании, а потокам, для которых важна пропускная способность, выделяется большая гарантированная полоса. Штатные средства RouterOS позволяют выполнить распределение ресурсов между потоками трафика с помощью инструментов Simple Queues (простые очереди) и Queue Tree (дерево очередей).

Следует упомянуть, что конфигурация QoS выполняется на каждом устройстве, поэтому, должна быть распространена на все устройства локальной сети. Эффект от внедрения QoS будет ограничен локальной сетью, поскольку смежные сети, находящиеся под управлением других лиц, работают в соответствии со своими политиками, которые могут не совпадать с вашей.

К важным методам обеспечения качества обслуживания также следует отнести архитектуру построения сети и административные меры. В блок административных мер входит контроль за пользовательским трафиком, в допустимых рамках, и контроль за утилизацией каналов связи и аплинков.

1. Типы очередей

В RouterOS существует несколько типов очередей, управление которыми выполняется в разделе /queue type. Пользователь может создавать свои типы очередей, однако за основу будет браться одна из существующих.

RouterOS поддерживает следующие типы очередей:

1.1 Очередь типа none

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

1.2 Очереди типа pfifo, bfifo, mq-pfifo

Алгоритм FIFO (first in — first out, первый пришёл — первый ушёл) заключается в том, что данные, попадающие в очередь первыми, будут первыми переданы на дальнейшую обработку. Такой подход не позволяет распределять между потоками данных временные ресурсы в соответствии с их приоритетом и применим, в первую очередь, в системах с невысокой утилизацией каналов передачи данных.

На рисунке 1.1 представлен механизм работы очереди типа FIFO: в очередь поступают пакеты трёх потоков данных. Пакет первого потока поступает в очередь первым и первым из неё выходит, первый пакет второго потока выходит вторым, пакет третьего потока — третьим и второй пакет второго потока — четвёртым.


Рисунок 1.1 — Принцип организации очередей FIFO

Разница между pfifo и bfifo заключается в том, что первый метод применяет алгоритм FIFO попакетно, а второй — побайтово. Очевидно, что данный тип очередей использует единый буфер хранения пакетов, определяемый параметром pfifo-limit и bfifo-limit.

Тип очереди mq-pfifo аналогичен pfifo с той лишь разницей, что использует несколько буферов хранения пакетов для каждого из потоков. Размер буфера определяется параметром mq-pfifo-limit.

Читайте также:  При настройке гитары лопаются струны

В случае переполнения буфера, вновь пришедшие пакеты будут отброшены. Таким образом, размер очереди позволяет искать компромисс между высокой утилизацией канала (большой размер очереди) и низким уровнем задержки (малый размер очереди).

1.3 Очередь типа red

Центральным понятием для очередей типа RED (random early drop — случайное превентивное отбрасывание) является средний размер очереди. Пользователь устанавливает значения минимального и максимального порогов red-min-threshold и red-max-threshold и, в зависимости от положения среднего размера очереди относительно этих порогов, выполняется управление потоком данных:

1.4 Очередь типа sfq

Формирование очереди типа SFQ (Stochastic fairness queuing — стохастическая честная очередь) происходит в три этапа: сначала для каждого из входящих пакетов рассчитывается хэш-функция (при расчёте используются значения IP-адресов и портов источника и назначения), потом, в соответствии с рассчитанной хэш-функцией, пакет распределяется в одну из 1024 очередей, а затем пакеты из очередей передаются на дальнейшую обработку по алгоритму round-robin (один пакет из первой очереди, один пакет из второй и т.д.).


Рисунок 1.2 — Принцип организации очередей SFQ

Очередь использует два параметра: sfq-allot — размер каждой из 1024 очередей в байтах, sfq-perturb — время, по истичении которого следует сменить хэширующий алгоритм.

Таким образом удаётся достичь равноправного распределения пропускной способности между всеми потоками данных. Однако у этого алгоритма есть недостаток: в случае, если какой-то из хостов будет оперировать множеством потоков данных, то получит приоритет трафика перед остальными, т.к. его трафик будет помещаться в различные очереди. В некоторых случаях этого можно избежать, выбрав параметры, участвующие в расчёте хэш-функции, но для этого потребуется сменить тип очереди на PCQ.

1.5 Очередь типа pcq

Очередь PCQ (per-connection queuing — распределение очередей по соединениям) является расширенным вариантом SFQ. Как уже было упомянуто, для PCQ можно выбрать параметры участвующие в расчёте хэш-функции (параметр pcq-classifier). Кроме того, можно задать размер каждой из подочередей через параметр pcq-limit.

Одним из преимуществ очередей типа PCQ является возможность гибкого управления доступной полосой для подочередей с помощью параметров pcq-rate и pcq-total-limit. Параметр pcq-rate устанавливает пороговую величину пропускной способности для каждой из подочередей, а pcq-total-limit – суммарный порог для всех подочередей. Полоса, указанная в параметре pcq-total-limit равномерно распределяется между всеми потоками, однако, пропускная способность потока не может превысить pcq-rate, даже если утилизация канала имеет запас. Если для очереди не установлены пороговые значения, то доступная полоса будет распределяться равномерно между подпотоками.

Наглядная демонстрация влияния размера очереди с иллюстрациями представлена в официальной документации — https://wiki.mikrotik.com/wiki/Manual:Queue_Size.

2. Принципы ограничения скорости

Поток данных проходящий через интерфейс, независимо от того входящий или исходящий, может быть обработан двумя способами: ограничение и выравнивание (см. рисунок 2.1).


Рисунок 2.1 — Принцип ограничения и выравнивания трафика

Ограничение трафика подразумевает, что весь трафик свыше заданного ограничения будет отброшен. Этот механизм представлен на рисунке 2.1а — данные, превосходящие порог отбрасываются. Такой тип ограничения скорости уместен для трафика, который чувствителен к задержкам: поскольку данные не хранятся в буфере, а передаются далее либо отбрасываются.

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

Исходя из этого, применяют два понятия, связанных с ограничением скорости: CIR и MIR. CIR (committed information rate — гарантированная скорость) — скорость, которая выделяется очереди в самом худшем случае, но гарантированно. MIR (maximum information rate — максимальная скорость) — скорость, которая выделяется очереди в лучшем случае, если эта полоса не используется другими очередями.

В синтаксисе RouterOS CIR обозначается как limit-at, а MIR — max-limit.

2.1 Использование Burst

Помимо механизмов ограничения скорости через CIR и MIR, в RouterOS существует возможность кратковременного увеличения полосы пропускания для очереди, называемая burst (импульс, взрыв).

Работа в режиме burst определяется тремя параметрами, значения которых устанавливает пользователь:

Результатом использования режима burst является значение текущей скорости передачи данных (actual-rate), выделяемая потоку данных.

Рассмотрим пример, в котором пользователь выполняет загрузку двух файлов, размер каждого из файлов 4 Мбайт (32 Мбит) (см. рисунок 2.2). Загрузка первого файла начинается на нулевой секунду, второго – на семнадцатой. На сетевом устройстве пользователя выполнена следующая конфигурация:

Читайте также:  Как открыть скрытые настройки вк на ios


Рисунок 2.2 — Демонстрация работы burst-режима

По оси асбцисс отложены временные отрезки, а по оси ординат — пропускная способность. Проанализируем выделенную пользователю полосу канала поэтапно:

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

3. Hierarchical token bucket (HTB)

Организация очередей и их взаимосвязи в RouterOS выполнены с использованием логики алгоритма HTB (hierarchical token bucket — иерархическое распределение).

Основным достоинством HTB является возможность установки отношений между очередями и организация их в иерархическую структуру. Таким образом, между очередями могут быть установлены отношения «родительский-дочерний» с наследованием распределяемых ресурсов. В рамках алгоритма HTB выделяют понятия входящей очереди (inner queue) и конечной (leaf queue). Очередь, у которой есть хотя бы одна дочерняя очередь является входящей и она отвечает за распределение трафика, тогда как конечная, у которой нет дочерних, является потребителем трафика.

Для каждой из очередей могут быть заданы следующие параметры: CIR, MIR и приоритет. Приоритет будет использован только в том случае, если удовлетворены CIR для всех конечных очередей и осталась часть пропускной способности. Очередь обладающая большим приоритетом (8 — наименьший приоритет, 1 — наивысший приоритет) получит дополнительную пропускную способность в первую очередь. В случае, если приоритеты конечных очередей совпадают, пропускная способность сверх CIR будет распределяться между ними равномерно. Распределение доступной полосы сверх CIR будет выполнено только в случае, если для конечных очередей установлены значения приоритетов, при этом приоритет входящей очереди не берётся в расчёт.

При построении иерархии необходимо руководствоваться следующими принципами:

В официальной документации приведены несколько примеров распределения пропускной способности между очередями в соответствии с иерархией (https://wiki.mikrotik.com/wiki/Manual:HTB), разберём один из них (см. рисунок 3.1).


Рисунок 3.1 — Пример организации структуры очередей

Распределение пропускной способности будет выполняться в соответствии со следующим алгоритмом:

1. Очереди Queue03, Queue04, Queue05 резервируют по 2Мбит/с в соответствии со значениями CIR;

2. Очередь Queue02 резервирует 8 Мбит/с;

3. Поскольку Queue02 зарезервировала 8 Мбит/с из которых конечные очереди Queue04 и Queue05 суммарно потребляют 4 Мбит/с, то оставшиеся 4 Мбит/с должны быть распределены между ними. Для этого выполняется анализ установленных значений приоритетов и 4 Мбит/с выделяется очереди Queue04 (Queue04 более приоритетна, чем Queue05);

4. Распределена вся доступная полоса, установленная в качестве MIR для очереди Queue01: Queue03 получает 2 Мбит/с, Queue04 — 6 Мбит/с, Queue05 — 2 Мбит/с.

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

4. MikroTik Simple Queues

Как уже было упомянуто, одним из способов организации MikroTik QoS в RouterOS является настройка Simple Queues, конфигурация которого будет рассмотрена в этом разделе.

MikroTik Simple Queues является достаточно гибким инструментом, позволяющим быстро выполнить ограничение полосы для какого-то хоста, либо, используя комплексный подход, продумать структуру и выполнить конфигурацию для множества сетей и потоков данных.

Настройка простых очередей выглядит как набор правил и связанных с ними политик. Пакет, обрабатываемый блоком Simple Queues, последовательно проверяется на соответствие всем правилам до того момента, пока правило не сработает. После срабатывания, к пакету будут применены политики, определённые этой записью. Механизм проверки соответствия схож с механизмом в Filter, рассмотренным в другом цикле статей. Отсюда следует, что большое число правил приводит к росту нагрузки на аппаратные ресурсы маршрутизатора.

В простых правилах может быть использована маркировка пакетов, выполняемая в Mangle. На рисунке 4.1 представлена упрощённая схема прохождения пакетов в RouterOS. Обработка пакетов блоком Simple Queues выполняется на двух этапах: Input для входящих пакетов и Postrouting — для исходящих (см. рисунок 4.2). Важно отметить, что применение Simple Queues MikroTik является одним из последних этапов обработки, поэтому маркировка выполняется на любом из предшествующих ему этапов. Также, важно обратить внимание на то, что использование Fasttrack влияет на работу очередей, поэтому, в рамках демонстрационных примеров эта опция будет отключена.


Рисунок 4.1 — Простая схема прохождения пакетов в RouterOS


Рисунок 4.2 — Схема прохождения пакетов для цепочек Input и Postrouting в RouterOS

4.1 Параметры Simple Queues

Конфигурация простых правил выполняется в разделе /queue simple и при создании правил можно настроить следующие параметры:

Источник

Adblock
detector