From: Sebastian Moeller <moeller0@gmx.de>
To: Jonathan Morton <chromatix99@gmail.com>,
Alex Elsayed <eternaleye@gmail.com>
Cc: bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] Bloat done correctly?
Date: Fri, 12 Jun 2015 21:54:30 +0200 [thread overview]
Message-ID: <628F8092-841C-42DA-861B-C60C36457B04@gmx.de> (raw)
In-Reply-To: <CAJq5cE2K9KkoidCKD_Jw1Xn9Ric5S7UyXnzGYn3rURM8n0xPpw@mail.gmail.com>
Hi Jonathan,
On June 12, 2015 9:14:02 PM GMT+02:00, Jonathan Morton <chromatix99@gmail.com> wrote:
>We have a test in Flent which tries to exercise this case: 50 flows in
>one
>direction and 1 in the other, all TCP. Where the 50 flows are on the
>narrow
>side of an asymmetric link, it is possible to see just what happens
>when
>there isn't enough bandwidth for the acks of the single opposing flow.
>
>What I see is that acks behave like an unresponsive flow in themselves,
>but
>one that is reasonably tolerant to loss (more so than to delay). On a
>standard AQM, the many flows end up yielding to the acks; on a
>flow-isolating AQM, the acks are restricted to a fair (1/51) share, but
>enough of them are dropped to (eventually) let the opposing flow get
>most
>of the available bandwidth on its side. But on an FQ without AQM, acks
>don't get dropped so they get delayed instead, and the opposing flow
>will
>be ack clocked to a limited bandwidth until the ack queue overflows.
>
>Cake ends up causing odd behaviour this way. I have a suspicion about
>why
>one of the weirder effects shows up - it has to get so aggressive about
>dropping acks that the count variable for that queue wraps around.
>Implementing saturating arithmetic there might help.
>
>There is a proposed TCP extension for ack congestion control, which
>allows
>the ack ratio to be varied in response to ack losses. This would be a
>cleaner way to achieve the same effect, and would allow enabling ECN on
>the
>acks, but it's highly experimental.
This is reducing the ACK-rate to make losses less likely, but at the same time it makes a single loss more costly, so whether this is a win depends on whether the sparser ACK flow has a much higher probability to pass trough the congested link. I wonder what percentage of an ACK flow can be dropped without slowing the sender?
>
>- Jonathan Morton
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Bloat mailing list
>Bloat@lists.bufferbloat.net
>https://lists.bufferbloat.net/listinfo/bloat
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
next prev parent reply other threads:[~2015-06-12 19:55 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-12 4:45 Benjamin Cronce
2015-06-12 9:08 ` Sebastian Moeller
2015-06-12 15:33 ` Benjamin Cronce
2015-06-12 17:51 ` Sebastian Moeller
2015-06-12 18:44 ` Benjamin Cronce
2015-06-12 18:51 ` Alex Elsayed
2015-06-12 19:14 ` Jonathan Morton
2015-06-12 19:54 ` Sebastian Moeller [this message]
2015-06-12 21:19 ` Benjamin Cronce
2015-06-12 19:21 ` Sebastian Moeller
2015-06-12 22:56 ` Alex Elsayed
2015-06-13 7:13 ` Sebastian Moeller
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/bloat.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=628F8092-841C-42DA-861B-C60C36457B04@gmx.de \
--to=moeller0@gmx.de \
--cc=bloat@lists.bufferbloat.net \
--cc=chromatix99@gmail.com \
--cc=eternaleye@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