On 13/07/2016 17:27, Andy Bierman wrote:
On Wed, Jul 13, 2016 at 3:04 AM, Robert Wilton <rwil...@cisco.com
<mailto:rwil...@cisco.com>> wrote:
Hi Alex,
What you describe is close, but not quite what either of the two
datastore solutions are proposing.
In this case, the two solutions in both proposed drafts would contain:
- intended config doesn't contain the list entries
- applied config doesn't contain the list entries
- operational state datastore contains the system created
(config true) list entries + descendant config false nodes.
The reason why these system created entries are not in the applied
configuration is because of the requirement from
draft-ietf-netmod-opstate-reqs state that "intended config" =
"applied config" if the system has converged and all configuration
has been successfully applied.
But, yes, the reason for allowing system created config true
entries in the operational state datastore is to solve this problem.
I do not agree with Alex that config=true can mean "no client can ever
set this value".
It can only if NACM is configured to disable client write access.
RW:
I agree with you, but I didn't read Alex's email as stating that.
Instead, I read it as: even if a device doesn't allow the nodes to be
configured then they could still be populated by the device in the
applied configuration datastore.
I understand how one might want to use server-created values in
validation rules
but YANG does not support that right now (for config=false).
The line between server-created config and operational state is
confusing at best.
RW:
Yes, OK. That is perhaps because they are not completely related.
The original OpenConfig opstate draft also asked for a solution to what
they perceived as an unnecessary split between "feature" vs "feature-state".
When discussing the datastore solutions it became clear that having a
formal definition of an "operational state datastore" also allowed for a
solution to the problem above. Specifically by allowing the operational
state datastore to contain any necessary config true leaves (even if
they have not been configured) that are required to hold any descendant
config false leaves.
To cite an example:
If the schema content of if:interfaces-state was merged into the schema
for if:interfaces then the "operational state datastore" of a device
would be allowed to contain entries in the if:interfaces list for
interfaces that exist in the system but have not been configured.
As a side note, the metadata draft that I've put forward then suggests
to use metadata annotations of these system created entries in the
"operational state datastore" to allow clients to distinguish between
config true entries that exist because they are applied configuration,
vs config true entries that exist because they are system created.
Rob
Rob
Andy
On 13/07/2016 10:49, Alex Campbell wrote:
Isn't that exactly what the proposed applied configuration
datastore is for?
If a device doesn't allow management stations to create or remove
list entries, but still creates or removes list entries itself,
then it can publish them through the applied configuration
datastore, while leaving the intended configuration datastore
empty. Operational data can be contained inside those list
entries which exist in the applied configuration store, instead
of needing a separate tree to contain it.
- Alex
------------------------------------------------------------------------
*From:* netmod <netmod-boun...@ietf.org>
<mailto:netmod-boun...@ietf.org> on behalf of Andy Bierman
<a...@yumaworks.com> <mailto:a...@yumaworks.com>
*Sent:* Wednesday, 13 July 2016 4:17 a.m.
*To:* Lou Berger
*Cc:* netmod WG
*Subject:* Re: [netmod] OpsState Direction Impact on Recommended
IETF YANG Model Structure
On Tue, Jul 12, 2016 at 8:23 AM, Lou Berger <lber...@labn.net
<mailto:lber...@labn.net>> wrote:
Acee,
I personally was assuming we'd follow 3, but I'd like to
understand
the implication of 2 as I'm not sure I really understand what
you're
thinking here. Can you elaborate what you're thinking here?
Thanks,
Lou
.....
> 3. #2 plus collapse the config (read-write) and system-state
> (read-only) into common containers. No more branching of
> <model-name>-config and <model-name>-state at the top level
of the model.
>.....
I would really like to understand what problem (3) is supposed to
solve.
Most of the foo-state variables are for monitoring.
This information is useful even if the server uses proprietary
configuration mechanisms.
(e.g., the way the SNMP world has worked for 30 years)
If you forbid separate monitoring subtrees and force the data to
be co-located
with configuration, that means the standard monitoring will not
be supported
unless the standard configuration is also supported. Why is that
progress?
Andy
_______________________________________________
netmod mailing list
netmod@ietf.org <mailto:netmod@ietf.org>
https://www.ietf.org/mailman/listinfo/netmod
_______________________________________________
netmod mailing list
netmod@ietf.org
https://www.ietf.org/mailman/listinfo/netmod