Re: [tsvwg] L4S and the detection of RFC3168 AQMs

Bob Briscoe <> Wed, 09 December 2020 23:23 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id C10493A00D9 for <>; Wed, 9 Dec 2020 15:23:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, WEIRD_QUOTING=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id U1haUzaP9DgF for <>; Wed, 9 Dec 2020 15:23:31 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 3803F3A0127 for <>; Wed, 9 Dec 2020 15:23:30 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;; s=default; h=Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:From:References:Cc:To:Subject:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=byHgsly+xbatIyWhX6I8rR9b9Ft0XJAkoZXkAJOWnTA=; b=HBItvJQUabZm4HAjASSMpXOA4 2+o+z7UlBRWbGvulvOsHxoYM924YzSW3iqxZjtGzXNKhM9K73KNSieVAI0s6/Jy4unfALzD/W5DjP j7ceWh1FjonjH02ULmXtmVEEznLX++P8jPCsyNdR5X+3MpsOhEqSitlBZtgrQvFvjGb3O7BM4G4u2 Hop6tJovmqnYSfs8o0y9bk/cBu+yLqsrU4861lZXOUXKjWkfSOwXr2tE/zqy4rIoTcYrEY7b+k4Tc 5bb5bJG7sepykJTjEXomg4N6cbPo9phv3/vLYpVmmfM7x/9qwwKD12sbBE5yS+M8Giv/abVxg9gDZ RPDwrPlxg==;
Received: from ([]:59600 helo=[]) by with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.93) (envelope-from <>) id 1kn8nw-002xvm-Bi; Wed, 09 Dec 2020 23:23:29 +0000
To: "" <>
Cc: Greg White <>, "" <>
References: <> <> <>
From: Bob Briscoe <>
Message-ID: <>
Date: Wed, 09 Dec 2020 23:23:26 +0000
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <>
Content-Type: multipart/alternative; boundary="------------52E894356653BAE03852E88B"
Content-Language: en-GB
X-OutGoing-Spam-Status: No, score=-1.0
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname -
X-AntiAbuse: Original Domain -
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain -
X-Get-Message-Sender-Via: authenticated_id:
Archived-At: <>
Subject: Re: [tsvwg] L4S and the detection of RFC3168 AQMs
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 09 Dec 2020 23:23:34 -0000


An interesting idea.

You've given some pro points.
Here are a few con points:

1) Requires L4S FQ AQMs to actively remove Classic ECN support.
Many FQ AQMs already support Classic ECN. By this proposal, if they 
wanted to add L4S ECN support (which is pretty simple to do), they would 
have to remove Classic ECN support, dropping instead of marking ECT(0) 
packets. It is possible (likely?) that a number of FQ AQM implementers 
would vote with their feet and not remove Classic ECN support, even if 
the IETF published an RFC adopting your proposal. Then the certainty 
that your proposal is designed to create would be lost. Then we would be 
worse off in two directions: still no way to be certain about ECT(0) 
markings, while at the same time having reduced what little Classic ECN 
deployment there is.

2) For in-band Classic ECN AQM detection, the proposal requires L4S not 
to be used for a long time in order to detect whether L4S can be used.
L4S hosts are the ones that need to check for Classic ECN AQMs. But they 
don't send ECT(0). So to take advantage of your proposal, they would 
have to send ECT(1) packets then, if they see one CE marking, they would 
have to switch to sending ECT(0) packets, and actively send enough 
ECT(0) to be sure that /lack/ of CE marking was not just lack of 
congestion. Given CE marking is currently very rare, how long without CE 
marking do they have to send ECT(0) packets until they can assume it's 
an L4S AQM? They don't want to alternate ECT0 & ECT1, cos if it is an 
L4S bottleneck, that will lead to reordering.

So, lack of CE marking would be ambiguous. Would it mean the bottleneck 
is L4S? Would it mean the capacity has increased and the flow needs to 
increase its rate more to find the limit? If there was a loss or losses, 
that would also be ambiguous. Are they congestion losses?

