Discussion of explicit congestion notification's impact on the Internet
 help / color / mirror / Atom feed
From: Sebastian Moeller <moeller0@gmx.de>
To: "Holland, Jake" <jholland@akamai.com>
Cc: Jonathan Morton <chromatix99@gmail.com>,
	"ecn-sane@lists.bufferbloat.net" <ecn-sane@lists.bufferbloat.net>,
	bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Ecn-sane] [Bloat] [tsvwg] [iccrg] Fwd: [tcpPrague] Implementation and experimentation of TCP Prague/L4S hackaton at IETF104
Date: Thu, 21 Mar 2019 00:30:51 +0100	[thread overview]
Message-ID: <05D67B58-BB95-461B-A9E8-F7A5DC771D05@gmx.de> (raw)
In-Reply-To: <5AAAE942-12C9-4D5F-B04A-36A4A61C3501@akamai.com>

Hi Jake,


> On Mar 21, 2019, at 00:11, Holland, Jake <jholland@akamai.com> wrote:
> 
> I think it's a fair point that even as close as the non-home side
> of the access network, fq would need a lot of queues, and if you
> want something in hardware it's going to be tricky.  I hear
> they're up to an average of ~6k homes per OLT.

	Except they state "In practice it would also be important to de- ploy AQM in the residential gateway, but to minimise side-effects we kept upstream traffic below capacity." meaning in addition to the OLT/BNG/whatever shaper they also envision a shaper on the CPE. And I believe there is ample evidence (in openwrt with sqm-scripts) that in that case the downstream shaper can also be put on the CPE with reasonable success. 


> 
> I don't think the default assumption here should be that they
> missed something obvious, but rather that they're trying to
> solve a hard problem, and something with a classifier has a
> legitimate value.

	I agree, except ECT(1) clearly is a very approximate "classifier" as it can not distinguish the L4S-ness of CE marked packets, which affects both the AQM part which will treat non-L4S traffic as false positive as well as TCP Prague endpoints that will mistreat CE-marked packets as L4S signals even if the CE mark is from a TCP-friendly AQM. I note that neither "‘Data Centre to the Home’: Ultra-Low Latency for All" nor "PI2: A Linearized AQM for both Classic and Scalable TCP" seem to discuss these classification errors and their effects on real traffic in sufficient depth.
It is one thing to soak of one of the last few available "codepoints" in the IP headers, but it is another in my book to do so and not reliably being able to extract the encoded information. At least from my layman's perspective I wonder why this does not seem to bother anybody here?

> 
> The question to me is about how much it breaks other things to
> extract that value, and how much you get out of it in the end.

	That is basically the core of my question above, how much do you get out in the end?

>  If you need fq and therefore the only viable place for AQM with good
> results is on the home side of the router, that's got some bad
> deployment problems too.

	As I state above, even the L4S project position seems to be that AQM on the CPE/router is essential, so we are only haggling about how much AQM needs to be done on the router. But from that perspective, I would not be unhappy if my ISP would employ a lower latency AQM solution upstream of my router than they currently do, sort of as a belt and suspender approach to have my router's back in cases of severe packet inrush.

Best Regards
	Sebastian

> 
> Just my 2c.
> 
> -Jake
> 
> On 2019-03-20, 15:56, "Sebastian Moeller" <moeller0@gmx.de> wrote:
> 
> 
> 
>> On Mar 20, 2019, at 23:31, Jonathan Morton <chromatix99@gmail.com> wrote:
>> 
>>> On 21 Mar, 2019, at 12:12 am, Sebastian Moeller <moeller0@gmx.de> wrote:
>>> 
>>> they see 20ms queue delay with a 7ms base link delay @ 40 Mbps
>> 
>> At 40Mbps you might as well be running Cake, and thereby getting 1ms inter-flow induced delay; an order of magnitude better.  And we achieved that o a shoestring budget while they were submarining for a patent application.
>> 
>> If we're supposed to be impressed…
> 
>    Nah, there is this GEM:
> 
> 
>    Comparing Experiments 5, 7 with 6, 8, we can again conclude that our DualQ AQM very much approximates the fq CoDel AQM without the need for flow identi- fication and more complex processing. The main ad- vantage is DualQ’s lower queuing delay for L4S traffic.
> 
>    So for normal traffic is is worse than fq_codel and better for traffic that does behave TCP-friendly, for which it was bespoke made. So at least they shoud have pimped fq_codel/cake to emit their required CE marking regime and do a test against that, if the goal is to compare apples and apples. I note that they do come into this with a grudge against fq "Per-flow queuing:  Similarly per-flow queuing is not incompatible with the L4S approach.  However, one queue for every flow can be thought of as overkill compared to the minimum of two queues for 
>    all traffic needed for the L4S approach.  The overkill of per-flow queuing has side-effects:" followed by a list of 4 more or less straw-man arguments. Heck these might be actually reasonable arguments at their core, but the short description in the RFC is fishy.
>    I believe the coupling between the two queues to be clever and elegant, but the whole premise seems odd to me. What they should have done, IMHO is teach their AQM something like SCE so it can easily react to CE and drops in a standard compliant TCP-friendly fashion, and only do the clever window/rate adjustments if the AQM signals ECT(1), add fair queueing to separate the different TCP variants behavior from each other, and bang no classification bit needed. And no patent (assuming the patent covers the coupling between the two queues)... I am sure I am missing something here, it can not be that simple.
> 
> 
>    Best Regards
>    	Sebastian
> 
>    P.S.: How did the SCE-Talk go, interesting feed-back and discussions?
> 
> 
> 
>> 
>> - Jonathan Morton
>> 
> 
>    _______________________________________________
>    Bloat mailing list
>    Bloat@lists.bufferbloat.net
>    https://lists.bufferbloat.net/listinfo/bloat
> 
> 


  parent reply	other threads:[~2019-03-20 23:30 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <AM0PR07MB48198660539171737E4CCAB1E0730@AM0PR07MB4819.eurprd07.prod.outlook.com>
     [not found] ` <d91a6a71-5898-9571-2a02-0d9d83839615@bobbriscoe.net>
2019-03-15 10:46   ` [Ecn-sane] " Dave Taht
     [not found]     ` <1E80578D-A589-4CA0-9015-B03B63042355@gmx.de>
2019-03-15 14:06       ` [Ecn-sane] [Bloat] " Dave Taht
2019-03-15 15:52         ` Sebastian Moeller
2019-03-15 17:01           ` David P. Reed
2019-03-15 17:45             ` Sebastian Moeller
2019-03-15 18:36             ` Mikael Abrahamsson
2019-03-15 19:23               ` Sebastian Moeller
2019-03-15 19:32               ` Jonathan Morton
2019-03-15 19:44                 ` David P. Reed
2019-03-15 20:13                   ` Jonathan Morton
2019-03-15 23:43                     ` David P. Reed
2019-03-16  1:26                       ` Jonathan Morton
2019-03-16  7:38                       ` Sebastian Moeller
2019-03-16 18:56                         ` Michael Richardson
2019-03-15 20:28                 ` Jonathan Foulkes
2019-03-15 20:31                   ` Dave Taht
2019-03-15 23:45                     ` David P. Reed
2019-03-16  9:42                       ` Michael Welzl
2019-03-16 10:08                         ` Sebastian Moeller
2019-03-16 10:23                           ` Nils Andreas Svee
2019-03-16 14:55                             ` Jonathan Foulkes
2019-03-16 21:38               ` Holland, Jake
2019-03-16 21:57                 ` Vint Cerf
2019-03-16 22:03                   ` Dave Taht
2019-03-16 22:05                   ` Holland, Jake
2019-03-17 18:07                   ` David P. Reed
2019-03-17 18:05                     ` Vint Cerf
2019-03-19  4:44                     ` Greg White
2019-03-19  5:35                       ` Jonathan Morton
2019-03-19  5:52                         ` Greg White
2019-03-19  7:10                           ` Jonathan Morton
2019-03-19  8:07                             ` Sebastian Moeller
2019-03-19  8:50                       ` Sebastian Moeller
2019-03-19 23:59                       ` Dave Taht
2019-03-20 10:17                         ` Sebastian Moeller
     [not found]                     ` <5458c216-07b9-5b06-a381-326de49b53e0@bobbriscoe.net>
     [not found]                       ` <AC14ACBB-A7CC-40E0-882C-2519D05ADC05@akamai.com>
     [not found]                         ` <5C9296E1.4010703@erg.abdn.ac.uk>
     [not found]                           ` <F62C4839-0489-475F-AD8F-58913EEEEC0F@gmail.com>
     [not found]                             ` <FDA48F4C-415B-4B8E-9CC7-2AAAD4DC3BE8@cablelabs.com>
2019-03-20 22:12                               ` [Ecn-sane] [Bloat] [tsvwg] " Sebastian Moeller
2019-03-20 22:31                                 ` Jonathan Morton
2019-03-20 22:56                                   ` Sebastian Moeller
2019-03-20 23:03                                     ` Jonathan Morton
2019-03-20 23:11                                     ` Holland, Jake
2019-03-20 23:28                                       ` Jonathan Morton
2019-03-21  8:15                                         ` Mikael Abrahamsson
2019-03-21  8:31                                           ` Mikael Abrahamsson
2019-03-20 23:30                                       ` Sebastian Moeller [this message]
2019-03-21  0:15                                         ` Holland, Jake
2019-03-16 22:03                 ` [Ecn-sane] [Bloat] " Jonathan Morton
2019-03-16 22:09                 ` Sebastian Moeller
2019-03-17 14:06                 ` Mikael Abrahamsson
2019-03-17 17:37                   ` Loganaden Velvindron
2019-03-17 17:40                     ` Toke Høiland-Jørgensen
2019-03-17 17:44                     ` Mikael Abrahamsson
2019-03-17 18:00                       ` Dave Taht
2019-03-17 19:38                     ` Rodney W. Grimes
2019-03-17 20:50                   ` Luca Muscariello
2019-03-17 21:51                     ` Toke Høiland-Jørgensen
2019-03-18  4:26                     ` Mikael Abrahamsson
2019-03-16  4:04             ` Jonathan Morton
2019-03-16  4:51               ` Dave Taht
2019-03-15 18:07         ` Mikael Abrahamsson
2019-03-15 14:27       ` Jonathan Morton
2019-03-15 14:44         ` Sebastian Moeller
2019-03-15 15:49           ` Jonathan Morton
2019-03-15 21:34     ` Wesley Eddy

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=05D67B58-BB95-461B-A9E8-F7A5DC771D05@gmx.de \
    --to=moeller0@gmx.de \
    --cc=bloat@lists.bufferbloat.net \
    --cc=chromatix99@gmail.com \
    --cc=ecn-sane@lists.bufferbloat.net \
    --cc=jholland@akamai.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