Re: prio queue not working as expected?

Linux Advanced Routing and Traffic Control

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

 



All correct except that you need to classify from the prio class to the leaf qdisc, which in your case is tbf.
I strongly recommend testing this further. 
1. Create the prio qdisc with priomap but without attaching leaf qdisc's to the prio classes. 
2. Then test again by attaching qdiscs to your prio class.
3. Finally test using your current setup but include classification rules.  

Test 1 and 3 will both work.

Remy.


Sent from my iPhone 

On Jun 21, 2013, at 11:09, Wolfgang Hennerbichler <wogri@xxxxxxxxx> wrote:

> On Jun 21, 2013, at 11:03 , Remy Mudingay <remy.mudingay@xxxxxxxxx> wrote:
> 
>> Thanks for providing more info.
>> Firstly, the checksum error stems from tcp offloading on the local interface (wan0).
> 
> Thank you. I didn't know about TOE and it's implication before. 
> 
>> However, the prio qdisc does require the addition of filters when attaching qdisc's to prio classes. Take a look at the following  example :
>> 
>> http://d3s.mff.cuni.cz/~ceres/sch/osy/text/ch06s02s04.html
> 
> wow. Did I misunderstand the prio-qdisc? 
> from man tc-prio
> 
> CLASSIFICATION
>       Three methods are available to PRIO to determine in which band a packet will be enqueued.
> …
>       with the priomap
>              Based on the packet priority, which in turn is derived from the Type of Service assigned to the packet.
> 
>              The priomap maps the priority of a packet to a class. The priority can either be  set  directly  from  userspace,  or  be
>              derived from the Type of Service of the packet.
> 
>              Determines  how  packet priorities, as assigned by the kernel, map to bands. Mapping occurs based on the TOS octet of the
>              packet, which looks like this:
> … 
> 
> to me it seems to be the case that the prio-qdisc would be intelligent enouth to priorize for me. 
> 
> 
>> Remy
>> On Jun 21, 2013, at 7:42, Wolfgang Hennerbichler <wogri@xxxxxxxxx> wrote:
>> 
>>> 
>>> -- 
>>> http://www.wogri.at
>>> 
>>> On Jun 21, 2013, at 05:11 , Remy Mudingay <remy.mudingay@xxxxxxxxx> wrote:
>>> 
>>>> Hi Wolfgang,
>>>> 
>>>> Can you post the output from 'tc -s class dev wan0' and also include
>>>> all filters for matching scp, ssh and telnet.
>>> 
>>> Hi Remy, 
>>> 
>>> tc -s class show dev wan0
>>> class prio 1:1 parent 1: leaf 10: 
>>> Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
>>> backlog 0b 0p requeues 0 
>>> class prio 1:2 parent 1: leaf 20: 
>>> Sent 97189 bytes 678 pkt (dropped 11, overlimits 409 requeues 0) 
>>> backlog 0b 0p requeues 0 
>>> class prio 1:3 parent 1: leaf 30: 
>>> Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
>>> backlog 0b 0p requeues 0 
>>> class tbf 20:1 parent 20: 
>>> 
>>> (this is after doing some fiddling with an interactive ssh session). 
>>> There are no filters (neither tc nor iptables mangles), as far as I've understood prio should priorize according to it's priomap. 
>>> 
>>> here's a tcpdump: 
>>> 
>>> 05:39:28.048426 IP (tos 0x10, ttl 64, id 60303, offset 0, flags [DF], proto TCP (6), length 52)
>>>   x.x.x.x.50356 > y.y.y.y.22: Flags [.], cksum 0x545e (incorrect -> 0xc7ca), seq 0, ack 433, win 653, options [nop,nop,TS val 31327537 ecr 1639911627], length 0
>>> 
>>> oh. and maybe this is my issue: i see an incorrect checksum here on all those packets. maybe this is causing the troubles. is there a chance that this is happening because my interface is bridged? hm. I wonder how to deal with this (the actual communication works, btw). 
>>> 
>>> Wolfgang
>>> 
>>>> Cheers,
>>>> 
>>>> Remy
> 
--
To unsubscribe from this list: send the line "unsubscribe lartc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




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