From: Jonathan Morton <chromatix99@gmail.com>
To: Valent Turkovic <valent@otvorenamreza.org>
Cc: Outback Dingo <outbackdingo@gmail.com>,
make-wifi-fast@lists.bufferbloat.net,
"cerowrt-devel@lists.bufferbloat.net"
<cerowrt-devel@lists.bufferbloat.net>
Subject: Re: [Make-wifi-fast] [Cerowrt-devel] routers you can throw off the back of a truck
Date: Mon, 18 Jan 2016 13:29:05 +0200 [thread overview]
Message-ID: <F5B322C4-8671-4143-81E8-8E5458276416@gmail.com> (raw)
In-Reply-To: <CAGOios4VMSHV5r8OrFvKn+JJG84YBk7sSg-TL=YPij1mXz+tMg@mail.gmail.com>
> On 18 Jan, 2016, at 11:43, Valent Turkovic <valent@otvorenamreza.org> wrote:
>
> Can you please share your sqm qos script, or just how you invoke tc
> manually and I'll test it on my routers and see what happens then:)
The autorate_ingress option is just a flag. Specify it after the bandwidth parameter to give it a sane starting point, say 1Mbit. I think some of the more recent GUIs have a field for “advanced” or “experimental” options like this. Once it sees some traffic, it should settle down reasonably quickly to the real link capacity, minus a small margin to establish itself as the bottleneck.
Eg: tc qdisc replace dev ifb0 root cake bandwidth 1Mbit autorate_ingress
As a reminder, autorate_ingress only works *downstream* of the bottleneck link. Use it on the external interface’s *ingress* if possible.
> From your presentation I see that if we had a daemon working in
> background and somehow measured tcp latency (how?) and then we could
> use it to raise/lower bandwidth limits on cake until we get best
> possible results. Ideally I would like to use a queueing mechanism
> that auto-configures everything.
Right. The autorate_ingress feature works entirely in kernelspace, and effectively takes care of the downstream half of the equation. The upstream half turns out to be a much harder problem, because we can only measure the uplink capacity when it is saturated, and typical consumer traffic doesn’t do that very often. If we did have a saturating bulk upstream TCP flow, then we could examine its RTT profile in userspace, under the assumption that the downlink was taken care of.
One reasonable approach might be to use a userspace tool to periodically scrape the downlink speed out of autorate_ingress, and set the uplink speed to some fixed fraction of that (using tc qdisc change, for least disruption). It might even make sense for 3G to inherently have such a ratio. If it does, does anyone know what it is?
> @everybody any ideas how to tweak current "simple.qos" and
> "simplest.qos" scripts in OpenWrt for 3G and fiber optics? On fiber
> optic connection idle latency is around 30ms and on 3G connection is
> around 60ms, do I need to change 5ms default in fq_codel to these
> values? How?
These are essentially internet-scale latencies, especially if you’re just pinging the gateway immediately beyond the link, so the defaults will work fine. The most recent versions of tc-adv include a set of intuitive keywords to specify commonly-encountered RTT ranges; the one for “internet” is 100ms, which corresponds to the Codel default parameters.
The 5ms figure is the target *queuing* latency, which should be considerably less than the estimated RTT; you really don’t want to be consistently adding 60ms of queuing on top of your 60ms inherent 3G latency.
- Jonathan Morton
next prev parent reply other threads:[~2016-01-18 11:29 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-17 18:46 [Make-wifi-fast] " Dave Taht
2016-01-17 20:32 ` [Make-wifi-fast] [Cerowrt-devel] " Outback Dingo
[not found] ` <CAGOios74tbFyHaKHDYhTatBUX0_Xt+My0UZ3OqaMbTcN6Yy_GA@mail.gmail.com>
2016-01-18 8:30 ` Jonathan Morton
[not found] ` <CAGOios4VMSHV5r8OrFvKn+JJG84YBk7sSg-TL=YPij1mXz+tMg@mail.gmail.com>
2016-01-18 10:51 ` Alan Jenkins
2016-01-18 11:29 ` Jonathan Morton [this message]
[not found] ` <CAGOios4JvvHjNkiCRt0f4DPb2em71+pkV2kd8hD-BHk_SE8+nQ@mail.gmail.com>
2016-01-18 23:01 ` Jonathan Morton
[not found] ` <CAGOios6-S=mJfdLkwNS2JCqWx_jNApy3sLsDofXgAfXWLSd-4A@mail.gmail.com>
[not found] ` <CAGOios6EKmbX29zBOcJZG7P3Gd=bGr2XBjWJwoF0Y=Q=WPFK7Q@mail.gmail.com>
2016-01-21 23:40 ` Valent Turkovic
2016-01-22 6:37 ` Jonathan Morton
2016-01-22 7:11 ` moeller0
2016-03-13 11:17 ` Valent Turkovic
2016-01-18 16:14 ` Michael Richardson
2016-01-18 23:06 ` Jonathan Morton
2016-01-19 1:06 ` Michael Richardson
2016-01-22 7:23 ` moeller0
2016-01-22 7:05 ` moeller0
2016-01-18 20:26 ` Dave Taht
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://lists.bufferbloat.net/postorius/lists/make-wifi-fast.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=F5B322C4-8671-4143-81E8-8E5458276416@gmail.com \
--to=chromatix99@gmail.com \
--cc=cerowrt-devel@lists.bufferbloat.net \
--cc=make-wifi-fast@lists.bufferbloat.net \
--cc=outbackdingo@gmail.com \
--cc=valent@otvorenamreza.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox