On Sun, Feb 12, 2017 at 08:55:04AM -0500, Christian Hopps wrote:
> 
> Juergen Schoenwaelder <[email protected]> writes:
> > On Sun, Feb 12, 2017 at 07:54:52AM -0500, Christian Hopps wrote:
> >> Juergen Schoenwaelder <[email protected]> writes:
> >> > It was suggested (I think) that tags originate either (a) from the
> >> > data model it self, (b) from the implementation itself, (c) from the
> >> > operator. You want to be able to overwrite (remove) (a) and (b) tags?
> >> > Are tags not scoped by something that represents some form of
> >> > ownership? If so, does it make sense to step on other people's
> >> > carefully design tags? What if this creates conflicts for different
> >> > applications, some like to have a certain tag some don't?
> >>
> >> > Perhaps what you are requesting is useful but I think it needs a bit
> >> > more thinking and clarity about what tags mean and how tags are
> >> > scoped.
> >>
> >> Yes indeed tags can be created in 3 ways, but the ultimate authority is
> >> the user as they are the ones actually deploying devices to implement
> >> something (e.g., a network). The designer and implementer cannot
> >> ultimately know how the user will use their devices and their modules.
> >
> > Then there should only be type (c) tags.
> >
> >> I guess I'm drawing from my unix background here, give the user the rope;
> >> I'm not sure how they would hang themselves with this particular rope,
> >> but worrying about that seems to be the only reason to not give them the
> >> control. :)
> >
> > There are many things a device can implement differently. Do we
> > generally need a way to overwrite things? I am trying to understand
> > why tags are different and considered to require this ability. And as
> > I said, there is always the option to trust only the tags an operator
> > has assigned himself.
> 
> The tags defined by (a) and (b) are still for the users use. In fact
> aren't there plenty of defaults in configuration on devices that the
> user can override or remove? I guess I don't understand why this is so
> controversial.
> 

In YANG, you can overwrite defaults by configuring explicit values,
you can't remove the default - the default is just not used anymore
once there is a configured value - the default still exists and it
will come back when there is no configured value anymore. But I am not
sure the analogy is a good one.

If a data model defines an implementation should set the tag 'foo',
then it feels odd to me to go to the device and to remove that
tag. The tag 'foo' after all is there because the data model says it
should be there - so in an ideal world all implementations of this
data model will set the tag. Why would be removing the 'foo' tag on
all these correct implementations be significantly cheaper than simply
using your own (application specific) tag instead of the 'foo' tag
(that does not seem to do what you like)? Or you add a tag
'ops-foo-broken' to those implementations where you believe the foo
tag is inappropriate.

At the end, it is not a big deal to remove tags but somehow I am not
sure whether there is not a difference between (a), (b), and (c) tags.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

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

Reply via email to