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]

 



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




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