Re: [Ntp] ntp-over-ptp concerns

Miroslav Lichvar <mlichvar@redhat.com> Mon, 18 March 2024 15:17 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 54B20C18DBA3 for <ntp@ietfa.amsl.com>; Mon, 18 Mar 2024 08:17:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.103
X-Spam-Level:
X-Spam-Status: No, score=-2.103 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.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dzYlMOhK_sxr for <ntp@ietfa.amsl.com>; Mon, 18 Mar 2024 08:17:01 -0700 (PDT)
Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1FBBBC18DB93 for <ntp@ietf.org>; Mon, 18 Mar 2024 08:17:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1710775020; 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=ysr9WzI6PF03J+QVV91GmwT1fsxw4KQVkIOO6IFogZQ=; b=A/0IFlLO5tUvF2VXl30E1LnIn8AMWapLqKo6LFeyKLI2uRAp+Egz8b06N8zJjSIdut8BUu FeTSkm3zpteA/TWsBSqXqLqoJIw9KTh/OkAiZ8wp5H2tW3cIN9p7qysbG1NDlGUwpLcrhG YJCl699KdJo0y5pfaFwOsHM0QfmAHO8=
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-552-JU0ikcB1O8aZ-RIQG9S9uA-1; Mon, 18 Mar 2024 11:16:55 -0400
X-MC-Unique: JU0ikcB1O8aZ-RIQG9S9uA-1
Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 17989872808; Mon, 18 Mar 2024 15:16:55 +0000 (UTC)
Received: from localhost (unknown [10.43.135.229]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 28F21492BC4; Mon, 18 Mar 2024 15:16:54 +0000 (UTC)
Date: Mon, 18 Mar 2024 16:16:53 +0100
From: Miroslav Lichvar <mlichvar@redhat.com>
To: Rodney Cummings <rodney.cummings@keysight.com>
Cc: Rodney Cummings <rodney.cummings=40keysight.com@dmarc.ietf.org>, NTP WG <ntp@ietf.org>, Doug Arnold <doug.arnold@meinberg-usa.com>
Message-ID: <Zfha5e_qPafzuhYz@localhost>
References: <DM6PR17MB3484BA12E5E0214094779270832B2@DM6PR17MB3484.namprd17.prod.outlook.com> <ZfG46DseQnstP42z@localhost> <DM6PR17MB3484BAD48E399E34F9099D53832A2@DM6PR17MB3484.namprd17.prod.outlook.com>
MIME-Version: 1.0
In-Reply-To: <DM6PR17MB3484BAD48E399E34F9099D53832A2@DM6PR17MB3484.namprd17.prod.outlook.com>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.10
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/aunH0GY05Ss0jZCoeJnJ4hWvX9o>
Subject: Re: [Ntp] ntp-over-ptp concerns
X-BeenThere: ntp@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Network Time Protocol <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, 18 Mar 2024 15:17:05 -0000

On Wed, Mar 13, 2024 at 05:46:43PM +0000, Rodney Cummings wrote:
> By protocol standardization, I mean any protocol: IP, TCP, HTTP, NTP, PTP, LLDP, etc.
> First, the transmitting device identifies the protocol’s message on the network… “Hello this message is from protocol <whatever>”.
> Second , the standard for the protocol specifies how the protocol works on the network. This standard is *not* limited to the format of the message. It includes behavior (e.g., response to a request, periodic transmit), state machines, management… all sorts of required/optional specs beyond just the message format.

We are not trying to change or ignore any of that. NTP over PTP uses a
subset of the specified protocol, which could be observed in a normal
PTP network. It's a delay request which doesn't have a delay response.

It's not supposed to be a new behavior of PTP, which would have to be
specified by IEEE.

> Of course people come up with great new ideas, but these fundamentals of protocol standardization have to be respected, or else our entire technological world will break down (e.g., TCP won’t work).
> If a great new idea comes around, that idea needs to be formally integrated into the protocol standard.
> 
> The problem with draft-ietf-ntp-over-ptp-02 is that it is violating these fundamentals. It uses the 1588 message format (i.e., says “Hello I am 1588”), but it doesn’t follow the requirements in the IEEE 1588 standard.

Can you please point to (some of) the specific requirements of IEEE
1588 which the current proposal of NTP over PTP doesn't follow? I'm
not aware of anything forbidden or conflicting with what NTP over PTP
is doing, but it's possible I missed it. I admit I have not read all
500 pages and even the parts I have read I'm not able to keep all in
my head. 

NTP over PTP transmits only unicast delay request messages. That's
what ports in the UNCALIBRATED and SLAVE states normally do. There is
no unicast negotiation for this message, so we don't need any
signalling messages.

Only ports in the MASTER state respond to delay requests. In other
states they are ignored. Without MASTER ports there are no delay
responses, announce messages and sync messages.

An alternate BMCA is allowed by 1588. It doesn't have to use data from
received announce messages. It can select statically or dynamically
based on other inputs.

>From the PTP point of view I think we can describe NTP over PTP as a
domain of ordinary clocks using unicast messaging, E2E delay
mechanism, and an alternative BMCA with ports switching between the
PASSIVE and UNCALIBRATED states. When an NTP-over-PTP instance needs
to send an NTP message, it changes its internal PTP state so that the
alternative BMCA selects the corresponding NTP target as the master,
the port state is switched to the UNCALIBRATED state, the unicast
NTP-over-PTP delay request is sent, and the state is immediately
changed back to switch the port to the PASSIVE state. The PTP part of
the receiver ignores the message, but the NTP part processes it. The
minimum delay request interval can be a very small fixed value.

Do you see anything wrong with that?

I think there are other ways how it could be described, e.g.
temporary PTP instances.

> Until then, the documents working up to the PAR creation must be kept internal to the 1588 WG. Anyone on the mailing list is welcome to join the 1588 WG to see those docs. Just use these instructions to send an email:
> https://sagroups.ieee.org/1588/how-to-join-p1588/

If we could join as the whole WG with this list that would be nice.

> There are a small handful of proposals out there for unicast client/server protocols that use 1588 messages, but do not conform to 1588 requirements. Two of them are publicly documented:
> https://engineering.fb.com/2024/02/07/production-engineering/simple-precision-time-protocol-sptp-meta/
> https://github.com/meinberg-sync/flashptpd
> I view ntp-over-ptp as a third.

Those two proposals look very different to me than NTP over PTP and
in this case I'd agree they do not conform to the current 1588
requirements, because they send unicast sync messages without
negotiation.

-- 
Miroslav Lichvar