Thanks very much for the response Andreas. Ah ha! It's just me not explaining myself very well, then. So, could someone please comment on whether this general rule is correct please? root QDISC(HTB) handle=1:0 | | CLASS(HTB) classid=1:1 ceil=<max> rate=<max> | +----------------+--------+--------+----------------+ | | | | CLASS(HTB) CLASS(HTB) CLASS(HTB) CLASS(HTB) classid=1:11 classid=1:12 classid=1:1(<n>-1) classid=1:1<n> prio=1 prio=1 prio=2 prio=2 ceil=<max> ceil=<max> ceil=<max> ceil=<max> rate=(<max>/<n>) rate=(<max>/<n>) rate=(<max>/<n>) rate=(<max>/<n>) So, if (as in this case) there are 4 classes and say the maximum rate was 100kbps, each would receive an equal amount of guaranteed bandwidth (<max>/<n> === 100kbps/4 = 25kbps) but if there were spare bandwidth available, classes 1:11 and 1:12 would share the extra equally (because they have identical rate values) but if 1:11 and 1:13 were contending for extra bandwidth (for instance), 1:13 would only receive that which 1:11 didn't use. Obviously I understand that the child classes could have varying rate and ceil values to be tuned for whatever specific use someone wanted to put them to, but this is simply a basic example. Many thanks, Mark Lidstone IT and Network Support Administrator BMT SeaTech Ltd Grove House, Meridians Cross, 7 Ocean Way Ocean Village, Southampton. SO14 3TJ. UK Tel: +44 (0)23 8063 5122 Fax: +44 (0)23 8063 5144 E-Mail: mailto:mark.lidstone@xxxxxxxxxxxxxxxx Website: www.bmtseatech.co.uk ======================================================================== == Confidentiality Notice and Disclaimer: The contents of this e-mail and any attachments are intended only for the use of the e-mail addressee(s) shown. If you are not that person, or one of those persons, you are not allowed to take any action based upon it or to copy it, forward, distribute or disclose the contents of it and you should please delete it from your system. BMT SeaTech Limited does not accept liability for any errors or omissions in the context of this e-mail or its attachments which arise as a result of Internet transmission, nor accept liability for statements which are those of the author and not clearly made on behalf of BMT SeaTech Limited. ======================================================================== == -----Original Message----- From: lartc-bounces@xxxxxxxxxxxxxxx [mailto:lartc-bounces@xxxxxxxxxxxxxxx] On Behalf Of Andreas Klauer Sent: 05 December 2005 18:15 To: lartc@xxxxxxxxxxxxxxx Subject: Re: HTB - prio and rate On Monday 05 December 2005 10:40, Mark Lidstone wrote: > 1) The sum of all HTB classes under a single HTB qdisc should add up > to the maximum rate of the qdisc A HTB qdisc does not have a rate; it's the classes that do. And it's not all classes, but just parent-children relationship. The sum of the children class rates should be the parent class rate. Maximum rate doesn't sound right either; just to avoid misunderstandings, we're talking about rate here, not ceil. Think of rate as 'this much bandwidth is guaranteed at all times for this class (and divided between the children)', then you should get it about right. > 2) HTB's prio is only used when 'borrowing' bandwidth from other > classes under the same HTB qdisc, then classes with a given prio will > only be able to "borrow" bandwidth when classes with a lower prio have > nothing waiting "classes under the same HTB qdisc" is too general. You have to respect parent / child / sibling relationship as well. A class can't just borrow from any other class. For example, if a class has same rate and ceil, it won't borrow anything, simply because it doesn't have to. And if the parent won't borrow, it's children won't borrow from outside classes either, even though they are "under the same qdisc". > Is this correct? Getting there, I think. Regards, Andreas Klauer _______________________________________________ LARTC mailing list LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc _______________________________________________ LARTC mailing list LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc