Re: [Ntp] NTP over PTP

Doug Arnold <doug.arnold@meinberg-usa.com> Tue, 29 June 2021 17:10 UTC

Return-Path: <doug.arnold@meinberg-usa.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 A9B5A3A3B00 for <ntp@ietfa.amsl.com>; Tue, 29 Jun 2021 10:10:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=meinberg-usa.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 m6eu6ZSH5Xeg for <ntp@ietfa.amsl.com>; Tue, 29 Jun 2021 10:10:08 -0700 (PDT)
Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70050.outbound.protection.outlook.com [40.107.7.50]) (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 A93DA3A3B0D for <ntp@ietf.org>; Tue, 29 Jun 2021 10:10:07 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XPWpJ/SX6v/6lFNI2TnfVpRqYbzz/zaFgrIBoigkSvS5WzFmQoSWj3vEXtKh/8wFGs0hMIU3o8HMy4km9dDRZSsKKXF4DNnxKBiWwySLmVqhodn3ZHoNcwbNbu6R5QStfYZ+xrD/2ONW8AzqUyDUR4idZu9by4aU6k1BcxqQQdtdIPU0n+p95aIRWDDf02deGjo/dHkTs5s4eQU09jczn/1yAm6cj1Kno8bdczohV6hS/WDDHrmAXBYryVkiLbTVAHzt3V7YzCtqowCx9V9Co2hfPeqLavHdsrE+dn9nbJzyA33InkF1woWD0GRBd7HYFJRLMKJ/KOz6eih+3EPhSg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MAoJTsfxNkD4ylEVIgVhty3W8vnnTqwh3bdUQRw6/L0=; b=ksOKfOFFg8gPQF7spV5nqVgeyXCWor+Q+tu0qwoFlrGC5KFDBdkU2rzpy1sFk88jsrEqAxFHOc9cQ0ZPEcNWKAAG3inWQ1bBhlU2fGBfPqsxvIo6sOziEhzJmupkGmSM9pBFI32Jb923C6P8nRXDFZvDmD5dHBljyh2/H7NViwz+q6zYiDfi4GciOoWeWmrRF9W/nSKzOh0IAkf3Qo7h2Ru8KI1oxjGfXBFVk4wyIv+uaGAzQiupoLtyBodRq9SdalYHyJCGlW7RAhY3M45sfecFFVwAyTClwXuvqI2cbQgaU6MWQCcd87aPoR/3H7prQX0r3XN4xNST9ZjqBb1wcA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=meinberg-usa.com; dmarc=pass action=none header.from=meinberg-usa.com; dkim=pass header.d=meinberg-usa.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=meinberg-usa.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MAoJTsfxNkD4ylEVIgVhty3W8vnnTqwh3bdUQRw6/L0=; b=bow+zGWSIRlYT26Rb4+0RwkXql4/UE4iiaP5Dfujbixe77MzLtCK1wGqW4DcLKvJ0xV/F9RPhmxDCD+39JrdNR7xkZxn5H4Od4okdbvCto2SWh6ANjAj0h+5JxNjnAL3TJblrvsFTDF4xppCHJ07FV0FpLapvBZiuojQubN3LclqZc9ua8uNwLZJ/bXBZwN0PtmDnfxLZs9ahlYdhdHOCMF1j4rOB0hP8br7MixspvTSCk1qQoCPA4Q/V/XOWlaGgDmAcuVLrZzTxBux7QPg9fFnUv9uMiGzA4XMV8tVv1hn1dfmIDOzKLNG+wUzFybxnDYMzZr77xxsmllWbWYtoQ==
Received: from AM7PR02MB5765.eurprd02.prod.outlook.com (2603:10a6:20b:102::15) by AM6PR02MB4724.eurprd02.prod.outlook.com (2603:10a6:20b:5a::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.20; Tue, 29 Jun 2021 17:10:02 +0000
Received: from AM7PR02MB5765.eurprd02.prod.outlook.com ([fe80::7021:78f3:a3bd:4cd9]) by AM7PR02MB5765.eurprd02.prod.outlook.com ([fe80::7021:78f3:a3bd:4cd9%7]) with mapi id 15.20.4242.023; Tue, 29 Jun 2021 17:10:02 +0000
From: Doug Arnold <doug.arnold@meinberg-usa.com>
To: Heiko Gerstung <heiko.gerstung=40meinberg.de@dmarc.ietf.org>, Miroslav Lichvar <mlichvar@redhat.com>
CC: "ntp@ietf.org" <ntp@ietf.org>
Thread-Topic: [Ntp] NTP over PTP
Thread-Index: AQHXaOy2RanQBIDiAE2pVM3dA2BOcKskskeAgATDsICAABV6gIABCUeAgAAGegCAAChPAIAAG2qAgABL+uk=
Date: Tue, 29 Jun 2021 17:10:02 +0000
Message-ID: <AM7PR02MB576508DB03AF7D49E0624227CF029@AM7PR02MB5765.eurprd02.prod.outlook.com>
References: <YNRtXhduDjU4/0T9@localhost> <36AAC858-BFED-40CE-A7F7-8C49C7E6782C@meinberg.de> <YNnSj8eXSyJ89Hwv@localhost> <D32FAF20-F529-496C-B673-354C0D60A5AF@meinberg.de> <YNrDGy2M2hpLz9zc@localhost> <C5D99A22-84B8-4D27-BE74-D8267FB1DCB0@meinberg.de> <YNrqWjHPtC7ToAL8@localhost>, <125F908E-F80D-4873-A164-A460D96316E5@meinberg.de>
In-Reply-To: <125F908E-F80D-4873-A164-A460D96316E5@meinberg.de>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dmarc.ietf.org; dkim=none (message not signed) header.d=none;dmarc.ietf.org; dmarc=none action=none header.from=meinberg-usa.com;
x-originating-ip: [64.30.82.72]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 4189af41-1249-43e2-1675-08d93b20bb93
x-ms-traffictypediagnostic: AM6PR02MB4724:
x-microsoft-antispam-prvs: <AM6PR02MB47245AAA4D5A4B65A46A3ACDCF029@AM6PR02MB4724.eurprd02.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: i83VsznBdBL6gYVL8B/jchDWphmlVQMBaO2OOQaivrZSS7DixreHOsM5N1Kri+XiflSoclVfyKXqGK5N4cmaS7alGXT0DkiFYmn4iLGQlIU5Z0i9KPAWiU5q3heSx6salyTD3vVfv5lwMvB8/pvsb1AqsfQuxKOaHbovzLfVEfcWu4ZojeRl/7YAqQBkODCzSRpqGvppwbBIC+n4d6AcOUYA1702mIdZ0d7WVw5BsRRT3tEmxd1kVViJ61/RxUCrdJjMUDDtljcJHEZIVfJ774tzo+5xQf9rHTQZbEn2fhVsj1pq6Sph5/ggyxl9B7t/fOe2MRjCkWCYK+sXWmmzwZU6HIPUSuxdmamp6XkUlWcH8BHPufVlhzd13jhIR/Duqe+x3WWpywgzlAGBpCCJ/AxuQusahirYXx/gzqaXtNAMLe4kRV/1SyEZlOy6KoRAynfudjXe37dH1RfS/Eu2d8xMKHvDLWpRhKD8Gjvxc3xyIoj5f9LpTOzfF1awP8ft8QVl6smKQhSlc8KZzmXItsIQlRNykMW1jF6HbF4WHGfATe62JLbntxXPvF+/DQUBS8/2NI6WsBAP9edpv2AV/9b74LiQglZmLFtjxAmGjznGPzmOXF4gc4OaV5OWxww2YHFu2Lzdag1yAOiqJY0hbICUfK8EYGc5l5qkIfhpmJbjWVEr4hxhaSzNvIXooU3/Ri1hdwyK8CJ3Q20Zc5ZNqkYrRzCqCWV/VXykdBdP8TLOhBM5bx0n5bQleetzZ5QOOOqJ29T9NAzQ2qWHLS4LKA==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR02MB5765.eurprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(136003)(396003)(366004)(376002)(39830400003)(346002)(316002)(55016002)(66946007)(45080400002)(91956017)(9686003)(66476007)(33656002)(71200400001)(110136005)(76116006)(966005)(2906002)(66446008)(64756008)(66556008)(8676002)(478600001)(8936002)(52536014)(86362001)(5660300002)(44832011)(38100700002)(83380400001)(7696005)(166002)(4326008)(30864003)(53546011)(122000001)(186003)(6506007)(26005)(66574015); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: FmCOxpTSLtbt6oCDIg4PSuclXyLpzLeNEMTdz7jj03NK2nzauyxFs5MeCbYSZyZk+A+iA2xQ2YmrNYo1YfVf1WJSrXxYsDUn9LA9wlilc62Oiye4cfL3Z+N9iYxWt8s2GnxMMybMKSXgalf7DfGjsk5Gs+tgIAAcR1inD9TKHuHcq6oqvxC8VXs5YDfdMoqMe2tsgfMkObE0u7mMGz+sLw/7n4NaXpHbBmvGJ95uIV0V2K9bkHnkHbLxHAHkxF62fPO6kKDDrNgEWEqIUHOGIK8FqORo41XOyYKJwi1ZlNSxVhMTmd2Ul1XkpmIMbY9w2Q/t5wLACaMVB9nfyuolDtE9eSTJ2hnyUnTE/eA42AULVQJ57tfmHFPDhhlMraFTHLXwDE+TdOWbh2rQFYPpIlI5D8K9iHGXyrlYjHQ1x5n3/x3/ZCkutPasHvUDzLDfvVyNlBzZHTuXfdYk1Pez+tLyhr4AcPTTM6cNsIu8y9AFEgQ0BJKZwPkjm9iR24iMXBbJfzjcG/rLMZJhU/CBaTqg2jnYhQXnfbGUODhwaIP3a2IWxhfhDtdBLyUqzQmm5ZyDc0o0xxyCm+YwCuVR6NZFAJf8G5GM5DmKCDnselC43j3C46DP+r/GYvtblzey8YYc6yiLOjKXwwFD0EZ39R1fYR98T9axk6MvtTAwQeMPEbg2XrZWgDa7iUjXJIvB+1HJ+4B9r8xh5Hly2+tqyBwgnM0m3kNlY5Lr230nDRS0+4jkPxihteLp1ILDG251Zq8jWJYiT+YHApWDffmVfZ8g9PbCEF6vx+Tn9MSokGTRlEEy7FXQ3nG6tkCBe92JTP2uusxf8zH1W6Gq9VgElOVCHrlCcuNj1i6Ur5S45eJix2+bQu92Xny6UWt/m2CAczgbOYx4uTo3xxPttHoX9Ekt62EhuDGDRQHVxo9J2NK240zivnJRxnGOxE624FgSdO+IKCg5d2Rds5YpZ2kyIhH6Ed7tl2fSONIuGp86NPonTf7H0L84K06qQGSt8f0Z4sJtrg6fH9t1L6xW4BmBOqE8fgVLUU5HmQZ1orMQIautkhsuGfEFxlWYSNwYuYVcmGxBXSmKbtQMwDM8VbqJfvyMZm69HtJV7LejDVYfhp1SngBW94Jv101VGwL/UAhhBQ/j9JrvbqJ+DCX/LKms+e9Y5ecrAl9Q/RD6SrH7ipz/xI43CT+L4rnfZW7Ncy1DTOz0D5DNYcbNHcC1K3o8wFeQnGIfGA1aGttU2VSH8hJXO6OGbdP8tUBrayevYekTLY3FWX896ga8JYwS6ohuVtA8flz8w8P7T7RCunC7qFRgzdaztkKHpFidnh9Kswil3rYmexlEMnrIKwj/+yuinQ==
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_AM7PR02MB576508DB03AF7D49E0624227CF029AM7PR02MB5765eurp_"
MIME-Version: 1.0
X-OriginatorOrg: meinberg-usa.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: AM7PR02MB5765.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4189af41-1249-43e2-1675-08d93b20bb93
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jun 2021 17:10:02.0691 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: d59904cd-769f-4368-8bd0-f5f435893a38
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: G3JBhW3wyg+F/TuP9UmWdW3RTTuqIvkJKU9dC7d7NP1RjSzIvc3Ceje2to2/r8tGLCEZzeZxQBEmme40TNOrpOe90FmbjG2/ZMCqegHOPjw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR02MB4724
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/2maQSpixP1APFRYgKDutvTxAY48>
Subject: Re: [Ntp] NTP over PTP
X-BeenThere: ntp@ietf.org
X-Mailman-Version: 2.1.29
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: Tue, 29 Jun 2021 17:10:15 -0000

PTP with embedded NTP messages would not be accepted by the equipment vendors who make PTP capable devices, and not be accepted by network operators who deploy PTP.  Even when the PTP ATHENTICATION TLV was defined people were concerned about making PTP messages longer.  The NTP messages would be redundant information that adds no value, accept for the attached ICV.  So why not just add the ICV and skip the NTP message.

I’ve spoken previously about replacing unicast PTP with NTP.  Technically that should work as NTP and unicast PTP basically do the same thing in a slightly different way.  Large data centers operators, who are fond of leap smears, will probably want to stay with NTP, even as their timing agreement requirements are trending down to the 10 microsecond range.  Finance network operators are flexible and will use whatever works, so there will probably be some PTP and some NTP deployments, both of which should be secure.

However some industries are wedded to unicast PTP.  Telecom is heavily invested in PTP for wireless back haul timing.  The investment is in their standards, in product development and network deployment. Their contributions to the definition of NTPv4 were rejected,  but IEEE 1588 made significant changes to PTP to support them. So this community is not likely to move from PTP to NTP.  Ditto for the power industry, who sometimes use unicast PTP between substations.  Grid operators are used to following the lead of telecom for inter substation communications.  Note that the IEC republished the IEEE 1588 standard as IEC 61588.

The broadcast, Industrial automation, automotive, and test and measurement industries are also heavily invested in PTP, but use multicast with on path support. So they will want a group key management protocol such as GDOI, or something like NTS4PTP.

Doug

From: ntp <ntp-bounces@ietf.org> on behalf of Heiko Gerstung <heiko.gerstung=40meinberg.de@dmarc.ietf.org>
Date: Tuesday, June 29, 2021 at 7:18 AM
To: Miroslav Lichvar <mlichvar@redhat.com>
Cc: ntp@ietf.org <ntp@ietf.org>
Subject: Re: [Ntp] NTP over PTP
> On Tue, Jun 29, 2021 at 09:15:22AM +0200, Heiko Gerstung wrote:
>> > On Mon, Jun 28, 2021 at 05:02:43PM +0200, Heiko Gerstung wrote:
>> >> > The unicast mode seems to be intended for networks with partial
>> >> > on-path hardware support, where requirements on accuracy are less
>> >> > strict, and I think this might already be better supported by NTP.
>> >> They might be less strict but that does not mean they are worse/equal
>> >> compared to NTP.
>> >
>> > How so?
>> Because of the removal of jitter/delay variation in the network stack and OS
>> layer (kernel) of the server and the client.
>
> That jitter/delay has no impact on PTP or NTP measurements when using
> hardware timestamping. Even with software timestamps they can be
> eliminated if the timestamp can be captured in the network driver
> right before passing the packet to hardware, as most drivers on Linux
> can do.
Even a kernel generated SO_TIMESTAMP is subject to jitter and latency on a multitasking OS. For egress timestamps you might be able to control that to a certain extent, but for ingress timestamps the network driver will read out the rx queue of the chip and timestamp packets/frames whenever it gets to it.

But I agree that once you use hw timestamping for NTP, you can get results which are as good as PTP on a host.

>> > You said unicast transparent clocks don't really exist. That would be
>> > the only advantage of unicast PTP. Boundary clocks could fully support
>> > hardware-timestamped NTP if someone was actually interested in
>> > implementing that.
>> I was wrong, or better: my knowledge was outdated. Arista for example
>> supports unicast in their switches now.
>
> Ok, I could extend the NTP-over-PTP draft to take advantage of that
> if the support is expected to spread.

You definitely should do that.

>> > Without full on-path support NTP should generally perform better than
>> > PTP as it doesn't assume network has a constant delay.
>> Why do you think PTP assumes a constant network delay? PTP is measuring the
>> delay constantly in both directions and calculates the round trip.
>
> Yes, it does, but it is separate from the offset calculation.
Which is not the same as claiming that PTP assumes the "network has a constant delay".

> The calculation is described in section 11.2 of 1588-2019. It uses
> <meanDelay> and there is only the TX and RX timestamp of the sync
> message like in the NTP broadcast mode. If the distribution of the
> actual delay is not symmetric, as is common without full on-path
> support, the average error of the measurements will not even get close
> to zero. PTP relies on full hardware support. Without that, it
> generally cannot perform as well as NTP.
Wrong, even without full on-path support unicast PTP uses delay requests/responses to take the client-to-server delay into consideration as well. See IEEE1588-2019 Subsection 11.3 for a description of how this works. ITU-T G.8265.1 (Telecom Profile)  and its frequency-only approach is not using the delay req/resp exchange as it does not need to compensate the delay (it is only used to synthonize the client, which is typically a 2G/3G/4G FDD base station ). All other unicast PTP use-cases that I am aware of are using a round trip delay calculation to compensate the delay, including the newer telecom profiles that have been created to allow phase synchronization for TDD.

> Another issue with using PTP in network without PTP support is RX
> timestamping fixed to the beginning of the message. If the server is
> on a 1Gb/s link and the PTP client is on a faster link, there will be
> an asymmetry of hundreds of nanoseconds due to the asymmetric delay
> in forwarding of messages between different link speeds.
Yes, there are implementations which take that into account by applying static correction values to compensate for link speed asymmetry. I believe this also affects NTP, but in most cases hundreds of nanoseconds are not a problem for applications relying on NTP synchronization.

>> > In the context of the drafts we are discussing here, I think it might
>> > be easier for an existing PTP implementation to add support for
>> > NTP+NTS than add NTS4UPTP.
>>
>> We are maintaining three different PTP implementations here at Meinberg and I
> can tell you that this is not true.
>
> I don't know what implementations are those, but at least for the
> well-known open-source implementations I think it would be.

I am not so sure about this, but ultimately for those implementations the maintainers should probably speak. To me it looks like it would be easier to add NTS-over-PTP support to existing NTS4NTP implementations (you mentioned 7 LoC for chrony earlier) than having to add a full NTS-for-NTP implementation to an existing PTP stack.

>> I did not say that hardware is not timestamping PTP event messages that carry
>> a TLV. I just pointed out that some of the hardware timestampers might look at
>> the length of a packet and do not timestamp anything that is longer then X
>> bytes. A sync message is 44 bytes plus maybe 26 bytes for the
>> AUTENTICATION_TLV.  If you remove the requirement for the AUTHENTICATION_TLV
>> because you want to run NTS over PTP, your PTP "header" is 44 bytes + 48 bytes
>> for the NTP header + anything that NTS adds (Unique Identifier EF, NTS
>> Authentication and Encrypted Extension Fields EF, at least one NTS Cookie EF).
>> It is a bit complicated (for me) to calculate the total maximum size of such an
>> NTS over PTP packet, but I am guessing that you will end up with more than 128
>> bytes, which might be a limit packet matching algorithms have for quickly
>> identifying if this can be a PTP event message.
>
> Ok, so it's not about the message having a fixed length, but a maximum
> length. That looks like a very odd quirk. Do you have a specific
> example of such a hardware?

Over the years I have come to see a lot of odd things in regards to PTP implementations (latest highlight: a software-only implementation of a transparent clock in an industrial switch), therefore I would not be surprised if there are some implementations out there who will break or simply not work when being faced with a NTS-over-PTP packet. For the one I have in mind: this is not a product / implementation I am responsible plus we have an NDA in place with that vendor, so I cannot name names here.

There are more challenges I see for NTS-over-PTP. You need to synchronize the clock of the hardware timestamper itself, i.e. getting the time into the silicon that creates the timestamp. PTP timestamps are TAI (not UTC), which itself is not a problem as long as you know the TAI-UTC offset. On a server (PTP Grandmaster) this is typically done by using some form of hardware sync for the timestamper engine, e.g. setting the ToD to the upcoming TAI second and then use the PPS to zeroize the fractions. In reality the solution is typically more sophisticated as you do not want to see micro timesteps at the start of every second.

On a client you have to synchronize your system time with the time of the hw timestamper (e.g. the NIC). That time is synchronized by the hardware itself to the PTP server. PTP4L uses phy2sys for this, but I am not sure about the accuracy with which you can read out the PHC clock and correct the OS clock with it. There is a delay when accessing a NIC over the PCI(e) bus, but this is affecting PTP in the same way. So for the client, you should be on par with PTP in this regard. But for a server you have to find a NIC that supports feeding the PPS of your GNSS receiver (for example) to it, not impossible but also not an easy task for someone who is responsible for maintaining highly accurate synchronization for an entire corporate network.

The next challenge is on the server, which for unicast PTP requires a certain timestamp queue size to support a usable number of clients. A lot of NICs that claim they have IEEE1588 hardware support have small to tiny ts queue sizes, one common exampe is 4 timestamps. That means you have to be able to read out the hardware timestamps very quickly and you will not really have a chance on high speed links with hundreds and thousands of incoming NTS-over-PTP requests per second.  Those hardware timestamping engines have been designed to be used for PTP clients only, and even then not for the high packet rates that PTP supports (and sometimes requires to improve accuracy over partial on-path-support networks). They cannot be used for servers expecting to handle a high packet rate.

Finally, I am not sure if IEEE1588 would be happy about an IETF standard "hijacking" one of their protocols, but most probably they cannot do anything about it. Personally I think it is a hack and should not be standardized, but that's just me. I would rather like to see some standard way of flagging an Ethernet frame that I send out to trigger a hardware timestamping engine to timestamp that frame. Such a universal approach could be used by NTP, PTP and other protocols and applications as well (not only time sync protocols), for example to measure network propagation delays etc. It is incredibly hard to get support for this into the silicon of companies like Intel or Broadcom etc., but if it would be universal enough, the chances are higher that it will make its way into products eventually.

Again, most of the hardware timestampers would probably work and if you want to pursue this approach and move it forward, please do so. It just does not address the problem of securing PTP, therefore I believe it is neither an alternative to any of the submitted NTS for PTP documents.

   Heiko


--
Heiko Gerstung
Managing Director

MEINBERG® Funkuhren GmbH & Co. KG
Lange Wand 9
D-31812 Bad Pyrmont, Germany
Phone: +49 (0)5281 9309-404
Fax: +49 (0)5281 9309-9404

Amtsgericht Hannover 17HRA 100322
Geschäftsführer/Management: Günter Meinberg, Werner Meinberg, Andre Hartmann, Heiko Gerstung

Email:
heiko.gerstung@meinberg.de
Web:
Deutsch https://www.meinberg.de
English https://www.meinbergglobal.com

Do not miss our Time Synchronization Blog:
https://blog.meinbergglobal.com

Connect via LinkedIn:
https://www.linkedin.com/in/heikogerstung