Re: [netconf] Yangdoctors last call review of draft-ietf-netconf-subscribed-notifications-21
Andy Bierman <andy@yumaworks.com> Sat, 19 January 2019 16:17 UTC
Return-Path: <andy@yumaworks.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 D0327130DCD for <netconf@ietfa.amsl.com>; Sat, 19 Jan 2019 08:17:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.042
X-Spam-Level:
X-Spam-Status: No, score=-2.042 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.142, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.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 nKb9FA3Tb7f6 for <netconf@ietfa.amsl.com>; Sat, 19 Jan 2019 08:17:25 -0800 (PST)
Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [IPv6:2a00:1450:4864:20::12c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6056012D4E7 for <netconf@ietf.org>; Sat, 19 Jan 2019 08:17:24 -0800 (PST)
Received: by mail-lf1-x12c.google.com with SMTP id a8so12649455lfk.5 for <netconf@ietf.org>; Sat, 19 Jan 2019 08:17:24 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=gBPlet2wxYvkbzn+9zpkRc/ZoJasjxrzQpev+WeqCuA=; b=QxtYLkNFzqp7SmE9x29eXvod4L+m1j7a14LHFaYyjCbdv2i1g0yYg4vTGO66jL4LBe D7UW2GR8lXn27rqiyGw8CS49DKW4HNt37pAEtAPwYc1B8+eLN1GI+9R49NFJ0Wvv0sCk 7lqlz+xFWHfDUpBITek6yy/1Nc2idQG8rumHsCP5dKQjlJuKjrf2z5lP5Q2w00IsA87c 2seC0kf5oTxxXaghUCjtqw/S0xREm4iEMu331h3QBy6LDtwlVt8qCDqhjUwpWtH//ygT AnQDfv0SZ14rrZPWtSxmMezQyevepu9sIVB/CRaHBC0FBMGdD6OPNqMnGC4RHWr1nTm/ V+Vw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=gBPlet2wxYvkbzn+9zpkRc/ZoJasjxrzQpev+WeqCuA=; b=X9kyFDWbvn3spM+SxwpPUCMGKxA4U4l3/bJunaTStn4LwCtnFt3rZejrJOLu3Hg5Y/ B/Rr27tZfYQQQoNqcMcJ9SeKeqbC0tGo4qwN6h5/W8N/BpXRdsG3gb63GSzMVoO49Ogn HVjoVWr26JoucsiRTKLcB54MZd+lQCk+bWjLVl+ADZtOFd7gJ7d3BfZjuXadDGfvnHR8 CbWN7yfz2X/hwf6E3e4x4+gydVwuDQ73lMVMR6nnFRc6IKw/MMtI3sDpQnxMoj9yjckl B7CAK7XaMrXUTy5TRsmrm3Mid/78Hs0pr+Jo1FSxGmWpF8ny9Hn910wJIkLCxHb9cUuv 1P7g==
X-Gm-Message-State: AJcUukf4HbxFY+s+dq+2jvO5YOs6OFXzNRno50movJS5RVq3MeTu3G2A fJzUMUQG3Or2FgdJgjDGjPl+lxCsBpPyPHEuHc6zXg==
X-Google-Smtp-Source: ALg8bN4uU9PXY9nBhREBP+zNuDIXMXTX/5koz/v18p14mFP8Bs1n3GN49m6Wa0DKMMEaJ/OUhZ13nreqWooOofSG70E=
X-Received: by 2002:a19:690d:: with SMTP id e13mr14917025lfc.84.1547914642029; Sat, 19 Jan 2019 08:17:22 -0800 (PST)
MIME-Version: 1.0
References: <154751447121.9624.9621514728857769626@ietfa.amsl.com> <ece835a85a55419f875537f0ca4b90c6@XCH-RTP-013.cisco.com> <CABCOCHTQ4VD49zZ4LLOFHiTWhKJgOOhMyX0DAV-hrwYO8MZkCQ@mail.gmail.com> <5470793368f1424b9d554957bc45fcc4@XCH-RTP-013.cisco.com> <0181b187e85a4ab1a41e5adb65d64d4e@XCH-RTP-013.cisco.com>
In-Reply-To: <0181b187e85a4ab1a41e5adb65d64d4e@XCH-RTP-013.cisco.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Sat, 19 Jan 2019 08:17:10 -0800
Message-ID: <CABCOCHSpaRFZNovL0pQ2Y-jrYughpxALyOoU3ziicQKn4AtxHA@mail.gmail.com>
To: "Eric Voit (evoit)" <evoit@cisco.com>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "draft-ietf-netconf-subscribed-notifications.all@ietf.org" <draft-ietf-netconf-subscribed-notifications.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000061a358057fd1f61e"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/z1GIq9bJy1Mdj6SKwy8kni4a930>
Subject: Re: [netconf] Yangdoctors last call review of draft-ietf-netconf-subscribed-notifications-21
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETCONF WG 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: Sat, 19 Jan 2019 16:17:30 -0000
On Fri, Jan 18, 2019 at 11:53 AM Eric Voit (evoit) <evoit@cisco.com> wrote: > Hi Andy, > > Thanks. I have incorporated items where there was agreement. I have > removed the items below where you were ok. > > Remaining below are the open items, with responses. > > > > Should be clear somewhere that > > > suspend is for CPU and other resources, and NACM not considered > > > to be a resource. > > > > If NACM is active, it needs to be followed. The text we have for NACM > is in > > Section 5.4. Do you see something else specific to subscription > suspension > > needed here? (Maybe I am not getting your point.) > > > > No -- OK to leave NACM as terminate-if-loss-of-rights > > (Is there an error identity for this event?) > > The identity which applies here is "stream-unavailable". This is the same > identity which would be used if a subscriber had never sufficient > permissions in the first place. I don't believe we would want to return an > identity specific to when NACM when permissions have just been changed. > > OK > > > I3) sec 2.1 para 6: > > > Event records MUST NOT be delivered to a receiver in a different > > > order than they were placed onto an event stream. > > > > > > -- does this apply to subscription-state? Think not, they are not > events > > > placed in event stream. > > > > Agree that they are not on the event stream. So they do not violate this > > requirement. > > > > Additionally there is supporting text in "Section 2.7: subscription state > > notifications", including... > > > > " Instead, they are inserted (as defined in this section) within the > sequence of > > notification messages sent to a particular receiver." > > > > > Need to allow ended or suspended to be sent > > > head-of-line whenever state changes > > > > I am not sure that suspended should always be sent head-of-line. > Consider > > that implementation might want to let the existing queue of filtered > event > > records be sent if is filter complexity causing the CPU issue. That > could be > > different than if it is a bandwidth issue driving the suspension, and you > > definitely want the 'subscription-suspended' to be placed at the head of > line. > > > > > > It is up to the publisher to decide when to stop sending events on a > > subscription. > > Obviously the publisher cannot wait until the subscription is idle. > > The reason it is getting suspended is it is far from idle > > > > So also up to the publisher wrt/ what to do with any events that have not > > been delivered yet on a subscription. Could delete them or save them for > > when more bandwidth available (for example) > > Agree fully with this. Is there text required in the draft here? > > no - I do not have any text to suggest ... > > Beyond that it is up to the implementation to decide if some > un-transmitted > > queue of event records should be flushed and reprocessed based on the > > modification. I do not expect this would popular, as a replay > subscription could > > accomplish this same functional need. > > > > Agreed that an implementation can drop at any time and increment the > > appropriate counters. It will try to to do this, but no requirements > except > > maybe subscription events like 'replay-completed' cannot be dropped > > Have put a minor tweak into Section 2.7: > > [old] subscription state change notifications cannot be filtered out > > [new] subscription state change notifications cannot be dropped or > filtered out > > Not sure this is a good addition because the event might get dropped further down the stack out of the server process that sent the event. ... > > Thinking more on your point, it might be worth tweaking a couple words to > > allow for head-of-line placement of "subscription-suspended". > > > > "Subscribed event records queued for sending after the issuance of > this > > subscription state change notification may now be sent." > > > > Are you good with this suggested change? > > > > Not sure -- it needs to be clear that subscription-suspended is the > > last event sent before suspending and subscription-resumed is > > the first event sent after transition from suspended to active. > > The next event could also be subscription-terminated. > > I do think this possibility is covered in the text. For Section 2.7.4 > subscription-suspended the current text is: > > "No further notification will be sent until the subscription resumes or is > terminated." > > OK > And Section 2.7.5 subscription-resumed says": > "Subscribed event records generated after the issuance of this > subscription state change notification may now be sent." > > Based on the discussion, I can make it: > > "Subscribed event records are again permitted to be sent following this > subscription state change notification." > > Is this sufficient for you? > > old text is OK > ... > > > I4) sec 2.4.6: RPC Failures > > > -- concern about a subscription-specific error reporting system > > > must make sure protocol error reporting system is used correctly > > > > Yes. We have done our best to integrate with the embedded NETCONF and > > RESTCONF mechanisms. There is much additional information in the > transport > > drafts here. > > > > > -- The error-tag value needs to be identified for each 'reason' > identity > > > > This is done in the transport drafts. E.g., see > draft-ietf-netconf-netconf-event- > > notifications Section 7 > > > > I do not agree this is a good idea. > > Each error identity should simply state the required "error-tag" > > that is associated with the error. This is expected of protocol > operations > > that are added to NETCONF and RESTCONF. > > In draft-ietf-netconf-netconf-event-notifications, section 7, the required > "error-tag" is identified as "operation-failed". If we instead placed > that "error-tag" information in the YANG model, then we have tied the YANG > model to the RESTCONF and NETCONF transports. > > The subscribed-notifications draft contains rpc-stmts. Every other RFC with such statements specifies the error handling details for them. This document creates a new error reporting system just for 3 or 4 RPC operations, and fails to specify even the mandatory fields for the error reporting system for NETCONF and RESTCONF. > > Both NETCONF and RESTCONF use a compatible error reporting data > structure. > > The "error-tag" is used in both of them. IMO client developers do not > > want a different set of error codes for the same error conditions. > > draft-ietf-netconf-restconf-notif Section 3.3 also requires an "error-tag" > node of "operation-failed". So we used the transport drafts rather than > the YANG model to support the same error codes for the same error > conditions. > > > I agree that transport drafts could define their own error identities, > > which would document the expected error-tag there. > > > > > > > 2. "modify-subscription-stream-error-info": This MUST be returned > > > with the leaf "reason" populated if an RPC error reason has not > > > been placed elsewhere within the transport portion of a failed > > > "modify-subscription" RPC response. This MUST be sent if hints > > > > > > -- all 3 paragraphs like this; unclear what "placed elsewhere" > > > text means; not appropriate for MUST; > > > > Instead of "placed elsewhere", how about: "placed in subscription > transport > > document defined object". Would this be sufficient? > > > > No -- NETCONF and RESTCONF have well-defined error reporting. > > The server requirements for this error reporting must be documented. > > > > I agree with the following approach: > > - each operation MUST identify the error-tags that are expected for > > various error conditions (such s is done in RFC 6241) > > - the server MUST return the specified error-tags. If a condition not > explicitly > > defined then the server MUST pick the appropriate error-tag from RFC > 6241 > > - the server MAY include the specified rc:yang-data in the <error-info> > data > > structure > > - the server MUST use the appropriate rc:yang-data to report hints > > - for protocols other than NETCONF and RESTCONF, they can map error-tag > or > > ignore it, > > but the document defining the protocol operation MUST provide > > Functionally, everything you ask for is fully covered when you include > consider draft-ietf-netconf-netconf-event-notifications (section 7) and > draft-ietf-netconf-restconf-notif (section 3.3). > > My read of the issue is that you believe "error-tag" must be specified in > the YANG model. I believe that "error-tag" shouldn't be in the YANG model > because that would tie the model to a transport type. > > The RFC containing the protocol operation defined with the rpc-stmt needs to document at least the mandatory-to-implement "error-tag" field. This is a WG or IESG review issue and maybe the IESG will not care at all about it. > Any thoughts on how we might close this? If absolutely required I could > place a new comment line in the YANG model under > /* Identities for RPC and Notification errors */ > > The comment would be something like: > /* When used with NETCONF and RESTCONF RPCs: > "error-type" node to be used is "application" > "error-tag" must be "operation-failed". */ > > This seems incongruous. Just throwing it out as a suggestion. > > Usually the normative text contains the error-tag info. No other operations use a YANG module to define their own error reporting system Andy > > In any case, the -v21 wording results from the attempted balancing the WG > > requests for: > > * merging with transport protocol error mechanisms > > * WG leadership guidance to provide requirements for transport documents > > > > > Only 3 fields seem > > > to be relevant (error-tag, error-app-tag, error-info). > > > Protcol operations are expected to document server requirements > > > for these 3 fields, if applicable. Only the error-tag > > > is mandatory-to-use. > > > > Hopefully these are covered sufficiently when this document is coupled > with > > the NETCONF and RESTCONF Notif transport documents. For other > transports, > > the tags you identify about would not be applicable. > > > > > -- the error assignments are extremely specific. e.g., it is not > > > possible for <kill-subscription> to fail with an > > > 'insufficient-resources' error; > > > > This is the intent of the base specification, e.g., we don't believe a > kill- > > subscription should fail for an insufficient-resources reason. But > vendors might > > desire more specificity. As a result is certainly ok for vendor > implementations > > to add new error identities. > > > > IMO anything can fail for insufficient resources. That is very > implementation- > > specific. > > Instead of implementation specific I would call it application specific. > Right now we don't have a catch-all error-identity of 'other-error'. We > preferred that error conditions beyond the current ones listed could be > included by vendors as needed. Further deployment experience could result > in new error identities surfacing for standardization should this draft > catch on. > > > > Do not agree that scoping each > > > identity to specific RPC operations is a good idea. > > > > This level of specificity was not the author's original plans. Nor was > this level of > > specificity part of earlier draft versions up through -v08. However > members of > > the WG made it clear that such specificity was necessary for draft > progression. > > > > > -- how are errors in these parameters reported for configured > > > subscriptions when <edit-config> is the RPC that has the error? > > > How are the yang-data structs used for edit-config or commit > errors? > > > > None of these yang-data structures are specified for use with > <edit-config> > > operations. For <edit-config>, the change to a configured subscription > would > > be written to the datastore if it were semantically valid. At this > point the > > subscription enters the [evaluate] points of Figure 8. Issues from this > point out > > would be reported with a vendor specific construct such as SYSLOG. > > > > So how are hints reported for configured subscriptions? > > There is nothing in the specification which requires this. An > implementation could choose to place these in some form of SYSLOG. > ... > > > I6) sec 2.5, para 3: > > > > > > On a receiver of a > > > configured subscription, support for dynamic subscriptions is > > > optional except where replaying missed event records is required. > > > > > > -- confusing because text in 1.3: > > > Note that there is no mixing-and-matching of dynamic and > configured > > > operations on a single subscription. Specifically, a configured > > > -- clarify the receiver may have multiple subscriptions here > > > -- not clear what "except where replaying..." text means > > > > How about the following tweak: > > > > "On a receiver of a configured subscription, support for dynamic > subscriptions > > is optional. However if replaying missed event records is required for a > > configured subscription, support for dynamic subscription is highly > > recommended. In this case, a separate dynamic subscription can be > established > > to retransmit the missing event records." > > > > OK > > Change made. > > > > I7) leaf stream-xpath-filter: [multiple uses] > > > > > > The expression is evaluated in the following XPath context: > > > > > > o The set of namespace declarations is the set of prefix > > > and namespace pairs for all YANG modules implemented > > > by the server, where the prefix is the YANG module > > > name and the namespace is as defined by the > > > 'namespace' statement in the YANG module. > > > > > > -- This prefix processing is not done anywhere else in NETCONF > > > or RESTCONF. IMO a bad precedent. Only the XML prefixes > > > should be required for processing of XML encoding. YANG > > > module prefixes are not required to be unique, unlike > > > the prefix mappings in XML > > > > This text was proposed by Martin as a result of the "xpath expressions > in JSON" > > thread last October in NETMOD. > > > > I am happy to incorporate whatever text is appropriate. I was hoping > that the > > suggested text was sufficient for now. Kent has already incorporated > this as an > > issue for yang-next > > https://github.com/netmod-wg/yang-next/issues/55 > > So hopefully there is no final precedent being claimed. > > > > I do not agree that this YANG module should define a new way to encode > XPath > > into XML instance documents. This will require significant changes to > server > > implementations. YANG module prefixes are not even required to be unique > > so the set of prefixes used by the server in XML instance documents may > be > > different, > > since it must be unique. > > See next note > > > > -- NMDA allows the same module to appear in multiple module-sets > > > and different in each datastore. This text about "implemented by > > > the server" does not work for NMDA > > > > I am happy to adopt whatever text meets YANG doctor approval. Can you > > suggest? > > > > > > Remove all text about YANG prefixes and continue using XML encoding > without > > modification > > As a different YANG doctor has required the current text modification, I > believe this is a blocker. What is the process for YANG model reviews in > such a case. I am happy to accept whatever here. Any suggestions on next > steps? > > ... > > > -- there should be an example of a configurable encoding provided > > > > I am happy to enhance the definition YANG model's identity definition of > > "configurable-encoding". I could do this by adding the following > additional text > > to the description: "An example of a configurable encoding might be a new > > identity such as 'encode-cbor'. Such an identity could use > 'configurable- > > encoding' as its base. This would allow a dynamic subscription encoded > in JSON > > [RFC-8259] to request notification messages be encoded via CBOR [RFC- > > 7049]. Further details for any specific configurable encoding would be > explored > > in a transport document based on this specification." Does this meet > your ask? > > > > > > OK > > Added > > > > I11) extension subscription-state-notification { > > > > > > This statement is not for use > > > outside of this YANG module."; > > > > > > -- this text should be removed. There is no value in limiting > > > the scope of this extension. It prevents even this WG from > > > creating a module that uses the extension again. > > > > This was the subject of significant debate in the WG. The authors did > not want > > this restriction either. > > > > To be allowed to progress the document, we inserted the document. If > this > > really is mandatory-to-remove from a YANG doctor point-of-view, what is > the > > process for quick closure on this issue between WG leadership and the > YANG > > doctors? > > > > > > The YANG language makes no restrictions about exporting statements. > > I guess I missed that debate so I will just say OK and wonder what > problem > > this is supposed to solve. I guess the WG wants to give YANG Doctors more > > things to check. (This is what we called a CLR in SNMP-land ;-) > > Thanks. No action taken. > > > > I13) notification subscription-started { > > > sn:subscription-state-notification; > > > if-feature "configured"; > > > description > > > "This notification indicates that a subscription has started and > > > notifications are beginning to be sent. This notification shall > > > only be sent to receivers of a subscription; it does not > > > constitute a general-purpose notification."; > > > > > > -- 2nd sentence is confusing; all notifications are sent to > > > receivers of a subscription. last part is redundant since > > > the sn:subscription-state-notification extension is used > > > > There is no issue with removing this second sentence completely. If I > did that, > > would this address your concern? > > > > OK > > Done > > > > I14) rc:yang-data modify-subscription-stream-error-info { > > > > > > leaf filter-failure-hint { > > > type string; > > > description > > > "Information describing where and/or why a provided filter > > > was unsupportable for a subscription."; > > > } > > > > > > -- rpc-error already allows more precise error reporting > > > It uses error-tag, error-path, error-string, and error-info > extensions > > > to identify which parameters/conditions caused the RPC to be > rejected. > > > This error reporting will continue to be used, Not sure this > failure-hint > > > has any standards value. Perhaps real-use example can be added > > > > Per your thoughts on rpc-error... For NETCONF and RESTCONF, you point > to > > error structures which historically been used with those transports. Of > course > > we were looking to have all subscription hints supportable across > transports via > > a single portable YANG data structure. So the value is that a single > string > > object exists so to transport whatever the vendor thinks would be useful > as a > > hint in this case. I.e., there has been no attempt to standardize the > contents of > > this string. If operational experiences drive a desire for such > structuring, this > > could provide the basis for a new draft building off of this starting > point. > > > > I guess I do not consider NETCONF and RESTCONF "historic" quite yet. > > There are many implementations using the rpc-error reporting with no > intent > > to replace it with something else. > > > > I was just asking for an example, since I have no idea what an > implementor > > would put in this leaf. > > Here is an example from our implementation. Say you mistype an extra "\" > to an xpath filter: > /if:interfaces-state/interface[name="GigabitEthernet0/0"]/oper-status > As a result, the filter is passed to the publisher is: > /if:inte\rfaces-state/interface[name="GigabitEthernet0/0"]/oper-status > > What we would return in the failure-hint string is: > Invalid expression: offset(9) in > '/if:inte\rfaces-state/interface[name="GigabitEthernet0/0"]/oper-status' > > Eric > > > Andy > >
- [Netconf] Yangdoctors last call review of draft-i… Andy Bierman
- Re: [Netconf] Yangdoctors last call review of dra… Eric Voit (evoit)
- Re: [Netconf] Yangdoctors last call review of dra… Andy Bierman
- Re: [netconf] Yangdoctors last call review of dra… Eric Voit (evoit)
- Re: [netconf] Yangdoctors last call review of dra… Mehmet Ersue
- Re: [netconf] Yangdoctors last call review of dra… Andy Bierman
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Andy Bierman
- Re: [netconf] Yangdoctors last call review of dra… Andy Bierman
- Re: [netconf] Yangdoctors last call review of dra… Eric Voit (evoit)
- Re: [netconf] Yangdoctors last call review of dra… Andy Bierman
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Andy Bierman
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Andy Bierman
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Andy Bierman
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Martin Bjorklund
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Per Hedeland
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Per Hedeland
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)
- Re: [netconf] [yang-doctors] Yangdoctors last cal… Eric Voit (evoit)