Mikrotik - QoS / Bandwidth Control / Простое ограничение

Quality of Service (QoS) это комплекс мер по обеспечению качества обслуживания компьютерной сети, который можно характеризовать несколькими параметрами:
# Полоса пропускания (Bandwidth).
# Задержка при передаче пакета (Delay).
# Колебания (дрожание) задержки при передаче пакетов — джиттер (Jitter).
# Потеря пакетов (Packet loss).

В следующих примерах я продемонстрирую как организовать простой механизм ограничения скорости, используя MikroTik Router OS.
Придумаем виртуальную схему сети и создадим конфигурацию роутера для нее.

 

 

 

 

 

Итак, два филиала, в филиале А находится несколько рабочих мест, почтовый сервер и web сервер, роутер этого филиала подключен одновременно к двум провайдерам, провайдер ISP1 предоставляет 100Мб внутри своей сети, внутренний трафик не тарифицируется, второй провайдер ISP2 предоставляет безлимитный доступ к сети Internet. В филиале В находится терминальный сервер, этот филиал так же подключен к провайдеру ISP1.

Вся дальнейшая настройка будет делаться для роутера филиала А.
В этой статье дается описание настройки ограничения по скорости доступа все остальные настройки можно найти в предыдущих статьях.

Необходимо:
1. Работа по каналу провайдера ISP2

    1. Ограничить скорость доступа офисным машинам к сети Internet:
    • Машины 192.168.1.10-192.168.1.15 - Download = 64kb/s, Upload = 32kb/s

    • Машина 192.168.1.20 - Download = 256kb/s, Upload = 128kb/s

    2. Ограничить скорость доступа почтового сервера - Donwload = 1Mb/s, Upload = 1Mb/s
    3. Ограничить скорость доступа web сервера - Download = 1Mb/s, Upload = 4Mb/s
Работа по каналу провайдера IPS1
    1. Ограничить скорость доступа офисным машинам 192.168.1.10-192.168.1.15 до уровня, достаточного для работы с 1-2 одновременными терминальными сеансами (RDP) - 1Mb/s
    2. Ограничить скорость доступа машины 192.168.1.20 до 10Mb/s
    3. Ограничить скорость доступа серверов до 10Mb/s

 

Самым простым механизмом ограничения скорости доступа является /queue simple, ограничения задаются в виде правил, правила обрабатываются по порядку от меньшего номера к большему (сверху вниз).

Т.к. оговорено, что провайдер IPS1 предоставляет доступ ко внутренней сети, то известна подсеть, которую будут использовать филиалы для совместной работы.

Первым шагом создадим правила для серверов.

[mkt@MikroTik] > queue simple add name="mail to branch" target-addresses=192.168.1.2
dst-address=195.82.111.0/24 interface=ISP1 max-limit=10000000/10000000

target-addresses - адрес, который ограничиваем.
dst-address - назначение, в нашем случае это подсеть внутри провайдера.
interface - интрефес, через который буду проходить пакеты от target-addresses к dst-address.
max-limit - значение максимальной скорости (target upload/download)

Теперь тоже, но для веб сервера и 192.168.1.20.

[mkt@MikroTik] > queue simple add name="web to branch" target-addresses=192.168.1.3
dst-address=195.82.111.0/24 interface=ISP1 max-limit=10000000/10000000

[mkt@MikroTik] > queue simple add name="192.168.1.20 to branch"
target-addresses=192.168.1.20 dst-address=195.82.111.0/24 interface=ISP1
max-limit=10000000/10000000

Значение name должно быть уникальным!

Теперь правило для машин 192.168.1.10-192.168.1.15.

[mkt@MikroTik] > queue simple add name="192.168.1.10-15 to branch"
target-addresses=192.168.1.10,192.168.1.11,192.168.1.12,192.168.1.13,192.168.1.14,
192.168.1.15 dst-address=195.82.111.0/24 interface=ISP1 max-limit=1000000/1000000

В target-addresses можно указать перечисление адресов, на которые распространяется это правило.

Считаем, что с правилами маршрутизации проблем нет и то, что должно пойти по не тарифицируемому каналу, то по нему пойдет и не свернет случайно на второй интерфейс, который со стороны филиала А безлимитный, а вот со стороны филиала В находится уже другой провайдер, который выставит счет за такую ошибку. А вдруг что то не так? Или этими настройками занимается другой человек, лучше себя подстраховать!
Защитится от этого можно одним простым правилом, все, что не предназначено подсети, в которой находятся наши филиалы, должно быть ограничено до скорости в 10b/s.
Можно перефразировать задачу по другому, учитывая, что правилами, которые стоят выше, оговорены ограничения для доступа к филиалам через интерфейс ISP1, остальные соединения, проходящие через интерфейс ISP1 ограничить скоростью в 10b/s.

