Перейти к содержимому
Калькуляторы

расчет аплинка

Господа!делитесь опытом кто как рассчитывает аплинк, у меня магистрал один правило 1/10 не работает, уже давно 1/6 всю рабочие дни канал почти свободный но начиная с пятницы по понедельник ...опа все начинают онлайн фильмы смотреть короче выгребают по полной,пробовал UDP резать начинают танкисты звонить все бы нечего но когда трафик до упора начинаются затыки у одних качает у других даже странички не открываются приходится в ручную ограничивать скорость в шейпере чтобы не упералось в максимальную скорость, (NAS Mikrotik AH1100) тарифы от 1 до 4 мбт,

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а на чем шейпер построен? simple или tree?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

PCQ шейпер перед корневой веткой шейпера пробовали ставить? С ограничением на величину чуть меньшую ширине вашего канала.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нет не пробовали, как это сделать?

 

Сделайте что-то типа:

/queue type add kind=pcq name=_dALL pcq-burst-rate=0 pcq-burst-threshold=0 \
   pcq-burst-time=10s pcq-classifier=dst-address pcq-dst-address-mask=32 \
   pcq-dst-address6-mask=128 pcq-limit=500 pcq-rate=0 pcq-src-address-mask=\
   32 pcq-src-address6-mask=128 pcq-total-limit=9000000

добавьте перед вашими шейперами шейпер с этим queue type и max limit для него сделайте чуть меньше ширины вашего канала. Не забудьте сделать для ваших шейперов парентом этот queue, а в него не забудьте добавить Packet Marks всех ваших шейперов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

сделали все так, как описано выше. но трафик считается в 2 раза больше чем проходит через vlan. может быть это из-за того, что у нас через один порт гоняется все? можно ли канал просто указать в 2 раза больше?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 автор а параметр limit-at указан? если указан как получили данный параметр?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нет, не указан.. только max limit.

 

ну так укажите. это параметр гарантированной полосы для группы

 

ну конечно, что он актуален только если у вас несколько тарифов/шейперов

 

у мя это дело в автомате считается и значение правиться раз в 5 минут.

и не бывает такого что кому то не хватает полосы

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а поподробнее можно про автоматический подсчет? как его реализовать? считается в зависимости от загруженности канала?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

считается в зависимости от загруженности канала?

нет, канал у вас есть и он фиксированный, если вышестоящий пров нормальный

 

limit-at считается в зависимости от кол-ва юззверей активных

 

 

##### please set options ####

:local TreeList "Start_down, Midl_down, Max_down, High_down";

:local ChannelSpeed "100";

#####################

 

:local TotalChannelSpeed;

:local Factor;

:set ChannelSpeed ($ChannelSpeed*1000000);

 

:log info "------------SHOW INFO-----------";

#Need speed, Total speed

:local ArrayQueueTree [:toarray $TreeList];

:foreach ArrayQueueTreeVal in=$ArrayQueueTree do={

:foreach QueueTreeVal in=[/queue tree find] do={

:local QueueTreeName [/queue tree get number=[$QueueTreeVal] name]

:if ($QueueTreeName=$ArrayQueueTreeVal) do={

:local PCQActiveUser [/queue tree get number=[$QueueTreeVal] pcq-queues]

:local PCQName [/queue tree get number=[$QueueTreeVal] queue]

:local PCQRate [/queue type get [$PCQName] pcq-rate]

:local NeedSpeed ($PCQRate*$PCQActiveUser);

:log info ($QueueTreeName." -- active: ".$PCQActiveUser.", pcq: ".$PCQName.", needspeed: ".$NeedSpeed/1000000);

:set TotalChannelSpeed ($NeedSpeed+$TotalChannelSpeed);

 

}

}

}

:set TotalChannelSpeed ($TotalChannelSpeed/1000000);

:set Factor ($ChannelSpeed/$TotalChannelSpeed);

:log info "Total speed: $TotalChannelSpeed Mbit";

:log info "Factor: $Factor";

 

#LIMIT-AT

:log info "------------SET LIMIT-AT-----------";

:foreach ArrayQueueTreeVal in=$ArrayQueueTree do={

:foreach QueueTreeVal in=[/queue tree find] do={

:local QueueTreeName [/queue tree get number=[$QueueTreeVal] name]

:if ($QueueTreeName=$ArrayQueueTreeVal) do={

:local PCQActiveUser [/queue tree get number=[$QueueTreeVal] pcq-queues]

:local PCQName [/queue tree get number=[$QueueTreeVal] queue]

:local PCQRate [/queue type get [$PCQName] pcq-rate]

:local NeedSpeed ($PCQRate*$PCQActiveUser);

:local LimitAT (($NeedSpeed*$Factor)/1000000);

 

:local LimitAtMbit ($LimitAT/1000000);

:local LimitAtKbit ($LimitAT/1000);

:set LimitAtMbit ($LimitAtMbit."M");

:set LimitAtKbit ($LimitAtKbit."K");

:local ChannelSpeedKbit (($ChannelSpeed/1000)."k");

 

:log info "$QueueTreeName -- Limit-At: $LimitAtKbit, Max-Limit: $ChannelSpeedKbit ";

queue tree set "$QueueTreeName" limit-at=$LimitAtKbit max-limit=$ChannelSpeedKbit

 

}

}

}

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

где

 

:local TreeList "Start_down, Midl_down, Max_down, High_down"; это имена веток шейпера

:local ChannelSpeed "100"; - это max limit , только заметил этот параметр нуна было брать с мах limit основного ствола, но т.к. своего ума нет для создания такого заказывал

 

если нужно распишу логику на пальцах хотя это сложно )))))

раньше держал в экселе, и там считал усредненно

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.