Re: [Netconf] RGW YANG push -18 LC comments [part 2]

"Eric Voit (evoit)" <evoit@cisco.com> Mon, 10 September 2018 17:19 UTC

Return-Path: <evoit@cisco.com>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7822F130F08 for <netconf@ietfa.amsl.com>; Mon, 10 Sep 2018 10:19:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Level:
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01, T_KAM_HTML_FONT_INVALID=0.01, 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 z72TcnLBOSTX for <netconf@ietfa.amsl.com>; Mon, 10 Sep 2018 10:19:26 -0700 (PDT)
Received: from alln-iport-5.cisco.com (alln-iport-5.cisco.com [173.37.142.92]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 44E53130EEC for <netconf@ietf.org>; Mon, 10 Sep 2018 10:19:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=39574; q=dns/txt; s=iport; t=1536599966; x=1537809566; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=NOmsUXRv+r+y9b6dWpN0rExHGfTq4PIDvdnWXQ+Rs/M=; b=DFU+fK6+2JfQkLp61iolN/svmJc2xEjFn9mDIEjGa6phBxXXdfG+rRHy D7z7wX4nk7YMt6ABGuKlud2vc9gSTWikUsj9f5M/BXD4AyFthK8id9O+P iQ0HNJb0ftXAFsJsEVziih1icyl+Y8bR/eHCvxEZ26GRnI2n9bQPgMML7 s=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0A2AgBcppZb/5BdJa1TCRkBAQEBAQEBAQEBAQEHAQEBAQGCV3dlfzKDaJQygg2WSIFmC4RsAheDYyE4FAECAQECAQECbSiFOAEBAQEDIwpMEAIBCBUQEwEJAgICMCUCBA4NgxqBHWSlGIEuH4liimUXgUE/gRKCZC6EQxEUHQcqgkmCVwKIBUOEahOBM4QbiHUJAo94H4FAjTCISYsdAhEUgSU0IYFVcBU7gm2QUo1ogR0BAQ
X-IronPort-AV: E=Sophos;i="5.53,356,1531785600"; d="scan'208,217";a="169139555"
Received: from rcdn-core-8.cisco.com ([173.37.93.144]) by alln-iport-5.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Sep 2018 17:19:25 +0000
Received: from XCH-RTP-011.cisco.com (xch-rtp-011.cisco.com [64.101.220.151]) by rcdn-core-8.cisco.com (8.15.2/8.15.2) with ESMTPS id w8AHJOod011637 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Mon, 10 Sep 2018 17:19:25 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-011.cisco.com (64.101.220.151) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 10 Sep 2018 13:19:24 -0400
Received: from xch-rtp-013.cisco.com ([64.101.220.153]) by XCH-RTP-013.cisco.com ([64.101.220.153]) with mapi id 15.00.1395.000; Mon, 10 Sep 2018 13:19:24 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Robert Wilton <rwilton=40cisco.com@dmarc.ietf.org>
CC: 'Alexander Clemm' <alexander.clemm@huawei.com>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [Netconf] RGW YANG push -18 LC comments [part 2]
Thread-Index: AQHUSO/FNXKE0k4fYEW4TLD4dEyf0qTpskjQ
Date: Mon, 10 Sep 2018 17:19:24 +0000
Message-ID: <9743f8e24d6f448687517c83d07db025@XCH-RTP-013.cisco.com>
References: <e9fc3dc9-f73e-9279-8042-401b3797a434@cisco.com>
In-Reply-To: <e9fc3dc9-f73e-9279-8042-401b3797a434@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.118.56.234]
Content-Type: multipart/alternative; boundary="_000_9743f8e24d6f448687517c83d07db025XCHRTP013ciscocom_"
MIME-Version: 1.0
X-Outbound-SMTP-Client: 64.101.220.151, xch-rtp-011.cisco.com
X-Outbound-Node: rcdn-core-8.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/BLUxKzX9Rydb24Kmvbx2q9ZvQiI>
Subject: Re: [Netconf] RGW YANG push -18 LC comments [part 2]
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
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, 10 Sep 2018 17:19:28 -0000

Hi Robert,

Thanks for the comments.  In-line with <Eric>....

From: Robert Wilton, September 10, 2018 6:19 AM

Hi Alex, authors,

Here are my remaining comments from my WG LC review of the YANG push draft.  Again, I think that these are all minor.

1. Sec 4.3.2, paragraph 2.  "resulted in a particular push" => "resulted in a particular update record"?

<Eric> Agree, we should make this tweak.


2. Sec 4.4.1, after Figure 7, "MAY respond" => "may respond".  This is just an example from that normative behaviour.

<Eric> Agree, we should make this tweak.


