Proposal Towards Universal HTTP/3, with a polyfill of QUIC for TCP (Fwd: New Version Notification for draft-kazuho-httpbis-http3-on-streams-00.txt)

Kazuho Oku <kazuhooku@gmail.com> Fri, 16 February 2024 08:27 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=ietf.org@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E9E5DC14F682 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 16 Feb 2024 00:27:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.854
X-Spam-Level:
X-Spam-Status: No, score=-2.854 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=w3.org header.b="Wiy8eM9Y"; dkim=pass (2048-bit key) header.d=w3.org header.b="n6+XiXki"; dkim=pass (2048-bit key) header.d=gmail.com header.b="O+HsyWob"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id FUV5V3jKk8lK for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 16 Feb 2024 00:27:32 -0800 (PST)
Received: from lyra.w3.org (lyra.w3.org [128.30.52.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 211CAC14F600 for <httpbisa-archive-bis2Juki@ietf.org>; Fri, 16 Feb 2024 00:27:32 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=w3.org; s=s1; h=Subject:Content-Type:Cc:To:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To; bh=/viQ1u43+eXWst50sPZfx5IbI3E/FVs3oLMz8oGuzlA=; b=Wiy8eM9YIuZJ7wamqtRyIhVw1U lu/8Hp60vlTsN6tkv6XPyrpRHDsOKKBF4wK9d8ztewo8HPWb3dN/AuFu1NWwUTf/ehPdIwYCMmzUc Fgldnl1z/aHNcKO9fBo2HYsBcbLh+hmXjuUCnYgPSnV1KEhJ1OYVIcaUIxElmS/Bh6rQLERpDa+vj SgYdzi0w7eWunSXv8erY/rpf2y8bUcgqVHMci0oVf6j6DmpAt6qIkuUf1To3eNaUCe9CCA+BGkJdl D6fGjmIWpLBB5hZ04FyCthS+paIyc6rV3ZbFlyjhHP4DZktF67Sl97zkPtSHRfBUmPc1CDknPdvQZ QftqJPbQ==;
Received: from lists by lyra.w3.org with local (Exim 4.94.2) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1ratX4-009e6V-Fe for ietf-http-wg-dist@listhub.w3.org; Fri, 16 Feb 2024 08:25:18 +0000
Resent-Date: Fri, 16 Feb 2024 08:25:18 +0000
Resent-Message-Id: <E1ratX4-009e6V-Fe@lyra.w3.org>
Received: from pan.w3.org ([3.222.182.102]) by lyra.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from <kazuhooku@gmail.com>) id 1ratX2-009e4o-Gu for ietf-http-wg@listhub.w3.org; Fri, 16 Feb 2024 08:25:16 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=w3.org; s=s1; h=Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To; bh=/viQ1u43+eXWst50sPZfx5IbI3E/FVs3oLMz8oGuzlA=; t=1708071916; x=1708935916; b=n6+XiXkidRumGj+uXNY3MHTpzp/fzQVlReMRzUryFt/CJjPYr+MY9nmlKYvx6Ana1qLfBQfObur UjJKVUsfgmTn9RwYt5mmtIF+HOFFHDr7MqqjuNlxVMc/Hta26e7fLdK3Qrl5emyitO30cE2n42j/K 29k5Q2WUCktMN7SxJk13khv/sb5jh8mW9YAXx69zLhp41mVkJ+LH6CbawTASEURgOfg2nl0uF9gHn wCgFJnrsrmL7WpRzgKV+JlGShWl3gy9+aynOeKr27g+s+AC+Zj82+Bz/fXW/IPKT12ActbTwdX+bR +giCg5FQ4L3A9WYGxYqCh9YIR89q0LRjAl1w==;
Received-SPF: pass (pan.w3.org: domain of gmail.com designates 2a00:1450:4864:20::630 as permitted sender) client-ip=2a00:1450:4864:20::630; envelope-from=kazuhooku@gmail.com; helo=mail-ej1-x630.google.com;
Received: from mail-ej1-x630.google.com ([2a00:1450:4864:20::630]) by pan.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from <kazuhooku@gmail.com>) id 1ratX1-000Njl-2W for ietf-http-wg@w3.org; Fri, 16 Feb 2024 08:25:16 +0000
Received: by mail-ej1-x630.google.com with SMTP id a640c23a62f3a-a3122b70439so199954266b.3 for <ietf-http-wg@w3.org>; Fri, 16 Feb 2024 00:25:15 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1708071911; x=1708676711; darn=w3.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=/viQ1u43+eXWst50sPZfx5IbI3E/FVs3oLMz8oGuzlA=; b=O+HsyWobm16YH8aPjy6LwWmnxx/wQE0fG9sQwHnkGpm/51ybuXBrYfz+DdxLxmy+Rx Ubl5XFJaSOMqgz5i+NBeb3rUPL3ei5Z/EzrhugSP1gSXLP7LqpM/SBxCLvbwPUYjJPBB YYqULMyLkCunnGVv1DPFAxVyxobvrls9ZV995pemu4tNZnotkhpj0d7Clcq/ovLNx6Sn fNwgkmf96B4YI/VMxvxogWERQgEPdzbSXw1Otgby4rGsG3lmLCAGp2snQw6dAC9yrMXM xQGjRU1PY7+3TImxWiJW+0ORwpvw1J4FPsen7kOoEEZOHabuo7KBc7bfKYTHWqqyCxbi 8pJg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708071911; x=1708676711; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/viQ1u43+eXWst50sPZfx5IbI3E/FVs3oLMz8oGuzlA=; b=bNe8qk0UsDfL1/2jnUGwMG5GqNZ07zb9bK3TAG01/3z0Q3gB5Tnxmv8HXlVznVMCme 6LXF9DlC0Hyu54ZNgx3XLGdukLszzaTmF3cM18NOAUHWFCE0X2Sa3LqUpqeYGRZEnTSe uzV8Ii6nszT1l4e/yUT/DrxPVHrNshz6+pQCwd6iUzzSxZzvHHiBOBzZIAOEkZgQhzNT vuq5d6JpiRgLNFn50uFxyDS06lXbENMFVN0vAqtXXO308g8Mb4Fv9SPrQigGjeQ/wBTn 7uiXGnHMEtQsDYk+CnQnBAigGM4ELv4D+U1ObfZ4Bf+SSYtK6s7F1an1XsNNUFxq37ZL i8Yg==
X-Forwarded-Encrypted: i=1; AJvYcCV3ZCa4d4H90Sw56gI2a8QEEJKiGzhHE2DfzWokfdQJQWG9mRgys0MsBxU+VFlLECrcFg79RdyS1w6kcNjyJYv3/UA1
X-Gm-Message-State: AOJu0YxNRDLjEHTm4d0QMJBQ4jJypdA7h4pfn7U4bUt8XiS+GxGoyPpJ D/+fON0mWNJmbp+2Uxr532O1gCy/er9aEl8+jHAX0Q6uF9/mDFKkefsNG1XfIK886FlnMVYE0ch vT9rhw/5pxkwOuVnDNp9MeztSSvaL3KovnOw=
X-Google-Smtp-Source: AGHT+IHJeI6RYskOLazdSw83143dVme5sEI3Evuk7gYlYGyJDjehmMj3P+CAs/F507csMzzN0/8CYM68YDzwY73FOOU=
X-Received: by 2002:a17:906:2888:b0:a3d:2146:5703 with SMTP id o8-20020a170906288800b00a3d21465703mr3254837ejd.6.1708071911186; Fri, 16 Feb 2024 00:25:11 -0800 (PST)
MIME-Version: 1.0
References: <170807134367.25372.9131938145722079298@ietfa.amsl.com>
In-Reply-To: <170807134367.25372.9131938145722079298@ietfa.amsl.com>
From: Kazuho Oku <kazuhooku@gmail.com>
Date: Fri, 16 Feb 2024 17:24:59 +0900
Message-ID: <CANatvzyLJnZH9UHaSoMWbv20VhEtAzY7HqRHCSWt-O65f24uwQ@mail.gmail.com>
To: IETF QUIC WG <quic@ietf.org>, HTTP Working Group <ietf-http-wg@w3.org>
Cc: Lucas Pardue <lucas@lucaspardue.com>
Content-Type: multipart/alternative; boundary="00000000000084646406117b7b8a"
X-W3C-Hub-DKIM-Status: validation passed: (address=kazuhooku@gmail.com domain=gmail.com), signature is good
X-W3C-Hub-Spam-Status: No, score=-9.1
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, DMARC_PASS=-0.001, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: pan.w3.org 1ratX1-000Njl-2W 5cbcb68bc2db711ae5b68f4f9dc123db
X-Original-To: ietf-http-wg@w3.org
Subject: Proposal Towards Universal HTTP/3, with a polyfill of QUIC for TCP (Fwd: New Version Notification for draft-kazuho-httpbis-http3-on-streams-00.txt)
Archived-At: <https://www.w3.org/mid/CANatvzyLJnZH9UHaSoMWbv20VhEtAzY7HqRHCSWt-O65f24uwQ@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/51779
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <https://www.w3.org/email/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Hello QUIC and HTTP enthusiasts,

We, Lucas and I, have submitted two drafts aimed at broadening the reach of
HTTP/3 - yes, making it available over TCP as well. We are eager to hear
your thoughts on these:

QUIC on Streams: A polyfill for operating QUIC on top of TCP.
https://datatracker.ietf.org/doc/html/draft-kazuho-quic-quic-on-streams

HTTP/3 on Streams: How to run HTTP/3 unmodified over TCP, utilizing QUIC on
Streams.
https://datatracker.ietf.org/doc/html/draft-kazuho-httpbis-http3-on-streams

As the co-author of the two drafts, let me explain why we have submitted
these.

The rationale behind our proposal is the complexity of having two major
HTTP versions (HTTP/2 and HTTP/3), both actively used and extended. This
might not be the situation that we want to be in.

HTTP/2 is showing its age. We discussed its challenges at the IETF 118 side
meeting in Prague.

Despite these challenges, we are still trying to extend HTTP/2, as seen
with WebTransport. WebTransport extends both HTTP/3 and HTTP/2, but it does
so differently for each, due to the inherent differences between the HTTP
versions.

Why are we doing this?

Because HTTP/3 works only on QUIC. Given that UDP is not as universally
accessible as TCP, we find ourselves in a position where we need to
maintain and extend not only HTTP/3 but also HTTP/2 as a backstop protocol.

This effort comes with its costs, which we have been attempting to manage.

However, if we could create a polyfill for QUIC that operates on top of
TCP, and then use it to run HTTP/3 over TCP, do we still need to invest in
HTTP/2?

Of course, HTTP/2 won’t disappear overnight.

Yet, by making HTTP/3 more universally usable, we can at least stop
extending HTTP/2.

By focusing our new efforts solely on HTTP/3, we can conserve energy.

By making HTTP/3 universally accessible, and by having new extensions
solely to HTTP/3, we can expect a shift of traffic towards HTTP/3.

This shift would reduce the necessity to modify our HTTP/2 stacks (we’d be
less concerned about performance issues), and provide us with a better
chance to phase out HTTP/2 sooner.

Some might argue that implementing a polyfill of QUIC comes with its own
set of costs. However, it is my understanding that many QUIC stacks already
have the capability to read QUIC frames other than from QUIC packets,
primarily for testing purposes. This suggests that the effort would be more
about leveraging existing code paths rather than writing new code from
scratch. Furthermore, a QUIC polyfill would extend its benefits beyond just
HTTP, by aiding other application protocols that aim to be built on top of
QUIC, providing them accessibility over TCP.

Please let us know what you think. Best regards,

---------- Forwarded message ---------
From: <internet-drafts@ietf.org>
Date: 2024年2月16日(金) 17:15
Subject: New Version Notification for
draft-kazuho-httpbis-http3-on-streams-00.txt
To: Kazuho Oku <kazuhooku@gmail.com>, Lucas Pardue <lucas@lucaspardue.com>


A new version of Internet-Draft draft-kazuho-httpbis-http3-on-streams-00.txt
has been successfully submitted by Kazuho Oku and posted to the
IETF repository.

Name:     draft-kazuho-httpbis-http3-on-streams
Revision: 00
Title:    HTTP/3 on Streams
Date:     2024-02-16
Group:    Individual Submission
Pages:    5
URL:
https://www.ietf.org/archive/id/draft-kazuho-httpbis-http3-on-streams-00.txt
Status:
https://datatracker.ietf.org/doc/draft-kazuho-httpbis-http3-on-streams/
HTML:
https://www.ietf.org/archive/id/draft-kazuho-httpbis-http3-on-streams-00.html
HTMLized:
https://datatracker.ietf.org/doc/html/draft-kazuho-httpbis-http3-on-streams


Abstract:

   This document specifies how to use HTTP/3 on top of bi-directional,
   byte-oriented streams such as TLS over TCP.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Discussion of this document takes place on the HTTP Working Group
   mailing list (ietf-http-wg@w3.org), which is archived at
   https://lists.w3.org/Archives/Public/ietf-http-wg/.

   Source for this draft and an issue tracker can be found at
   https://github.com/kazuho/draft-kazuho-httpbis-http3-on-streams.



The IETF Secretariat




-- 
Kazuho Oku