Re: [netmod] WG Last Call for draft-ietf-netmod-yang-metadata-01 (until 2015-06-29)

Ladislav Lhotka <lhotka@nic.cz> Wed, 17 June 2015 16:11 UTC

Return-Path: <lhotka@nic.cz>
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 BEAF91B29C2 for <netmod@ietfa.amsl.com>; Wed, 17 Jun 2015 09:11:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.686
X-Spam-Level:
X-Spam-Status: No, score=0.686 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HELO_EQ_CZ=0.445, HOST_EQ_CZ=0.904, RCVD_IN_BL_SPAMCOP_NET=1.347, T_RP_MATCHES_RCVD=-0.01] autolearn=no
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 eVTKSjXO0T6b for <netmod@ietfa.amsl.com>; Wed, 17 Jun 2015 09:11:30 -0700 (PDT)
Received: from mail.nic.cz (mail.nic.cz [IPv6:2001:1488:800:400::400]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 522641B29CA for <netmod@ietf.org>; Wed, 17 Jun 2015 09:11:25 -0700 (PDT)
Received: from [172.29.2.202] (nat-14.bravonet.cz [77.48.225.14]) by mail.nic.cz (Postfix) with ESMTPSA id 70EF9180C5A; Wed, 17 Jun 2015 18:11:23 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=nic.cz; s=default; t=1434557483; bh=QkhNeCmO2wS1Vyj4XrO1y0nxCbaRIvVr43zNVLVvsU8=; h=From:Date:To; b=dSwFFTn/mEsH+Tky/ySwPs8cjacF17/kJkQtdkKn+jA66b8fY4iswpwQnrtQYwiOQ 5M2VheBEeFACju7AWY72gMfBH2Ifliwct2e6FUB+gCdoiGU3i0AQhnP3uv+KEDvjXm +jmb9fPwVkhOF6tfe6pWRGhGfRb4rARXMUTFCg3M=
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2098\))
From: Ladislav Lhotka <lhotka@nic.cz>
In-Reply-To: <CABCOCHRMGySt=3KOOA-ms4WJkKzAS=5CXBctarhbf-59S=WUNg@mail.gmail.com>
Date: Wed, 17 Jun 2015 18:11:25 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <A7D33512-E296-4B90-9A2B-46925E763261@nic.cz>
References: <D1A4CEBA.B22F8%kwatsen@juniper.net> <20150617.095439.2211831130594238981.mbj@tail-f.com> <m2vbem4ryj.fsf@nic.cz> <20150617.121216.1211666276307602571.mbj@tail-f.com> <7E9BC65B-8A73-4352-87C7-8A826EFAC45B@nic.cz> <20150617115109.GC21292@elstar.local> <4D6394A6-06D1-4275-8151-E1C34DB20965@nic.cz> <20150617125009.GA21463@elstar.local> <1727EA47-E767-48F1-BB47-D2C13C16EE5D@nic.cz> <CABCOCHRMGySt=3KOOA-ms4WJkKzAS=5CXBctarhbf-59S=WUNg@mail.gmail.com>
To: Andy Bierman <andy@yumaworks.com>
X-Mailer: Apple Mail (2.2098)
X-Virus-Scanned: clamav-milter 0.98.7 at mail
X-Virus-Status: Clean
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/WPSuQqk61zAwSlXS4aeakExAkvM>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Subject: Re: [netmod] WG Last Call for draft-ietf-netmod-yang-metadata-01 (until 2015-06-29)
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: <http://www.ietf.org/mail-archive/web/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, 17 Jun 2015 16:11:32 -0000

> On 17 Jun 2015, at 17:13, Andy Bierman <andy@yumaworks.com> wrote:
> 
> 
> 
> On Wed, Jun 17, 2015 at 6:13 AM, Ladislav Lhotka <lhotka@nic.cz> wrote:
> 
> > On 17 Jun 2015, at 14:50, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote:
> >
> > On Wed, Jun 17, 2015 at 02:34:52PM +0200, Ladislav Lhotka wrote:
> >>
> >>> On 17 Jun 2015, at 13:51, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote:
> >>>
> >>> On Wed, Jun 17, 2015 at 01:41:56PM +0200, Ladislav Lhotka wrote:
> >>>>
> >>>>
> >>>> Well, but it is exactly what Kent objected against. It is the requirement to support “old clients” that causes the trouble here (and elsewhere). If client A sets “inactive” somewhere, then the datastore semantics will change also for client B that doesn’t understand “inactive” and may be wondering why the server ignores his edits.
> >>>>
> >>>> I understand (although RFC 6241 doesn’t say it explicitly) that, unlike YANG extensions, a NETCONF capability advertised by the server can be mandatory for the client in the sense that it has to understand and honour it.
> >>>
> >>> There is no way for a client to tell whether a certain capability URI
> >>> (it has never seen before) is mandatory to understand or not. In fact,
> >>
> >> So it means that, e.g. the annotations from
> >>
> >> https://tools.ietf.org/html/draft-kwatsen-conditional-enablement-00
> >>
> >> cannot be safely used by the server even after advertising them via :conditional-enablement capability.
> >
> > Yes, advertisement is not sufficient.
> >
> >>> Without further protocol support to negotiate annotations, I think
> >>> annotations must be limited to things that can be safely ignored by a
> >>> client. I have not read the I-D yet but I would expect that it should
> >>> say something like that. ;-)
> >>
> >> But it’s not a specific problem of this draft, it would simply mean that annotations that cannot be ignored cannot be used at all, no matter what. However, some annotations that have been proposed (and probably used in the wild) are of that sort.
> >>
> >
> > They cannot be used safely until there is an annotation negotiation
> > mechanism, or as Martin indicated, a way for a client to explicitely
> > enable the functionality associated with certain annotations.
> 
> Even this breaks down if an annotation has global side effects. This actually seems to be true for the whole idea of a client cherry-picking from the capabilities (and YANG modules) advertised by the server.
> 
> 
> 
> IMO conditional enablement is trivial to add in a way that does not break
> clients unaware of the disabled nodes.  As Martin pointed out, the only
> way the client can see them is to ask explicitly that the metadata be returned.
> Otherwise the disabled nodes look like deleted nodes.  For validation
> purposes, they are deleted nodes.

I don’t think it is that easy. What if an unaware client creates something in the inactive area which he sees as empty? Will all the inactive subtree be deleted?

But I agree this is not the time to discuss this particular annotation. Martin proposed some text changes and I’d like to know whether everybody is happy with them.

Lada

> 
> The NETCONF-EX <get2> operation had a "metadata" parameter so the
> client could ask for specific attributes.  Hard-wired parameters like
> "with-defaults" or "with-disabled" will also work.
> 
> If the client cannot ignore the behavior defined by the capability,
> then it isn't a NETCONF protocol capability, it's a different non-standard
> protocol.
> 
>  
> Lada
> 
> Andy
>  
> 
> >
> > /js
> >
> > --
> > Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> > Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> > Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
> 
> --
> 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