Re: Transport parameters for version negotiation and v2

David Schinazi <dschinazi.ietf@gmail.com> Thu, 01 December 2022 16:46 UTC

Return-Path: <dschinazi.ietf@gmail.com>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 27592C14F74B for <quic@ietfa.amsl.com>; Thu, 1 Dec 2022 08:46:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level:
X-Spam-Status: No, score=-2.095 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, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, 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=gmail.com
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 dOGmF2_7CNYX for <quic@ietfa.amsl.com>; Thu, 1 Dec 2022 08:46:54 -0800 (PST)
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4C3E7C14CE44 for <quic@ietf.org>; Thu, 1 Dec 2022 08:46:54 -0800 (PST)
Received: by mail-ed1-x52b.google.com with SMTP id a16so3123084edb.9 for <quic@ietf.org>; Thu, 01 Dec 2022 08:46:54 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=96AZcFGZt2KSryKKqhWqxvRDmCwj6RUwSkzOJZ/uCYg=; b=Qxre4YoqhV+HNuiU9fDl3nk5CCTu8It7h4+aVE7PTbZBsHMYJwBT+t31uB5y3vADtB MlbBiP1Rjl59fQAeR7ypGGN0U5MUBaGSlMHEw7vtmzZNrmKt7ePSpluj5Mv4WeGZlUrQ xf2A8L9v2fCBlz0km0leaxC9VExlV0ztRNODNtwvlLDbHDrs6xsR1AtHDcHLk7/3UMXF UgAr3duKhEACqUc6TksKDD+I38EhXWN5yimrxAv0fKoWQitnghREfj17S1UpSoVdSAj4 NFpDMq5OHlzXwoTk/Q3Yb98f24Ay/rkJRQZ05mOLyE7F7aD512qAeT62a8vPKjzlHOQY xkYA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=96AZcFGZt2KSryKKqhWqxvRDmCwj6RUwSkzOJZ/uCYg=; b=H7hQpqTXIeTKXa4GN/4a2uZtJhCB9t7xjsd8qdJ92RIIyrehIC3nMIQHe+dUjaOTQO 5EZX6cvADl+keQss9rfmAzh8IOwAkPRwT3nWd9gnTUkE2kEz3lJq6cA/3xTTuumIyCAS LtfLpt72vTyuYEo1CoyAJ2jESltUGS0vBxWSKFRv45XaoGYPm8d1UJv6scuwWQJ0Fmbx LLgToANTOaorduUgcZDyWicqv7piuqUFgE4ro7DlkEv+S0iXvWTLbflmtuJUwVoILfh/ D4JejBoVhsz5U1VTYvF+h2WUnWPR56B6bNHmRMVtJ/8ft0/Hr4yGmyCjDL/G/TdlNpGw lfLQ==
X-Gm-Message-State: ANoB5pnUB5DtJV0+JeKxoTDExwP+hQnBNa4/J/ATz0c1Qo4zfmMy5ysD ZqI2Q6bBsZCsuZCHnpCwB63qjH2OaQQyJabUkto=
X-Google-Smtp-Source: AA0mqf7CbK7tezlMnEG8BRd+PVkpxGfm4cMxhP6/1LZKohPtRdQYBd10beQGmXSsAkGsn9cLPVGOCCZDrryN2m8C0r8=
X-Received: by 2002:aa7:d34b:0:b0:46a:914c:9bc9 with SMTP id m11-20020aa7d34b000000b0046a914c9bc9mr32079968edr.418.1669913212241; Thu, 01 Dec 2022 08:46:52 -0800 (PST)
MIME-Version: 1.0
References: <85208613-d3b1-4955-a71a-b22ac7ada0a1@betaapp.fastmail.com> <9599180d-4dcc-691b-c63d-e8e7e838db42@huitema.net> <CAM4esxR0He-akPE8Sooz=Gc52feLceBgdXoYWX43HmTCgwbnLg@mail.gmail.com> <PH0PR00MB11523751C56BF06A4DDFACC2B30A9@PH0PR00MB1152.namprd00.prod.outlook.com> <CAM4esxRmA_UckUmXA4OomAvo3ert=QEy+8QvJLtGWBLicPuL-A@mail.gmail.com> <91b3ef5d-578d-4def-9308-c496398598c0@app.fastmail.com>
In-Reply-To: <91b3ef5d-578d-4def-9308-c496398598c0@app.fastmail.com>
From: David Schinazi <dschinazi.ietf@gmail.com>
Date: Thu, 01 Dec 2022 08:46:40 -0800
Message-ID: <CAPDSy+4VHS1VGx3Lgid2wi4aDHBnH6Z9c8WMyOZzzD2gBwE4Zg@mail.gmail.com>
Subject: Re: Transport parameters for version negotiation and v2
To: Martin Thomson <mt@lowentropy.net>
Cc: Martin Duke <martin.h.duke@gmail.com>, Nick Banks <nibanks@microsoft.com>, Christian Huitema <huitema@huitema.net>, "quic@ietf.org" <quic@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000d2488205eec6f7c0"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/viGch5-NoeqlJD_BZK0p5rlLGFk>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 01 Dec 2022 16:46:58 -0000

