Re: Problem with HTB bandwidth slicing when using TCP traffic

Linux Advanced Routing and Traffic Control

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

 



Thanks for your references. I has been looking for an updated HTB script for over two years and has done my own version of experiments. Results were not good and I was about to give up.

Horace Ng

----- Original Message -----
From: "Dave Taht" <dave.taht@xxxxxxxxx>
To: "Andy Furniss" <adf.lists@xxxxxxxxx>
Cc: "Slavica Tomovic" <slavicat.cg@xxxxxxxxx>, lartc@xxxxxxxxxxxxxxx
Sent: Monday, April 14, 2014 4:17:29 AM
Subject: Re: Problem with HTB bandwidth slicing when using TCP traffic

On Sun, Apr 13, 2014 at 12:43 PM, Andy Furniss <adf.lists@xxxxxxxxx> wrote:
> Slavica Tomovic wrote:
>>
>> Thank you Andy!
>>
>> I had changed limit values and that solved the problem.
>>
>> However, I did it  by typing command like this for each created
>> queue:
>>
>> tc qdisc add dev eth0 parent 1:10 handle 20: pfifo limit 10
>>
>> Is there some command with which I can change default limit size so
>> that I don't have to this every time I create class?
>
>
> I guess you could change the txqlen on eth0 before setting up the htb,
> but I would just make a script and use qdiscs.
>
> limit 10 may be a bit short, also you could consider other qdiscs to
> pfifo eg. if you wanted some fairness between flows you could use sfq or
> fq_codel.

No, limit 10 is a lot short. 50-100 is more reasonable for a fifo at
these speeds.

> sfq defaults would be fine fq_codel may need some parameters tweaking
> for lower bit rates, though I haven't properly tested it yet, just
> guessing from what man tc-fq_codel says.

sfq is a pretty good choice at low bandwidths and on older versions of
linux  (particularly as fq_codel is heavily backported from linux 3.6
but not available everywhere). In addition to fair queuing, sfq has a
hard packet limit iof 127 packets by default, which gives decent
performance in the range of bandwidths below 10mbit.

At rates below 3Mbit fq_codel needs a bit a tweaking we've discovered,
basically it helps to have a "target" parameter > the cost of a single MTU's
packet - e.g at 1Mbit, we tend to use a target of 15 and an interval of 150,
.5mbit 30, 300. Above 4mbit target and interval are fine with the defaults.

Changing the default quantum helps also at rates below 40Mbit - we use 300.

For way more detail on how this stuff works,

http://www.bufferbloat.net/projects/cerowrt/wiki/Wondershaper_Must_Die

see cerowrt's SQM code...

and the related codel and fq_codel internet drafts...

>
>
> --
> 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

NSFW: https://w2.eff.org/Censorship/Internet_censorship_bills/russell_0296_indecent.article
--
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