IMQ shaping

Dušan Sýs sys na net-service.cz
Pondělí Září 12 12:15:14 CEST 2005


Ahoj vespolek,

Uz se tady nekolikaty den trapim se shapovanim HTB pres IMQ. Jadro je
patchnute, iptables taky. Mam 2 odchozi interface eth0 a eth1, na techto
potrebuji delat agregaci rychlosti. Prikladam testovaci scritik, kde je
promena ETH zarizeni, na kterem se ma omezovat. Pokud dam ETH napr na eth1 ,
tak se omezovani provadi ( v ramci jedne sitovky ), ale pokud dam zarizeni
imq0, tak to proste nejede. Ifconfiggem vidim, ze data na zarizeni imq0
chodi ( tcpdum sice nic nevidi, ale to je asi normalni ), ale omezeni
njedete. Omezeni je na adresu 192.168.10.0/24. Zkusel jsem to na jadre
2.4.27 a 2.6.13.

Uz jsem z toho na prasky ..

Proc mi to nejete ?


Zdravi Dusan Sys



Vystup  iptables -xvnL -t mangle


Chain PREROUTING (policy ACCEPT 249 packets, 92140 bytes)
    pkts      bytes target     prot opt in     out     source
destination

Chain INPUT (policy ACCEPT 242 packets, 21944 bytes)
    pkts      bytes target     prot opt in     out     source
destination

Chain FORWARD (policy ACCEPT 7 packets, 70196 bytes)
    pkts      bytes target     prot opt in     out     source
destination

Chain OUTPUT (policy ACCEPT 351 packets, 24752 bytes)
    pkts      bytes target     prot opt in     out     source
destination

Chain POSTROUTING (policy ACCEPT 400 packets, 95788 bytes)
    pkts      bytes target     prot opt in     out     source
destination
       0        489454 IMQ        all  --  *      eth1    0.0.0.0/0
0.0.0.0/0           IMQ: todev 0
      21       111644 IMQ        all  --  *      eth0    0.0.0.0/0
0.0.0.0/0           IMQ: todev 0



ETH=imq0
Ip link set imq up

iptables -t mangle -A POSTROUTING -o eth1 -j IMQ --todev 0
iptables -t mangle -A POSTROUTING -o eth0 -j IMQ --todev 0

tc qdisc del dev ${ETH} root
tc qdisc add dev ${ETH} root handle 1:0 htb 
tc class add dev ${ETH} parent 1:0 classid 1:1 htb rate 146kbit
tc class add dev ${ETH} parent 1:1 classid 1:11 htb rate 20kbit ceil 100kbit
tc qdisc add dev ${ETH} parent 1:11 handle 11:0 sfq perturb 10
tc filter add dev ${ETH} parent 1:0 protocol ip handle 1 fw flowid 1:11
tc filter add dev ${ETH} parent 1: protocol ip prio 1 u32 match ip dst
192.168.10.0/24 flowid 1:11





Další informace o konferenci Linux