Re: [tsvwg] [Int-area] 2nd TSVWG WGLC on ecn-encap-guidelines and rfc6040-update-shim drafts, closes 6 May 2019

"Black, David" <David.Black@dell.com> Wed, 31 July 2019 13:59 UTC

Return-Path: <David.Black@dell.com>
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 E5DDC120077; Wed, 31 Jul 2019 06:59:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.701
X-Spam-Level:
X-Spam-Status: No, score=-2.701 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, 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=dell.com header.b=mGGUDsia; dkim=fail (1024-bit key) reason="fail (message has been altered)" header.d=emc.com header.b=rqBMOf0w
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 SgHJlwHrS_4Q; Wed, 31 Jul 2019 06:59:15 -0700 (PDT)
Received: from mx0a-00154904.pphosted.com (mx0a-00154904.pphosted.com [148.163.133.20]) (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 BB5FD120018; Wed, 31 Jul 2019 06:59:15 -0700 (PDT)
Received: from pps.filterd (m0170389.ppops.net [127.0.0.1]) by mx0a-00154904.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x6VDdfPG002649; Wed, 31 Jul 2019 09:58:30 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=smtpout1; bh=u+ahedGkAjDKSVrRS7tGq2P8ZwrDHqNi1Flk5LPLzmY=; b=mGGUDsiabCsanvhiMo77g60X7136vYFWbB+xue02BppuUmVvTV1TqvPD/H/SHTW29rNw 3eUo4qwE28XVKIoADTM/KgrdieAX0lH2GUDSkan3j8WjlRqNuZidVyaEv0blgv3tNjFp WcbdKuFxlR8EjjsTedZLKCOTrmbifFgy5vwwKa33s5RVQshrKlQ8bTtKESIjWrTbhjpQ 9fZFTWQwXrlQeJlemAj8yxgwztFNVKte2dhdmGzA1Nd6rGLArFVwLm0ueXqulOO+OObw q2AUVrVkVPyS0AGPvUvLCa61XYBnmqt8HOJqhvOX3pYvL9bvdCPsew5OyDAlB684+nM8 wQ==
Received: from mx0b-00154901.pphosted.com (mx0b-00154901.pphosted.com [67.231.157.37]) by mx0a-00154904.pphosted.com with ESMTP id 2u36sksj59-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 31 Jul 2019 09:58:29 -0400
Received: from pps.filterd (m0144103.ppops.net [127.0.0.1]) by mx0b-00154901.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x6VDwIHU004154; Wed, 31 Jul 2019 09:58:28 -0400
Received: from mailuogwhop.emc.com (mailuogwhop.emc.com [168.159.213.141]) by mx0b-00154901.pphosted.com with ESMTP id 2u3c0t0cc5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Wed, 31 Jul 2019 09:58:28 -0400
Received: from maildlpprd02.lss.emc.com (maildlpprd02.lss.emc.com [10.253.24.34]) by mailuogwprd01.lss.emc.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.0) with ESMTP id x6VDuoGA029591 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 31 Jul 2019 09:58:26 -0400
X-DKIM: OpenDKIM Filter v2.4.3 mailuogwprd01.lss.emc.com x6VDuoGA029591
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=emc.com; s=jan2013; t=1564581507; bh=c4S2cv8qHdfdBG2Y1fPlKjMkLJU=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:Content-Transfer-Encoding:MIME-Version; b=rqBMOf0wXtOG7ICEbrvzIwPc1qFocOkWWfTF/RnKtRPoJkur4peZVMYaYU9D+RhgH 4GLnnVFHfGPA7ZGbw+wV9GhP/MAjHU7Wbh8Eswoclf8kW96Pde/8zVTlrYyA46F0Oq V0TQZ64oyaQ3lBqQcFg8FpHSzUeIyt4qGrLo7/C0=
Received: from mailusrhubprd04.lss.emc.com (mailusrhubprd04.lss.emc.com [10.253.24.22]) by maildlpprd02.lss.emc.com (RSA Interceptor); Wed, 31 Jul 2019 09:55:42 -0400
Received: from MXHUB316.corp.emc.com (MXHUB316.corp.emc.com [10.146.3.94]) by mailusrhubprd04.lss.emc.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.0) with ESMTP id x6VDtfWP006044 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=FAIL); Wed, 31 Jul 2019 09:55:42 -0400
Received: from MX307CL04.corp.emc.com ([fe80::849f:5da2:11b:4385]) by MXHUB316.corp.emc.com ([10.146.3.94]) with mapi id 14.03.0439.000; Wed, 31 Jul 2019 09:55:41 -0400
From: "Black, David" <David.Black@dell.com>
To: Bob Briscoe <ietf@bobbriscoe.net>, Jonathan Morton <chromatix99@gmail.com>
CC: Joe Touch <touch@strayalpha.com>, "int-area@ietf.org" <int-area@ietf.org>, tsvwg <tsvwg@ietf.org>, "Black, David" <David.Black@dell.com>
Thread-Topic: [tsvwg] [Int-area] 2nd TSVWG WGLC on ecn-encap-guidelines and rfc6040-update-shim drafts, closes 6 May 2019
Thread-Index: AQHU/Ryci9ghgFlev0m4sdzxWan0KKZuoYSAgFK4doCAA1negIAaWWCAgAZEfqA=
Date: Wed, 31 Jul 2019 13:55:40 +0000
Message-ID: <CE03DB3D7B45C245BCA0D243277949363064A595@MX307CL04.corp.emc.com>
References: <CE03DB3D7B45C245BCA0D243277949363052958E@MX307CL04.corp.emc.com> <598B8434-3B6D-434A-B963-7FEE04D9770B@strayalpha.com> <70abde72-0091-66e3-b819-ad839e1fd028@bobbriscoe.net> <d7252ffe-e13c-243c-efa2-bb15e67bd758@bobbriscoe.net> <DA78B7A6-92FB-4BCB-A74A-DF53ED722714@gmail.com> <f62fcf13-0486-a2ca-1f41-088cfff12d8e@bobbriscoe.net>
In-Reply-To: <f62fcf13-0486-a2ca-1f41-088cfff12d8e@bobbriscoe.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Enabled=True; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_SiteId=945c199a-83a2-4e80-9f8c-5a91be5752dd; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Owner=david.black@emc.com; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_SetDate=2019-07-31T13:43:51.2693390Z; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Name=External Public; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Application=Microsoft Azure Information Protection; MSIP_Label_17cb76b2-10b8-4fe1-93d4-2202842406cd_Extended_MSFT_Method=Manual; aiplabel=External Public
x-originating-ip: [10.238.21.131]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Sentrion-Hostname: mailusrhubprd04.lss.emc.com
X-RSA-Classifications: public
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-07-31_06:, , signatures=0
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1906280000 definitions=main-1907310142
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1906280000 definitions=main-1907310141
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/9SAISJsHwktLLamOMwEDgGkcZOQ>
Subject: Re: [tsvwg] [Int-area] 2nd TSVWG WGLC on ecn-encap-guidelines and rfc6040-update-shim drafts, closes 6 May 2019
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, 31 Jul 2019 13:59:18 -0000

