Re: [tcpm] Disabling PAWS when possible

"Scheffenegger, Richard" <rs.ietf@gmx.at> Mon, 25 June 2018 09:34 UTC

Return-Path: <rs.ietf@gmx.at>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1817912D949 for <tcpm@ietfa.amsl.com>; Mon, 25 Jun 2018 02:34:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kdS6DZJwYlDg for <tcpm@ietfa.amsl.com>; Mon, 25 Jun 2018 02:34:36 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 824661277C8 for <tcpm@ietf.org>; Mon, 25 Jun 2018 02:34:35 -0700 (PDT)
Received: from [192.168.233.107] ([213.143.121.76]) by mail.gmx.com (mrgmx103 [212.227.17.168]) with ESMTPSA (Nemesis) id 0Lqhaw-1g2Zg409A2-00eQ4F; Mon, 25 Jun 2018 11:32:46 +0200
To: tcpm@ietf.org, nishida@sfc.wide.ad.jp, ncardwell@google.com
References: <CAO249yccvy3c2ytrwOFBAg88X3V4ubbUVzr_Ag3PnrJQOFmckg@mail.gmail.com> <CADVnQynPKzxeFHf_DrGCbQrqcv6U4r=p_3RGXyPfooMzQNQ=cg@mail.gmail.com> <CAO249yfD6na651CSWkzjYRFaEAft9MNyUgjf+X4JNHYJbTCvJw@mail.gmail.com>
From: "Scheffenegger, Richard" <rs.ietf@gmx.at>
Message-ID: <3b6c1b5f-766c-12e1-5fa9-35e369042120@gmx.at>
Date: Mon, 25 Jun 2018 11:32:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0
MIME-Version: 1.0
In-Reply-To: <CAO249yfD6na651CSWkzjYRFaEAft9MNyUgjf+X4JNHYJbTCvJw@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Provags-ID: V03:K1:qt7HZhH60mePmy1QRwp2p7EY+1rJsh1weREuvjzDnmXR/7KUdzD QcPXjv8w6skVVCvRzpFnKubll+jSk9eZwSqxeJr+KCQpkerRPre+4LkTyIRL0Hql9McOeyK ehOFSDPIgR7OL3mrffh4wWjgCuclhl0udHdbfP9Jby+dRSZIucecsxNqXReZgnbLPC8BAU5 SAe8yGCcCrxpq3oFlhOVA==
X-UI-Out-Filterresults: notjunk:1;V01:K0:kB9sc13f+4w=:vIUCGJ4/7cBjLmWoqWQ8dW CJ8Y+EKW23bm43YDEF8vCfqhTiHEsb5Vq2WUpxTJwtMn2LmD4giSwPX7OEh0tOA92iTj1eWyY I8fC2LD8lb17qgJSmhPZQgdym1Z4f2vmCsoF/zk1kGfaBjzBnEsQHyAq8yZJ6r6MkO6fAIIAM 6qHO1tjhK/JUWHWRDRrgyIGcRQdu0usJfimydTxvjDvNJzvxkO1KPzkcVlxbC3fU0Ru1Qhk3Y 9eQx67Q93+FBQYDQxYRQ5z423XdE8sVYLI44PGb/teRhpCOeTFHs2v7auNa616BlLoe2bmTbd 7LfSbzcyA1JFEOlRyPY7iMtOabJMd413BiwJMXBAiCFNUukLRU7fr0rJ7tmNbjWx7AQoHV/T7 XuaS/+19kjnKmQH2c8p6uoMN5oPaxSL9sMHgPITFUg/nTWBb0XRMNaXBVW7dCVL1+2DMDVMw7 OEib3Gogx0qgeQAguUr6lGToz6ZEFZSa7Wm4vQ1UkcGU7AKIQ+AjuIFwK6ZD91T8RcRasUFP/ ir/UK4wCJc/8YwEOfdon1Kf1V9gJt4/+3i5TVz5fxJpCK7I8K8407Y5zeV2/yEPZToUjKg3A2 7q02VAlOi8TNKzSViOLbhO4ZbUWAhA2fkhndv64zpWC80IPAWyCH//C1y+FvERoI+VuTHMp58 iM0uB/MTpoGgn4zkOajrAXRsaTyZKQczQnMYFDvrs73vKjkBUujYqdIiftejjTecYWLdYTUGc c8wGw+Q3FIMzWIx+3NFQ6adiXAaSZlTmyEGXV1sX6TrxNqqcrv5vTHv3tEjo2gXzy6mV266HY O2DVDyM
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/NV5axFx4jKmTgStEMKM-LH7S8LQ>
Subject: Re: [tcpm] Disabling PAWS when possible
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 25 Jun 2018 09:34:38 -0000

Hi Yoshifumi, Neal,


Am 23.06.2018 um 01:23 schrieb Yoshifumi Nishida:

> My intention is to relax the requirement "The TSopt MUST be sent in 
> every non-<RST> segment for the duration of the connection" in RFC7323
> so that TSopt can be sent at arbitrary intervals. Arbitrary intervals 
> can contain infinite interval, but you can only do so when you really 
> want, otherwise you shouldn't.
> So, disabling TS entirely is just an option.
> 
> 
>   >  From my perspective, one huge advantage from disabling PAWS is that it
>   >  enables the timestamps to be an opaque identifier, so that the sender
>   >  can use them in any way it chooses. In particular, it would allow the
>   >  sender to use microsecond timestamps, without worrying about the
>   >  remote side dropping packets due to PAWS checks. This was the main
>   >  challenge we found in implementing microsecond TCP timestamps inside
>   >  Google datacenters, as we discussed at TCPM a while back (slide 6):
> 
[...]

 >   >  My main comment would be, if some proposal is going to
 >   >  standardize a negotiation scheme for using timestamps but
 >   >  disabling PAWS, IMHO there could be huge value in having that
 >   >  negotiation mechanism optionally specify the semantics of a
 >   >  sender's timestamp values, so that congestion control and
 >   >  passive monitoring tools could make use of the timestamps
 >   >  for bandwidth and latency measurements. This could be
 >   >  something as simple as 2 bits, e.g.:
 >   >
 >   >  bits : meaning
 >   >   00: traditional RFC 7323 timestamps: use PAWS
 >   >   01: microsecond timestamps, disable PAWS
 >   >   10: millisecond timestamps, disable PAWS
 >   >   11: values with other semantics, disable PAWS




TSopt is today semi-opaque - a receiver can not rely on timestamps to 
have a specific granularity or monotonicity today.

It seems to me, that two paths should be discussed here: making TSopt 
completely opaque - that is, disallowing the receiver to make any use of 
it, only allowing it to be a signal from the sender in the past (1RTT) 
to the sender in the future.

Or making it more transparent, but disabling PAWS - meaning that the 
content of TSopt can actually be interpreted by a receiver, potentially 
allowing additional capabilities (one-way delay variation measurement, 
"TCP Chirp", springs to mind).


Provided the clock granularity is fine enough, both points (unique 
packet identifier, and allowing fine-grained timing data to be 
extracted) could be done.

Some of these functionalities were touched upon in this draft some time 
ago:
https://tools.ietf.org/html/draft-scheffenegger-tcpm-timestamp-negotiation-05

Best regards,
   Richard