Re: [Netconf] comments on draft-ietf-netconf-subscribed-notifications-12

"Eric Voit (evoit)" <evoit@cisco.com> Wed, 13 June 2018 15:36 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 199F1127148 for <netconf@ietfa.amsl.com>; Wed, 13 Jun 2018 08:36:08 -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_HIGH=-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 KmwqYSyxB7LO for <netconf@ietfa.amsl.com>; Wed, 13 Jun 2018 08:36:03 -0700 (PDT)
Received: from rcdn-iport-8.cisco.com (rcdn-iport-8.cisco.com [173.37.86.79]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CA40912785F for <netconf@ietf.org>; Wed, 13 Jun 2018 08:36:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=6706; q=dns/txt; s=iport; t=1528904163; x=1530113763; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=CZuh3+LlS5W8DSiqI4nkkqao5vup92/2oJS5tVvCZfQ=; b=NRJ9ozKFq45fNIOYBtAsQ/eBPCVvrvjcsTXDL0uqBXXENa5Nw4DC4Fn6 5i6+/nspRvITFgIOSkmkfwIhIAbb8cbcYL3guEsWh2s7wRvhb6M70G4vO P1WnQEI4Nqhpud+YWMZutlnNfC+Bn5NRhPNSQxVV3pyK21HcJI7bENVvT I=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0C8AAAFOSFb/5ldJa1dGQEBAQEBAQE?= =?us-ascii?q?BAQEBAQcBAQEBAYNIgWEoCotzjGmBf5RpgXgLhGwCgjchNBgBAgEBAQEBAQJ?= =?us-ascii?q?tKIUoAQEBAQIBOj0CBQcEAgEIDgMEAQEBDREJBzIUCQgCBAENBQiFEwiuQYh?= =?us-ascii?q?HgWiIS4FUP4QbhHoxhR4CmQoJAo5xgUeDfod3h2uJKwIREwGBJB04gVJwFYJ?= =?us-ascii?q?+giEXjhdvjhCBGgEB?=
X-IronPort-AV: E=Sophos;i="5.51,219,1526342400"; d="scan'208";a="407774972"
Received: from rcdn-core-2.cisco.com ([173.37.93.153]) by rcdn-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 13 Jun 2018 15:36:02 +0000
Received: from XCH-RTP-013.cisco.com (xch-rtp-013.cisco.com [64.101.220.153]) by rcdn-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id w5DFa27Q032664 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 13 Jun 2018 15:36:02 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-013.cisco.com (64.101.220.153) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Wed, 13 Jun 2018 11:36:01 -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; Wed, 13 Jun 2018 11:36:01 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Martin Bjorklund <mbj@tail-f.com>, "alexander.clemm@huawei.com" <alexander.clemm@huawei.com>
CC: "kwatsen@juniper.net" <kwatsen@juniper.net>, "alex@clemm.org" <alex@clemm.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [Netconf] comments on draft-ietf-netconf-subscribed-notifications-12
Thread-Index: AQHT/nTB7wTodISdV0qlE/sux4czBKRU8kawgAFinID///zC4IAAXMiA//++zTCABv5KgP//v8BQAAsePAAAAeTiAAAPiUWAAAIQEmA=
Date: Wed, 13 Jun 2018 15:36:01 +0000
Message-ID: <e61d9a8666964a6ca3a7900c71e4f4d2@XCH-RTP-013.cisco.com>
References: <b44492127969401f8b72f2e3dd67d58e@XCH-RTP-013.cisco.com> <4A685312-E065-4DF6-9BB1-BCC52947F1CA@juniper.net> <644DA50AFA8C314EA9BDDAC83BD38A2E0EB17F84@sjceml521-mbx.china.huawei.com> <20180613.090421.188030980179358538.mbj@tail-f.com>
In-Reply-To: <20180613.090421.188030980179358538.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/saVpfpyaUdHK7QdO76htKw9W37s>
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: Wed, 13 Jun 2018 15:36:09 -0000

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>.  

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.


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).

More below....

