Re: [Ntp] Antw: Re: Antw: [EXT] A different NTPv5 design

Miroslav Lichvar <mlichvar@redhat.com> Thu, 30 April 2020 11:56 UTC

Return-Path: <mlichvar@redhat.com>
X-Original-To: ntp@ietfa.amsl.com
Delivered-To: ntp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 647603A0ACE for <ntp@ietfa.amsl.com>; Thu, 30 Apr 2020 04:56:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.101
X-Spam-Level:
X-Spam-Status: No, score=-2.101 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=redhat.com
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 MhlIYXIP_fuo for <ntp@ietfa.amsl.com>; Thu, 30 Apr 2020 04:56:29 -0700 (PDT)
Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 941253A0ACC for <ntp@ietf.org>; Thu, 30 Apr 2020 04:56:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1588247788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+gtTIl2eFUhR8gUYsFh3pnIoqHnpkHpmUmcaphavIyM=; b=QV5VS3a07ekc3DcLFFkjfm4D5FD1FBpN4N8nkvGMATsAn40aYMRo2SPwgHEiPECb9rxmdx xDYtSrM2wRZJcCptJlGD9KtpUKjozOp52zosS54XQk7qDReY4kLiLDlZn4uUCQWCopUr/z LW5IwFhhALA7qvwjVmPGrgcSu/XpX34=
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-186-NsXS-pYsPd2zkkg3koaNnw-1; Thu, 30 Apr 2020 07:56:26 -0400
X-MC-Unique: NsXS-pYsPd2zkkg3koaNnw-1
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8B6E08015CE; Thu, 30 Apr 2020 11:56:25 +0000 (UTC)
Received: from localhost (holly.tpb.lab.eng.brq.redhat.com [10.43.134.11]) by smtp.corp.redhat.com (Postfix) with ESMTPS id CC01A1001920; Thu, 30 Apr 2020 11:56:24 +0000 (UTC)
Date: Thu, 30 Apr 2020 13:56:22 +0200
From: Miroslav Lichvar <mlichvar@redhat.com>
To: Ulrich Windl <Ulrich.Windl@rz.uni-regensburg.de>
Cc: "ntp@ietf.org" <ntp@ietf.org>
Message-ID: <20200430115622.GB25085@localhost>
References: <7114_1588171569_5EA99331_7114_20_1_20200429144540.GD8457@localhost> <5EAA7620020000A1000389F2@gwsmtp.uni-regensburg.de> <20200430101644.GA25085@localhost> <5EAAB0D1020000A100038A21@gwsmtp.uni-regensburg.de>
MIME-Version: 1.0
In-Reply-To: <5EAAB0D1020000A100038A21@gwsmtp.uni-regensburg.de>
X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/cG_q_iRg8mCq_c-sudTsg_cDTLo>
Subject: Re: [Ntp] Antw: Re: Antw: [EXT] A different NTPv5 design
X-BeenThere: ntp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <ntp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ntp>, <mailto:ntp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ntp/>
List-Post: <mailto:ntp@ietf.org>
List-Help: <mailto:ntp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ntp>, <mailto:ntp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 30 Apr 2020 11:56:33 -0000

On Thu, Apr 30, 2020 at 01:04:49PM +0200, Ulrich Windl wrote:
> So autokey V2 uses a single "field type" (2), but several "Codes" (and R|E
> variants). As the protocol changes a lot more "field types" will be consumed. I
> think it was a very bad idea to pollute the field type namespace that way.

Ok. This is the old issue in how the field type is interpreted
differently in different contexts. For NTPv5 we can specify it any way
as long as it's consistent with the types that were already assigned.
There are not that many of them. I assume we don't want to assign new
NTPv5-specific types to the existing NTPv4 extension fields.

Of course, implementations that want to support NTPv5 will need
conform to the specification in how they interpret the field to
prevent a new extension field to be mismatched. I don't see a problem
here.

> > Is 14 days not enough in advance? The timestamp could be in an
> > extension field if it needs to be provided.
> 
> It sounds more like the minimum. I feel like it SHOULD be 30 days at least.

There was a time (before RFC 5905) when ntpd announced it whole month
before. That lead to the leap indicator getting stuck as there was no
period where it should be unset. I'd rather not risk that happening
again.

> > I don't follow. How would a transition phase help? Clients either
> > support NTPv5 and can process an NTPv5 response with the modified
> > fields, or not. Existing servers already have all information needed
> > to support NTPv5 and can easily do so.
> 
> The transition phase might help some bad clients that disregard the version
> field, misinterpreting data.
> (Yes, NTPv3 is still active)

I still don't follow. A client won't get an NTPv5 response unless it
makes an NTPv5 request. Old clients will work exactly as before. It
was the same with the NTPv3->NTPv4 transition.

I'm not sure how much should we care about buggy clients, anyway.

> > No, it's an enumeration with 8 possible values. It wouldn't make sense
> > for a client to request two or more timescales at once.
> 
> OK, I see they are mutually exclusice that way. Is an agreement protocol for a
> common timestamp format needed?

The timescale field is the whole protocol. If a client wants to get
timestamps in TAI, it will set the field to the value corresponding to
TAI. If the server supports it, it will respond with the same value in
the field. If it doesn't support it, it will respond with a different
value and the client can either accept the timestamps in the other
timescale or ignore the response (and switch to another server if it's
a pool for example).

> Will there be versions > 7 ever?

It could be, but it would need to be saved in a different field. 7
would mean "go look elsewhere".

-- 
Miroslav Lichvar