Re: [tcpm] [EXTERNAL] Re: WGLC review of draft-ietf-tcpm-rfc793bis-18

Praveen Balasubramanian <pravb@microsoft.com> Thu, 29 October 2020 02:44 UTC

Return-Path: <pravb@microsoft.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6CF493A0944 for <tcpm@ietfa.amsl.com>; Wed, 28 Oct 2020 19:44:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.09
X-Spam-Level:
X-Spam-Status: No, score=-2.09 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, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=microsoft.com
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 Z6SXdFTdQI5F for <tcpm@ietfa.amsl.com>; Wed, 28 Oct 2020 19:44:20 -0700 (PDT)
Received: from NAM06-DM3-obe.outbound.protection.outlook.com (mail-eopbgr640108.outbound.protection.outlook.com [40.107.64.108]) (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 D925A3A0920 for <tcpm@ietf.org>; Wed, 28 Oct 2020 19:44:19 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FF6WdxvhdxHppD9/xhibyN7gQt79OeDYx0j54zEkYOGak2RBkKxVJzWh8h5MV3YYyQBMnHv+PyQp28CX+r5AhXXwLM4PTIkAq3HXuTCvc7v48DYFMxIY+rZVHgZw700Ei5oOLCHbIhkaL+OnmOatVIE0VdNvcsFKBslAF2O3ysytbBIMY+JI+tk10dekAtiTq//oCQPikuPdRY2ukazY3rBBhl+cnH/by7N52t7JFGu0rT9L0vCrTHD19RIVl69Y6TegxpxI6WmFVckBNd8Kb5tJVNbFIHc/eoYVR4YnxHWxxqosNWR0bk1olt0Ps5bZMapOqHU8ajTmCZ8UZ6dbMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yEQv2XfjgFeL4luevg73l3kET1ujrcWsoHMpW5XrPME=; b=gDMDwGVJ6tMUbBIwMCSAvxCw1Zg55p6BEnMX7GiwF4UaKR7BveBoZ8YGN3POfxpav83vcQqIWc4TeL8m3VhFQOuodiEKbvTwD34gJAiE2DB/9Rf78Tg/snXeih4IAq8j9FDQPpUpC6SzjBUqV/mYEBFcvVzYw63QgPU9ODZeaHaevxIhRZTs7pPOZkEvNNib3dDUx4cqb1fpwOWyyW3LEVbqBg8ZYWOMvZ37Bsi7z6TFeAB0UeO3gQUUyEYV1HeIOIPsLy/ZMZxI0deLdo5xpbIpLabUiA5NHGjoQ1TEig32E6EixkZ2BbpksTR1yyj2YLfVogwbAb0aaoMvfIeWtA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yEQv2XfjgFeL4luevg73l3kET1ujrcWsoHMpW5XrPME=; b=VI9AlCsMU+zMykYCze5Yi1rlQGFnLuwfY/R9NzG1Ok58pJl92SYcRAUHVNkU1wcl85tCC1WWWhgw2UpHrcuFwMR+k/gRnYk9YafLgAe//7F4XaekbYgLsaelbORXqYg3eHLve9S73mM0NzDx2kGQQ0sdb+YqmAR8BD4IsrYgeHc=
Received: from (2603:10b6:208:3a::11) by MN2PR00MB0479.namprd00.prod.outlook.com (2603:10b6:208:c6::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3557.0; Thu, 29 Oct 2020 02:44:17 +0000
Received: from MN2PR00MB0639.namprd00.prod.outlook.com ([fe80::ed5d:f11d:bdbb:faaf]) by MN2PR00MB0639.namprd00.prod.outlook.com ([fe80::ed5d:f11d:bdbb:faaf%6]) with mapi id 15.20.3563.000; Thu, 29 Oct 2020 02:44:17 +0000
From: Praveen Balasubramanian <pravb@microsoft.com>
To: Wesley Eddy <wes@mti-systems.com>, "tcpm@ietf.org" <tcpm@ietf.org>, Matt Olson <maolson@microsoft.com>, Yi Huang <huanyi@microsoft.com>
Thread-Topic: [EXTERNAL] Re: [tcpm] WGLC review of draft-ietf-tcpm-rfc793bis-18
Thread-Index: AdajXxk8uequbu29QB+n5DRBKHdcewAAci5QAYbZnYABB/nQ4A==
Date: Thu, 29 Oct 2020 02:44:17 +0000
Message-ID: <MN2PR00MB06397FA1D9D6F08370FA3BB0B6141@MN2PR00MB0639.namprd00.prod.outlook.com>
References: <CH2PR00MB072885B6E3337415A0F4EFB1B6031@CH2PR00MB0728.namprd00.prod.outlook.com> <CH2PR00MB0728DD8CB50540C41DE83D0FB6031@CH2PR00MB0728.namprd00.prod.outlook.com> <8e59b58f-badd-2aac-fe2e-d40a9c78cc94@mti-systems.com>
In-Reply-To: <8e59b58f-badd-2aac-fe2e-d40a9c78cc94@mti-systems.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=c78256dc-0ff2-4afb-91a3-fdaa2504a2b6; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=true; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=Internal; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2020-10-29T02:35:38Z; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47;
authentication-results: mti-systems.com; dkim=none (message not signed) header.d=none;mti-systems.com; dmarc=none action=none header.from=microsoft.com;
x-originating-ip: [2001:4898:80e8:7:95d1:3f73:f682:d302]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: 4768f9e1-82fe-480c-8845-08d87bb487f4
x-ms-traffictypediagnostic: MN2PR00MB0479:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MN2PR00MB0479901D52F9459FB74ECF61B6141@MN2PR00MB0479.namprd00.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: xPFt+lTlzvOe4zM4ufjVDDy+yQPJWfxCcXzjVu3TAFkwb03qckyY9bjcCpAHjQgyb3dhZokvvdIRjA3dBcPWzXRHVeeGgz8w8MnfXzRqS5434n7OVAijQIQPVL2o1bDovo/lizhvDzYjfHbyzM6rVfaTakcY7OjWHGCQhIsOU4h8YAvxm6NF6aZKZkhPCwcUKhVO8NX7WVad3ni8gHAGYfk2k+qDGQMXxMkWLqUXRx5SFQD80wmQIHZ795qrwfW5AKAtjnAG8a0IYEllrZoVltje55tvD2yn+5e7AXrozNH8sDn4d3+ZbOc5SYXCVtvAAWHamHUN/FJHRxSSknOoDw==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR00MB0639.namprd00.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(396003)(346002)(366004)(39860400002)(376002)(316002)(76116006)(5660300002)(52536014)(110136005)(8990500004)(66946007)(66446008)(66556008)(64756008)(7696005)(66476007)(8936002)(83380400001)(6636002)(6506007)(53546011)(9686003)(55016002)(186003)(10290500003)(86362001)(478600001)(8676002)(82950400001)(82960400001)(2906002)(33656002)(71200400001); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata: QsU0xLu67vAUvWrXHxGLiqGIefy8QZX6Q58EwWkUYS27/VCaPeJIYMQ3lOkdIu7ohVlBYqFKafA+AS+hDcm1FHJtC7RfW3SFGyAbsYAYE5009SwSB3lkb0Ds3eBiN16zaVLndFJtiyaE2Ab8SdTGn6n2DFWgu8gIBZGS9/PSlyb5JZYw2M+a5Jmi7IIYYKRGw3xJBi7E9zt7Zl9wTBEaB/Bco4kua2nVRrah2oboU3jBG8YzVGFx2giEkDPoSrZ8AzhW+oijCqlodOga2krrH6TEF/84eqUCdsZuXsqfQGe8hp3mBJRr4RpZLfkGUWvJS3zdq8qTHcPjVJMmODR6X9EgdJBZbBerjhjrIQxrDDuejcKpFEpVWYGu0YVdeyCT60giLPF74mzIG/DgLB26PCbrgWMs+6Bqv6sI78T/yS9N6p42RI6n0CNljHJhwN4dx5wfSzEBaUzYMvXnvLNAOU5agXG6TidkKPT7ijUyI7j1QVsczJ2rcfkZj80LOSrBbspRH9AjncTxuDkPeGXDvcQx3ysSeuMsyK+rphU53kCXPK8hzY1B74Wn3eG6yNM/1gJEckCNKDuV5iYQjsP5VF5K89RpHOtSLZUiFSuSF4SC2bjZ4gLUzeAgyGqGQ3F3JFsNHTtSObp38XEiN2HOgNU/lCr7e0puLLm8e6No7JHMVn9yL+OfYxMM/ZDIzUs9Wk5x/dHshzwzvnEKIrCRug==
Content-Type: multipart/alternative; boundary="_000_MN2PR00MB06397FA1D9D6F08370FA3BB0B6141MN2PR00MB0639namp_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MN2PR00MB0639.namprd00.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4768f9e1-82fe-480c-8845-08d87bb487f4
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Oct 2020 02:44:17.5586 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: s+fdo8AAzMcd4m3hvOp+Hl43TaBh62PzinC/pr06BJ9cXAPQEna9Fjx1jETiCKVK8MJhzv04PiPtcYp/D1TFBfZUpbXfA9rMD8M+b9lW0wg=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR00MB0479
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/NT808boi_L1aNPCartmfZ6l_bos>
Subject: Re: [tcpm] [EXTERNAL] Re: WGLC review of draft-ietf-tcpm-rfc793bis-18
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 29 Oct 2020 02:44:22 -0000

In draft 19:

Section 2. There is a typo retransmion -> retransmission. I would suggest running this document through a spell checker.

Section 3.1. "Additional RFCs define some other commonly used options that are recommended to implement." --> I think we need stronger language here. The following commonly used options SHOULD be supported.

Please bring up the SYN timeout MUST requirement of 3 minutes and the flexibility of using other congestion controllers (other than Reno as in RFC 5681) up for working group discussion.

Thanks

From: Wesley Eddy <wes@mti-systems.com>
Sent: Friday, October 23, 2020 1:37 PM
To: Praveen Balasubramanian <pravb@microsoft.com>; tcpm@ietf.org; Matt Olson <maolson@microsoft.com>; Yi Huang <huanyi@microsoft.com>
Subject: [EXTERNAL] Re: [tcpm] WGLC review of draft-ietf-tcpm-rfc793bis-18


Thank you for this helpful review; here are my plans/thoughts on addressing your comments:


On 10/15/2020 10:06 PM, Praveen Balasubramanian wrote:

Section 3.1

The control bits in the header include the RFC 3168 specified CWR and ECE. It might be worth citing 3168 as well in the Abstract.

Agreed; I'll do this in the next revision.





It is quite a bit surprising that we don't include discussion of the SACK, Timestamp, and Window Scaling options. Even if we don't describe the details, the document should provide references to these almost universally deployed options and recommend that hosts SHOULD implement them. At least the Timestamp option is referred to multiple times in the text without any specification of the format.

This makes basically sense to me, and I'll plan to improve on it in the next revision.  My plan is to prominently reference the specs that define those options, and say that they're recommended, but won't try to recreate their definitions here though.



Section 3.6.4

"

   If there is unacknowledged data (i.e., SND.NXT > SND.UNA), then the

   sending TCP endpoint buffers all user data (regardless of the PSH

   bit), until the outstanding data has been acknowledged or until the

   TCP endpoint can send a full-sized segment (Eff.snd.MSS bytes).

"

This is slightly different from Nagle's description in RFC 896:

"

The solution is to inhibit the sending of new TCP  segments  when

new  outgoing  data  arrives  from  the  user  if  any previously

transmitted data on the connection remains unacknowledged.

"

I.e., the original algorithm description in RFC 896 didn't include the "or if a full-sized packet can be sent" part. This difference isn't mentioned in 793bis, it ought to be, along with a justification for the difference.

This part is directly from RFC 1122 (Section 4.2.3.4), so I think it says the proper thing.



Also there is no mention of the interaction problem between Nagle's algorithm and delayed ACKs, either here or in the later section on delayed ACKs.

Very good point!  Currently, the delayed ACK interaction w/ Nagle is only mentioned in Appendix A.3.  I think, based on your comment, that we should add a mention of this in the main body when Nagle's algorithm is discussed, referring to A.3.



Section 3.7.3



"However, the values of R1 and R2 may be different for SYN

            and data segments.  In particular, R2 for a SYN segment MUST

            be set large enough to provide retransmission of the segment

            for at least 3 minutes.  The application can close the

            connection (i.e., give up on the open attempt) sooner, of

            course.

"

The MUST here is onerous for what is an ancient timeout value which modern implementations don't adhere to. Recommend changing this to a SHOULD.

While I agree, I think this will require some greater working group discussion.  If the group and chairs agree, I'm happy to do this.



Section 3.7.4
"Keep-alive packets MUST only be sent when no data or acknowledgement
   packets have been received for the connection within an interval
   (MUST-26).

"

It's important to call out an additional condition - that sends are not already outstanding. When a send is outstanding, it is retransmitted and serves as an implicit liveness check.

This is an excellent point, and I think it can be added in the next revision, unless there is any objections from the rest of the working group.



Section 3.7.2


"A TCP endpoint MUST implement RFC 5681 (MUST-19)."
This requirement is onerous because RFC 5681 also specifies the NewReno congestion control algorithms. Modern implementations use other algorithms. We should add clarifying text permitting experimentation and evolution of congestion control algorithms. It is also not required for interop.

This is a part where maybe we could use some more help/input on the exact wording.

I think MUST implement some IETF standard congestion control is the right idea, but alternative algorithms that are administratively (or otherwise) managed on a host are also fine to implement and enable.  If others agree, disagree, or have thoughts on how exactly to phrase this, I think it would help to hear from the working group.



Finally, all of your editorial comments are now accounted for in my working copy, so thank you for those.