Re: [Ntp] NTPv5: big picture

Philip Prindeville <philipp@redfish-solutions.com> Mon, 04 January 2021 19:28 UTC

Return-Path: <philipp@redfish-solutions.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 2AC003A0FEA for <ntp@ietfa.amsl.com>; Mon, 4 Jan 2021 11:28:57 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.001
X-Spam-Level:
X-Spam-Status: No, score=0.001 tagged_above=-999 required=5 tests=[SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 rKWIkQXODTYM for <ntp@ietfa.amsl.com>; Mon, 4 Jan 2021 11:28:55 -0800 (PST)
Received: from mail.redfish-solutions.com (mail.redfish-solutions.com [45.33.216.244]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D3A373A111C for <ntp@ietf.org>; Mon, 4 Jan 2021 11:28:34 -0800 (PST)
Received: from [192.168.3.4] ([192.168.3.4]) (authenticated bits=0) by mail.redfish-solutions.com (8.16.1/8.16.1) with ESMTPSA id 104JSUPq348037 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 4 Jan 2021 12:28:30 -0700
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.40.0.2.32\))
From: Philip Prindeville <philipp@redfish-solutions.com>
In-Reply-To: <89622453-292d-1a6d-3639-e653f446edb3@rubidium.se>
Date: Mon, 04 Jan 2021 12:28:30 -0700
Cc: ntp@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <1E439640-7562-449F-B7EB-89723770D2B3@redfish-solutions.com>
References: <20210101025440.ECE3340605C@ip-64-139-1-69.sjc.megapath.net> <20210104151813.GB2992437@localhost> <301BACA8-EFA2-4588-81B1-B39CD977298E@redfish-solutions.com> <89622453-292d-1a6d-3639-e653f446edb3@rubidium.se>
To: Magnus Danielson <magnus@rubidium.se>
X-Mailer: Apple Mail (2.3654.40.0.2.32)
X-Scanned-By: MIMEDefang 2.84 on 192.168.1.3
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/_2B-wKaxz2OchbT_WfhzvDeSZK4>
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: Mon, 04 Jan 2021 19:28:57 -0000


> On Jan 4, 2021, at 11:00 AM, Magnus Danielson <magnus@rubidium.se> wrote:
> 
> Philip,
> 
> On 2021-01-04 18:40, Philip Prindeville wrote:
>> 
>>> On Jan 4, 2021, at 8:18 AM, Miroslav Lichvar <mlichvar@redhat.com> wrote:
>>> 
>>> On Thu, Dec 31, 2020 at 06:54:40PM -0800, Hal Murray wrote:
>>>> Do we have a unifying theme?  Can you describe why we are working on NTPv5 in 
>>>> one sentence?
>>> There is a list of issues in NTPv4 I would like to see fixed in NTPv5:
>>> https://trac.ietf.org/trac/ntp/wiki/NtpVersionFourIssues
>>> 
>>> A major issue is that NTPv4 doesn't support short extension fields due
>>> to conflicts with legacy MACs, so fixing all those issues by adding
>>> new extending fields to NTPv4 seems impractical. Some things, e.g. the
>>> timescale selection, makes more sense to have in the header.
>>> 
>>>> Part of the motivation for this is to enable and encourage OSes to convert to 
>>>> non-leaping time in the kernels.  Are there any subtle details in this area 
>>>> that we should be aware of?  Who should we coordinate with?  ...
>>> I don't think that should be the job of the NTP WG. The kernels will
>>> need to support a leaping UTC timescale for as long as it is needed
>>> for civil time.
>> 
>> I disagree.  The kernel doesn’t inherently require UTC.  It could just as easily use TAI or some other format.
>> 
>> The kernel needs to provide into user-space some format which is then convertible to UTC, for as long as UTC is in-use by applications.
>> 
>> This could be handled by libc.
> 
> While I agree that kernel very well could operate in some suitable TAI
> format, and the PTP scale would be the low-hanging fruit for that, as it
> intends to be that blend of TAI and classical UNIX/POSIX time_t.
> 
> However, the only way I know with spreading in which TAI and UTC is
> maintained is through the kernel interface provided by the NTP
> nanokernel, and that is supported on effectively most Linuxes.
> 
> What can be done better is to use it properly and that libc would
> provide the needed glue. If libc does that, then from the user's point,
> if this is done completely in libc or shared between kernel and libc the
> user do not care, as long as they get correct time-stamp and the machine
> is setup to feed the needed data.
> 
> But then again, I do not think it's the NTP WG job do decide where it is
> implemented, rather we shall make sure the NTP side of things can
> support the needed features so that it works well.
> 
> Cheers,
> Magnus


It might not be our job, but by wearing many hats we can ease or even accelerate adoption.

When I was trying to get RFC-2597 and 2598 into widespread use in Internet traffic, I had to submit a PR glibc to get the IPTOS_DSCP_* definitions included, the IPTOS_CLASS_* definitions for RFC-2474, etc.

Then I (personally) wrote PR’s for Thunderbird, Firefox, Proftpd, Apache/APR, Sendmail, Postfix, Cyrus IMAPD, and yes, NTP, etc. and painstakingly ushered them through the integration process.  Often there were questions that needed to be addressed about why marking traffic for “high latency, high throughput” wouldn’t cause them to be disadvantaged as SLA-oriented provisioning was rolled out (there were a LOT of misconceptions about QoS).  I had to explain that traffic with no markings or default markings often would get the “whatever happens to be left” bandwidth category which could dynamically shrink to zero, and wasn’t where anyone wanted to be.  Sometimes having the same discussion over and over again in different forums.

Today a lot of traffic is correctly marked with the appropriate DSCP QoS that wasn’t 15 years ago when I started on this quest (well, to be honest the quest started 5 years before THAT when I was part of the Cisco initiative to make IOS-based routers and firewalls have bounded jitter so they’d be VoIP and IPTV-friendly).

My point is this: a necessary part of getting a new standard adopted is evangelizing its benefits, and removing its obstacles.

The work doesn’t stop when the standard gets published, or even a couple of interoperating implementations get released…

Does the WG collectively own this extra work?  No, that’s outside of our scope.  Do individual members of this WG have a higher probability of making the WG succeed if they apply that practical understanding of the problem into the world at large?  Most definitely.

-Philip