Re: [Netconf] [Technical Errata Reported] RFC6241 (3821)

Jonathan Hansford <Jonathan@hansfords.net> Thu, 12 December 2013 12:26 UTC

Return-Path: <jonathan@hansfords.net>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CF8661ACC88 for <netconf@ietfa.amsl.com>; Thu, 12 Dec 2013 04:26:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
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 ey37aSugaSPv for <netconf@ietfa.amsl.com>; Thu, 12 Dec 2013 04:26:45 -0800 (PST)
Received: from avasout04.plus.net (avasout04.plus.net [212.159.14.19]) by ietfa.amsl.com (Postfix) with ESMTP id 722B51AC85E for <netconf@ietf.org>; Thu, 12 Dec 2013 04:26:44 -0800 (PST)
Received: from webmail.plus.net ([84.93.237.98]) by avasout04 with smtp id 0cSb1n004283uBY01cScln; Thu, 12 Dec 2013 12:26:37 +0000
X-CM-Score: 0.00
X-CNFS-Analysis: v=2.1 cv=C6LQl2/+ c=1 sm=1 tr=0 a=BJaFPv9AyABFDM2hXLRoEA==:117 a=MEK23cO9Z3nTrtfM1ievvA==:17 a=0Bzu9jTXAAAA:8 a=dYCPD3cKDi0A:10 a=OZAIM3IXDPUA:10 a=0B8HqoTn75oA:10 a=lxldWUwtbAkA:10 a=6bkCdLdQAAAA:8 a=f0uUZFObAAAA:8 a=U1ZSPVn_UXUA:10 a=EVJldYyK298S8oRfLc4A:9 a=QEXdDO2ut3YA:10 a=1rgnPY4EEFsA:10 a=vpWXxfwkl_5LFXiwmZkA:9 a=7CNTHFcVIAk7eBje:21 a=_W_S_7VecoQA:10
X-AUTH: hansfords+us:2500
Received: from host-212-159-134-100.static.as13285.net ([212.159.134.100]) by webmail.plus.net with HTTP (HTTP/1.1 POST); Thu, 12 Dec 2013 12:26:35 +0000
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="=_84704754319ccb67f2e2e5e7310f3a54"
Date: Thu, 12 Dec 2013 12:26:35 +0000
From: Jonathan Hansford <Jonathan@hansfords.net>
To: Andy Bierman <andy@yumaworks.com>
In-Reply-To: <CABCOCHQCayT6UXuh_k9FSZH4iRCoPP7RoBwar1RKAFVM-3T0SQ@mail.gmail.com>
References: <52A62972.4010001@bwijnen.net> <20131210.132819.2303764306420511964.mbj@tail-f.com> <52A7244A.4090006@bwijnen.net> <20131210.153651.1182516105923318005.mbj@tail-f.com> <CABCOCHQfbsz8AHY0SRs+TOcmARenvTQ2Nn_JtAkynexxh-wozw@mail.gmail.com> <cb13626ae792344d299ac437a00c906b@imap.plus.net> <CABCOCHS4BSR=46xcnWx02DQtXm6rtbJ69vHXwO9gReOPrist-g@mail.gmail.com> <7de2779d935aae627d3c3b030466b1dc@imap.plus.net> <CABCOCHQCayT6UXuh_k9FSZH4iRCoPP7RoBwar1RKAFVM-3T0SQ@mail.gmail.com>
Message-ID: <80d82e162c729b696be4ddd23dc624d2@imap.plus.net>
X-Sender: Jonathan@hansfords.net
User-Agent: Roundcube Webmail/0.7.4
X-Originating-IP: [212.159.134.100]
Cc: Rob Enns <rob.enns@gmail.com>, joel jaeggli <joelja@bogus.com>, Netconf <netconf@ietf.org>
Subject: Re: [Netconf] [Technical Errata Reported] RFC6241 (3821)
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Thu, 12 Dec 2013 12:26:49 -0000

 

On 2013-12-10 17:05, Andy Bierman wrote: 

