Re: [Masque] I-D Action: draft-ietf-masque-connect-udp-03.txt

David Schinazi <dschinazi.ietf@gmail.com> Tue, 05 January 2021 18:26 UTC

Return-Path: <dschinazi.ietf@gmail.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 178233A10E8; Tue, 5 Jan 2021 10:26:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=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=gmail.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 GPyC24W-r4de; Tue, 5 Jan 2021 10:26:54 -0800 (PST)
Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) (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 F28B53A109B; Tue, 5 Jan 2021 10:26:53 -0800 (PST)
Received: by mail-pf1-x42e.google.com with SMTP id c79so237238pfc.2; Tue, 05 Jan 2021 10:26:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=b/jxWCjiF8mUebOLk2z3q4bBGj/mVHrGAGbljgQY+fU=; b=BEiiiq6LWyBmG8xrZkiykjYicR/1jq6kkRClFSwGWCo/BSZ62VrTtrXoCluwVrwUOa QbIOIICE65VDz61WcYdMHppHnsDVII8xx4B/ZTY4vvfwuXuZT0lY8WVNzXA7tcUhGto9 XKLOyfgbMZXFLbMuNQLK7Nvzz7fneaDo4UUrmnn9KhyvWjOH9pW1heSPJEeLCDZAzE0c Jpmapnh9auCFEz9TRUi52wB4q5wswZUT13JxOaPa/G2/BpEmPfyecmdUmI5epAiymXTR oQitlNc0wN8mJPxJeaw6ntmo7VEr2MWzL0qzRkAEts09GPSyH3Q9EaEabsH/LZONAitY mvcg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=b/jxWCjiF8mUebOLk2z3q4bBGj/mVHrGAGbljgQY+fU=; b=ovyN6QNkaLb8aGpVhZpGoqDtnz0JZxBKTUYxk6CHWJDm0s+nDNphNaKisiVdn6Ot2F 9jX8XV6R36AWW57m12h9TOtzCRFB2zN7sjJ62n+K3uuCKQ5wDWUxBqMU9ML27Io9eqsv YVOrzDRZo9gTeH44TebJPDpf2ZCa6aDdZiWlgMo7Ig5e2R4VcPvOCbPVw1756bohOicT Essy0/wf/6JdD30bhR1AcFqbJLPIT/94v4P95u9I80zs8MBiv3Z2UxoQM13py9/IT+ga CropTN0ZWO1FiW2sUlOnwuEio7uJCtxLkDAVTJMIria+qjlmyZ48j91wRFZjxNyKU/iy a1bA==
X-Gm-Message-State: AOAM530U8LiDmGo+JIivQqgCXwOhmMBehoK/SK7LI0ldPWur3VL/mUDq BvS03HsWxru7L3JdH3PaFbEH21PLlhoS82DdrammpIwHVQAblQ==
X-Google-Smtp-Source: ABdhPJyjwl+5lSPFr3x2w8REnRobL49ktbdf0u837pdkzD1UtPZyepSc2xB2kAc/TCc3k8D3DyFOwm5QpDs41yuPjwo=
X-Received: by 2002:a62:c504:0:b029:1a5:b198:18dc with SMTP id j4-20020a62c5040000b02901a5b19818dcmr621232pfg.79.1609871213320; Tue, 05 Jan 2021 10:26:53 -0800 (PST)
MIME-Version: 1.0
References: <160985498902.27048.15957041689692483741@ietfa.amsl.com> <CAHbrMsBPZJwWTwAC+K5oVuSn50WwX7fHUvy75WkZyqARiZYkFg@mail.gmail.com>
In-Reply-To: <CAHbrMsBPZJwWTwAC+K5oVuSn50WwX7fHUvy75WkZyqARiZYkFg@mail.gmail.com>
From: David Schinazi <dschinazi.ietf@gmail.com>
Date: Tue, 05 Jan 2021 19:26:41 +0100
Message-ID: <CAPDSy+6a3f8hQdjY=Vmfd7sJM9Ey2k-xgs8dT10Mk9rn3HnmkQ@mail.gmail.com>
To: Ben Schwartz <bemasc=40google.com@dmarc.ietf.org>
Cc: MASQUE <masque@ietf.org>, i-d-announce@ietf.org
Content-Type: multipart/alternative; boundary="000000000000cdddd305b82b59b9"
Archived-At: <https://mailarchive.ietf.org/arch/msg/masque/243mghhRaw8ZZyftI9NOSP2be98>
Subject: Re: [Masque] I-D Action: draft-ietf-masque-connect-udp-03.txt
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, 05 Jan 2021 18:26:56 -0000

Hi Ben,  responses inline

On Tue, Jan 5, 2021 at 6:33 PM Ben Schwartz <bemasc=
40google.com@dmarc.ietf.org> wrote:

> Thanks for updating this.  Quick questions:
>
> Why is the destination a URI, and not just host:port like CONNECT?
>

Because that would violate HTTP specs. Please take a look at these issues
for background:
https://github.com/ietf-wg-masque/draft-ietf-masque-connect-udp/issues/23
https://github.com/ietf-wg-masque/draft-ietf-masque-connect-udp/issues/8

What is the proxy supposed to do with a (bad) request that includes an
> odd-numbered Datagram-Flow-Id?  (I presume 4xx, but it seems unspecified.)
>

The doc states that in this case it is malformed, and responses to
malformed requests are specified in other docs. Please file an issue and
I'll add a reference.


> What's the relationship between "type" in the stream form and "flow-id
> name" in the datagram form?  It seems like there ought to be some kind of
> mapping or unified registry for these things, since they'll presumably be
> largely overlapping.
>

I expect some might overlap, and some might not. One is an integer and the
other a string. I wouldn't unify them personally.


> How do you expect this to interact with MTU?  It seems like PMTUD is not
> possible here, which makes me sad.  Even "PLPMTUD" will not work, because
> there is no way to set a "don't fragment" flag.  I presume the intention is
> that "don't fragment" would be encoded by a registered flow-id name.  Apart
> from the potential for a "combinatorial explosion" if there are multiple
> flags in play, this seems OK, but I worry that anything written as an
> extension won't be widely deployed.  I think we should consider putting
> "don't fragment" support in the base spec, maybe even mandatory to
> implement.  Otherwise we'll break MTU discovery entirely, and we'll just
> have hacky hardcoded MTU values forever*.
>
> *Or we'll have to invent "Transport Layer Path MTU discovery", where the
> sender asks the recipient for a fragmentation report, and the recipient
> observes whether the packet was fragmented and reports this back to the
> sender in-band.
>

We can't make DONT_FRAGMENT mandatory because not all kernels allow setting
it from userspace. I also don't think this needs to be negotiable, as we've
demonstrated that IP fragmentation is harmful by now. Can you file an
issue? We can add something along the lines of "the proxy SHOULD disable
fragmentation on its UDP sockets".


> On Tue, Jan 5, 2021 at 8:57 AM <internet-drafts@ietf.org> wrote:
>
>>
>> A New Internet-Draft is available from the on-line Internet-Drafts
>> directories.
>> This draft is a work item of the Multiplexed Application Substrate over
>> QUIC Encryption WG of the IETF.
>>
>>         Title           : The CONNECT-UDP HTTP Method
>>         Author          : David Schinazi
>>         Filename        : draft-ietf-masque-connect-udp-03.txt
>>         Pages           : 11
>>         Date            : 2021-01-05
>>
>> Abstract:
>>    This document describes the CONNECT-UDP HTTP method.  CONNECT-UDP is
>>    similar to the HTTP CONNECT method, but it uses UDP instead of TCP.
>>
>>    Discussion of this work is encouraged to happen on the MASQUE IETF
>>    mailing list masque@ietf.org or on the GitHub repository which
>>    contains the draft: https://github.com/ietf-wg-masque/draft-ietf-
>>    masque-connect-udp.
>>
>> Discussion Venues
>>
>>    This note is to be removed before publishing as an RFC.
>>
>>    Source for this draft and an issue tracker can be found at
>>    https://github.com/ietf-wg-masque/draft-ietf-masque-connect-udp.
>>
>>
>> The IETF datatracker status page for this draft is:
>> https://datatracker.ietf.org/doc/draft-ietf-masque-connect-udp/
>>
>> There is also an HTML version available at:
>> https://www.ietf.org/archive/id/draft-ietf-masque-connect-udp-03.html
>>
>> A diff from the previous version is available at:
>> https://www.ietf.org/rfcdiff?url2=draft-ietf-masque-connect-udp-03
>>
>>
>> Please note that it may take a couple of minutes from the time of
>> submission
>> until the htmlized version and diff are available at tools.ietf.org.
>>
>> Internet-Drafts are also available by anonymous FTP at:
>> ftp://ftp.ietf.org/internet-drafts/
>>
>>
>> --
>> Masque mailing list
>> Masque@ietf.org
>> https://www.ietf.org/mailman/listinfo/masque
>>
> --
> Masque mailing list
> Masque@ietf.org
> https://www.ietf.org/mailman/listinfo/masque
>