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

"Eric Voit (evoit)" <evoit@cisco.com> Tue, 22 September 2015 17:59 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 027F81A9153 for <netmod@ietfa.amsl.com>; Tue, 22 Sep 2015 10:59:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.512
X-Spam-Level:
X-Spam-Status: No, score=-9.512 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FU_LOTSOFCOLONS=4.999, 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 Y1C5cSCyk8o5 for <netmod@ietfa.amsl.com>; Tue, 22 Sep 2015 10:59:03 -0700 (PDT)
Received: from alln-iport-8.cisco.com (alln-iport-8.cisco.com [173.37.142.95]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 041731A9054 for <netmod@ietf.org>; Tue, 22 Sep 2015 10:59:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=5230; q=dns/txt; s=iport; t=1442944743; x=1444154343; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=tXw28JuhEjkiqXx8lWQYdOtiWc7Je02TiR6jVpOscsU=; b=eoo+OT1KOV4/+6N+OA/WeFBE5Ew6hR6A/Yh5pyJpsA7ND13HBkG/eWm/ KmaEJEeZxuYNkxDZruY3q3ShRMiaNglkV5ZT60zNcAEjjyTR8J9Qh6c+C iw4bNBS7X+JjYTf+3IRZa0XGZFj3WrYldbsdcRz0nhY8ihAXNlYzuuG/0 4=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DwAQAzlgFW/4ENJK1VCIMkVGkGvVQBDYFwBYU0SgKBSjgUAQEBAQEBAYEKhCQBAQEDAQEBATc0CwUHBAIBCBUhECcLJQEBBAENBQgRAogLCA3LGwEBAQEBAQEBAQEBAQEBAQEBAQEBAReGc4R9hDYMSweELAWMfAGIagGFEId0gVJGlSKDbAEfAQFCghEcFoE+cQEBiGaBBQEBAQ
X-IronPort-AV: E=Sophos;i="5.17,574,1437436800"; d="scan'208";a="190614145"
Received: from alln-core-9.cisco.com ([173.36.13.129]) by alln-iport-8.cisco.com with ESMTP; 22 Sep 2015 17:59:02 +0000
Received: from XCH-RCD-011.cisco.com (xch-rcd-011.cisco.com [173.37.102.21]) by alln-core-9.cisco.com (8.14.5/8.14.5) with ESMTP id t8MHx2LJ024897 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Tue, 22 Sep 2015 17:59:02 GMT
Received: from xch-aln-013.cisco.com (173.36.7.23) by XCH-RCD-011.cisco.com (173.37.102.21) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Tue, 22 Sep 2015 12:59:01 -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; Tue, 22 Sep 2015 12:59:00 -0500
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Ladislav Lhotka <lhotka@nic.cz>, Randy Presuhn <randy_presuhn@mindspring.com>, "netmod@ietf.org" <netmod@ietf.org>, Rob Shakir <rjs@rob.sh>
Thread-Topic: YANG Mount = Alias Mount + Peer Mount (was RE: [netmod] Motivations for Structuring Models)
Thread-Index: AdDvyhrI2wLjsCf6TN+s18UjF8BE5QEqBWqAADJHufA=
Date: Tue, 22 Sep 2015 17:59:00 +0000
Message-ID: <f10f538a704b4fd5bc41e312d181f499@XCH-ALN-013.cisco.com>
References: <f5f8a7b1e43b4a608c4783de302fda7c@XCH-ALN-013.cisco.com> <m2vbb42mtc.fsf@nic.cz>
In-Reply-To: <m2vbb42mtc.fsf@nic.cz>
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: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/Z7MEbE10ExRwjlPMdLHE4hF0wjQ>
Cc: 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: Tue, 22 Sep 2015 17:59:05 -0000

Hi Lada,

Thanks for your feedback.   I do think that there is value in an integrated technology solution.   OpenDaylight combines (1) and (2) usefully.  For example there are examples on the page:
http://wiki.opendaylight.org/view/OpenDaylight_Controller:Config:Examples:Netconf
such as:
http://localhost:8080/restconf/operations/network-topology:network-topology/topology/topology-netconf/node/<nodeId>/yang-ext:mount/<operation> 
which enables a server to reference remote device info embedded within a network-topology url

Beyond that, OpenDaylight has the ability to do (1) in the form of " loopback mount".  See:
http://wiki.opendaylight.org/view/Controller_Core_Functionality_Tutorials:Tutorials:Netconf_Mount#Testing_against_ODL_itself_.28MD-SAL_netconf_northbound_loopback_mount.29
While this is used mostly for testing, aliasing is also viable.

Eric

-----Original Message-----
From: Ladislav Lhotka, September 21, 2015 4:34 AM

Hi Eric,

we are dealing with two rather different problems:

1. A pull-type method for combining YANG schemas as a complement to
   "augment".

2. A proxy function that mediates access to data that are located
   elsewhere.

I believe the recent thread on structuring YANG models has been about #1 while both this draft and draft-clemm-netmod-mount-03 mainly address #2. Each problem has its share of issues to solve but the issues don't overlap, so I believe it would be useful to keep both problems separate.

Lada

"Eric Voit (evoit)" <evoit@cisco.com> writes:

> 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-requireme
> nts/
>
> 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
>

--
Ladislav Lhotka, CZ.NIC Labs
PGP Key ID: E74E8C0C