Re: HTTP/3 Preface (PRI method)
ben@yocto.nu Thu, 08 July 2021 10:33 UTC
Return-Path: <ben@yocto.nu>
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 CB2323A1DC7; Thu, 8 Jul 2021 03:33:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.698
X-Spam-Level:
X-Spam-Status: No, score=-1.698 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=neutral reason="invalid (public key: OpenSSL error: bad base64 decode)" header.d=yocto.nu
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 n94FNTimkhpf; Thu, 8 Jul 2021 03:33:11 -0700 (PDT)
Received: from vps.yocto.eu (vps.yocto.eu [IPv6:2a01:7c8:d002:313::1]) (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 B94513A1DC4; Thu, 8 Jul 2021 03:33:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=yocto.nu; s=x; h=Content-Type:Message-ID:References:In-Reply-To:Subject:Cc:To:From: Date:MIME-Version:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=hDsjfNtCEQ3/dEpXg5c7n/BIuNXp5K3VC5LvJyYAJEs=; b=e8jZ0cE/QA7vZIA5s06nWCNSL0 /ec//GWaGuHW+u9qoLfzS65Qdxb912IBfqOQbRiyW6yPTGm6bkzEGdTQvLhif8V4a9cr/tKkPQvbS YTwDrmxfxvLy6pGK61h6WBe1sJZT34ZVv32VCwIbKhGfIJuiiallChFw+Vc4H1+QpImUhZajO/a/h POBWDgcxoSqDX8P725ksYrvByBEq04a+VnAYPNJ/x+m7ZHgXggzz01+PjcafIQROltlcCw88614O7 7ezBKVxqW4+snNi96O4aSO5BvNaiN/Ft1h3kcaaeDg4KcJbSUIs5dWgl7EmmMgwShuJPEs31hXUqI VM3FjtQA==;
Received: from localhost ([::1]) by vps.yocto.eu with esmtpa (Exim 4.94) (envelope-from <ben@yocto.nu>) id 1m1RLA-0005OG-0R; Thu, 08 Jul 2021 10:33:08 +0000
MIME-Version: 1.0
Date: Thu, 08 Jul 2021 12:33:07 +0200
From: ben@yocto.nu
To: Piers O'Hanlon <piers.ohanlon@bbc.co.uk>
Cc: ben=40yocto.nu@dmarc.ietf.org, quic@ietf.org
Subject: Re: HTTP/3 Preface (PRI method)
In-Reply-To: <A75BD23A-040B-44DD-B6D5-B7386ACCC474@bbc.co.uk>
References: <4723f90d822b18e3d0402b6496ac1d02@yocto.nu> <A75BD23A-040B-44DD-B6D5-B7386ACCC474@bbc.co.uk>
Message-ID: <e49f0b430ed8098bf28852a0a9fbc30d@yocto.nu>
X-Sender: ben@yocto.nu
Content-Type: multipart/alternative; boundary="=_dbb2ddeb07f0d208088403f4a54c0180"
X-Authenticated-Id: ben@yocto.nu
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/QxvwXS9Eu2HXhgGm0BqDHIemrEo>
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: Thu, 08 Jul 2021 10:33:17 -0000
I understand. It would be only useful when having HTTP/3 on TCP without SSL/TLS. I should read more to find out if that is even possible, but if it is, I think you need a preface. HTTP/3 over unsecured TCP would not be useful except for debugging/test purposes, so there is no need for adding preface to the spec, unless this feature will be covered too. Piers O'Hanlon schreef op 2021-07-08 11:38: > Hi Ben, > > It is also being proposed (and implemented by a number of organisations > including Apple see: > https://github.com/MikeBishop/dns-alt-svc/blob/master/svcb-implementations.md) > that the ALPN (and IP address(es)) may be obtained via the new proposed > "HTTPS" DNS resource record request: > https://datatracker.ietf.org/doc/html/draft-ietf-dnsop-svcb-https > > Using this approach one can in principle pre-empt a "preface", though > clients would need to handle a potential discrepancy. > > Best, > > Piers O'Hanlon > >> On 29 Jun 2021, at 20:10, ben=40yocto.nu@dmarc.ietf.org wrote: >> >> Hello all, >> >> When reading about QUIC, it comes to me as a better alternative of >> TCP, build upon UDP. >> In this case, servers that run on TCP could easily also run on >> UDP/QUIC; think about DNS, SMTP, FTP. >> >> Now there is also a new version of HTTP. HTTP/3. This version will be >> transfered over QUIC by default. >> However, as I mentioned above, it could be possible to have "TCP >> protocols" that use QUIC too. >> That makes me think about also transfering some old HTTP versions, for >> example HTTP/0.9 (I came across a library that transfered HTTP/0.9 >> over QUIC). >> But also HTTP/1.0, HTTP/1.1 and HTTP/2 are possible. >> >> All older HTTP versions send the following request line: <METHOD> >> <PATH> [VERSION] \n >> If an endpoint is directly accessed (without some negotiation), it >> will find out the version directly by reading the first line. >> For 0.9 the version will be absent. For 2.0 this will be a preface >> with a PRI method and * as path. >> >> When I think about running a HTTP server, I think about this: >> >> TCP (80) or TCP/SSL (443): >> - HTTP/0.9 >> - HTTP/1.0 >> - HTTP/1.1 >> - HTTP/2.0 >> - HTTP/3.0 (I think this is possible too) >> >> UDP/QUIC: >> - HTTP/0.9 (HTTP/0.9 but over QUIC) >> - HTTP/1.0 (HTTP/1.0 but over QUIC) >> - HTTP/1.1 (HTTP/1.1 but over QUIC) >> - HTTP/2.0 (HTTP/2.0 but over QUIC) >> - HTTP/3.0 (Default) >> >> However, if I listen for all versions on my HTTP-QUIC server, how am I >> supposed to know that it is HTTP/3? Does HTTP/3 has a preface? And if >> not, why not? >> I think the preface of HTTP/2 is great and I think it would be great >> in HTTP/3 too: PRI * HTTP/3.0 >> >> I would like to see a preface added to HTTP/3.0. It is only 18 extra >> bytes at the beginning of the request. It could be ignored by some >> servers if they want, but for servers that want to have backwards >> compatibility it would be a great feature. (Luckily HTTP/3 is not a >> released standard yet.) >> >> Ben
- Re: HTTP/3 Preface (PRI method) Matt Joras
- HTTP/3 Preface (PRI method) ben
- Re: HTTP/3 Preface (PRI method) Nick Harper
- Re: HTTP/3 Preface (PRI method) ben
- Re: HTTP/3 Preface (PRI method) Ryan Hamilton
- RE: HTTP/3 Preface (PRI method) Mike Bishop
- Re: HTTP/3 Preface (PRI method) Roberto Peon
- Re: HTTP/3 Preface (PRI method) ben
- Re: HTTP/3 Preface (PRI method) Piers O'Hanlon