[quicwg/base-drafts] Make transport parameter ID and length varint (#3294)

David Schinazi <notifications@github.com> Tue, 10 December 2019 04:08 UTC

Return-Path: <noreply@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 26709120133 for <quic-issues@ietfa.amsl.com>; Mon, 9 Dec 2019 20:08:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8
X-Spam-Level:
X-Spam-Status: No, score=-8 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.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 lZRuv5C5x-Bv for <quic-issues@ietfa.amsl.com>; Mon, 9 Dec 2019 20:08:29 -0800 (PST)
Received: from out-12.smtp.github.com (out-12.smtp.github.com [192.30.254.195]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D5BAD120120 for <quic-issues@ietf.org>; Mon, 9 Dec 2019 20:08:29 -0800 (PST)
Date: Mon, 09 Dec 2019 20:08:29 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1575950909; bh=aZxSZqAKpYdn5B3Q1HhBfVAHPJLbyO4YLRBBzGb/WA8=; h=Date:From:Reply-To:To:Cc:Subject:List-ID:List-Archive:List-Post: List-Unsubscribe:From; b=YHUnS3aphDzehkaBZzoqq+uE1PMtCmy/uvytC2/nG7vsh732izUHl3zANCaLlr7Zg U+0DA+VYbJzaJ/ATu+T3LNu7VRxWniHkH3Btrn0XpSMmdEkd/llW81pss6E36SHwK2 d9uV3A6RBm8mv0/bMwZUq1KCnNVs1FpK2BcXlalk=
From: David Schinazi <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+AFTOJK2ASG3HIGRHLPYCLOV37RGL3EVBNHHB72WFIM@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/3294@github.com>
Subject: [quicwg/base-drafts] Make transport parameter ID and length varint (#3294)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5def1a3d4ba50_37193fc557acd968138168"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: DavidSchinazi
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/LvXq3q8-YtHJC0GSQ-nogXKXuPQ>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 Dec 2019 04:08:31 -0000

Now that we have turned almost every integer in the spec to varint, and we have removed any mention of the TLS presentation language, it makes sense to make transport parameters varint as well. The current uint16-based encoding sticks out like a sore thumb. That said, this change is more than cosmetic - transport parameters are our main joint for extending QUICv1, and switching to 62-bit will ensure we do not run out of space, ever. If we do not do this now, we will not be able to change it later in QUICv1 as these are used during the handshake.

This issue was originally described in #3020 but the feedback in Cupertino was that #3020 was conflating three different topics:
1. the language used to describe transport parameters. That has been changed away from the TLS presentation language via merged PR #3108.
2. the policy for the transport parameter IANA registry. This has been changed by merged PR #3170.
3. the encoding of transport parameter ID and length over the wire. This is discussed in this issue and the associated open PR #3169.

>From the discussions I've seen, it looks like there was some opposition and some support. I'm opening this issue now so we can have that conversation here independent of topics (1) and (2) above.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/3294