Re: WG Review: NETCONF Data Modeling Language (netmod)

Andy Bierman <ietf@andybierman.com> Wed, 23 April 2008 16:52 UTC

Return-Path: <ietf-bounces@ietf.org>
X-Original-To: ietf-archive@megatron.ietf.org
Delivered-To: ietfarch-ietf-archive@core3.amsl.com
Received: from core3.amsl.com (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7E04A3A6B61; Wed, 23 Apr 2008 09:52:12 -0700 (PDT)
X-Original-To: ietf@core3.amsl.com
Delivered-To: ietf@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3FF7B3A69CA for <ietf@core3.amsl.com>; Wed, 23 Apr 2008 09:52:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.265
X-Spam-Level:
X-Spam-Status: No, score=-2.265 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, IP_NOT_FRIENDLY=0.334]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 97dBzK1z994N for <ietf@core3.amsl.com>; Wed, 23 Apr 2008 09:52:07 -0700 (PDT)
Received: from smtp121.sbc.mail.sp1.yahoo.com (smtp121.sbc.mail.sp1.yahoo.com [69.147.64.94]) by core3.amsl.com (Postfix) with SMTP id 2AC023A68CC for <ietf@ietf.org>; Wed, 23 Apr 2008 09:52:06 -0700 (PDT)
Received: (qmail 67048 invoked from network); 23 Apr 2008 16:52:12 -0000
Received: from unknown (HELO ?127.0.0.1?) (andybierman@att.net@67.125.157.124 with plain) by smtp121.sbc.mail.sp1.yahoo.com with SMTP; 23 Apr 2008 16:52:10 -0000
X-YMail-OSG: x1qmE5gVM1lun3a1.PS4j3T9s9ZKo7LqEN02eDeXTixoGjQNwA0MnwESfHkCFE8d2Laz6CCs5JqXw0RGBNlgBhQI.bBmiE6SiRVsnsBAjoPabDmueKh6IU33tFg-
X-Yahoo-Newman-Property: ymail-3
Message-ID: <480F6938.9060804@andybierman.com>
Date: Wed, 23 Apr 2008 09:52:08 -0700
From: Andy Bierman <ietf@andybierman.com>
User-Agent: Thunderbird 2.0.0.12 (Windows/20080213)
MIME-Version: 1.0
To: David Harrington <ietfdbh@comcast.net>
Subject: Re: WG Review: NETCONF Data Modeling Language (netmod)
References: <20080422211401.303175081A@romeo.rtfm.com><NIEJLKBACMDODCGLGOCNCEGOEMAA.bertietf@bwijnen.net> <20080422215641.09FD05081A@romeo.rtfm.com> <013b01c8a559$91a23be0$0600a8c0@china.huawei.com>
In-Reply-To: <013b01c8a559$91a23be0$0600a8c0@china.huawei.com>
Cc: iesg@ietf.org, ietf@ietf.org
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: IETF Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: ietf-bounces@ietf.org
Errors-To: ietf-bounces@ietf.org

David Harrington wrote:
> 

Here are my reasons why I support the charter, which align with yours:

There are multiple types of users for data models.
The operators and reviewers care about the semantic model
much more than the syntactic mapping.  Ease of use and stability
have proven to be the most important factors for NM data models.

YANG provides enough semantic modeling to be useful for the
NM problem at hand, and since it will be owned by the IETF,
the complexity and stability will also be controllable by the IETF.

By decoupling the syntactic mapping from the semantic model,
the specific mapping rules can change over time as W3C standards
continue to evolve, without impacting any installed base of
data models.  Last year XSD was the only thing.  Now we seem to be
dropping XSD and adopting DSDL instead.  I am not convinced XSD is dead,
or the DSDL will be the final answer either.  But if the YANG
language stays stable, I don't care.


Andy

