I think there is still a bug.
first of all, with this 2007-06-26 I couldn't see nothing when running:
ip6tables -t mangle -L -v
so, I picked up the IpTablesWrapper.cpp file of the 2007-06-26 version
and i put it on the version i have.
After starting ./nsis -qos -debug 5 on all nodes, I start on QNI a
nsis-qos and a ping6 to the QNR.
On a QNE (dogpoo) I can see the following,
QoSFsm::idle__rx_reserve()
Reserving 10000bps...
(TC) Running "tc class add dev eth0 parent 1:1 classid 1:6 htb rate
10000bps ceil 10000bps"
(TC) Running "tc qdisc add dev eth0 parent 1:6 handle 6: sfq perturb 10"
(Ip6Tables) Running "ip6tables -t mangle -A PREROUTING --src
2001:690:2380:7777:211:2fff:fea6:644/128 --dst
2001:690:2380:777c:20a:e4ff:fe03:73f5/128 -j MARK --set-mark 0x0006"
(TC) Running "tc filter add dev eth0 protocol ip parent 1:0 prio 1
handle 6 fw classid 1:6"
mtu: 1500Reserving 10000bps...
(TC) Running "tc class add dev eth1 parent 1:1 classid 1:6 htb rate
10000bps ceil 10000bps"
(TC) Running "tc qdisc add dev eth1 parent 1:6 handle 6: sfq perturb 10"
(Ip6Tables) Running "ip6tables -t mangle -A PREROUTING --src
2001:690:2380:7777:211:2fff:fea6:644/128 --dst
2001:690:2380:777c:20a:e4ff:fe03:73f5/128 -j MARK --set-mark 0x0006"
(TC) Running "tc filter add dev eth1 protocol ip parent 1:0 prio 1
handle 6 fw classid 1:6"
mtu: 1500++ V:Id:M_Seq:O_Cmb : 0:0:0:3
However, none of the ping6 packets are marked for the reservation, as
you can see,
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin# ip6tables -t mangle -L -v
Chain PREROUTING (policy ACCEPT 47M packets, 68G bytes)
pkts bytes target prot opt in out source
destination
390 40560 MARK all any any asus/128
acer/128 MARK set 0x6
390 40560 MARK all any any asus/128
acer/128 MARK set 0x6
Chain INPUT (policy ACCEPT 69222 packets, 7100K bytes)
pkts bytes target prot opt in out source
destination
Chain FORWARD (policy ACCEPT 47M packets, 68G bytes)
pkts bytes target prot opt in out source
destination
Chain OUTPUT (policy ACCEPT 24121 packets, 3289K bytes)
pkts bytes target prot opt in out source
destination
Chain POSTROUTING (policy ACCEPT 47M packets, 68G bytes)
pkts bytes target prot opt in out source
destination
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin# tc -s -d filter show dev
eth0 parent 1:
filter protocol ip pref 1 fw
filter protocol ip pref 1 fw handle 0x6 classid 1:6
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin#
No packets using 6 MARK are sent
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin# tc -s -d qdisc show dev eth0
qdisc htb 1: r2q 10 default 2 direct_packets_stat 149 ver 3.17
Sent 105983536 bytes 72502 pkts (dropped 662328, overlimits 527419)
backlog 126p
qdisc sfq 2: parent 1:2 limit 128p quantum 1514b flows 128/1024 perturb
10sec
Sent 105656048 bytes 72278 pkts (dropped 662328, overlimits 0)
backlog 126p
qdisc sfq 6: parent 1:6 limit 128p quantum 1514b flows 128/1024 perturb
10sec
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin#
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin#
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin# tc -s class show dev eth0
class htb 1:1 root rate 10000Kbit ceil 10000Kbit burst 15Kb cburst 2848b
Sent 115512344 bytes 79254 pkts (dropped 0, overlimits 0)
rate 9341Kbit 801pps
lended: 78424 borrowed: 0 giants: 0
tokens: 7317 ctokens: -2931
class htb 1:2 parent 1:1 leaf 2: prio 0 rate 100000bit ceil 10000Kbit
burst 1611b cburst 2848b
Sent 116146134 bytes 79455 pkts (dropped 727403, overlimits 0)
rate 9348Kbit 801pps backlog 126p
lended: 830 borrowed: 78424 giants: 0
tokens: -166073 ctokens: -2931
class htb 1:6 parent 1:1 leaf 6: prio 0 rate 80000bit ceil 80000bit
burst 1609b cburst 1609b
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 164864 ctokens: 164864
root@dogpoo:/usr/src/nsis-0.5.1-dev-old/bin#
So, this is almost working, but something is still missing.
Please reply as soon as you can.
Thanks in advance.
Fábio Ferreira
University of Aveiro
Instituto de Telecomunicações