Re: [netmod] YANG Mount = Alias Mount + Peer Mount (was RE: Motivations for Structuring Models)

Andy Bierman <andy@yumaworks.com> Thu, 17 September 2015 19:48 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7F1EE1A037F for <netmod@ietfa.amsl.com>; Thu, 17 Sep 2015 12:48:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.978
X-Spam-Level:
X-Spam-Status: No, score=-1.978 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] 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 3T-lYf3H0M3E for <netmod@ietfa.amsl.com>; Thu, 17 Sep 2015 12:48:09 -0700 (PDT)
Received: from mail-lb0-f174.google.com (mail-lb0-f174.google.com [209.85.217.174]) (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 7A6991A899F for <netmod@ietf.org>; Thu, 17 Sep 2015 12:48:08 -0700 (PDT)
Received: by lbbmp1 with SMTP id mp1so14945215lbb.1 for <netmod@ietf.org>; Thu, 17 Sep 2015 12:48:06 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=/6TwSsqltAZzTP0jbwwM0nZa08+VpMDYUfoPe+xRFs4=; b=ZdLfS7BGF0Itpqbq69OI0vrIWkxyueVH0hlWC5bwmCoarNzbQ6ytsP/SPIE13+m8UU 1BZEKkTMmLO0nHb0nMMCwYjweC+L9QalOwucPnLI85/OKBO2u4kS1PNVdJh0Bsu+IGWy x8yST6i1L6JNTnh70gz1fj+ZF0/f7uXR90FxR6qUOzKH5KcFFBomWDvzziZB7K41xS21 DUvIpD9VwT1oSKGh5k6EDGEHe3R5/ULvV4LTb7QlDFXLDhpq5No5917fNvhItZnknPLX p+tQZ32SRo3fCEGASgEi8y3xpq9a0GoZxkXE9mu4+mn4sOwUFGIIxC3el6Z/xIMrBcnZ S1Vw==
X-Gm-Message-State: ALoCoQkm1cSYnmlDLEpscKsZUUlU6ISPkT0Is3Vf6VZXmmy/Hg3iiqUOVWiTwNdRbmG2igLcQHo4
MIME-Version: 1.0
X-Received: by 10.152.30.105 with SMTP id r9mr1120511lah.33.1442519286551; Thu, 17 Sep 2015 12:48:06 -0700 (PDT)
Received: by 10.112.200.104 with HTTP; Thu, 17 Sep 2015 12:48:06 -0700 (PDT)
In-Reply-To: <c8a68c9263dd4d2ea35a744f23c1fd95@XCH-ALN-013.cisco.com>
References: <f5f8a7b1e43b4a608c4783de302fda7c@XCH-ALN-013.cisco.com> <CABCOCHS7S_rvyHB-3C8RpJ+9O1HdMTSYWQTZSoCPCrOgJVUxAg@mail.gmail.com> <c8a68c9263dd4d2ea35a744f23c1fd95@XCH-ALN-013.cisco.com>
Date: Thu, 17 Sep 2015 12:48:06 -0700
Message-ID: <CABCOCHQ5upYKpKH4ks_GXBdPy1evbfwKNJP=DdN_hjn9CzU46w@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: "Eric Voit (evoit)" <evoit@cisco.com>
Content-Type: multipart/alternative; boundary="089e0160b794a82dc6051ff6b146"
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/loMLAo8Iar-L_jyN2BbKjXLKOGU>
Cc: Randy Presuhn <randy_presuhn@mindspring.com>, "netmod@ietf.org" <netmod@ietf.org>, Sander Mertens <sander.mertens8@gmail.com>
Subject: Re: [netmod] YANG Mount = Alias Mount + Peer Mount (was RE: Motivations for Structuring Models)
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Sep 2015 19:48:12 -0000

On Thu, Sep 17, 2015 at 12:30 PM, Eric Voit (evoit) <evoit@cisco.com> wrote:

> Thanks for your thoughts Andy.  I believe the complexities of proxy can be
> outweighed by the benefits of simplifying life for the application
> developer in two scenarios:
>
>
>
> (1)    Alias Mount: when there are multiple or context specific exposures
> of the same object.
>
> Note: I was attempting to capture *some* of the idea you were referring
> to at the end of your “Y34 - root node” post:
> http://www.ietf.org/mail-archive/web/netmod/current/msg13260.html    It
> is useful when an application developer doesn’t have to hunt down through
> dozens of models/trees for the few objects they care about.
>
>
>
> (2)    Peer Mount: when applications need a local representation of
> objects sitting on a remote device.
>
> Note: I know this is more controversial.  But a the Google search of
> "Mount" on site = opendaylight.org gives over 1000 hits relating to YANG,
> Netconf, and Restconf.  Some are finding it useful.
>
>
>
> I agree that the WG needs to decide whether we want to take on some or all
> of this topic.
>
>
>

The landscape has changed a lot since the RFC 3535 timeframe,
in which the only proxy was really SNMP Proxy.

Once we start talking about standardizing the controller layer,
it isn't really proxy anymore (in the same sense we thought about it in the
90s).
I look at YANG Mount, pub/sub, etc. together as a "configurable push model".
This could be a much better design than hard-coded polling.   It is the
kind of
feature we would expect to see, moving from a proprietary controller to
a standardized controller.


