Subject: [multipathtcp] [Technical Errata Reported] RFC8684 (6609)

From: RFC Errata System <[email-masked]>
Date: Mon, 14 Jun 2021 10:51:36 -0700 (PDT)

The following errata report has been submitted for RFC8684,
"TCP Extensions for Multipath Operation with Multiple Addresses".

--------------------------------------
You may review the report below and at:
https://www.rfc-editor.org/errata/eid6609

--------------------------------------
Type: Technical
Reported by: Krishna Khanal <[email-masked]>

Section: B.3

Original Text
-------------
   initiator                                                    listener
       |                                                           |
       |    S  0(20) <MP_CAPABLE>, <TFO cookie>                    |
       | --------------------------------------------------------> |
       |                                                           |
       |    S. 0(0) ack 21 <MP_CAPABLE>                            |
       | <-------------------------------------------------------- |
       |                                                           |
       |    .  1(100) ack 21 <DSS ack=1 seq=1 ssn=1 dlen=100>      |
       | <-------------------------------------------------------- |
       |                                                           |
       |    .  21(0) ack 1 <MP_CAPABLE>                            |
       | --------------------------------------------------------> |
       |                                                           |
       |    .  21(20) ack 101 <DSS ack=101 seq=1 ssn=1 dlen=20>    |
       | --------------------------------------------------------> |
       |                                                           |

                    Figure 19: The Listener Supports TFO

Corrected Text
--------------
initiator                                                    listener
       |                                                           |
       |    S  0(20) <MP_CAPABLE>, <TFO cookie>                    |
       | --------------------------------------------------------> |
       |                                                           |
       |    S. 0(0) ack 21 <MP_CAPABLE>                            |
       | <-------------------------------------------------------- |
       |                                                           |
       |    .  1(100) ack 21 <DSS seq=1 ssn=1 dlen=100, M=1, A=0>  |
       | <-------------------------------------------------------- |
       |                                                           |
       |    .  21(0) ack 1 <MP_CAPABLE>                            |
       | --------------------------------------------------------> |
       |                                                           |
       |    .  21(20) ack 101 <DSS ack=101 seq=1 ssn=1 dlen=20>    |
       | --------------------------------------------------------> |
       |                                                           |

                    Figure 19: The Listener Supports TFO

Notes
-----
The example for TCP Fastopen with MPTCPv1 in RFC8684, Appendix-B.3 shows the listener sending an incorrect data-ack in its first data packet to the initiator sent immediately after its SYN-ACK.
At this point, the listener has not received the initiator's key, so it cannot generate the data-ack in it's response packets.
The correct behaviour would be to set flag 'A' to 0 and exclude sending data-ack until the initiator's key is received.

Instructions:
-------------
This erratum is currently posted as "Reported". If necessary, please
use "Reply All" to discuss whether it should be verified or
rejected. When a decision is reached, the verifying party  
can log in to change the status and edit the report, if necessary. 

--------------------------------------
RFC8684 (draft-ietf-mptcp-rfc6824bis-18)
--------------------------------------
Title               : TCP Extensions for Multipath Operation with Multiple Addresses
Publication Date    : March 2020
Author(s)           : A. Ford, C. Raiciu, M. Handley, O. Bonaventure, C. Paasch
Category            : PROPOSED STANDARD
Source              : Multipath TCP
Area                : Transport
Stream              : IETF
Verifying Party     : IESG