Re: [Netconf] Subscription with Replay

Yves Beauville <yves.beauville@nokia.com> Tue, 20 December 2016 07:28 UTC

Return-Path: <yves.beauville@nokia.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 B1449129CFF for <netconf@ietfa.amsl.com>; Mon, 19 Dec 2016 23:28:23 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.92
X-Spam-Level:
X-Spam-Status: No, score=-6.92 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-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 C2orY_-IW35f for <netconf@ietfa.amsl.com>; Mon, 19 Dec 2016 23:28:22 -0800 (PST)
Received: from smtp-fr.alcatel-lucent.com (fr-hpida-esg-02.alcatel-lucent.com [135.245.210.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9FA6D129CFB for <netconf@ietf.org>; Mon, 19 Dec 2016 23:28:09 -0800 (PST)
Received: from fr712umx4.dmz.alcatel-lucent.com (unknown [135.245.210.45]) by Websense Email Security Gateway with ESMTPS id 2B74D7B44AB13; Tue, 20 Dec 2016 07:28:06 +0000 (GMT)
Received: from fr712usmtp2.zeu.alcatel-lucent.com (fr712usmtp2.zeu.alcatel-lucent.com [135.239.2.42]) by fr712umx4.dmz.alcatel-lucent.com (GMO-o) with ESMTP id uBK7S6dp026840 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 20 Dec 2016 07:28:07 GMT
Received: from FR712WXCHHUB03.zeu.alcatel-lucent.com (fr712wxchhub03.zeu.alcatel-lucent.com [135.239.2.74]) by fr712usmtp2.zeu.alcatel-lucent.com (GMO) with ESMTP id uBK7RwSe032383 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Tue, 20 Dec 2016 07:28:05 GMT
Received: from [138.203.136.12] (135.239.27.40) by FR712WXCHHUB03.zeu.alcatel-lucent.com (135.239.2.74) with Microsoft SMTP Server (TLS) id 14.3.301.0; Tue, 20 Dec 2016 08:28:03 +0100
To: "Eric Voit (evoit)" <evoit@cisco.com>
References: <3004A47FF33FC14B9680465CD90772CC47CD6215@FR711WXCHMBA08.zeu.alcatel-lucent.com> <05c52fa2cd6045e5b682edfb31bcf39b@XCH-RTP-013.cisco.com>
From: Yves Beauville <yves.beauville@nokia.com>
Message-ID: <55c8e5bb-1893-38c6-56c5-e109dd7d493a@nokia.com>
Date: Tue, 20 Dec 2016 08:28:02 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1
MIME-Version: 1.0
In-Reply-To: <05c52fa2cd6045e5b682edfb31bcf39b@XCH-RTP-013.cisco.com>
Content-Type: multipart/alternative; boundary="------------269D194785B57AD0B9D889FB"
X-Originating-IP: [135.239.27.40]
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/c7pL3PRLdYjyiRbLcVYnv4rlzXc>
Cc: "netconf@ietf.org" <netconf@ietf.org>
Subject: Re: [Netconf] Subscription with Replay
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.17
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: Tue, 20 Dec 2016 07:28:23 -0000

Hi Eric,

I am definitely interested in a mechanism for subscription negotiation.

Note that in my use case, I do not want to trigger a replay if the 
server cannot perform it from the specified startTime. I expect that 
subscription negotiation could cover this case.

Yves

On 12/19/2016 4:51 PM, Eric Voit (evoit) wrote:
>
> Hi Yves,
>
> In 5277bis we have discussed using subscription negotiation for items 
> like this.   For negotiation to work, we would send back a replay 
> start time which would be acceptable to the publisher as part of the 
> error response.   A publisher can determine the earliest possible 
> start time as you describe below.
>
> If you (and others) are ok with this mechanism, we can add details 
> within a specific replay section of 5277bis.
>
>
> Eric
>
> *From:*Netconf, December 19, 2016 10:03 AM
>
> Hi All,
>
> I have a concern with RFC5277 that I do not see addressed in the scope 
> of RFC5277bis. I would appreciate feedback whether the following point 
> is valid or not.
>
> I have the following use case for notification replay
> * A NETCONF client caches a subset of the server data, E.G. a list of 
> alarms
> * The NETCONF client uses notifications to keep its cache up-to-date 
> with the server
> * The NETCONF client uses notification replay to re-synchronize its 
> cache after a client/server disconnection
> * In order to use notification replay, the client also caches the 
> time-stamp of the last notification received from the server 
> (lastNotificationTime)
>
> The following re-synchronization scenario is used:
>
>   Step 1. The client sends a <get> on the stream for 
> replayLogCreationTime and replayLogAgedTime. The client uses 
> lastNotificationTime, replayLogCreationTime and replayLogAgedTime to 
> assess whether replay is possible.
>
>   If replay is not possible, the client gets part of the YANG data 
> tree from the server to re-synchronize its cache, E.G. a list of 
> alarms, else, step 2 is played.
>
>   Step 2. The client sends <create-subscription> on the stream with 
> startTime=lastNotificationTime. The client processes re-played 
> notifications to re-synchronize its cache
>
> Open Point: between steps 1. & 2., new notifications may occur in the 
> server and they may cause the stream to no longer be capable of 
> replaying notifications since the last received notification.
>
> Creating the subscription will succeed as specified in the RFC: If the 
> <startTime> specified is earlier than the log can support, the replay 
> will begin with the earliest available notification
>
> Because of the above, the client will not be aware that notifications 
> were lost.
>
> Does RFC5277 provides a solution to overcome this issue? If not, 
> should it provide means to let the client control the behavior of the 
> create-subscription RPC when the server is not capable of replaying 
> notifications since the startTime? By delegating to the server the 
> responsibility to assess if the stream log is sufficient to allow 
> replay, it could address my open point.
>
> Regards,
> Yves Beauville
>