Proposal: a new WRAP UP capsule

David Schinazi <dschinazi.ietf@gmail.com> Fri, 05 July 2024 22:30 UTC

Received: by ietfa.amsl.com (Postfix) id 2EFE4C14F705; Fri, 5 Jul 2024 15:30:43 -0700 (PDT)
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 2E2FAC14F609 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 5 Jul 2024 15:30:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.857
X-Spam-Level:
X-Spam-Status: No, score=-2.857 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.25, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=w3.org header.b="E8+dyXQZ"; dkim=pass (2048-bit key) header.d=w3.org header.b="Y4EXiaPQ"; dkim=pass (2048-bit key) header.d=gmail.com header.b="IfNdQfMr"
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 xXNy0Yl9wqN1 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 5 Jul 2024 15:30:39 -0700 (PDT)
Received: from mab.w3.org (mab.w3.org [IPv6:2600:1f18:7d7a:2700:d091:4b25:8566:8113]) (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 1DFCCC14F5F7 for <httpbisa-archive-bis2Juki@ietf.org>; Fri, 5 Jul 2024 15:30:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=w3.org; s=s1; h=Subject:Content-Type:To:Message-ID:Date:From:MIME-Version:Cc:Reply-To :In-Reply-To:References; bh=9+EdA6++XQ9+ATb8NGk+7B8NSH6sXYdp7YZsml0TKd8=; b=E 8+dyXQZ0VJ/1gWkVEkkLSs4fm7ZazsGqyKmCvl87NJ+OwVYlPMyPgr4c7zNK49kbXjNJm9dxJiXdl rN4hnBn5dgyGe/hwTj/BqEsmOLjHYEryLxFR1kRwPVURdyAKJ+h9VEGAfCysrphlKjPCRgpW+izBB eGgpHMZToQxpwUtlyOMOrKtSio6iPrFZX95UeEl6Wep4m899HaTS5qTFp7DtZgQW2fXkeaATYOTUM aunW+oKuJyclPq/hEPHG+/Mt+n8oRT5S70wspTsyWcWkAaEaWJlir2FtmOje5PLfk8V5wM3cd2xSv lYuvfiRh6RQeGrKloCiBDzevpjAIXcVOg==;
Received: from lists by mab.w3.org with local (Exim 4.96) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1sPrRF-005Kin-2H for ietf-http-wg-dist@listhub.w3.org; Fri, 05 Jul 2024 22:29:57 +0000
Resent-Date: Fri, 05 Jul 2024 22:29:57 +0000
Resent-Message-Id: <E1sPrRF-005Kin-2H@mab.w3.org>
Received: from ip-10-0-0-224.ec2.internal ([10.0.0.224] helo=puck.w3.org) by mab.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from <dschinazi.ietf@gmail.com>) id 1sPrRB-005Kho-30 for ietf-http-wg@listhub.w3.internal; Fri, 05 Jul 2024 22:29:53 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=w3.org; s=s1; h=Content-Type:To:Subject:Message-ID:Date:From:MIME-Version:Cc:Reply-To :In-Reply-To:References; bh=9+EdA6++XQ9+ATb8NGk+7B8NSH6sXYdp7YZsml0TKd8=; t=1720218593; x=1721082593; b=Y4EXiaPQW/5URsVrwAo9AYLYEK7lKhIZjMWFs5CRfk5Q9FG PUbVcUBaK0jf+B2XXFJAYsJmUsrpo08rY1DOO1wS6nlBtXpqL2S6EPKPFEasGVT96hbksb+/32VpR f9itXDvr8NIwOM95n9Y2jJ3SYQdyG/76xuJLGgY8LOKwBQTkiFqR8SmoOimTsC3KiUI3/8PrSZvGo Vajiic94sycf0ubBMiMpihGn5lMh0obesW87sRHhM/3ypDpTadmMIMgXZo1ObRRFlfjPIef3qCC8R CMxlzNzebBw9i4U+CsJdRYaylWb0QRbIIZ1sDy6u1DpBB1oOHV65LQAWEQLNmJ8g==;
Received-SPF: pass (puck.w3.org: domain of gmail.com designates 2a00:1450:4864:20::12d as permitted sender) client-ip=2a00:1450:4864:20::12d; envelope-from=dschinazi.ietf@gmail.com; helo=mail-lf1-x12d.google.com;
Received: from mail-lf1-x12d.google.com ([2a00:1450:4864:20::12d]) by puck.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from <dschinazi.ietf@gmail.com>) id 1sPrRB-00FCPV-0q for ietf-http-wg@w3.org; Fri, 05 Jul 2024 22:29:53 +0000
Received: by mail-lf1-x12d.google.com with SMTP id 2adb3069b0e04-52ea2f58448so2303855e87.1 for <ietf-http-wg@w3.org>; Fri, 05 Jul 2024 15:29:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720218588; x=1720823388; darn=w3.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=9+EdA6++XQ9+ATb8NGk+7B8NSH6sXYdp7YZsml0TKd8=; b=IfNdQfMr6ykVIjm+b3m4ekArTeib11A+PLOU88RIflIXUPtaJLH2WqaBRbBdZhwyf1 qora3uP76tf+xDnWWcCr8oLEdaeIy6Tx2gbsjGbvXBNONf9bV8V3NzHJQ8jIbl7ZlBE8 tPc8GBNoTSrILEF2gcojzsY9WY/nNHT5/YWhNJPVHJtcZJxD3QxG4jguw9q3hCst9WGE XWcrZDH/uxNLp8Jb2NpSoKXUvhUKLywzOxpcnK9oYAlfsJOT7W2JZj9wxU1bLoM4oMrn ZWgGa+vs0DCyUmXhOSKgdS7vxw2pLjxG0IDZVc0x+aPOHO7ARX20fxgfakK+VPZVdVRm ocrA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720218588; x=1720823388; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=9+EdA6++XQ9+ATb8NGk+7B8NSH6sXYdp7YZsml0TKd8=; b=is7ND+XqMY2UpIf45X0mLg+f+bAouxP6l/e+LLYETO6wNdFOsp/0tII5vD5Bih7Pr5 4sr21p91v+G70ASGFfXg7UvPBjNeh+aCiHWeJ7B3EFyr9KHpZRH3ZKZ/QGFQ3NsE7ag3 DT/KaroQ22TtoL1+ueyp5EDPLYDROHihs2B7JAmEmoBGW4H5MSl1ddRwRg77wjiDKqpk Ni5JHOtNnk/6szg3xvD/fbJVY85q71Y0vYbcrY+j5k0rMceInIQJAesTeLzCimHUlolL bjXlmz25hqwiXuLclWuaBaqwtZ4EOOi7pe3glEVrsJLL7UVdEPjiW64PALOubXRRbW55 7jMg==
X-Gm-Message-State: AOJu0Ywmz7nHPR2Jdl89VDKIS8A0Jr/NBX4R8CIjtKyVX1mCLTHcYK+3 5eywao3W/e5TL2AJVCAqcI7K42HB9WhyfwYRDzw2a3Xq3rrDE2LZXg4oS3oWUDJhYEZSQu+tLc8 jHYuO1ZiIRaZaxQrMgF/oFXN3CXaVZUoV
X-Google-Smtp-Source: AGHT+IHueZJ/y4GBFAxdldFMOexIj+g+ZHTHFggF3UK7eMF++D6Ts0GWPX3n/22vKhSMyRG1ztty+9TDecR5h/pcA/E=
X-Received: by 2002:ac2:5eda:0:b0:52c:9e51:c3f with SMTP id 2adb3069b0e04-52ea06b85a9mr3753720e87.42.1720218588163; Fri, 05 Jul 2024 15:29:48 -0700 (PDT)
MIME-Version: 1.0
From: David Schinazi <dschinazi.ietf@gmail.com>
Date: Fri, 05 Jul 2024 15:29:36 -0700
Message-ID: <CAPDSy+5UU=GSFWTdrkHW7RXNL8pr5KWtLfp8zjExsZvvGczfEw@mail.gmail.com>
To: HTTP Working Group <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="000000000000e23843061c87992a"
X-W3C-Hub-DKIM-Status: validation passed: (address=dschinazi.ietf@gmail.com domain=gmail.com), signature is good
X-W3C-Hub-Spam-Status: No, score=-6.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_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, W3C_AA=-1, W3C_DB=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: puck.w3.org 1sPrRB-00FCPV-0q 2bd4318838ad3971fe9db9ba31bc66cc
X-Original-To: ietf-http-wg@w3.org
Subject: Proposal: a new WRAP UP capsule
Archived-At: <https://www.w3.org/mid/CAPDSy+5UU=GSFWTdrkHW7RXNL8pr5KWtLfp8zjExsZvvGczfEw@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/52050
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>

Hi HTTP enthusiasts,

Over in MASQUE land, as we're deploying our two-hop proxies, we decided we
needed to put a cap on how many bytes we'd allow per token-authenticated
connect-udp tunnel. Enforcing a hard limit is easy, but the issue is that
if the proxy aborts the tunnel halfway through, the web browser could be
halfway through a proxied request. Since the browser doesn't know if the
half-finished request was acted on or not, it can't retry it, so it has to
surface the error to the user. Instead, we want the proxy to be able to
warn the browser that this will happen soon, so that the browser can
establish a new tunnel with a new token, and start sending new requests
there. Conceptually this is a little like GOAWAY, but instead of "please
wrap up this connection", it's "please wrap up this tunnel stream". It uses
capsules, since this is a message from proxy to client. Here's a draft with
diagrams:

https://datatracker.ietf.org/doc/draft-schinazi-httpbis-wrap-up/
https://davidschinazi.github.io/draft-schinazi-httpbis-wrap-up/draft-schinazi-httpbis-wrap-up.html

I'd love to hear your thoughts.

Thanks,
David