Jump to content

Recommended Posts

Posted

Тема про HTB наверное уже изъезжена вдоль и поперёк, тем не менее:

 

В мане написано:

 

burst bytes

Amount of bytes that can be burst at ceil speed, in excess of the configured rate.

Should be at least as high as the highest burst of all children.

 

Почему-то именно так сделать не получается. Скорость ceil используется всегда, когда parent класс имеет свободную ёмкость.

 

Хотелось бы сделать так как написанов мане: на burst байт скорость такая-то (ceil), после исчерпания бурста и продолжания качать скорость должна быть rate. Если перестать качать, то бурст через какое-то время перезарядится.

 

пробую так:

 

tc qdisc add dev eth1 root handle 1 htb default 50

tc class add dev eth1 parent 1: classid 1:1 htb rate 20Mbit burst 100000000

...

tc class add dev eth1 parent 1:1 classid 1:10 htb rate 5Mbit burst 100000000

tc class add dev eth1 parent 1:10 classid 1:1001 htb rate 1Mbit ceil 2Mbit burst 20000000

...

 

Трафик, попадающий в 1:1001 в тесте всегда со скоростью 256 килобайт/сек (2 мегабита), хотя по ману 2 мегабита должно быть только на первых 20М (примерно) данных.

 

С cburst такой финт работает (примерно), но скорость долетает до скорости родителя (до 600 килобайт/сек = 5 мегабит в данном случае).

 

Если у кого-то есть раочие примеры, поделитесь, пожалуйста ?

  • 1 month later...
Posted

burst вообще трогать не надо, т.к. он автоматом рассчитывается. Надо фиксировать quantum на значении не меньшем MTU (т.е. указывать в параметрах классов quantum 1500).

Posted
удалось решить?

тоже интересна такая фича.

Нет, не удалось.

 

burst вообще трогать не надо, т.к. он автоматом рассчитывается. Надо фиксировать quantum на значении не меньшем MTU (т.е. указывать в параметрах классов quantum 1500).

про бурст утверждение спорное :-). Автоматически он не всегда как мне надо расчитывается. Про квантум - в мане то же самое написано.

 

Видимо, HTB работает не так как в мане написано, исправить это нельзя или никто не знает как. Хотелось бы получить работу HTB как написано в стартовом посте: burst байт должны скачиваться с одной скоростью, дальше должно качаться с другой скоростью. Бурс постепенно перезаряжается если трафик не перегружает очередь. про перезарядку бурста даже где-тов доке написано было, на сайте HTB что ли ...

 

Posted (edited)

Основными параметрами являются rate и ceil, где rate -- гарантированная полоса пропускания для данного класса обслуживания, ceil -- предельная скорость, которая может быть предоставлена данному классу, если полоса не используется другими классами. Если ceil не указан, то он считается равным rate, т.е. дополнительного заема полосы не происходит. Если надо сделать возможность заема неиспользуемой полосы, указываем ceil > rate. burst и cburst вычисляются исходя из значений rate и ceil, это размеры пачки байтов, которая будет посылаться каждый раз, когда шедулер обслуживает тот или иной класс. Размеры пачки влияют не на полосу пропускания, а только на пачечность трафика. Если зафиксировать quantum, все прекрасно работает со значениями по умолчанию. Что тут непонятного?

Edited by photon
Posted (edited)

wtyd

 

как я вижу - у вас все работает именно так как написано. уберите описание ceil - и будет то что вы хотите. так как в вашем случае burst рассчитывается от ceil - свободной полосы родителя.

Edited by Nallien

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.