Subject: Alt-Svc across a domain?

From: Ryan Hamilton <[email-masked]>
Date: Fri, 8 Apr 2016 10:31:39 -0700

Howdy,

It is common for web sites to serve content from a variety of different
origins within the same domain. For example, www.example.com,
accounts.example.com, images.example.com. A single page view may require
loading resources from several such origins. (Tricks like domain sharing
can exacerbate this proliferation of origins.) It would be great if the
service had some way to tell the client, "All of my domains can use this
alternative service". What would folks thinks of an include-subdomains
parameter in the Alt-Svc value? If such a parameter were present in an
Alt-Svc advertisement, a client could use this advertisement to apply to
any sub-domain of the origin that the client does not already have an
alternative for. This would avoid the need to discover the alternatives
individually.

Cheers,

Ryan

---

From: Martin Thomson <[email-masked]>
Date: Fri, 8 Apr 2016 14:42:32 -0300

On 8 April 2016 at 14:31, Ryan Hamilton <[email-masked]> wrote:
> loading resources from several such origins. (Tricks like domain sharing can
> exacerbate this proliferation of origins.) It would be great if the service
> had some way to tell the client, "All of my domains can use this alternative
> service". What would folks thinks of an include-subdomains parameter in the
> Alt-Svc value? If such a parameter were present in an Alt-Svc advertisement,
> a client could use this advertisement to apply to any sub-domain of the
> origin that the client does not already have an alternative for. This would
> avoid the need to discover the alternatives individually.

That shouldn't be necessary.  A server that has coalesced multiple
origins onto the same connection can move as many of those as it wants
by pushing for each of the origins of interest. [50]

[50] I'm going to start recommending that people should push OPTIONS * [51]
[51] NOT!

---

From: Patrick McManus <[email-masked]>
Date: Fri, 8 Apr 2016 15:01:44 -0300

> alternative for. This would avoid the need to discover the alternatives
the server can send, unsolicited, on stream 0 an altsvc frame for each
origin it wants to provide alt-svc info for (the connection needs to be
authoritative for those origins, of course).

yesterday's discussion of adding certificates to an established connection
would make that more powerful.

I would encourage h1 servers to update to h2 to get this feature :)

-P

---

From: Erik Nygren <[email-masked]>
Date: Fri, 8 Apr 2016 20:45:45 -0300

I'd agree.  I also think that without a better Domain Boundaries solution
that is much better than what we have today this has the potential to make
a big mess.  In my experience, there seems to be a wide mixture of origins
within the domain which *aren't* served from the same infrastructure.  eg,
it's very common to use a mix of different CDNs or hosting providers for
different origins within a domain.  This is even before you get to things
like "support.example.com" and "investor-relations.example.com" which might
be CNAME'd over to third-party SaaS providers.

       Erik

---

From: Ryan Hamilton <[email-masked]>
Date: Sat, 9 Apr 2016 06:36:39 -0700

> I would encourage h1 servers to update to h2 to get this feature :)

Hm. This seems plausible for the simple case where the number of extra
origins is small. But in some cases, the number of extra origins can be ...
enormous.

​In the case of YouTube which I'm quite familiar with, there are literally
thousands of hostnames and they all have the same Alt-Svc. We can't
practically push an origin frame for each server.​ And even if we could, I
suspect that browsers will limit the number of servers for which they are
tracking Alt-Svc information.

Cheers,

Ryan