Re: [Ntp] The bump, or why NTP v5 must specify impulse response

Dieter Sibold <dsibold.ietf@gmail.com> Tue, 14 April 2020 11:19 UTC

Return-Path: <dsibold.ietf@gmail.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 941153A0B94 for <ntp@ietfa.amsl.com>; Tue, 14 Apr 2020 04:19:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, FREEMAIL_FROM=0.001, SPF_HELO_NONE=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=gmail.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 qtmzPkUbcmqW for <ntp@ietfa.amsl.com>; Tue, 14 Apr 2020 04:19:15 -0700 (PDT)
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com [IPv6:2a00:1450:4864:20::334]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 14AE23A0B76 for <ntp@ietf.org>; Tue, 14 Apr 2020 04:19:15 -0700 (PDT)
Received: by mail-wm1-x334.google.com with SMTP id h2so12534502wmb.4 for <ntp@ietf.org>; Tue, 14 Apr 2020 04:19:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=509kB3CUTvN++sejErA+f5s0rtmF2QHqsmyWctSZMI0=; b=Kv9iTkexfippt/uzzTOK9WV29osEVyVwV9JOJbyFSZ8GmP/VM+TUKWlBbX+KwUdtk3 dCEp9W+tLqIWvzNfuPqYfiJ5Ml5OfuPa1EcmaPV5mL0AvXAOnOHnmHLYdH80HnTCVpvV JGvUnGJIp8vQTuKWHNC4vJA6LL/z4eCbFdUWQJnvLiI56RBSKtDMTmfrtLucaXZjhoBs 6E+k2SWRfNBysLNn8Qt6pWG7hUTXRQmcQEAP0bgwsawrbJiEZANcp4w+VRkSfsNU7Q2s zP4qGvm+8KP9PHmss/84kpB32O9Fdjpwb1JoLF7TmCcqH0PzdMBiOlxAmVnLziDU4ySR RbgA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=509kB3CUTvN++sejErA+f5s0rtmF2QHqsmyWctSZMI0=; b=eT39r5rLCPUZ6g7jFe8eSX1Try3w2r4+fEHwURs7bxKP/adnOoAilR02UTHB+4WutK 6fB0NUjurMrmnSLLhIx0wXoAHgdpmmJx91Ou2JiYJsK9e+yp2eSa7dV1DkF3HaGsjSsq LEb800CoPAM4/bBvMkmrqUqv+nFA/Ck2f3vzIG5BGRKnl6N8kVQDYzQiT2YJAUkJXp7z jtE+C1Nlsf9DAUPLX2Z4zSQvXpZXvTcq9YkDL6Ofby1qZ9emOUywWdmF0nRU4nlp7iXB UsaJDltKeU2TdHHBYeNgmfCQz9jBtJDIBdz9csslgxouWzP2U89RBoHUGTvebfXQGEn1 dPYA==
X-Gm-Message-State: AGi0PuZ2G4yo6uNfxmrL7FpTMvU7h1MDY+HCC0m21bLS5PZ57wCSPP1y EgA9REYc6p07DtqE9VcbbYY=
X-Google-Smtp-Source: APiQypJFKgVJRqLSBq9fawMcxxkqTo8f4AWMjuaOQFi0tESAPPz8UnH+YIGgq94DvCbAmV61Z00tQA==
X-Received: by 2002:a1c:98c2:: with SMTP id a185mr23990255wme.85.1586863153343; Tue, 14 Apr 2020 04:19:13 -0700 (PDT)
Received: from [192.168.111.35] (p200300D17F06AF005CBFEB72F5316CDC.dip0.t-ipconnect.de. [2003:d1:7f06:af00:5cbf:eb72:f531:6cdc]) by smtp.gmail.com with ESMTPSA id s24sm17110038wmj.28.2020.04.14.04.19.12 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 14 Apr 2020 04:19:12 -0700 (PDT)
From: Dieter Sibold <dsibold.ietf@gmail.com>
To: Doug Arnold <doug.arnold@meinberg-usa.com>
Cc: Daniel Franke <dfoxfranke@gmail.com>, Watson Ladd <watsonbladd@gmail.com>, NTP WG <ntp@ietf.org>
Date: Tue, 14 Apr 2020 13:19:11 +0200
X-Mailer: MailMate Trial (1.13.1r5671)
Message-ID: <F7E5836A-4C7A-4A1A-B769-65EADE2C8F5C@gmail.com>
In-Reply-To: <DB8PR02MB56111CCA23CDCF97A3C9F3E8CFDD0@DB8PR02MB5611.eurprd02.prod.outlook.com>
References: <CACsn0c=zzDKP6iBjPJWGF0rkqSaY3AY738ynGwDZO14sdBJ-Bg@mail.gmail.com> <CAJm83bB2A3VUxXX47Y0ubmS9Xne7PRSyV_xHY_D9YvHjqE-vFA@mail.gmail.com> <CACsn0cm3jpKZTUQ=novTgVaFhc1xCJgmUF3oOgdrzQa-HgOCUQ@mail.gmail.com> <CAJm83bAqbMMs2W3SyH+3c17wcC85paY4-_jk2SxczgsxBLyYyA@mail.gmail.com> <CAJm83bAQeR_6U3jgmbWzdus3pu+OO2_KP+M9RtbCFYOfDQy4dw@mail.gmail.com> <DB8PR02MB56111CCA23CDCF97A3C9F3E8CFDD0@DB8PR02MB5611.eurprd02.prod.outlook.com>
MIME-Version: 1.0
Content-Type: text/plain; format="flowed"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/WOi5CJ_I02i-BYWvQtVUbXnk5HI>
Subject: Re: [Ntp] The bump, or why NTP v5 must specify impulse response
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: Tue, 14 Apr 2020 11:19:19 -0000

I think the document which specifies the new NTP protocol should not 
consider the clock steering algorithm as Doug suggest. But we should 
start a second document in which we describing at least one possible 
steering algorithm. This might only be informational.

Dieter

On 13 Apr 2020, at 23:22, Doug Arnold wrote:

> I think that the most important thing for the clock steering algorithm 
> in ntpv5 is that it is modular.  Define an interface to the clock 
> steering subsystem so that people can make servo loop filters 
> specialized for a specific set of conditions.
>
> If we define a default clock steering algorithm, the most important 
> property is that it always converges, even if it is not the most 
> accurate for any specific network conditions.  It probably has to be 
> fairly simple to have this property.  Complex algorithms usually have 
> weird corner cases.
>
> As for Kalman filters, they work really well for things like GPS 
> receives where the noise properties are relatively constant.  Then you 
> can tune them for those noise properties.  Queuing noise in a network 
> varies wildly, and is often exhibits a highly skewed client clock 
> error measurement probability density with a peak near zero followed 
> by a long tail in one direction.  I suspect that Kalman filters will 
> perform poorly on highly skewed data unless you have a non-linear 
> prefilter to make the noise probability density closer to gaussian.  I 
> know of people who have gotten good results for PTP servo loops using 
> Kalman filters, but with a generalized luckly packet prefilter to 
> eliminate the long tail in the distribution, and with the prefilter 
> also determining the Kalman filter parameters.  That is a complicated 
> algorithm which probably has some catastrophic corner cases, so it 
> wouldn't be a good candidate for a default servo loop which always 
> works at least ok.
>
> Doug
>
> ________________________________
> From: ntp <ntp-bounces@ietf.org> on behalf of Daniel Franke 
> <dfoxfranke@gmail.com>
> Sent: Monday, April 13, 2020 1:09 PM
> To: Watson Ladd <watsonbladd@gmail.com>
> Cc: NTP WG <ntp@ietf.org>
> Subject: Re: [Ntp] The bump, or why NTP v5 must specify impulse 
> response
>
> What motivates my skepticism here, by the way, is a belief that it's
> possible to get much, much better performance with better
> synchronization algorithms. A number of academic researchers have
> experimented with Kalman filters [1][2][3] and gotten phenomenal
> results, in the case of [1], two orders of magnitude better than stock
> ntpd 4.2.0. I suspect that this could be even further improved with
> more accurate network models (Kalman filters would be provably optimal
> if network jitter were Gaussian, but we all know it isn't). I want to
> avoid specifying any requirements that would discourage or obstruct
> this sort of research from being developed into production
> implementations.
>
> [1] https://ieeexplore.ieee.org/abstract/document/4268082
> [2] http://alumni.media.mit.edu/~aggelos/papers/tuffc_nov04.pdf
> [3] 
> https://www.sciencedirect.com/science/article/pii/S1474667015361358
>
> On Mon, Apr 13, 2020 at 3:24 PM Daniel Franke <dfoxfranke@gmail.com> 
> wrote:
>>
>> I don't think I follow. In what sense does it limit the length of the
>> chain, other than that stratum is capped at 16? And what
>> characteristic of RFC 5905's recommended input response address the
>> problem? (I need to read the book you've referenced before I fully
>> understand the problem in the first place; I've ordered it but it'll
>> take some time to arrive).
>>
>> On Mon, Apr 13, 2020 at 3:15 PM Watson Ladd <watsonbladd@gmail.com> 
>> wrote:
>>>
>>>
>>>
>>> On Mon, Apr 13, 2020, 7:21 AM Daniel Franke <dfoxfranke@gmail.com> 
>>> wrote:
>>>>
>>>> On Sun, Apr 12, 2020 at 6:11 PM Watson Ladd <watsonbladd@gmail.com> 
>>>> wrote:
>>>>> Section 14.5 of Phase Lock Techniques by Floyd Gardner describes
>>>>> difficult problems caused by the accumulation of errors in a chain 
>>>>> of
>>>>> PLLs under benign conditions, and section 2.2.4 describes the root
>>>>> cause, namely an inevitable peak in the transfer function of a 
>>>>> second
>>>>> order filter. I don't think these are insolvable in NTP v5, but 
>>>>> they
>>>>> should give pause to the idea that we can avoid needing to specify 
>>>>> the
>>>>> the synchronization algorithm. The peaking of the PLL needs to be
>>>>> controlled, or some thing more complex needs to be specified.
>>>>
>>>> Are the algorithms in RFC 5905 vulnerable to this? If so, I think 
>>>> that
>>>> shoots down any implication that it's a practical necessity to 
>>>> solve
>>>> this in the NTPv5 spec, since we've obviously been getting by okay 
>>>> so
>>>> far.
>>>
>>>
>>> v4 limits the length of the chain and specifies the input response 
>>> to have, which solves the problem.
>>>
>>>>
>>>> Just to be clear, though, I'm not proposing that the WG should be
>>>> *silent* on synchronization algorithms in v5. Just that whatever we
>>>> have to say about it should be in a separate, Informational 
>>>> document,
>>>> and can discuss the design space and suggest multiple possibilities
>>>> rather than require one particular thing.
>
> _______________________________________________
> ntp mailing list
> ntp@ietf.org
> https://www.ietf.org/mailman/listinfo/ntp
> _______________________________________________
> ntp mailing list
> ntp@ietf.org
> https://www.ietf.org/mailman/listinfo/ntp