[OPSAWG] A review of draft-ietf-opsawg-yang-vpn-service-pm-01

Adrian Farrel <adrian@olddog.co.uk> Sun, 16 January 2022 16:15 UTC

Return-Path: <adrian@olddog.co.uk>
X-Original-To: opsawg@ietfa.amsl.com
Delivered-To: opsawg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 084B73A0FE2; Sun, 16 Jan 2022 08:15:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_NONE=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 A3QCsnxV9Wom; Sun, 16 Jan 2022 08:15:53 -0800 (PST)
Received: from mta5.iomartmail.com (mta5.iomartmail.com [62.128.193.155]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6F8FC3A0FD7; Sun, 16 Jan 2022 08:15:50 -0800 (PST)
Received: from vs4.iomartmail.com (vs4.iomartmail.com [10.12.10.122]) by mta5.iomartmail.com (8.14.4/8.14.4) with ESMTP id 20GGFmSB009937; Sun, 16 Jan 2022 16:15:48 GMT
Received: from vs4.iomartmail.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 13DF04604A; Sun, 16 Jan 2022 16:15:46 +0000 (GMT)
Received: from vs4.iomartmail.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0812846043; Sun, 16 Jan 2022 16:15:46 +0000 (GMT)
Received: from asmtp2.iomartmail.com (unknown [10.12.10.249]) by vs4.iomartmail.com (Postfix) with ESMTPS; Sun, 16 Jan 2022 16:15:45 +0000 (GMT)
Received: from LAPTOPK7AS653V ([85.255.233.123]) (authenticated bits=0) by asmtp2.iomartmail.com (8.14.4/8.14.4) with ESMTP id 20GGFcw9028858 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Sun, 16 Jan 2022 16:15:45 GMT
Reply-To: adrian@olddog.co.uk
From: Adrian Farrel <adrian@olddog.co.uk>
To: draft-ietf-opsawg-yang-vpn-service-pm@ietf.org
Cc: opsawg@ietf.org
Date: Sun, 16 Jan 2022 16:15:36 -0000
Organization: Old Dog Consulting
Message-ID: <06c601d80af4$50751ce0$f15f56a0$@olddog.co.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdgK8/V+R8r4508wRgyN/Jha2IWqWA==
Content-Language: en-gb
X-Originating-IP: 85.255.233.123
X-Thinkmail-Auth: adrian@olddog.co.uk
X-TM-AS-GCONF: 00
X-TM-AS-Product-Ver: IMSVA-9.1.0.2090-8.6.0.1018-26658.001
X-TM-AS-Result: No--3.483-10.0-31-10
X-imss-scan-details: No--3.483-10.0-31-10
X-TMASE-Version: IMSVA-9.1.0.2090-8.6.1018-26658.001
X-TMASE-Result: 10--3.482700-10.000000
X-TMASE-MatchedRID: 7JAi/59+m5o/9d9Rtcc0Q07yqWc5cVLPpQH4ogtVQP0S39b8+3nDxzaq WBgHP7EjS3t2J3L5laQMPXsPeYwLgXD1AgDzNq7t5Qo03mEdwAFpFbUvmRjLcvZ5Vxjb3pQX0vI QI6+lG0qDmiu0er9jDO6M4LlxzcjfrPvkNFf532Sa+cpJvTbSHKGnvnr+szpSW2xkIgo7E7ONRC PAFosOlKbF/OIYMbaahCJuZVLvSLODAd1DtN1q7Uz7FUUjXG1jNACXtweanwZhlbn6/nmOLxb/j 4AKLa01W4rWWYOHc25zCcz+K7sx6uq4eBfl/7E8MDYSOHyMogIBk1BLx9Z1nSuGKh4AkqKVX3Th noijm5hWnwUQ7Dehjwit8x0W+xqj6KAZ8NpisLbece0aRiX9Wmd9BXtk9VbIm3yc9shkxBexETK biFNqHsejT7oK8mtuzqFCRsoC3wZMrF2ymbdJfkM/y5EMs/JmFVszCCUpJxsDx6oqiF8Shv4PdE uhNbfdNnyPf9CIfiMutN4Rby41atBi9QRBLW+NolVO7uyOCDXJ5SXtoJPLyNMvYZEcBz1xhfwwa 6XqPjnfsQa4eA3tpue39N0q1yuKp1GG86ZJURrjxJDUku2PNskn+x60J9wajBHNiOl0FvGArqoI ZrVn12ULUrNPkXXmFwe/5vTVgqbNW1kA48D7051v5WrnSRXhIiTd2l7lf6GJTOCz4gRBYAXdWH0 Pi/fpm9L28Suig/iQBKMkFCeiB7psZSK2STq1YuJV6fJ53KMCn5QffvZFlfFNBKe9e0nKvKM8qO 1jo76GWo4F373CII2Ow18fgOyZiwIhBEtqOiCeAiCmPx4NwLTrdaH1ZWqCii7lXaIcF/Ww7M6dy uYKg46HM5rqDwqtamsOV1IR/gbZc7YEBigb/Um7h1EQ9YbdGIXTeTwRezn0l1S4dMa1QQ==
X-TMASE-SNAP-Result: 1.821001.0001-0-1-22:0,33:0,34:0-0
Archived-At: <https://mailarchive.ietf.org/arch/msg/opsawg/xcSMXTG8Pooi3ypLNyQWEKm7qgg>
Subject: [OPSAWG] A review of draft-ietf-opsawg-yang-vpn-service-pm-01
X-BeenThere: opsawg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: OPSA Working Group Mail List <opsawg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/opsawg>, <mailto:opsawg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/opsawg/>
List-Post: <mailto:opsawg@ietf.org>
List-Help: <mailto:opsawg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/opsawg>, <mailto:opsawg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 16 Jan 2022 16:15:56 -0000

Hi authors,

This draft has been safely inside the OPSAWG for a while, so I though
it was probably due a review.

"The usual" two top-level issues:

- The draft expired earlier this month, so you need at a least a 
  keep-alive version.

- The draft has more than five front-page authors so the AD or RFC
  Editor will object. It is probably best for you to resolve this issue
  sooner rather than later.

Otherwise, my comments are a collection of small nits and nothing 
alarming.  Thanks for your work on this document.

Best,
Adrian

== Questions ==

Looking at Figure 1, an obvious question is why this model doesn't
augment the L2/L3NM or the common VPN model. It is OK (for me) that you
have chosen to augment the network topology model, but it is not clear
to the reader why you have done this.

---

I wonder whether the work in this document would benefit from using
data tags (draft-ietf-netmod-node-tags). I might be wrong, but it seems 
particularly related and useful.

---

If, in Figure 3, VPN1 is configured as hub and spoke with S1A as the 
hub, why is there a link in the virtual network between VN2 and VN3?

---

5.

General question about counters based on my memory of how we did MIBs
(So I am old! Quite possible that YANG does this differently.) Don't
you need something to handle resets? That is, to distinguish between
wrapping and resetting, we used to include a timestamp for when the
counters were last reset. Sometimes this was a timestamp per counter,
but usually enough for one timestamp across all counters.

(This probably makes a difference to the gauges and percentiles, too.)

Re-reading, it is possible that this is covered by 'reference-time' and
'measurement-interval'.  If so, this could be a lot clearer in 4.4.

---

5.

      leaf pm-source {
        type string;
        config false;
        description
          "The OAM tool used to collect the PM data.";
      }

I'm not convinced that using a string here is helpful. How does the
device know what string to use to convey meaning to the application? 

Or is the point that this is just printable information for display and
human consumption? If so, perhaps a note to this effect in Section 4.4.

== Nits ===

Abstract

It would be nice to say what the model in 8345 is. So...

   The data model for network topologies defined in RFC 8345 introduces
   vertical layering relationships between networks that can be
   augmented to cover network and service topologies.

---

Abstract

I think PM stands for 'performance monitoring' not 'network performance 
monitoring', so for the avoidance of doubt...

   This document defines a YANG module for 
   performance monitoring (PM) of both networks and VPN services that
   can be used to monitor and manage network performance on the topology
   at higher layer or the service topology between VPN sites.

---

2.

You have the BCP 14 boilerplate, but the uses of "should" and "must" in
the document are in lower case. There is one use of upper case "MAY" in
the Security Considerations which should be, I think, lower case since
it is a statement of fact not guidance to an implementer of this spec.

---

3.

s/Such an information/Such information/
s/should be setup/should be set up/
s/using network performance/using a network performance/
s/information from Traffic/information from the Traffic/

---

The Legend for Figure 3 could usefully add
   S:Site

It might also help to indicate the difference between links that are
shown as | and mappings that are shown as :

---

4.2

s/do not need to be extended./does not need to be extended./

---

4.2, 4.3

Figures 4 and 5 should be referred to from the text.

---

4.4

OLD
      Setting a percentile into
      0.00 indicates the client is not interested in receiving
      particular percentile.
NEW
      Setting a percentile to
      0.00 indicates the client is not interested in receiving
      that particular percentile.
END

s/metric (e.g./metric (e.g.,/

OLD   
   "reference-time" "measurement-interval"
NEW
   "reference-time" and "measurement-interval"
END

---

5.

   The "ietf-network-vpn-pm" module uses types defined in [RFC8345],
   [RFC6991], and [RFC8532].

You probably need to add [I-D.ietf-opsawg-vpn-common].

      "RFC CCCC: A Layer 2/3 VPN Common YANG Model";

I think you need a note to the RFC Editor to change that (although it
is likely that the RFC will come out relatively soon and you may get to
fix it up yourself).

Similarly...

     This version of this YANG module is part of RFC XXXX; see
     the RFC itself for full legal notices.";

  revision 2021-07-06 {
    description
      "Initial revision.";
    reference
      "RFC XXXX: A YANG Model for Network and VPN Service Performance
                 Monitoring";

You need a note to the RFC Editor to fix this up.

---

5.

Shouldn't 'percentile' also have a range?

---

6.

   There are a number of data nodes defined in this YANG module that are
   writable/creatable/deletable (i.e., config true, which is the
   default).  These data nodes may be considered sensitive or vulnerable
   in some network environments.  Write operations (e.g., edit-config)
   to these data nodes without proper protection can have a negative
   effect on network operations.  These are the subtrees and data nodes
   and their sensitivity/vulnerability:

   o  /nw:networks/nw:network/svc-topo:svc-telemetry-attributes

   o  /nw:networks/nw:network/nw:node/svc-topo:node-attributes

This feels like it may have been block copied from another document. I
think it needs updating for the specific writeable objects in this
module and the negative effects (which are surely not very great) of
them being unprotected.