Hi all,
When I try to run the ultimate traffic conditioner
(cbq implementation), I get this strange output:
/tc# ./ultimate
/tc# tc filter show dev eth1
filter parent 1:
protocol ip pref 10 u32
filter parent 1: protocol ip pref 10 u32 fh 803: ht
divisor 1
filter parent 1: protocol ip pref 10 u32 fh 803::800 order 2048 key
ht 803 bkt 0 flowid 1:20
match 00000000/00000000 at 16
filter
parent 1: protocol ip pref 10 u32 fh 802: ht divisor 1
filter parent 1:
protocol ip pref 10 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid
1:10
match 00060000/00ff0000 at 8
match
05000000/0f00ffc0 at 0
match 00100000/00ff0000 at 32
filter parent
1: protocol ip pref 10 u32 fh 801: ht divisor 1
filter parent 1: protocol ip
pref 10 u32 fh 801::800 order 2048 key ht 801 bkt 0 flowid 1:10
match
00010000/00ff0000 at 8
filter parent 1: protocol ip pref 10 u32 fh 800: ht
divisor 1
filter parent 1: protocol ip pref 10 u32 fh 800::800 order 2048 key
ht 800 bkt 0 flowid 1:10
match 00100000/00ff0000 at 0
filter parent
1: protocol ip pref 11 u32
filter parent 1: protocol ip pref 11 u32 fh 803:
ht divisor 1
filter parent 1: protocol ip pref 11 u32 fh 803::800 order 2048
key ht 803 bkt 0 flowid 1:20
match 00000000/00000000 at 16
filter
parent 1: protocol ip pref 11 u32 fh 802: ht divisor 1
filter parent 1:
protocol ip pref 11 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid
1:10
match 00060000/00ff0000 at 8
match 05000000/0f00ffc0 at
0
match 00100000/00ff0000 at 32
filter parent 1: protocol ip pref
11 u32 fh 801: ht divisor 1
filter parent 1: protocol ip pref 11 u32 fh
801::800 order 2048 key ht 801 bkt 0 flowid 1:10
match
00010000/00ff0000 at 8
filter parent 1: protocol ip pref 11 u32 fh 800: ht
divisor 1
filter parent 1: protocol ip pref 11 u32 fh 800::800 order 2048 key
ht 800 bkt 0 flowid 1:10
match 00100000/00ff0000 at 0
filter parent
1: protocol ip pref 12 u32
filter parent 1: protocol ip pref 12 u32 fh 803:
ht divisor 1
filter parent 1: protocol ip pref 12 u32 fh 803::800 order 2048
key ht 803 bkt 0 flowid 1:20
match 00000000/00000000 at 16
filter
parent 1: protocol ip pref 12 u32 fh 802: ht divisor 1
filter parent 1:
protocol ip pref 12 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid
1:10
match 00060000/00ff0000 at 8
match 05000000/0f00ffc0 at
0
match 00100000/00ff0000 at 32
filter parent 1: protocol ip pref
12 u32 fh 801: ht divisor 1
filter parent 1: protocol ip pref 12 u32 fh
801::800 order 2048 key ht 801 bkt 0 flowid 1:10
match
00010000/00ff0000 at 8
filter parent 1: protocol ip pref 12 u32 fh 800: ht
divisor 1
filter parent 1: protocol ip pref 12 u32 fh 800::800 order 2048 key
ht 800 bkt 0 flowid 1:10
match 00100000/00ff0000 at 0
filter parent
1: protocol ip pref 13 u32
filter parent 1: protocol ip pref 13 u32 fh 803:
ht divisor 1
filter parent 1: protocol ip pref 13 u32 fh 803::800 order 2048
key ht 803 bkt 0 flowid 1:20
match 00000000/00000000 at 16
filter
parent 1: protocol ip pref 13 u32 fh 802: ht divisor 1
filter parent 1:
protocol ip pref 13 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid
1:10
match 00060000/00ff0000 at 8
match 05000000/0f00ffc0 at
0
match 00100000/00ff0000 at 32
filter parent 1: protocol ip pref
13 u32 fh 801: ht divisor 1
filter parent 1: protocol ip pref 13 u32 fh
801::800 order 2048 key ht 801 bkt 0 flowid 1:10
match
00010000/00ff0000 at 8
filter parent 1: protocol ip pref 13 u32 fh 800: ht
divisor 1
filter parent 1: protocol ip pref 13 u32 fh 800::800 order 2048 key
ht 800 bkt 0 flowid 1:10
match 00100000/00ff0000 at
0
/tc#
As you can see, the script adds way to many u32
filters. I did some testing, and figured out the problem has something to do
with the different priorities. when I give each u32 filter the same priority, I
get the right number of filters.
Is this output correct? If not, what can be the
problem?
thanks,
Jan
---
Jan Coppens
Ghent University -
IMEC
Department of Information Technology
(INTEC)
Broadband Communication Networks (IBCN)
Sint-Pietersnieuwstraat, 41
B-9000,
Gent
Belgium