[LARTC] wondershaper prio question

Linux Advanced Routing and Traffic Control

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

 



Referencing the cbq wondershaper as a discussion example, let me ask a stupid 
question with regard to how the rules actually work and what they actually 
do.

"Prio" is discussed in the howto as a qdisc, but in the wondershaper, it 
appears to be a cbq parameter rather than a qdisc in its own right.  My 
question is this:

If the outgoing queue is full of traffic identified as "traffic we hate", or 
1:30 at prio 2, what exactly is the behavior of the system for a ping packet, 
for example, which should classify as 1:10 at prio 1?  Does the ping packet 
bypass the 1:30 line, because it's prio is lower? (discounting stochastic 
fairness behavior)

If, as is the case with 1:20 and 1:30 in the wondershaper, the prio is 
identical but bandwidth is different, how exactly does the system behave?  
Will it look at every outbound packet in the queue, make a bandwidth 
decision, and then either send the packet or skip it?  Let's assume the 
example as above - a queue full of 1:30 traffic, and here comes a 1:20 
packet.  I'm guessing the kernel is cycling through each 1:30 packet and 
deciding not to forward it yet, then coming to the 1:20 packet, and 
forwarding it because 1:20's bandwidth is higher.

As I understand it, if we were to analogize this process with a line (queue 
for our UK friends) at a resturaunt, for example, the first situation, with 
two different prios, would take the form of two differnt lines, such that 
(again, discounting sfq for the purposes of discussion) no one in the prio 2 
line could be seated if anyone was standing in the prio 1 line.

The second situation, with the same prio level for each queue, would be 
represented by a single line, but where the matre'd asks the first person a 
question to determine their queue class, finds that the resturaunt is at its 
maximum level for that type of "customer", then moves on to the second in 
line and so on until reaching the 1:20 "customer", who then is removed from 
the back of the line and seated.

Is this the meaning of "prio" in the wondershaper?  If not, what's really 
happening?



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