Re: [Netconf] comments on draft-ietf-netconf-subscribed-notifications-12
"Eric Voit (evoit)" <evoit@cisco.com> Fri, 15 June 2018 13:25 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 5E4B7130E9F for <netconf@ietfa.amsl.com>; Fri, 15 Jun 2018 06:25:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.511
X-Spam-Level:
X-Spam-Status: No, score=-14.511 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-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 M2ldC5MJungE for <netconf@ietfa.amsl.com>; Fri, 15 Jun 2018 06:24:58 -0700 (PDT)
Received: from alln-iport-6.cisco.com (alln-iport-6.cisco.com [173.37.142.93]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6F1B1130DE0 for <netconf@ietf.org>; Fri, 15 Jun 2018 06:24:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=13797; q=dns/txt; s=iport; t=1529069098; x=1530278698; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=B/iCoNYXugq5xtWtUy9ptraAbwShhhoKqQV2ajmhVJc=; b=elBbuARbajL+6qCJlqhJksvm3jT9gyribvhEnzhAImBB97pg9WhYn1q1 LeY+ZmxjgVYPN+ZJuYjwPR/Lk9zDR2R0g09/GCZzC8WysVi/3DbFNrTvI eJsq6nN5aqDXlrhlggiGROcvvFh7jFp7ka0TjB5F0RJt7eNcg6fJbkjRI k=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0CcAAAfvSNb/5ldJa1ZAxkBAQEBAQEBAQEBAQEHAQEBAQGDSGJ/KAqLc4xRgX+UbxSBZAslhEcCgk4hNBgBAgEBAQEBAQJtHAyFKAEBAQMBOjgFAgUJAgIBCA4CBQMNERAbFyUCBAENBQiDHIF3CA+rT4hGgWMFBYhHgVQ/gQ+DDIMTAgECgSoBDAYBBwI3JoUPApkOCQKFd4kAgUeLeYdugh+HDQIREwGBJB04YXFwFYJ+hjCEYYU+b44SDheBCIEaAQE
X-IronPort-AV: E=Sophos;i="5.51,227,1526342400"; d="scan'208";a="129507033"
Received: from rcdn-core-2.cisco.com ([173.37.93.153]) by alln-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Jun 2018 13:24:57 +0000
Received: from XCH-RTP-015.cisco.com (xch-rtp-015.cisco.com [64.101.220.155]) by rcdn-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id w5FDOuZ0028853 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Fri, 15 Jun 2018 13:24:57 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-015.cisco.com (64.101.220.155) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Fri, 15 Jun 2018 09:24:56 -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.1320.000; Fri, 15 Jun 2018 09:24:56 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Martin Bjorklund <mbj@tail-f.com>, "Zhengguangying (Walker) (zhengguangying@huawei.com)" <zhengguangying@huawei.com>
CC: "alexander.clemm@huawei.com" <alexander.clemm@huawei.com>, "alex@clemm.org" <alex@clemm.org>, "j.schoenwaelder@jacobs-university.de" <j.schoenwaelder@jacobs-university.de>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [Netconf] comments on draft-ietf-netconf-subscribed-notifications-12
Thread-Index: AQHT/nTB7wTodISdV0qlE/sux4czBKRU8kawgAFinID///zC4IAAXMiA//++zTCABv5KgP//v8BQAAsePAAAAeTiAAAPiUWAAAIQEmAAKpK66wAP4zmQAA4QCIAAB3LtEAAWODKAAAD1gWA=
Date: Fri, 15 Jun 2018 13:24:56 +0000
Message-ID: <15c781a0e9f2411abdffc9fc409db8c9@XCH-RTP-013.cisco.com>
References: <f6f66d0c0a444f2bb0fc770082450037@XCH-RTP-013.cisco.com> <20180614.203959.786029239464099510.mbj@tail-f.com> <25128264f24c483ab55bd92bb6d70dd7@XCH-RTP-013.cisco.com> <20180615.104929.1328233118054958131.mbj@tail-f.com>
In-Reply-To: <20180615.104929.1328233118054958131.mbj@tail-f.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.228]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/1Ja4ri_c9ffqR7SMLqGqylLVU84>
Subject: Re: [Netconf] comments on draft-ietf-netconf-subscribed-notifications-12
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.26
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: Fri, 15 Jun 2018 13:25:01 -0000
> From: Martin Bjorklund, June 15, 2018 4:49 AM > > "Eric Voit (evoit)" <evoit@cisco.com> wrote: > > > From: Martin Bjorklund, June 14, 2018 2:40 PM > > > > > > "Eric Voit (evoit)" <evoit@cisco.com> wrote: > > > > > From: Martin Bjorklund, June 14, 2018 4:22 AM > > > > > > > > > > Hi, > > > > > > > > > > Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> > wrote: > > > > > > On Wed, Jun 13, 2018 at 03:36:01PM +0000, Eric Voit (evoit) wrote: > > > > > > > Each of the terms used are different. While they all are > > > > > > > defined in the first > > > > > document they are used, let me paraphrase the meanings of the > > > > > definitions... > > > > > > > > > > > > > > Event - something that happened > > > > > > > > > > > > > > Event record - the recorded details of a single event > > > > > > > > > > > > > > Update record - one or more datastore node updates > > > > > > > > > > > > > > <notification> - a structure defined in RFC5277 which is as > > > > > > > a wrapper which > > > > > contains an event record. A <notification> can exist without > > > > > any active subscription. > > > > > > > > > > > > > > "notification" statement - a structure defined in RFC-7950 > > > > > > > section > > > > > > > 7.16 > > > > > which allows the definition of event record types specific to a > > > > > YANG module. > > > > > The results of the a YANG "notification" statement are encoded > > > > > in a <notification>. > > > > > > > > > > > > Here is where I am getting lost. The RFC 7950 notification > > > > > > statement (its not a structure btw) does define the content of > > > > > > a > > > notification. > > > > > > And notification used to be defined in RFC 6241 as a > > > > > > "server-initiated message indicating that a certain event has > > > > > > been recognized by the server." Your notion of an event record > > > > > > may come from the RFC 5277 format that adds an eventTime etc. > > > > > > but the relationship of what is a YANG defined notification > > > > > > and how it related to your event record and the <notification> > > > > > > structure is still > > > unclear. > > > > > > > > > > I don't think we should align terminology with 5277. More > > > > > important is to align with the current set of documents; 7950 and 6241. > > > > > > > > Exactly. > > > > > > > > Note that there was no terms imported from 5277. > > > > Subscribed-notifications does define an umbrella term > > > > "notification message", and uses Section 2.6 to make the minimal > > > > connection necessary to show that an RFC-5277 <notification> is a > > > > valid "notification message". BTW: We had text in earlier > > > > versions of subscribed-notifications stating the need to support > > > > future types of "notification messages" such as those defined in > > > > draft-ietf-netconf-notification-messages. However reviewers asked > > > > these evolving references to be removed. > > > > > > > > We do have the option of importing terms from 6241 into the > > > > NETCONF-notif document. This would be the right place to do it > > > > because in the subscribed-notifications document we want to limit > > > > any introduction of NETCONF dependencies. (Maybe NETCONF-notif > > > > adds text to say that a "RFC6241 client" maps to subscriber, and > > > > "RFC6241 server" maps to publisher?) > > > > > > 8342 defines the terms "client" and "server" in a transport-agnostic > > > way. I think we should try to use these terms in new documents, > > > where applicable. > > > In this document, the term "subscriber" is a special "client". > > > > Agreed. Terminology section updated per the last email. > > > > > I am not sure that a "publisher" is always a "server"; this needs to > > > be decided. > > > > I think that within YANG-push, a publisher is a special RFC-8342 > > "server". Perhaps what we could add to YANG push in the terminology a > > sentence which says "In this document, the term publisher also > > includes the role of RFC-8342 server." > > Can we first agree on the basic terminology in subscribed-notifications? > > First question: are server and publisher potentially different entites or not? Yes. Here is my reading: (a) A publisher sending YANG formatted notifications will be an RFC-8342 server. (b) A publisher sending non YANG formatted notifications (e.g., XSD) will not be an RFC-8342 server. (c) An RFC-8342 server might not be a publisher. (d) An RFC-8342 server that supports at least one YANG model using the notification statement, and which also supports subscribed-notifications will be a publisher. > Looking at restconf-notif, it seems to me that the publisher is an > HTTP2 client, i.e., a different entity than the RESTCONF server. For configured subscriptions, there is no RESTCONF. The publisher is just an HTTP2 client. For dynamic subscriptions, the publisher is both a RESTCONF server and HTTP2 client. (Note: this is the closest IETF match to what GRPC might be able to transport that I can see.) > Is this correct: > > NETCONF: > subscriber is a NETCONF client > publisher is a NETCONF server > receiver is a NETCONF client Yes > RESTCONF > > subscriber is a RESTCONF client > (NOTE 1) > publisher is a HTTP2 client > receiver is a HTTP2 server Yes Also note that Andy also wants HTTP1.1 support for dynamic subscriptions. And while this is in Section 3.5 of document, personally I don't think it worth inclusion. This is a debate we should have for that draft. > UDP > > subscriber is a NETCONF/RESTCONF client > publisher is a UDP client > receiver is a UDP server Walker, can you comment on this? It hits on the terminology diagram discussion over the last few days. > NOTE 1: the RESTCONF server is missing from this picture. It doesn't have a > special term... > > > I assume this work is not applicable to CoMI? It is applicable to CoMI. See: https://tools.ietf.org/id/draft-birkholz-yang-push-coap-problemstatement-00.html Eric > /martin > > > > However my belief is that we shouldn't do a global cut-and-paste of > > "publisher" with some new term for this intersection to use throughout > > the document. This could end up being confusing. For example, if we > > define a new term like "YANG-push publisher" a reader of the YANG > > model would need to jump back and forth between the definitions of > > "publisher" and "YANG-push publisher" knowing that both are equally > > valid in this context. > > > > > > > If subscribed-notifications is transport-independent, it should > > > > > probably not talk too much about <notifcation> etc; this should > > > > > go into the transport docs. > > > > > > > > In general, this is what is done. In subscribed-notifications, > > > > the only place <notification> is mentioned at all is section 2.6. > > > > If necessary, we could move this section to NETCONF-notif, but > > > > that would leave no transport independent framing for the > > > > notifications. I guess it is possible to live without that, but > > > > it would leave the subscribed-notifications feeling incomplete. > > > > > > If subscribed-notifications is transport independent, it should not > > > have the NETCONF-specific text in 2.6. > > > > RESTCONF also refers to RFC-5277's <notification>. See section 6.4. > > So there is precedent and adoption for reuse of the transport element > > beyond NETCONF. > > > > So while pulling this section out and placing it within NETCONF-notif > > is possible, it would mean either replicating this information > > RESTCONF-notif, or forcing RESTCONF-notif to await the completion of > > draft-ietf-netconf-notification-messages. > > > > > 2.6 also says: > > > > > > In all cases, a single transport session MUST > > > be capable of supporting the intermixing of RPCs and notifications > > > from different subscriptions. > > > > > > This applies to NETCONF, but not for the UDP transport, and I > > > suspect not for the HTTP transport either? > > > > Agreed. This statement is now removed. > > > > > > I suspect a similar > > > > thought process drove the inclusion of <notification> within > > > > RFC-6020 and then RFC-7950. > > > > > > No; for various reasons YANG was initially positioned as a data > > > modelling language for NETCONF only. Hence all text about how to > > > map YANG to NETCONF and XML. > > > > > > > > 7950 says that the "notification" statement defines a notification. > > > > > As Juergen pointed out this term is not defined in the > > > > > terminology section, but nevertheless the term is used. > > > > > > > > > > Does the WG now want to introduce a new term for what the > > > > > "notification" > > > > > statement defines? > > > > > > > > It certainly might make sense to have a future update of RFC-7950 > > > > with something like this. I spend a bit of time trying to > > > > understand the connection of YANG notification statement with > > > > <notification>. Having this be better defined would be helpful. > > > > > > > > > It seems to me that the term "event record" is being proposed > > > > > for this. > > > > > > > > An event record is not necessarily a YANG notification, as the > > > > event record's payload might not be driven by the result of a YANG > > > > statement. > > > > > > I don't get this. Can you give an example of when an event record > > > is not defined as a YANG "notification"? > > > > Another way to put this is that the event record within the > > <notification> might not be encoding YANG data. For examples, all the > > <notification> within RFC5277 were defined before the availability of > > YANG. > > > > > > > The answer to this question will have a big impact on the rest > > > > > of the terminology. > > > > > > > > As event record has a larger scope than what can come from a YANG > > > > notification statement, my suggestion would be for the revision of > > > > RFC-7950 to import "event record", and then specify a new subtype > > > > term (maybe "YANG event record"?). If that term works, a YANG > > > > event record could then be an event record where the contents are > > > > populated by the results of the YANG notification statement. > > > > > > > > > > > Notification message - a message intended for a specific > > > > > > > subscription > > > > > receiver which includes one or more <notification>. A > > > > > notification message will have undergone any security/content > > > > > filtering on embedded <notification> as appropriate for that receiver. > > > > > > > > > > > > So how does this fit Figure 1 of RFC 6241? This figure > > > > > > indicates that <notification> is a message as seen from the messages > layer. > > > > > > You are saying a notification message is something else that > > > > > > includes one or more <notification>s. Yes, I know that the > > > > > > diagram in RFC 5277 is different but the diagram in RFC 6241 is the > newer one. > > > > > > > > > > This confuses me as well. > > > > > > > > The requirement for the bundling of many events is being driven by > > > > large data center telemetry. It is unclear at this point whether > > > > NETCONF will be a transport used in this environment. > > > > > > > > If NETCONF does care about this environment, and does want to > > > > support something like draft-ietf-netconf-notification-messages, I > > > > do think tweaks to RFC-6241 will be needed. > > > > > > Yes, somehow. > > > > Ok > > > > Eric > > > > > > For example what is the definition of <notification> within 6241, > > > > Figure 1 (right now point RFC-5277 isn't explicitly mentioned.). > > > > Must this figure only be interpreted as a RFC 5277 <notification>? > > > > Can the figure also mean a > > > > draft-ietf-netconf-notification-messages "message"? > > > > > > RFC 6241 says that <notification> is defined in RFC 5277. (ok, > > > there's an error in there, and it points to 5717, but there's an > > > errata for that). > > > > > > > > How much of this do we have to define in this document, and how > > > > > much should go into the transport docs? > > > > > > > > Beyond what I describe above, impacts would be to new/updated > > > > transport drafts. Plus an update to subscribed-notifications > > > > section > > > > 2.6 to indicate that a new transport independent <notification> > > > > construct exists. > > > > > > Ok. > > > > > > > > > /martin > > > > > > > > > > > > > > Eric > > > > > > > > > /martin > > > > > > > > > > > > > > > > > Per the discussion below, I see an update record being a > > > > > > > specialized type of > > > > > event record. For YANG push, the 'event' is driven by the > > > > > update > > > > > trigger: i.e., > > > > > either the expiration of a periodic timer (for periodic > > > > > subscriptions), or a change to the datastore (on-change > > > > > subscription). > > > > > > > > > > > > > > > > > > > I am missing a definition what an Update record is. It is > > > > > > surely not in this email. Anyway, if there are changes to > > > > > > architectural concepts, it would be nice to find them in a > > > > > > coherent well explained > > > section. > > > > > > > > > > > > /js > > > > > > > > > > > > -- > > > > > > Juergen Schoenwaelder Jacobs University Bremen gGmbH > > > > > > Phone: +49 421 200 3587 Campus Ring 1 | 28759 Bremen | > Germany > > > > > > Fax: +49 421 200 3103 <https://www.jacobs-university.de/> > > > > > > > > > > > >
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Tianran Zhou
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Tianran Zhou
- Re: [Netconf] comments on draft-ietf-netconf-subs… Alexander Clemm
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Kent Watsen
- Re: [Netconf] comments on draft-ietf-netconf-subs… Andy Bierman
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Kent Watsen
- Re: [Netconf] comments on draft-ietf-netconf-subs… Kent Watsen
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Juergen Schoenwaelder
- Re: [Netconf] comments on draft-ietf-netconf-subs… Henk Birkholz
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Juergen Schoenwaelder
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Juergen Schoenwaelder
- Re: [Netconf] comments on draft-ietf-netconf-subs… Alexander Clemm
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Juergen Schoenwaelder
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Juergen Schoenwaelder
- Re: [Netconf] comments on draft-ietf-netconf-subs… Alexander Clemm
- Re: [Netconf] comments on draft-ietf-netconf-subs… Kent Watsen
- [Netconf] comments on draft-ietf-netconf-subscrib… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)
- Re: [Netconf] comments on draft-ietf-netconf-subs… Martin Bjorklund
- Re: [Netconf] comments on draft-ietf-netconf-subs… Eric Voit (evoit)