RE: [LARTC] Question on prio qdisc

Linux Advanced Routing and Traffic Control

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

 



Hi, Joseph:

At 03:31 p.m. 08/07/03 -0400, you wrote:

I understand your point, but I have tried to determine
the answers to a couple of questions from the code
without success (I don't understand the source code
well enough). Maybe you could answer these:
1) If I specify a queue length for the interface
by configuring "txqueuelen" to some number (say 1000), then
does that mean that the 3 FIFO queues for the 3 bands
in either "prio" scheduler or the default "pfifo_fast" scheduler are set each
to a size of 1000 packets? If this is the case, then I don't
see how my high priority queue can drop packets when the high
priority flow rate is well below what the link can support.
Can you think of any reason this should happen?

Have a look to a previous e-mail I answered to Lars. Reason? What´s the entering rate? What's the departing rate? The queue will be filled to a rate defined by the difference between those rates.


2) My testing leads me to believe that there are 3 queues,
but the buffer allocated for a new packet enqueued to
any of the queues is allocated from a common pool of buffers
that might be of size equal to "txqueuelen" = 1000. Is it
possible that it is implemented this way? I could see
high priority packets being dropped if this was the
implementation?
******************************************

No, again, have a look to a previous e-mail I sent to Lars.


Best regards,

Leonardo Balliache

Here you have a copy of Lars' e-mail:

I'm not very sure if the total queue length is 100 or 300 because I was
searching the code and I can't find any information that tell me what the
real length is.

Because "ip link" shows me that qlen is 100, I have to suppose that total
length is 100.

But anyway, PRIO queing discipline principle calls that each priority queue
is independent, then we can't have the prio 0 queue full of prio 1 or 2
packets (being the filters working well). It goes against the PRIO queuing
discipline principle.

In "Differentiated Service on Linux HOWTO" (work in progress) I present
a PRIO queuing discipline explanation using some documentation taken
from Juniper Networks. Have a look at http://opalsoft.net/qos.

Also if you read about Cisco PQ the principle is identical. If we don't
respect the principle, then the queue can be any sort of queue, but
certainly, not a PRIO queue. Then it´s not posible to ask on PRIO for something
that drops an already enqueue packet to make run for a new arriving one.

I suggest that configurations and tests made to reach that conclusions were revised.





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