Re: HTTP Alternative Services Best Practices?

Daniel Stenberg <daniel@haxx.se> Wed, 22 January 2020 08:05 UTC

Return-Path: <daniel@haxx.se>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 68750120013 for <quic@ietfa.amsl.com>; Wed, 22 Jan 2020 00:05:26 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Qji3m5SYuGZm for <quic@ietfa.amsl.com>; Wed, 22 Jan 2020 00:05:24 -0800 (PST)
Received: from giant.haxx.se (www.haxx.se [IPv6:2a00:1a28:1200:9::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6F10D120052 for <quic@ietf.org>; Wed, 22 Jan 2020 00:05:23 -0800 (PST)
Received: from giant.haxx.se (mail [127.0.0.1]) by giant.haxx.se (8.15.2/8.15.2/Debian-4) with ESMTPS id 00M85Jah011479 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 22 Jan 2020 09:05:19 +0100
Received: from localhost (dast@localhost) by giant.haxx.se (8.15.2/8.15.2/Submit) with ESMTP id 00M85GOr011430; Wed, 22 Jan 2020 09:05:17 +0100
X-Authentication-Warning: giant.haxx.se: dast owned process doing -bs
Date: Wed, 22 Jan 2020 09:05:15 +0100
From: Daniel Stenberg <daniel@haxx.se>
X-X-Sender: dast@giant.haxx.se
To: Lucas Pardue <lucaspardue.24.7@gmail.com>
cc: QUIC WG <quic@ietf.org>, HTTP Working Group <ietf-http-wg@w3.org>
Subject: Re: HTTP Alternative Services Best Practices?
In-Reply-To: <alpine.DEB.2.20.1912172040300.23555@tvnag.unkk.fr>
Message-ID: <alpine.DEB.2.20.2001220857300.8039@tvnag.unkk.fr>
References: <CALGR9oaCNigDAZP=ue-sORxCJFzkVynhaJszjjY_ohN56ewy8g@mail.gmail.com> <alpine.DEB.2.20.1912172040300.23555@tvnag.unkk.fr>
User-Agent: Alpine 2.20 (DEB 67 2015-01-07)
X-fromdanielhimself: yes
MIME-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"; format="flowed"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/jDs7woBRSX0p-dpR94bsKhZ-bT4>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 22 Jan 2020 08:05:26 -0000

On Tue, 17 Dec 2019, Daniel Stenberg wrote:

Me and Lucas ran into a few other "interesting" alt-svc related details:

The Alt-Used header is specified to only include host + port. Meaning, that if 
we switch from h1/h2 to to h3 (on the same host and port) we'd specify an 
identical host + port and it can't be used for loop detection etc.

Further, the Alt-Used header says the port number is optional. But what does 
it mean when you don't specify the port number? We don't provide a scheme or 
alpn to aid. It seems at least Firefox thinks no port implies port 443.

We found a service that didn't like when curl *includes* port 443 in that 
header when going from h2 port 443 to h3 port 443...

-- 

  / daniel.haxx.se