> On Tue, Dec 10, 2013 at
8:26 AM, Jonathan Hansford <Jonathan@hansfords.net [2]> wrote:
> 
>> On
2013-12-10 16:15, Andy Bierman wrote: 
>> 
>>> On Tue, Dec 10, 2013 at
8:05 AM, Jonathan Hansford <Jonathan@hansfords.net [1]> wrote:
>>> 
>>>>
On 2013-12-10 15:59, Andy Bierman wrote: 
>>>> 
>>>>> Hi, 
>>>>> I don't
think these 3 reports are corrections. 
>>>>> They are editorial changes
to the text. 
>>>>> I don't agree that the new terminology added
"sequence of confirmed commits" 
>>>>> is correct. There is just 1
netconf-confirmed-commit notification for start & complete 
>>>>> sent
out no matter how how many times the procedure is extended. 
>>>>>

>>>>> If the procedure ends with a cancel or timeout, there is only 1
original commit 
>>>>> that is restored. It is incorrect to think of
this procedure as a series of 
>>>>> confirmed commits. A commit that
extends the procedure is not treated 
>>>>> the same as the commit that
starts the procedure.
>>>> 
>>>> Are you saying that the initial commit
of the sequence (the confirmed commit?) is restored should the procedure
be cancelled or timeout? Surely the commit that is restored is the one
that preceded the confirmed commit.
>>> 
>>> The confirmed commit is the
first <commit> that includes a <confirmed> parameter. 
>>> The 2nd - Nth
<commit> are extending the first commit operation. The server is still

>>> obligated to revert the running config for the first commit (if it
is canceled or timed out). 
>>> This obligation is not removed because
the commit is extended. It is only removed 
>>> if a confirming commit
is received.
>> 
>> Andy, 
>> I'm not sure whether we agreeing or not.
Section 8.4.1 of RFC6241 (2nd paragraph) talks about 'a follow-up
confirmed <commit> operation'. Are you saying that that second
'confirmed <commit>' (i.e. a <commit> with the <confirmed> parameter) is
not a "confirmed commit"? And when you say 'the server is obligated to
revert the running config for the first commit' do you mean revert to
the state prior to that first confirmed <commit>?
> 
> sec. 8.4.1, para
2: 
> 
> The confirming commit is a <commit> operation
> without the
<confirmed> parameter. 
> 
> The 2nd commit with a <confirmed> parameter
extends the confirmed-commit procedure. 
> Any cancel or complete
applies to this commit. If canceled, then the changes made for the 
>
2nd commit are going to be undone. An extension commit is not a
confirming commit. 
> A cancel/timeout causes the config to revert to
its state before the first confirmed commit 
> operation. 
> 
>>
Jonathan
> 
> Andy

Andy, 
What I think you seem to be stating here is
that there are three types of commit (and possibly, by extension, four):


 	* "Confirmed commit" - the first successful commit with a
<confirmed> parameter after a successful commit without a <confirmed>
parameter
 	* "Extension commit" - any commit with a <confirmed>
parameter after a "confirmed commit" and before any successful
"confirming commit"
 	* "Confirming commit" - any commit without a
<confirmed> parameter after a "confirmed commit" and before any other
successful "confirming commit"
 	* "Standard commit" - any commit
without a <confirmed> parameter after a successful "confirming commit"
and before a subsequent "confirmed commit"

By those definitions a
"confirmed commit" cannot follow another "confirmed commit" without an
intervening "confirming commit". Yet 8.4.5.1 talks about follow-up
"confirmed commits" and "confirming commits". How can there be a
follow-up "confirmed commit", unless the definition of a "confirmed
commit" becomes something like: 

(the first commit with a <confirmed>
parameter after a successful commit without a <confirmed> parameter) OR
(the first successful commit with a <confirmed> parameter from another
session and the appropriate <persist-id>) 

Also, 8.4.5.1 states the
<persist> parameter makes the "confirmed commit" survive a session
termination. Does that mean the <persist-id> parameter can only be
successful if the original session has been terminated, or is it more
accurate to state that the <persist> parameter allows the "confirmed
commit" to be extended by other sessions, whether or not the original
session has been terminated? 

Thanks, 

Jonathan 

Links:
------
[1]
mailto:Jonathan@hansfords.net
[2] mailto:Jonathan@hansfords.net