It's both simplest and safest to change both, I'd suggest doing that.
David

On Wed, Nov 30, 2022 at 10:30 PM Martin Thomson <mt@lowentropy.net> wrote:

> Right, thanks for reviving this.
>
> My sense is that the best approach here is to make a clean break and get a
> new codepoints for BOTH the version negotiation transport parameter and the
> v2 version.
>
> Though deployments can change, they probably won't change atomically
> enough to avoid real negotiation failure.
>
> On Thu, Dec 1, 2022, at 06:25, Martin Duke wrote:
> > I don't want to lose this thread, as this is a quite important thing to
> > resolve. I personally would prefer to keep the version number constant,
> > but it's not all clear to me that it's acceptable to deployed
> > implementations.
> >
> > On Mon, Nov 21, 2022 at 5:06 AM Nick Banks <nibanks@microsoft.com>
> wrote:
> >> MsQuic has released a version with VN+V2 support, but it’s marked as
> “preview” so it can change, as necessary. We weren’t planning to make it an
> official feature until the RFCs.____
> >> __ __
> >> Thanks,____
> >> - Nick____
> >> Sent from Outlook <http://aka.ms/weboutlook>____
> >> *From:* QUIC <quic-bounces@ietf.org> *On Behalf Of * Martin Duke
> >> *Sent:* Thursday, November 17, 2022 8:45 PM
> >> *To:* Christian Huitema <huitema@huitema.net>
> >> *Cc:* Martin Thomson <mt@lowentropy.net>; quic@ietf.org
> >> *Subject:* Re: Transport parameters for version negotiation and v2____
> >> __ __
> >> In Google's code, the v2 code is exists but is not in production
> because we haven't done compatible VN yet. So changing the transport
> parameter at this point would have no impact on Chrome or Google production
> servers.____
> >> __ __
> >> On Thu, Nov 17, 2022 at 4:28 PM Christian Huitema <huitema@huitema.net>
> wrote:____
> >>>
> >>>
> >>> On 11/17/2022 4:15 PM, Martin Thomson wrote:
> >>> > How many people have shipped version negotiation and v2 already?
> >>> >
> >>> > I assume that implementations are using the codepoints for the
> transport parameter in the draft (0xFF73DB), but the drafts says this:
> >>> >
> >>> >> When this document is approved, it will request permanent
> allocation of a codepoint in the 0-63 range to replace the provisional
> codepoint described above.
> >>> >
> >>> > IANA are about to make that new allocation, but that might not do
> good things for interoperability.
> >>> >
> >>> > We're not changing the v2 version number and v2 *requires* the use
> of this transport parameter:
> https://quicwg.org/quic-v2/draft-ietf-quic-v2.html#section-4-2 <
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fquicwg.org%2Fquic-v2%2Fdraft-ietf-quic-v2.html%23section-4-2&data=05%7C01%7Cnibanks%40microsoft.com%7C0b21307c92c24ee5f18c08dac906a08b%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C638043327575620512%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Wz2tzGwBJsw7zyflxjdsihvHeZ%2FvFJhb1S48%2Bc9x%2BAY%3D&reserved=0
> >
> >>> >
> >>> > Consequently, an implementation that uses the current transport
> parameter codepoint will not interoperate successfully with an
> implementation that uses any new transport parameter codepoint.
> >>> >
> >>> > So, we either allocate a new codepoint for both, or we keep the
> existing ones.  Which do people prefer?
> >>> >
> >>> > Or, am I wrong about this?
> >>>
> >>>
> >>> The way I read it, QUIC-V2 makes a reference to QUIC-VN, which is
> >>> documented in the reference section as pointing to
> >>> draft-ietf-quic-version-negotiation-13. But I fully expect that the
> next
> >>> QUIC-V2 draft will refer to the updated version of QUIC-VN, and thus
> to
> >>> the final transport parameter.
> >>>
> >>> -- Christian Huitema
> >>>
> >>> ____
>
>