[Netconf] Yangdoctors last call review of draft-ietf-netconf-restconf-notif-11

Robert Wilton <rwilton@cisco.com> Mon, 07 January 2019 17:43 UTC

Return-Path: <rwilton@cisco.com>
X-Original-To: netconf@ietf.org
Delivered-To: netconf@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id BE206130FC7; Mon, 7 Jan 2019 09:43:34 -0800 (PST)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: Robert Wilton <rwilton@cisco.com>
To: yang-doctors@ietf.org
Cc: netconf@ietf.org, draft-ietf-netconf-restconf-notif.all@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 6.89.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <154688301471.23184.11003837983933531435@ietfa.amsl.com>
Date: Mon, 07 Jan 2019 09:43:34 -0800
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/xHvjrGVRfQIinvPzKCEKzHbujXc>
Subject: [Netconf] Yangdoctors last call review of draft-ietf-netconf-restconf-notif-11
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Network Configuration WG mailing list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Jan 2019 17:43:35 -0000

Reviewer: Robert Wilton
Review result: Ready with Issues

I have reviewed this document as part of the YANG doctors directorate's
ongoing effort to review all IETF documents being processed by the IESG.  These
comments were written with the intent of improving the operational aspects of
the IETF drafts. Comments that are not addressed in last call may be included
in AD reviews during the IESG review.  Document editors and WG chairs should
treat these comments just like any other last call comments.

This document and the associated YANG module looks like it is in good shape to

The two minor issues that I had that I think need to be resolved are:
- The section 3.4 handling subscriptions by admin users wasn't intuitive to me
(relative to what is stated in draft-ietf-netconf-subscribed-notifications). 
Specifically what should an admin user be allowed to do vs the client that
initiated the subscription. - Section 4 on HTTP2 QoS seemed unclear to me.

I think that all my other comments are really just nits:

1) Section 3.2 Discovery, last paragraph.

Would it be better for this to reference draft-ietf-netconf-nmda-restconf,
section 2 and '/yang-libary/datastore' draft-ietf-netconf-rfc7895bis, section 3?

2) RPC table in section 3.3.  The identity for "kill-subscription" should
probably be "delete-subscription-error" since "kill-subscription-error" isn't

3) Diagram in 3.4.  It wasn't immediately obvious to me that the vertical lines
in the lined up with connections (a) and (b).  I'm not sure whether it is worth
adding a comment to make this more explicit.  I figured it out whilst reading
the text below, perhaps most other readers would also do so.

4) Section 3.4, bottom of page 7, "must be sent within (b)" -> "MUST be sent
within (b)"

5) Section 3.4:
   o  RPCs modify-subscription, resync-subscription and delete-
      subscription can only be done by the same RESTCONF username
      [RFC8040] who did the establish-subscription, or by a RESTCONF
      username with the required administrative permissions.  The latter
      also has access to the kill-subscription RPC.

Just to check, is it true that any RESTCONF username with the required
permissions is allowed to invoke the "delete-subscription" RPC?  Or should this
be restricted to same RESTCONF username?  In fact, I was wondering whether an
administrator should be allowed to invoke modify-subscription or
resync-subscription, or whether they should be restricted to kill-subscription

6) Section 4 is unclear to me:

 - The paragraph starting "take any existing subscription "priority" ..."
 states that the "dscp" field is copied into the HTTP2 stream priority, but I
 couldn't find such a field in section 5.3 of RFC7540.  Hence, I was wondering
 whether this paragraph shouldn't instead be stating the the "weighting" field
 is copied into the HTTP2 stream priority header?

   o  take any existing subscription "priority", as specified by the
      "dscp" leaf node in
      [I-D.draft-ietf-netconf-subscribed-notifications], and copy it
      into the HTTP2 stream priority, [RFC7540] section 5.3, and

   o  take any existing subscription "priority", as specified by the
      "weighting" leaf node in
      [I-D.draft-ietf-netconf-subscribed-notifications], and copy it
      into the HTTP2 stream weight, [RFC7540] section 5.3, and

There is also no mention of how the "E" (Exclusive) bit should be set in the
HTTP2 stream headers.  Is this an omission?

7) Section 6 doesn't contain any YANG Tree output.  Probably time to put that
in, but I would suggest not putting in the entire tree output, just the
relevant snippets.  If you want to include the full tree output then I would
suggest putting in an appendix instead.  The text in this section describing
the YANG model needs to be fixed since the YANG module doesn't actually define
any identities.

8) Section 7, YANG module comments

Just nits:

8.1) Check line length of the file, it looks like it goes over 69 characters.
 - In particular, the namespace statement might need to be split.
 - The module description text indentation looks off on the first line, and
 probably needs to be re-flowed. - Some of the other descriptions look wide.

8.2) The description for "subscription-modified" doesn't quite scan (as it goes
over the line break).

9) One of the filter examples appendix A.3 is clearly over 72 characters,
suggest spliting.