Re: [core] draft-bierman-core-yid-00 open questions

Andy Bierman <andy@yumaworks.com> Wed, 24 August 2016 22:34 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 E8DF812D797 for <core@ietfa.amsl.com>; Wed, 24 Aug 2016 15:34:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 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_NONE=-0.0001, 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 eWSQfxoRRFAI for <core@ietfa.amsl.com>; Wed, 24 Aug 2016 15:34:08 -0700 (PDT)
Received: from mail-ua0-x22e.google.com (mail-ua0-x22e.google.com [IPv6:2607:f8b0:400c:c08::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 9E40112B00E for <core@ietf.org>; Wed, 24 Aug 2016 15:34:08 -0700 (PDT)
Received: by mail-ua0-x22e.google.com with SMTP id 74so54458515uau.0 for <core@ietf.org>; Wed, 24 Aug 2016 15:34:08 -0700 (PDT)
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=rXMYm8GYuSHrXq8s1Yxs/TejHoFR1ORlUkV8E5zfkjY=; b=a1D+zdOaD611sKb2EWs3mS4b4XtoqCHWB7rsGphQqrkvYtbb39qUn7CZYRPkrrCTE3 ShDIVBrm3oavCQaqV8BZjMKPdGlTRWYJOVCD1/JlQoAiOg+J6ccnQJwhIdkXKkTMTFCx pHeWLz1WaSaPFlt3foKlJvsTqcytG/GC3Fop148ExCVwge1au/OslHBi6DTmPsYSo038 OyFvWerRzDlwTIB7wNWidL9PdJX3q997SNcZshqhi0hCjUYnFQcHD8QfEQ01hKLfd5hR h8msV9W8CLweJwgVpxz3/lCJseWaCWGdqIzsDz4ktuXftYxwUosW014WrkTmbyEO4U79 kX6A==
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=rXMYm8GYuSHrXq8s1Yxs/TejHoFR1ORlUkV8E5zfkjY=; b=D+0ReWKHmS2P9E/+9VuWk9krZ0gYrMD/c7FVAlD0yaAeyD8rB1iHw0mAe1lG8b2Ek+ JzJ9SaO1AEL+g4oP8uOncZkPGJzbw2Y9dvHdi/fodr9sNf/gqHIG7lgbaXMzqPaWDehv 5PTRUqL1E/5SNaRCSLjHIzaEdb4z6MXv8WKzv5f42SDb+8Groi8hUAUEEt4iX9ITDkhX 236cKw7E7yqCKn5qR0gimaWoS9DSg8uecTLyGypqV8Nbx1HguE6SXeJDk1DQWFKKqYfZ ec+IWn7VQDYl4ImEWSyuAMO8cePkvLy8ifBz06c3yLXqNaEblTd/bnZMCmPJ5DwLeM32 fOeA==
X-Gm-Message-State: AEkooustrnfqq3TLuXCLzfNa+HZowGNMYV5sB91jg5OO48fmxqnR7hVpq0Pss8ME7w5ATwmkd6KNI0+1WUOysA==
X-Received: by 10.176.68.166 with SMTP id n35mr3206451uan.47.1472078047737; Wed, 24 Aug 2016 15:34:07 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.103.4.134 with HTTP; Wed, 24 Aug 2016 15:34:07 -0700 (PDT)
In-Reply-To: <BN6PR06MB23087BFAB03E7B392DD25825FEEA0@BN6PR06MB2308.namprd06.prod.outlook.com>
References: <BN6PR06MB23088AB49805EAA74057FCB8FEEA0@BN6PR06MB2308.namprd06.prod.outlook.com> <CABCOCHTUdywbbCSxxkFObtrXFScwifBXJLZ2arxy=Ux1UYRhNQ@mail.gmail.com> <BN6PR06MB23087BFAB03E7B392DD25825FEEA0@BN6PR06MB2308.namprd06.prod.outlook.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Wed, 24 Aug 2016 15:34:07 -0700
Message-ID: <CABCOCHSzfwe9A0BW_H4BBnnnfm7+ZQUF4BX93jVNnLVb8nZ1gw@mail.gmail.com>
To: Michel Veillette <Michel.Veillette@trilliantinc.com>
Content-Type: multipart/alternative; boundary="94eb2c05c5de1e0efd053ad8e114"
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/f2YFns359fDH-MHFLVYOLlEbkEc>
Cc: "core@ietf.org WG" <core@ietf.org>
Subject: Re: [core] draft-bierman-core-yid-00 open questions
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: Wed, 24 Aug 2016 22:34:11 -0000

On Wed, Aug 24, 2016 at 2:09 PM, Michel Veillette <Michel.Veillette@
trilliantinc.com> wrote:

> Hi Andy
>
>
>
> My comments inline [MV]
>
>
>
> *From:* Andy Bierman [mailto:andy@yumaworks.com]
> *Sent:* Wednesday, August 24, 2016 4:48 PM
> *To:* Michel Veillette <Michel.Veillette@trilliantinc.com>
> *Cc:* core@ietf.org WG <core@ietf.org>
> *Subject:* Re: draft-bierman-core-yid-00 open questions
>
>
>
>
>
>
>
> On Wed, Aug 24, 2016 at 9:53 AM, Michel Veillette <
> Michel.Veillette@trilliantinc.com> wrote:
>
> Hi Andy
>
> Following if my answers to the questions listed in
> draft-bierman-core-yid-00
>
> 1) When to assign a module-id
>
> Developers should be in control of when this activity is performed based
> on the estimated amount of work required to reassign IDs (from temporary
> assigned IDs within the experimental range to the final IDs) and the
> impacts on the encoding efficiency of assigning a non stable list of YANG
> items which generate non sequential IDs. If the developer already own a
> range of YID/SID, the activity can be perform at any time.
>
> It is important to note that the registration of the resulting .sid
> file(s) is done independently of the registration of the SID range. When
> registering a SID range, the module or list of modules targeted is not
> provided. This give the full freedom to developers to assign IDs when
> needed.
>
>
>
> I think the registration process issues are the same whether a module-id
> or a range is allocated.
>
>
>
> [MV] Not exactly, registering a module-id imply that you need to know the
> module information in advance.
>
> [MV] If you register a range, you can assign this range as needed to one
> or multiple modules.
>
> [MV] You don’t need to go back to the registrar each time you create a new
> module.
>
>
>

But it's not like anybody can use the numbers without knowing how they are
assigned.


Andy

2) How to support private numbering
>
> A range called "Experimental" spanning both the 16 and 32 bits unsigned
> integer have been assigned to this purpose.
> https://tools.ietf.org/html/draft-somaraju-core-sid-01#section-7.1
>
>
>
>
>
> Yes, it seems trivial to assign a range for temporary numbers.
>
>
>
>
>
>
>
> 3) How to combine registries
>
> Not needed, all registrars, SDO shall receive a specific range from IANA.
>
>
>
>
>
> OK, so there is a tiered registration process?
>
> And there will not be a land-grab for all the numbers?
>
> Not clear to me how IANA approves allocation requests.
>
>
>
>
>
>
> 4) Should more YANG statements be numbered
>
> Yes
> rpc, action, notification, module, submodule, feature
>
>
>
> Numbering submodule and feature?
>
> These are conceptual statements within the schema language and
>
> do not affect anything on the wire.
>
>
>
> [MV] SID assigned to submodules and features are required to support
> discovery
>
> [MV] See https://tools.ietf.org/html/draft-veillette-core-cool-librar
> y-00#section-3.1
>
>
>
> 5a) How to support anyxml
>
> anyxml represents a single data node with an arbitrary content.
> This data node have a single ID assigned to it the same way as any other
> data node, nothing special is required.
>
>
>
>
>
>     anyxml foo;
>
>
>
>
>
>     { "foo" : {
>
>          "bar": 42;
>
>          "baz" "fred",
>
>          "a-list" : [
>
>             ....
>
>          ]
>
>        }
>
>      }
>
>
>
>
>
> So what numbers do you give to bar,, baz, a-list, etc.?
>
> They are all numbered the same as foo?
>
> That will be decoded with all nodes named foo, all anyxml.
>
> The name, type, value info contained in anyxml and anydata
>
> instances have no schema.  These nodes cannot be numbered.
>
> This is a YANG-to-CBOR issue, not a SID issue.
>
>
>
> But in real YANG these child nodes sometimes represent real objects
>
> from some other module.  In this case the server may know the "hidden SID".
>
>
>
> http://www.netconfcentral.org/modules/yuma-ncx/2013-09-23#root.554
>
>
>
> [MV] If the inner members of this CBOR map need to associated to SID, the
> developer will need to assign these SIDs as described in 5b.
>
> [MV] If this is the case, the author should have used an anydata.
>
> [MV] Normally, an anyxml contain an arbitrary CBOR content which have
> nothing to do with YANG and SIDs.
>
> [MV] This is the approach proposed by "draft-ietf-netmod-yang-json" and
> reused by "draft-ietf-core-yang-cbor"
>
>
>
>
>
> 5b) How to support anydata
>
> The anydata define an instance of an unspecified schema node (leaf,
> leaf-list, container, list).
> All possible schema node supported by an anydata need to be register to
> one of the .sid files.
> It is the responsibility of the developer(s) to add these SIDs to one or
> multiple .sid files manually if not already present.
> A section need to be added to the draft to clearly describe this approach.
>
> Regards,
> Michel Veillette
>
>
>
>
>
> Andy
>
>
>