Re: [netmod] Y34 - root node

t.petch <ietfc@btconnect.com> Wed, 19 August 2015 16:24 UTC

Return-Path: <ietfc@btconnect.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 399E91A0366 for <netmod@ietfa.amsl.com>; Wed, 19 Aug 2015 09:24:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_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 vSL6EkfNNjKe for <netmod@ietfa.amsl.com>; Wed, 19 Aug 2015 09:24:34 -0700 (PDT)
Received: from emea01-db3-obe.outbound.protection.outlook.com (mail-db3on0711.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe04::711]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 310381A035F for <netmod@ietf.org>; Wed, 19 Aug 2015 09:24:25 -0700 (PDT)
Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=ietfc@btconnect.com;
Received: from pc6 (81.151.167.91) by DBXPR07MB062.eurprd07.prod.outlook.com (10.242.147.20) with Microsoft SMTP Server (TLS) id 15.1.231.21; Wed, 19 Aug 2015 16:24:01 +0000
Message-ID: <013601d0da9b$907f6b00$4001a8c0@gateway.2wire.net>
From: "t.petch" <ietfc@btconnect.com>
To: rwilton@cisco.com, Martin Bjorklund <mbj@tail-f.com>
References: <55D36473.90609@cisco.com> <CABCOCHRP3omx37XmEJfPwg6eELuSKF=YL8pgpnvLh9PQxgV62A@mail.gmail.com> <55D45CAF.2070605@cisco.com> <20150819.132555.871710491924929960.mbj@tail-f.com>
Date: Wed, 19 Aug 2015 17:24:41 +0100
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Originating-IP: [81.151.167.91]
X-ClientProxiedBy: DB5PR03CA0072.eurprd03.prod.outlook.com (25.164.34.40) To DBXPR07MB062.eurprd07.prod.outlook.com (10.242.147.20)
X-Microsoft-Exchange-Diagnostics: 1; DBXPR07MB062; 2:+UUKdpA/B5OOJDocW/RaKUNu+NSwqUZ04NQmAQ5JKZPyth2ckNETPbuMrFCIdnbqXN+CX9IlySx3ty8oBC0zTsn1yZbW+scPmjG4lWB/TVmyT0JD1YFCnCwvqnMO2Xo5W+NgKr5vylGKCcaMt/oyPoMd9GiOzXJheflSVIwDAao=; 3:DuzfmU4R3mXRxVv07CCsRis5KE7OlbYA4oHXdus7kTKezY83U9jn7+Zugi+yXqzHqaaVeLS8T27EwVNDDqkOx47+w/CgBOYa7NDASXrzMNDmrRFlCqqWrbM6VeOM6DECRL+NLSl6pCUs61X1zgqPzA==; 25:f6tfCLVgW4rc8BD77HYCQC3ClikdzFTlg6gEBfmR1oOqqfFS2A8W1kYMCdZc7wKjxivkQBHyQ+/vwbHxgJT3GLq3WOS0XylUkgaZY09oDbZPX9zptdRr9zu+ZgeMzyvctJTIdsFG3J8/ruB/KiwQQIwzH4bu0nyFF38UwqDcsXHHhQ+Cs+wQdxvxiYE8paSCS/8Qu4ymtN6YxPUlzEUsrprnjSgHx2qbkxUt4Mao2pfSUSgjHwJTCUbXvv7SXmv/RUKWiOvrpZ9CuPUNhqgOPg==; 4:SU9sbVnsTU5KM7BzUA8levi/E8hvQdxM9I+SgWN/ref1VRRqonn2MDfeoY/u+z6ztY0rHpEijl8RuqsnZZTw/rPYIwboMiR6NvYXQ5UuYgAUrEhb8qfUxYfWxumJO2baClZBNjY8R5sgoR1E1DSkunE+mLdA7O7aSWoCVaLnJyJLDpDo1/F4+5zqYx5/g9Y1i7RbJ2HBhx1BFv6BqtjqlbcA6WA/tgmoPQFzUYER6YHIIvCON/w2PlirHktk3hAWQ10ls3WAMQuVB3OmCnIQqEpuxybJ5hoPtTFKzJlMbJZ1rFRhAJjMLyYmiCxC5iyf
X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DBXPR07MB062;
X-Microsoft-Antispam-PRVS: <DBXPR07MB0627A0E0EE515197AB16D64A0670@DBXPR07MB062.eurprd07.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(8121501046)(5005006)(3002001); SRVR:DBXPR07MB062; BCL:0; PCL:0; RULEID:; SRVR:DBXPR07MB062;
X-Forefront-PRVS: 0673F5BE31
X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6009001)(189002)(377454003)(479174004)(199003)(13464003)(24454002)(47776003)(122386002)(5001960100002)(50986999)(5001770100001)(92566002)(4001540100001)(81156007)(5001830100001)(14496001)(44736004)(76176999)(81816999)(19580395003)(93886004)(5001860100001)(1556002)(19580405001)(84392001)(44716002)(189998001)(62236002)(86362001)(97736004)(81686999)(87976001)(23756003)(106356001)(105586002)(64706001)(66066001)(116806002)(50226001)(61296003)(50466002)(42186005)(1456003)(15975445007)(40100003)(101416001)(77096005)(46102003)(62966003)(77156002)(33646002)(68736005)(74416001)(7726001); DIR:OUT; SFP:1102; SCL:1; SRVR:DBXPR07MB062; H:pc6; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:0; LANG:en;
Received-SPF: None (protection.outlook.com: btconnect.com does not designate permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: 1; DBXPR07MB062; 23:Xs6Xq7XDCJpgleeEvp9ebGY+yfJv5EHRtF5p+Pn03qV8B1RKrquF49d7LK9fey3oKURyvmC5HpySh92ZHiChLsgaEeTnv80BmA/9SFRAD1cVz9Nt/hFsVpDwH3/d86bB5pot2GhL2hjhnxKjL7r4Q62Z0AwkYMv8swOs4OAaMPhksOZKNTILi/1IEWxj88UmEm20Ig9eB3hot6gyxOiDif0MBdsvHkN0vHMtjOucbttO+TJD6NyHUeoJsfugf4iu28mYjgbmQeOSpos6HKPP+/dDhIA8+6SEP7t2g8AB42EPKqPBDk6a+USwk7/Jfy4uXht5E25gaesW/WkBo1Rin44dXdhZUWLgLkqRycfFAlgzNNlPLI7m9mOskUpKIhiAZq9fm+VKyfuqgGMWX6vrdrWuTBtEXRFQyN9n/iSIH422Kg9qQfxbR5gg2K3erv/WqVDfuEAtUJrl8NUCats3jMTXcXo1Hnpsg7FGHDA0YbB2mhcvyP9vPklvJBbR457MoZdhGuK7G7KdKiEPQ1oMTHY2g2Af4G9mGywwd7erbr9k4ykR+RnEmT/prUJUb8EX78F2jDOfzhFergSe+ypiRiQSt5Fvng4vNS0INvZTu6bG3xDkjkVYPADuVi38ftbwUWpTGDCBqMgFkw94KHKtrdE4F2I5MVQsprow7CC+3OKdw9qntjh5VkOON0f7tvFfoKNDSflSY+fAQIfnjs05T7EzetaxySodYUlJN9qRj5jEbPogt/rVarkb2svsW5kx7IIy3XpmSn9pdhMcoeKEJewNV3TkOUcsYOcxuC6KaQ717jK/Gtnmv/4WI3+sxKZnsWMKxKAUnSRjOZM85qDsU76gfjGwAERYo36dy6mWuCquoTZKsKaGtcLCRCvXZpztaJCpj0bgep2+UYJALIpngJkrvdS+Mtxtt9rgUvuGzHRA86WLesBV1APlGDumuZkBuL5HFPrKAzQkfJLcz00bm5vga16YdudcP99F0mOl9UHUjh1LDed/tnz7INNA39oV8elRQ4Xd+Ykzwr5RGiPoc7x8LM4TGkDmReHfwuC32pH4apnUnFu5E+dGJoWSykgkpVxmtZ7LZrqFm82b8N2BKu1H7+V6EbKncsgkVRTrByft2a2ZnP8N2CbYqNI49xup7W5t9qJHSWVXaWkAoT7bR8dxff5cNfOdm8VAUjd24XW5mFfdzJESrzFmyCdyZjx5Apn6oPD5VlIjVZWAeGA5KcsaXEnXvUnjNNM1oG1ZLDrWY40ZDUf8CvVryWbGC8/XDr5F8i3eaeVoS/zNyh7XcDzJ2qKF4r128XMfZhcOgEIKpglGadUYDPHRnS6K4drm73udWbMbI11yrRbMHQM9ueqnLIB0l1MD6N7lujaq6tz9D9GXfO3LYkWwHFp69jG6
X-Microsoft-Exchange-Diagnostics: 1; DBXPR07MB062; 5:v8xNp31+i2h1PtRARKabrC8sK1afPB53Dkmz0lU3fxJ4kusFsuD7Y8aQ7VmJdROZrZKM7GxyqGQT3NvYryYRb5F6ZrFlIWmSW4oT/VXB5pVvXZEO/hbGN8dKdiSPqVSQU5ApXrRN/laPREthg6RzqQ==; 24:E2DJVEjJhTl7WwPWPvaHLs0jqIkn+sYr+gWBVymLE1CFKtTvdLKhzJSwBjTZvUY/C7O7+DS+sj8iJxN9579V3rvdJENW8gpOXmZAzAXRTYo=; 20:b1N4++e2y4kjMTQrVxo7QSfF+ATdYD2tmTwYrdLENlextc3u0cmD3WyVCEPdW2P3HvAPxZ36fqwoxNLs/JMWMw==
SpamDiagnosticOutput: 1:23
SpamDiagnosticMetadata: NSPM
X-OriginatorOrg: btconnect.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Aug 2015 16:24:01.7776 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBXPR07MB062
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/vOWX1AiX23BDkLLyLuBYN75hDOI>
Cc: netmod@ietf.org
Subject: Re: [netmod] Y34 - root node
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: Wed, 19 Aug 2015 16:24:37 -0000

----- Original Message -----
From: "Martin Bjorklund" <mbj@tail-f.com>
To: <rwilton@cisco.com>
Cc: <netmod@ietf.org>
Sent: Wednesday, August 19, 2015 12:25 PM
> Robert Wilton <rwilton@cisco.com> wrote:
> >
> > On 18/08/2015 18:22, Andy Bierman wrote:
> > > This is how languages like SMIv2 and YANG work.
> > > A conceptual object is given a permanent "home" within the tree of
> > > object identifiers.
> > > Moving data is very expensive, since any clients working with the
old
> > > data
> > > will break as soon as the data is moved.
> > >
> > >  I am not convinced the IETF can or should come up with a set of
> > >  containers
> > > that covers every possible topic that can be modeled in YANG.
> >
> > I mostly agree, but having some more structure/advice as to where to
> > place YANG modules may be helpful.  I'm thinking more along the
lines
> > of broad categories rather than precise locations.
>
> +1

Martin

If I were able to choose someone to ask for advice on this question,
well, your name would be joint top of my list.  If you are not going to
write it, then who is?

The current model is a flat architecture of hundreds (or thousands) of
modules each with their own top level nodes, namespace, namespace name,
prefix etc.  (This is quite different to SMI with its hierarchy but that
probably is only significant to those who have spent 20 years with SMI).

So, is this flat architecture a problem?  Does it matter that we have
hundreds (or thousands) of top level nodes?  I know that top level nodes
are different w.r.t the rules of YANG but cannot foresee whether or not
that is an issue for model writers or model users because I cannot get
my mind around just what the rules are in this regard?

Equally, is it a problem to have hundreds (or thousands) of prefixes? or
namespaces? or ...

And what else is there that having a lot of might be an issue?

I see the YANG architecture as reflecting the IETF 'architecture' of
hundreds of working groups loosely federated, sometimes collaborating,
mostly not, and so is the right way to develop YANG modules.  But are
there technical dangers lurking there that in a few years time we will
wish we had taken more notice of.

Tom Petch

> > >     If someone wants to builds a YANG controller node that is
managing
> > >     the configuration for a network of devices then wouldn't they
want
> > >     a particular device's interface configuration to be located
> > >     somewhere like
/network/device/<device-name>/interfaces/interface?
> > >     Ideally, they would be able to use the same YANG definitions
that
> > >     are defined for /interfaces/ but root them relative to
> > >     /network/device/<device-name>/.
> > >
> > >
> > >
> > > Yes -- some of us (like Martin) have pointed this out many times.
> > > The "device" container on an NE does not help at all wrt/
> > > aggregation on a controller. "/device" or "/" work the same for
this
> > > purpose.
>
> Actually, I would argue that / works better.  On the controller, you
> probably have a list of devices you control (this is how our NCS
> works, and how ODL works (I have been told)):
>
>   container devices {
>     list device {
>       key name;
>       // meta-info about the device goes here, things like
>       // ip-address, port, auth info...
>       container data {
>         // all models supported by the devices are "mounted" here
>       }
>     }
>   }
>
> So on the controller, the path to interface "eth0" on device "foo"
> would be:
>
>   /devices/device[name='foo']/data/interfaces/interface[name='eth0']
>
> if we also have a top-level "/device" container we'd have:
>
>
/devices/device[name='foo']/data/device/interfaces/interface[name='eth0'
]
>
> > What would the real resource location for
> > "/network/device/<device-name>/interfaces/interface" be?
>
> I don't think there is such a thing as a "real" location.  The path is
> scoped in the system you work with; in the controller it might be as I
> illustrated above, in the device it starts with /interfaces, but in a
> controller-of-controllers it might be:
>
>   /domains/domain[name='bar']/devices/device[name='foo']/data
>     /interfaces/interface[name='eth0']
>
> Currently we have a proprietary way of "relocating" YANG modules, and
> ODL has its "mount", and I think Andy has some other mechanism.  Maybe
> the time has come to standardize how mount works, and maybe then also
> standardize the list of devices in a controller model.
>
>
> /martin
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod