On 07/09/2017 11:15, Martin Bjorklund wrote:
Robert Wilton <[email protected]> wrote:

On 07/09/2017 11:05, Martin Bjorklund wrote:
Robert Wilton <[email protected]> wrote:
On 07/09/2017 03:36, Andy Bierman wrote:
On Wed, Sep 6, 2017 at 10:57 AM, Kent Watsen <[email protected]
<mailto:[email protected]>> wrote:



      >> /netconf-state and /restconf-state don't seem to follow the
      >> general
      >> pattern we're correcting with the various NMDA updates.
      Particularly,
      >> these -state trees are NOT for the purpose to providing the
      >> opstate
      >> value for configured nodes.  These modules have the misfortune of
      >> having "-state" in their name, but they're otherwise fine.
      >
      >
      > This contradicts some details we have been told about NMDA
      >
      > 1) the transition guidelines say otherwise
      >
      > New modules and modules that are not concerned with the
      > operational state of configuration information SHOULD
      > immediately be structured to be NMDA-compatible

      Yes, I'm suggesting we give ourselves some leeway, by taking
      advantage of the SHOULD keyword above and defer updating these
      two modules to when it makes more sense to do so.



OK -- good.
I think another sentence needs to be added.


NMDA compatibility conversion MAY be deferred if the module
does not contain any configuration datastore objects.
I agree.
+1


      > 2) RD defines operational state to include config=false nodes
      > such as counters, so these modules are properly named.

      module-name == top-level node name.  Either way, my point is that
      the -state tree in these modules is not trying to provide the
      opstate value for configured nodes (i.e. applied configuration).


So a data node naming convention is needed?
And a module naming convention?

We need a rule that says the suffix "-state" is reserved for NMDA
compatibility
so module names and data nodes SHOULD NOT be named with an identifier
that
ends in this suffix.
Also agree.
-1

There are cases where a -state suffix is natural, e.g. in
ietf-hardware we have admin-state, oper-state, usage-state etc.

I prefer to have a recommendation that generated modules and top-level
nodes are called ...-state, but that should not be a reason for making
-state illegal in general.
Sorry, it was specifically modules and top level data nodes that I
think this restriction should apply to.
Even in this case I'd prefer to make a one-way recommendation.  Is
there a technical reason for not allowing a normal module or top-level
node be called ...-state?  IMO, *if* it is important to mark these
modules as being generated, we should use a formal way to convey this
information, not rely on a naming convention.  (i.e., use a YANG
extension in the module).
My logic is slightly different:

I think that new top level containers shouldn't be called ...-state because either
(i) they already contain config nodes, in which case they are misnamed, or
(ii) they might be revised to contain config nodes in the future, in which case they would end up being misnamed.

I basically, think that the suffix "-state" doesn't generally provide any useful extra information.

Lower down the tree, I guess that using "state" or  "*-state" is OK if it can be known that the leaf/container will *always* only be state and never potentially be configurable in future.  But I still think that it is necessary to be very careful here.

For example, If I designed a new routing protocol, then in v1 there might be no explicit neighbor configuration, and hence I put all of the neighbor information into a container call neighbor-state. However, if a v2 version of that protocol (or vendor extensions) wants to add some per neighbor configuration then it would hit the problem that the original container is poorly named to be updated to now also hold configuration.  So, generally avoiding "-state" in the name of containers seems to be good common sense to me.  I would suggest adding something to 6087bis, but my previous suggested additions to 6087bis didn't appear to be well received ;-)

Thanks,
Rob



/martin
.


_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to