Hi, --- Stef Coene <stef.coene@xxxxxxxxx> wrote: > You have 2 types of qdiscs. The root qdisc is > attached to the device it self > and all packets are queued in this qdisc. If this > is a class-full qdisc > (like htb or cbq) you can add class. A class can > contain some packets. You > can stack the classes so you can add a class to a > class. So a packet enters > the root qdisc and is redirected to a class by a > filter. You need to create > your filters in such way that the packets are placed > in a class that contains > no other classes. This class is named a leaf class. all this is agreed ... > But the leaf class only contains the traffic and can > not send them. To do so, > you need to add a qdisc to that class. It's the > qdisc that will send the > packets. This can be a class-full qdisc so you can now, if you are saying a class differs from a qdisc in that it cannot send out packets and qdisc can ... i think that is not perfectly true, in that, if a fifo qdisc was attached as a child to a classful qdisc (say cbq) the fifo qdisc will not be able to send packets out directly, it has to dequeue to the parent and only the root can dequeue-out. > add classes, and restart > the setup. But that will be a waste of CPU cycles. > It's better to add a sfq > qdisc or a fifo. > > So, you have 1 root qdisc, some classes, some > special classes : leaf-classes > and an other set of qdiscs. > Pfifo holds packet, so the total bytes depends on > the size of your packets : which (size of the packet) could vary, right? this would then lead to a dynamically sized queue, is this how it works? > > 3) 'HTB is suited for fixed bandwidth' ... by > "fixed" > > what exactly is meant ... meaning can it be used ... > Fixed means that you always have the same bandwidth > available on the link. So > no burst. This is needed because you have to make > sure YOU are the > bottleneck so if you have a 1000kbit/s link, you > have to make sure you never > send more then 996kbit/s. > > > 4) Can somebody suggest which qdisc is most ideal > (for > > shaping and scheduling) in a n/w where the ISP > provies > > a (512Kbit) pipe, which is shared by multiple (4) > > clients but, an average of 45bytes can be expected > at > > any point in time (although, it might exceed > this)? > That's a difficult one, because YOU have to be the > bottleneck to get some good > shaping results. You can try the htb or the cbq > qdisc and take a higher ceil > then your link. You will not be the bottleneck and > loose some control. okey, so can you please tell me, if I fail to be the bottleneck, what maximum would happen ... IMO, I could carry on shaping but not for that extra few bytes, now available, right? > > 5) The lartc howto speaks about 'mpu' with > reference > > to TBF, and states "for ethernet, no packet uses ... > > Also, I am unable to see such a parameter when I > do a > > tc...help, for TBF. > Sorry, no idea. :) > > 6) Could you please define the 'cell' parameter in > a > > CBQ? > If you have a bounded class, the ceil is the rate. > If it's not bounded, the > ceil will be the rate of a bounded parent class. 'ceil' IMHO, is a little different from 'cell', that the lartc howto talks about. > > Also, I am unable to see maxburst, minburst, > minidle, > > mpu, rate parameter options when I do a ... for > ex. : > > 'tc qdisc add dev eth0 handle 1 root cbq help' > Just take some example tc commands and copy the > parameters you don't know. > The only parameters you have to change is rate and > weight. yeah, but the lartc howto talks about more ... so was wondering! > > 7) How do I set WRR, link sharing and borrowing > > parameters using TC? > Do you mean the wrr qdisc? See the homepage of the > wrr qdisc. oops, I am sorry I meant according to the lartc howto, there are few WRR parameters that need to be set for CBQ!? > > 8) Also, please pardon my ignorance but, do I need > a > > filter for a classless qdisc, cause if I were to > > attach a classless qdisc to the root qdisc then by > > default all packets enter this qdisc and I believe > I > > wouldn't have the scope to classify ... > right/wrong? > Do you mean adding a class qdisc as the root qdisc > or adding a class qdisc to > a root qdisc? If you replace the root qdisc with a > class less qdisc, you > don't need a filter. If you add the class root > qdisc to a root qdisc, you > need a root qdisc with classes and add the class > qdisc to a class. So you > need some filters to put the packets from the root > qdisc to the class where > the class qdisc is attached to. > More information on the subject can be found on > http://www.docum.org. IMHO, the root qdisc (by default) is a pfifo_fast (classless) qdisc ... which means if want a classful qdisc you would need to replace the default qdisc. By "replace", I mean attach it to root ... which then follows all packets 'enter here' ... which then gets me back to my original Q! have been to your site ... went back today ... but couldn't find pointers to my confusion. Kindly, correct my understanding, if required. Thank you, for all your help. Regards, suraj. __________________________________ Do you Yahoo!? Exclusive Video Premiere - Britney Spears http://launch.yahoo.com/promos/britneyspears/ _______________________________________________ LARTC mailing list / LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/