Настоящий динамический шейпинг

Обсуждение ПО и его настройки
Ответить
Senter
Сообщения: 98
Зарегистрирован: 25 ноя 2014, 12:27

Есть 2 глобальных вопроса по очередям, а точнее по динамическим очередям.

Например, есть два клиента: 10.10.10.100 и 10.10.10.101 и правила урезающие им in/out скорость:

Код: Выделить всё

/ip fi man
add chain=forward in-interface=br1 src-address=10.10.10.100 out-interface=eth1-wan action=mark-connection new-connection-mark=100-to-inet
add chain=forward in-interface=br1 src-address=10.10.10.101 out-interface=eth1-wan action=mark-connection new-connection-mark=101-to-inet
add chain=forward connection-mark=100-to-inet action-mark-packet new-packet-mark=100-to-inet
add chain=forward connection-mark=101-to-inet action-mark-packet new-packet-mark=101-to-inet

add chain=forward out-interface=br1 dst-address=10.10.10.100 in-interface=eth1-wan action=mark-connection new-connection-mark=100-from-inet
add chain=forward out-interface=br1 dst-address=10.10.10.101 in-interface=eth1-wan action=mark-connection new-connection-mark=101-from-inet
add chain=forward connection-mark=100-from-inet action-mark-packet new-packet-mark=100-from-inet
add chain=forward connection-mark=101-from-inet action-mark-packet new-packet-mark=101-from-inet

/queue tree
add name=input parent=eth1-wan limit-at=9500k max-limit=10M queue=pcq-download-default
 add name=100-input parent=input limit-at=3M max-limit=4M queue=pcq-download-default
 add name=101-input parent=input limit-at=3M max-limit=4M queue=pcq-download-default
add name=output parent=eth1-wan limit-at=9500k max-limit=10M queue=pcq-upload-default
 add name=100-output parent=output limit-at=3M max-limit=4M queue=pcq-upload-default
 add name=101-output parent=output limit-at=3M max-limit=4M queue=pcq-upload-default

Правила пишу для примера, могут быть мелкие синтаксические ошибки.

Таким образом получается статический шейпинг, когда оба клиента в сети они используют свои 3-4Mb/sec и не мешают друг-другу, но если один из клиентов не в сети, то почему-бы не отдать весь канал оставшемуся, как реализовать динамическое изменение ширины канала исходя из числа пользователей(без скриптов)?
И второй вопрос, если у меня не 2, а 20 клиентов и они получают адреса по dhcp из диапазона адресов(даже если в диапазоне всего 20 адресов), как создать правила разделяющие канал между ними(не создавая по правилу для каждого клиента к тому-же, если канал 20Mb/sec и давать каждому по 1 Mb/sec то упираемся в предыдущий вопрос)?

Поискал в интернете, ответов на эти вопросы не нашел.


alexanderx10
Сообщения: 52
Зарегистрирован: 23 дек 2013, 14:06

Оставляешь только значения лимита в родителе. В родителе тип очереди ставить на default. Taк как там разницы нет что выберешь. Действуют только дочерние значения правил. По хорошему тебе можно отказаться от одного дочернего правила. А сделать одно с двумя клиентами. Потому что принцип работы pcq в деление. Если у тебя мах лимит 10 то на двух клиентов будет делиться по 5. на 5 клиентов по 2. и так далее. А когда один клиет ему будет отдана максимальная скорость


-user-
Сообщения: 30
Зарегистрирован: 21 мар 2013, 10:05

Senter писал(а):то почему-бы не отдать весь канал оставшемуся
И второй вопрос, если у меня не 2, а 20 клиентов
как создать правила разделяющие канал между ними
достаточно будет 'почти одного правила' :-):
когда прочтёте тут: http://xaa.su/XJN то станет понятен принцип работы и как,что, куда прописать, чтобы заработало


Senter
Сообщения: 98
Зарегистрирован: 25 ноя 2014, 12:27

Спасибо, почитаю


Ответить