[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

HTB+IMQ



Witam wszystkich!

Mam pewne pytanie co do dynamicznego podziału łącza przy pomocy kolejki HTB.
Niestety nie działa mi to najlepiej :(.

Fragment przykładowej konfiguracji
[...]
tc qdisc add dev imq0 root handle 1:0 htb default 3 r2q 1

tc class add dev imq0 parent 1:0 classid 1:1 htb rate 128kbit ceil
128kbit

tc class add dev imq0 parent 1:1 classid 1:2 htb rate 60kbit ceil
128kbit prio 1
tc class add dev imq0 parent 1:1 classid 1:3 htb rate 40kbit ceil
128kbit prio 2
tc class add dev imq0 parent 1:1 classid 1:4 htb rate 28kbit ceil
128kbit prio 2


tc qdisc add dev imq0 parent 1:2 handle 2:0 sfq perturb 10
tc qdisc add dev imq0 parent 1:3 handle 3:0 sfq perturb 10
tc qdisc add dev imq0 parent 1:4 handle 4:0 esfq perturb 10 hash dst

tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst
192.168.1.2 flowid 1:2
tc filter ....

[...]

Odpalam  
% watch -n 1 tc -s -d class ls dev imq0 
i niby po licznikach widzę że działa, filtry rozrzucają jak trzeba i
wogóle ... 
Do serwera ląduje większość w kolejce 1:3 kolejce , do kompa w LANie.

ALE
Wystarczy, że zapusczę jakieś masywne ściąganie na serwerze 
(np. prozilla) kolejki się rozjerzdżają i serwer przysysa mi łącze
bardziej niż mu bym na to chciał pozwolić
Robiłem różne eksperymenty z wielkościami rate i ceil i nie udało mi się
nic ciekawego na tej podstawie wywnioskować :(.

W zasadzie jedyna działająca rzecz to ograniczenie kolejek z góry, to
działa pięknie.


kernel:			2.4.26-pre1 + grsec + imq + imq_nat + esfq
iproute + iptables: 	źródełka debianowe spatchowane IMQ,ESFQ i kompilowane

Ludzie w necie piszą, że HTB im potrafi co do kbyte'a przydzielić łącze z
tego wnioskuję ze cos u mnie nie tak..

Czy to dlatego, iż próbuję zbyt małe łącze (16 kbytes/sek) dzielić przy
pomocy HTB?
Czy muszę dostroić któryś z magicznych parametrów tej kolejki?
nie znam się na tym zbyt dobrze niestety :(

-- 
Pozdrawiam
	KK



Reply to: