Re: [tsvwg] Gorry Fairhurst Individual thoughts on choosing whether/how to advance ECN work.

Gorry Fairhurst <gorry@erg.abdn.ac.uk> Sat, 16 May 2020 11:44 UTC

Return-Path: <gorry@erg.abdn.ac.uk>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F0A603A0AC6 for <tsvwg@ietfa.amsl.com>; Sat, 16 May 2020 04:44:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.003
X-Spam-Level:
X-Spam-Status: No, score=0.003 tagged_above=-999 required=5 tests=[SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rNzCmNOMVVcB for <tsvwg@ietfa.amsl.com>; Sat, 16 May 2020 04:44:54 -0700 (PDT)
Received: from pegasus.erg.abdn.ac.uk (pegasus.erg.abdn.ac.uk [137.50.19.135]) by ietfa.amsl.com (Postfix) with ESMTP id 46CA63A08FB for <tsvwg@ietf.org>; Sat, 16 May 2020 04:44:53 -0700 (PDT)
Received: from [192.168.1.74] (fgrpf.plus.com [212.159.18.54]) by pegasus.erg.abdn.ac.uk (Postfix) with ESMTPSA id ADB0D1B00226; Sat, 16 May 2020 12:44:41 +0100 (BST)
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: Gorry Fairhurst <gorry@erg.abdn.ac.uk>
Mime-Version: 1.0 (1.0)
Date: Sat, 16 May 2020 12:44:40 +0100
Message-Id: <399C8D41-AF1A-460A-B87C-F1F7C6EB0BCD@erg.abdn.ac.uk>
References: <DDBA6185-1267-4CDA-BE77-550AA57446F5@gmail.com>
Cc: Pete Heist <pete@heistp.net>, Joseph Touch <touch@strayalpha.com>, "tsvwg@ietf.org" <tsvwg@ietf.org>
In-Reply-To: <DDBA6185-1267-4CDA-BE77-550AA57446F5@gmail.com>
To: Jonathan Morton <chromatix99@gmail.com>
X-Mailer: iPad Mail (17D50)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/za-mS6m7Q2HvEQi_9woZw7DcpiA>
Subject: Re: [tsvwg] Gorry Fairhurst Individual thoughts on choosing whether/how to advance ECN work.
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 16 May 2020 11:44:56 -0000

I do not think this relates to the topics I raised in the subject line. You see. To have cut my points and started a new thread.

To be clear, I don’t see how the impact of a non-conformant flow, is a topic that concerns whether the ECN work can progress. I agree it is a design issue for transports irrespective of ECN  - since I also expect TCP Reno v. A non-Reno flow can do poorly in a loss-based queue, not just an ECN queue.

Gorry

Sent from my iPad

> On 15 May 2020, at 23:53, Jonathan Morton <chromatix99@gmail.com> wrote:
> 
> 
>> 
>>> On 16 May, 2020, at 1:14 am, Pete Heist <pete@heistp.net> wrote:
>>> 
>>> Conversely, it is straightforward to demonstrate a case in L4S where lying gains a significant advantage for the liar: a sender may mark its traffic ECT(0) but then implement DCTCP-style congestion control.  The demonstrated in-network component of L4S does not protect against this, and at least some existing networks are also vulnerable to it.
>> 
>> For a test result along these lines, the plot below shows CUBIC vs Prague when:
>> 1) disabling bottleneck detection (a module parameter) and
>> 2) using an iptables rule to change ECT(1) to ECT(0) on outgoing TCP segments without the SYN flag sent
>> 
>> http://sce.dnsmgr.net/results/ect1-2020-05-15T235113-s10-gaming-ect1-ect0/l4s-s10-gaming-ect1-ect0/l4s-s10-gaming-ect1-ect0-ns-cubic-vs-prague-dualpi2-20ms_tcp_delivery_with_rtt.svg
> 
> Exactly.  What you see here is a simulated lying sender on a 20ms, 50Mbps path, starting up shortly after a TCP CUBIC flow that is not lying.  There is a DualQ AQM at the bottleneck which would normally be able to distinguish the Prague flow from CUBIC and apply the different congestion signalling that it needs.  Since that distinguishing identifier has been deliberately removed, everything reverts to DCTCP behaviour in which the CUBIC flow is squeezed out of the network, and the lying Prague sender gets 95%+ of the throughput.
> 
> - Jonathan Morton