> From: Martin Bjorklund, June 13, 2018 3:04 AM
> 
> Alexander Clemm <alexander.clemm@huawei.com> wrote:
> > Two quick replies inline, <ALEX>
> > --- Alex
> > > -----Original Message-----
> > > From: Netconf [mailto:netconf-bounces@ietf.org] On Behalf Of Kent
> > > Watsen
> > > Sent: Tuesday, June 12, 2018 3:45 PM
> > > To: Eric Voit (evoit) <evoit@cisco.com>om>; Martin Bjorklund
> > > <mbj@tail-f.com>om>; alex@clemm.org
> > > Cc: netconf@ietf.org
> > > Subject: Re: [Netconf] comments on
> > > draft-ietf-netconf-subscribed-notifications-
> > > 12
> > >
> > >
> > >
> > >
> > > >> Sure, but can YP import the "Event Record" term from SN?
> > > >>
> > > >> Sure.  It imports other terms.  Alex, do you want to bring it in?
> > > >>
> >
> > <ALEX> Why should we bring it into YP?  We basically don't use the
> > term there.  We use "update record" (which we do define).  </ALEX>
> 
> Alex, see the previous emails in this thread for context.  The initial problem
> was the counter "pushed-notifications" in subscribed-notifications.  Eric
> suggested to rename it and describe it
> as:
> 
>          leaf count-sent {
>            type yang:counter64;
>            config false;
>            description
>              "The number of event records sent to the receiver.  The
>              count is initialized when a dynamic subscription is
>              established, or when a configured subscription
>              transitions to the valid state.";
> 
> The question is what this leaf really counts.  Does it count the number of
> <notification> messages sent?  The number of "event records"?  Does it include
> "update records"?

It should count the number of event records.  

The reason is driven by Martin's point below: draft-ietf-netconf-notification-messages.  With this draft, a notification message may contain more than one event record.  Also with this draft, a notification message may contain a single event record could have been sent to serve the needs of multiple subscriptions.  For these reasons, post RFC-5277, having a count the notification messages won't provide any per-receiver insight into what was missed/delivered for a particular subscription.
 
> (Does this change if we have a mechanism to bundle several event records into
> a single <notification> message, as has been proposed?)
> 
> 
> 
> > > >> Also, I think that the definition could be improved.  It currently reads:
> > > >>
> > > >>    Event record: A set of information detailing an event.
> > > >
> > > > Yes.  But the word 'event' here is itself defined as:
> > > >
> > > >   Event: An occurrence of something that may be of interest.  Examples
> > > >   include a configuration change, a fault, a change in status, crossing
> > > >   a threshold, or an external input to the system.
> > > >
> > > >Reviewers have liked separation of the event itself from the record about
> it.
> > >
> > >
> > > I'm okay with separation.  On one hand, it seems like common
> > > English, but it might be good to have it well-defined in this draft.
> > > Still it seems that the definition could be improved, maybe by contrasting it
> to an event?
> > > One is the what happened, the other a record about what happened...
> > >
> >
> 
> > <ALEX> The separation makes sense and I think is something we always
> > had in mind.  I am not clear what is needed.  We currently have "event
> > record", which is distinguished from the "event" itself, and the
> > "notification message", in addition to "event stream".  (We could
> > rename "notification message" to "event notification message", which
> > woudl become rather lengthy; we did not call it "event message" since
> > there might be notification messages that notify of
> > updates, which are different from events.)
> > In short, I am not convinced that any changes are needed; I do think
> > we have captured the right terms; but of course if you would like to
> > see alternative definition text please make a suggestion.
> 
> As Juergen noted you have "event record" and "notification message"
> defined as new terms in subscribed-notifications.  It is not clear how this
> relates to YANG's "notification" statement and RFC 6241/5277 <notification>
> message.

Hopefully the text at the beginning highlights the needed differentiation.   I can also place the above definitions of <notification> and "notification" statement into the subscribed-notifications terminology definitions if this clears things up.

> I *think* that YANG's "notification" statement defines an "event record", 

Yes

> and that your term "notification message" is the same as
> 6241/5277 "notification" (message).

Yes.   

The reason to differentiate the terms now is that when draft-ietf-netconf-notification-messages completes, the term "notification message" will be able to refer to both the RFC-5277 and the draft-ietf-netconf-notification-messages mechanisms for encapsulating event records.

> Also, I think that an "update record" is represented as one of "push-update"
> and "push-change-update" YANG notifications.  So aren't these "event
> records"?  I.e., an "update record" is a special case of an "event record"?

Yes.

Eric

> 
> /martin