From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Coppens" Date: Mon, 29 Apr 2002 09:20:21 +0000 Subject: [LARTC] Ultimate Traffic Conditioner MIME-Version: 1 Content-Type: multipart/mixed; boundary="----=_NextPart_000_006E_01C1EF6F.D9833EB0" Message-Id: List-Id: To: lartc@vger.kernel.org This is a multi-part message in MIME format. ------=_NextPart_000_006E_01C1EF6F.D9833EB0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable 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 E-mail: Jan.Coppens@intec.rug.ac.be Phone: +32 (0)9 267 35 90 Fax: +32 (0)9 267 35 99 ------=_NextPart_000_006E_01C1EF6F.D9833EB0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi all,
 
When I try to run the ultimate traffic = conditioner=20 (cbq implementation), I get this strange output:
 
 
/tc# ./ultimate
/tc# tc filter show dev eth1
filter = parent 1:=20 protocol ip pref 10 u32
filter parent 1: protocol ip pref 10 u32 fh = 803: ht=20 divisor 1
filter parent 1: protocol ip pref 10 u32 fh 803::800 order = 2048 key=20 ht 803 bkt 0 flowid 1:20
  match 00000000/00000000 at = 16
filter=20 parent 1: protocol ip pref 10 u32 fh 802: ht divisor 1
filter parent = 1:=20 protocol ip pref 10 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid=20 1:10
  match 00060000/00ff0000 at = 8
  match=20 05000000/0f00ffc0 at 0
  match 00100000/00ff0000 at 32
filter = parent=20 1: protocol ip pref 10 u32 fh 801: ht divisor 1
filter parent 1: = protocol ip=20 pref 10 u32 fh 801::800 order 2048 key ht 801 bkt 0 flowid = 1:10
  match=20 00010000/00ff0000 at 8
filter parent 1: protocol ip pref 10 u32 fh = 800: ht=20 divisor 1
filter parent 1: protocol ip pref 10 u32 fh 800::800 order = 2048 key=20 ht 800 bkt 0 flowid 1:10
  match 00100000/00ff0000 at = 0
filter parent=20 1: protocol ip pref 11 u32
filter parent 1: protocol ip pref 11 u32 = fh 803:=20 ht divisor 1
filter parent 1: protocol ip pref 11 u32 fh 803::800 = order 2048=20 key ht 803 bkt 0 flowid 1:20
  match 00000000/00000000 at = 16
filter=20 parent 1: protocol ip pref 11 u32 fh 802: ht divisor 1
filter parent = 1:=20 protocol ip pref 11 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid=20 1:10
  match 00060000/00ff0000 at 8
  match = 05000000/0f00ffc0 at=20 0
  match 00100000/00ff0000 at 32
filter parent 1: protocol = ip pref=20 11 u32 fh 801: ht divisor 1
filter parent 1: protocol ip pref 11 u32 = fh=20 801::800 order 2048 key ht 801 bkt 0 flowid 1:10
  match=20 00010000/00ff0000 at 8
filter parent 1: protocol ip pref 11 u32 fh = 800: ht=20 divisor 1
filter parent 1: protocol ip pref 11 u32 fh 800::800 order = 2048 key=20 ht 800 bkt 0 flowid 1:10
  match 00100000/00ff0000 at = 0
filter parent=20 1: protocol ip pref 12 u32
filter parent 1: protocol ip pref 12 u32 = fh 803:=20 ht divisor 1
filter parent 1: protocol ip pref 12 u32 fh 803::800 = order 2048=20 key ht 803 bkt 0 flowid 1:20
  match 00000000/00000000 at = 16
filter=20 parent 1: protocol ip pref 12 u32 fh 802: ht divisor 1
filter parent = 1:=20 protocol ip pref 12 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid=20 1:10
  match 00060000/00ff0000 at 8
  match = 05000000/0f00ffc0 at=20 0
  match 00100000/00ff0000 at 32
filter parent 1: protocol = ip pref=20 12 u32 fh 801: ht divisor 1
filter parent 1: protocol ip pref 12 u32 = fh=20 801::800 order 2048 key ht 801 bkt 0 flowid 1:10
  match=20 00010000/00ff0000 at 8
filter parent 1: protocol ip pref 12 u32 fh = 800: ht=20 divisor 1
filter parent 1: protocol ip pref 12 u32 fh 800::800 order = 2048 key=20 ht 800 bkt 0 flowid 1:10
  match 00100000/00ff0000 at = 0
filter parent=20 1: protocol ip pref 13 u32
filter parent 1: protocol ip pref 13 u32 = fh 803:=20 ht divisor 1
filter parent 1: protocol ip pref 13 u32 fh 803::800 = order 2048=20 key ht 803 bkt 0 flowid 1:20
  match 00000000/00000000 at = 16
filter=20 parent 1: protocol ip pref 13 u32 fh 802: ht divisor 1
filter parent = 1:=20 protocol ip pref 13 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid=20 1:10
  match 00060000/00ff0000 at 8
  match = 05000000/0f00ffc0 at=20 0
  match 00100000/00ff0000 at 32
filter parent 1: protocol = ip pref=20 13 u32 fh 801: ht divisor 1
filter parent 1: protocol ip pref 13 u32 = fh=20 801::800 order 2048 key ht 801 bkt 0 flowid 1:10
  match=20 00010000/00ff0000 at 8
filter parent 1: protocol ip pref 13 u32 fh = 800: ht=20 divisor 1
filter parent 1: protocol ip pref 13 u32 fh 800::800 order = 2048 key=20 ht 800 bkt 0 flowid 1:10
  match 00100000/00ff0000 at=20 0
/tc#
 
As you can see, the script adds way to = many u32=20 filters. I did some testing, and figured out the problem has something = to do=20 with the different priorities. when I give each u32 filter the same = priority, I=20 get the right number of filters.
 
Is this output correct? If not, what = can be the=20 problem?
 
thanks,
Jan
 
---
Jan Coppens
Ghent University = -=20 IMEC
 
Department of Information Technology=20 (INTEC)
Broadband Communication Networks (IBCN)
 
Sint-Pietersnieuwstraat, 41
B-9000,=20 Gent
Belgium
 
E-mail: Jan.Coppens@intec.rug.ac.be
Phone:=20 +32 (0)9 267 35 90
Fax: +32 (0)9 267 35 99
------=_NextPart_000_006E_01C1EF6F.D9833EB0-- _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/