> 
>> -----Original Message-----
>> From: ietf-bounces@ietf.org [mailto:ietf-bounces@ietf.org] On 
>> Behalf Of Eric Rescorla
> 
>>> I propose that you list (again) your (technical) objections
>>> to the the current proposal.
>> Sure. Based on my knowledge of modelling/protocol description
>> languages, the techniques that Rohan described based on RNG and
>> Schematron seemed to me quite adequate to get the job done and the
>> relatively large baggage introduced by defining another language
>> (YANG) which is then translated into them seems wholly unnecessary.
>>
>> I appreciate that some people believe that YANG is more expressive
> and
>> better suited for this particular purpose, but I didn't see any
> really
>> convincing arguments of that (I certainly don't find the arguments
> in
>> F.2 of draft-bjorklund-netconf-yang dispositive). Given what I know
> of
>> the complexity of designing such languages, and of their ultimate
>> limitations and pitfalls, this seems like a bad technical tradeoff.
> 
> The people who believe that YANG is more expressive and better suited
> for this poarticular purpose include contributors to the design of
> SMIv2, MIB Doctors, members of the NMRG who helped develop the SMING
> information and data modeling language,  contributors to the SMIng WG
> which worked on developing a proposed SMIv3 to converge the SMIv2
> standard and the SPPI data modeling language standard and the NMRG
> SMING approach, and engineers who have multiple independent
> implementations of running code for Netconf data modeling. I respect
> their experience and combined knowledge of the complexity of designing
> such languages. 
> 
> I also respect operators' knowledge of the complexity of using such
> languages to actually manage networks. The NM community has been
> working to resolve the problem of the unsuitability of the IETF's
> SNMP-only approach to configuration for many years, and the NM
> comunity has deliberately sought out operators for feedback about what
> does and what doesn't work well for them in configuration data
> modeling.
> 
> One of the major problems of designing a language for data modeling is
> that there are many different constituencies with very different
> requirements for a configuration language, which change over time, as
> can be seen in RFC3139 and RFC3216 and RFC3535. There are a tremendous
> number of potential tradeoffs to make a general-purpose language meet
> "everybody's" needs. 
> 
> In RFC4101 "Writing Protocol Models", you argue that "reviewers have
> only limited amounts of time" and 
>   "most documents fail
>    to present an architectural model for how the protocol operates,
>    opting instead to simply describe the protocol and let the reviewer
>    figure it out.
> 
>    This is acceptable when documenting a protocol for implementors,
>    because they need to understand the protocol in any case; but it
>    dramatically increases the strain on reviewers.  Reviewers need to
>    get the big picture of the system and then focus on particular
>    points.  They simply do not have time to give the entire document
> the
>    attention an implementor would."
> 
> 
> 
> The NM comunity sought out multiple operator communities, and came to
> a similar conclusion. Operators need to "review" data model
> specifications, and quickly understand the model, often while in the
> middle of fire-fighting. To help address the need to quickly
> understand the model, the MIB Doctors have developed guidelines and
> templates for desecribing the data model in surrounding text. 
> 
> In practice, however, MIB modules are frequently distributed without
> the surrounding document text, and operators responding to network
> problems don't have time to find the right document and read it to
> understand the model. As a result, the NM community concluded that
> data models themselves need to be human readable. MIB modules, for
> example, are read by agent implementers, application implementers,
> operators, and applicatuon users (e.g., when MIB module descriptions
> are presented as help files). NM data models are frequently developed
> by enterprises to model their proprietary implementations, so it is
> also important that the language be easy to write correctly. 
> 
> XSD can be very hard to read (and even harder to write accurately).
> RelaxNG, possibly with Schematron, is better, but it can still be
> difficult to understand. YANG was written with human-readability as
> the highest priority.
> 
> In addition, there are some specific constructs important to managing
> a network (and already available in MIB modules) that are not natively
> supported in XSD or RNG, so existing XML-based tools are incapable of
> writing and fully validating data models with these constructs. The NM
> community thinks it would be a step backwards for the IETF to ignore
> twenty years of consensus on the importance of these NM-related
> constructs, and throw these away in order to use an existing standard
> language that was designed for different purposes. Some major lessons
> we learned from SMIv1 and SMIv2 was the difficulty of building atop
> existing standards from other organizations with different goals, like
> building SMI atop ASN.1, when the standards are likely to grow in
> different directions than what we need for IETF NM data model
> standardization purposes.
> 
> Unfortunately, you did not attend the many sessions over the past few
> years as the NM community did comparisons of the suitability of SMIv2,
> SPPI, SMING, XSD, RNG, YANG and others for purposes of configurastion
> data modeling. But the community that has attended such discussions of
> the suitability of different languages for the task at hand has
> reached rough consensus and developed multiple implementations of
> running code for this proposed direction forward. 
> 
> David Harrington
> dbharrington@comcast.net
> ietfdbh@comcast.net
> dharrington@huawei.com
> 
> 
> _______________________________________________
> IETF mailing list
> IETF@ietf.org
> https://www.ietf.org/mailman/listinfo/ietf
> 
> 
> 


_______________________________________________
IETF mailing list
IETF@ietf.org
https://www.ietf.org/mailman/listinfo/ietf