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

Michel Veillette <Michel.Veillette@trilliantinc.com> Mon, 14 November 2016 16:27 UTC

Return-Path: <Michel.Veillette@trilliantinc.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 3C2B5128E19 for <core@ietfa.amsl.com>; Mon, 14 Nov 2016 08:27:26 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.922
X-Spam-Level:
X-Spam-Status: No, score=-1.922 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=trilliant.onmicrosoft.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 kGBeN7xI2c3T for <core@ietfa.amsl.com>; Mon, 14 Nov 2016 08:27:23 -0800 (PST)
Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0110.outbound.protection.outlook.com [104.47.32.110]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A33BC12986D for <core@ietf.org>; Mon, 14 Nov 2016 08:27:23 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Trilliant.onmicrosoft.com; s=selector1-trilliantinc-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=i/puAQkFIgh1wLU3zxFgAxxRQERhQmUydcck88Ea/ds=; b=toZia59DbUSt6/TxSpfvzaWIGS5VJp/SITsvQsVpR/MV12N2kdTXFKnJdV+ASB76nqf818/FmO6zMAVExF9oA5PNejR5vEyJs8xbDUf47IYrojZca811Lyo4YtwU8tHe2GdfgaKuBpcjkESLTG7jPC4tFfi27yYVQmoSNYkagpE=
Received: from BN6PR06MB2308.namprd06.prod.outlook.com (10.173.19.139) by BN6PR06MB2305.namprd06.prod.outlook.com (10.173.19.136) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.721.10; Mon, 14 Nov 2016 16:27:20 +0000
Received: from BN6PR06MB2308.namprd06.prod.outlook.com ([10.173.19.139]) by BN6PR06MB2308.namprd06.prod.outlook.com ([10.173.19.139]) with mapi id 15.01.0721.010; Mon, 14 Nov 2016 16:27:20 +0000
From: Michel Veillette <Michel.Veillette@trilliantinc.com>
To: "consultancy@vanderstok.org" <consultancy@vanderstok.org>, Core <core@ietf.org>
Thread-Topic: [core] draft-ietf-core-sid-00, SID allocation
Thread-Index: AQHSPgvqKuwFK38feES63NsOWHStz6DYp/Pw
Date: Mon, 14 Nov 2016 16:27:20 +0000
Message-ID: <BN6PR06MB230804ACCD67ABD30F9D966FFEBC0@BN6PR06MB2308.namprd06.prod.outlook.com>
References: <c39b5765e0554a4832f59395fb481a34@xs4all.nl>
In-Reply-To: <c39b5765e0554a4832f59395fb481a34@xs4all.nl>
Accept-Language: fr-CA, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=Michel.Veillette@trilliantinc.com;
x-originating-ip: [207.96.192.122]
x-microsoft-exchange-diagnostics: 1; BN6PR06MB2305; 7:Tryt5iCrG1UD2b2Fc18Qs7pCj6492WjAkw+dbGz/mzmJcbfruEkS7f1c/9PoTH0+bDI8gi9T08lnIHQBkwX7Wa3J0GP0GWGQml/NskhY/KCJPsiOotdsSYGqR9NfCPQEFESyBq8F5X1pP6yS49ivWM4HO+aPRqBw1JdzG1KFPsRlLZZecQGuYf0LClWx10FBQYUA4kcfaYtfDHd2hjWRkVph1n7eTiwIVo4Liwp+Ebrs0Kdt9BC4Y1kCoJ72hlETLQrgW6L9EQ2Szq9FBOmu2zgKc2sanE5fpVdwrqPtFOa1/Tgxph/eJj/VHB0FZEwjaq+Hxa19jfAQGg31Fu4ue9jQrnvzMxIhG+j8uRSGyCc=
x-ms-office365-filtering-correlation-id: fdd3a3ca-19f4-48aa-f0fc-08d40cab1b4a
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:BN6PR06MB2305;
x-microsoft-antispam-prvs: <BN6PR06MB2305CE3A2A256B43AA917F00FEBC0@BN6PR06MB2305.namprd06.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(35073007944872);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6060326)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6061321); SRVR:BN6PR06MB2305; BCL:0; PCL:0; RULEID:; SRVR:BN6PR06MB2305;
x-forefront-prvs: 0126A32F74
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(7916002)(336003)(13464003)(129404003)(189002)(199003)(51444003)(377454003)(15974865002)(76576001)(76176999)(54356999)(561944003)(33656002)(50986999)(7696004)(230783001)(81166006)(2950100002)(229853002)(99286002)(81156014)(122556002)(68736007)(3280700002)(5660300001)(105586002)(305945005)(9686002)(66066001)(106356001)(106116001)(3846002)(7736002)(86362001)(6116002)(7846002)(586003)(2900100001)(102836003)(74316002)(107886002)(8936002)(101416001)(189998001)(3660700001)(8676002)(97736004)(2906002)(87936001)(2501003)(92566002)(77096005)(5001770100001); DIR:OUT; SFP:1102; SCL:1; SRVR:BN6PR06MB2305; H:BN6PR06MB2308.namprd06.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en;
received-spf: None (protection.outlook.com: trilliantinc.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: trilliantinc.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Nov 2016 16:27:20.0907 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4f6fbd13-0dfb-4150-85c3-d43260c04309
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR06MB2305
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/1_lrJMIn0w4Tnsd9B0A2JifkYGo>
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 16:27:26 -0000

Hi Peter.

The allocation by range have been introduced to simplify the life of SDOs, not to make their life more difficult.
With your proposal, the SDO must interact with IANA for each module created.
With the allocation by ranges, the allocated range can be large enough to allow the SDO to be autonomous for multiple years of development, for dozen of modules.

Updating the different drafts to identify YANG items using (module ID, module item ID) is possible, but not with some impacts on message size and complexity.

Regards,
Michel

-----Original Message-----
From: core [mailto:core-bounces@ietf.org] On Behalf Of peter van der Stok
Sent: Sunday, November 13, 2016 7:13 PM
To: Core <core@ietf.org>
Subject: [core] draft-ietf-core-sid-00, SID allocation

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