Re: [Masque] Capsules

Ben Schwartz <bemasc@google.com> Tue, 02 November 2021 15:20 UTC

Return-Path: <bemasc@google.com>
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 12B1F3A03EF for <masque@ietfa.amsl.com>; Tue, 2 Nov 2021 08:20:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.599
X-Spam-Level:
X-Spam-Status: No, score=-17.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.com
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 W8-M3h8T4Zz0 for <masque@ietfa.amsl.com>; Tue, 2 Nov 2021 08:20:46 -0700 (PDT)
Received: from mail-ua1-x932.google.com (mail-ua1-x932.google.com [IPv6:2607:f8b0:4864:20::932]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5D6063A033F for <masque@ietf.org>; Tue, 2 Nov 2021 08:20:46 -0700 (PDT)
Received: by mail-ua1-x932.google.com with SMTP id o26so38612472uab.5 for <masque@ietf.org>; Tue, 02 Nov 2021 08:20:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=iH4Y9+fxUiryxFEJBsk9g3JCWTlqImUSp+HmqE8qHX0=; b=TLwTp2Sfcw5Jw2EP6fq2XjkwYWklkoWl/FSu2ONEpQjeV2VWWKDVYQaaTZ6mGd0JYL Fd9da7iTXSk2lWw729ZFnfOYPaZCu2zkiN+NBFcoZxFZ9kWe+oTkVn7Dr0EZuXvJl3CM UNBP/048Om+e+imLnKU8RD0X3fm82x3a0KDhxiQfrQYmeFm+i6v1WnEr6pki2MD4Fri3 lUDewPZ0vikThcQL0PW+WGVmH+NZl9/zqoel6/8w+jdNkresC9huXRa02rhaDJAGeaeq UAu2L7UGPdvF9Cf6wQ5eSyylbm6zxPKTwRqJkJNU2D9QM7dCPwahuwH9kpfsFfzrFoZX Sf/w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=iH4Y9+fxUiryxFEJBsk9g3JCWTlqImUSp+HmqE8qHX0=; b=YJjeK9m2U6wVuvYxQ8msYt3jd1uwSHeF21Mul5heWCe4mGieanxSyfn960Jy3zrWum u+1pVtSVmCwv/gvE2HPIJy2atPJ2ELhYwK25Gj9r2Gyq/Ph6W5lUSM17DhVt9A4V4dtK u+5TdcAUHk015J4yW6JCownVEaJZuYpem6mSU5dN4/7CgsH50/axqBLDwne+qPHvgehB xQYJVxvzMwqiWCuhgSRbmmPsH8JQgT6+1T4mq1TFk3IksglmOuA1IEm2PCr2FcsAHa7b WmMAR0tTpFfUimOMJxj/8zHG4XCJ0ixMjTApzkgfvOdUDdvsB0yGzX5Jav7P0OgGi0Tx lWZA==
X-Gm-Message-State: AOAM53193bPn4TI7xH6tZEMs8R4WSaWWbAlO/JKFP95Nb+Tfj/XypGu4 8XPs5J2kGR8ri0tUmszFa9gNtXGJPhS6D7wCfnbUwwGHdx8=
X-Google-Smtp-Source: ABdhPJzjosCmKke0led5e5K4Vze4V5RD6jIC//IdtyOrM+CsegfwNXewmBNYktCfCJ5cOmBMxuwtiAGzBr5l3br7KX0=
X-Received: by 2002:a67:ca1c:: with SMTP id z28mr41074327vsk.11.1635866441868; Tue, 02 Nov 2021 08:20:41 -0700 (PDT)
MIME-Version: 1.0
References: <85634900-dbbc-497a-aa97-cd6b29b4cc73@www.fastmail.com>
In-Reply-To: <85634900-dbbc-497a-aa97-cd6b29b4cc73@www.fastmail.com>
From: Ben Schwartz <bemasc@google.com>
Date: Tue, 02 Nov 2021 11:20:30 -0400
Message-ID: <CAHbrMsCpzBq7+GO4fPj6FvPhc22uK3VHjqhKpTtuFjsjjD4HJA@mail.gmail.com>
To: Martin Thomson <mt@lowentropy.net>
Cc: masque@ietf.org
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha-256"; boundary="00000000000031ea5e05cfcfd6df"
Archived-At: <https://mailarchive.ietf.org/arch/msg/masque/mIR-mlV2fpNEYjFMXvlwenVV7UI>
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 15:20:51 -0000

It seems like a lot of these concerns are about document refactoring.  For
example, the special behaviors for HTTP 2<->3 intermediaries could be
extracted into a separate document and described as an optimization, but
that's not functionally different from the current text.

However, you also identified some technical issues that we should explore.

On Tue, Nov 2, 2021 at 2:25 AM Martin Thomson <mt@lowentropy.net> wrote:
...

> This forwarding behaviour depends on the intermediary understanding that
> the protocol in use is a capsule-based protocol.  This is done by looking
> at the :protocol pseudo header field on the extended CONNECT and looking
> that up in a list of known capsule-based protocols.  This is necessary
> because not all protocols that use extended CONNECT use capsules.  After
> all, the only use of extended CONNECT that currently exists, websockets,
> doesn't.
>

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.

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.