Re: [core] Vendor-specific options

Carsten Bormann <cabo@tzi.org> Thu, 19 January 2012 11:29 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 22E3321F85B4 for <core@ietfa.amsl.com>; Thu, 19 Jan 2012 03:29:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.249
X-Spam-Level:
X-Spam-Status: No, score=-106.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aZ3DJ-X1izyo for <core@ietfa.amsl.com>; Thu, 19 Jan 2012 03:29:17 -0800 (PST)
Received: from informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::12]) by ietfa.amsl.com (Postfix) with ESMTP id F378E21F85AE for <core@ietf.org>; Thu, 19 Jan 2012 03:29:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from smtp-fb3.informatik.uni-bremen.de (smtp-fb3.informatik.uni-bremen.de [134.102.224.120]) by informatik.uni-bremen.de (8.14.3/8.14.3) with ESMTP id q0JBT52c024146; Thu, 19 Jan 2012 12:29:06 +0100 (CET)
Received: from [192.168.217.117] (p5489B242.dip.t-dialin.net [84.137.178.66]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by smtp-fb3.informatik.uni-bremen.de (Postfix) with ESMTPSA id E88D01A; Thu, 19 Jan 2012 12:29:04 +0100 (CET)
Mime-Version: 1.0 (Apple Message framework v1251.1)
Content-Type: text/plain; charset="windows-1252"
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <F8E6E1E0-48B4-4959-8CB3-8AC9FBFFB74F@yegin.org>
Date: Thu, 19 Jan 2012 12:29:04 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <7D669CE5-0F33-4163-A43B-E05589BE9892@tzi.org>
References: <674287D1-C99A-45EE-9969-D0B35160056B@yegin.org> <FCD51BFB-2F9F-4EF4-8180-86259632DEF1@tzi.org> <F8E6E1E0-48B4-4959-8CB3-8AC9FBFFB74F@yegin.org>
To: Alper Yegin <alper.yegin@yegin.org>
X-Mailer: Apple Mail (2.1251.1)
Cc: core WG <core@ietf.org>
Subject: Re: [core] Vendor-specific options
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/core>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 19 Jan 2012 11:29:18 -0000

On Jan 19, 2012, at 11:46, Alper Yegin wrote:

> Let's call it vendor-specific option, not user-defined option though.

(Option names are a bike shed color decision, so I'm sorry for responding to this, but:

You don't have to sell anything to define such an option :-)

But given all the "vendoring" that is going on, I don't have a strong opinion.)

                    .oOo.

Now back to the question:

> I think this makes sense.

Are there other people who want to do something in this space?

                    .oOo.

Let me quickly explain why I think the obvious approaches don't work:


1) Just squatting on option numbers.

This creates a lot of problems in other protocols.
Products that use squatted-on option numbers get deployed and make the number unavailable for any further use (even if the product then fades out).
Squatting is somewhat more acceptable for text-named options (lower probability of collision), but works very badly for a small number space.
Even more so as there are "good" and "worse" numbers (amount of fence posting required): the small numbers will be quickly squatted away for vendor vanity options, and we get to assign 93 for the next standards-based option.
There is a reason why coap-core defines the option number space as:

   The IANA policy for future additions to this registry is "IETF
   Review" as described in [RFC5226].


2) Defining a small "experimental" range.

This essentially means all the squatting is focused on a small range.
This works so badly in practice that tcpm has a draft trying to define a way to survive their current setup.

	draft-touch-tcpm-experimental-options-00.txt

TCP options and CoAP options pose related requirements, but are not the same.

I think Joe and I developed our proposals in parallel, from the same kind of thinking.
Joe is prepared to spend 32 bits for option identification, I'm *trying* to be a bit more frugal, but that works only very well for vendors (here they are again) that have been in play for long enough to have a 14-bit or smaller enterprise ID.
(16384 is "California State Polytechnic University, Pomona"…)

Creating a new registry for CoAP option vendor-IDs would be possible, but I'm not convinced yet we want to set this up.
Among other considerations, most companies in this space already need an enterprise number, so it is much more stealthy to use this instead of applying for a number out of a focused registry...

Grüße, Carsten