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

"Susan Hares" <shares@ndzh.com> Thu, 16 March 2017 12:40 UTC

Return-Path: <shares@ndzh.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 D00B3129482 for <i2rs@ietfa.amsl.com>; Thu, 16 Mar 2017 05:40:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.945
X-Spam-Level:
X-Spam-Status: No, score=0.945 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DOS_OUTLOOK_TO_MX=2.845] autolearn=no 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 lPF6OD67kpqW for <i2rs@ietfa.amsl.com>; Thu, 16 Mar 2017 05:40:58 -0700 (PDT)
Received: from hickoryhill-consulting.com (50-245-122-97-static.hfc.comcastbusiness.net [50.245.122.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7EB22129456 for <i2rs@ietf.org>; Thu, 16 Mar 2017 05:40:57 -0700 (PDT)
X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=70.194.2.137;
From: Susan Hares <shares@ndzh.com>
To: 'Martin Bjorklund' <mbj@tail-f.com>, kwatsen@juniper.net
Cc: i2rs@ietf.org, xufeng.liu.ietf@gmail.com
References: <20170216.221949.1797970554181706414.mbj@tail-f.com> <9B5F937A-346D-429A-9E9C-1D453BED83B3@juniper.net> <36B6098C-84A9-480C-AF83-1EF04E18E50F@juniper.net> <20170316.091750.1171910884753078345.mbj@tail-f.com>
In-Reply-To: <20170316.091750.1171910884753078345.mbj@tail-f.com>
Date: Thu, 16 Mar 2017 08:36:03 -0400
Message-ID: <00ad01d29e51$e0556c80$a1004580$@ndzh.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHZFzzJG6AFVXjDfmZpUhTaSGz8ZAKBxzMVAeLRhJ8BqsLaAKFZ+hIA
Content-Language: en-us
X-Authenticated-User: skh@ndzh.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/22rMzx8h705HxwvdTO4cqE83qWw>
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:41:00 -0000

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? 

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