RE: Re: PQ questions

Linux Advanced Routing and Traffic Control

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

 



Hi Christian,

Thanks for the help. Please see my in-line comments:

> -----Original Message-----
> From: lartc-bounces@xxxxxxxxxxxxxxx [mailto:lartc-bounces@xxxxxxxxxxxxxxx]
> On Behalf Of Christian Benvenuti
> Sent: Thursday, June 14, 2007 4:44 PM
> To: lartc@xxxxxxxxxxxxxxx
> Subject:  Re: PQ questions
> 
> Hi,
> 
> >Hi all,
> >
> >First, let me say I've been most impressed with how quickly and
> >professionally people on this list ask and answer questions.
> >
> >Next, let me say that with which I need help is properly configuring
> strict
> >PQ, and gathering certain stats. Specifically:
> >
> >- I need to create a priority queue with four queues (let's say they are
> of
> >high, medium, normal, and low priority)
> >
> >- I need to use tc filters such that:
> >
> >	- EF (0xB8) goes to the high priority queue
> >
> >	- AF21 (0x50) goes to the medium priority queue
> >
> >	- AF11 (0x28) goes to the normal priority queue, and
> >
> >	- BE traffic goes to the low priority queue
> >
> >- For stat collection, I need to see:
> >
> >	- how many bytes and packets are in each of the four queues
> >
> >- My configuration thus far is:
> >
> >tc qdisc add dev eml_test root handle 1: prio bands 4 priomap 0 1 2 3
> >
> >tc filter add dev eml_test parent 1:0 prio 1 protocol ip u32 match ip tos
> >0xb8 0xff flowid 1:1
> >
> >tc filter add dev eml_test parent 1:0 prio 2 protocol ip u32 match ip tos
> >0x80 0xff flowid 1:2
> >
> >tc filter add dev eml_test parent 1:0 prio 3 protocol ip u32 match ip tos
> >0x50 0xff flowid 1:3
> >
> >tc filter add dev eml_test parent 1:0 prio 4 protocol ip u32 match ip tos
> >0x00 0xff flowid 1:4
> >__________
> 
> Here is an article you may find useful:
> 	http://citeseer.ist.psu.edu/539891.html
> 
> Here is the description of the configuration parameters of the
> PRIO qdisc:
> 	http://www.lartc.org/howto/lartc.qdisc.classful.html#AEN903
>         (just in case you did not know what the "priomap" option is
>          used for)
> 
> >My questions are:
> >
> >- What if anything is missing/requiring change in my config given the
> stated
> >requirements?
> 
> Your config does not prevent an higher priority class from starving
> a lower priority class.

Exactly. That is requirement.

> You can prevent it in two different ways (at
> least):

Don't want to prevent it right now.

> 
> 1) You can assign a TBF qdisc (Token Bucket) to the PRIO classes
>    TBF: http://www.lartc.org/howto/lartc.qdisc.classless.html#AEN691
> 
> 2) You can replace the PRIO qdisc with something like HTB/CBQ
>    CBQ: http://www.lartc.org/howto/lartc.qdisc.classful.html#AEN939
>    HTB: http://luxik.cdi.cz/~devik/qos/htb/
> 
> >- What if any command should I use to view how many bytes and packets are
> in
> >each of the four queues?
> 
> The PRIO qdisc does not return statistics for its classes.
> However, a simple workaround consists of explicitly adding
> a qdisc to the four classes.
> By default the PRIO qdisc assigns a pFIFO (packet FIFO) qdisc to
> its classes.
> Here is how you can replace the 4 default pFIFO qdisc with 4
> explicit pFIFO qdisc:
> 
> tc qdisc add dev eml_test parent 1:1 pfifo limit 1000
> tc qdisc add dev eml_test parent 1:2 pfifo limit 1000
> tc qdisc add dev eml_test parent 1:3 pfifo limit 1000
> tc qdisc add dev eml_test parent 1:4 pfifo limit 1000
> 
> Now you can get the stats with:
> 	tc -s -d qdisc list dev eml_test

Those stats are nice to have, but the ones I must have are for how many
bytes/packets are enqueued at whatever time I check the queues. 

> 
> Regards
> /Christian
> [ http://benve.info ]
> 

I have tried to configure PQ to have two queues per filter with no success.
Is it even possible to have (what I'll call) hierarchical PQ? I have yet to
find it.

> 
> 
> 
> 
> _______________________________________________
> 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

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux