Re: [Masque] Capsules

Martin Thomson <mt@lowentropy.net> Tue, 02 November 2021 23:24 UTC

Return-Path: <mt@lowentropy.net>
X-Original-To: masque@ietfa.amsl.com
Delivered-To: masque@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5C6FF3A0FCC for <masque@ietfa.amsl.com>; Tue, 2 Nov 2021 16:24:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.101
X-Spam-Level:
X-Spam-Status: No, score=-2.101 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, RCVD_IN_MSPIKE_H2=-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=YKyChnu5; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=Th6P1COK
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 iAUneEUkSQDA for <masque@ietfa.amsl.com>; Tue, 2 Nov 2021 16:24:24 -0700 (PDT)
Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com [64.147.123.25]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EB9623A0FCB for <masque@ietf.org>; Tue, 2 Nov 2021 16:24:24 -0700 (PDT)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id 39C633201E1E; Tue, 2 Nov 2021 19:24:21 -0400 (EDT)
Received: from imap41 ([10.202.2.91]) by compute5.internal (MEProxy); Tue, 02 Nov 2021 19:24:21 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lowentropy.net; h=mime-version:message-id:in-reply-to:references:date:from:to :cc:subject:content-type; s=fm3; bh=2TeW8bK6y6UuLmwprh07aDqg+5Yk S2TwsngTqcQ3T8M=; b=YKyChnu5zuBJ5HL4gkKtm7s2gQRx4RjYLRevcTYgD1VP kc2jll7C/XI5gd50dYqNPfF69y2wcuEL3ezrYg/UYdzJeiVt1aB+WI3Ar2nbMKK0 zyHaw3rNfYSC5GuyHngdpYeKPE82gXkzKViPY1zVLlfYkSsFcsKa7tt7RtUWZ1Dp MFfPRNybkXrLNRI61NK9R3Ud7u1DbLMPY49Ua8FMBr/92khU2DT1wW3UcOvnlxKB WUywt7R+eEZTK5KoNRnxkj7Vw3Jvr2TAlLfIDZ9yZtBaJdg8xodKBguiT2McRvtt SUKR8paK5wO5p3jE6wEzejOuVsYLG737oE478Br4Pg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=2TeW8b K6y6UuLmwprh07aDqg+5YkS2TwsngTqcQ3T8M=; b=Th6P1COKpUqf0ufy0adkkO maiMTkwx5ndB4zP58d8b6YYA3kOGpSnlSlFKLu6ny44fI6Ymzs1ewarKNtkeqINK d5QbroHpUdxK0za9eafdLyrzuy4JMlMCCizHEn8l4PF4CLr2g6ebIcxW/Ox0uW6R aJoiz6vm04g7dxN6YosXN5YDLx0awle+NDNSlQ+k98HbAajRp3lLIcv9ZIebCNex OUhIvBO7O2aC3nJRlNM9E1CYA4pXWSc+mPXWcjd71ZkC+jW8g6rr/YPduP2qaqxb s7yfhOwgcd1jW3pU6p5w58JNhvj94KHvMwg6uvfid2yXYRyFfSAU9cYa3i5fB6zg ==
X-ME-Sender: <xms:pMiBYbUkPZELHVHlieuTuU59ljkDUwb9Q1dhsbvr-4MPU7MTXBS9mg> <xme:pMiBYTlb1dqrYSoTPhKsIHFUZgSjEUR7kBRLdSQmvEbf2g_pp2fvX6EFToOjzbB-H vOYhgFZZMOwMFQChbA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvuddrtddugddtkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkjghffffhvffutgesthdtre dtreertdenucfhrhhomhepfdforghrthhinhcuvfhhohhmshhonhdfuceomhhtsehlohif vghnthhrohhphidrnhgvtheqnecuggftrfgrthhtvghrnhepkeetueeikedtkeelfeekve fhkeffvedvvefgkefgleeugfdvjeejgeffieegtdejnecuvehluhhsthgvrhfuihiivgep tdenucfrrghrrghmpehmrghilhhfrhhomhepmhhtsehlohifvghnthhrohhphidrnhgvth
X-ME-Proxy: <xmx:pMiBYXZluVpfKELMyDXSwI1yU7vN9vX9FCdkg_HNZcIomYfnjH6H4w> <xmx:pMiBYWWjw1Nph3VB2IN_b6kvvz9odJpaMsykA4A4M_0ZoKB7eXq91Q> <xmx:pMiBYVkUeeKlpCHfoKOUqOLS06sekg1IwpLQF0jQkTch_mDnrr6LPQ> <xmx:pMiBYTRcKr-hit9mrwCzrnONOqXz0-mGjzZTUEC8u9zO5SyM3iFRqg>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 8C9193C0AEC; Tue, 2 Nov 2021 19:24:20 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.5.0-alpha0-1369-gd055fb5e7c-fm-20211018.002-gd055fb5e
Mime-Version: 1.0
Message-Id: <425a7f4f-6e26-441b-b959-630a46287c23@www.fastmail.com>
In-Reply-To: <CAHbrMsCpzBq7+GO4fPj6FvPhc22uK3VHjqhKpTtuFjsjjD4HJA@mail.gmail.com>
References: <85634900-dbbc-497a-aa97-cd6b29b4cc73@www.fastmail.com> <CAHbrMsCpzBq7+GO4fPj6FvPhc22uK3VHjqhKpTtuFjsjjD4HJA@mail.gmail.com>
Date: Wed, 03 Nov 2021 10:24:03 +1100
From: Martin Thomson <mt@lowentropy.net>
To: Ben Schwartz <bemasc@google.com>
Cc: masque@ietf.org
Content-Type: text/plain
Archived-At: <https://mailarchive.ietf.org/arch/msg/masque/OF4Q3RTr070E0NJge5yRRqSD7fc>
Subject: Re: [Masque] Capsules
X-BeenThere: masque@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Multiplexed Application Substrate over QUIC Encryption <masque.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/masque>, <mailto:masque-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/masque/>
List-Post: <mailto:masque@ietf.org>
List-Help: <mailto:masque-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/masque>, <mailto:masque-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 02 Nov 2021 23:24:29 -0000

