wtyd Posted August 24, 2010 Posted August 24, 2010 Тема про 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 мегабит в данном случае). Если у кого-то есть раочие примеры, поделитесь, пожалуйста ? Вставить ник Quote
marikoda Posted October 7, 2010 Posted October 7, 2010 удалось решить? тоже интересна такая фича. Вставить ник Quote
photon Posted October 7, 2010 Posted October 7, 2010 burst вообще трогать не надо, т.к. он автоматом рассчитывается. Надо фиксировать quantum на значении не меньшем MTU (т.е. указывать в параметрах классов quantum 1500). Вставить ник Quote
wtyd Posted October 8, 2010 Author Posted October 8, 2010 удалось решить?тоже интересна такая фича. Нет, не удалось. burst вообще трогать не надо, т.к. он автоматом рассчитывается. Надо фиксировать quantum на значении не меньшем MTU (т.е. указывать в параметрах классов quantum 1500). про бурст утверждение спорное :-). Автоматически он не всегда как мне надо расчитывается. Про квантум - в мане то же самое написано. Видимо, HTB работает не так как в мане написано, исправить это нельзя или никто не знает как. Хотелось бы получить работу HTB как написано в стартовом посте: burst байт должны скачиваться с одной скоростью, дальше должно качаться с другой скоростью. Бурс постепенно перезаряжается если трафик не перегружает очередь. про перезарядку бурста даже где-тов доке написано было, на сайте HTB что ли ... Вставить ник Quote
photon Posted October 8, 2010 Posted October 8, 2010 (edited) Основными параметрами являются rate и ceil, где rate -- гарантированная полоса пропускания для данного класса обслуживания, ceil -- предельная скорость, которая может быть предоставлена данному классу, если полоса не используется другими классами. Если ceil не указан, то он считается равным rate, т.е. дополнительного заема полосы не происходит. Если надо сделать возможность заема неиспользуемой полосы, указываем ceil > rate. burst и cburst вычисляются исходя из значений rate и ceil, это размеры пачки байтов, которая будет посылаться каждый раз, когда шедулер обслуживает тот или иной класс. Размеры пачки влияют не на полосу пропускания, а только на пачечность трафика. Если зафиксировать quantum, все прекрасно работает со значениями по умолчанию. Что тут непонятного? Edited October 8, 2010 by photon Вставить ник Quote
Nallien Posted October 12, 2010 Posted October 12, 2010 (edited) wtyd как я вижу - у вас все работает именно так как написано. уберите описание ceil - и будет то что вы хотите. так как в вашем случае burst рассчитывается от ceil - свободной полосы родителя. Edited October 12, 2010 by Nallien Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.