Re: [Ntp] NTPv5: big picture

Hal Murray <hmurray@megapathdsl.net> Fri, 01 January 2021 05:53 UTC

Return-Path: <hmurray@megapathdsl.net>
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 6B65B3A0D93 for <ntp@ietfa.amsl.com>; Thu, 31 Dec 2020 21:53:34 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.037
X-Spam-Level: *
X-Spam-Status: No, score=1.037 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_DYNAMIC_IPADDR=1.951, PDS_RDNS_DYNAMIC_FP=0.001, RDNS_DYNAMIC=0.982, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=no 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 RhgS7T9TbLe7 for <ntp@ietfa.amsl.com>; Thu, 31 Dec 2020 21:53:32 -0800 (PST)
Received: from ip-64-139-1-69.sjc.megapath.net (ip-64-139-1-69.sjc.megapath.net [64.139.1.69]) by ietfa.amsl.com (Postfix) with ESMTP id CCD793A0D8E for <ntp@ietf.org>; Thu, 31 Dec 2020 21:53:30 -0800 (PST)
Received: from shuksan (localhost [127.0.0.1]) by ip-64-139-1-69.sjc.megapath.net (Postfix) with ESMTP id A54D840605C; Thu, 31 Dec 2020 21:53:26 -0800 (PST)
X-Mailer: exmh version 2.7.2 01/07/2005 with nmh-1.3
To: Magnus Danielson <magnus@rubidium.se>
cc: ntp@ietf.org, hmurray@megapathdsl.net
From: Hal Murray <hmurray@megapathdsl.net>
In-Reply-To: Message from Magnus Danielson <magnus@rubidium.se> of "Fri, 01 Jan 2021 04:35:04 +0100." <155b7ae6-c668-f38f-2bbd-fd98fa4804db@rubidium.se>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Thu, 31 Dec 2020 21:53:26 -0800
Message-Id: <20210101055326.A54D840605C@ip-64-139-1-69.sjc.megapath.net>
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/mcCnQPaubHo7fmNszzZvjOR_LKA>
Subject: Re: [Ntp] NTPv5: big picture
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: Fri, 01 Jan 2021 05:53:35 -0000

magnus@rubidium.se said:
> Define "get rid off". Do you meant you want the basic protocol to use a
> monotonically increasing timescale such as a shifted TAI? If so, I think it
> would make a lot of sense. 

I'd like the basic document not to include the words "leap second", except 
possibly for a chunk that says we-don't-do-that, look-over-there.

I didn't say TAI because I don't know enough about the politics of using that 
term.

My straw man is that POSIX time, UTC, leaping, and smearing should be moved to 
extensions and they be described in a separate document.


[moving leaps out of kernels]
> I think that would be far to ambitious to rock that boat.

Yes, but if everybody says that nothing will ever happen.

> Kernels already operate with a double vision and have ways to handle both
> non-leaping time and leapsecond in parallel. 

My (Linux) man page has various options for clock_gettime(), but it doesn't 
say anything about leap seconds or TAI.  Yes, it should be reasonable to add, 
but it's not there yet.


[options]
> The solution that works for other protocols is that you ask for capabilities
> (or you get them served as part of basic handshake). This is typically a
> text-string of well defined capability names. Set of constants or set of bits
> have also been seen.

That works fine for cases like SMTP or HTTP where it represents a minor 
fraction of the overall workload.  The usual context is the client can get 
their work done without the new feature but do things better if they use 
new/optional features.  In the context of NTP, we don't want to use a server 
if it doesn't support a feature we need.  It would be better to discover that 
without going through NTS-KE.


> Do not assume you have it, prefer the authenticated answer when you can get
> it. I am not sure we should invent another authentication scheme more. 

An important difference between NTP exchanges and feature requests is that the 
available features change very slowly.


> So, we want to be able to poll the server of capabilities. Remember that this
> capability list may not look the same on un-authenticated poll as for
> authenticated poll. It may provide authentication methods, hopefully one
> framework fits them all, but we don't know. As you ask again you can get more
> capabilities available under that authentication view. Another configuration
> or implementation may provide the exact same capabilities regardless of
> authentication.

Yes, but it we take that approach then we have to consider all the 
opportunities for the bad guy to forge answers so we get downgraded to a 
less-good mode of operation.


> Do no assume you have DNS access, the service cannot rely on that. It can
> however be one supplementary service. NTP is used in some crazy places.
> Similarly with DNSSEC, use and enjoy it when there, but do not depend on its
> existence. 

I'm happy for a config file to use numeric IP Addresses rather than host names.

I think that can be made to work with NTS but I haven't tried it.




-- 
These are my opinions.  I hate spam.