Eric
>

Andy



>
>
> *From:* Andy Bierman, September 17, 2015 2:22 PM
>
> Hi,
>
>
>
>
>
> I think the NETCONF WG really needs to think about the architecture
>
> it is creating, and the role of proxy servers in network management.
>
>
>
> When we were designing NETCONF (pre-4741) we were told by
>
> knowledgeable operators like Randy Bush that NETCONF MUST NOT
>
> have any Proxy-based management, because it added too much complexity.
>
>
>
>    To date systems built upon YANG models have been missing two
>
>    capabilities:
>
>
>
>    1.  YANG Datastore Mount: Datastores have not been able to proxy
>
>        objects located elsewhere on the same device, or upon a different
>
>        device.  This puts additional burden upon applications which then
>
>        need to find and access multiple locations and which may be on
>
>        remote systems.
>
>
>
>    2.  Eventual Consistency: YANG Datastore implementations have
>
>        typically assumed ACID [1] transaction models.  There is nothing
>
>        inherent in YANG itself which demands ACID transactional
>
>        guarantees.  YANG models can also expose information which might
>
>        be in the process of undergoing convergence.  Since IP networking
>
>        has been designed with convergence in mind, this is a useful
>
>        capability since some types of applications must participate
>
>        where there is dynamically changing state.
>
>
>
> The NETCONF WG should decide first "we need proxy servers" before debating
> the best way to do that.
>
>
>
> We have been told there are systems that converge very slowly (although
> nobody seems
>
> to know if that means 5 minutes of 5 hours).  All the "get-actual" type of
> proposals
>
> seem to address this issue.  Not sure how YANG Mount addresses the issue,
>
> and how it is related to the other solution proposals.
>
>
>
>
>
> Andy
>
>
>
>
>
>
>
> On Tue, Sep 15, 2015 at 8:21 AM, Eric Voit (evoit) <evoit@cisco.com>
> wrote:
>
> There was a recent thread on structuring YANG models so that application
> developers might be able to reference alternative local hierarchies/tree
> structures for certain objects.  This thread motivated Alex, Sander, and I
> to rework the YANG Mount requirements draft.  v03 is posted at:
> http://datatracker.ietf.org/doc/draft-voit-netmod-peer-mount-requirements/
>
> This draft has been retitled to "Requirements for mounting of local and
> remote YANG subtrees".  This retitling was done because we have separated
> the thinking on what it takes to Mount objects from remote devices (Peer
> Mount) from what it takes to Mount within the same device (Alias Mount).
>
> We would be interested in your thoughts.
>
> Eric
>
> -----Original Message-----
> From: Ladislav Lhotka, August 31, 2015 11:05 AM
>
> Randy Presuhn <randy_presuhn@mindspring.com> writes:
>
> > Hi -
> >
> > It is with no little amusement that I watch this thread struggling
> > with questions that were solved fairly neatly a quarter century ago in
> > GDMO/CMIP-land.  I'm *not* suggesting we go back there, but would like
> > to offer an observation about modeling that might help.
> >
> > The organization of instance data in SNMP is a direct mirror of the
> > "object" definitions.  Simple at first, but quickly becoming baroque
> > as various minds of "multiplexing" are added to compensate for post
> > hoc deficiencies in the index structures.
> >
> > Life is such that once a resource has been modeled, it will be
> > used/re-used/embedded in systems in ways in which its designers
> > couldn't be expected to imagine.  A consequence of this is that if
> > instance naming is completely locked down when the management
> > interface for a resource is first defined (as it is in SNMP) then all
> > sorts of peculiar hacks will be needed to deal with, for example,
> > virtual routers.  Unfortunately, an SNMP/SMI-like mindset is so
> > pervasive that folks seem to overlook that there are other ways to
> > deal with this situation.
> >
> > What GDMO did was to use a separate "NAME BINDING" construct to
> > specify contexts in which instances might show up, allowing instances
> > to be put in places that weren't even imagined when the original class
> > definition was written.  Name bindings could be standardized, or be
> > vendor or even product-specific, allowing the simplicity or complexity
> > of a given system's instance tree to reflect the actual simplicity or
> > complexity of that system, rather than requiring all systems to be
> > structured for the worst case.
>
> How could this be expressed in YANG terms? (I tried to figure it out
> myself but I unfortunately couldn't make any sense of sec. 8.6 in CCITT
> Recommendation X.722).
>
> Thanks, Lada
>
> >
> > Yes, separating the specification of instance naming in large part
> > from class definition does have implications for how one does access
> > control, and how clients figure out how to ask a server to create
> > something, but it's not a huge deal - it's just not like VACM, and a
> > whole slew of hacky solutions and "wierd plumbing adapters" (to borrow
> > from Jeff Case) just go away.  Strangely, it makes the job of the
> > initial modeler and of the eventual user much easier.
> >
> > Randy
> >
> > _______________________________________________
> > netmod mailing list
> > netmod@ietf.org
> > https://www.ietf.org/mailman/listinfo/netmod
>
> --
> Ladislav Lhotka, CZ.NIC Labs
> PGP Key ID: E74E8C0C
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>
>
>