Re: Predictable Internet Time

Joe Touch <> Tue, 03 January 2017 06:12 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 0EAE5129434 for <>; Mon, 2 Jan 2017 22:12:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -9.999
X-Spam-Status: No, score=-9.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-3.1] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id KCZ-bq4V9Ebh for <>; Mon, 2 Jan 2017 22:12:04 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 120AE12896F for <>; Mon, 2 Jan 2017 22:12:04 -0800 (PST)
Received: from [] ( []) (authenticated bits=0) by (8.13.8/8.13.8) with ESMTP id v036BPDr005160 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Mon, 2 Jan 2017 22:11:27 -0800 (PST)
Subject: Re: Predictable Internet Time
To: Phillip Hallam-Baker <>,
References: <> <> <>
From: Joe Touch <>
Message-ID: <>
Date: Mon, 02 Jan 2017 22:11:26 -0800
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1
MIME-Version: 1.0
In-Reply-To: <>
Content-Type: multipart/alternative; boundary="------------52E5E1984B11F0FF35CF2EA9"
X-ISI-4-43-8-MailScanner: Found to be clean
Archived-At: <>
Cc: IETF Discussion Mailing List <>
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: IETF-Discussion <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 03 Jan 2017 06:12:05 -0000

On 1/1/2017 11:24 AM, Phillip Hallam-Baker wrote:
> To have a complete solution, the way forward would be to require
> systems using PIT to use the 'time smear' approach that has been
> pioneered by Akamai and is now used by Amazon, Google, etc. albeit in
> slightly different and non standard ways.
> Using time smearing, a program will never emit the time value 12:59:60
> as demanded by the standard. Instead the leap second is added to the
> machine gradually over the course of 20 or 24 hours. This avoids the
> need to emit a time value that could cause a system to fail at the
> cost of a modest difference between the purported and actual value.

Smearing leads to differing interpretations of elapsed time for two reasons:

1) smearing isn't unambiguously specified
2) smearing doesn't match the clock standards set by the ITU (who
defines UTC)

A "complete" solution would have several properties:

- it would always indicate the correct UTC time
- it would calculate time differences accurately

There's no clear reason why that solution can't be split into parts,
e.g., using Unix time to calculate time differences and a (complex)
converter to deal with UTC leap seconds.