Hi Mahesh, On Wed, Dec 18, 2024 at 6:20 PM Mahesh Jethanandani <mjethanand...@gmail.com> wrote:
> Hi Dhruv, > > Responding to the second comment/question. > > On Dec 17, 2024, at 1:02 PM, Dhruv Dhody <d...@dhruvdhody.com> wrote: > > > Hi Mahesh, > > On Tue, Dec 17, 2024 at 11:38 AM Mahesh Jethanandani < > mjethanand...@gmail.com> wrote: > >> Hi Dhruv, >> >> Thanks for addressing most of my comments. But ... >> >> On Dec 16, 2024, at 6:07 PM, Dhruv Dhody <d...@dhruvdhody.com> wrote: >> >> Hi Mahesh, >> >> On Mon, Dec 16, 2024 at 4:01 PM Mahesh Jethanandani via Datatracker < >> nore...@ietf.org> wrote: >> >>> Mahesh Jethanandani has entered the following ballot position for >>> draft-ietf-pce-pcep-yang-26: Discuss >>> >>> When responding, please keep the subject line intact and reply to all >>> email addresses included in the To and CC lines. (Feel free to cut this >>> introductory paragraph, however.) >>> >>> >>> Please refer to >>> https://www.ietf.org/about/groups/iesg/statements/handling-ballot-positions/ >>> >>> for more information about how to handle DISCUSS and COMMENT positions. >>> >>> >>> The document, along with other ballot positions, can be found here: >>> https://datatracker.ietf.org/doc/draft-ietf-pce-pcep-yang/ >>> >>> >>> >>> ---------------------------------------------------------------------- >>> DISCUSS: >>> ---------------------------------------------------------------------- >>> >>> Section 1, paragraph 3 >>> > This document contains a specification of the PCEP YANG module, >>> > "ietf-pcep" which provides the PCEP [RFC5440] data model. Further, >>> > this document also includes the PCEP statistics YANG module "ietf- >>> > pcep-stats" which provides statistics, counters and telemetry data. >>> >>> I realize that I had provided Early Reveiw from a YANG doctors point of >>> view >>> for this module. And if the module had some of the same structure that I >>> had >>> reviewed, I must apologize for not catching this earlier. >>> >>> >> Dhruv: The structure has not changed since you last reviewed this. >> >> >> >>> It is fairly unusual to split the statistics into a separate module away >>> from >>> the rest of the module. It is also unusual to have the separate module >>> augment >>> the main module in the same document. Could this not have been achieved >>> simply >>> by having a container called 'statistics' under 'peer' and 'session'? >>> What is >>> achieved by having a complete separate namespace for statistics. >> >> >> Dhruv: The extensive number of statistics in PCEP made the module huge and >> challenging to parse the tree, as the same statistics were present at >> multiple levels. Initially, we had a single model, but since way back in >> version >> -02 of the WG I-D, WGprefered a separate module for stats. Notably, the >> IESG has approved the ALTO YANG model, which followed the same approach, >> establishing a precedent. >> >> >> I do not think either are good reasons for breaking up the module as it >> has been done. From a viewing perspective, an abridged tree diagram can be >> used to illustrate where statistics are defined in the module. You do not >> need to display the full tree diagram to illustrate the structure of the >> module. If anything, a full tree diagram is discouraged in the normative >> part of the draft, and should be only in the appendix. There is >> overwhelming amount of precedent, of making sure statistics stay with the >> module where config and other state is defined. And just because a (bad >> precedent) was established, it does not make it any more correct. >> >> > Dhruv: I understand but I dont see any harm either. I will wait for the AD > direction on this as there is a big churn in the model at the very end > stage that I personally would like to avoid. To me it looks more of a > matter of style and it is not against any written YANG guidelines. > > > >> Also, why use >>> 'rpcs' and not the 'action' statement to clear the statistics? See >>> Section >>> 7.15.3 of RFC 7950 for an example and why 'action' should be used >>> instead of >>> 'rpcs'. Hint, rpcs have no node in the datastores tied to them. That >>> context >>> has to be somehow brought in. Also, how would one clear stats for a >>> particular >>> peer or session? >>> >>> >> Dhruv: Okay, I have changed it to an action to reset but I have retained >> at rpc to clear all statistics (as I dont have a clear place to add the >> action statement). >> >> >> The action statement is applicable to the parent container it is part of, >> and is also the reason you do not need to provide the context for it. If >> you define a container for statistics much like what you have, after you >> remove the augment and a separate module, and by moving 'sess-setup-ok' and >> 'sess-setup-fail' inside the ’stats’ container (do not know why these are >> not stats), you will have the following structure. >> >> module ietf-pcep { >> …. >> >> container peers { >> …. >> >> list peer { >> …. >> >> container stats { >> >> <list of statistics> >> >> action reset { >> input { >> >> } >> >> output { >> >> } >> } >> } >> } >> } >> >> Your action statement is now applicable to each of the peers, i.e., you >> can selectively reset/clear statistics for a given peer, with the special >> character of ‘*’ indicating you want to clear stats for all peers. >> >> HTH. >> > > Dhruv: I understand and I have made a similar change in the > ietf-pcep-stats model. But in RFC 9647 I saw "Implementations that want > to support a system-wide reset of Babel statistics need to call this > action for every instance of the interface." and I am not sure how the > special character of "*" comes in? Can I keep the rpc to reset all? > > > It is generally true that if you want to clear stats for each instance, > you have to call it in a loop. In some implementations, the ‘*’ character > is used to indicate all/loop. > > I do not have the draft in front of me, but what is the input to the rpc? > If the rpc is supposed to clear all the stats for all the peers, there has > to be one container that contains all the stats for all the peers. Your > current structure is the opposite. You have stats per peer. You do not have > one container/list you can call to clear its contents. Am I making sense? > > Dhruv: The current rpc to clear stats takes no input rpc statistics-reset { description "Reset all the statistics collected."; } This is similar to what I saw in RFC 8808 where rpc factory-reset takes no input. My preference to use rpc to clear all statistics is because I dont have a clear container where I can add the 'action' command, as I have done it for the per-peer stats case! Thanks! Dhruv > Cheers. > > > Thanks! > Dhruv > > > >> >> Cheers. >> >> >> >> >>> For all these reasons, I feel there must have been a strong motivation >>> for >>> coming up with a separate module for statistics, and that motivation >>> along with >>> the use of rpcs should be clearly described, otherwise it would be >>> better for >>> the module to be collapsed into a single module, and the rpcs converted >>> to >>> actions. >>> >>> >> Dhruv: I hope you are satisfied with the above. >> >> >> >>> Section 4, paragraph 1 >>> > The PCEP YANG module defined in this document has all the common >>> > building blocks for the PCEP protocol. >>> >>> For the rest of the YANG module, I would like to thank Jan Lindblad for >>> providing YANG doctor review on the document. But I have not seen any >>> response >>> to the review, or how it will be addressed. Holding a DISCUSS to make >>> sure >>> those comments are addressed. >>> >>> >> Dhruv: I have worked through Jan's comment. See my response there. >> >> >> >>> >>> ---------------------------------------------------------------------- >>> COMMENT: >>> ---------------------------------------------------------------------- >>> >>> "Abstract", paragraph 1 >>> > This document defines a YANG data model for the management of the >>> > Path Computation Element communications Protocol (PCEP) for >>> > communications between a Path Computation Client (PCC) and a Path >>> > Computation Element (PCE), or between two PCEs. The data model >>> > includes configuration and state data. >>> >>> Maybe it is just me, but most YANG data models today have both >>> configuration >>> and state data, even if the state data reflects the state of any of the >>> conifg >>> leafs. As such, the last sentence seems redundant to me. >>> >>> >> Dhruv: removed. >> >> >> >>> Section 9, paragraph 1 >>> > The YANG modules defined in this document are designed to be >>> accessed >>> > via a network management protocol such as NETCONF [RFC6241] or >>> > RESTCONF [RFC8040]. The lowest NETCONF layer is the secure >>> transport >>> > layer and the mandatory-to-implement secure transport is SSH >>> > [RFC6242]. The lowest RESTCONF layer is HTTPS, and the >>> mandatory-to- >>> > implement secure transport is TLS [RFC8446] >>> > The NETCONF access control model [RFC8341] provides the means to >>> > restrict access for particular NETCONF or RESTCONF users to a pre- >>> > configured subset of all available NETCONF or RESTCONF protocol >>> > operations and content. >>> >>> Please update this template to match the recent changes in the template >>> as >>> described in rfc8407bis Section 3.7.1. >>> >>> >> Dhruv: Updated. >> >> >> >>> The IANA review of this document seems to not have concluded yet. >>> >>> >> Dhruv: Expert review was done in the past. >> >> >> >>> Check whether the "Implementation Status" section is reasonable. If >>> there is no >>> implementation status to report, should this section be removed? >>> >>> >> Dhruv: This is as per the PCE WG implementation section policy. >> https://wiki.ietf.org/group/pce/ImplementationPolicy >> >> >> >>> DOWNREF [I-D.ietf-teas-yang-te] from this Proposed Standard to >>> draft-ietf-teas-yang-te of unknown standards level. (For IESG >>> discussion. It >>> seems this DOWNREF was not mentioned in the Last Call and also seems to >>> not >>> appear in the DOWNREF registry.) >>> >>> >> Dhruv: It is an informative reference. It was incorrectly marked! >> Apologies! >> >> >> >>> Found terminology that should be reviewed for inclusivity; see >>> https://www.rfc-editor.org/part2/#inclusive_language for background and >>> more >>> guidance: >>> >>> * Term "native"; alternatives might be "built-in", "fundamental", >>> "ingrained", >>> "intrinsic", "original" >>> >>> >> Dhruv: Removed >> >> >> >>> Found IP block or address not inside RFC5737/RFC3849 example ranges: >>> "0.0.0.0". >>> >>> >> Dhruv: It is a valid usage inside the yang description. >> >> >> >>> >>> ------------------------------------------------------------------------------- >>> NIT >>> >>> ------------------------------------------------------------------------------- >>> >>> All comments below are about very minor potential issues that you may >>> choose to >>> address in some way - or ignore - as you see fit. Some were flagged by >>> automated tools (via https://github.com/larseggert/ietf-reviewtool), so >>> there >>> will likely be some false positives. There is no need to let me know >>> what you >>> did with these suggestions. >>> >>> Section 1, paragraph 3 >>> > This document defines a YANG [RFC7950] data model for the management >>> > of PCEP speakers. It is important to establish a common data model >>> > for how PCEP speakers are identified, configured, and monitored. >>> The >>> > data model includes configuration data and state data. >>> >>> This is a YANG 1.1 model by virtue of the fact you are referencing RFC >>> 7950. >>> You might want to just say that it is a YANG 1.1 module. >>> >>> >> Dhruv: ok >> >> >> >>> Document references draft-ietf-netconf-tls-client-server, but that has >>> been >>> published as RFC9645. >>> >>> Document references draft-ietf-pce-pcep-srv6-yang-05, but -06 is the >>> latest >>> available revision. >>> >>> >> Dhruv: updated >> >> >> >>> Reference [RFC5246] to RFC5246, which was obsoleted by RFC8446 (this may >>> be on >>> purpose). >>> >>> >> Dhruv: On purpose as we wanted to refer to TLS 1.2 >> >> >>> "Abstract", paragraph 1 >>> > the state data reflects the state of any of the conifg leafs. As such, >>> the la >>> > ^^^^^^^^^ >>> Consider simply using "of" instead. >>> >>> >>> >> Dhruv: Not updated. >> >> URL: https://www.ietf.org/archive/id/draft-ietf-pce-pcep-yang-27.txt >> Status: https://datatracker.ietf.org/doc/draft-ietf-pce-pcep-yang/ >> HTMLized: https://datatracker.ietf.org/doc/html/draft-ietf-pce-pcep-yang >> Diff: >> https://author-tools.ietf.org/iddiff?url2=draft-ietf-pce-pcep-yang-27 >> >> Thanks! >> Dhruv >> >> >> >> Mahesh Jethanandani >> mjethanand...@gmail.com >> >> >> >> >> >> >>
_______________________________________________ Pce mailing list -- pce@ietf.org To unsubscribe send an email to pce-le...@ietf.org