Re: New Version Notification for draft-nottingham-site-wide-headers-01.txt

Mark Nottingham <> Fri, 25 November 2016 02:35 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 1B8A012A1C0 for <>; Thu, 24 Nov 2016 18:35:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -8.398
X-Spam-Status: No, score=-8.398 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-1.497, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id F7N2kpJ4U8P8 for <>; Thu, 24 Nov 2016 18:35:43 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 24E191293F8 for <>; Thu, 24 Nov 2016 18:35:43 -0800 (PST)
Received: from lists by with local (Exim 4.80) (envelope-from <>) id 1cA6KT-0004cN-3E for; Fri, 25 Nov 2016 02:33:33 +0000
Resent-Date: Fri, 25 Nov 2016 02:33:33 +0000
Resent-Message-Id: <>
Received: from ([]) by with esmtps (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <>) id 1cA6KN-0004bc-20 for; Fri, 25 Nov 2016 02:33:27 +0000
Received: from ([]) by with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <>) id 1cA6KH-0002W6-1O for; Fri, 25 Nov 2016 02:33:21 +0000
Received: from [] (unknown []) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPSA id 7D15922E255; Thu, 24 Nov 2016 21:32:57 -0500 (EST)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 10.1 \(3251\))
From: Mark Nottingham <>
In-Reply-To: <>
Date: Fri, 25 Nov 2016 13:32:54 +1100
Cc: Mike West <>, HTTP Working Group <>, "Emily Stark (Dunn)" <>
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <> <> <>
To: Martin Thomson <>
X-Mailer: Apple Mail (2.3251)
Received-SPF: pass client-ip=;;
X-W3C-Hub-Spam-Status: No, score=-8.1
X-W3C-Hub-Spam-Report: AWL=1.466, BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_DB=-1, W3C_IRA=-1, W3C_IRR=-3, W3C_WL=-1
X-W3C-Scan-Sig: 1cA6KH-0002W6-1O 78c71db0e2208a76928c342661126405
Subject: Re: New Version Notification for draft-nottingham-site-wide-headers-01.txt
Archived-At: <>
X-Mailing-List: <> archive/latest/33011
Precedence: list
List-Id: <>
List-Help: <>
List-Post: <>
List-Unsubscribe: <>

> On 25 Nov. 2016, at 11:53 am, Martin Thomson <> wrote:
> I'm of the opinion that a well-known global resource (or set of
> resources, because we're already there) that contained specific and
> precise policies about an origin is valuable.  As Mike points out,
> there are things that you can say more clearly when you aren't
> constrained by saying something about a specific HTTP response.
> That's a principled position that I can respect.
> At the same time, we need to deal with the fact that we've got a bunch
> of per-response header fields that are gradually proliferating.  At
> some level, we're basically just looking for some better compression
> (as Mark's draft points out, HPACK is pretty close to good enough for
> this purpose).
> The HTTP header fields stuff in Mike's draft is abominable.  I think
> that Mark is much closer to an approach that will deploy successfully
> for stuff that we currently have - at least in the short term.
> Where the tension seems to come from is that all the existing stuff is
> basically stuck in header fields for the foreseeable future.  That's
> unpleasant, because even if we were to define principled equivalents
> in terms of Mike's draft, then we're still stuck supporting header
> fields indefinitely.  It makes the work to define the principled thing
> much less appealing, because now you have two mechanisms to do the
> same thing with all the duplication and conflicts that come from that.

Well described, although migrating *existing* site-wide things away from headers is only a nice-to-have goal for me; the real goal is to avoid the need to define future ones (or at least to put them on the wire very often, depending on which way we go).

If I read things correctly, one strong possibility is to take the generic "headers" out of Mike's spec and define syntax for existing site-wide headers on a case-by-case basis. That gets existing site-wide headers off the wire for those clients that implement, although they will still need to be able to deal with the header version for the foreseeable future.

I think that's a fine outcome (because it's effectively a graceful transition) if we can get a commitment to implement from most/all browsers (or "convince" them to do it relatively soon). If we can't, we're effectively stuck with site-wide headers for existing *and* future things, no matter what we do; see separate thread with Emily.

Thus the repeated requests for other browser folk to chime in.


Mark Nottingham