Re: [netmod] Y34

Andy Bierman <andy@yumaworks.com> Mon, 20 July 2015 17:29 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 627251B2CE2 for <netmod@ietfa.amsl.com>; Mon, 20 Jul 2015 10:29:11 -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 YDwgJETgJSjp for <netmod@ietfa.amsl.com>; Mon, 20 Jul 2015 10:29:08 -0700 (PDT)
Received: from mail-la0-f53.google.com (mail-la0-f53.google.com [209.85.215.53]) (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 D88931B2CF4 for <netmod@ietf.org>; Mon, 20 Jul 2015 10:29:06 -0700 (PDT)
Received: by lagw2 with SMTP id w2so101356317lag.3 for <netmod@ietf.org>; Mon, 20 Jul 2015 10:29:05 -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=oKLv4D/eDTmbZiXuJ+zJfAALdfA7eXv4hnuboWBUkHU=; b=M6WU1hFJHcPIzJCV3r/krdINYSGW1rz6FbdLXvXXuYTM/E3BHv+YiEIPvlJy614OKi NdMgsRvWjKQDo1+7Uce2F97ASXNNsE2SN2W1Zgs17yAALyy0sKnsFOUPCZtmzA0VbQzO 9RDz68NhSfinBkD3pjLHcMZA/Gfgx4XKCftmhb3MioLsvp6GNgYCDIYNmmnVtc7j7gtC qD4HAxdmO4WDQsl12KARwWLBQHSk7wWKcJtTC1+klr8idCjgvsaw2P+/O2ZzV0cbAWlb y5Rs3UgpHkpKOCgQmdy1RVPT0mYNVgfKd+TMT6vAAIDvvOklLqyo+V5VwBMJew6lLtMx jB/g==
X-Gm-Message-State: ALoCoQltOSfkFT5m5+SczkNraDsjkf6nJzwexC2w7I5J8SrLjZgEgnF49ALi5RtRJglHKkbp+Fvh
MIME-Version: 1.0
X-Received: by 10.112.186.35 with SMTP id fh3mr28350441lbc.82.1437413345392; Mon, 20 Jul 2015 10:29:05 -0700 (PDT)
Received: by 10.112.200.102 with HTTP; Mon, 20 Jul 2015 10:29:05 -0700 (PDT)
In-Reply-To: <06C8EE42-B70D-40A7-8B16-053D37378043@nic.cz>
References: <m2d1zn0zhm.fsf@dhcp-hotel-wired-13-fe.meeting.ietf.org> <D0153452-D5F5-4E3C-B3D7-7003ACC405EA@nic.cz> <CABCOCHSqbZfKRqGjT1rsphRnw0tYdR3uT=mFvTvJYXMwL3N2uw@mail.gmail.com> <5497CE3E-19A7-4AAC-AE32-AFC9BC2451F1@nic.cz> <CABCOCHRoA9-BP7=OvUGdvXNuowPUty4xy6iai6Q6dVOjD5iGbQ@mail.gmail.com> <06C8EE42-B70D-40A7-8B16-053D37378043@nic.cz>
Date: Mon, 20 Jul 2015 10:29:05 -0700
Message-ID: <CABCOCHRS-JF8UK+9fQ=yvZy9ttcj3j6oJn0n3Co6f7kB0tpFgA@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: Ladislav Lhotka <lhotka@nic.cz>
Content-Type: multipart/alternative; boundary="001a1134dcc8d91130051b51df64"
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/Js1fJHMq0gkWm7wkRcc_alHSLwM>
Cc: NETMOD Working Group <netmod@ietf.org>
Subject: Re: [netmod] Y34
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: Mon, 20 Jul 2015 17:29:11 -0000

On Mon, Jul 20, 2015 at 10:15 AM, Ladislav Lhotka <lhotka@nic.cz> wrote:

>
> > On 20 Jul 2015, at 17:00, Andy Bierman <andy@yumaworks.com> wrote:
> >
> >
> >
> > On Mon, Jul 20, 2015 at 6:08 AM, Ladislav Lhotka <lhotka@nic.cz> wrote:
> >
> > > On 20 Jul 2015, at 14:55, Andy Bierman <andy@yumaworks.com> wrote:
> > >
> > > Hi,
> > >
> > > Can you explain why we need 2 broken anyxmls?
> > > (The original and a synonym?)  The whole point of
> > > anydata is that it does not have XML cruft in it.
> >
> > Yes, I understand this was your main priority. For implementors using
> off-the-shelf XML parsers and tools the XML cruft is not an issue at all.
> >
> >
> > yes it is an issue.
> > We need something to model a container full of arbitrary YANG data nodes.
> > This is something that can be applied to the contents of a datastore.
>
> anyxml can do that, too.
>


the WG already decided it can't.
The extra XML PIs, etc. are not accepted by all servers, remember?
There is no use for the extra stuff in the datastore.
 I don't see why we need 2 anyxml constructs that are not
supported by the industry.  One is already too many.


> >
> >
> > Anyway, I believe there are use cases for arbitrary XML/JSON/CBOR/… with
> no (YANG) schema available. My only complaint to “anyxml” has always been
> that it is a misnomer for encodings other than XML.
> >
> > The message encoding on the wire is not the same issue
> > as the contents of a datastore.  Our server stores its own
> > internal data structures.  XML, JSON, CBOR are just message
> > encoding formats between client and server.  The datastore
> > is not encoded in any of these formats.
>
> The payload of anyxml needn’t directly map to a data subtree in the usual
> sense.
>

that's precisely the difference between anyxml and anydata.
The anydata node MUST map directly into data subtrees.



>
> >
> >
> >
> >
> >
> > >
> > > I also don't get the value of a single top-level node called 'device'
> > > that every YANG model on the planet is supposed to augment.
> > > Can you explain why a protocol operation to retrieve the
> > > document root (/) is not sufficient for the top-level node?
> >
> > I don’t intend to defend their model, the more serious problem IMO is
> that a model for a single device/function may be needed in another device
> that hosts many virtualised devices/functions of the former type. We don’t
> have a good solution for this rather typical situation.
> >
> > But a single container called "whatever" provides no such aggregation.
> > You would need a list for that. And the NMS might have multiple
> > layers of hierarchy to represent various aggregations.  The NP
> > container called "device" is not helpful for aggregation.
>
> The parent node can be a list as well. The “root” node would be like a
> mount point in a Unix filesystem.
>
>
Are you saying all data on a device needs to be in a top-level list called
'device'
because an NMS might exist that  wants to have the datastores from lots of
devices?
As Martin pointed out several times, the NMS can make its own container or
lists.  It does not need the device to mirror its own structure.


Lada
>

Andy


>
> >
> >
> >
> > Lada
> >
> >
> > Andy
> >
> >
> > >
> > > Andy
> > >
> > >
> > >
> > > On Mon, Jul 20, 2015 at 5:48 AM, Ladislav Lhotka <lhotka@nic.cz>
> wrote:
> > >
> > > > On 20 Jul 2015, at 14:45, Ladislav Lhotka <lhotka@nic.cz> wrote:
> > > >
> > > > Hi,
> > > >
> > > > after listening to the presentation of
> > > > draft-rtgyangdt-rtgwg-device-model-00 at RTGWG session, I am
> wondering
> > > > whether the solution chosen for Y34 is really useful.
> > > >
> > > > The draft states they want to reuse ietf-interfaces but their tree in
> > > > fact is
> > > >
> > > >   +--rw device
> > > >          +--rw info
> > > >          |  +--rw device-type?   enumeration
> > > >          +--rw hardware
> > > >          +--rw interfaces
> > > >          |  +--rw interface* [name]
> > > >          |     ...
> > > >          +--rw qos
> > > >
> > > > So the "interfaces" container is no more a top-level node. There are
> > > > three possible options:
> > > >
> > > > 1. Change the ietf-interfaces module.
> > > > 2. Replicate its contents in another module.
> > > > 3. Extend YANG so that a *specific* schema tree can be grafted at a
> > > >   given data node.
> > > >
> > > > IMO #1 & #2 are really bad. I thought Y34-04 was essentially #3 but
> it
> > > > seems it is not so because it doesn't specify a concrete data model
> > > > that's allowed at a given location.
> > > >
> > > > On the other hand, the only real contribution of "anydata" over
> "anyxml"
> > > > is that is doesn't permit mixed content in XML, which is IMO not
> much.
> > > >
> > > > I know Y34 was already closed but I think it is more important to do
> > > > things right before YANG 1.1 becomes an RFC.
> > > >
> > > > What I want to propose is this:
> > > >
> > > > - Rename "anydata" as a synonym to "anyxml", and deprecate "anyxml"
> (but
> > > >  keep it for backward compatibility).
> > >
> > > s/Rename/Introduce/
> > >
> > > >
> > > > - Introduce a new statement and data node type, e.g. "root", that
> will
> > > >  extend the schema tree starting from that data node with a precisely
> > > >  specified data model. The specification can be same or similar as
> > > >  in yang-library.
> > > >
> > > > I believe there are other use cases in the existing modules. For
> > > > example, the ietf-routing module could simply define the data model
> for
> > > > a single routing instance (i.e. without "routing-instance" list at
> the
> > > > top), and it can be then used without changes on simple devices, and
> > > > more complex router implementations can graft it as a subtree under
> > > > "routing-instance", "networking-instance" or whatever.
> > > >
> > > > Lada
> > > >
> > > > --
> > > > Ladislav Lhotka, CZ.NIC Labs
> > > > PGP Key ID: E74E8C0C
> > > >
> > > > _______________________________________________
> > > > 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
> > >
> >
> > --
> > Ladislav Lhotka, CZ.NIC Labs
> > PGP Key ID: E74E8C0C
> >
> >
> >
> >
> >
>
> --
> Ladislav Lhotka, CZ.NIC Labs
> PGP Key ID: E74E8C0C
>
>
>
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>