Re: Increasing precision of Last-Modified header to allow sub-second granularity?

David Booth <david@dbooth.org> Tue, 31 January 2012 22:20 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7041121F85AA for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 31 Jan 2012 14:20:17 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level:
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id IptgFZMU6xbS for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 31 Jan 2012 14:20:16 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 34C9921F85A4 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 31 Jan 2012 14:20:16 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.69) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1RsM2p-0006G9-L8 for ietf-http-wg-dist@listhub.w3.org; Tue, 31 Jan 2012 22:19:19 +0000
Received: from aji.keio.w3.org ([133.27.228.206]) by frink.w3.org with esmtp (Exim 4.69) (envelope-from <david@dbooth.org>) id 1RsM2T-0006Ed-Kr for ietf-http-wg@listhub.w3.org; Tue, 31 Jan 2012 22:18:57 +0000
Received: from relay02.pair.com ([209.68.5.16]) by aji.keio.w3.org with smtp (Exim 4.72) (envelope-from <david@dbooth.org>) id 1RsM2M-00005I-AJ for ietf-http-wg@w3.org; Tue, 31 Jan 2012 22:18:56 +0000
Received: (qmail 12966 invoked from network); 31 Jan 2012 22:18:22 -0000
Received: from 98.118.64.3 (HELO ?192.168.10.110?) (98.118.64.3) by relay02.pair.com with SMTP; 31 Jan 2012 22:18:22 -0000
X-pair-Authenticated: 98.118.64.3
From: David Booth <david@dbooth.org>
To: Julian Reschke <julian.reschke@gmx.de>
Cc: ietf-http-wg@w3.org
In-Reply-To: <4F285843.5020904@gmx.de>
References: <1328034711.2250.16605.camel@dbooth-laptop> <4F285843.5020904@gmx.de>
Content-Type: text/plain; charset="UTF-8"
Date: Tue, 31 Jan 2012 17:18:21 -0500
Message-ID: <1328048301.2250.20721.camel@dbooth-laptop>
Mime-Version: 1.0
X-Mailer: Evolution 2.28.3
Content-Transfer-Encoding: 7bit
X-W3C-Hub-Spam-Status: No, score=-2.6
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7
X-W3C-Scan-Sig: aji.keio.w3.org 1RsM2M-00005I-AJ 11d73c69bb180c3c943418b104186f6c
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Increasing precision of Last-Modified header to allow sub-second granularity?
Archived-At: <http://www.w3.org/mid/1328048301.2250.20721.camel@dbooth-laptop>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/12282
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>
Resent-Message-Id: <E1RsM2p-0006G9-L8@frink.w3.org>
Resent-Date: Tue, 31 Jan 2012 22:19:19 +0000

On Tue, 2012-01-31 at 22:08 +0100, Julian Reschke wrote:
> On 2012-01-31 19:31, David Booth wrote:
> > Not sure where to ask this, but . . .
> >
> > Has there been any thought or discussion of allowing the Last-Modified
> > header to (optionally) carry more precision that one second, for the
> > benefit of clients that wish to reliably detect when a server has
> > changed its output faster than once per second?  For example:
> >
> >    Last-Modified: Fri, 27 Jan 2012 20:21:10.011483 GMT
> 
> I don't think this has been mentioned so far.
> 
> > Note that it is possible to get around the current one-second limitation
> > using ETags, but it would be nice if finer precision could be indicated
> > directly in the Last-Modified header.
> 
> Not sure what this buys you compared to an ETag?

In building a high-speed distributed system based on HTTP, I am finding
myself forced to use the ETag to encode a high-resolution last modified
time, which seems silly given that there is already a Last-Modified
header.  If I do everything with the ETag instead of the Last-Modified
header, then what's the point of having the Last-Modified header?  Well,
it turns out that for many other purposes it is convenient to have a
header that you know is a time (rather than an opaque server-generated
string).  This means that servers must set *both* the Last-Modified
header *and* the ETag if one wishes to indicated a high-resolution last
modified time.  But since the ETag is an opaque string, the clients will
not know that it is actually a high-resolution last modified time
without some non-standard prior agreement.  Thus, in situations where
high-resolution last-modified times are relevant, it would simplify both
servers and clients if the Last-Modified header could optionally carry
fractional seconds.

> 
> > I'm assuming that this is out of scope for the current HTTPbis charter,
> > so I'm mostly asking this regarding potential future work.  But the
> > "Potential Work" page is almost empty, and hasn't been updated in 16
> > months:
> > http://trac.tools.ietf.org/wg/httpbis/trac/wiki/PotentialWork
> >
> > Has this been discussed?  If not, does the suggestion belong?
> 
> I think the Wiki page is a good pace to record this as proposal.

Thanks, I've added it:
http://trac.tools.ietf.org/wg/httpbis/trac/wiki/PotentialWork


-- 
David Booth, Ph.D.
http://dbooth.org/

Opinions expressed herein are those of the author and do not necessarily
reflect those of his employer.