Re: [i2rs] modeling options for draft-ietf-i2rs-yang-network-topo

Martin Bjorklund <mbj@tail-f.com> Thu, 16 March 2017 12:52 UTC

Return-Path: <mbj@tail-f.com>
X-Original-To: i2rs@ietfa.amsl.com
Delivered-To: i2rs@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B6A6F129487 for <i2rs@ietfa.amsl.com>; Thu, 16 Mar 2017 05:52:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.001, 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 897k-GOPa_4O for <i2rs@ietfa.amsl.com>; Thu, 16 Mar 2017 05:52:17 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id C8C751270A0 for <i2rs@ietf.org>; Thu, 16 Mar 2017 05:52:16 -0700 (PDT)
Received: from localhost (unknown [173.38.220.40]) by mail.tail-f.com (Postfix) with ESMTPSA id BD3321AE0332; Thu, 16 Mar 2017 13:52:15 +0100 (CET)
Date: Thu, 16 Mar 2017 13:52:21 +0100
Message-Id: <20170316.135221.2086254168432778596.mbj@tail-f.com>
To: shares@ndzh.com
Cc: kwatsen@juniper.net, i2rs@ietf.org, xufeng.liu.ietf@gmail.com
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <00ad01d29e51$e0556c80$a1004580$@ndzh.com>
References: <36B6098C-84A9-480C-AF83-1EF04E18E50F@juniper.net> <20170316.091750.1171910884753078345.mbj@tail-f.com> <00ad01d29e51$e0556c80$a1004580$@ndzh.com>
X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/P-Wezy8PbozH819raXQkykYzjFk>
Subject: Re: [i2rs] modeling options for draft-ietf-i2rs-yang-network-topo
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Interface to The Internet Routing System \(IRS\)" <i2rs.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/i2rs>, <mailto:i2rs-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/i2rs/>
List-Post: <mailto:i2rs@ietf.org>
List-Help: <mailto:i2rs-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/i2rs>, <mailto:i2rs-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 16 Mar 2017 12:52:18 -0000

"Susan Hares" <shares@ndzh.com> wrote:
> Martin: 
> 
> Thank you for reviewing this option.  In your opinion, how long do you think
> the generic solution based on the draft-ietf-netmod-revised-datastores will
> take to complete? 

>From the authors' pow, we believe we have addressed all technical
issues.  The document needs to be split into protocol documents and a
pure architecture document; this will happen after Chicago, if the WGs
(NETCONF and NETMOD) agree.  Of course, in the end the fate of the
document is up to the WG to decide about...


/martin


> 
> Sue 
> 
> -----Original Message-----
> From: i2rs [mailto:i2rs-bounces@ietf.org] On Behalf Of Martin Bjorklund
> Sent: Thursday, March 16, 2017 4:18 AM
> To: kwatsen@juniper.net
> Cc: i2rs@ietf.org; xufeng.liu.ietf@gmail.com
> Subject: Re: [i2rs] modeling options for draft-ietf-i2rs-yang-network-topo
> 
> Hi,
> 
> So this new option 3 tries to fast-track what's being done in
> draft-ietf-netmod-revised-datastores.  It has to solve many of the issues
> that we face in that draft.  It is not clear to me that this will produce a
> result that (i) is completed much faster than that draft and (ii) is
> guaranteed to be compatible with the solution in that draft.
> 
> So I still think that option 1 is the best way forward (unless this draft
> can wait for the generic solution in draft-ietf-netmod-revised-datastores).
> 
> 
> /martin
> 
> 
> Kent Watsen <kwatsen@juniper.net> wrote:
> > Hi Martin,
> > 
> > Speaking with the authors offline late last week, this discussion 
> > regarding OPTION-2 came up, and I mentioned again my concerns for CON 
> > 'c':
> > 
> >   c) unable to return the opstate value for any configured node
> >  
> > ...to which the Xufeng suggested we take your idea to heart.
> > Specifically, rather than augment <get-config>, let's look-ahead and 
> > use the opstate <get-data> RPC (including the 'origin' attribute) now.  
> > This way, <get-config> would return the configured value, while 
> > <get-data> could return the applied value, as well as the system 
> > generated/learned topology.  So, as in previous fashion, I formally 
> > submit OPTION 3:
> > 
> > 
> > 
> > OPTION 3: use new RPC <get-topo-data>, which is just like <get-data>
> > --------------------------------------------------------------------
> > 
> > This option defines a new RPC called <get-topo-data> that is fashioned 
> > directly after the <get-data> RPC from the revised-datastores draft.
> > The RPC is renamed for fear of conflicting with any possible future 
> > changes that may occur to the planned <get-data> RPC.  The 
> > <get-topo-data> RPC would take an optional 'with-origin-data' selector to
> return the 'origin' attribute.
> > 
> > PROS:
> >   a) does NOT break legacy clients (how we got here).
> >   b) ability to return the opstate value for any configured node.
> >   c) minimal rewrite of the module for revised-datastores solution.
> > 
> > CONS:
> >   a) seems like a shady thing for an IETF module to do.
> >   b) would need to resolve other issues (e.g., how to support with
> >      RESTCONF), which makes the draft quite a bit more than just
> >      a module draft.
> >   c) requires server to support metadata, which is a relatively
> >      new concept and maybe not well supported by servers.
> > 
> > 
> > Thanks,
> > Kent
> > 
> > 
> > 
> > -------ORIGINAL MESSAGE-------
> > >>>> 2) It doesn't say anything about how the opstate data is stored on
> the
> > >>>>    server.  The opstate data is not modeled at all.  This approach
> > >>>>    only defines a presentation-layer format for how opstate data can
> > >>>>    be returned via an RPC.  The server is free to persist the opstate
> > >>>>    data anyway it wants, perhaps in an internal datastore called
> > >>>>    'operational-state' or in an uber-datastore with the opstate data
> > >>>>    flagged with a datastore='oper-state' attribute.  Regardless, it's
> > >>>>    an implementation detail, and the conceptual datastore model is
> > >>>>    preserved.
> > >>> 
> > >>> You are essentially defining a new operation, but do it by 
> > >>> modifying the semantics of an existing one.  I don't think this is 
> > >>> a good idea; it is better to define a new rpc.
> > >> 
> > >> [Xufeng] Is using a new rpc is acceptable? If so, this could be a 
> > >> viable option.
> > >
> > >The draft-ietf-netmod-revised-datastores proposes a new rpc (maybe
> > ><get-data>) to return data from the new operational-state datastore.
> > >This is IMO better than adding opstate nodes to the reply to a 
> > ><get-config> request.
> > 
> > 
> > Martin,
> > 
> > Going back your earlier "better to define a new rpc" comment, I fail 
> > to see how this proposal is significantly different than RFC 6243.
> > 
> > If not this, then the new RPC would be something like <get-config-ex> 
> > more than the planned <get-data>, as the goal is to return 'running'
> > + "some opstate" (not just opstate).
> > 
> > Still, in looking the the pros/cons, Option 1 appears stronger - only 
> > the authors don't like the idea of having to rewrite their models 
> > later...
> > 
> > Kent
> > 
> > 
> > 
> > 
> > 
> > _______________________________________________
> > i2rs mailing list
> > i2rs@ietf.org
> > https://www.ietf.org/mailman/listinfo/i2rs
> > 
> > 
> 
> _______________________________________________
> i2rs mailing list
> i2rs@ietf.org
> https://www.ietf.org/mailman/listinfo/i2rs
>