Re: [Netconf] yang-push-17 on-change subscriptions
Martin Bjorklund <mbj@tail-f.com> Fri, 17 August 2018 14:08 UTC
Return-Path: <mbj@tail-f.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 CC60E127B92 for <netconf@ietfa.amsl.com>; Fri, 17 Aug 2018 07:08:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 7TErbpRjVsCv for <netconf@ietfa.amsl.com>; Fri, 17 Aug 2018 07:08:09 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id EA816126DBF for <netconf@ietf.org>; Fri, 17 Aug 2018 07:08:08 -0700 (PDT)
Received: from localhost (h-80-27.A165.priv.bahnhof.se [212.85.80.27]) by mail.tail-f.com (Postfix) with ESMTPSA id E53931AE018A; Fri, 17 Aug 2018 16:08:06 +0200 (CEST)
Date: Fri, 17 Aug 2018 16:08:06 +0200
Message-Id: <20180817.160806.1319182991643096746.mbj@tail-f.com>
To: evoit@cisco.com
Cc: andy@yumaworks.com, netconf@ietf.org
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <6e228976514f4e4c9e5fb7b3ff36a0ed@XCH-RTP-013.cisco.com>
References: <80ca22045b7045fe9b72b3b90ac2610b@XCH-RTP-013.cisco.com> <20180817.094825.1996509847038799743.mbj@tail-f.com> <6e228976514f4e4c9e5fb7b3ff36a0ed@XCH-RTP-013.cisco.com>
X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset="utf-8"
Content-Transfer-Encoding: base64
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/FkNZ9o3sXvmWTyVfHB992Z8Y2_Q>
Subject: Re: [Netconf] yang-push-17 on-change subscriptions
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.27
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, 17 Aug 2018 14:08:11 -0000
Hi, "Eric Voit (evoit)" <evoit@cisco.com> wrote: > > From: Martin Bjorklund, August 17, 2018 3:48 AM > > > > Hi, > > > > "Eric Voit \(evoit\)" <evoit=40cisco.com@dmarc.ietf.org> wrote: > > > A dampening period is optional > > > > How do you mean? There is no if-feature on the "dampening-period", > > and no > > text indicating that a server can reject a request with a > > "dampening-period". > > AFAICT from the draft, the dampening feature must be implemented by a > > server. > > While the "dampening-period" object must be supported by the RPC, that > doesn't mean the platform needs to implement subscription dampening. > This can be accomplished by a dampening period of "0" being returned > as a hint. (Per section 3.2: "Such hints include ... acceptable > dampening periods...". ) Using just the hint for conveying this info > rather than the hint plus advertisement of an option feature > "dampening" simplifies the interface. > > If you are ok with it, Alex could tweak the following text in the > draft: > > (1) For the definition of leaf 'period-hint' in the YANG model: > > OLD: "Returned when the requested time period is too short. This hint > can assert a viable period for either a periodic push cadence or an > on-change dampening interval."; > > NEW: "Returned when the requested time period cannot be > supported. This hint can assert a viable period for either a periodic > push cadence or an on-change dampening interval. In the case of > dampening not being supported, a 'period-hint' of '0' must be > returned. "; Ok. The definition of the "period-unsupported" identity should also be updated accordingly. BTW, I just realized that the yang-data structures have different names in the module and the text. For example, in the module you have "establish-subscription-datastore-error-info" but the text uses "establish-subscription-error-datastore" (in some places). > (2) And in Section 3.1: > > OLD: In order to protect against that, a dampening period MAY be used > to specify the interval which must pass before successive update > records for the same subscription are generated for a receiver. > > NEW: In order to protect against that, on-change dampening MAY be > supported. Where supported, a non-zero dampening period will specify > the interval which must pass before successive update records for the > same subscription are generated for a receiver. I suggest you keep the OLD text, but also add a sentence that explains that the server MAY not support the given dampening period, and that the period-hint can be used by the server to indicate an acceptable dampening period (which may be 0). > If you require more than these tweaks, Alex could also make an > optional dampening feature. But this seems to me to be unnecessarily > heavyweight. I agree. /martin > > Eric > > > /martin > > > > > > (based on your earlier comments). And > > > the dampening period is per subscription rather than per object. > > > Cisco doesn’t have code at this time for dampened changes. > > > > > > Eric > > > > > > From: Netconf <netconf-bounces@ietf.org> On Behalf Of Andy Bierman > > > Sent: Thursday, August 16, 2018 1:59 PM > > > To: Netconf <netconf@ietf.org> > > > Subject: [Netconf] yang-push-17 on-change subscriptions > > > > > > Hi, > > > > > > > > > I would like to know if anybody has implemented on-change > > > subscriptions yet. > > > The implementation requirements seem very complex when you consider > > > that every single data node instance in the subscription has its own > > > dampening timer. > > > > > > Edits are not reported sequentially as they occur. > > > Instead every node is tracked and the change may only reported after > > > the dampening period expires. It seems quite possible that nodes can > > > interact (e.g., leafrefs) so that reporting edit Y can depend on > > > previous edit X, which cannot be reported until the end of its > > > dampening period, in the future. So edit Y will be reported before X, > > > and the patch will fail to validate, because the current state of X is > > > incorrect on the receiver.. > > > > > > All the state tracking on the server is expensive to implement, and I > > > am not really sure it actually helps the client that much. > > > > > > > > > Andy > > >
- [Netconf] yang-push-17 on-change subscriptions Andy Bierman
- Re: [Netconf] yang-push-17 on-change subscriptions Martin Bjorklund
- Re: [Netconf] yang-push-17 on-change subscriptions Andy Bierman
- Re: [Netconf] yang-push-17 on-change subscriptions Eric Voit (evoit)
- Re: [Netconf] yang-push-17 on-change subscriptions Andy Bierman
- Re: [Netconf] yang-push-17 on-change subscriptions Martin Bjorklund
- Re: [Netconf] yang-push-17 on-change subscriptions Eric Voit (evoit)
- Re: [Netconf] yang-push-17 on-change subscriptions Martin Bjorklund
- Re: [Netconf] yang-push-17 on-change subscriptions Andy Bierman
- Re: [Netconf] yang-push-17 on-change subscriptions Eric Voit (evoit)