Re: [netmod] What's the problem with NMDA? was Re: 答复: 答复: Please clarify implementation about ‘when’

Andy Bierman <andy@yumaworks.com> Thu, 26 September 2019 17:44 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E5EFF1200C7 for <netmod@ietfa.amsl.com>; Thu, 26 Sep 2019 10:44:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 oFw21nW6JCt4 for <netmod@ietfa.amsl.com>; Thu, 26 Sep 2019 10:44:14 -0700 (PDT)
Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com [IPv6:2a00:1450:4864:20::12d]) (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 51505120013 for <netmod@ietf.org>; Thu, 26 Sep 2019 10:44:14 -0700 (PDT)
Received: by mail-lf1-x12d.google.com with SMTP id r22so2363735lfm.1 for <netmod@ietf.org>; Thu, 26 Sep 2019 10:44:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=gNP0Z1lU8IgpDYecXpP1kv12OTI2q/ECv7333jMJ9iE=; b=jHrifefleSLr67CMA6BGWLz9WJ4w+Q1pSrgHzbGo1vnzEufCuFBIGXzhebPTkKh3V2 ntosRZXBHEoElqPcu2MxIfoOrriulHivZElccY7zwtBuSkOo7wK3a4a9Z+HpeiBIng1R ZO5xx4NIbzN40ZyJZa0eEM6H3AHJLWoOw0DjTvIyePDaJ3pN4TYeL2kfvzSt/qXDZNr8 K1s+VoqkN4Xo1xe85+4RIyqJRHjBrSmH6p51jhDdQxeQsbsw8VfvImx1mp32bSg+LBc9 MFguArs5/nBEegY6ICkxIxGC2vgX5ANpL+DFEVFqc6ymocGIgzCf4NRF7cRSpctnQucB Tx5Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=gNP0Z1lU8IgpDYecXpP1kv12OTI2q/ECv7333jMJ9iE=; b=FwCaY6GKsH0I2lZzZJgv/znnP5HAsuhFtqk4uCS0N9mtqF1IBnZGUGPAkR1v1sAzt6 HHFwP5cLYrHp9bkZ1UGVxIdPVock/nwypsNS3R3iK/nwRKsVIHyszZxHE5k9gE36lzdo HOeChQC4uh3Vx0UMVDdWX68dz39tDXNIGS4r9/fci/7C8ZhYmkJYoniefpHtS5aL2IB2 8i0Ei6tbkKqky+Yq9jC1z+etlHMbYpV6TTXgDkG8azgOapiv/B0zwHyc7tD6wEy5ioTJ RHC93uugtzvkHaPdLq27NiHCpafBp9OIsjbLNPZxdet4Om5ZQ7L8EJbecQPzVCfT31dC Mz/Q==
X-Gm-Message-State: APjAAAV2z2jYKspaejD9H69VIYxqF0njGIL5SAvkCo6/z567wUGZtbHN f13KF+OM93x2NZSg+mE78TPsIuuq/yAGhdLNB+/c6w==
X-Google-Smtp-Source: APXvYqwvhgxDCa47N2gr+93VuO0SQ6bSwGL520FNyLIdlc2DK34o5T1m2jmKrrzvmOaWVwegAo6cVvtkg5GH0dwwtIg=
X-Received: by 2002:ac2:46f8:: with SMTP id q24mr3011148lfo.51.1569519852389; Thu, 26 Sep 2019 10:44:12 -0700 (PDT)
MIME-Version: 1.0
References: <87h84z4kmw.fsf@nic.cz> <20190926.085644.1268671875357328723.mbj@tail-f.com> <9bc06f9f3f1c87c79ccce4e1c4d40755c804875a.camel@nic.cz> <20190926.094526.272771637371098799.mbj@tail-f.com> <MN2PR11MB4366078636D6030398489551B5860@MN2PR11MB4366.namprd11.prod.outlook.com> <CABCOCHQzmDjH+7wqFmrSsnaD0T_Q1LPsDi0yuY9Ow2gSvef4SA@mail.gmail.com> <01c701d57485$400d8d40$4001a8c0@gateway.2wire.net>
In-Reply-To: <01c701d57485$400d8d40$4001a8c0@gateway.2wire.net>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 26 Sep 2019 10:44:01 -0700
Message-ID: <CABCOCHRse2RJkoQ1r6pf+F4qP8MUn+4ypBY3M5zH+0QWoqBpuQ@mail.gmail.com>
To: tom petch <ietfc@btconnect.com>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000451bf205937851c7"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/7fod0FVOnckBwueR0U45KR9VpaQ>
Subject: Re: [netmod] What's the problem with NMDA? was Re: 答复: 答复: Please clarify implementation about ‘when’
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
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, 26 Sep 2019 17:44:18 -0000

Hi,


On Thu, Sep 26, 2019 at 9:14 AM tom petch <ietfc@btconnect.com> wrote:

> Inline
>
> Tom Petch
>
> ----- Original Message -----
> From: "Andy Bierman" <andy@yumaworks.com>
> To: "Rob Wilton (rwilton)" <rwilton@cisco.com>
> Cc: <netmod@ietf.org>; <yangang@huawei.com>
> Sent: Thursday, September 26, 2019 3:33 PM
>
> On Thu, Sep 26, 2019 at 3:32 AM Rob Wilton (rwilton) <rwilton@cisco.com>
> wrote:
>
> >
> >
> > > -----Original Message-----
> > > From: netmod <netmod-bounces@ietf.org> On Behalf Of Martin Bjorklund
> > > Sent: 26 September 2019 08:45
> > > To: lhotka@nic.cz
> > > Cc: yangang@huawei.com; netmod@ietf.org
> > > Subject: Re: [netmod] 答复: 答复: Please clarify implementation about
> > > ‘when’
> > >
> > > > >
> > > > > It also says in 8.2:
> > > > >
> > > > >    o  If a request modifies a configuration data node such that
> any
> > > > >       node's "when" expression becomes false, then the node in
> the
> > > data
> > > > >       tree with the "when" expression is deleted by the server.
> > > >
> > > > Right. But the request won't modify a configuration data node
> because
> > > > it is rejected. So the premise of the above implication doesn't
> hold,
> > > > and the conclusion doesn't apply.
> > >
> > > With the same logic you can claim conformance if you reject a
> request to
> > > create nodes under a case if another case is active.  I think it is
> quite
> > > clear that this auto-deletion is part of the spec, and something
> clients
> > > can rely on.  If the intention had been that this was optional to
> > > implement, it would have been clearly stated, and there would have
> been
> > > mechanism present for clients to detect this.
> > >
> > I don't like the 'when' behaviour, I would have rather that clients
> were
> > forced to delete the configuration explicitly (or pass an option for
> an
> > implicit delete).
>
> I hear the opposite from customers.
> They insist that the server implement every last detail of the
> machine-readable YANG,
> especially when-stmt auto-deletion. The auto-cleanup is seen as a
> feature.
>
> > However, I do agree with Martin & Juergen, that the intent of the spec
> is
> > that servers perform the 'when' auto-delete behaviour, and clients
> must be
> > able to rely on compliant servers behaving this way.
> >
>
> agreed.
> It is hard to argue against consistent, predicable server behavior
> for datastore editing.  (NP containers and NMDA are also causing
> problems,
> and should be fixed in yang-next if that ever happens).
>
> <tp>
>
> Andy
>
> This caught my eye.  What is the problem with NMDA? Anything specific?
>
> My own problem is that it is different to what has been proposed as
> suitable for the previous 12 years but I doubt if many customers would
> think that.
>
>
My comments are in the context of operator expectations for consistent
implementations.

The first problem with NMDA is the new YANG library.
There is an assumption that the client can and will change from an
architecture
where there is 1 schema tree per server to an architecture where there can
be a completely
different schema tree for configuration vs operational datastores.  There
is no such desire
or willingness on the client side to properly address this complexity. IMO
NMDA is going to
need to function without this complexity. The benefits of <operational> are
not hindered
at all (in a properly implemented server) if /yang-library is left out.

The IETF has completely punted the problem of converting data for a
configuration datastore
to the schema tree for <operational>. Deviations may be different.  A leaf
may
be string in 1 tree and decimal64 in the other. There is an incorrect
assumption
that software developers will deal with these corner-cases (correctly and
consistently).

The other big problem is an untested NMDA transition strategy that is not
well understood by vendors.
Should non-NMDA (/foo-state) be visible to <get-data> or just <get>?
Using the YANG library to separate the modules relies on the assumption that
the client is capable of managing each datastore independently (instead of
1 schema tree per server).



> Tom Petch
>
>
Andy


> Thanks,
> > Rob
> >
> >
>
> Andy
>
>
> >
> > >
> > > /martin
> > > _______________________________________________
> > > netmod mailing list
> > > netmod@ietf.org
> > > https://www.ietf.org/mailman/listinfo/netmod
> > _______________________________________________
>
>