Re: [tcpm] WGLC comments addressed in draft-ietf-tcpm-converters-09?

<> Wed, 31 July 2019 10:26 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 3131A12008C; Wed, 31 Jul 2019 03:26:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.701
X-Spam-Status: No, score=-2.701 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_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id oTx_8wi1drLN; Wed, 31 Jul 2019 03:26:25 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id B302A12009C; Wed, 31 Jul 2019 03:26:24 -0700 (PDT)
Received: from ( by ( with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 31 Jul 2019 11:31:42 +0100
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 31 Jul 2019 11:26:19 +0100
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1395.4 via Frontend Transport; Wed, 31 Jul 2019 11:26:19 +0100
Received: from ( by ( with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 31 Jul 2019 11:31:38 +0100
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901;; cv=none; b=S279nKvLHvLg+ENfDy6RdHACiA5fX9Y6fZTlr8hISmG/4BGXrUaXGZHKMJCsVvUxwr/ZWW+7/w3ykS/piiImE2eiHpFTTM91Nx3u9OHMbnZFMWIYK/A6W2cWvKwzG4vmlmwxS6Z+o63yLr3oSbNRUAezjGN6LfnbG+uz/W/JNr90oXuqMPz6c/wM4/6B8zP04tLquFUKo2dpGuSxkdxiYUP0WMDFYr3s/PwbaoSNyqHl9bdLGy7NyeQdKNH4KUolT4PU3VUSmy8ymYc1obCKTDmyOtvO/IIQ59KrSGd/iUl2IsWCkDI9SX5Eu82sZzStG7orJ/8ke5b+v6H3NnaW7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed;; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iMtyJAO87o2XIDRHCbQ5fNZjWSz+orI//dxzjRUqOxo=; b=h5cSONCGzin04I9hm4Q1jWjCsAOpxz5G3Sq2IcHNvi+kG4zXRIjYFVraGHqHE2PpiPkAaYQHOyC7vAEke1JxKyhuQzjvKdK7ws2cfm5EGSBZTobOIv6AKMQjv7+WZwYn9U9HHm4vC8b8I532+IYEYkPyenYOqO5ZEPm2/y+6XtU1WmHjcxsrcJSGiQhbLQ3O0hzDkhEkg0W1MCdVTkev7vk1RdzKcOor7pxnsG07guSxNHTGxFAxCRhOg2MfslQkmbk2cU2Hxv47Yq7QI8A7RaOlaKyna3kpHtdHpQZDBgr03kBFmDBe73LHkKXJRrXIPDf1CpIhV9juH4v2bHNxRA==
ARC-Authentication-Results: i=1; 1;spf=pass;dmarc=pass action=none;dkim=pass;arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iMtyJAO87o2XIDRHCbQ5fNZjWSz+orI//dxzjRUqOxo=; b=M7LrBltg63/j7jzcPTmf4gGyraOfHskzfgSUKHLe/yd/plGH3icV2z4Q+gvATLGiadPlrzhs8+oKb4CGbbB5OxBQrxLExQJAaJNVBUu+tl2Vm0awQETrsy0PscgV8Q7n/2vm8LO2IKlCaHsM+SE8JqOM8UgNDQDPdeadujVZ/PE=
Received: from CWXP123MB2583.GBRP123.PROD.OUTLOOK.COM ( by CWXP123MB2661.GBRP123.PROD.OUTLOOK.COM ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2115.14; Wed, 31 Jul 2019 10:26:16 +0000
Received: from CWXP123MB2583.GBRP123.PROD.OUTLOOK.COM ([fe80::cd8c:2aaf:b63b:3dcd]) by CWXP123MB2583.GBRP123.PROD.OUTLOOK.COM ([fe80::cd8c:2aaf:b63b:3dcd%3]) with mapi id 15.20.2115.005; Wed, 31 Jul 2019 10:26:16 +0000
From: <>
To: <>, <>
CC: <>
Thread-Topic: WGLC comments addressed in draft-ietf-tcpm-converters-09?
Thread-Index: AdVAY18GkuWfECVqQWaaLZInx1aQaQHJQcVQ
Date: Wed, 31 Jul 2019 10:26:16 +0000
Message-ID: <CWXP123MB2583E113996E40BCC57F62FBEBDF0@CWXP123MB2583.GBRP123.PROD.OUTLOOK.COM>
References: <>
In-Reply-To: <>
Accept-Language: en-GB, en-US
Content-Language: en-US
authentication-results: spf=none (sender IP is );
x-originating-ip: []
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: dbd594fc-12d6-48a5-7e80-08d715a18560
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:CWXP123MB2661;
x-ms-traffictypediagnostic: CWXP123MB2661:
x-ms-exchange-purlcount: 5
x-microsoft-antispam-prvs: <CWXP123MB266190CDD08043AEAFAB69A0EBDF0@CWXP123MB2661.GBRP123.PROD.OUTLOOK.COM>
x-antispam-2: 1
x-ms-oob-tlc-oobclassifiers: OLM:6790;
x-forefront-prvs: 011579F31F
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(366004)(136003)(376002)(396003)(39860400002)(346002)(199004)(189003)(13464003)(4326008)(476003)(6436002)(74316002)(25786009)(66066001)(6506007)(229853002)(53546011)(102836004)(26005)(11346002)(316002)(7736002)(71190400001)(71200400001)(446003)(256004)(486006)(14444005)(305945005)(86362001)(33656002)(66556008)(64756008)(66446008)(76176011)(8936002)(66946007)(8676002)(81166006)(76116006)(81156014)(478600001)(9686003)(6116002)(110136005)(6246003)(99286004)(66476007)(186003)(3846002)(14454004)(53936002)(5660300002)(66574012)(966005)(7696005)(52536014)(6306002)(55016002)(2501003)(68736007)(2906002); DIR:OUT; SFP:1101; SCL:1; SRVR:CWXP123MB2661; H:CWXP123MB2583.GBRP123.PROD.OUTLOOK.COM; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None ( does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: Q3i3hs2s6jF8RLYZnFMAUuUVf8yJ8v3bofdR1oUNVn2EciqP1gDX3X4O6CkfboDhFQ6OACQOULBgi/ErfGTTo1UgFG97+8krPLwbp1VSRw101X6pU8lFo3etjLkeZucnYX7iWO8GRGNxy7Un10a60gubIc6CEw7bmlCbp6vGTYEFLODzL9xyZSRhMKSXzOHKf6eczFMCXeUxwZ5nhO4ao9AOjf5jtizQCoyhlQfX5VFFcUZHq0W/A2IdhBVk8mTeSE9vj/ov43d0A2jGFcfmrUeiUU6Id4VESXfgBHcI9JAeqLwZU5KFiwBQ1SdvUquSLPq/2Oxk819QRMuPmeFiUNy0pdFvo/7HZLwtbFyZCjBPkEflWD1lDeQD8T1VRasNTmeO5us/bd2MNUiuYX9eyKfAQA4HQ57ON0sTwJMY2Kw=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: dbd594fc-12d6-48a5-7e80-08d715a18560
X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Jul 2019 10:26:16.4707 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: a7f35688-9c00-4d5e-ba41-29f146377ab0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWXP123MB2661
Archived-At: <>
Subject: Re: [tcpm] WGLC comments addressed in draft-ietf-tcpm-converters-09?
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 31 Jul 2019 10:26:28 -0000

I think most of my comments are addressed. Here are some things I think could still be clarified, plus a couple of extra questions that occurred to me when I was checking the latest version.

Section 3.1
<<Nevertheless, and unless this is explicitly stated,  the description assumes outgoing connections as default.>>

This sentence seems to contradict itself (can something be both assumed and have to be explicitly stated?). Maybe:-
In general this document assumes that the client initiates the connection (in other words, it is an outgoing connection); the scenario with an incoming connection is discussed in a couple of places [references]. 

In Figure 1 I find the 'upstream' and 'downstream' labels a bit confusing (especially as the lines have arrowheads in both directions), and it is shown as the link between client and converter etc. I think it would be better to move lower down (ie separate from the actual link), something like:
-------> upstream direction (outgoing connections)
<------ downstream direction (incoming connections)

Figure 5 caption has a stray "(1)" that can be deleted

Above Figure 6
<<addresses and, eventually, the destination IP address and port number"
I think ", eventually," should be deleted. 

Section 3.2 / 3.3
There are two paragraphs at the end of 3.2 and a bit more in 3.3 discussing what happens when a connection ends with FIN and TCP RST etc. I think you should write a bit more about the MPTCP case - since there are subflow TCP RST and MP_FASTCLOSE cases to consider. A TCP RST on one MPTCP subflow presumably shouldn't trigger the Converter to close the TCP connection on its other interface. 

Section 4 intro

<< This section describes the messages that are exchanged between a
   Client and a Transport Converter.

   By default, the Transport Converter listens on TCP port number TBA
   for Convert protocol (Convert, for short) messages from Clients.

   Clients send packets that are eligible to the conversion service to
   the provisioned Transport Converter using TBA as destination port
   number.  Additional information is supplied by Clients to the
   Transport Converter by means of Convert messages as detailed in the
   following sub-sections.

   Convert messages may appear only in a SYN, SYN+ACK, or ACK.

   Convert messages MUST be included as the first bytes of the
   bytestream.  A Convert message starts with a 32 bits long fixed
   header (Section 4.1) followed by one or more Convert TLVs (Type,
   Length, Value) (Section 4.2).

Some comments:
The Client also listens on TCP port TBA (not just the converter)
Stress that ALL convert msgs start with the same header.
I think the "Clients send packets..." para is better re-arranged.

Question: there seems to be a contradiction. The text here says "Convert messages may appear only in syn, syn-ack, ack". But then in S3.2 it says "This information is sent at the beginning of the bytestream, either directly in the SYN+ACK or in a subsequent packet." (this information is "about the TCP options that were negotiated with the Server.") (Incidentally, in S3.2 essentially the same sentence is repeated two sentences later.)  is the idea that SYN / syn-ack /ack is the 'normal' case, but can be in later pkts?

Question: the text says "Clients send packets that are eligible to the conversion service to the provisioned Transport Converter using TBA as destination port number." Is this referring to the exchange of Convert protocol messages? Or is this referring to subsequent data that is actually sent to the TBA port number? I think the text implies the latter, which I assume is not correct. 

Suggested text:-

   This section defines the Convert protocol (Convert, for short) messages that are exchanged between a Client and a Transport Converter.

   Convert messages MUST be sent to TCP destination port TBA. Therefore, a Transport Converter and a Client listen on this TCP port for Convert messages.
   Convert messages MAY appear in a SYN, SYN+ACK, or ACK or MAY appear in a subsequent packet.
Convert messages MUST be included as the first bytes of the bytestream.  
All Convert messages start with a common 32 bits long header (Section 4.1), followed by one or more Convert TLVs (Type, Length, Value) (Section 4.2).
After a successful exchange of Convert messages, a TCP connection with TCP extension(s) is established between the Client and Transport Converter (for instance, Multipath TCP), and a (normal) TCP connection is established between the Transport Converter and other end host, with the Transport Converter acting as an explicit proxy between the two connections (for instance, between MPTCP and TCP).  

Section 4.0, 4.2.6 etc
Various places say things like "the Unassigned field MUST be set to zero by the transmitter and
   ignored by the receiver.  These bits are available for future use
Comment: I heard in ietf-105 about problems for extensibility of various protocols because implementations insist on all zeroes for fields, otherwise discard packets. The suggestion is to grease (which I think means that the senders set to random values and receivers MUST ignore)
Also, 'sender' rather than 'transmitter'

Figure 11
In the figure you have Value being optional in bits 16-31 and compulsory in bits 32+. I think this should be the other way round. 

Section 4.2.8
"This TLV has a variable length.  It appears after the Convert fixed-
   header in the bytestream returned by the Transport Converter."
Figure 19 doesn't show variable length. Must its length be a multiple of 32 bytes (padded if needed)? (I assume so, to be consistent with elsewhere.)
The second sentence could be deleted, since elsewhere text says the TLV(s) must be at the start of the bytestream. But if you keep the sentence I suggest you say "appears _immediately_ after" 

"The case of a middlebox that removes the payload of SYN+ACKs (but the  
       payload of SYN) can be detected by a Client."
Do you mean: but _not_ the payload of SYN?

<<Appendix A.  Change Log
   This section to be removed before publication.>>
It would be really nice if somehow the material here that explains the design rationale, and development from earlier approaches, could be kept. It's useful info, I think. 

Best wishes,

-----Original Message-----
From: Scharf, Michael [] 
Sent: 22 July 2019 09:01
To: Eardley,PL,Philip,TUD1 R <>
Subject: WGLC comments addressed in draft-ietf-tcpm-converters-09?

Hi Phil,

Could you please have a look at -09 and let me know if your WGLC comments are addressed?

If not, please follow-up on the mailing list.



-----Original Message-----
From: tcpm <> On Behalf Of
Sent: Monday, July 22, 2019 8:04 AM
Subject: [tcpm] I-D Action: draft-ietf-tcpm-converters-09.txt

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the TCP Maintenance and Minor Extensions WG of the IETF.

        Title           : 0-RTT TCP Convert Protocol
        Authors         : Olivier Bonaventure
                          Mohamed Boucadair
                          Sri Gundavelli
                          SungHoon Seo
                          Benjamin Hesmans
	Filename        : draft-ietf-tcpm-converters-09.txt
	Pages           : 47
	Date            : 2019-07-21

   This document specifies an application proxy, called Transport
   Converter, to assist the deployment of TCP extensions such as
   Multipath TCP.  This proxy is designed to avoid inducing extra delay
   when involved in a network-assisted connection (that is, 0-RTT).

   This specification assumes an explicit model, where the proxy is
   explicitly configured on hosts.

The IETF datatracker status page for this draft is:

There are also htmlized versions available at:

A diff from the previous version is available at:

Please note that it may take a couple of minutes from the time of submission until the htmlized version and diff are available at

Internet-Drafts are also available by anonymous FTP at:

tcpm mailing list