Re: Changing default qdisc from pfifo to sfq

Linux Advanced Routing and Traffic Control

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

 



If you've got the sysctl, you've got fq_codel. Try that in addition to SFQ.

On Thu, Oct 2, 2014 at 7:49 AM, Akshat Kakkar <akshat.1984@xxxxxxxxx> wrote:
> Thanks for the sysctl option. That might help.
>
> Regarding 64K limit, as shown in the example you have given, the leaf
> handle can only be from 1: to fffe: i.e. 64K. total class limit can be
> 64K * 64K i.e 4G but for the lead SFQ ( as SFQ handle can't have minor
> number) so for an interface, it can at max be fffe i.e. 64K. Is my
> understanding correct on this? or do you want to say that for class
> handle 1:1 I can define 64K SFQs and then for class handle 1:2 I can
> again have 64K SFQs???
>
> On Tue, Sep 30, 2014 at 7:04 PM, Remy Mudingay <remy.mudingay@xxxxxxxxx> wrote:
>> Hi Akshat,
>>
>> The 65K (65535) limit is only for a specific handle and not the
>> maximum number of classes that one can create on a system. You can
>> create/attach more classes but you need to give them a new (leaf)
>> handle for your sfq qdiscs.
>>
>> Here's an example (using htb) ;
>>
>> tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbit ceil 100mbit
>>
>> tc class add dev eth0 parent 1:1 classid 1:10 htb rate 100kbit ceil 1mbit
>>
>> ....
>>
>> tc class add dev eth0 parent 1:1 classid 1:ffe htb rate 100kbit ceil 1mbit
>>
>>
>>
>> tc qdisc add dev eth0 parent 1:1 handle 1: sfq
>>
>> tc qdisc add dev eth0 parent 1:ffe handle ffff: sfq
>>
>>
>> To answer your question about setting a default qdisc. This is
>> possible from a specific kernel version (I can't recall which version)
>> but I know that 3.11 and onwards support setting it either via sysctl
>> ;
>>
>> net.core.default_qdisc = sfq
>>
>>  or by issuing  ;
>>
>>  echo "sfq" > /proc/sys/net/core/default_qdisc
>>
>>
>> The changes are effective (when using sysctl.conf) after a reboot or
>> when adding after adding a qdisc and then deleting it from an
>> interface.
>>
>> I hope that helps.
>>
>>
>> Remy
>>
>>
>>
>>
>> On 30 September 2014 14:16, Akshat Kakkar <akshat.1984@xxxxxxxxx> wrote:
>>>
>>> If I want to define classes more than 64k (i.e. ffff), I need to use
>>> class hierarchy  or nested classes.
>>> But, if I want to give each one of them SFQ then I can't do that, as
>>> then I will have to define separate qdisc for each one of them and
>>> each SFQ will require to be given a handle starting from  1: and
>>> ending at fffe: i.e. only 64K and not more then that. For classes not
>>> having SFQ (as the number is exhausted), the qdisc remains as SFQ.
>>>
>>> So in a way, each leaf class gets a queue for sure but not SFQ.
>>>
>>> Is there a way, to make SFQ as the default qdisc so that we don't have
>>> to specify it separately and hence will never run short of them?
>>>
>>> I apologise if I have confused the things.
>>>
>>> Thanks in anticipation.
>>> --
>>> 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
>> --
>> 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
> --
> 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



-- 
Dave Täht

https://www.bufferbloat.net/projects/make-wifi-fast
--
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