Re: [core] YANG Packages for CoMI

Andy Bierman <andy@yumaworks.com> Mon, 27 July 2015 18:01 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 127501B311E for <core@ietfa.amsl.com>; Mon, 27 Jul 2015 11:01:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.978
X-Spam-Level:
X-Spam-Status: No, score=-1.978 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham
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 vsckJUy8NXM5 for <core@ietfa.amsl.com>; Mon, 27 Jul 2015 11:01:10 -0700 (PDT)
Received: from mail-lb0-f177.google.com (mail-lb0-f177.google.com [209.85.217.177]) (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 51E691B302A for <core@ietf.org>; Mon, 27 Jul 2015 11:01:10 -0700 (PDT)
Received: by lbbyj8 with SMTP id yj8so58854999lbb.0 for <core@ietf.org>; Mon, 27 Jul 2015 11:01:08 -0700 (PDT)
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:date :message-id:subject:from:to:cc:content-type; bh=MTyOghUC0iJm1B5fJcqb3lysUf8A/6Jm5qR6wAYBZes=; b=CX78dfYdkhVDkXoAPgsYBD/6As2iO1yY1EJ4Vux9iPK/u9ZDnpg17+B9x90TIlMWQg u9PVJAEpT/PNlf2oj6PY9SfCSod9myrk1fxfSnSpFVnYa5q7tJmczFcJ2ZY7/FgiC8me X+MEY7tr7JJw+4mL0UsD2XwlXMBlu3gfBMrMZLJLQpXL/PpBdi5dFKX1B3gnnd0/QFLN UPXgS+PZ+cwBT4ngcxlSxjucwzYnkbeaKIXipOV0QKAOmlcLz1WU/L+wHPKmkrTRYlsN PW8spyuF+4Z1pGytx5tjhCnijuymM/RCyzG+0g09a+cVyzQBCUcRRPCRr/32qROH/fwG 2HIQ==
X-Gm-Message-State: ALoCoQlJMy7j3Wyt+Ii5wyOqkMmKbfqixgn8QmSnk/FREgTiCRtdZDV2Q/a1KrOGjDEDLLK59Cc3
MIME-Version: 1.0
X-Received: by 10.152.87.205 with SMTP id ba13mr27412628lab.37.1438020068690; Mon, 27 Jul 2015 11:01:08 -0700 (PDT)
Received: by 10.112.200.102 with HTTP; Mon, 27 Jul 2015 11:01:08 -0700 (PDT)
In-Reply-To: <55B6070A.1020007@ackl.io>
References: <CABCOCHT7J71iiAgcofradE38JepEJLsPkbmwtivY=HMyij1Svg@mail.gmail.com> <4dde82ad1cd4d261b598cb0e851cdf1c@xs4all.nl> <CABCOCHTukKKkP9wgP4BrtAcKwDd7eSLvFR_x2kJptW+Dfo_0Lw@mail.gmail.com> <55B6070A.1020007@ackl.io>
Date: Mon, 27 Jul 2015 11:01:08 -0700
Message-ID: <CABCOCHTOtNvPgAV9R7bnMQDZtTUOmtnadZrGn13X7diQUGseXw@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Alexander Pelov <alexander@ackl.io>
Content-Type: multipart/alternative; boundary="001a11c3539a5fe4a2051bdf238f"
Archived-At: <http://mailarchive.ietf.org/arch/msg/core/QbNDiXZZiI-XeZxF-E-VyyFqlaQ>
Cc: Core <core@ietf.org>
Subject: Re: [core] YANG Packages for CoMI
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.15
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, 27 Jul 2015 18:01:14 -0000

On Mon, Jul 27, 2015 at 3:25 AM, Alexander Pelov <alexander@ackl.io> wrote:

>  Hi Andy!
>
> Thanks for the draft! Seems a good start to get the things moving in the
> direction of having a good, structured introspection mechanism for module
> discovery!
>
> I'm not completely sure that it will be a static document. You still need
> to think of the possibility of a firmware upgrade, in which case you have
> to consider the clients which have obtained your previous package
> descriptions.
>
>
Each package has a name and a revision-date.
The expected use for CoMI would be a new
package revision for each firmware release.



> Why don't you want it to be a YANG module? I would suppose that for a
> structured numbering scheme (such as CoOL) we could have a nice fixed entry
> point for such introspection resource, e.g. moduleID = 1. Alternatively, I
> would think that it should be discoverable through .well-known/core
>
>
Not sure what you mean.
This is static data used to identify a set of YANG modules.
Do you mean why not have the contents of a package be YANG objects
to read from the server?  This would be even more data than the
current YANG module library.

The point of a package list is to avoid listing all the modules, features,
and revision dates.  There is a YANG Package Identifier in sec. 4

  urn:ietf:params:xml:ns:yang:pkg?name=example-sensor314&rev=2015-07-01


This would be the entire response needed to discover the entire YANG
implementation by the server. The size remains the same no matter how many
modules and features are added over time.





> A point to make is that we can have alias mappings through this
> introspection mechanism. Defining such an introspection mechanism for the
> aliases was actually one of the work I was considering for CoOL.
>
>
RESTCONF and NETCONF provide the ability for the client to retrieve
the schema, and get all the meta-data, for every module.
IMO this should be done by a centralized server in CoMI.

But I agree the package data could include alias mappings.
This might be a way to convert YANG Hash to COOL for example,
to optimize frequently used identifiers..





> Best,
> Alexander
>

Andy


>
> Le 27/07/2015 08:29, Andy Bierman a écrit :
>
>
>
> On Sun, Jul 26, 2015 at 11:26 PM, peter van der Stok <
> <stokcons@xs4all.nl>stokcons@xs4all.nl> wrote:
>
>> HI Andy,
>>
>> Is the proposal to make YANG packages compulsory over yang-library in
>> Comi servers and clients?
>>
>>
>  No, it would be optional.
> Another solution approach would be to make the module-set-id values
> global instead of per-server. That might be less work perhaps.
>
>
>  Peter
>>
>
>  Andy
>
>
>>
>> Andy Bierman schreef op 2015-07-26 19:44:
>>
>>> Hi,
>>>
>>> Michel raised some issues with the YANG library draft
>>> http://datatracker.ietf.org/doc/draft-ietf-netconf-yang-library/
>>>
>>> Maybe CoMI needs its own optimized module library.
>>> I am concerned that data sizes of the YANG library will be
>>> too big in some really constrained environments.
>>>
>>> I wrote a draft that defines a way to specify the contents of the
>>> YANG library in a single static document, called a YANG package.
>>> http://datatracker.ietf.org/doc/draft-bierman-netmod-yang-package/
>>>
>>> If there was a "shorthand" resource that listed YANG packages, instead
>>> of YANG modules, then the CoMI client that supported YANG packages
>>> could read that instead of the module library.
>>>
>>> The YANG package message response can identify a single package
>>> (e.g. match the firmware) so the size of the response will remain very
>>> small, and not depend on the entire list of modules, features,
>>> and deviations. The data savings could 1000X for 100 modules.
>>>
>>> The client needs to retrieve the library first-time and anytime it
>>> changes.
>>> The module-set-id values are per-server, not global. This could be a
>>> significant bottleneck when a CoMI client starts or restarts, and
>>> manages lots of servers.
>>>
>>> Andy
>>>
>>>
>>> _______________________________________________
>>> core mailing list
>>> core@ietf.org
>>> https://www.ietf.org/mailman/listinfo/core
>>>
>>
>
>
> _______________________________________________
> core mailing listcore@ietf.orghttps://www.ietf.org/mailman/listinfo/core
>
>
>