Re: [core] draft-ietf-core-sid-00, SID allocation

Andy Bierman <andy@yumaworks.com> Mon, 14 November 2016 01:17 UTC

Return-Path: <andy@yumaworks.com>
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 CEAFB1296B6 for <core@ietfa.amsl.com>; Sun, 13 Nov 2016 17:17:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.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 ZObQPwRwSb8i for <core@ietfa.amsl.com>; Sun, 13 Nov 2016 17:17:39 -0800 (PST)
Received: from mail-vk0-x22e.google.com (mail-vk0-x22e.google.com [IPv6:2607:f8b0:400c:c05::22e]) (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 164541295E5 for <core@ietf.org>; Sun, 13 Nov 2016 17:17:24 -0800 (PST)
Received: by mail-vk0-x22e.google.com with SMTP id p9so52937957vkd.3 for <core@ietf.org>; Sun, 13 Nov 2016 17:17:24 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=CMEFvQKehcGkGGAwBcTWORdZ6hV2ih1AqdPaJHvpOTI=; b=G228VW5JIpkQAuGLbIQ2B2pFEFjberDH8eSJb+3t0tb7Na9M5vqNqcPbZg7bo+2I15 8tMHRktKlQLI6LZnfMQzul5WfQQ98v5DUVa+eSMji7q1h/8/6zacF2Icgn5FKGodrmBx bntBUHullgiiyL7tf6z8n8Rt+qAqTtoFi3dvyEXbylOEiKKSpeeaMRVWZpEzWbxakY5P X3apLPrPDdGSFzv69DmSk6bksDGPTko0GgKcWYicUesIBAleqdb4Rf0NPY/t1cZUnQWT +ngYVIo6v1OW67Q+LpfVVif5iJSjqRYUQEJoI4iQNvqmSx9rV8Ww0HC9Ysx862VgKCMv TevQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=CMEFvQKehcGkGGAwBcTWORdZ6hV2ih1AqdPaJHvpOTI=; b=eIM8gH9w+8tSY0SsND+5ycS5VMEoKrewIuSsFJQyMG3fa2BAIIBHyO2PDCF8mcTPoF 1X3hIBSgmSHd+yliuOUYrXb9pZmIkqQ45Bp/sLtBYWCMayu0uw331FbTT+obwZG/8Hcu Cx9z7NJ/AzvIeDS244AtDzGMYUt5RLOknN9dhXHScAfd3xFzalmfXsE313noiRdQVO4S nat9HVhL6LIc9kVtJWDxW1/AVsMuM6xPEYw6/nLpNlFBmdiLEn0l+Gd9gYr/2NOln/t/ 6fQIEeNdxrTM+RML8GkkDZrMLgFC+fs1cLDXmeBd6gDnWEk8N/UIilMqXaNSL32NeSUT RtEg==
X-Gm-Message-State: ABUngveyi3a3clCZiUIMOe6Vlr/oJ9Zq7Vf37nxgJfSNblQazBl4HI7UnCiavjUqOpvb+nlac2TIrrwrXTbFww==
X-Received: by 10.31.207.199 with SMTP id f190mr7023608vkg.32.1479086243116; Sun, 13 Nov 2016 17:17:23 -0800 (PST)
MIME-Version: 1.0
Received: by 10.103.64.129 with HTTP; Sun, 13 Nov 2016 17:17:22 -0800 (PST)
In-Reply-To: <c39b5765e0554a4832f59395fb481a34@xs4all.nl>
References: <c39b5765e0554a4832f59395fb481a34@xs4all.nl>
From: Andy Bierman <andy@yumaworks.com>
Date: Sun, 13 Nov 2016 17:17:22 -0800
Message-ID: <CABCOCHQKSi452RYKUhMu8ncR+WxGmMMLDGp7oJi9R9RmEnN6VQ@mail.gmail.com>
To: "consultancy@vanderstok.org" <consultancy@vanderstok.org>
Content-Type: multipart/alternative; boundary="001a114f1de81d0e040541389a47"
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/4KN3-LDwB4yl_5wiCtd3h7NlcdI>
Cc: Core <core@ietf.org>
Subject: Re: [core] draft-ietf-core-sid-00, SID allocation
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 14 Nov 2016 01:17:42 -0000

Hi,


One question to ask:  How many modules do we expect to have?
How many objects do we expect to have?  In 30 years of writing MIB modules
we have never even come close to a million objects. (Maybe 100,000?)

A million modules, each with a million objects, would still be less than 40
bits.
So why to we need complex range assignments and non-contiguous numbering
within a module?  Presumably to preserve numbers and not waste them.
But since the SID encoding is based on deltas, and the full SID is only used
once per transaction, this does not seem to be a real concern.


Andy


On Sun, Nov 13, 2016 at 4:12 PM, peter van der Stok <stokcons@xs4all.nl>
wrote:

> Dear YANG-SID authors,
>
> I want to propose a change to the allocation of SIDs.
> Currently, the SIDs are divided in ranges and prospective users can
> register a range with IANA.
> When the range is already assigned, they need to select a new not
> allocated range.
> I think that this will discourage many future SDOs who may want to use
> YANG + COMI. Many of these SDOs like to figure out the best number
> structure for their uses, and will be very disappointed when they cannot
> acquire the range. Actually, I believe, they will abandon the use of YANG +
> COMI.
>
> My proposal is to assign numbers to modules, and let IANA handle the
> module number registration as proposed for the SIDs. The assignment of SIDs
> to YANG identifiers, as proposed in the draft remains, the same. The
> difference is the complete freedom to choose the SIDs in any given module.
> The advantage is that all modules can pick their values from the small
> number range.
>
> The change is in the discovery and the structure of the resource path. In
> COMI I want to define another resource type called YANG module with name
> core.c.module. The discovery will return the path:
> /prefix/module-number-in-binary64. For example, with an empty prefix and
> for module 32, discovery will return /g. To retrieve a specific YANG
> instance with numeric identifier sid in module 32, the statement GET coap/
> example.com/g/sid will do. With two characters, modules with numbers <
> 4096 are covered; probably 3 characters will cover all modules.  Given that
> the SIDs are small, the total URI size will not increase due to this
> modification.
>
> When the full datastore is accessed, the path /c is currently used. We can
> reserve c, meaning module number 28 is already assigned. Another method is
> returning a long path name, such as /whole_store. The size of the related
> URI is not important in this case. However, the proposed module allocation
> necessitates a small modification to the CBOR representation of the
> contents of the full datastore. This is attained by representing the full
> datastore as a CBOR map containing (key, value) pairs, where key is the
> module number and value is the content of the module as specified in
> yang-cbor document.
>
> For the PATCH and the FETCH methods, this representation will also work,
> given the content-formats that are currently looked at.
>
> I hope you like my proposal. The advantage is a simpler IANA
> administration, SID allocation freedom within a module, and shorter SIDs.
> The disadvantage is a slight complexity increase in the CBOR representation
> of the full datastore.
>
> Hope this helps,
>
> Peter
>
>
> --
> Peter van der Stok
> vanderstok consultancy
> mailto: consultancy@vanderstok.org
> www: www.vanderstok.org
> tel NL: +31(0)492474673     F: +33(0)966015248
>
> _______________________________________________
> core mailing list
> core@ietf.org
> https://www.ietf.org/mailman/listinfo/core
>