On Sun, Dec 09, 2001 at 09:06:47PM -0800, Don Cohen wrote: > > On a 100Mbit card connected to a 256kbit line, I used something like: > > > > tc qdisc add dev eth0 root handle 1: cbq \ > > bandwidth 100Mbit avpkt 1000 > > tc class add dev eth0 parent 1:0 classid 1:1 cbq \ > > bandwidth 100Mbit rate 256kbit [...] > > tc qdisc add dev eth0 parent 1:1 handle 10: cbq \ > > bandwidth 256kbit allot 1514 avpkt 1000 > > This bandwidth (256 above) is NOT the physical device bandwidth. These are cbq's within cbq's, for which there is generally no need. When specifying 'bandwidth' with qdisc add, it *must* be the bandwidth of the physical interface, or when the cbq is embedded within another cbq (ie, when using 'tc qdisc add dev eth0 parent' as opposed to 'tc qdisc add dev eth0 root'), it should be the bandwidth available to the class you attach it to. Because that bandwidth may not be fixed, embedding cbq's within cbq's rarely makes sense. Specifying 'bandwidth' with 'tc class add' only makes sense when specifying minburst or maxburst, and is ONLY used for calculating those two, when specified. You can safely omit it in fact. *If* specifying it, I'm not sure if it should be: o The rate of the parent class; or o The bandwidth of the interface > > bandwidth rate > > This is different from the bandwidth specified when creating a CBQ disc. Only > > used to determine maxidle and offtime, which are only calculated when > > specifying maxburst or minburst. Mandatory if specifying maxburst or minburst. > > Great. So maybe you should tell us what the value is supposed to mean! Maybe I should charge money. Do you see my point? Regards, bert -- http://www.PowerDNS.com Versatile DNS Software & Services Trilab The Technology People Netherlabs BV / Rent-a-Nerd.nl - Nerd Available - 'SYN! .. SYN|ACK! .. ACK!' - the mating call of the internet