[Writing as draft shepherd and responsible WG chair, still interested in additional responses & comments]

Back to Joe's original comment that started this.

> - it would be useful for these documents to address how fragmentation and reassembly affects these signals
>	(esp. if reassembling fragments with different ECN values)

Bob writes:

> I originally suggested the requirement in RFC3168 to preserve the number
> of marked packets, but it's incorrect. It's not compatible with TCP's
> single response per RTT (or the response to the proportion of marks of
> other TCP-Friendly real-time congestion controls).

I'm not clear on how that's either incorrect or incompatible with TCP's single response per RTT - as long as TCP sees a CE mark within an RTT interval, the right thing happens, and extra CE marks don't matter.  Picking up a line from Jonathan's response:

> Preserving the marking probability while the number of packets decreases would reduce the number of RTTs containing a mark.  

I'm definitely concerned about that.  Suppose we have a stream of packets in which each packet is fragmented into 3 fragments, and exactly one fragment is marked in each RTT.   My understanding of the requirement in the new text to preserve the number of marked octets is that it would result in a CE marked packet once every 3 RTTs after reassembly, which is wrong.  If DCTCP needs a different marking behavior, then these drafts need a warning about what goes wrong if that's not done - that's reasonable as deployment considerations for DCTCP, but not TCP, as DCTCP is currently a "controlled environment" protocol. 

Further, these two drafts currently do not modify RFC 3168, which (IMHO) is a "feature" ... not a "bug" ...

Additional thoughts/comments?

Thanks, --David