> This is a good observation, and we can correct it.  We can define an 
> additional request header to indicate that the datagram+capsule system 
> is in use (like the old Transfer-Encoding header), to decouple this 
> from the :protocol.

It's good to know that we disagree.  You seem to think that the addition of another protocol layer is desirable.  I do not.  That shouldn't be a surprise: I asked if we could simplify things; your response was to propose making them more complex.

What I'm saying is that it would be better to NOT have a generic framework that exists to serve the intermediation use case.  Instead, intermediaries can understand all the protocols if they want to interact with the protocol more extensively.  That is the purpose of using settings to negotiate support (a decision already made).  Of course, that negotiation is only necessary if the protocol wants to escape the confines of a single stream.

Document factoring is secondary to that, of course.

>> The editors of the WebTransport over HTTP/2 draft are currently debating whether to propose the use of capsules there.  There, we have some interesting design constraints that might be cause to use a different format.  One option that is being considered is reusing design elements from QUIC to make the protocol easier to implement.  I don't think that we should feel constrained to use capsules, except to the extent that it might be nice to make implementation in intermediaries easier.
>
> I think the purpose of a standards body is to avoid producing multiple 
> similar but incompatible systems if it can be avoided.  If WebTransport 
> has additional requirements, MASQUE might be able to adopt a subset of 
> its framing.

I don't agree that that is the purpose of a standards body at all.  We're here so that different parties can agree in their (and hopefully everybody's) shared interest.  What you might be looking for here is good engineering practice, which says that you don't want too much diversity in how the same problem is solved in different contexts.

For this example, we have overlapping contexts.  HTTP/2 puts length fields ahead of type fields (fixed LTVs), Capsules have varint TLVs, QUIC has TVs.  These are not naturally compatible and so we have to decide how to align the format with these existing things.  Of course, this is an easy thing to answer if you are predisposed toward the addition of another protocol layer.