В Чтв, 27/07/2006 в 11:44 +0300, Dmitry Labutcky пишет:
Добрый день,
Nikolay Nikolaev wrote:
Dmitry Labutcky пишет:
kernel: HTB: quantum of class 20023 is small. Consider r2q change.
может я конечно что-то исправил неправильно. В Инете говорят это не
смертельно, влияет только на качество ограничения, но как это вылечить я
не понял.
в описании класса добавить quantum 1500.
А лучше для все классов выставить одинаковый quantum=1500.
вообще исходя из текста сообщения я бы изменил значение r2q причем как
написано в доках при маленьких скоростях еэто значение стремится к 1
htb высчитывет квантум по формуле: rate/r2q. r2q по умолчанию равно 10.
Сам по себе квантум используется в двух случаях:
1. каждый класс посылает quantum байт до переключения на другой класс.
2. распределение неиспользуемой полосы родителя между потомками производится
пропорционально квантумам потомков.
htb считает, что минимальный rate может быть 10000 b/s, а максимальный 2000000 b/s.
Если rate класса выходит за данный диапазон, то выдается ругань в klog и
квантум устанавливается
соответственно в 1000 и 200000.
Само же значение r2q планировщиком не меняется, за исключением случая, когда tc
передает
отрицательное значение r2q. В этом случае r2q устанавливается в 1. Но r2q
нельзя установить на
отдельный класс, а только на всю дисциплину в целом.
Все таки лучше, как мне кажется, для классов с rate < 10 kbps выставлять
квантум равным mtu, а
для rate > 2 mbps выставить quantum=65535. В этом случае получится нормальное
взвешенное
распределение полосы.
Если же необходимо равномерное распределение, то лучше поставить на все классы
quantum=mtu.
Спасибо за исчерпывающее объяснение!
Скажите, quantum=mtu можно ли так писать, или значение mtu надо руками
вписать.