3. Sec 4.4.1, paragraph starting "If a request is rejected ...".  Is it really right for this to be "SHOULD" rather than "MAY"?  Early text (e.g. 3.2. paragraph 2 uses "may be inserted".  Also in section 4.4.2, paragraph after Figure 11.

<Eric> I prefer SHOULD.  Section 3.2 text had “may” instead of “MAY”.


4. Sec 4.4.1, "Optionally, an "error-severity" of "error" (this MAY but does not have to be included).", I don't think that the last clause is required (given that it is predicated by Optionally, so suggest deleting the clause in parenthesis.  Otherwise it is also inconsistent with the following "error-info" description.  If this change, it should also be changed for "error-severity" in Sec 4.4.2.

<Eric> Agree, we should make this tweak.


5. Sec 4.4.1, NETCONF specific text about errors.  Should that text really be in this draft?  Would it not be nicer to keep all of the NETCONF specifics to a NETCONF protocol draft?  Perhaps this is not practical, but the WG is currently experiencing some pain where NETCONF protocol specific normative text is in RFC 7950.  Hence, it would be nice to avoid introducing that issue here if possible.  This same comment also applies to Sec 4.4.2.

<Eric> As this is a non-normative example, we should not hit the same issue.  I do like examples for readers to digest.


6. Sec 4.4.2, description paragraph.  Suggest the following change to match the actual example: "modify the "period" of a subscription." => "modify the "period" and "datastore XPath filter" of a subscription."

<Eric> Agree, we should make this tweak.


7. Sec 4.4.2, first paragraph after figure 11:  Possible rewording:

Old:


   The publisher MUST respond explicitly positively or negatively to the

   request.  If the subscription modification is rejected, the

   subscription is maintained as it was before the modification request.

   In addition, the publisher MUST send an RPC error response.  This RPC

   error response SHOULD contain hints encapsulated within the yang-data

   structure "modify-subscription-error-datastore".  A subscription MAY

   be modified multiple times.

NEW:


   The publisher MUST respond to the subscription modification request.

   If the request is rejected, the existing subscription is left unchanged, and

   the publisher MUST send an RPC error response, which MAY|SHOULD contain

   hints encapsulated within the yang-data structure

   "modify-subscription-error-datastore".  A subscription MAY be modified

   multiple times.

<Eric> Proposed text looks fine, with a small tweak:

The publisher MUST respond to the subscription modification request.  If the request is rejected, the existing subscription is left unchanged, and the publisher MUST send an RPC error response.  This response might have hints encapsulated within the yang-data structure "modify-subscription-error-datastore".  A subscription MAY be modified multiple times.


8. Sec 4.4.4, no figure number under the example.

<Eric> Agree.  Alex, can you tweak the XML?


9. Sec 4.4.5, paragraph 1:
I think that it would be better if this just referred to YANG library, hence suggest changing the first two paragraphs:

OLD:


   To make subscription requests, the subscriber needs to know the YANG

   module library available on the publisher.  The YANG 1 module library

   information is sent by a NETCONF server in the NETCONF "hello"

   message.  For YANG 1.1 modules and all modules used with the RESTCONF

   [RFC8040] protocol, this information is provided by the YANG Library

   module (ietf-yang-library.yang from [RFC7895].  This YANG library

   information is important for the receiver to reproduce the set of

   object definitions used within the publisher.



   The YANG library includes a module list with the name, revision,

   enabled features, and applied deviations for each YANG module

   implemented by the publisher.  The receiver is expected to know the

   YANG library information before starting a subscription.

NEW:


   To make subscription requests, the subscriber needs to know the YANG

   datastore schemas used by the publisher, which are available via the YANG

   Library module, ietf-yang-library.yang from [RFC7895].  The receiver

   is expected to know the YANG library information before starting a

   subscription.

<Eric> Agree, we should make this tweak.


YANG module:

10. Top level description statement, it looks like the copyright has accidentally been indented by 4 chars.

<Eric> Agree, we should make this tweak.


Identities:
11. I suggest renaming "no-such-subscription-resynch" to just "no-such-subscription".  I would have thought that this error could also be returned to cancel an unknown subscription.

<eric> The reason we need "no-such-subscription-resynch" is that "no-such-subscription" is already used in SN.  (I.e., is not possible to augment the existing identity with a new base.)


12. "synchronization-size" doesn't sound like an error, perhaps "synchronization-too-big" or "resync-too-big" might be better?

<eric> I have no problem with changing it to "synchronization-too-big", that aligns to the other identity "update-too-big"


Type definitions:

13.  Change all instances (create, delete, insert, move, replace)  of "data node" to "datastore node".

14. grouping selection-filter-types, anydata datastore-subtree-filter, perhaps add a reference to "RFC 6241: Network Configuration Protocol, Section 6.", mirroring draft-ietf-netconf-nmda-netconf.

15. grouping update-policy-modifiable, container on-change description statement, needs to be indented by 2 spaces.

16. grouping hints, description, indent the second description line by 1 space.

17. rpc resynch-subscription, description statement, last two lines require alignment.


<eric> I think all five suggestions above are good tweaks.

Eric


Thanks,
Rob