> -----Original Message-----
> From: Bob Briscoe <ietf@bobbriscoe.net>
> Sent: Saturday, July 27, 2019 6:01 AM
> To: Jonathan Morton
> Cc: Joe Touch; Black, David; int-area@ietf.org; tsvwg
> Subject: Re: [tsvwg] [Int-area] 2nd TSVWG WGLC on ecn-encap-guidelines
> and rfc6040-update-shim drafts, closes 6 May 2019
> 
> 
> [EXTERNAL EMAIL]
> 
> Jonathan,
> 
> On 10/07/2019 11:38, Jonathan Morton wrote:
> >> On 8 Jul, 2019, at 3:27 pm, Bob Briscoe <ietf@bobbriscoe.net> wrote:
> >>
> >> These are quite significant updates to outer fragment processing at the
> tunnel egress. But, given something has to be said, I can't think of a better
> way (see the original quoted email about why the logical OR of the ECN
> codepoints as defined in RFC3168 is no longer sufficient - and it's no simpler
> anyway).
> > If I may offer such an alternative approach, which avoids the need to keep
> persistent state at the reassembly point whilst still properly handling
> RFC3168, L4S and SCE expected semantics:
> >
> > - If all incoming fragments are Not-ECT marked, the outgoing packet must
> also be so marked.
> >
> > - If any fragment has CE set, the reassembled packet must have CE set.
> >
> > (This guarantees correct RFC3168 and SCE behaviour for each conventional
> AQM marking action.  Your proposal doesn't, as it will generally result in
> fewer CE marks downstream especially if the smaller fragments end up being
> marked; subsequent upstream CE marks have to relieve a counter deficit
> before they will be honoured.  The tradeoff is that L4S may see some
> technical "over marking" but this should be tolerable.)
> Yes, with byte-preserving, as packets are re-assembled the number of
> marked packets reduces. Counter-intuitively, that's correct, even for
> compatibility with TCP's single congestion response per RTT.
> 
> I originally suggested the requirement in RFC3168 to preserve the number
> of marked packets, but it's incorrect. It's not compatible with TCP's
> single response per RTT (or the response to the proportion of marks of
> other TCP-Friendly real-time congestion controls).
> 
> This is not a matter of compatibility with just one of SCE or L4S. The
> logical OR approach is wrong for both, and the byte-preserving approach
> is correct for both - see previous response to Markku.
> 
> Reasoning: the paramount requirement when reassembling fragments is to
> reconstruct the marking probability that would have occurred had the
> packets not been fragmented when the AQM in the tunnel marked them.
> The
> logical OR approach increases the marking probability as if congestion
> was higher, while byte-preserving keeps it constant.
> 
> If it helps, consider the reductio ad absurdam proof that, as fragments
> get smaller, the logical OR approach would ultimately result in every
> packet being marked.
> 
> Regarding state, the problem isn't amount of state because reassembly
> requires per-packet state and the the approach I suggested adds only 2
> int's per tunnel decap.
> 
> The problem seems to be common read-write access to these variables.
> However, it's not important that they are updated before forwarding
> continues. So updates can be queued in parallel to forwarding.
> 
> Also the state can include occasional errors, so it doesn't have to be
> strictly persistent - meaning it's unnecessary to preserve during a
> re-boot or if a tunnel endpoint is moved.
> 
> > - Notwithstanding the above rules, the ECT(0) vs ECT(1) choice should be
> made according to the majority of fragmented payload bytes so marked, on
> the individual packet being reassembled.  In the case of a tie, break in favour
> of ECT(0).
> My original proposed wording deliberately allows such an algorithm.
> Byte-preserving was stated as a goal. The specific mechanism was only an
> example.
> 
> (I'm not convinced majority voting would be simpler than byte counting,
> which never leads to an exception case. But that's irrelevant anyway).
> 
> >
> > (We may expect that L4S packets will be entirely ECT(1) marked except for
> fragments or whole packets carrying CE; this also applies to obsolete Nonce
> Sum semantics.  SCE and RFC-3168 flows will be ECT(0) marked by default,
> with perhaps some ECT(1) marking applied by SCE middleboxes.  SCE is
> reasonably tolerant of disruption to its markings, because the control loop is
> fundamentally stable.)
> As above, my proposed wording is nothing to do with support for one
> semantic or another. It is for all semantics.
> >
> > - A mixture of Not-ECT and other ECN codepoints is \unexpected and may
> imply upstream shenanigans.
> Yup, the wording in 3168, and my wording both agree with you here.
> 
> 
> 
> Bob
> 
> 
> >
> >   - Jonathan Morton
> >
> 
> --
> __________________________________________________________
> ______
> Bob Briscoe                               http://bobbriscoe.net/