Re: [netmod] Module tags

Robert Wilton <rwilton@cisco.com> Tue, 14 February 2017 15:07 UTC

Return-Path: <rwilton@cisco.com>
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 673D412966F for <netmod@ietfa.amsl.com>; Tue, 14 Feb 2017 07:07:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.523
X-Spam-Level:
X-Spam-Status: No, score=-14.523 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, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 WWdyQeeh19oI for <netmod@ietfa.amsl.com>; Tue, 14 Feb 2017 07:07:04 -0800 (PST)
Received: from aer-iport-3.cisco.com (aer-iport-3.cisco.com [173.38.203.53]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 04ACF1295A1 for <netmod@ietf.org>; Tue, 14 Feb 2017 07:07:03 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=6020; q=dns/txt; s=iport; t=1487084824; x=1488294424; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=X099n4M866ZkeRHIJlLSTRmRyomIzryypHUU3jEgTW8=; b=DjdQvJY1HW7yuN8XEjTPTYXWbDwJjOMhDxX0hGcPVamJj2/8gHb3WKRj 4Dsa4e6J2nxfFCeAWB6m0xyXoS0pPZiDxp2F2zuKH4qBpkWR02ieiaJzi 1+pR7DDuItREHFjKBxiRApGo+n1RxpBNDk2/HoLh53K+zKctr98Xxwegt I=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0BZAQC3HKNY/xbLJq1UChkBAQEBAQEBAQEBAQcBAQEBAYQzAydfjWFykR6VNoIMHwuFLkoCgjoYAQIBAQEBAQEBYiiEaQEBAQMBAQE2NgQHBQsLDgouJzAGDQYCAQEFEolICA6xMYtdAQEBAQEBAQEBAQEBAQEBAQEBAR+GTIIFgWGBCYQmBgsBhgEFiw+ENIwvkhSBe4hEhkaILIJkiAUfOFUjCCAUCBUVPYRFHYFhQDWHc4ItAQEB
X-IronPort-AV: E=Sophos;i="5.35,161,1484006400"; d="scan'208";a="650658241"
Received: from aer-iport-nat.cisco.com (HELO aer-core-1.cisco.com) ([173.38.203.22]) by aer-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Feb 2017 15:06:59 +0000
Received: from [10.63.23.109] (dhcp-ensft1-uk-vla370-10-63-23-109.cisco.com [10.63.23.109]) by aer-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id v1EF6xZB016298; Tue, 14 Feb 2017 15:06:59 GMT
To: Christian Hopps <chopps@chopps.org>
References: <87r338gtzw.fsf@chopps.org> <20170209.085506.1418859449501855827.mbj@tail-f.com> <878tpfac43.fsf@chopps.org> <20170209.120823.198284779081114388.mbj@tail-f.com> <874m03a74p.fsf@chopps.org> <15a22d86378.27fd.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <72728899-a310-b43e-65dd-7623135c5fba@cisco.com> <87mvdo986q.fsf@chopps.org>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <d13c0b5c-edb5-a6c1-a042-e1203ced5423@cisco.com>
Date: Tue, 14 Feb 2017 15:06:56 +0000
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1
MIME-Version: 1.0
In-Reply-To: <87mvdo986q.fsf@chopps.org>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/uNzT0WOyQAqkQXQxmR2sLpOh13k>
Cc: 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: Tue, 14 Feb 2017 15:07:06 -0000


On 14/02/2017 14:08, Christian Hopps wrote:
> Robert Wilton <rwilton@cisco.com> writes:
>
>> Hi tags draft authors,
>> On 09/02/2017 12:28, Lou Berger wrote:
>>> I'm personally more excited by the use of tags as additional module
>>> meta-data accessible via yang library. But also see no reason to
>>> preclude this possible  (even if unlikely) usage.
>> When the idea of tags was presented as IETF, I had assumed that tags
>> would be versioned/managed entirely independently from the YANG modules
>> that the tags apply to.
> Well they are called "tags" after all.  Normally one applies a tag to
> something (i.e., tags it. :)
Of course, I still mean that the tags are applied to the module, but 
just that the place where that relationship is defined and maintained is 
not in the module itself. I.e. some central locations that map from 
unique module name to associated metadata tags.

A roughly equivalent example might be perhaps like CDDB, where a program 
can take a CD track, and go and fetch the associated metadata from some 
known location without the metadata being embedded in the CD track itself.


>
>> For a while, there was a desire to organize YANG modules by their
>> hierarchical path location in the schema tree.  My concern with this
>> approach, is that there needs to be sufficient foresight to get that
>> structure right now, because it will be very painful to change it in
>> future.  Unfortunately things have a habit of evolving over time, and
>> hence choosing the right structure now such that is still the right
>> structure in 25 years seems somewhat unlikely.
>>
>> I was thinking that tags offers a better solution to this problem, that
>> allows the structure to be a bit more dynamic, evolving over time.  I.e.
>> YANG modules for features can sit at (or near to) the top level of the
>> schema tree, and tags can then be used to group those modules into
>> sensible organizations that can evolve, so that when clients are trying
>> to sort through all the different YANG models that are available, they
>> have more hope than looking at a flat list.
> We in fact plan to do this with the device meta model. I believe this
> was in the presentation too, but it might not have been very obvious.
>
>> In this scenario, I think that it is better if the YANG module
>> definitions themselves don't specify the tags because then
>> adding/removing/changing them is going to be a pain.  If this tag
>> information was managed separately (e.g. in something like YANG catalog)
>> then it seems easier for the tags to evolve over time.
> I want to be sure I understand you here. We've defined 3 places that a
> tag could be defined (comes into existence), the module designer, the
> vendor and the local user. When you say "module defines" are you talking
> about the first case, or are you talking about where a tag resides after
> it is created?
I was talking meaning the first case, where the tags are embedded in the 
definition of a module, that itself is embedded in a published standard.

>   For the latter that was our intention with the yang
> library augmentation. For the former case consider e.g., IS-IS, I think
> the authors of that module know and are the appropriate folks to add
> categorization tags such as "ietf:routing", "ietf:protocol",
> "ietf:routing:igp" or whatever.
OK, today, it might seem obvious that the tags should be routing, 
protocol, igp, etc.  But in the future that choice of categorization 
might not be the best, but it will be resistant to change because some 
of the tag definitions are embedded in the modules themselves.

Some of your suggested tags identify areas of IETF.  But what if those 
areas change over time, of the associated of drafts/WGs to particular 
areas changes.  A YANG module could end up being tagged with a stale 
area, and I doubt that anyone would want to update a standard to just 
update the tags.

So, I was wondering if it wouldn't be better to not allow tags to be 
embedded in the modules at all.  Instead, if this was maintained in a 
central database, e.g. like http://www.yangcatalog.org/, then the module 
authors could always email the maintainers of YANG catalog to agree with 
them how the module could most usefully be tagged in the catalog.  If 
this needs to change over time then this would seem to be much easier to 
update.



>   Nothing would keep the user or vendor
> from removing these or adding their own tags for the same purpose as
> well if they found these inappropriate or incorrect.
OK, yes.  But I wasn't thinking so much of a particular vendor or 
operator, but more if the industry in general (or perhaps just the 
maintainers of the catalog) decided that different categorization would 
be more appropriate over time.

Thanks,
Rob

>
>> But I also had not really realized that the tags information would
>> necessarily reach down to the devices.  I.e. I hadn't envisaged Chris's
>> example of querying the hello-time via an IGP package tag. Instead, I
>> had thought of tags making a YANG catalog website more useful.  E.g.
>> when browsing for YANG modules, be able to restrict the query to just
>> the modules that are tagged as "standard" + "IGP", etc.
>>
>> So, I think that this draft may benefit with a bit more description of
>> the envisaged use cases, and also about how tags are envisaged to evolve
>> once they have been defined.
> Well one goal I had with tags was to allow for them to be used in
> the future in ways we may not have anticipated. Therefore
> we specifically did not lock down how they are used or what they are
> used for. That said, examples of how one might use could be helpful.
>
> Thanks,
> Chris.
>
>> Thanks,
>> Rob
>>
>>> Lou
>>>
>>>
>>>> Thanks,
>>>> Chris.
>>>
>>> _______________________________________________
>>> netmod mailing list
>>> netmod@ietf.org
>>> https://www.ietf.org/mailman/listinfo/netmod
>>> .
>>>