From: Jonathan Morton <chromatix99@gmail.com>
To: "Holland, Jake" <jholland@akamai.com>
Cc: "De Schepper,
Koen (Nokia - BE/Antwerp)" <koen.de_schepper@nokia-bell-labs.com>,
"ecn-sane@lists.bufferbloat.net"
<ecn-sane@lists.bufferbloat.net>,
"tsvwg@ietf.org" <tsvwg@ietf.org>
Subject: Re: [Ecn-sane] [tsvwg] Comments on L4S drafts
Date: Wed, 10 Jul 2019 03:10:15 +0300 [thread overview]
Message-ID: <2C1424C2-039A-4915-9219-2CB579DA9613@gmail.com> (raw)
In-Reply-To: <D231681B-1E57-44E1-992A-E8CC423926B6@akamai.com>
[-- Attachment #1: Type: text/plain, Size: 2866 bytes --]
> On 8 Jul, 2019, at 11:55 pm, Holland, Jake <jholland@akamai.com> wrote:
>
> Also, I think if the SCE position is "low latency can only be
> achieved with FQ", that's different from "forcing only FQ on the
> internet", provided the fairness claims hold up, right? (Classic
> single queue AQMs may still have a useful place in getting
> pretty-good latency in the cheapest hardware, like maybe PIE with
> marking.)
In support of this viewpoint, here are some illustrative time-series graphs showing SCE behaviour in a variety of contexts. These are all simple two-flow tests plus a sparse latency probe flow, conducted using Flent, over a 50Mbps, 80ms RTT path under lab conditions.
First let's get the FQ case out of the way, with Reno-SCE competing against plain old Reno. Here you can see Reno's classic sawtooth, while FQ keeps the latency of sparse flows sharing the link low; the novelty is that Reno-SCE is successfully using almost all of the capacity left on the table by plain Reno's sawtooth. This is basically ideal behaviour, enabled by FQ.
If we then disable FQ and run the same test, we find that Reno-SCE yields very politely to plain Reno, again using only leftover capacity. From earlier comments, I gather that a similar graph was seen by the L4S team at some point in their development. Here we can see some small delay spikes, just before AQM activates to cut the plain Reno flow down.
Conversely, if we begin the SCE marking ramp only when CE marking also begins, we get good fairness between the two flows, in the same manner as with a conventional AQM - because both flows are mostly receiving only conventional AQM signals. The delay spikes also reflect that fact, and a significant amount of capacity goes unused. I gather that this scenario was also approximately seen during L4S development.
Our solution - which required only a few days' thought and calculation to define - is to make the SCE ramp straddle the AQM activation threshold, for single-queue situations only. The precise extent of straddling is configurable to suit different network situations; here is the one that works best for this scenario. Fairness between the two flows remains good; mostly the CE marks are going to the plain Reno flow, while the SCE flow is using the remaining capacity fairly effectively. Notice however that the delay plateaus due to the weakened SCE signalling:
Compare this to single-queue SCE vs SCE performance in a single queue, using the basic SCE ramp which lies entirely below the AQM threshold:
And with the straddling ramp:
And with the SCE ramp entirely above the threshold:
And, finally, the *real* ideal situation - SCE vs SCE with FQ:
I hope this reassures various people that we do, in fact, know what we're doing over here.
- Jonathan Morton
[-- Attachment #2.1: Type: text/html, Size: 5164 bytes --]
[-- Attachment #2.2: PastedGraphic-1.png --]
[-- Type: image/png, Size: 134772 bytes --]
[-- Attachment #2.3: PastedGraphic-2.png --]
[-- Type: image/png, Size: 142683 bytes --]
[-- Attachment #2.4: PastedGraphic-3.png --]
[-- Type: image/png, Size: 165646 bytes --]
[-- Attachment #2.5: PastedGraphic-4.png --]
[-- Type: image/png, Size: 171245 bytes --]
[-- Attachment #2.6: PastedGraphic-5.png --]
[-- Type: image/png, Size: 171513 bytes --]
[-- Attachment #2.7: PastedGraphic-6.png --]
[-- Type: image/png, Size: 172226 bytes --]
[-- Attachment #2.8: PastedGraphic-7.png --]
[-- Type: image/png, Size: 187005 bytes --]
[-- Attachment #2.9: PastedGraphic-8.png --]
[-- Type: image/png, Size: 140303 bytes --]
next prev parent reply other threads:[~2019-07-10 0:10 UTC|newest]
Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-05 0:01 [Ecn-sane] " Holland, Jake
2019-06-07 18:07 ` Bob Briscoe
2019-06-14 17:39 ` Holland, Jake
2019-06-19 14:11 ` Bob Briscoe
2019-07-10 13:55 ` Holland, Jake
2019-06-14 20:10 ` [Ecn-sane] [tsvwg] " Luca Muscariello
2019-06-14 21:44 ` Dave Taht
2019-06-15 20:26 ` [Ecn-sane] [tsvwg] CoIt'smments " David P. Reed
2019-06-19 1:15 ` [Ecn-sane] [tsvwg] Comments " Bob Briscoe
2019-06-19 1:33 ` Dave Taht
2019-06-19 4:24 ` Holland, Jake
2019-06-19 13:02 ` Luca Muscariello
2019-07-04 11:54 ` Bob Briscoe
2019-07-04 12:24 ` Jonathan Morton
2019-07-04 13:43 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-04 14:03 ` Jonathan Morton
2019-07-04 17:54 ` Bob Briscoe
2019-07-05 8:26 ` Jonathan Morton
2019-07-05 6:46 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-05 8:51 ` Jonathan Morton
2019-07-08 10:26 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-08 20:55 ` Holland, Jake
2019-07-10 0:10 ` Jonathan Morton [this message]
2019-07-10 9:00 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-10 13:14 ` Dave Taht
2019-07-10 17:32 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-17 22:40 ` Sebastian Moeller
2019-07-19 9:06 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-19 15:37 ` Dave Taht
2019-07-19 18:33 ` Wesley Eddy
2019-07-19 20:03 ` Dave Taht
2019-07-19 22:09 ` Wesley Eddy
2019-07-19 23:42 ` Dave Taht
2019-07-24 16:21 ` Dave Taht
2019-07-19 20:06 ` Black, David
2019-07-19 20:44 ` Jonathan Morton
2019-07-19 22:03 ` Sebastian Moeller
2019-07-20 21:02 ` Dave Taht
2019-07-21 11:53 ` Bob Briscoe
2019-07-21 15:30 ` [Ecn-sane] Hackathon tests Dave Taht
2019-07-21 15:33 ` [Ecn-sane] [tsvwg] Comments on L4S drafts Sebastian Moeller
2019-07-21 16:00 ` Jonathan Morton
2019-07-21 16:12 ` Sebastian Moeller
2019-07-22 18:15 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-22 18:33 ` Dave Taht
2019-07-22 19:48 ` Pete Heist
2019-07-25 16:14 ` De Schepper, Koen (Nokia - BE/Antwerp)
2019-07-26 13:10 ` Pete Heist
2019-07-26 15:05 ` [Ecn-sane] The state of l4s, bbrv2, sce? Dave Taht
2019-07-26 15:32 ` Dave Taht
2019-07-26 15:37 ` Neal Cardwell
2019-07-26 15:45 ` Dave Taht
2019-07-23 10:33 ` [Ecn-sane] [tsvwg] Comments on L4S drafts Sebastian Moeller
2019-07-21 12:30 ` Bob Briscoe
2019-07-21 16:08 ` Sebastian Moeller
2019-07-21 19:14 ` Bob Briscoe
2019-07-21 20:48 ` Sebastian Moeller
2019-07-25 20:51 ` Bob Briscoe
2019-07-25 21:17 ` Bob Briscoe
2019-07-25 22:00 ` Sebastian Moeller
2019-07-26 10:20 ` [Ecn-sane] [tsvwg] Compatibility with singlw queue RFC3168 AQMs Sebastian Moeller
2019-07-26 14:10 ` Black, David
2019-07-26 16:06 ` Sebastian Moeller
2019-07-26 19:58 ` Black, David
2019-07-26 21:34 ` Sebastian Moeller
2019-07-26 16:15 ` Holland, Jake
2019-07-26 20:07 ` Black, David
2019-07-26 23:40 ` Jonathan Morton
2019-08-07 8:41 ` Mikael Abrahamsson
2019-08-07 10:06 ` Mikael Abrahamsson
2019-08-07 11:57 ` Jeremy Harris
2019-08-07 12:03 ` Mikael Abrahamsson
2019-08-07 12:14 ` Sebastian Moeller
2019-08-07 12:25 ` Mikael Abrahamsson
2019-08-07 12:34 ` Jeremy Harris
2019-08-07 12:49 ` Mikael Abrahamsson
[not found] ` <5D34803D.50501@erg.abdn.ac.uk>
2019-07-21 16:43 ` [Ecn-sane] [tsvwg] Comments on L4S drafts Black, David
2019-07-21 12:30 ` Scharf, Michael
2019-07-19 21:49 ` Sebastian Moeller
2019-07-22 16:28 ` Bless, Roland (TM)
2019-07-19 17:59 ` Sebastian Moeller
2019-07-05 9:48 ` Luca Muscariello
2019-07-04 13:45 ` Bob Briscoe
2019-07-10 17:03 ` Holland, Jake
[not found] <HE1PR07MB4425603844DED8D36AC21B67C2110@HE1PR07MB4425.eurprd07.prod.outlook.com>
2019-06-14 18:27 ` Holland, Jake
[not found] ` <HE1PR07MB4425E0997EE8ADCAE2D4C564C2E80@HE1PR07MB4425.eurprd07.prod.outlook.com>
2019-06-19 12:59 ` Bob Briscoe
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/ecn-sane.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2C1424C2-039A-4915-9219-2CB579DA9613@gmail.com \
--to=chromatix99@gmail.com \
--cc=ecn-sane@lists.bufferbloat.net \
--cc=jholland@akamai.com \
--cc=koen.de_schepper@nokia-bell-labs.com \
--cc=tsvwg@ietf.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