Hi,
I am attempting to set up some simple outbound shaping following the
LARTC HOWTO.
The HTB qdisc seems to work as the documentation says, but my filters
don't seem to be working. All of the packets go to the default queue
regardless of what filters I set, it seems. (according to tc -s qdisc show)
I am trying to get this working on my openwrt box (whiterussian rc6),
but when testing it on my Debian etch box for comparison, I see the same
behavior.
I'm hoping someone can point out what I'm doing wrong with the filters...
FYI: "vlan1" is the outbound interface of my wrt54g.
Script follows:
IF=vlan1
insmod cls_u32
insmod sch_htb
insmod sch_prio
insmod sch_sfq
#
# qdisc/class tree
# 1: root (HTB) qdisc
# |
# 1:10 class rate 384000bit
# |
# 10: prio qdisc
# / | \
# 10:1 | 10:3
# | 10:2 |
# 101: | | sfq
# 102: | sfq
# 103: sfq
tc qdisc del dev $IF root
tc qdisc add dev $IF root handle 1: htb default 10
tc class add dev $IF parent 1: classid 1:10 htb rate 384kbit burst 3k
# This automatically creates 10:1, 10:2, 10:3
tc qdisc add dev $IF parent 1:10 handle 10: prio
# Add sfq qdisc to each of the priority classes
tc qdisc add dev $IF parent 10:1 handle 101: sfq
tc qdisc add dev $IF parent 10:2 handle 102: sfq
tc qdisc add dev $IF parent 10:3 handle 103: sfq
# "bulk" ssh on port 20022 goes to 103: (low priority)
tc filter add dev $IF parent 1:0 protocol ip prio 1 u32 \
match ip sport 20022 0xffff flowid 103:
tc filter add dev $IF parent 1:0 protocol ip prio 1 u32 \
match ip dport 20022 0xffff flowid 103:
# ICMP goes fast?
tc filter add dev $IF parent 1:0 protocol ip prio 2 u32 \
match ip protocol 1 0xff flowid 101:
_______________________________________________
LARTC mailing list
LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc