Re: [netconf] Adoption poll for draft-tgraf-netconf-yang-notifications-versioning
Andy Bierman <andy@yumaworks.com> Fri, 19 May 2023 15:24 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 C3BD7C151B0A for <netconf@ietfa.amsl.com>; Fri, 19 May 2023 08:24:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level:
X-Spam-Status: No, score=-2.095 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, 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=unavailable 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 2lMtBjMhG8OH for <netconf@ietfa.amsl.com>; Fri, 19 May 2023 08:24:45 -0700 (PDT)
Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com [IPv6:2a00:1450:4864:20::12f]) (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 95FCCC151B09 for <netconf@ietf.org>; Fri, 19 May 2023 08:24:45 -0700 (PDT)
Received: by mail-lf1-x12f.google.com with SMTP id 2adb3069b0e04-4f13d8f74abso3896796e87.0 for <netconf@ietf.org>; Fri, 19 May 2023 08:24:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks.com; s=google; t=1684509883; x=1687101883; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=JALWcafwajFsbKzu3VbdvciZCvr3vWH8/Hqq4mSGuwE=; b=SXT9XMZDyO71wQ0XKKDaOhAg+wrTO5kdLxxQxwtEPmM5Yk5M7uPKWjOQJJjBVyfktg FlYmxC7XwMkXyFQEnP6gPSIt9NA7UIvqWBlLCMysOYKIyh7KGh8lNTRyfG4v+qaXkNJk R6SCmsVscc+LP86N8ITZR0ry4oODV/FIp+dPoUVwk4M9gvQ0tEqWqGd3+07AWYuY6mvN niH4d3Fw3upSBDfit//gEgfVdu10TI5QjNNKCUNlWN7jDVMsbrfWG8+gVhgbKwskCMui ItSYhgKgeOxhwM9CYCCJp27natJyEUh3T1Ay6XIYL9g2izryWI4l2Yq+HR9JxgsisgWu bCJw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684509883; x=1687101883; 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=JALWcafwajFsbKzu3VbdvciZCvr3vWH8/Hqq4mSGuwE=; b=LZH9KhtIWqv0KNM/9hQpY5OZ30G9ZQ9IzDCKah2M+YkkMuXeLLfOeKJAed0yeU5vsl 0tjb5Jg/hrzKLq5v/hD6thlN9OUjGe9eAQ1cw3nTYu+k6xMGJ9RSFy7T0EkHigOnjUtr l250hyiVay7TmMPLdlUpNbuRzLjcsii3gftK2KA9SJu+8art+GGnRvDqeP6wgZU9Mho0 UtxXfQoJbifihRzUCR0iURqTFfGkK0BMC3n5m9l/OpTtYj+LZjd4uawi1FNwhfwDI89M v4FdTM9KLRTE3x7V1wGyjs9l5oAoivtU5WLdAEMkfAPS4UAPY7IK/w7u2ienXcY0vtkx b1Ow==
X-Gm-Message-State: AC+VfDwPyGMwNsbBKqOf19GVIqz1TgWKk13GWextz8RKAxuZwEk7byX4 BVljPCYViZ01EpL7RVXXOgVP36UnDmmWkmI+nLeTRg==
X-Google-Smtp-Source: ACHHUZ5Gv8cJ81n7maWPl1xxWB4GtEJzLhHPg/6A0PAdkmyTSJWUTCbOWQdGL9MRLdQDjLlvB6Por/yJFnz27m1RKrQ=
X-Received: by 2002:a05:6512:218d:b0:4ea:e60a:2f5d with SMTP id b13-20020a056512218d00b004eae60a2f5dmr840565lft.40.1684509883144; Fri, 19 May 2023 08:24:43 -0700 (PDT)
MIME-Version: 1.0
References: <E78B3C0B-B415-4E8C-9080-ADFB69D4464E@gmail.com> <AM8PR06MB776465A8890FA1FF944F7249957E9@AM8PR06MB7764.eurprd06.prod.outlook.com> <fxqbpxqt4uddzynsqu7nrphks4ffdbcet2s4mzgq5kjybc7h5r@34fjvmua6eva> <AM8PR06MB77647944C3C804FB22E38B50957E9@AM8PR06MB7764.eurprd06.prod.outlook.com> <ibonfs57tsr2ymul4wsns5jhpoiofkciz7zw27udzixtt7olrx@zh5p3tjohxoo> <CABCOCHRmnOw_Tex1ixcyA=bjdHptHVyQ1nN1UKOfyC9nPqdxpQ@mail.gmail.com> <1d7ff7ee90cb441f843b460bdb216ff2@swisscom.com> <CABCOCHTJZFxY1YYpagz2wc-q8ki4AKb+B-3GOtJOG=hPkDRATg@mail.gmail.com>
In-Reply-To: <CABCOCHTJZFxY1YYpagz2wc-q8ki4AKb+B-3GOtJOG=hPkDRATg@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Fri, 19 May 2023 08:24:31 -0700
Message-ID: <CABCOCHQw13rH1WVrLvt25RWdUcESH_Y1PfaKC8B=jo4Jb52o4g@mail.gmail.com>
To: Thomas.Graf@swisscom.com
Cc: jschoenwaelder@constructor.university, ignacio.dominguezmartinez@telefonica.com, mjethanandani@gmail.com, netconf@ietf.org, netconf-chairs@ietf.org
Content-Type: multipart/alternative; boundary="00000000000034b86d05fc0d858c"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/2rikVSFAihqwZy-0rKxNN5X94Os>
Subject: Re: [netconf] Adoption poll for draft-tgraf-netconf-yang-notifications-versioning
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: Fri, 19 May 2023 15:24:49 -0000
On Fri, May 19, 2023 at 7:42 AM Andy Bierman <andy@yumaworks.com> wrote: > > > On Fri, May 19, 2023 at 4:05 AM <Thomas.Graf@swisscom.com> wrote: > >> Dear Andy, Jürgen, Nacho and Frank, >> >> >> >> Thanks a lot for the feedback and comments. I understand your concerns >> that they are targeting section 2, extending the YANG push subscription >> capability to not only subscribing to an xpath but also be capable to >> select with revision or revision-label. >> >> >> >> In section 1 we introduce the problem statement, here an excerpt: >> >> >> >> --- >> >> This semantic reference is available when the subscription is being >> establish as described in Section 3.6 of [RFC8641] and being streamed from >> the publisher to receiver with the subscription state change notifications >> described in Section 2.7 of [RFC8639] where for each subscription a locally >> unique subscription ID described in Section 4.3.2 of [RFC8641] is being >> issued and streamed as metadata with the notification message in the YANG >> push message header. >> >> >> >> The semantics can change between different YANG module revisions. The >> YANG module version statement is specified in Section 7.1.2 of [RFC6020] >> and states that the newer revision needs to be backward compatible to the >> previous revision. Section 3.1 of [I-D.ietf-netmod-yang-module-versioning] >> specifies that newer semantic versions introduced in >> [I-D.ietf-netmod-yang-semver] MAY not be backward compatible to the >> previous version when indicated with non-backwards-compatible keyword. >> >> --- >> >> >> >> When the software of a network node is being upgraded, possibly the YANG >> module revisions might change. Thanks to the extension describes in section >> 3 of the document, the YANG push receiver is now able to learn through the >> subscription state change notification message that the revision or/and >> revision-label has changed and through netconf <get-schema> the new YANG >> module must be obtained outband to retrieve the new semantics for the >> push-update notification message. >> >> >> >> So far so good. With this we prevented that the end to end data >> processing chain breaks because semantics can be maintained across network >> node software upgrades, YANG module changes, in configured subscription as >> well. However if the YANG module change involved a non-backward compatible >> change, messages are being dropped within the data processing chain. A >> network operator might ask, why should we publish YANG push messages from a >> network node when they cant be processed further down the data processing >> chain? Why shouldn't we give the network engineer the ability to express in >> the YANG push subscription that only YANG push messages complying to a >> certain revision or revision-label (semantic revision) should be published. >> This is what section 2 of the document tries to address. >> >> >> >> I understood in the mail thread that it was assumed that the YANG data >> store would need to support more than one revision per YANG module. This is >> not the case. The point is that when the configured subscription is >> established and while the messages are being published, the revision or >> revision-label might change. Today we do not have the ability to subscribe >> to a specific revision nor to a specific compatible revision-label. This is >> what we try to enable in this document. >> >> >> > > > > These are the network operators concerns and needs. From an implementer >> point of view, do you believe this makes sense and is implementable? >> >> >> > > > Good news: you are not trying to undo the 'implement 1 revision' > requirement in RFC 7950. > Not so good news: There are already 2 events (netconf-capability-change > and yang-library-change) > to notify the client of the extremely rare module update event. > > In the rare event a module is updated, the subscriber gets a 3rd > notification for this change, > and the data from the module starts to be filtered by the server so the > subscriber is prevented > from receiving the "unwanted" data. This can be quite complicated to > implement, > forcing special processing for each subscription. > > I am not in favor of changing YANG Push in this way. > > I do not see any clear YANG definition or examples for these augments: module: ietf-yang-push-revision augment /sn:establish-subscription/sn:input/sn:target: +--rw revision? rev:revision-date-or-label +-- revision-label? ysver:version augment /sn:modify-subscription/sn:input/sn:target: +--rw revision? rev:revision-date-or-label +-- revision-label? ysver:version augment /sn:subscription-started/sn:target: +--ro revision rev:revision-date-or-label +-- revision-label? ysver:version augment /sn:subscription-modified/sn:target: +--ro revision rev:revision-date-or-label +-- revision-label? ysver:version augment /sn:subscriptions/sn:subscription/sn:target: +--ro revision rev:revision-date-or-label +--rw revision-label? ysver:version Since a subscription filter is not limited to 1 module, It is unclear how this draft would be implemented. The augment is not a module-name + revision, just a revision. The purpose is unclear. These leafs are added to the establish-subscription input. leaf revision { type rev:revision-date-or-label; description "This references the YANG module revision to be sent in the subscription."; } leaf revision-label { type ysver:version; description "This references the YANG module semversion to be sent in the subscription."; } The subscription never specifies a module, so what module name do these parameters affect? Sec 2 describes some parameter values that do not exist (latest, latest-compatible-semversion) The YANG module defines a yang-push-revision-supported feature, but there are no if-feature statements that reference it. Andy > >> Looking forward for your feedback and comments. >> >> >> >> Best wishes >> >> Thomas >> > > > Andy > > >> >> >> *From:* netconf <netconf-bounces@ietf.org> *On Behalf Of *Andy Bierman >> *Sent:* Wednesday, May 17, 2023 7:27 PM >> *To:* Jürgen Schönwälder <jschoenwaelder@constructor.university>; >> IGNACIO DOMINGUEZ MARTINEZ-CASANUEVA < >> ignacio.dominguezmartinez@telefonica.com>; Mahesh Jethanandani < >> mjethanandani@gmail.com>; netconf <netconf@ietf.org>; netconf-chairs < >> netconf-chairs@ietf.org> >> *Subject:* Re: [netconf] Adoption poll for >> draft-tgraf-netconf-yang-notifications-versioning >> >> >> >> >> >> >> >> On Wed, May 17, 2023 at 1:42 AM Jürgen Schönwälder < >> jschoenwaelder@constructor.university> wrote: >> >> All of this has been pointed out before and does not come as a >> surprise. So we should have a general answer how to handle the >> "damage" created by an NBC update of YANG that according to some does >> not even require a YANG version number change. >> >> >> >> It is more than just a conformance issue. >> >> It is hard to overstate the importance of RFC 7950 as the 1 well-written >> >> document needed to learn YANG. It may be OK to distribute the >> >> YANG data model in lots of ad-hoc specifications, but not the >> >> data modeling language definition. >> >> >> >> People (way outside the IETF) will be expected to learn and use the "new" >> YANG correctly, >> >> and that will be much more difficult without even a name, let alone a >> version number. >> >> What is the new YANG called? "NBC YANG"? >> >> >> >> >> >> Andy >> >> >> >> >> >> .. >> /js >> >> ... >> >> >> >
- [netconf] Adoption poll for draft-tgraf-netconf-y… Mahesh Jethanandani
- Re: [netconf] Adoption poll for draft-tgraf-netco… Jürgen Schönwälder
- Re: [netconf] Adoption poll for draft-tgraf-netco… Diego R. Lopez
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Zhuoyao LIN
- [netconf] 答复: Adoption poll for draft-tgraf-netco… Fengchong (frank)
- Re: [netconf] Adoption poll for draft-tgraf-netco… IGNACIO DOMINGUEZ MARTINEZ-CASANUEVA
- Re: [netconf] Adoption poll for draft-tgraf-netco… Jürgen Schönwälder
- Re: [netconf] Adoption poll for draft-tgraf-netco… IGNACIO DOMINGUEZ MARTINEZ-CASANUEVA
- Re: [netconf] Adoption poll for draft-tgraf-netco… Jürgen Schönwälder
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Jürgen Schönwälder
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Jürgen Schönwälder
- Re: [netconf] Adoption poll for draft-tgraf-netco… Camilo Cardona
- Re: [netconf] Adoption poll for draft-tgraf-netco… Jürgen Schönwälder
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Rob Wilton (rwilton)
- Re: [netconf] Adoption poll for draft-tgraf-netco… Alex Huang Feng
- Re: [netconf] Adoption poll for draft-tgraf-netco… Jean Quilbeuf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Benoit Claise
- Re: [netconf] Adoption poll for draft-tgraf-netco… Andy Bierman
- Re: [netconf] Adoption poll for draft-tgraf-netco… Voyer, Daniel
- Re: [netconf] Adoption poll for draft-tgraf-netco… N.Leymann
- Re: [netconf] Adoption poll for draft-tgraf-netco… li_zhenqiang@hotmail.com
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Mahesh Jethanandani
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Mahesh Jethanandani
- Re: [netconf] Adoption poll for draft-tgraf-netco… Thomas.Graf
- Re: [netconf] Adoption poll for draft-tgraf-netco… Mahesh Jethanandani