[quicwg/base-drafts] HTTP SETTINGS: define setting content encoding (#1556)

Luca Niccolini <notifications@github.com> Fri, 13 July 2018 16: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 []) by ietfa.amsl.com (Postfix) with ESMTP id 5B454130E08 for <quic-issues@ietfa.amsl.com>; Fri, 13 Jul 2018 09:08:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.01
X-Spam-Status: No, score=-8.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, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-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 ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id Jjg6x9bGOhgv for <quic-issues@ietfa.amsl.com>; Fri, 13 Jul 2018 09:08:36 -0700 (PDT)
Received: from out-3.smtp.github.com (out-3.smtp.github.com []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A7365128CF3 for <quic-issues@ietf.org>; Fri, 13 Jul 2018 09:08:36 -0700 (PDT)
Date: Fri, 13 Jul 2018 09:08:35 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1531498115; bh=XOi/JvFuQdHjzQ7c/Ub6pcTwrRPFhOxEw6nkPoB3/CU=; h=Date:From:Reply-To:To:Cc:Subject:List-ID:List-Archive:List-Post: List-Unsubscribe:From; b=AnUC+aDEB5j08BszxGnSmgwQT2G4zSYLMT1fCa2XaKoWUYeayksqYGfdsYXyJVhGj F3989tuchziHGiCScv9ZZTz/BJJyzwwrB8h2hs26UW6zeCXydj5JekbPLwbwo59mOY z7g/FuoKuj6WMiJ9hiWf2T0koNo/pVDe2DdTej6c=
From: Luca Niccolini <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab8eab89a2a253718f25249301dbc3c5423ea462d092cf000000011760908392a169ce14546a14@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1556@github.com>
Subject: [quicwg/base-drafts] HTTP SETTINGS: define setting content encoding (#1556)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5b48ce83c2fc2_73b83f94cafccf801017a7"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: lnicco
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/McU3hhAie4-as6Ib6pjKezPRgf0>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.27
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: Fri, 13 Jul 2018 16:08:40 -0000

The current draft says:
> The payload of a SETTINGS frame consists of zero or more parameters,
   each consisting of an unsigned 16-bit setting identifier and a
   length-prefixed binary value.

This leaves the encoding of the setting content to the implementor and may be cause of ambiguity.
I believe we should define the encoding more explicitly for each setting, e.g. 
is `SETTINGS_NUM_PLACEHOLDERS` encoded as a fixed-length 4 or 2 (given its maximum value) bytes integer, or perhaps it can also be variable-length, e.g. can the value be encoded in just 1 byte if less than 256 ? 

Also, do we expect arbitrarily large setting contents ?
Implementors would likely enforce some sensible maximum values whenever the length is encoded as a quic-integer, do you think there is value in the RFC suggesting these maximum values ? 
This is probably a larger scope question, but in the settings frame seems more prominent

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub: