From: xnor <xnoreq@gmail.com>
To: "Jonathan Morton" <chromatix99@gmail.com>
Cc: "Cake List" <cake@lists.bufferbloat.net>
Subject: Re: [Cake] cake vs fqcodel with 1 client, 4 servers
Date: Wed, 06 Dec 2017 19:32:58 +0000 [thread overview]
Message-ID: <em5473e9e0-9c02-4716-a155-5825497bb98d@gaming> (raw)
In-Reply-To: <CAJq5cE2qLW5_C1gJ0UgrD-kgbsErU1MW5D7zZzesxz53=j0h1Q@mail.gmail.com>
>At those speeds, you probably still have a large enough BDP per flow
>that TCP can respond appropriately. I'm testing at 512Kbps, where it's
>easy to get into single-packet BDPs.
I've tried again with 96 connections to the same server, so 196 Kbps
each, and that reduces the gross download rate from over 17 to below 10
Mpbs.
The inbound interface still receives 18.7 Mbps and crude latency
measurements with a ping running at the same time show only a slight
increase on average.
The only problem I have with this (besides the amount of perfectly good
received data that needs to be discarded without ECN to keep TCP in
check... that's terrible protocol design) is that I do get 3x to 4x
spikes over the steady state latency when the download begins. That's
with "just" 16 additional connections starting.
>A first-pass dynamic target adjustment is now pushed, and running here.
> It doesn't solve the problem completely, probably because it doesn't
>guarantee 4xMTU, only 1xMTU, but it looks like it might be beginning to
>help and I'm pretty sure it's the correct approach. Tuning it from
>here should be easy.
>
I don't know exactly what you're adjusting and what you're adjusting to,
but I see two things that would help:
1) Reduce the amount of data that needs to be dropped.
Maybe the "pattern" of how packets are dropped can be improved such that
on *average* the sender sends at the same rate but overall less data
needs to be dropped at the receiver.
For example, instead of dropping the just received packet because it
exceeded some threshold and doing this for each packet it could make
more sense to drop multiple packets at once, making the sender to slow
down significantly.
The problem with this of course would be a more pronounced zig-zag
pattern in the bandwidth (with the implementation either limiting on the
peaks or average rate).
(I'm not sure if this makes sense given common TCP implementations.)
2) Predict the slope of the bandwidth and slow down the sender
proactively, especially during slow-start.
If the connection is in an exponential speed up phase then we have to
drop packets *before* we notice that the current (or even worse:
average) rate is above the configured rate. The situation gets worse if
multiple connections are in that phase at the same time, and ideally
that would have to be accounted for as well.
Those are just some suggestions. I haven't studied cake's implementation
so maybe it already does something like that.
next prev parent reply other threads:[~2017-12-06 19:32 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-04 22:30 Georgios Amanakis
2017-12-05 0:06 ` Dave Taht
2017-12-05 1:13 ` Georgios Amanakis
2017-12-05 1:38 ` Jonathan Morton
2017-12-05 3:50 ` George Amanakis
2017-12-05 4:48 ` Jonathan Morton
2017-12-05 21:15 ` Dave Taht
2017-12-05 21:26 ` Georgios Amanakis
2017-12-05 22:39 ` xnor
2017-12-06 9:37 ` Jonathan Morton
2017-12-06 19:32 ` xnor [this message]
[not found] ` <CAJq5cE3MUfCuV_=GXAAOwvAXxee_dcJBaUkRVAEEWwyT5m7gAw@mail.gmail.com>
2017-12-07 1:59 ` Jonathan Morton
2017-12-07 2:27 ` Jonathan Morton
2017-12-07 2:30 ` George Amanakis
2017-12-07 2:58 ` George Amanakis
2017-12-07 3:04 ` Jonathan Morton
2017-12-07 3:08 ` Georgios Amanakis
2017-12-07 7:08 ` Jonathan Morton
2017-12-07 8:21 ` Jonathan Morton
2017-12-07 8:51 ` Kevin Darbyshire-Bryant
2017-12-07 9:03 ` Jonathan Morton
2017-12-07 13:17 ` Georgios Amanakis
2017-12-07 22:12 ` xnor
2017-12-07 22:34 ` Georgios Amanakis
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/cake.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=em5473e9e0-9c02-4716-a155-5825497bb98d@gaming \
--to=xnoreq@gmail.com \
--cc=cake@lists.bufferbloat.net \
--cc=chromatix99@gmail.com \
/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