Subject: [tcpm] 64bit draft & PAWS

From: Mark Allman <[email-masked]>
Date: Mon, 03 Apr 2017 09:50:56 -0400

Hi Jonathan!

I watched your presentation about 64bit sequence numbers at last
week's meeting.  And, I then read the draft.

The first question I have comes from the intro.  The intro calls out
wrap rates given fast networks.  Fine enough.  But, nothing is ever
said about PAWS.  Maybe I am missing something obvious, but I
expected the standard thing that protects against wrap to be at
least mentioned.  Why is PAWS not good enough here?  Probably you
have some good reason and it seems obvious and so you didn't think
to write it down, but could you sketch the relationship here?

Thanks!

allman

--
https://www.icir.org/mallman/
@mallman_icsi

---

From: Jonathan Looney <[email-masked]>
Date: Mon, 3 Apr 2017 12:59:54 -0400

> to write it down, but could you sketch the relationship here?

Hi Mark,

Thanks for your question!

The impetus for this was the combination of two proposals at Seoul:
1. Allowing window sizes up to 2 ** 31.
2. Allowing timestamps up to nanosecond granularity.

I think the individuals making these presentations had good reasons for
their proposals; however, I think the combination makes PAWS considerably
more fragile than it is today.

Also, importantly, if people already need 2 ** 31 window sizes for
high-bandwidth transfers, it seems like it may be only a matter of time
before people need even larger window sizes.

Jonathan

---

From: Joe Touch <[email-masked]>
Date: Mon, 3 Apr 2017 13:36:00 -0700

Hi, Mark,

Not sure if it matters, but PAWS is about stale data corrupting new data.

64bit windows is about allowing a much larger amount of outstanding data
(in the pipe) - all of which is valid.

AFAICT.

Then again, I do wonder about the impact on the ISN if a machine goes
back and forth between using 64-bit and not. (e.g., as might happen in a
server pool during an upgrade).

Joe

On 4/3/2017 6:50 AM, Mark Allman wrote:
> _______________________________________________
> tcpm mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/tcpm

---

From: Mark Allman <[email-masked]>
Date: Mon, 03 Apr 2017 16:42:33 -0400

> Not sure if it matters, but PAWS is about stale data corrupting new

Yes.

> 64bit windows is about allowing a much larger amount of outstanding
> data (in the pipe) - all of which is valid.

Just to be clear, the draft proposes 64 bit SEQUENCE NUMBERS (not
windows).

Bigger sequence numbers then then allows for the window scale to
increase---to 46, if I recall correctly---but, I was reacting to the
words about quick sequence wrap in the intro (which is in fact what
PAWS aims to help).

So, yes, they're related, but not the same.

allman

---

From: Joe Touch <[email-masked]>
Date: Mon, 3 Apr 2017 13:50:27 -0700

On 4/3/2017 1:42 PM, Mark Allman wrote:
> increase---to 46, if I recall correctly

Right -  there were two rationales presented in the intro:

1) (and the primary one, AFAICT)

   While sequence number wrapping is a basic feature of
   TCP, the specified wrapping mechanism only supports having a
   theoretical maximum of 2**31 bytes outstanding at any given time.

2) (and somewhat secondary, as "Additionally" suggests):

   Additionally, when you are re-using sequence number space in such a
   short timeframe, it is unclear that the existing mechanisms for
   detecting duplicate packets will be sufficient

> ---but, I was reacting to the

I agree you might argue that PAWS may undermine the second benefit, but
not the first...

Joe