Re: [Masque] ECN & Flow IDs
David Schinazi <dschinazi.ietf@gmail.com> Wed, 07 April 2021 17:53 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 460AD3A22E0 for <masque@ietfa.amsl.com>; Wed, 7 Apr 2021 10:53:22 -0700 (PDT)
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 ZHgPJeCaBjBr for <masque@ietfa.amsl.com>; Wed, 7 Apr 2021 10:53:17 -0700 (PDT)
Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com [IPv6:2607:f8b0:4864:20::102e]) (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 B3C2D3A22DA for <masque@ietf.org>; Wed, 7 Apr 2021 10:53:17 -0700 (PDT)
Received: by mail-pj1-x102e.google.com with SMTP id j6-20020a17090adc86b02900cbfe6f2c96so1745397pjv.1 for <masque@ietf.org>; Wed, 07 Apr 2021 10:53:17 -0700 (PDT)
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=cub1sEJreC3+vTI6dp0aj/pujPEcGBGcyGonVRnXJfk=; b=Ha8VFAsWcuuMCTF4BdAcBzI8hHgLJIz0i2/pnqJaZLDATOoVayHN5b3CBkyMuStQdo IOs+2N1ANO0F+/LtlTGTV68IeVSEcP7jMWDvcwKYBIGL+NivKIWUxYjraL9HbKAiIt3t Rj5jDJUnPJdihY8KkC4aygPs2Rc0T2WzFqijku1xJjn4kVtjGRs9g7DZ6LCQMtdgw3Zs NebsPtnL1Svz8uyWz3qu1IgIWrzDtOAizsoJHcVvU6tU8mSrJYfeLoCsp5iWP3PrMUDX NcIeHCSvyVtCoZTbkAVglHiC0Z61wfvoy5C2sLjharmI5fC8eERe8Ls811T0AAnFnqM9 FdpA==
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=cub1sEJreC3+vTI6dp0aj/pujPEcGBGcyGonVRnXJfk=; b=lgnT0lPQ7j+KSD1Hacbw6DibquWu6YVnzZepPmk7rbN3XbYH1xNmNataPR2mTnyA6X 5zM1gFYwZ+eSKYjGmJeMeGd/pk60ITmO1xuLccZLcVekhf0ibNVq/aMw0EAeHgVnuQly YilEFgbcUPTeGG2mDdbry7RoQYkYI9BCZfK/Fa/4hExYB6AeQ1PdDYSe/sq9CtiTBZ5y 6+ro7YRMajjlPZPAM6NZTab6RWAECVdBfC9E/iPCIMfxSzI4rnZfWcMiwhY2iz/lBeFO AND8qyJ37VvD+sfqL4yAGhonMlFwge7rSJBIkIxeYedNLx7P+yDK8rFoDzvn1Lsz60bI KxQQ==
X-Gm-Message-State: AOAM530PcvP5z6kaeV2EETERQvJJl6XrqboI+9TXRP7QgfgOZXQb4rTY mxcWccriC90Rz0KZI8I7vfb9w+SxDH5gBwN4rfI=
X-Google-Smtp-Source: ABdhPJx7es/ab12zp7KEtRSbJaV9IGKADnHS9D9Vx4Eq/SINWBLHp3gU6nyRKH4MXXweQyiSf9tm8Z5JSXY+ygYSsqk=
X-Received: by 2002:a17:902:b210:b029:e6:33b4:cd9e with SMTP id t16-20020a170902b210b02900e633b4cd9emr3971059plr.67.1617817996604; Wed, 07 Apr 2021 10:53:16 -0700 (PDT)
MIME-Version: 1.0
References: <CAM4esxRmjWr-y-9-KAJmmKvGdONpPufgAbubUhPu_KaS1_Md9Q@mail.gmail.com> <CAPDSy+6go4xh4E55220upECkrept1Yb15diVhC8e3HEWsz52fQ@mail.gmail.com> <BBA47C7D-FBEC-419D-9BED-2D998EF526B0@ericsson.com>
In-Reply-To: <BBA47C7D-FBEC-419D-9BED-2D998EF526B0@ericsson.com>
From: David Schinazi <dschinazi.ietf@gmail.com>
Date: Wed, 07 Apr 2021 10:53:05 -0700
Message-ID: <CAPDSy+4FM+02T78r9=JvzO3D1WVKU63_Cs_n7mtKvJGR6BoeSg@mail.gmail.com>
To: Mirja Kuehlewind <mirja.kuehlewind@ericsson.com>
Cc: MASQUE <masque@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000ffb85e05bf659adc"
Archived-At: <https://mailarchive.ietf.org/arch/msg/masque/SDCETOc4UsVd1r6XXghP8UGBjcY>
Subject: Re: [Masque] ECN & Flow IDs
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: Wed, 07 Apr 2021 17:53:22 -0000
On Wed, Apr 7, 2021 at 10:00 AM Mirja Kuehlewind < mirja.kuehlewind@ericsson.com> wrote: > Hi David, hi all, > > > > to also add to your question about multiple flow IDs. I guess we kind of > agree that we don’t want flow ID for ECN information, as adding two bits is > simple enough, however, then it is actually not fully clear to me why > multiple flow IDs per connect request are needed. You briefly mentioned > other extension below, however, not all, or only very few information, > require per-packet information (as it was used for the ECN example). > Imagine an extension to CONNECT-IP that allows compressing IP addresses. That would change the datagram format. If you want to actually send multiple flows/connections to the same server > you, can always send multiple connect requests. That’s slightly more > overhead at connection establishment but not much, and I would say it’s > architecturally more clean and therefore also simpler. > That wouldn't work because two separate requests have (a) different lifetimes and (b) can land on different HTTP backends. David Mirja > > > > > > *From: *Masque <masque-bounces@ietf.org> on behalf of David Schinazi < > dschinazi.ietf@gmail.com> > *Date: *Wednesday, 31. March 2021 at 02:36 > *To: *Martin Duke <martin.h.duke@gmail.com> > *Cc: *MASQUE <masque@ietf.org> > *Subject: *Re: [Masque] ECN & Flow IDs > > > > The trivial other approach to solving ECN would be to prefix the UDP > payload with a type byte that contains the two ECN bits and 6 unused bits. > > That would definitely work, and therefore I don't think ECN is a good > example to use as a discussion starter for how flow IDs are managed. > > I wrote that draft to test out the extensibility of the CONNECT-UDP > design, I'm not planning on moving it forward at this time. > > > > More conceptually, the main question is whether we allow one > client-initiated bidirectional stream to map to multiple datagram flow IDs. > > The approach I've taken is to say yes: that allows us to reuse the flow ID > multiplexing logic to encode additional information in the flow ID. > > You could build something isomorphic to this where you say no and have one > flow ID per stream, and then add a second varint right after the flow ID. > > Since datagrams have to fit in a QUIC packet, adding more varints eats > into available datagram MTU which makes me prefer the multiple flow IDs per > stream approach. > > Both are pretty much equivalent in terms of implementation complexity: > either way you need a hash table mapping from a varint to what that varint > means. > > There is more complexity in how you convey that mapping (right now this is > done using parameters on the Datagram-Flow-Id header), but I don't think > > requiring one flow ID per stream solves any of that complexity, you'll > still need a way to convey extension information. The ECN example is so > simple that > > it doesn't require sending much extension information, but if you look > further at enabling optional IP header compression in CONNECT-IP, then > you'll want > > a way to associate a varint with which IP addresses you're compressing. > > > > I think the question we have to answer becomes: do we want MASQUE > protocols to be extensible? Our options are: > > - disallow extensibility and slightly simplify the protocol > > - allow extensibility via multiple flow IDs per stream, and deal with the > slight complexity > > - allow extensibility with a single flow ID per stream, and deal with the > slight complexity > > Personally, I feel strongly that we should allow extensibility. > > > > David > > > > > > On Tue, Mar 30, 2021 at 3:40 PM Martin Duke <martin.h.duke@gmail.com> > wrote: > > Hello MASQUE, > > > > At IETF 110 there was a lot of good discussion challenging the foundations > of the CONNECT-UDP framework, including the relationship between streams > and Flow-IDs. While CONNECT-UDP happens to use flow IDs somewhat > incidentally, the real action with the controversial > multiple-flow-id-per-CONNECT happens in David's (unadopted) ECN draft: > https://datatracker.ietf.org/doc/draft-schinazi-masque-connect-udp-ecn/ > > > > Leading up to the interim, it would be great if one of the detractors of > the flow-id mapping submitted their own approach to solve ECN. This would > help to illuminate the tradeoffs. Speaking as an individual, I am also > hoping to move the ECN work forward and having another design would help to > do that. > > > > Thanks, > > Martin > > -- > Masque mailing list > Masque@ietf.org > https://www.ietf.org/mailman/listinfo/masque > >
- [Masque] ECN & Flow IDs Martin Duke
- Re: [Masque] ECN & Flow IDs David Schinazi
- Re: [Masque] ECN & Flow IDs Alex Chernyakhovsky
- Re: [Masque] ECN & Flow IDs Martin Duke
- Re: [Masque] ECN & Flow IDs David Schinazi
- Re: [Masque] ECN & Flow IDs Mirja Kuehlewind
- Re: [Masque] ECN & Flow IDs Mirja Kuehlewind
- Re: [Masque] ECN & Flow IDs Martin Duke
- Re: [Masque] ECN & Flow IDs David Schinazi
- Re: [Masque] ECN & Flow IDs Alex Chernyakhovsky
- Re: [Masque] ECN & Flow IDs Martin Duke
- Re: [Masque] ECN & Flow IDs Mirja Kuehlewind
- Re: [Masque] ECN & Flow IDs Mirja Kuehlewind
- Re: [Masque] ECN & Flow IDs Alex Chernyakhovsky
- Re: [Masque] ECN & Flow IDs David Schinazi
- Re: [Masque] ECN & Flow IDs Mirja Kuehlewind
- Re: [Masque] ECN & Flow IDs Martin Duke
- Re: [Masque] ECN & Flow IDs Alex Chernyakhovsky
- Re: [Masque] ECN & Flow IDs Martin Duke
- Re: [Masque] ECN & Flow IDs David Schinazi