Re: [yang-doctors] Modeling of protocol message structures

Andy Bierman <andy@yumaworks.com> Thu, 24 September 2020 20:14 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2C1DF3A125E for <yang-doctors@ietfa.amsl.com>; Thu, 24 Sep 2020 13:14:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.887
X-Spam-Level:
X-Spam-Status: No, score=-1.887 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=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 rhjBIdkYuoFO for <yang-doctors@ietfa.amsl.com>; Thu, 24 Sep 2020 13:14:33 -0700 (PDT)
Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com [IPv6:2a00:1450:4864:20::232]) (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 F34093A123D for <yang-doctors@ietf.org>; Thu, 24 Sep 2020 13:14:32 -0700 (PDT)
Received: by mail-lj1-x232.google.com with SMTP id k25so530075ljk.0 for <yang-doctors@ietf.org>; Thu, 24 Sep 2020 13:14:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=FVYJXf5jjzbFZqhgx2zoX4HiKCJEeyp2RfTnVCQFLW8=; b=08bIQqwm4N32EzTYuKiKT3Vo6AC9tzywIq+Qe9BEXzBeF3IX8SqjOxSo3hmnFoyq/D uohH/xSj8cCKJQEdswWh8UQpeu086lN9ZjPnBVof2avdkO+uU++I8FCI00BA8sP1mtG0 1w9+3UhtY4wzlM//Ajll1vCx5BBhZl6YrVFWSKKGnTG5AqlwuTzdTqcyFitA+9STsJqh 3fT72E3vy06mAyUC6i5TrGKW9MjqZt6ZiRs3ctZ8+QwEteAlSdT/4Oa27Rxn3ZFdM6Kc MEdL2RVS4aU+QPsMffy0o8QGEqXMtElh+Sk3Tb5pBq/G8uIDO1HHhJK19nxJwdKj/6dd DJPA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=FVYJXf5jjzbFZqhgx2zoX4HiKCJEeyp2RfTnVCQFLW8=; b=ZKNoSnMpbuJbX2G3EtLQypGW6IQ0xlat22MQPbCflsV4DeBhv9E4qXxLSYQSq17WQl E3yeOEl+bq5VOmtMRvATpn+mATwUVZzRHBlr5o1hFimikahHbqeMxp5X0C/NVLEeqAqF Fv5cDMTqlKNVvwZHDRWOyujkpIbBT/cjs4MDZZjpQvUJOs2PihqsOvmpNm0rw86bQOaZ SfkkSK4SzdK8bDTFEO+CE1EgUJS+S2953KQBihJ2MPoaTtoBpX1L/zBopig4sZfGX5GI djUQVCYB1Q75/He+5Pu12ZX7wBk+qgMfF3BgQTcaq6BGUYPkyBmN5DvicSLXlWykBBs5 iMHA==
X-Gm-Message-State: AOAM530DNncF1XL+S9tAjDlSaCmTK/jJvTbn48ScYfsBELyRSiYJn+ER ZwS8FbZQxeIHL0Vu/ZFrmO8oYoHnc4y935J73Ix//w==
X-Google-Smtp-Source: ABdhPJw+0EnMztj0GVvJuzxfsPqlRYFC18/iT1OvpkmoNJyNb9YNj4geYfEpVagDAOpUP9Qy2fjmGqKE+JPZVAIsxUM=
X-Received: by 2002:a2e:780d:: with SMTP id t13mr243365ljc.324.1600978470946; Thu, 24 Sep 2020 13:14:30 -0700 (PDT)
MIME-Version: 1.0
References: <20200924185441.GA11798@localhost> <674AE5F9-72B6-41B5-A5FF-3904A0C59BE1@cisco.com> <CABCOCHTX1uEC7KGeSYdqN764tcv-uGpjoPqQtUgDgj1FkQHVRg@mail.gmail.com> <20200924200627.GA16594@localhost>
In-Reply-To: <20200924200627.GA16594@localhost>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 24 Sep 2020 13:14:20 -0700
Message-ID: <CABCOCHRb3pmxAuU+EuenwXb_7zjeynCz4_ki_H0nKk2zQOa5bQ@mail.gmail.com>
To: Ebben Aries <ebben.aries@nokia.com>
Cc: "Acee Lindem (acee)" <acee=40cisco.com@dmarc.ietf.org>, YANG Doctors <yang-doctors@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000000ddcc405b014d985"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/nIIsumVGugiUVoRlXwuCk2UjCHQ>
Subject: Re: [yang-doctors] Modeling of protocol message structures
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Email list of the yang-doctors directorate <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 24 Sep 2020 20:14:35 -0000

On Thu, Sep 24, 2020 at 1:06 PM Ebben Aries <ebben.aries@nokia.com> wrote:

> On Sep 24 12:45 PM, Andy Bierman wrote:
> >
> >
> > On Thu, Sep 24, 2020 at 12:16 PM Acee Lindem (acee) <acee=
> > 40cisco.com@dmarc.ietf.org> wrote:
> >
> >     Hi Ebben, Esteemed Doctors,
> >     It would be good to understand the reasons for using YANG as a
> message
> >     schema language and how it relates to the tooling and bits on the
> wire.
> >     Note that I didn't read the document other than looking at the YANG
> model
> >     so perhaps these questions are addressed.
> >
> >
> >
> > We have been using YANG to drive protocol message automation for years.
> > Since the tools already support YANG for NETCONF this is not hard to add.
> >
> > The main reasons:
> >    - want a formal definition of the message exchanges
> >    - want to annotate the model with tool-specific extensions to
> automate lots
> > of corner-cases
> >    - want an encoding-neutral message definition
> >    - want to utilize existing support to send/receive YANG data in
> different
> > encodings
> >        - lots of XML now but we already cover all data with JSON and
> soon CBOR
> >    - using augment it is easy to define message payloads in layers
> >
>
> Yes and all great reasons however my questions/comments are more
> specific as to the publication of protocol message structures in IETF
> documents as published IETF and IANA YANG models.
>
> This document is the first I've seen attempting to do such.
>
>
Look at RESTCONF (RFC 8040). It uses YANG to define some protocol message
components.
Anima WG is also using YANG to define structures (not for use with NETCONF
or RESTCONF).



> And are we going to go back through other protocols to date and develop
> message structure modules for those?
>


that seems like a separate issue, but nobody is suggesting that existing
protocols need to be rewritten to use YANG to define messages.

If somebody wants to use YANG for this purpose then RFC 8791 can be used.
It should be up to the WG I guess.



> Before I raise the question of intent as to why back towards the
> document author, I wanted to understand if anyone else has been seeing
> this approach in IETF documents yet (or if it is being
> promoted/mandated)
>
> >
> >
> >     Thanks,
> >     Acee
> >
>


Andy


> >
> >
> > Andy
> >
> >
> >
> >     On 9/24/20, 2:55 PM, "yang-doctors on behalf of Ebben Aries" <
> >     yang-doctors-bounces@ietf.org on behalf of ebben.aries@nokia.com>
> wrote:
> >
> >         I wanted to solicit feedback/opinions from a recent review (that
> at
> >         least 1 other of you have had the chance to review) - The draft
> in
> >         question is draft-ietf-dots-rfc8782-bis-00
> >
> >         Now, this is the first I've seen to make its way through YD
> review (and
> >         maybe there are others) but the above is an example of modeling
> the
> >         message structure payload for the DOTS signaling channel over
> CoAP.
> >         There is no relationship to NETCONF/RESTCONF and/or datastores
> but
> >         rather just definitions of pure message structures as best as
> can be
> >         described in the YANG language (with implementation details left
> to the
> >         specficiation).
> >
> >         For the most part, I think this is fine and a possible use being
> code
> >         generation but still need to factor in statements that will not
> >         translate directly to underlying language semantics and/or rules
> and
> >         restrictions that sit outside of the data-model (and only in the
> >         specification or description stmt) - Is the use being force fit
> for
> >     this
> >         type of case?
> >
> >         My questions/comments to everyone:
> >
> >         - Are we starting to see this as the norm for newer protocol
> >           specifications in general and is there any rule around such or
> is it
> >           up to each author if they want to model any message structures
> or not
> >           in the YANG language and publish a module?
> >
> >         - Is the above necessary?  Does this provide much if any
> advantage to
> >           doing so in comparison to the maintenance, publication and
> potential
> >           for confusion?
> >
> >         - We now have the potential for publication of a large amount of
> YANG
> >           models that may or may not apply to the regular use to date.
> You
> >           cannot tell the difference or purpose of these modules by
> purely
> >           looking at any identifier in the module name or header today.
> >
> >         - To the above point, modules will be published that could very
> well
> >           conflict with proper names of future modules that are centered
> around
> >           datastore interaction for that same domain.
> >
> >         - (Specific to the review and not structures themselves) - Some
> modules
> >           related to above have been published and am assuming these did
> not go
> >           through YD review.  We now have very generic prefixes
> published such
> >           as 'data-channel'.  While of local significance, we should be
> more
> >           descriptive and unique across IETF or IANA published modules.
> >
> >         Thx
> >
> >         /ebben
> >
> >         _______________________________________________
> >         yang-doctors mailing list
> >         yang-doctors@ietf.org
> >         https://www.ietf.org/mailman/listinfo/yang-doctors
> >
> >     _______________________________________________
> >     yang-doctors mailing list
> >     yang-doctors@ietf.org
> >     https://www.ietf.org/mailman/listinfo/yang-doctors
> >
>