[mkt@MikroTik] > queue simple add name="not to branch" interface=ISP1
max-limit=10/10

Теперь настало время прописать ограничения для работы со вторым провайдером.

Начнем так же с серверов.

Почтовый серер - 1Mb/s, Upload = 1Mb/s

[mkt@MikroTik] > queue simple add name="mail to external"
target-addresses=192.168.1.2 interface=ISP2 max-limit=1000000/1000000

Веб сервер - Download = 1Mb/s, Upload = 4Mb/s.

[mkt@MikroTik] > queue simple add name="web to external"
target-addresses=192.168.1.3 interface=ISP2 max-limit=4000000/1000000

Теперь машина 192.168.1.20 - Download = 256kb/s, Upload = 128kb/s

[mkt@MikroTik] > queue simple add name="192.168.1.20 to external"
target-addresses=192.168.1.20 interface=ISP2 max-limit=128000/256000

В заключение одним правилом для машин 192.168.1.10-192.168.1.15 - Download = 64kb/s, Upload = 32kb/s

[mkt@MikroTik] > queue simple add name="192.168.1.10-15 to external"
target-addresses=192.168.1.10,192.168.1.11,192.168.1.12,192.168.1.13,192.168.1.14,
192.168.1.15 interface=ISP2 max-limit=32000/64000

Продублируем защиту для интрефейса ISP2, что бы все выходящее с него в подсеть филиалов ограничивалось скоростью в 10b/s.

[mkt@MikroTik] > queue simple add name="ISP2 to branch" dst-address=195.82.111.0/24
interface=ISP2 max-limit=10/10
Посмотрим, что у нас получилось.
[mkt@MikroTik] > queue simple print
Flags: X - disabled, I - invalid, D - dynamic
0 name="web to branch" target-addresses=192.168.1.3/32
dst-address=195.82.111.0/24 interface=ISP1 parent=none direction=both
priority=8 queue=default-small/default-small limit-at=0/0
max-limit=10000000/10000000 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

1 name="192.168.1.20 to branch" target-addresses=192.168.1.20/32
dst-address=195.82.111.0/24 interface=ISP1 parent=none direction=both
priority=8 queue=default-small/default-small limit-at=0/0
max-limit=10000000/10000000 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

2 name="192.168.1.10-15 to branch"
target-addresses=192.168.1.10/32,192.168.1.11/32,192.168.1.12/32,
192.168.1.13/32,192.168.1.14/32,192.168.1.15/32
dst-address=195.82.111.0/24 interface=ISP1 parent=none direction=both
priority=8 queue=default-small/default-small limit-at=0/0
max-limit=1000000/1000000 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

3 name="not to branch" dst-address=0.0.0.0/0 interface=ISP1 parent=none
direction=both priority=8 queue=default-small/default-small
limit-at=0/0 max-limit=10/10 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

4 name="mail to external" target-addresses=192.168.1.2/32
dst-address=0.0.0.0/0 interface=ISP2 parent=none direction=both
priority=8 queue=default-small/default-small limit-at=0/0
max-limit=1000000/1000000 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

5 name="web to external" target-addresses=192.168.1.3/32
dst-address=0.0.0.0/0 interface=ISP2 parent=none direction=both
priority=8 queue=default-small/default-small limit-at=0/0
max-limit=4000000/1000000 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

6 name="192.168.1.20 to external" target-addresses=192.168.1.20/32
dst-address=0.0.0.0/0 interface=ISP2 parent=none direction=both
priority=8 queue=default-small/default-small limit-at=0/0
max-limit=128000/256000 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

7 name="192.168.1.10-15 to external"
target-addresses=192.168.1.10/32,192.168.1.11/32,192.168.1.12/32,
192.168.1.13/32,192.168.1.14/32,192.168.1.15/32
dst-address=0.0.0.0/0 interface=ISP2 parent=none direction=both
priority=8 queue=default-small/default-small limit-at=0/0
max-limit=32000/64000 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

8 name="ISP2 to branch" dst-address=195.82.111.0/24 interface=ISP2
parent=none direction=both priority=8 queue=default-small/default-small
limit-at=0/0 max-limit=10/10 burst-limit=0/0 burst-threshold=0/0
burst-time=0s/0s total-queue=default-small

Это самый простой из механизмов ограничения скорости и обеспечения качества сервиса.

Автор: Sergey Lagovskiy

 





Рейтинг@Mail.ru
Яндекс цитирования

Григорьев Дмитрий Владимирович (Inlarion) 2010-2016 (C) Все права защищены. При копировании материалов с сайта, ссылка на автора и источник обязательны!!!