Re: [netmod] Adoption poll for draft-tao-netmod-yang-node-tags

Lou Berger <> Mon, 31 August 2020 13:28 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 202BE3A1389 for <>; Mon, 31 Aug 2020 06:28:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.847
X-Spam-Status: No, score=-2.847 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.948, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (768-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id iT6dNlDvXdlD for <>; Mon, 31 Aug 2020 06:28:14 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id C9EAB3A137D for <>; Mon, 31 Aug 2020 06:28:14 -0700 (PDT)
Received: from CMGW (unknown []) by (Postfix) with ESMTP id 7E80A140525 for <>; Mon, 31 Aug 2020 07:27:59 -0600 (MDT)
Received: from ([]) by cmsmtp with ESMTP id CjqpkgBkuUY3DCjqpkEj6o; Mon, 31 Aug 2020 07:27:59 -0600
X-Authority-Reason: nr=8
X-Authority-Analysis: v=2.2 cv=PtrjV0E3 c=1 sm=1 tr=0 a=h1BC+oY+fLhyFmnTBx92Jg==:117 a=h1BC+oY+fLhyFmnTBx92Jg==:17 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 a=xqWC_Br6kY4A:10 a=y4yBn9ojGxQA:10 a=Vy_oeq2dmq0A:10 a=r77TgQKjGQsHNAKrUKIA:9 a=i0EeH86SAAAA:8 a=wU2YTnxGAAAA:8 a=vggwXBmHAAAA:8 a=48vgC7mUAAAA:8 a=SSmOFEACAAAA:8 a=tvrcBHqTSWcknaJhpaUA:9 a=7Zwj6sZBwVKJAoWSPKxL6X1jA+E=:19 a=9NAD5ZPII5VAmSZC:21 a=OTFWBeKkTAXBzLX6:21 a=QEXdDO2ut3YA:10 a=Ou0Z7j8IbSgA:10 a=TZqUdJfkKkiRgoNUSZkA:9 a=Zvmau4DsGgdcZhMf:21 a=HwC5qyPjLkjFtw1C:21 a=uE3QrS9iQt4AhGO5:21 a=UiCQ7L4-1S4A:10 a=frz4AuCg-hUA:10 a=_W_S_7VecoQA:10 a=Yz9wTY_ffGCQnEDHKrcv:22 a=AbF0LJm2wfut-W_GQ330:22 a=w1C3t2QeGrPiZgrLijVG:22
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;; s=default; h=Content-Type:In-Reply-To:MIME-Version:Date:Message-ID: References:To:Subject:From:Sender:Reply-To:Cc:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=3nB3uNtnTm2mUnGl+CbY/gW5fJ9aT6JdeFK2cDFZem4=; b=pu5I+Yzu0SOu696svk5qCJ+oKz v4rsPlUZNCKXx9uRb3jnDW8nbKt0BXPjRi533xOwREaSf6mvPcT8+8DcCiUXM08q/ihac7ZFj1CzZ nKkYEj7ISfwFHNxVFdvQ8O/+f;
Received: from [] (port=27447 helo=[IPv6:::1]) by with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.93) (envelope-from <>) id 1kCjqp-001miM-08; Mon, 31 Aug 2020 07:27:59 -0600
From: Lou Berger <>
To: Qin Wu <>, Kent Watsen <>,,
References: <>
Message-ID: <>
Date: Mon, 31 Aug 2020 09:27:55 -0400
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0
MIME-Version: 1.0
In-Reply-To: <>
Content-Type: multipart/alternative; boundary="------------931ADB78AF93994F4E0501FA"
Content-Language: en-US
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname -
X-AntiAbuse: Original Domain -
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain -
X-BWhitelist: no
X-Source-L: Yes
X-Exim-ID: 1kCjqp-001miM-08
X-Source-Sender: ([IPv6:::1]) []:27447
X-Email-Count: 6
X-Source-Cap: bGFibm1vYmk7bGFibm1vYmk7Ym94MzEzLmJsdWVob3N0LmNvbQ==
X-Local-Domain: yes
Archived-At: <>
Subject: Re: [netmod] Adoption poll for draft-tao-netmod-yang-node-tags
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 31 Aug 2020 13:28:17 -0000


Thank you for your reply.I think you have two points below (a) tags to 
define metric type and (b) object-specific tags

For me, I believe I agree with Juergen's comments, i.e.,  that metric 
type definition is not metadata and belongs in the module definition.

On the other topic (b) object-specific tags is an interesting idea and 
may provide general utility.  (as contributor) once separated from the 
metrics discussion, this seems like an idea worth discussing in the WG 
to see if there is interest in this added capability.



On August 30, 2020 5:01:28 AM Qin Wu <> wrote:

> Thanks Lou for valuable comments, please see reply inline below.
> *发件人:*Lou Berger []
> *发送时间:*2020年8月30日2:40
> *收件人:*Kent Watsen <>et>;; 
> *主题:*Re: [netmod] Adoption poll for draft-tao-netmod-yang-node-tags
> Hi,
> A couple of comments:
> - As a co-author or YANG Module Tags, I'm thrilled to see it being 
> used/augmented by this document, but I'm not clear on how the metric 
> and operation type tags are to be used.  To me these seem to be best 
> defined by the modules themselves, e.g., does a value represent an 
> average /sum/min/max value or the scale of the value, and not as tag 
> meta data.
> [Qin]:Just to clarify, defining metric and operation type by modules 
> themselves may cause revising all the existing published modules we 
> expect to tag, or creating the same number of new modules (augment 
> from the existing published modules) as the number of targeted 
> existing modules, which is not scalable and desirable. So we abandon 
> this option in our implementation design.
> The data object tags like metric and operation type tag don't 
> introduce any new data nodes into existing modules and can tag any 
> performance metric related data object within published modules, 
> standard modules, native modules without module name change. The data 
> object tag can not be used to tag any one of targeted modules 
> (ietf-geo-location defined in draft-ietf-netmod-geo-location or 
> ietf-ip in RFC8344) which doesn't include performance metric related 
> data node.
> Regarding operation type tag, take ietf-interfaces in RFC8343 as an 
> example, ietf-interfaces include interface statistics data object 
> which can be seen as performance metric related data objects,
>            +--ro statistics
>               +--ro discontinuity-time yang:date-and-time
>               +--ro in-octets? yang:counter64
>               +--ro in-unicast-pkts? yang:counter64
>               +--ro in-broadcast-pkts? yang:counter64
>               +--ro in-multicast-pkts? yang:counter64
>               +--ro in-discards? yang:counter32
>               +--ro in-errors? yang:counter32
>               +--ro in-unknown-protos? yang:counter32
>               +--ro out-octets? yang:counter64
>               +--ro out-unicast-pkts? yang:counter64
>               +--ro out-broadcast-pkts? yang:counter64
>               +--ro out-multicast-pkts? yang:counter64
>               +--ro out-discards? yang:counter32
>               +--ro out-errors? yang:counter32
> however these statistics doesn't tell you whether in-errors is current 
> value or average value or total value, so does count related data 
> objects defined in ietf-dhcpv6-server of draft-ietf-dhc-dhcpv6-yang
>             +--ro solicit-count?               uint32
>             +--ro advertise-count?             uint32
>             +--ro request-count?               uint32
>             +--ro confirm-count?               uint32
>             +--ro renew-count?                 uint32
>             +--ro rebind-count?                uint32
>             +--ro reply-count?                 uint32
>             +--rw release-count?               uint32
>             +--ro decline-count?               uint32
>             +--ro reconfigure-count?           uint32
>             +--ro information-request-count?   uint32
> The operation type tag is introduced to help the network device who is 
> responsible for collecting these statistics data with specific 
> operation type, tell the collectors the statistic related data object 
> reporting current value or average value.
> For the scale of the value, talking with Benoit earlier, we think 
> metric scale may be overlapping with the range statement, the idea is 
> to provide consistent reporting and representation for some of 
> statistics data we want to tag. But if this adds complexity, we are 
> happy to take it out, so does metric precision.
> Similarly, the type of vpn supported by a tunnel also seems like 
> module data and not tag meta data, as this is a per tunnel instance value.
> [Qin] See above, data object tag is **not used to replace module 
> data**, instead, it is used to label these module data as our 
> interested subscribed objects. The label value or tag value is fixed 
> upon it is defined.
> Secondly, the precondition to use vpn service tag is the vpn service 
> has already been decomposed into a set of configuration data object of 
> device modules. The idea is used the service tag as context 
> information tag to correlate data objects from different location of 
> the same module or different module together, the service tag is help 
> glue different data objects together, These context information tag 
> can be analogous to context trace defined in 
> <>.
> Also if module tag can be repurposed at the data node level, I am 
> happy to reuse module tag defined in draft-ietf-netmod-module-tags-10. 
> So vpn related tag is not needed in this draft. Anyway I am open about 
> these tags.
> While the work was previously presented to the WG, I know you didn't 
> have the time we all hoped for to discuss this at the last session, so 
> I (personally, not as chair) would like to ask you to explain this on 
> the list prior to adoption.  I'm hoping I'm just missing something, 
> but from the discussion with Juergen an Andy I suspect not.
> [Qin]: See above clarification, we did have discussion with Jurgen 
> regarding these issues on the list and have already made new version 
> to address Jurgen's early raised points.
> One typical case for metric and operation-type tag is: these data 
> object tags can be advertised to the subscribers together with data 
> object xpath **before** a "pub/sub" service for YANG datastore updates 
> and tell subscribers to specify selection filter targeted to specific 
> category data objects, e.g., performance metric related data object, 
> which help reduce massive data collection and processing and avoid 
> multiple steps subscription.
> In addition, when operation type tag is carried together with the 
> metric tag, operation type will further classify the same performance 
> metric data objects based on different operation types, make sure the 
> same operation type data object can be aggregated together, aggregate 
> average value data object with min value data object doesn't make sense.
> Another case is: Suppose fetch all subscribed objects in all the 
> relevant device modules to the subscribers in  one time is not issues, 
> these data object objects tags can also help subscriber to process the 
> subscribed untagged data objects and hit characteristics data or KPI 
> data objects within the retrieved subscribed objects.
> - Since this work is derived from work that I contributed to, I'd be 
> interested in hearing what new mechanism(s) is/are covered by the IPR 
> disclosure prior to supporting WG adoption.  I'm not asking in order 
> to debate this, as that is something for other venues, I'm merely 
> asking that you state for the record what new mechanism is covered.
> [Qin] Thanks for asking, different from module level tag defined in 
> draft-ietf-netmod-module-tags , this work provide data node level tag 
> definition, use these data node level tag definition to provide hint 
> or indication to selection filter in the YANG push and tell the 
> collector or subscriber which specific category data objects needs to 
> fetched.
> Thank you
> Lou
> (as WG contributor and co-author of draft-ietf-netmod-module-tags)
> On 8/17/2020 6:05 PM, Kent Watsen wrote:
>     This email begins a 2-week adoption poll for:
>     Please voice your support or objections on list before August 31.
>     Notes:
>        1)  -03 was presented during the 108 session, hence the I-D has
>     been updated twice since then.
>        2) Please be aware that IPR has been filed for this I-D:
>     Netmod Chairs
>     _______________________________________________
>     netmod mailing list
> <>