Re: [Ntp] Comments on Miroslav's NTP v5 proposal.

Miroslav Lichvar <mlichvar@redhat.com> Thu, 26 November 2020 11:04 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 D35423A1189 for <ntp@ietfa.amsl.com>; Thu, 26 Nov 2020 03:04:16 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.121
X-Spam-Level:
X-Spam-Status: No, score=-2.121 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, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, 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 pXbw6uKeZ20a for <ntp@ietfa.amsl.com>; Thu, 26 Nov 2020 03:04:15 -0800 (PST)
Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [63.128.21.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D95D73A11A1 for <ntp@ietf.org>; Thu, 26 Nov 2020 03:04:14 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1606388653; 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: in-reply-to:in-reply-to:references:references; bh=IWpK8EkZWuTC57nkN/ns8nyceiOnGcvgb8Djh/A7/90=; b=Fri7L1CSPK9BHSxh0qWX9+3KKWwnxIjz8JdngXkQDTCO/8U7Jr3CVZiGCTRd6hXpDBiKzC jpBfK2v2dh97t2o39OFd8JECay8BuHaGIOT0wXJYYuj2uAVMmkwJPEBLud6PMzj6cJ26g9 8ryUePBhIvheYBf3cubxW4av9CvO+yM=
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-216-FB_DOgdzNZGzDbmP44YtNQ-1; Thu, 26 Nov 2020 06:04:11 -0500
X-MC-Unique: FB_DOgdzNZGzDbmP44YtNQ-1
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9980C9A229; Thu, 26 Nov 2020 11:04:10 +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 22A23189B4; Thu, 26 Nov 2020 11:04:07 +0000 (UTC)
Date: Thu, 26 Nov 2020 12:04:06 +0100
From: Miroslav Lichvar <mlichvar@redhat.com>
To: Watson Ladd <watsonbladd@gmail.com>
Cc: NTP WG <ntp@ietf.org>
Message-ID: <20201126110406.GQ1734865@localhost>
References: <CACsn0cn8ULX5f_PQVbDsrirPnGHVPWGgMqXn52n_T4P5ELkKgQ@mail.gmail.com>
MIME-Version: 1.0
In-Reply-To: <CACsn0cn8ULX5f_PQVbDsrirPnGHVPWGgMqXn52n_T4P5ELkKgQ@mail.gmail.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11
Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mlichvar@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/cmY-Log52h7cp7ZUOKy6HbXjFUc>
Subject: Re: [Ntp] Comments on Miroslav's NTP v5 proposal.
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, 26 Nov 2020 11:04:17 -0000

On Sun, Nov 15, 2020 at 11:35:02PM -0800, Watson Ladd wrote:
> The following are unsorted, rough comments. I agree sending them
> outright before the meeting is probably suboptimal, but I need
> something to do to keep me awake to the meeting. Obviously this is an
> early draft, and I hope my suggestions are read as contributions not
> criticisms.

Thanks for the comments.

> The data types need some evocative names. Maybe shim for the 16 bit
> one? Not sure what works for the 32 bit one?

I have no good suggestions here. Maybe "short", "medium", and "long"?

> The distribution of multiple scales needs some careful thought,
> especially leap smearing. Insofar as we need monotonic clocks, I'm
> contemplating MJD as a basis for solving the problems leap smearing
> were supposed to solve, but we might be stuck with leap smearing due
> to the install base.

It's not clear to me how timestamps in a MJD-based format would help.

The "Monotonic Timestamp" from the draft is not supposed to have an
epoch and it actually doesn't need to be from a monotonic clock. I can
see how this could be confusing. There should be a better name for
this timestamp and concept.

> I'm not sure UT1 deserves a timescale. It's a comparatively slow
> moving offset from UTC, updated every month. Would an extension to
> propagate this difference work instead?

How would an extension be better? Are you worried we will need more
than 16 timescales, which wouldn't fit in the 4-bit field?

There must be some demand for UT1 as NIST runs UT1-based NTP servers.
That's the main reason why I put it there. I guess it's very
convenient for some astronomers.

> If Root Delay and Root Dispersion are propagated something needs to be
> said about their proper updating. These values are used in source
> selection, and so some degree of agreement across implementations is
> desirable.

I'd like to have a section on the metrics. Explain how they are
supposed to work and where they can be used, but unlike RFC5905 not
enforce any particular model of the clock.

> The monotonic additional timestamps are an intriguing idea but I'd
> like to know more about it. In particular the frequency to be
> distributed seems pretty awkward. Maybe I'm imagining the application
> entirely incorrectly.

The goal is to give clients two separate signals so they can better
measure their phase and frequency offsets. With a single signal there
is always a compromise between phase and frequency accuracy, which
leads to various issues.

As a simple example, consider the kernel PLL used by ntpd. The
monotonic timestamp could be set to the current system time adjusted
by the current PLL offset. The "monotonic" time provided by the server
would be very close to UTC (or another negotiated timescale), but its
frequency would be more stable.

I'm planning to make a demonstration of how this can improve stability
in a long chain of servers.

-- 
Miroslav Lichvar