Re: [secdir] [i2rs] Asynchronous Nature of the I2RS Protocol - vs RESTCONF and NETCONF

Jeffrey Haas <jhaas@pfrc.org> Fri, 06 March 2015 18:04 UTC

Return-Path: <jhaas@slice.pfrc.org>
X-Original-To: secdir@ietfa.amsl.com
Delivered-To: secdir@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 47AB51A026C; Fri, 6 Mar 2015 10:04:36 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.578
X-Spam-Level:
X-Spam-Status: No, score=-1.578 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, IP_NOT_FRIENDLY=0.334, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=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 5v7N6IrBlwms; Fri, 6 Mar 2015 10:04:35 -0800 (PST)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id 6F6631A037F; Fri, 6 Mar 2015 10:04:35 -0800 (PST)
Received: by slice.pfrc.org (Postfix, from userid 1001) id 0DF1FC249; Fri, 6 Mar 2015 13:04:35 -0500 (EST)
Date: Fri, 6 Mar 2015 13:04:34 -0500
From: Jeffrey Haas <jhaas@pfrc.org>
To: Andy Bierman <andy@yumaworks.com>, Jeffrey Haas <jhaas@pfrc.org>, Susan Hares <shares@ndzh.com>, "i2rs@ietf.org" <i2rs@ietf.org>, Melinda Shore <melinda.shore@gmail.com>, secdir@ietf.org
Message-ID: <20150306180434.GA10092@pfrc>
References: <01c301d05538$0b4846c0$21d8d440$@ndzh.com> <54F4E7D7.1000603@gmail.com> <023e01d055fe$8688c9b0$939a5d10$@ndzh.com> <20150304194244.GB9142@pfrc> <20150304230940.GA68185@elstar.local> <CABCOCHS2hZMFymCa=Of2iDPUiwcLwyKQsmciaYqCcyON7ks07g@mail.gmail.com> <20150305081801.GA68988@elstar.local>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20150305081801.GA68988@elstar.local>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/secdir/fgOymhSv5dHmdz6Msrs7041OXtM>
X-Mailman-Approved-At: Fri, 06 Mar 2015 13:19:36 -0800
Subject: Re: [secdir] [i2rs] Asynchronous Nature of the I2RS Protocol - vs RESTCONF and NETCONF
X-BeenThere: secdir@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Security Area Directorate <secdir.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/secdir>, <mailto:secdir-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/secdir/>
List-Post: <mailto:secdir@ietf.org>
List-Help: <mailto:secdir-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/secdir>, <mailto:secdir-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 06 Mar 2015 18:04:36 -0000

On Thu, Mar 05, 2015 at 09:18:02AM +0100, Juergen Schoenwaelder wrote:
> On Wed, Mar 04, 2015 at 03:57:50PM -0800, Andy Bierman wrote:
> > > The simple solution is to make "A B C" one atomic edit.
> > >
> > 
> > 
> > We use entity tags and If-Match in RESTCONF so the client can
> > be sure it is editing the correct version of the resource instance.
> > This works nicely for persistent configuration, especially if
> > the server can reboot with the same config ETags.
> > 
> > If-Match will cause the edit to fail if the server reboots and the
> > I2RS state is gone.
> > The client will get a 412 Precondition Failed response and know it might have to
> > start over.
> > 
> > RESTCONF only requires the server to maintain an ETag for the config root.
> > Finer granularity (e.g., the parent resource has an ETag) is probably needed
> > to support multiple concurrent edits.
> >
> 
> Thanks, this all makes sense. So there is a viable mechanism to create
> a sequence of linked edits. The main trade-off, however, between a
> single atomic edit and a sequence of linked edits is who is taking the
> pain to cleanup the mess if things fail in the middle. If you write a
> client, you love the server to do it. If you write a server, you love
> the client to do it. ;-)

It's all pain, but some component has to deal with it.

I'm glad that restconf seems to have this situation covered, Andy.  Is there
a similar mechanism in netconf that I've missed?  If so, this completely
deals with the need for i2rs to have to ask for anything new. :-)

-- Jeff