Re: [quicwg/base-drafts] Extension frames (#1068)

ekr <notifications@github.com> Wed, 04 April 2018 13:17 UTC

Return-Path: <bounces+848413-a050-quic-issues=ietf.org@sgmail.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 21D511204DA for <quic-issues@ietfa.amsl.com>; Wed, 4 Apr 2018 06:17:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.01
X-Spam-Level:
X-Spam-Status: No, score=-2.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] 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 kuHSfniWCLyO for <quic-issues@ietfa.amsl.com>; Wed, 4 Apr 2018 06:17:38 -0700 (PDT)
Received: from o7.sgmail.github.com (o7.sgmail.github.com [167.89.101.198]) (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 AE701129515 for <quic-issues@ietf.org>; Wed, 4 Apr 2018 06:17:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=github.com; h=from:reply-to:to:cc:in-reply-to:references:subject:mime-version:content-type:content-transfer-encoding:list-id:list-archive:list-post:list-unsubscribe; s=s20150108; bh=nEidP/vBaTQe17K9LF8GcX3aX7k=; b=r+t510vj/P/rct9Z s0cyWcUSNobTeufKRhagJv7+JcdOm49TsVDa7bpVcZtIKYC6NW9J8PDXoWa9Mz+z PfEeMLdDu8s8G9UO6MZCeNgM3bE16F1Xvw86OcjzvsQvRKVq7mPP9wknqf1SuXez jLOWLVuAuPUy7GFbx9CKUKABjq8=
Received: by filter0363p1iad2.sendgrid.net with SMTP id filter0363p1iad2-13046-5AC4D06F-19 2018-04-04 13:17:35.65196126 +0000 UTC
Received: from smtp.github.com (out-3.smtp.github.com [192.30.252.194]) by ismtpd0049p1mdw1.sendgrid.net (SG) with ESMTP id XWelgFGtQKO1WL2jE6ySYA for <quic-issues@ietf.org>; Wed, 04 Apr 2018 13:17:35.515 +0000 (UTC)
Date: Wed, 04 Apr 2018 13:17:35 +0000
From: ekr <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab23ada81335bfa4535b8d6020c663dcedf779bad192cf0000000116dc926f92a169ce115ea54e@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/pull/1068/c378596154@github.com>
In-Reply-To: <quicwg/base-drafts/pull/1068@github.com>
References: <quicwg/base-drafts/pull/1068@github.com>
Subject: Re: [quicwg/base-drafts] Extension frames (#1068)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5ac4d06f508f4_53b22ad7a106eed0102287"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: ekr
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
X-SG-EID: l64QuQ2uJCcEyUykJbxN122A6QRmEpucztpreh3Pak3vY7iWFtCQsNzbvZDaiABnylspd5guJx1PpD ZZm5FYybT5nqAucnCzgkb9ZDfnaTaLdO2u68/uyHJ9tawfpOkoPDk+DmLIjNJ5eJCFLPjabNFB4EhO yp98pDV6i17HoeyVxF+30IGSlGWpFH5tRec8E+QrANa2DoQkcUVfVDOTpw==
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/B3TvJ3K_NeombpD0GOgN-SOkJRU>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.22
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: Wed, 04 Apr 2018 13:17:47 -0000

I'm not a huge fan of this design, for two reasons:

1. The mapping seems complex, and really only serves to save a few bytes. As I think I observed in Melbourne, given that QUIC already has variable length integers and we are only presently defining a very small number of frame types, why don't simply declare the frame type to be a varint. Then we will have an unlimited number of extension frame types, and we can assign low (hence short) frame types to anything that becomes a standard (thus not paying any bytes there) and non-standard frame types can just use longer numbers, without any mapping.

2. Because this design couples frame type negotiation and its code point, that means that if you want to negotiate parameters for the use of extension frames, you then need a separate transport parameters negotiation for *that*

I'm certainly sympathetic for people's desire to not have a bunch of transport parameters messages whose only purpose is to signal "I support feature X" (this is kind of an annoyance in TLS) but I think that can actually be dealt with in a cleaner way: Simply have TP contain a list of numbers (varints) which define the features that you are advertising. This wouldn't be the only way to do things and so if you had a feature that needed negotiation, you could still do it that way, but simple features could be indicated this way.




-- 
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/pull/1068#issuecomment-378596154