Subject: [tcpm] [Errata Verified] RFC7413 (5373)

From: RFC Errata System <[email-masked]>
Date: Thu, 14 Jun 2018 06:14:58 -0700 (PDT)

The following errata report has been verified for RFC7413,
"TCP Fast Open". 

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

--------------------------------------
Status: Verified
Type: Technical

Reported by: Vladimir Nicolici <[email-masked]>
Date Reported: 2018-05-31
Verified by: Mirja Kühlewind (IESG)

Section: 4.1.3.1.

Original Text
-------------
   For any negative responses, the client SHOULD disable Fast Open on
   the specific path (the source and destination IP addresses and ports)
   at least temporarily.

Corrected Text
--------------
   For any negative responses, the client SHOULD disable Fast Open on
   the specific path (the source and destination IP addresses 
   and the destination port) at least temporarily.

Notes
-----
The original language seems to imply that the cached negative response should only affect connections if they are initiated from the same source port and source IP.

Since the client source port can change for subsequent TCP connections, and it's unlikely that just changing the source port would result in a successful TCP FO connection when a previous connection from a different source port failed, associating the cached negative response with the source port is probably not very useful, and could actually be detrimental to performance and reliability, depending on the implementation.

If the implementation would decide to check the source port when matching negative cached responses to a new connection, it would negatively impact performance when the source port changes, because the implementation wouldn't find a matching negative response in the cache.

Furthermore, if each connection retry is made from a different source port, checking the source port when matching the cached negative responses would make the client unable to connect to the server, until all possible source ports are included in cached negative responses.

This means it's much better not recommending to associate the source port to the cached negative responses, to prevent any confusion and possible implementation issues.

Either that, or add additional clarification, describing exactly how a negative cached response should be matched to a subsequent connection attempt.

--------------------------------------
RFC7413 (draft-ietf-tcpm-fastopen-10)
--------------------------------------
Title               : TCP Fast Open
Publication Date    : December 2014
Author(s)           : Y. Cheng, J. Chu, S. Radhakrishnan, A. Jain
Category            : EXPERIMENTAL
Source              : TCP Maintenance and Minor Extensions
Area                : Transport
Stream              : IETF
Verifying Party     : IESG