Re: [netconf] Regarding RFC 6243 "With-defaults Capability for NETCONF" … the devil is in the defaults
Andy Bierman <andy@yumaworks.com> Tue, 18 April 2023 14:14 UTC
Return-Path: <andy@yumaworks.com>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E263BC14CE47 for <netconf@ietfa.amsl.com>; Tue, 18 Apr 2023 07:14:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.995
X-Spam-Level:
X-Spam-Status: No, score=-1.995 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id f6dMLCGrRA2D for <netconf@ietfa.amsl.com>; Tue, 18 Apr 2023 07:13:56 -0700 (PDT)
Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [IPv6:2a00:1450:4864:20::22c]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B00F7C14CE29 for <netconf@ietf.org>; Tue, 18 Apr 2023 07:13:56 -0700 (PDT)
Received: by mail-lj1-x22c.google.com with SMTP id bz21so6575010ljb.11 for <netconf@ietf.org>; Tue, 18 Apr 2023 07:13:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks.com; s=google; t=1681827234; x=1684419234; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=pbmlgxzS79dBPqV0OqiLP+ayPvnQ4H7VCZy6mjMNq7M=; b=LkWnYYohHmbV9+XGrNd9prNt+LTckGQHuhurFfpOG2Y2sQBpNi5TerKzyv+bxESsDM Wt0FfR2LqeyXMikRkfp7xCrdTyY8aAQXec+bwaNgw2iN/sdnzTaT4SYcc3CSc4mQfZN5 65R642aDGmf9syuVrHdYp4pxSRpsCAaXV4F17kMhHsvN7xJJn+a8kbC2f9DST59iXI3u e12FoMJvF8h/hGNJTwAC+cxeFMsHDAEJWpBNiPw1H4J0ncmXh1iHdP26fElj5SovSu4c quGu8yQH6dN5WtpQjC5cY4ocgs9052bpEmAjOFEUKPHrry4k2T/ayfKqOZeXr7j7O9lV LMAw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681827234; x=1684419234; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=pbmlgxzS79dBPqV0OqiLP+ayPvnQ4H7VCZy6mjMNq7M=; b=OdtsB3/v5AfDzAeBAoVfvM+jaMVeKAlge5timADbrYmBmiEAihEKSvznHaIInEaz3n Kq6MsByYif+Mv92PB2qSvYOnoBMYd8LOH93zmOuw40NJfYvdmoaohSxsCrYsJjLbznt0 /WoHv0BlWYv6mjwdK0CiD2m7uVyTb/LJEClo3SUaxhZcUcPCxOJq9p7b55rfwObWPHTn L9ADr40Cyw3Imhbyv/tjtYQ2Co4PFfyng8s20gBqVGw1fMT6Z+0h3aGu/F9YqLaZQzSt ZjElGCnPT+290gG8N2nWDCENSY+LPR/LM6ttiSE0sVE5son8UPByseOtPHBbuVOScz4P hGeA==
X-Gm-Message-State: AAQBX9eDKGagQlK2TVfwqKegxbRmhsXShhMK6KLeRUDwzEniRei3CcNU 5+dNog6AW6Cl7cHMRHA3GfUL4Ap7MM5vmjdfagz2MA==
X-Google-Smtp-Source: AKy350YiQVjF9piEdC1SLsTjhqlc+54QLaYEqJ14oGtUEPJ8HrJ4Sem7WHJVkPAEb7kFREY8gcQO13X1pvmGU5kIPhw=
X-Received: by 2002:a2e:9e15:0:b0:299:2b6d:6e90 with SMTP id e21-20020a2e9e15000000b002992b6d6e90mr784704ljk.34.1681827234283; Tue, 18 Apr 2023 07:13:54 -0700 (PDT)
MIME-Version: 1.0
References: <GV2PR02MB9637C58B7EE4FEDBFABC3F7CF7999@GV2PR02MB9637.eurprd02.prod.outlook.com> <CABCOCHTsAJTCoB8ejhw6fN6dD3eVgeySNoXJdA11eGaegL2sOQ@mail.gmail.com> <DM6PR08MB5084B3521373CA39ED8600979B9C9@DM6PR08MB5084.namprd08.prod.outlook.com> <AS8PR02MB9626433E934A54FC4CCF2282F79D9@AS8PR02MB9626.eurprd02.prod.outlook.com> <AS8PR02MB9626152E13CD6C06A4B051FCF79D9@AS8PR02MB9626.eurprd02.prod.outlook.com>
In-Reply-To: <AS8PR02MB9626152E13CD6C06A4B051FCF79D9@AS8PR02MB9626.eurprd02.prod.outlook.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Tue, 18 Apr 2023 07:13:42 -0700
Message-ID: <CABCOCHT5Unpa6RBAGbxek4Qk5JhxV6DJPc_MoOiZj9O+G2ZJ=w@mail.gmail.com>
To: dylan.sadoun@orange.com
Cc: "Jason Sterne (Nokia)" <jason.sterne@nokia.com>, "draft-ietf-netconf-with-defaults@ietf.org" <draft-ietf-netconf-with-defaults@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Content-Type: multipart/related; boundary="000000000000dfc54c05f99cea86"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/pXL2rlKOEavjgKYTJCwvrlse-Lk>
Subject: Re: [netconf] Regarding RFC 6243 "With-defaults Capability for NETCONF" … the devil is in the defaults
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: NETCONF WG list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Apr 2023 14:14:01 -0000
Hi, All these Errata should be rejected. There is a 2 word correction needed in 1 place. Andy On Tue, Apr 18, 2023 at 5:52 AM <dylan.sadoun@orange.com> wrote: > I submitted 3 errata just now: > > 1. One technical for the 2.3.1 section > 2. One technical for the 3.3 section > 3. One editorial (following advice from > https://www.ietf.org/about/groups/iesg/statements/processing-errata-ietf-stream/, > please change its classification if needed) for providing a supplementary > example illustrating the case of a NETCONF server setting data to values > other than their schema defaults > > > > I remain reachable by e-mail or telephone for any request. > > > > Cordialement / Regards. > > > > *Dylan SADOUN* > > +336 47 53 54 50 > > dylan.sadoun@orange.com > > > > > > Orange Restricted > > *De :* SADOUN Dylan DTSI/DTR > *Envoyé :* mardi 18 avril 2023 10:42 > *À :* Jason Sterne (Nokia) <jason.sterne@nokia.com>; Andy Bierman < > andy@yumaworks.com> > *Cc :* draft-ietf-netconf-with-defaults@ietf.org; netconf@ietf.org > *Objet :* RE: [netconf] Regarding RFC 6243 "With-defaults Capability for > NETCONF" … the devil is in the defaults > > > > Hello everyone > > > > OK, thank you, I am submitting an erratum right now. > > > > Cordialement / Regards. > > > > *Dylan SADOUN* > > +336 47 53 54 50 > > dylan.sadoun@orange.com > > > > > > Orange Restricted > > *De :* Jason Sterne (Nokia) <jason.sterne@nokia.com> > *Envoyé :* mardi 18 avril 2023 00:57 > *À :* Andy Bierman <andy@yumaworks.com>; SADOUN Dylan DTSI/DTR < > dylan.sadoun@orange.com> > *Cc :* draft-ietf-netconf-with-defaults@ietf.org; netconf@ietf.org > *Objet :* RE: [netconf] Regarding RFC 6243 "With-defaults Capability for > NETCONF" … the devil is in the defaults > > > > I agree that any data that is set should be returned. (note there is > plenty of debate as to whether/how a **server** sets data in its own > running, and several associated RFCs/drafts around this topic). > > > > *From:* netconf <netconf-bounces@ietf.org> *On Behalf Of *Andy Bierman > *Sent:* Friday, April 14, 2023 11:08 AM > *To:* dylan.sadoun@orange.com > *Cc:* draft-ietf-netconf-with-defaults@ietf.org; netconf@ietf.org > *Subject:* Re: [netconf] Regarding RFC 6243 "With-defaults Capability for > NETCONF" … the devil is in the defaults > > > > > > *CAUTION:* This is an external email. Please be very careful when > clicking links or opening attachments. See the URL nok.it/ext for > additional information. > > > > Hi, > > > > I think the text in 2.3.1 is an omission. > > > > "set by client" should be "set by client or server" > > > > Andy > > > > > > On Fri, Apr 14, 2023 at 7:53 AM <dylan.sadoun@orange.com> wrote: > > Hello > > > > I am reaching you about a potential technical erratum in *RFC 6243*, > although I am not accustomed to the IETF process. I read > https://www.ietf.org/about/groups/iesg/statements/processing-errata-ietf-stream/ > <https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Fabout%2Fgroups%2Fiesg%2Fstatements%2Fprocessing-errata-ietf-stream%2F&data=05%7C01%7Cdylan.sadoun%40orange.com%7Cb86705da7f9540b7694708db3f970c36%7C90c7a20af34b40bfbc48b9253b6f5d20%7C0%7C0%7C638173690201161442%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=oicNgtoiLC5VjCYFQC22n3dmHhjHoxBq95XK34C7E7A%3D&reserved=0> > but I am still not sure if that qualifies for an erratum request. Let me > share my observations with you, please tell me if I should report an > erratum and in that case I will do accordingly. > > > > The RFC defines 3 ways for NETCONF servers (most commonly routers for a > service provider such as my employer) to deal with default data for "get > and set" NETCONF operations. Each router implementation must choose one of > the 3 ways as its implicit/default/*basic* mode, and can also support > other modes if asked to by a NETCONF client. > > > > My concern is about the *explicit* mode (when the NETCONF server supports > it, with no distinction if it is the router's basic mode or not) and *configuration > data* reports by NETCONF servers. > > > > The RFC defines: > > > > *Explicitly set data* > > *Data that is set to any value by a NETCONF client or other management > application by the way of an explicit management operation, including any > data model schema default value. Any value set by the NETCONF server that > is not the schema defined default value is also considered explicitly set > data.* > > > > (emphasis mine. Please refer to the RFC for additional definitions). > > > > First, let me dive into the previous drafts to highlight the importance of > the highlighted text. In the *draft-ietf-netconf-with-defaults-04*, the > definition was different: > > > > *Explicitly set default data* > > *Is default data that is set by a NETCONF client or other external > management application/user by the way of an actual management operation to > the value specified as its default in the data model schema. Some servers > MAY treat explicitly set default data as simple default data, as they may > not be able to differentiate between them. Data, that is set to a value > other then its default value, is not default data, so its handling is > outside the scope of this document.* > > > > but as soon as the *draft-ietf-netconf-with-defaults-05*, the definition > was changed to its final RFC form (except for one word: "actual" instead of > "explicit"). Thus we can infer the early importance of the highlighted text: > > *Indeed, if a NETCONF server sets some data that are NOT schema default > data, these data are consired explicitly set data.* > > > > The whole point of this definition and its only purpose is to later define > the 'explicit' mode, the term being only used in the *2.3. 'explicit' > Basic Mode *and the* 3.3. 'explicit' Retrieval Mode paragraphs* (or in > other paragraphs, when refering to the explicit mode). > > The *2.3.1. 'explicit' Basic Mode Retrieval* paragraph states: > > *When data is retrieved from a server using the 'explicit' basic mode, and > the <with-defaults> parameter is not present, data nodes MUST be reported > if explicitly set by the client, even if they contain the schema default > value. Non-configuration data nodes containing the schema default value > MUST be reported.* > > > > (emphasis mine). > > > > This is where I think there is a mistake in the RFC. Why would only data > nodes explicitly set *by the client* be reported? Why not explictly set > data *by the server* as well? There are at least 3 arguments to qualify > that as a mistake: > > 1. Firstly, what is the point of the definition highlighting that if a > NETCONF server defines data (to values that are not the schema default > ones) it is also explicitly set data, if that specific case is then > excluded from the explicit mode paragraph? > 2. Secondly, if the NETCONF server does not report this data which is > not in the YANG schema, where should one be aware of the existence of this > data? (other than by using another mode). Having read the RFC multiple > times, it seems logical and intuitive to me that, in *any* mode, one > should be able to find *all* data on the server by combining the > NETCONF server report after a get AND the corresponding YANG schema. > 3. Thirdly, in the trim mode, this data would indeed be reported. > Isn't it weird and counter-intuitive that the trim mode be more verbose > than the explicit mode? > > Please note that the RFC examples fails to address this particular > situation. Maybe they should be expanded as well? > > > > To me, a correct and simpler formulation of the paragraph would be to > remove "by the client": > > *When data is retrieved from a server using the 'explicit' basic mode, and > the <with-defaults> parameter is not present, data nodes MUST be reported > if explicitly set. Non-configuration data nodes containing the schema > default value MUST be reported.* > > > > the reader can then read the definition for precisions. > > > > Or, if one wants to be more precise and paraphrase the "explicitly set > data" definition: > > *When data is retrieved from a server using the 'explicit' basic mode, and > the <with-defaults> parameter is not present, data nodes MUST be reported > if explicitly set. Data nodes containing the schema default value MUST be > reported if set by the a NETCONF client or other management application by > the way of an explicit management operation, and MUST NOT be reported if > set by the NETCONF server. Non-configuration data nodes containing the > schema default value MUST be reported.* > > > > Additionaly, the *3.3. 'explicit' Retrieval Mode* paragraph is also > ambiguous: > > *When data is retrieved with a <with-defaults> parameter equal to > 'explicit', a data node that was set by a client to its schema default > value MUST be reported. A conceptual data node that would be set by the > server to the schema default value MUST NOT be reported. Non-configuration > data nodes containing the schema default value MUST be reported.* > > > > What about data that was set by the NETCONF server to a value other than > the schema default value? I believe it should be reported, according to the > "explicitly set data" definition, and for the same reasons as the cricicism > of the 2.3.1 paragraph. Thus, this part too could be expanded, e.g. to: > > *When data is retrieved with a <with-defaults> parameter equal to > 'explicit', a data node that was set by a client to its schema default > value MUST be reported. A conceptual data node that would be set by the > server MUST be reported, expect if set **to the schema default value, in > which case it MUST NOT be reported*. Non-configuration data nodes > containing the schema default value MUST be reported. > > > > I hope I was clear enough in my explanations. Please note that this > ambiguity is not only problematic in theory but also in practice, for > various reasons that I can detail further if necessary. > > > > Best regards, > > > > > > *Dylan SADOUN* > > +336 47 53 54 50 > > dylan.sadoun@orange.com > > > > OF/DTSI/DTR/RSB/DIP/TAC CO > > *DTR* : Direction Technique des Réseaux > > *RSB* : Réseaux et Services Broadband > > *DIP* : Département IP > > *TAC CO* : TAC Collecte > > > >
- Re: [netconf] Regarding RFC 6243 "With-defaults C… Andy Bierman
- Re: [netconf] Regarding RFC 6243 "With-defaults C… Jason Sterne (Nokia)
- Re: [netconf] Regarding RFC 6243 "With-defaults C… Andy Bierman