Subject: [tcpm] [Errata Rejected] RFC7323 (5586)

From: RFC Errata System <[email-masked]>
Date: Fri, 6 Mar 2020 05:08:13 -0800 (PST)

The following errata report has been rejected for RFC7323,
"TCP Extensions for High Performance".

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

--------------------------------------
Status: Rejected
Type: Technical

Reported by: Marco Caspers <[email-masked]>
Date Reported: 2018-12-27
Rejected by: Mirja Kühlewind (IESG)

Section: 2.3

Original Text
-------------
Since the max window is 2^S (where S is the scaling shift count)
   times at most 2^16 - 1 (the maximum unscaled window), the maximum
   window is guaranteed to be < 2^30 if S <= 14.  Thus, the shift count
   MUST be limited to 14 (which allows windows of 2^30 = 1 GiB).  If a
   Window Scale option is received with a shift.cnt value larger than
   14, the TCP SHOULD log the error but MUST use 14 instead of the
   specified value.  This is safe as a sender can always choose to only
   partially use any signaled receive window.  If the receiver is
   scaling by a factor larger than 14 and the sender is only scaling by
   14, then the receive window used by the sender will appear smaller
   than it is in reality.

Corrected Text
--------------
Since the max window is 2^S (where S is the scaling shift count)
   times at most 2^16 - 1 (the maximum unscaled window), the maximum
   window is guaranteed to be < 2^30-2^14 if S <= 14.  Thus, the shift
 count
   MUST be limited to 14 (which allows windows of 2^30-2^14 ~ 1 GiB).
  If a
   Window Scale option is received with a shift.cnt value larger than
   14, the TCP SHOULD log the error but MUST use 14 instead of the
   specified value.  This is safe as a sender can always choose to only
   partially use any signaled receive window.  If the receiver is
   scaling by a factor larger than 14 and the sender is only scaling by
   14, then the receive window used by the sender will appear smaller
   than it is in reality.

Notes
-----
Shifting is inserting zeroes on the right hand side. Thus for S = 14 the 14 right most bits are zero and thus the calculation 2^30 is invalid for the guaranteed maximum window size.

Correct calculation formulae is (2^30 - 1) - (2^14 -1).
Which can be simplified to 2^30 - 2^14.
 --VERIFIER NOTES-- 
That section is for illustration purposes only, and not intended as an exact value for the maximum supported window size.

It is correct that the maximum supported window size is 2^30-2^14, but the requirement is, that the window size has to remain smaller than 2^30.

--------------------------------------
RFC7323 (draft-ietf-tcpm-1323bis-21)
--------------------------------------
Title               : TCP Extensions for High Performance
Publication Date    : September 2014
Author(s)           : D. Borman, B. Braden, V. Jacobson, R. Scheffenegger, Ed.
Category            : PROPOSED STANDARD
Source              : TCP Maintenance and Minor Extensions
Area                : Transport
Stream              : IETF
Verifying Party     : IESG

---

From: Mirja Kuehlewind <[email-masked]>
Date: Sat, 7 Mar 2020 12:07:54 +0100

Hi Marco,

I requested feedback from the authors on this. And as my first sentence says it’s only meant to be an approximate example in this section.

Errata are meant for things that have been on oversight when the document was published. The feedback I got from an author was that this is not the case here.

Thanks for filing the errata anyway and for checking!

Mirja

> On 6. Mar 2020, at 21:35, Marco Caspers <[email-masked]> wrote:
> 
> <quote> It is correct that the maximum supported window size is 2^30-2^14, but the requirement is, that the window size has to remain smaller than 2^30.</quote>
> 
> 2^30 -1 is smaller than 2^30, but that is an invalid value. The requirement is that the window size is smaller than 2^30-2^14.
> 
> -----Oorspronkelijk bericht-----
> Van: RFC Errata System <[email-masked]> 
> Verzonden: vrijdag 6 maart 2020 14:08
> Aan: [email-masked]; [email-masked]; [email-masked]; [email-masked]; [email-masked]
> CC: [email-masked]; [email-masked]; [email-masked]; [email-masked]
> Onderwerp: [Errata Rejected] RFC7323 (5586)
> 
> The following errata report has been rejected for RFC7323, "TCP Extensions for High Performance".
> 
> Reported by: Marco Caspers <[email-masked]> Date Reported: 2018-12-27 Rejected by: Mirja Kühlewind (IESG)
> 
> Section: 2.3
> 
> Original Text
> -------------
>   window is guaranteed to be < 2^30-2^14 if S <= 14.  Thus, the shift  count