Cake - FQ_codel the next generation
 help / color / mirror / Atom feed
From: Jonathan Morton <chromatix99@gmail.com>
To: "Toke Høiland-Jørgensen" <toke@toke.dk>
Cc: cake@lists.bufferbloat.net
Subject: Re: [Cake] Long-RTT broken again
Date: Thu, 5 Nov 2015 21:30:47 +0200	[thread overview]
Message-ID: <C9FFACC4-BD0B-46A2-871B-58DD5313A292@gmail.com> (raw)
In-Reply-To: <87ziysldij.fsf@toke.dk>


> On 5 Nov, 2015, at 16:36, Toke Høiland-Jørgensen <toke@toke.dk> wrote:
> 
> Jonathan Morton <chromatix99@gmail.com> writes:
> 
>> So, again - what’s going on?  Are there any clues in packet traces
>> with sequence analysis?
> 
> So, reran and took traces. Data and packet dumps at:
> https://kau.toke.dk/experiments/cake/longrtt/
> 
> There's two runs: the first one is what's in git now, the second one
> patches the byte accounting to use the packet length rather than the
> truesize, which helps a bit but is still inadequate.
> 
> The packet dumps and cake stats output agree: cake is running out of
> buffer size. ECN is enabled on this test, and there's not a single mark
> performed, but several thousand drops.
> 
> So something is definitely wrong with the buffer sizing.

Firstly: I can’t read the flent output with the version of flent currently available to pip.  It complains about “version 3” files being unsupported as yet.

Running the captures through tcptrace shows that the traffic on each flow is very bursty, and that the bursts are roughly synchronised, leading to synchronised drop bursts.  It reads like a massive advertisement for TCP Pacing, and this time cake’s shaper isn’t enough to emulate it.  (Perhaps a bigger buffer would sort that out.)

Taking one such synchronised drop burst as representative, the sum of outstanding data on all four flows in that direction is less than 6MB at that moment.  This is on the version which I think you’ve patched, and I assume the figure also includes data “in flight” in the delay line, not just in cake’s buffer.  It’s difficult to reconcile that with the nominal 15MB limit.  The absolute peak within-flow induced delay is 150ms, which corresponds to 1.5MB, not 15MB - that’s suspicious.

I also get the impression that CUBIC’s RTT-insensitive behaviour isn’t helping matters.  I’d be interested to see how more traditional algorithms (Reno and Westwood+ in particular) cope with this situation.

I’ll try to reproduce the problem locally, then see what I can do to fix it.

 - Jonathan Morton


  reply	other threads:[~2015-11-05 19:30 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-02 16:53 Toke Høiland-Jørgensen
2015-11-02 18:29 ` Sebastian Moeller
2015-11-03  1:39   ` Jonathan Morton
2015-11-03  8:20     ` Sebastian Moeller
2015-11-03  8:25       ` Jonathan Morton
2015-11-03  8:34         ` Sebastian Moeller
2015-11-03 10:29           ` Kevin Darbyshire-Bryant
2015-11-03 11:08             ` Sebastian Moeller
2015-11-03 11:45               ` Toke Høiland-Jørgensen
2015-11-03 11:57       ` Toke Høiland-Jørgensen
2015-11-03 12:41         ` Sebastian Moeller
2015-11-03 11:50     ` Toke Høiland-Jørgensen
2015-11-03 16:43       ` Jonathan Morton
2015-11-03 17:05         ` Toke Høiland-Jørgensen
2015-11-03 17:11           ` Sebastian Moeller
2015-11-03 17:25             ` Toke Høiland-Jørgensen
2015-11-03 17:31               ` Jonathan Morton
2015-11-03 17:33                 ` Toke Høiland-Jørgensen
2015-11-03 17:46                   ` Sebastian Moeller
2015-11-03 17:49                     ` Toke Høiland-Jørgensen
2015-11-03 17:52                       ` Sebastian Moeller
2015-11-03 17:54                         ` Toke Høiland-Jørgensen
2015-11-03 17:57                           ` Sebastian Moeller
2015-11-03 17:59                             ` Toke Høiland-Jørgensen
2015-11-03 18:06                               ` Sebastian Moeller
2015-11-03 19:17                                 ` Jonathan Morton
2015-11-03 19:24                                   ` Sebastian Moeller
2015-11-05 14:36         ` Toke Høiland-Jørgensen
2015-11-05 19:30           ` Jonathan Morton [this message]
2015-11-06 11:00             ` Toke Høiland-Jørgensen
2015-11-06 14:15               ` Toke Høiland-Jørgensen
2015-11-06 15:09                 ` Toke Høiland-Jørgensen
2015-11-07  5:02                 ` Jonathan Morton
2015-11-07  5:16                   ` Dave Taht
2015-11-07  6:49                     ` Jonathan Morton
2015-11-07  8:48                   ` Toke Høiland-Jørgensen
2015-11-07 10:51                     ` Jonathan Morton
2015-11-07 13:06                       ` Jonathan Morton
2015-11-07 13:42                         ` Toke Høiland-Jørgensen
2015-11-07 16:34                         ` Toke Høiland-Jørgensen
2015-11-07 13:44                       ` Toke Høiland-Jørgensen
2015-11-07 15:08                       ` Sebastian Moeller
2015-11-07 16:24                         ` Toke Høiland-Jørgensen
2015-11-07 18:25                           ` Sebastian Moeller
2015-11-07 19:32                           ` Kevin Darbyshire-Bryant
2015-11-08 16:29                             ` Dave Taht
2015-11-11 10:23                               ` Kevin Darbyshire-Bryant

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=C9FFACC4-BD0B-46A2-871B-58DD5313A292@gmail.com \
    --to=chromatix99@gmail.com \
    --cc=cake@lists.bufferbloat.net \
    --cc=toke@toke.dk \
    /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