Re: [netmod] WG adoption poll draft-bjorklund-netmod-rfc7227bis-00

Robert Wilton <> Tue, 19 September 2017 14:26 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 1DF8913422F for <>; Tue, 19 Sep 2017 07:26:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id I-ogM6Kq6rB5 for <>; Tue, 19 Sep 2017 07:26:01 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 80E44134226 for <>; Tue, 19 Sep 2017 07:26:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=5871; q=dns/txt; s=iport; t=1505831160; x=1507040760; h=subject:to:references:from:message-id:date:mime-version: in-reply-to:content-transfer-encoding; bh=cU1Q3bNEdRelSxjmcpTzmqj9h6H+9b+SJNvoM78SN3E=; b=GNYISLlRgU36W+oPU1rxTv+WgWP0/FjU8V+bySqEs4HTlx5Tb0xss12I sM903pssy4ZHJsPi9T204OuZWI9kFgnG/yGQYFYI5s2Vct803oS0IITQi qrqM4/Lgvk9FCTGICvRRBEND8OiecfSX0XSSkcXuZm0UbIbVgV8LlE41o s=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="5.42,418,1500940800"; d="scan'208";a="657584596"
Received: from (HELO ([]) by with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 19 Sep 2017 14:25:58 +0000
Received: from [] ( []) by (8.14.5/8.14.5) with ESMTP id v8JEPwcL014138; Tue, 19 Sep 2017 14:25:58 GMT
To: Ladislav Lhotka <>,
References: <> <> <> <> <> <>
From: Robert Wilton <>
Message-ID: <>
Date: Tue, 19 Sep 2017 15:25:57 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Content-Language: en-US
Archived-At: <>
Subject: Re: [netmod] WG adoption poll draft-bjorklund-netmod-rfc7227bis-00
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: NETMOD WG list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 19 Sep 2017 14:26:03 -0000

On 19/09/2017 15:07, Ladislav Lhotka wrote:
> Robert Wilton píše v Út 19. 09. 2017 v 14:49 +0100:
>> Hi Lada,
>> On 19/09/2017 14:37, Ladislav Lhotka wrote:
>>> Martin Bjorklund <> writes:
>>>> Ladislav Lhotka <> wrote:
>>>>> Hi,
>>>>> I support the adoption but I propose two conceptual changes:
>>>>> 1. Introduce a new module name and namespace so that it is not
>>>>> necessary to carry along the deprecated baggage. If readability is
>>>>> the primary concern, this is IMO the way to go. Instead of
>>>>> "ietf-ip-2", I'd suggest something like "ietf- ip-nmda".
>>>>> 2. Avoid obsoleting RFC 7277. I believe the old modules may continue
>>>>> to be used
>>>>> in areas where NMDA is an overkill, such as open source home
>>>>> routers.
>>>> Why wouldn't NMDA be appropriate in an open source home router?  Note
>>>> that the new model really just have a single tree instead of two
>>>> trees, so the data that needs to be instrumented is more or less the
>>>> same.
>>> It is quite likely that some parts of the data models will be
>>> implemented only as configuration but not state data. In the "old style"
>>> modules it is easy to add a deviation for the node(s) under -state but
>>> in NMDA style this is not possible because we only have one node.
>> The new YANG library allows different sets of modules to be available
>> for <conventional> datastores vs <operational>.   The operational
>> datastore can also have different features supported and different
>> deviations vs the conventional datastores.
> OK, I missed the 7895bis draft, sorry. Then there could be differences in
> mandatory/optional (e.g. a node is optional in configuration but mandatory in
> state data) or the data type of a leaf can differ. How can these be handled?
If the data type of the leaf can differ, then normally this should be 
modeled as two separate leaves.  Do you have a concrete example of this?

If some data is mandatory in config, but not necessarily mandatory in 
<operational> then normally it can be marked as mandatory true, since 
optional is allowed to violate this constraint if necessary, but 
implementations would generally be expected to conform to the constraint 
if possible.

For the reverse case, we can't express that.  I think that you would 
have to leave out the "mandatory: true" constraint.  Again, can you 
provide a concrete example of this please?  That makes it a bit easier 
to reason about.


> Lada
>> So, the device can make the same deviations to remove the state leaves
>> from <operational>.  Or if they don't want to support the module in
>> operational at all then a device could just list it as being supported
>> in the conventional datastores and not <operational>.
>>> There are subtle differences in the schemas for configuration and state
>>> data that the NMDA concept doesn't address. If you want another example,
>>> ietf-routing-2 has the "router-id" leaf that is conditional via the
>>> "router-id" feature. If this feature is not supported, router-id cannot
>>> be explicitly configured (it is assigned by the system) but in state data
>>> "router-id" needs IMO be present in any case. But the if-feature
>>> isn't able to differentiate between configuration and state data if
>>> there is only one node for both.
>> The new YANG library also supports this:
>> The "router-id" feature would be disabled for the conventional
>> datastores, but enabled for <operational>.
>>>> In fact, if we claim that the new architecture is not appropriate for
>>>> some devices I think we have failed, especially if the conclusion is
>>>> that we need to maintain two versions of all modules going forward.
>>> I am not asking for this but, on the other hand, if NMDA versions used a new
>>> module name and namespace (my item #1, which is what ietf-routing-2
>>> does), then I don't see any pressing need for obsoleting the old style
>>> modules.
>> I think that creating a "-2" versions of these models at this time might
>> be a mistake.  I actually think that the "deprecate state leaves" ->
>> "obsolete state leaves" -> "delete state leaves" path is a better choice.
>> Thanks,
>> Rob
>>> Lada
>>>> /martin
>>>>> NMDA
>>>>> implementors should be aware of the new modules but there is no need to
>>>>> eradicate the old data models.
>>>>> #2 applies also to other modules for which the NMDA version is underway.
>>>>> Lada
>>>>> PS. The subject is wrong, it shoud be -rfc7277bis-
>>>>> Lou Berger píše v Po 18. 09. 2017 v 10:33 -0400:
>>>>>> All,
>>>>>> This is start of a two week poll on making
>>>>>> draft-bjorklund-netmod-rfc7227bis-00 a working group document. Please
>>>>>> send email to the list indicating "yes/support" or "no/do not
>>>>>> support".
>>>>>> If indicating no, please state your reservations with the
>>>>>> document.  If
>>>>>> yes, please also feel free to provide comments you'd like to see
>>>>>> addressed once the document is a WG document.
>>>>>> The poll ends Oct 2.
>>>>>> Thanks,
>>>>>> Lou (and Kent)
>>>>>> _______________________________________________
>>>>>> netmod mailing list
>>>>> -- 
>>>>> Ladislav Lhotka
>>>>> Head, CZ.NIC Labs
>>>>> PGP Key ID: 0xB8F92B08A9F76C67
>>>>> _______________________________________________
>>>>> netmod mailing list
>> _______________________________________________
>> netmod mailing list