Registering extensions

Ian Swett <ianswett@google.com> Tue, 30 January 2018 15:03 UTC

Return-Path: <ianswett@google.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 09F03131853 for <quic@ietfa.amsl.com>; Tue, 30 Jan 2018 07:03:19 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.71
X-Spam-Level:
X-Spam-Status: No, score=-2.71 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, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 8xJR9fBHhwIs for <quic@ietfa.amsl.com>; Tue, 30 Jan 2018 07:03:17 -0800 (PST)
Received: from mail-it0-x22f.google.com (mail-it0-x22f.google.com [IPv6:2607:f8b0:4001:c0b::22f]) (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 0B833131928 for <quic@ietf.org>; Tue, 30 Jan 2018 06:59:41 -0800 (PST)
Received: by mail-it0-x22f.google.com with SMTP id e1so891667ita.0 for <quic@ietf.org>; Tue, 30 Jan 2018 06:59:41 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=jYAwwQLrTPeZ7vrd/UKGT1iYS9C/oUNoEn1MekMEvQo=; b=s/DYqCof0jv5n/XwsvmRKLc5RCkoU+vKsSynDd9SfinQz9qSgIBBDKpujdVzP7wLsR XsBPMrauuOMHO2XduZ2JBaZda49p8t5e8aIDd9BwNs/a2yVKp5FvqumfCttK7RjdAIXK KJZnC/LedhmEjN5cyvIzF8KTaJsX0h7wjJTrUUAXxw+JzZajdB8H0wqM4M9IN/6fINk9 pdPXnClizS3KIsa48/zkZ0sL4/7iRKZwSwbPlkcpUE1sUFbo0NM/JwckwojzBEg6sqwv cT2Px6MNHRU7PME3t/XtMrQGBNKusp8098gloVmA6nggPHcG359M+A0i6VNesH8cjGCk IMNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=jYAwwQLrTPeZ7vrd/UKGT1iYS9C/oUNoEn1MekMEvQo=; b=JAiI9BS75+LzFz+nKH0E+mHe5Z4JKLQtCaJvF2/vTlytJjlkjvM6wdvyf26m97BSLs jfBQos9ufs4Pu38bcByPpyR+i5WeMH6/pwZuU1rPXFpEKIANbmezB+OSWsf1ZQ+qbwSX xoIeMLFHGNKPMDOkJo6ioA40Bp5gmuS44c4a9XYD7LjzNG1e8qKjQ0Vdh4DQy3ctPiLY /K2oDk8RI06Kw4G4NPsORKkVfgZWLXz7IMvJm0/oNaSlydptfQt5ey+4zsnJdfzPb58i gNE6EYk+Eqgt+EoouABRvJ01FgQnIcykce1EGAbVYUIy0om1ldy9bwWpzubFL225dOkk e9Jg==
X-Gm-Message-State: AKwxyter72QK0wEJONvAOGIgr9e5+JKQ69fRQ03wV0yabaCKG1aOVOYh pD0IfcYqIi3UZ5BAXrcf7MpWvntp/t4rLG8V0M+6ov58zVY=
X-Google-Smtp-Source: AH8x224Xy/+iLmKx95g8uFffDNpdQgRMoRUm2FdNVYMC+E+7RB6cCGHROXEQxCCE9IqTZvicX45DWSFTBSGkaNYitWw=
X-Received: by 10.36.73.102 with SMTP id z99mr33903784ita.72.1517324379866; Tue, 30 Jan 2018 06:59:39 -0800 (PST)
MIME-Version: 1.0
Received: by 10.107.222.4 with HTTP; Tue, 30 Jan 2018 06:59:19 -0800 (PST)
From: Ian Swett <ianswett@google.com>
Date: Tue, 30 Jan 2018 09:59:19 -0500
Message-ID: <CAKcm_gPKAJN45JSWQ7VQ4tRB7D1-dkSnKZ-7xc7ChNgnRXUGkA@mail.gmail.com>
Subject: Registering extensions
To: IETF QUIC WG <quic@ietf.org>
Content-Type: multipart/alternative; boundary="001a11c14e5eac97020563ff9c0e"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/S9ryrAA_wM0qbdstuLbu9MZKHRU>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.22
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: Tue, 30 Jan 2018 15:03:19 -0000

There are two PRs out proposing two different models of extensions.

How extensions are registered is largely orthogonal, so I'd like to break
that off into a separate discussion.

I propose three spaces:
 1) Smallest(ie: 0-255) extensions are allocated by the IETF WG
 2) Medium(ie: 256-65535) extensions are registered with IANA
 3) The rest(ie: 65536+) are registered on a Wiki.

This allows room for real experimentation with a very low bar on
developers, which is ideal from a software and transport development
perspective.

I'm open to any reasonable split of the space into three parts, and I'm
open to 4 bytes or a 62 bit varint, but I do think we should have >=4 bytes
worth of extensions.