Re: [netmod] The NETMOD WG has placed draft-tao-netmod-yang-node-tags in state "Candidate for WG Adoption"

Qin Wu <> Mon, 27 July 2020 10:19 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 177143A183E for <>; Mon, 27 Jul 2020 03:19:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 4AYmJU0WvGGY for <>; Mon, 27 Jul 2020 03:19: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 6FD893A1840 for <>; Mon, 27 Jul 2020 03:13:51 -0700 (PDT)
Received: from (unknown []) by Forcepoint Email with ESMTP id B7F5D1B3BE41C40C6DA1; Mon, 27 Jul 2020 11:13:49 +0100 (IST)
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Mon, 27 Jul 2020 11:13:49 +0100
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA) id 15.1.1913.5 via Frontend Transport; Mon, 27 Jul 2020 11:13:49 +0100
Received: from ([]) by ([]) with mapi id 14.03.0487.000; Mon, 27 Jul 2020 18:13:43 +0800
From: Qin Wu <>
To: Juergen Schoenwaelder <>, "" <>
Thread-Topic: [netmod] The NETMOD WG has placed draft-tao-netmod-yang-node-tags in state "Candidate for WG Adoption"
Thread-Index: AdZj9bWNc0+t9Kb6SeeYIs4gCDOVvg==
Date: Mon, 27 Jul 2020 10:13:43 +0000
Message-ID: <>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
x-originating-ip: []
Content-Type: text/plain; charset="gb2312"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <>
Subject: Re: [netmod] The NETMOD WG has placed draft-tao-netmod-yang-node-tags in state "Candidate for WG Adoption"
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, 27 Jul 2020 10:19:18 -0000

Thanks Juergen for sharing your view on this draft, please see comments inline.
发件人: netmod [] 代表 Juergen Schoenwaelder
发送时间: 2020年7月27日 16:48
主题: Re: [netmod] The NETMOD WG has placed draft-tao-netmod-yang-node-tags in state "Candidate for WG Adoption"

I do not understand the abstract of the document. The main sentence is this one:

   This YANG data node tagging method
   can be used to provide input, instruction, indication to selection
   filter and filter queries of operational state on a server during a
   "pub/sub" service for YANG datastore updates and provide multiple
   dimensional network visibility analysis when the state of all
   subscriptions of a particular Subscriber to be fetched is huge, so
   that the amount of data to be streamed out to the destination can be
   greatly reduced and only targeted to the characteristics data.

I can follow up to 'multiple dimensional network visibility analysis'
and then I am lost.
[Qin]: The goal is to address the challenging for massive data collection and processing, provide better network visibility to the telemetry data that is stored in the operational datastore.
The idea we proposed is telemetry data tagging and classification, which can help the client or subscriber to subscribe specific telemetry data that are interest to the client.

On the technical side, it is not clear why a central list of tags providing meta information is preferrable over metadata annotations that can be shipped with the values.

[Qin]: If we take metadata annotation approach, we need to define new module for each device level modules such as interface module, IP management module, BGP module, QoS module deployed in the device or revise these modules that has already been published and update devices with these new modules corresponding to deployed device level modules. Suppose the device level modules that has been deployed in the device is huge, such metadata annotation solution require update on each device for the new modules, the number of new modules is same as the number of existing deployed device level modules, which doesn't scale well.

It does not seem harmful to adopt this work if people think this is needed and they are willing to work on this. The others can safely ignore this with. Personally, I am not convinced yet, but then I do not work on 'multiple dimensional network visibility analysis'.
Perhaps a good convincing concrete example would help, the tables in Fig. 2 do not help me much.

[Qin]: Suppose we can classify telemetry data from different angles, we can tag the telemetry data with various different data object tag, e.g., whether the data object is performance metric data, which category the performance metric data belong, if the data object
Is performance metric data or KPI data, we can further classify KPI data from operation type, e.g., whether KPI data is average value, minimum value, maximum value, whether KPI data allow set threshold for it, if the KPI data can come from multiple source,
We can indicate whether KPI data is aggregated data or not, so collector can use these telemetry data tag to subscribe targeted data object or these telemetry data tag associated with subscribed data can be further consumed by big data analytics platform/open observability platform such as InfluxDB/grafana and provide different outputs based on the telemetry tag or telemetry data classification that is selected.

The goal seems to add tags to node instances. I do not understand what they are called 'self-explanation-node-tags' and not simply 'node-tags'. 
[Qin]: The reason to call it as 'self-explanation-node-tag' is to make it better reflect what it is really aimed for, if you have better name, I am happy to accept it.

It is also unclear why we need exactly those eight different tag types. How does this relate to YANG defined properties such as units?  If there is a mismatch, what takes precedence?
[Qin]:As I clarified, the essence of the idea is telemetry data classification, or telemetry data tagging, it is not mandatory to have all of them, but it is nice to have many of them, the idea is to provide consistent representation or reporting for different modules, whether it is standard module, or vendor specific module.
If I define tags in a module using the extension statements, why do I also have to have these tags in the instance tree?
[Qin]: Have these tag in the instance tree is optional, we can retrieve them from offline document that is published somewhere. The idea to have tag in the instance tree is to advertise telemetry data tagging capability to the client, so the client can know
Which data object is tagged, which category the data object belong to.
draft-ietf-netmod-module-tags defines module tags plus mechanisms to tweak them if needed. This document seems to define node instance tags but hidden in a very specific use case. 
[Qin]: Similar to draft-ietf-netmod-moule-tags, it is generic tag, the only difference is the tag proposed in the draft-ietf-netmod-moule-tags while the tag proposed in this draft is data node level tags.
I think the WG should determine whether it wants to work on "YANG Node Instance Tags" along the "YANG Module Tags" work. I personally find the scope of the work behind the current document unclear.


On Sun, Jul 26, 2020 at 06:56:17AM -0700, IETF Secretariat wrote:
> The NETMOD WG has placed draft-tao-netmod-yang-node-tags in state 
> Candidate for WG Adoption (entered by Lou Berger)
> The document is available at
> Comment:
> IPR disclosures:
> Mail poll:
> rQ/
> Liang Geng:
> R4/ Du
> Zongpeng:
> mc/ Ran
> Tao:
> oo/ Qin
> Wu: 
> ps/
> Benoit Claise:
> Yw/
> _______________________________________________
> netmod mailing list

Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <>

netmod mailing list