Jump to content
Калькуляторы

HTB, SFQ, глупые вопросы. Навожу порядок в голове.

Корневая дисциплина на htb, на класах sfq, интересует правильный расчет burst и какой бурст должен быть у родительского класса к примеру 100мб канал.

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

 

Тарифы обычные, 5, 20, 80

Интересует чтобы у клиента все было ровненько и без всяких рывков и прочего.

 

 

Дальше самый глупый вопрос:

tokens: 1156 ctokens: 1156

или

tokens: -272 ctokens: 1280

 

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

Share this post


Link to post
Share on other sites

burst, если не задан, система рассчитывает вот так:

 

            // compute minimal allowed burst from rate; mtu is added here to make
           // sute that buffer is larger than mtu and to have some safeguard space
           if (!buffer) buffer = opt.rate.rate / get_hz() + mtu;
           if (!cbuffer) cbuffer = opt.ceil.rate / get_hz() + mtu;

 

get_hz() возвращает грубо говоря число прерываний таймера в секунду...

если ядро скомпилено с CONFIG_HIGH_RES_TIMERS=y (и есть аппаратная поддержка), то ф-я возвращает 10^9, которое берет отсюда (4е число): /proc/net/psched

проверить таймеры можно так: cat /proc/timer_list |grep resolution

 

вообщем размер буфера вычисляется так, чтобы не было тормозов из-за того что система не успевает перекладывать пакеты :)

в современных системах соотв. размер буфера обычно равен mtu + небольшая дельта...

 

если что не так написал, поправьте :)

Share this post


Link to post
Share on other sites

Добавлю, что для нормального функционирования шейпера не нужно рассчитывать никакой burst. Достаточно присваивать параметру quantum значение кратное MTU.

Edited by photon

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this