All the time that the L4S source is sending ECT(0) packets, the flow is 
losing the benefit of the low delay it could have been getting if the 
original CE mark was emitted from an L4S queue. This is a similar 
problem to an algorithm that gives false positives (like the v2 Classic 
ECN AQM detection that Asad & I published). It sometimes detected an L4S 
AQM as Classic. So it was argued that this would probably prevent people 
from using it. The same would surely be true of an algorithm that 
requires L4S not to be used in order to detect whether L4S can be used.

3) Could be used for Out-of-band Classic AQM detection, but...:
The proposal would help server operators who wanted to run 
pre-L4S-deployment tests to check for the presence of Classic ECN AQMs. 
Then ehy could run saturating ECT(0) flows for long enough to be sure 
that lack of CE meant absence of Classic ECN bottlenecks. But only if 
all L4S implementers complied (see item #1). The fact that this proposal 
is only really useful for pre-deployment testing would surely make FQ 
implementers even less keen on removing Classic ECN support.

Perhaps this conversation will spark a variant of your idea. However, in 
its present form, unless I'm missing something, it doesn't seem to stand 
up to scrutiny.



On 08/12/2020 19:37, Greg White wrote:
> Hi Alex,
> This does seem worth considering.  FWIW in Low Latency DOCSIS the 
> implementation will be as you describe.  ECT(0) packets will not be 
> marked CE.  This was done for practical reasons, since the classic AQM 
> re-uses the DOCSIS-PIE AQM which is implemented in hardware in many 
> devices, and does not support ECN.  For consistency, any ECT(0) 
> traffic that were to make its way somehow (e.g. DSCP marked as NQB) 
> into the LL queue, will also not be CE marked.
> -Greg
> *From: *"" <>
> *Reply-To: *"" <>
> *Date: *Monday, December 7, 2020 at 3:44 PM
> *To: *"""" <>, 
> """" <>, Greg White 
> <>
> *Cc: *"""" <>
> *Subject: *L4S and the detection of RFC3168 AQMs
> Hi all,
>   At present the DUALQ draft leaves it to implementers to decide if traffic in the classic queue (IE, ECT(0) traffic that uses currently standard congestion controllers) should be dropped or marked (except, apparently, when an ECT(0) packet for some reason turns up in the L queue?). Perhaps it would be wise to specify that during the experiment, deployments of L4S AQMs (whether DUALQ or the other alternatives mentioned in draft-ietf-tsvwg-l4s-arch) SHOULD NOT (or maybe even MUST NOT) mark ECT(0) traffic, and only drop. This would be to preserve the fact that, as currently, those RFC3168 AQMs which are unaware of L4S, can be identified by the fact that they mark ECT(0) packets with CE. If L4S AQMs are required not to mark ECT(0) as CE, then if an endpoint (or other monitoring method) sees a CE mark on an otherwise ECT(0) flow, then it knows with more or less 100% confidence that an RFC3168-only AQM is on the path.
> Presumably this is safe, since L4S nodes are required to be able to support Not-ECT traffic, and ECT(0) traffic is required to be able to cope with drop.
>   At present the only definitive way for endpoints identify an RFC3168 AQM in use, is to observe CE marks on an ECT(0) marked flow.
> Bob's paper [1] gives various other methods, but this seems to be a research project at present. If any of these approaches were found to be reliable, then the above requirement could be relaxed fairly easily; the reverse is not so easy.
> There are, as is probably obvious, a number of reasons for wanting to identify RFC3168 AQMS:
>   - Current efforts to gather statistics on the number of RFC3168 AQMs which might encounter problems when L4S traffic passes through them.
>   - The the ops draft (sec 3.1)  envisages that CDN operators should test for the presence of RFC3168 AQMs, but doesn't yet specify how this should be achieved
>   - Within a L4S transport protocol, in order to fall back to RFC3168 behavior
> All of these would presumably be assisted by being able to classify observed ECT(0)->CE transitions unambiguously being the result of an L4S-unaware node.
> Unless I'm missing something it seems very much worth considering to restrict L4S marking behavior of ECT(0) for the time being?
> I am not sure which drafts would need updating; DUALQ at least, but presumably the ops draft and maybe L4S-arch.
> regards,
> Alex
> [1]

Bob Briscoe