Re: Alt-Svc alternative cache invalidation (ext#16)

Martin Thomson <> Tue, 19 August 2014 17:17 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 1F5AD1A0584 for <>; Tue, 19 Aug 2014 10:17:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -7.67
X-Spam-Status: No, score=-7.67 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.668, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id ZGazDOFOPKaH for <>; Tue, 19 Aug 2014 10:17:50 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id B3D301A045A for <>; Tue, 19 Aug 2014 10:17:50 -0700 (PDT)
Received: from lists by with local (Exim 4.72) (envelope-from <>) id 1XJn01-00051L-Uq for; Tue, 19 Aug 2014 17:15:09 +0000
Resent-Date: Tue, 19 Aug 2014 17:15:09 +0000
Resent-Message-Id: <>
Received: from ([]) by with esmtp (Exim 4.72) (envelope-from <>) id 1XJmzY-0002Ww-Cs for; Tue, 19 Aug 2014 17:14:40 +0000
Received: from ([]) by with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <>) id 1XJmzX-0006tf-Hl for; Tue, 19 Aug 2014 17:14:40 +0000
Received: by with SMTP id a1so6668130wgh.35 for <>; Tue, 19 Aug 2014 10:14:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=pnM23xvYGKKCYlvegSKMhsXo1HgLnsyAHQgAX6Tven4=; b=fmZYdFpBI4bG8z19HXjbuSgFsfonYDbSmmUYlVNAMIV+1XXNuyl6Kmss3kUZYd2kZX rW3dnWjA5Qah3JkwLjwCOvnnH4VTixeNSA++SNttdjYrgQ9LhzuBjal5V0Ze0LrXZhB8 aAFj7T3oi03LkDdKFmC52Utz5J0jPvOObdxxsWa5tQrlSwHZz/lNnidigbmGaXVALHie Y8S3pI6dlWpAmoADs0ihHiZoo3diqSMpuQTX7qjskRLAws+u9vbCH4uYHo2yigY70ont D04ZTLaCrs90PF3G4MjUpKB8gDh3Y8YagrSa3eETgYqmt40qZducWwlgyxuaPvgrOZ1M tyvg==
MIME-Version: 1.0
X-Received: by with SMTP id le6mr51027049wjc.25.1408468453162; Tue, 19 Aug 2014 10:14:13 -0700 (PDT)
Received: by with HTTP; Tue, 19 Aug 2014 10:14:13 -0700 (PDT)
In-Reply-To: <>
References: <> <> <> <> <>
Date: Tue, 19 Aug 2014 10:14:13 -0700
Message-ID: <>
From: Martin Thomson <>
To: Julian Reschke <>
Cc: Erik Nygren <>, HTTP Working Group <>
Content-Type: text/plain; charset="UTF-8"
Received-SPF: pass client-ip=;;
X-W3C-Hub-Spam-Status: No, score=-3.5
X-W3C-Hub-Spam-Report: AWL=-2.743, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001
X-W3C-Scan-Sig: 1XJmzX-0006tf-Hl 44e3938242d91120756fe6452a3e3c66
Subject: Re: Alt-Svc alternative cache invalidation (ext#16)
Archived-At: <>
X-Mailing-List: <> archive/latest/26657
Precedence: list
List-Id: <>
List-Help: <>
List-Post: <>
List-Unsubscribe: <>

On 19 August 2014 06:20, Julian Reschke <> wrote:
>> Could we alter the ALTSVC frame to allow for multiple targets within
>> the frame?  Or have a flag of "more ALTSVC follows" to allow a series
>> of the frames in-sequence for the same origin?  Either would bring
>> the two back in alignment.  The latter seems more annoying from
>> a state machine perspective.
> That sounds right to me.

I'm not certain about this.  More from an architectural standpoint
than anything else.  Conceptually, alternative services is build on
the idea that there are multiple potential sources of information.
We've defined two, but there are also potentially other avenues (DNS,
for instance).

This change would require that each of those sources knows about all
the alternatives.  That's a constraint on the alternative service
advertiser that seems unnecessary.  And it could become burdensome.
Erik's B record is a good example of where alternatives might appear

I don't think that this is annoying to implement at all.  Simply find
the entry that matches, create one if none exists, and update its time
to match.  It also keeps independent header field processing simpler.
You don't have to worry that another Alt-Svc header field might appear
in the block before you act.