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

"Eric Voit (evoit)" <evoit@cisco.com> Thu, 17 September 2015 19:30 UTC

Return-Path: <evoit@cisco.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 2E0D81A8968 for <netmod@ietfa.amsl.com>; Thu, 17 Sep 2015 12:30:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.51
X-Spam-Level:
X-Spam-Status: No, score=-14.51 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] 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 RgY4UP5wYZeI for <netmod@ietfa.amsl.com>; Thu, 17 Sep 2015 12:30:47 -0700 (PDT)
Received: from alln-iport-6.cisco.com (alln-iport-6.cisco.com [173.37.142.93]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C777A1A6FF0 for <netmod@ietf.org>; Thu, 17 Sep 2015 12:30:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=38634; q=dns/txt; s=iport; t=1442518246; x=1443727846; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=+FPfp5o7+eHSOEou8UcF6AFvKWHm1IIfEyygF+bXkaQ=; b=e2w3+qryu4lBkpR+Qe7CnOXqKaC+XWUJlQHDO/NXkNlJHzgqC4KpUlvD +EZeGmrGi0oL+WF32qTtQCZpbMbZVCi1n7TtLaF0g5UtSvEp/xstMIkBB yt4zDrn5+ugsewL9dPpUQj9XK5vc9oiCY2QGnJJ+caENxJFwsnQ8YYVht s=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0AkAgAhFPtV/4oNJK1VCIJTTVRpBqx8kEABDYFvAQuFLUoCHIEpOBQBAQEBAQEBgQqEIwEBAQMBAQEBIApBCwUHBAIBCBIDIwEGAwICAiULFAMOAgQOBQgBEAKICwgNt0WUOAEBAQEBAQEBAQEBAQEBAQEBAQEBAReGc4R9gj6BeAUBAQUpBxcEBgEJgiU7EoExBYx7AYU9gygBhRCJQkaVGoNsAREOAQFCghEcFoE+cQGIajqBBQEBAQ
X-IronPort-AV: E=Sophos;i="5.17,548,1437436800"; d="scan'208,217";a="189071042"
Received: from alln-core-5.cisco.com ([173.36.13.138]) by alln-iport-6.cisco.com with ESMTP; 17 Sep 2015 19:30:44 +0000
Received: from XCH-ALN-011.cisco.com (xch-aln-011.cisco.com [173.36.7.21]) by alln-core-5.cisco.com (8.14.5/8.14.5) with ESMTP id t8HJUiBV004702 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 17 Sep 2015 19:30:44 GMT
Received: from xch-aln-013.cisco.com (173.36.7.23) by XCH-ALN-011.cisco.com (173.36.7.21) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Thu, 17 Sep 2015 14:30:43 -0500
Received: from xch-aln-013.cisco.com ([173.36.7.23]) by XCH-ALN-013.cisco.com ([173.36.7.23]) with mapi id 15.00.1104.000; Thu, 17 Sep 2015 14:30:43 -0500
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Andy Bierman <andy@yumaworks.com>
Thread-Topic: [netmod] YANG Mount = Alias Mount + Peer Mount (was RE: Motivations for Structuring Models)
Thread-Index: AQHQ8XW+z0pPL4ZgfE+QMHw8hrK1p55BDXWg
Date: Thu, 17 Sep 2015 19:30:43 +0000
Message-ID: <c8a68c9263dd4d2ea35a744f23c1fd95@XCH-ALN-013.cisco.com>
References: <f5f8a7b1e43b4a608c4783de302fda7c@XCH-ALN-013.cisco.com> <CABCOCHS7S_rvyHB-3C8RpJ+9O1HdMTSYWQTZSoCPCrOgJVUxAg@mail.gmail.com>
In-Reply-To: <CABCOCHS7S_rvyHB-3C8RpJ+9O1HdMTSYWQTZSoCPCrOgJVUxAg@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.118.56.229]
Content-Type: multipart/alternative; boundary="_000_c8a68c9263dd4d2ea35a744f23c1fd95XCHALN013ciscocom_"
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/2hQgC_TCGbf9kEHJjd5qoLnDWZA>
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:30:51 -0000

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.

Eric

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<mailto: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<mailto: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<mailto: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<mailto:netmod@ietf.org>
https://www.ietf.org/mailman/listinfo/netmod