[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Serious rate problems with both CBQ and TBF

I'm still fiddling with the scenario posted previously (Search for
'Bandwidth limiting 'virtual' subnets...' in
ftp://lrcftp.epfl.ch/pub/linux/diffserv/mailing-list/archive.1) and I've
made some headway. It would seem that the configuration is working as
intended in terms of routing, filtering and so on however the bounded
rates being imposed by CBQ are very, very wrong... 

Configuring the offending class using:

/sbin/tc class change dev eth0 parent 1:0 classid 1:2 cbq bandwidth
100Mbit rate 56Kbit allot 1514 cell 8 weight 5Kbit prio 5 bounded
isolated maxburst 1 avpkt 1000

 yields a rate cap of about 690 Kbytes/sec, which is slightly under 100
times the expected cap of 7.1Kbytes/sec

Decreasing values further:

/sbin/tc class change dev eth0 parent 1:0 classid 1:2 cbq bandwidth
100Mbit rate 10Kbit allot 1514 cell 8 weight 1Kbit prio 5 bounded
isolated maxburst 1 avpkt 1000

 gives 130Kbytes/sec, fractionally over 100 times the expected rate of

Running the same tests with TBF instead of CBQ gives:
	Requested: 256Kbit	Should be: 32Kbytes/sec	Got:
1800Kbytes/sec (56.25 times too high)
	Requested: 128Kbit	Should be: 16Kbytes/sec	Got:
890Kbytes/sec (55.625 times too high)
	Requested: 56Kbit	Should be: 7Kbytes/sec		Got:
360Kbytes/sec (51.42 times too high)

 I'm now intensely confused! I've re-read most of the list archive and
can't see any other report of this problem so I'm inclined to point the
finger at something particular to this box, such as an insufficiently
fine grain system clock (relative to the NIC bandwidth?), bad
interaction with send timers in the updated NIC driver or similar. Take
a look at the configuration below and see if anything catches your eye

 32Mb Ram
 Intel Pro/100 server adapter (running full duplex 100mbit to a HP
Procurve 2424m)

 Redhat 6.0, tweaked to 2.2.12-20
 Patched with Free/SWAN IPSec support, Moreton Bay PPTP server support,
Intel Pro/100 driver fixes (eepro100.c rev:1.18; Andrey V. Savochkin)

User space tools:
 iproute2 package dated March 5th, 2000 (most recent RELNOTES entry is
000305) I know this one is old, but I've been working on this for quite
a while :-(