Re: [netmod] Module tags

Christian Hopps <chopps@chopps.org> Sun, 12 February 2017 10:59 UTC

Return-Path: <chopps@chopps.org>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AE1BE1294AD for <netmod@ietfa.amsl.com>; Sun, 12 Feb 2017 02:59:47 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7-MtxBgeCAck for <netmod@ietfa.amsl.com>; Sun, 12 Feb 2017 02:59:43 -0800 (PST)
Received: from smtp.chopps.org (smtp.chopps.org [54.88.81.56]) by ietfa.amsl.com (Postfix) with ESMTP id F33D4127A90 for <netmod@ietf.org>; Sun, 12 Feb 2017 02:59:42 -0800 (PST)
Received: from utops.chopps.org (97-83-46-222.dhcp.trcy.mi.charter.com [97.83.46.222]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by smtp.chopps.org (Postfix) with ESMTPSA id 679D2623B2; Sun, 12 Feb 2017 10:59:42 +0000 (UTC)
References: <87shnogymx.fsf@chopps.org> <20170208.231709.2214078600549867460.mbj@tail-f.com> <CABCOCHQJ+ef4C=TAfH9NK47mWgO0XOy1gg-cggigWq7Fqdfkgw@mail.gmail.com> <87d1eouby0.fsf@chopps.org> <20170211135417.GC6490@elstar.local> <8737fju4n5.fsf@chopps.org> <20170212104106.GA8142@elstar.local>
User-agent: mu4e 0.9.18; emacs 25.1.1
From: Christian Hopps <chopps@chopps.org>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
In-reply-to: <20170212104106.GA8142@elstar.local>
Date: Sun, 12 Feb 2017 05:59:40 -0500
Message-ID: <871sv3r7xf.fsf@chopps.org>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/01jG781Iy3s6YesUftMKelxpuao>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Subject: Re: [netmod] Module tags
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 12 Feb 2017 10:59:48 -0000

a
Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> writes:

> On Sun, Feb 12, 2017 at 04:42:22AM -0500, Christian Hopps wrote:
>>
>> > Can you point me to a set of modules and a concrete query where this
>> > makes sense? I am like Martin not yet convinced that there is a use
>> > case for this.
>>
>> I gave the example of something that implements a common interface. So
>> for example most IGP routing protocols have hello timers. One could
>> imagine an "ietf:implements:hello-timer" (or whatever) tag. This type of
>> thing is used to avoid the use of multiple-inheritance in OOP. It could
>> serve a similar purpose with yang (although in this case it avoids having
>> to factor all commonality out into tiny modules).
>>
>> I don't know if this would develop organically or not, but I do know
>> having a central list eliminates the option. Why choose the option with
>> less capabilities?
>
> I am asking for a concrete example. Assuming that modules will have a
> common structure and naming inside is IMHO wishful thinking. Show me a
> concrete example please using existing modules.

I did give an example: IGP hello timers. I feel it's unreasonable to
expect me to be more concrete with existing modules when we are talking
about creating a feature that would make commonality useful (!)

There are IGP models, they have common hello timers, the fact that these
are placed in a common area simply has to do with the fact that there
was no gain in doing so.

I've offered I think a valid use case that is well excepted and present
in other areas of computer science, your saying no-one is doing this now
with yang. To me that's like having java without the interface
statement and then asking to be shown actual java code using the
non-existent interface statement. There are yang models with common
factorable structure now, I've given an example. If that's not enough I
don't know what else I can do.

>> >> Is there a way to get the reset to default behavior? We do allow the
>> >> user to remove default set tags, so I think that's why Lou added that
>> >> RPC.
>> >
>> > Note sure whether this (removing of non-configured tags) is a good
>> > idea. Again, concrete use cases might help to make the point.
>>
>> I do want to support tag removal. The most obvious case for tags is for
>> operator use, and the resulting tag set for any module should be under
>> the control of the operator. A use case would be that some server has a bug
>> in their implementation and the admin wants to remove it from possible
>> use. I'd ask the reverse question, why take this control away from the
>> operator?
>
> I am trying to understand the use case. If you are unhappy with the
> default tags, why not add your own tags? This way, the operator has
> full control over his tag space.

A model on a server is buggy for some tagged feature, I want to remove
that tag from it on that server. Your suggesting rather than me be in
control and simply remove that tag from that server, I need to not use
that tag at all in all of my network, and instead create a new tag that
I add to all the functional servers in my network leaving it off this
single server.

Again why is this a big deal? What are you gaining by not allowing the
removal of tags? As an operator I'm certainly losing something.

> /js