Re: [tsvwg] ECN-Dualq-SCE as a documented option in l4s-id?

Bob Briscoe <ietf@bobbriscoe.net> Wed, 19 February 2020 15:16 UTC

Return-Path: <ietf@bobbriscoe.net>
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 2A69212010F for <tsvwg@ietfa.amsl.com>; Wed, 19 Feb 2020 07:16:42 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=bobbriscoe.net
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 rFMht_zLKG8e for <tsvwg@ietfa.amsl.com>; Wed, 19 Feb 2020 07:16:40 -0800 (PST)
Received: from server.dnsblock1.com (server.dnsblock1.com [85.13.236.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 313FC1200B5 for <tsvwg@ietf.org>; Wed, 19 Feb 2020 07:16:40 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=bobbriscoe.net; s=default; h=Content-Transfer-Encoding:Content-Type: In-Reply-To:MIME-Version:Date:Message-ID:From:References:To:Subject:Sender: Reply-To:Cc: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=MIfiXQKPo94F/F6T2sY3SN91nEt+V4lLdKrYBMDPcI4=; b=qqPTDdEji0yxRdV07Hqx+3F09S 8yJ8iUo2F6WeQ7bF5oDgpPOTePCAdkWDdS5RZidCNNXi3NdLlBNLTho0YEtF8fohC7kJWQkdlnbT/ 2MJtMJQOl05igxhJ0zS4FZGai8gMLPObD1GA0sv4JSaWSvi/l32vWDN+oCFs9oXyI9ivWRjSGbF5f j/l32NIAZxlEVeWlU6qeXP2XxTjU+4b/bSI34iUTNprvoE6kqLqSpEiyajrtSFKpmIPfIVZExK4hN 9Czwcwdv2nkkM9/q70tR8fObQHAY36fChNyCWedOLierY0T7syxsJekntnP+2RBbFMvoZE4SF2H0E rfmITIlA==;
Received: from [31.185.128.125] (port=45898 helo=[192.168.0.11]) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from <ietf@bobbriscoe.net>) id 1j4R5a-0006H2-DS; Wed, 19 Feb 2020 15:16:38 +0000
To: "Holland, Jake" <jholland@akamai.com>, "tsvwg@ietf.org" <tsvwg@ietf.org>
References: <A213838F-B051-4D43-82F9-A1AC55769B01@akamai.com>
From: Bob Briscoe <ietf@bobbriscoe.net>
Message-ID: <29202971-7d6e-3a3b-3735-965d271db349@bobbriscoe.net>
Date: Wed, 19 Feb 2020 15:16:37 +0000
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1
MIME-Version: 1.0
In-Reply-To: <A213838F-B051-4D43-82F9-A1AC55769B01@akamai.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server.dnsblock1.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - bobbriscoe.net
X-Get-Message-Sender-Via: server.dnsblock1.com: authenticated_id: in@bobbriscoe.net
X-Authenticated-Sender: server.dnsblock1.com: in@bobbriscoe.net
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/tF_HlQtXHf3TIsX6sRwOEUA6pyA>
Subject: Re: [tsvwg] ECN-Dualq-SCE as a documented option in l4s-id?
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: Wed, 19 Feb 2020 15:16:42 -0000

Jake,

On first pass I don't fully get it, so I need to spend more time reading 
and re-reading once I've gone back to the refs you give (which need to 
be in my L1 cache while reading it, and they're not). But I don't have  
that time in the next 2 days. so I can't process this before the interim 
on Thu.

I'm just about to post a new rev of the ecn-l4s-id draft that I wrote 
before seeing your posting. Then I've got test results and slides to do. 
So apologies if the posting of ecn-l4s-id seems to cross your request - 
that's just an unfortunate timing clash. Please understand that posting 
a new rev is not intended as an implicit passive aggressive "No" to your 
request!


Bob

On 17/02/2020 23:27, Holland, Jake wrote:
> Hi Bob, Koen, and tsvwg,
>
> I'd like to request adding the ECN-DualQ-SCE proposal to the list of
> alternative options considered for the dualq classifier, in Appendix B
> of l4s-id [0].
>
>
> To slightly flesh out what I'm asking for:
>
> The proposal I'd like to see added is to use a state-based classifier for the
> dualq that uses a per-flow measure of sparseness in addition to ECT to classify
> packets into the low-latency queue, so that when flows do not maintain the
> sparseness expected of L4S-compatible flows, their packets go to the classic
> queue.
>
>
> Some notes that may help when considering and/or implementing this request,
> with some [numbered-references] at the bottom.
>
> 1. As I understand it, ECN-DualQ-SCE compromises on the "SHOULD be visible at
> the IP layer" criteria from section 2 of l4s-id, and gains some ground (sort of)
> on "SHOULD consume minimal extra codepoints".
>
> But maybe more importantly, it comes with some other tradeoffs that might be
> worth covering as similar "SHOULD" requirements in section 2.
>
> For instance, maybe the section 2 criteria for the ideal yet unachievable l4s-id
> identifier should mention "SHOULD allow for unambiguous congestion signaling to
> distinguish the LL 1/p congestion signal from the classic 1/sqrt(p) signal".
>
> This would point out more explicitly an important compromise the ECT(1) approach
> makes.  (By listing it this way, I suspect it can more easily be made clear that
> the requirement for a complex classic queue detection algorithm is a workaround
> that provides a mitigation for compromising on this point under the ECT(1)
> approach, but could be a much more trivial "received CE" check under
> ECN-DualQ-SCE.).
>
> I'll also note this approach would provide a simple answer to the
> admission control questions, which may also be worth a mention in the doc.
>
> I think adding such a section would make it more clear in the document text
> what the nature of the tradeoffs are between these approaches, so the working
> group can more easily make an informed consensus decision.
>
>
> 2. I was reviewing some of the earlier discussion on ECN-DualQ-SCE [1][2][3][4].
> On reflection, it seems to me it's a mistaken claim that SCE is unsuitable for
> anything other than strict FQ, and much of the previous discussion rested on
> that (I think) mistaken claim.
>
> I noticed basically because Koen pointed out that CNQ was behaving like a
> dualq, during a side discussion at Singapore when Jonathan was explaining how
> CNQ worked (and pointing out that it does not enforce flow rate fairness in
> any remotely strict sense), and his observation stuck with me.
>
> In light of this observation, it seems to me the ECN-DualQ-SCE concept is at
> least as worthwhile a possibility to mention as the other sections in Appendix B,
> and that it's especially relevant to get the issues documented  as an integrated
> part of the l4s-id draft while issue #20 is under discussion [6].
>
> However, even if this turns out to be mistaken on closer examination, I'd still
> like the proposal added to l4s-id's list of classifier options, perhaps along
> with a walkthrough of the reasoning for the arguments against adopting it, with
> maybe pointers to the relevant publications that looked into it.
>
>
> 3. I think under ECN-DualQ-SCE, "measure of flow sparseness" is a pretty wide
> design space, as we're seeing from some of the SCE-related work.  (So much so
> that I imagine this as one of the reasonable points against adopting it...).
>
> But I think, as Koen pointed out, CNQ seems to qualify as an example of one
> approach that has an implementation (though the existing implementation may not
> satisfy all the rest of the dualq requirements, I'd guess).  But as mentioned
> above, from what I hear CNQ doesn't have the strict-flow-rate-fairness issue
> that you've objected to in [3] and [5].
>
> It also seems that the queue protection mechanism in the DOCSIS 3.1 MAC spec
> (Annex P) would qualify as a state-based classifier that's based on a measurement
> of flow sparseness?  So I'd assume that at least some level of flow-related
> additional complexity in a dualq must be considered feasible?
>
> (Or maybe feasible with mostly-untested performance?  I recall you saying you
> looked into this some years ago--if you have it, it might be helpful to get a
> pointer to the results showing the effect of competing classic traffic on
> low-latency traffic with just ECT as classifier when a docsis-style queue
> protection mechanism is in place, if there's anything like that somewhere?
> I didn't see where the prior research was written up.)
>
>
> 4. My motivation is that I am still concerned about the ambiguous signaling in
> the ECT(1) approach and its potential consequences, so I'd like at least to
> see the discussion of the best available classification strategy cover the
> ECN-DualQ-SCE option, for the benefit of the working group's review of the
> decision.
>
>
> 5. I'll also note that adding this doesn't require an SCE reference, because
> I think you can point to what seems to be a roughly equivalent CE(0)/CE(1)
> option mentioned in section 20.2 of RFC 3168.
>
>
> Thanks for considering this request.
>
> Best regards,
> Jake
>
>
>
> References:
>
> [0] https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-08#appendix-B
>
> [1] An early suggestion to combine L4S with SCE's signaling:
>     https://mailarchive.ietf.org/arch/msg/tsvwg/WYNurfs72tf-y-hrGHzEazg1qcI
>
> [2] Bob's response, with a medium-detailed reasoning chain for dismissing it:
>     https://mailarchive.ietf.org/arch/msg/tsvwg/nzQiSwYtDC7rFKDzhXbt5velfa0
>
> [3] Bob's bigger, academically formatted response about FQ generally:
>     http://bobbriscoe.net/projects/latency/per-flow_tr.pdf
>
> [4] A place I agreed that SCE requires FQ:
>    https://mailarchive.ietf.org/arch/msg/tsvwg/QjuQbNpW9zCbJpdLxsdPTAb1oME
>
>    I'm retracting the statement (or if you prefer, pointing out that even the
>    original came with qualifiers like "rough" and "with caveats").  I now
>    think we were talking past each other, and that although I agree there is
>    some per-flow state necessary to get latency benefits from SCE, this is
>    different from the strict FQ that Bob's paper objects to. (At the time, I
>    was thinking of this as "roughly FQ", but I now think it's materially different
>    from FQ as Bob's paper describes it, based on descriptions given there.)
>
> [5] The cited "Dismantling a Religion" paper:
>    https://web.stanford.edu/class/cs244/papers/fair-ccr2007.pdf
>
> [6] Objection to ECT(1) codepoint usage
>    https://trac.ietf.org/trac/tsvwg/ticket/20
>
>

-- 
________________________________________________________________
Bob Briscoe                               http://bobbriscoe.net/