Re: [netconf] RFC 6241 Ambiguity

"Jonathan Hansford" <jonathan@hansfords.net> Mon, 13 May 2019 10:43 UTC

Return-Path: <jonathan@hansfords.net>
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 1B67D12006F for <netconf@ietfa.amsl.com>; Mon, 13 May 2019 03:43:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.99
X-Spam-Level:
X-Spam-Status: No, score=-1.99 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=hansfords.net
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 SqhPDWckS8ae for <netconf@ietfa.amsl.com>; Mon, 13 May 2019 03:43:40 -0700 (PDT)
Received: from mail.myfast.site (mail.myfast.site [109.203.117.12]) (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 5943E120103 for <netconf@ietf.org>; Mon, 13 May 2019 03:43:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=hansfords.net; s=default; h=Content-Type:Mime-Version:Reply-To:References: In-Reply-To:Message-Id:Date:Cc:Subject:To:From:Sender: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=1eArQeDGwJtCiVNjuX/QqSo2bC9M+Da1vxkJgbJKT48=; b=g/tmxnEi2kXV/sbEcecufoYdl 1SvT5JwZ1816MZ0bUcH2YnrqU0f9DE70qUjlk0wdGnGQqwvx1k9JXA2Gf/t74KG+RqhV/DqVZ0cSB YwmPY/lGr36Ea+/8f9yWExnnxFz8MFu+qCNfHEHcPiOrjfl2eW6BoqYfXdY/V/TFL1bP3wlUzb26P n4S8R47VKZ/W765DcA0SuvNe89yJ/oFK6VqL0T65UNy/H3EYxoScZsXaGlKpD7zReILUtyATNyxGl NG5LrogLsNWtJZO0AVYdr10B2UXD7xDRvBhgCDnGzigHKED8PHt53V36I3sUWAyLFA8oED6EcGEkW /EjMOzHWQ==;
Received: from [51.52.247.166] (port=59216 helo=[172.16.3.14]) by mail.myfast.site with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.91) (envelope-from <jonathan@hansfords.net>) id 1hQ8Qj-0004vx-NR; Mon, 13 May 2019 11:43:37 +0100
From: Jonathan Hansford <jonathan@hansfords.net>
To: Andy Bierman <andy@yumaworks.com>, Kent Watsen <kent@watsen.net>
Cc: "netconf@ietf.org" <netconf@ietf.org>
Date: Mon, 13 May 2019 10:43:36 +0000
Message-Id: <eme2e51d99-6140-4142-b89f-db5e4c6e2a88@morpheus>
In-Reply-To: <CABCOCHScSp8AEjcgSd7tX-Va45y51CxK-b_hO4nd3SzW9rTUKA@mail.gmail.com>
References: <em35e87021-fa76-4888-a383-8b34e960175f@morpheus> <0100016aa75956af-70018fb1-15f8-4394-8ffd-4f4d5b2d7b3f-000000@email.amazonses.com> <CABCOCHScSp8AEjcgSd7tX-Va45y51CxK-b_hO4nd3SzW9rTUKA@mail.gmail.com>
Reply-To: Jonathan Hansford <jonathan@hansfords.net>
User-Agent: eM_Client/7.2.34959.0
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="------=_MBA581F048-1E08-4624-9CA7-0F49BE35C483"
X-Antivirus: Avast (VPS 190513-0, 13/05/2019), Outbound message
X-Antivirus-Status: Clean
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - mail.myfast.site
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - hansfords.net
X-Get-Message-Sender-Via: mail.myfast.site: authenticated_id: jonathan@hansfords.net
X-Authenticated-Sender: mail.myfast.site: jonathan@hansfords.net
X-Source:
X-Source-Args:
X-Source-Dir:
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/b_6xEv-lUOjjnPRYkSlfXITh92Y>
Subject: Re: [netconf] RFC 6241 Ambiguity
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: Mon, 13 May 2019 10:43:44 -0000

So I need to contact the RFC Editor to correct Erratum 5397, with the 
relevant text in sections 7.8 and 7.9 being changed to something like:

>7.8: "If a NETCONF server receives a <close-session> request while 
>processing a confirmed commit (Section 8.4) for that session, unless 
>the confirmed commit is a persistent confirmed commit, it MUST restore 
>the configuration to its state before the confirmed commit was issued. 
>A persistent confirmed commit MUST survive session termination."
>
>7.9: "If a NETCONF server receives a <kill-session> request while 
>processing a confirmed commit (Section 8.4) for the session to be 
>killed, unless the confirmed commit is a persistent confirmed commit, 
>it MUST restore the configuration to its state before the confirmed 
>commit was issued. A persistent confirmed commit MUST survive session 
>termination."

I also need to contact the RFC Editor to correct Erratum 3821 to change:

>If the session issuing a sequence of one or more confirmed commits is
>terminated for any reason before the confirm timeout expires, the 
>server
>MUST restore the configuration to its state before the sequence of
>confirmed commits was issued, unless the last confirmed commit also
>included a <persist> element.
>
>If the device reboots for any reason before the confirm timeout
>expires, the server MUST restore the configuration to its state
>before the sequence of confirmed commits was issued.

to something like:

>If the session issuing a sequence of one or more confirmed commits is
>terminated for any reason before the confirm timeout expires, the 
>server
>MUST restore the configuration to its state before the sequence of
>confirmed commits was issued, unless the confirmed commit is a
>persistent confirmed commit.
>
>If the device reboots for any reason before the confirm timeout
>expires, unless a persistent confirmed commit is in progress, the
>server MUST restore the configuration to its state before the
>sequence of confirmed commits was issued.
>
>  A persistent confirmed commit MUST survive session termination.
>
Are those errata OK?


On 11/05/2019 16:15:21, "Andy Bierman" <andy@yumaworks.com> wrote:

>
>
>On Sat, May 11, 2019 at 7:43 AM Kent Watsen <kent@watsen.net> wrote:
>>It seems that the "for any reason" clause should be qualified modulo 
>>the "persist" element (please file an errata report).  Note also the 
>>last paragraph in Section 8.4.1, which shows RFC 624 straddling 
>>capability versions, hence the wonky text.
>>
>>To answer your question. it is the latter: the only way to abort a 
>>persistent confirmed commit is to let the timer expire, or to use the 
>><cancel-commit> operation.
>>
>>Kent // contributor
>>
>>
>>>On May 8, 2019, at 9:33 AM, Jonathan Hansford 
>>><jonathan@hansfords.net> wrote:
>>>
>>>Hi,
>>>
>>>In RFC 6241:
>>>
>>>Section 8.4.1 states "If the session issuing the confirmed commit is 
>>>terminated for any reason before the confirm timeout expires, the 
>>>server MUST restore the configuration to its state before the 
>>>confirmed commit was issued, unless the confirmed commit also  
>>>included a <persist> element."
>>>
>>>Section 8.4.5.1 states the persist parameter makes "the confirmed 
>>>commit survive a session termination".
>>>
>>>Appendix C states the persist parameter "is used to make a confirmed 
>>>commit persistent. A persistent confirmed commit is not aborted if 
>>>the NETCONF session terminates. The only way to abort a persistent 
>>>confirmed commit is to let the timer expire, or to use the 
>>><cancel-commit> operation."
>
>>>
>>>However:
>>>
>>>Section 7.8, Erratum 5397 states "If a NETCONF server receives a 
>>><close-session> request while processing a confirmed commit (Section 
>>>8.4) for that session, regardless of whether the confirmed commit 
>>>included a <persist> element, it MUST restore the configuration to 
>>>its  state before the confirmed commit was issued."
>>>
>
>
>
>
>I do not agree with this Errata and will never implement it as part of 
>RFC 6241 conformance.
>The entire point of the "persist" mechanism is to tie the confirmed 
>commit to a client, not to a session.
>Cancelling the CC because a client sends a <close-session> (instead of 
>dropping the transport session)
>is obviously counter-productive.  Using <close-session> instead of 
>dropping the session is
>considered the best current practice.
>
>
>
>
>>>Section 7.9, Erratum 5397 states "If a NETCONF server receives a 
>>><kill-session> request while processing a confirmed commit (Section 
>>>8.4) for that session, regardless of whether the confirmed commit 
>>>included a <persist> element, it MUST restore the configuration to 
>>>its  state before the confirmed commit was issued."
>>>
>
>
>This solution (and also 7.8) directly contradict the text cited in 
>8.4.1
>
>
>>>Section 8.4.1 states "If the device reboots for any reason before the 
>>>confirm timeout expires, the server MUST restore the configuration to 
>>>its state before the confirmed commit was issued."
>>>
>>>So:
>>>
>>>Is the use of <close-session> or <kill-session>, or the device 
>>>rebooting, not considered to be the session being "terminated for any 
>>>reason"? Or is it the case that "the only way to abort a persistent 
>>>confirmed commit is to let the timer expire, or to use the 
>>><cancel-commit> operation"?
>>>
>>>Jonathan
>>>
>
>
>Andy
>
>>><https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> 
>>>Virus-free. www.avast.com 
>>><https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
>>>_______________________________________________
>>>netconf mailing list
>>>netconf@ietf.org
>>>https://www.ietf.org/mailman/listinfo/netconf
>>
>>_______________________________________________
>>netconf mailing list
>>netconf@ietf.org
>>https://www.ietf.org/mailman/listinfo/netconf

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus