0-RTT Design for HTTP/2

Martin Thomson <mt@lowentropy.net> Wed, 16 December 2020 07:15 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@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 4CE4F3A106D for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 15 Dec 2020 23:15:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.748
X-Spam-Level:
X-Spam-Status: No, score=-2.748 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, MAILING_LIST_MULTI=-1, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=lowentropy.net header.b=SQZpxmoI; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=jLkr2QsP
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 g5WK7fpqPVfC for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 15 Dec 2020 23:15:27 -0800 (PST)
Received: from lyra.w3.org (lyra.w3.org [128.30.52.18]) (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 AC5C43A105F for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 15 Dec 2020 23:15:26 -0800 (PST)
Received: from lists by lyra.w3.org with local (Exim 4.92) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1kpQzD-0008Ig-SX for ietf-http-wg-dist@listhub.w3.org; Wed, 16 Dec 2020 07:12:36 +0000
Resent-Date: Wed, 16 Dec 2020 07:12:35 +0000
Resent-Message-Id: <E1kpQzD-0008Ig-SX@lyra.w3.org>
Received: from mimas.w3.org ([128.30.52.79]) by lyra.w3.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <mt@lowentropy.net>) id 1kpQz8-0008Hu-7C for ietf-http-wg@listhub.w3.org; Wed, 16 Dec 2020 07:12:33 +0000
Received: from out3-smtp.messagingengine.com ([66.111.4.27]) by mimas.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <mt@lowentropy.net>) id 1kpQz6-0002Bg-GX for ietf-http-wg@w3.org; Wed, 16 Dec 2020 07:12:30 +0000
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id D4AD45C00E2 for <ietf-http-wg@w3.org>; Wed, 16 Dec 2020 02:12:17 -0500 (EST)
Received: from imap10 ([10.202.2.60]) by compute1.internal (MEProxy); Wed, 16 Dec 2020 02:12:17 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lowentropy.net; h=mime-version:message-id:date:from:to:subject:content-type; s= fm1; bh=JY/LRKhUYtqD4dZtVHCpSdIVC0SlxqDhvFERx67IuiQ=; b=SQZpxmoI kcPcOHhhwVRCuflgc9kReSqjEVheS/D5TPBrHamdHWKm5Xfg5kBSuSSZONimTnq6 4XPfC0mK9v61vA/nPgu2GH64iyHNv4EYv6oHEPIo6wenzeN74za7S0m9UZTnceAH AYDRJrHMy0qtTBZSeQgS4Rer8wey3pGyEmVNlFzQPL1P0S013oncxmOrvpHbjZ/t LuJk0upnDdgOoeMUzA/6bidpvMZzrSHGh+PKUUnw4LyC7JxExM5kT8wQi/se7Xms D/eb8w079RMISfV+dNM4/Nt7ChqRVYG2cI7tg283ZBjhO3YV8opLxSlgD92kKth8 QwUQTEHUa+AUsw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:message-id :mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; bh=JY/LRKhUYtqD4dZtVHCpSdIVC0Slx qDhvFERx67IuiQ=; b=jLkr2QsPndXuLexLZTR9CkOFc/qsXnWXRDwgIXqhQujPV zogc0zmaWPTRu2knsd26srHzojh/KcsoKnknZPf8neFoPEW3cPTYxq80tg2j8MWE y6G+lEt9+NKMICJktmWXk+LrTnW642pAvvuC3uxRtCs4xs8NtW0323QwQpypIAdU UT3J6l7d7g46wQtYascNWyiGI4JFjBWm9ih1Co6E+uWyv8L/qPoJHKWtt4NtfIHs 3NkOYLTikZf7OrIiFmLI6VuJZOjnGIvSdsmhkSFP56LEmX13wd55zmx0zHFzEOqr AJEJ+tGSHiCMhuOgow3Ws4QVjRDQ+UjulqqaQTmAA==
X-ME-Sender: <xms:UbPZX9ZvwmO-RBN9oT3BWpanWAfoU5R1etWYnafvkYsP3gIUJRCyFw> <xme:UbPZX0b-gR9JNW9k0edyC08kqI8BE8lG0rV6XwPITeH_avpyrEbP2JuZbMmnsOXTq N_bK2kehWTh3ZU1hJU>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedujedrudeluddguddtgecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecuogfuuhhsphgvtghtffhomhgrihhnucdlgeelmd enucfjughrpefofgggkfffhffvufgtsehttdertderredtnecuhfhrohhmpedfofgrrhht ihhnucfvhhhomhhsohhnfdcuoehmtheslhhofigvnhhtrhhophihrdhnvghtqeenucggtf frrghtthgvrhhnpeffiedvveehgfduveegheelfeefiedulefhleeukedthedukeeffedu veetheetveenucffohhmrghinhepghhithhhuhgsrdgtohhmpdhgihhthhhusgdrihhopd hivghtfhdrohhrghdphhhtthhpvddrihhmnecuvehluhhsthgvrhfuihiivgeptdenucfr rghrrghmpehmrghilhhfrhhomhepmhhtsehlohifvghnthhrohhphidrnhgvth
X-ME-Proxy: <xmx:UbPZX_9_tEgC9tfajs-sTM6bT8YYscNG87NwjBv8MAAxvYmtEuCCmA> <xmx:UbPZX7oF0YWs8_GmVSfys8gFt7sKWRo_SmF5zgPvykWUgFYvrNVejg> <xmx:UbPZX4pQ4JR4F5HaJFOfNOa8MINIRVWX5N8qWNxx3z4_8PVhp0Bq9w> <xmx:UbPZX12_xD-UtpvmbcW9t61ejhMLMhhaKWFHxnvlDXpnL3QHgpJOLQ>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 65FAC20063; Wed, 16 Dec 2020 02:12:17 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.3.1-61-gb52c239-fm-20201210.001-gb52c2396
Mime-Version: 1.0
Message-Id: <126ee381-7828-451f-865a-db6357928243@www.fastmail.com>
Date: Wed, 16 Dec 2020 18:11:58 +1100
From: Martin Thomson <mt@lowentropy.net>
To: ietf-http-wg@w3.org
Content-Type: text/plain
Received-SPF: pass client-ip=66.111.4.27; envelope-from=mt@lowentropy.net; helo=out3-smtp.messagingengine.com
X-W3C-Hub-Spam-Status: No, score=-6.8
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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_DB=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1kpQz6-0002Bg-GX 48cc235a3ddfb865532c310b0c7bdb10
X-Original-To: ietf-http-wg@w3.org
Subject: 0-RTT Design for HTTP/2
Archived-At: <https://www.w3.org/mid/126ee381-7828-451f-865a-db6357928243@www.fastmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/38309
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/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

As part of our adoption call for HTTP/2 (reprise), I opened https://github.com/httpwg/http2-spec/issues/781 regarding the use of TLS early data.

I thought that it might be worth the time to go through the exercise of defining an extension to h2 that enabled saving of settings across connections.  Here it is:

   https://martinthomson.github.io/h2-0rtt/draft-thomson-httpbis-h2-0rtt.html

For those who prefer text: https://tools.ietf.org/html/draft-thomson-httpbis-h2-0rtt-00

Though this is conceptually simple (indicate 1 if you are prepared to remember settings), there are enough fiddly details here that I'm now unsure whether it is worthwhile trying to roll into our revision of HTTP/2.

I'm interested in what people think about this.  One of the major criticisms of the current arrangement is the time it takes to learn that an extension is available and this could help with that.

Cheers,
Martin