Re: [netmod] Unknown bits - backwards compatibility

Andy Bierman <andy@yumaworks.com> Thu, 13 April 2023 21:32 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 6F4AFC152A02 for <netmod@ietfa.amsl.com>; Thu, 13 Apr 2023 14:32:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.095
X-Spam-Level:
X-Spam-Status: No, score=-7.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_DNSWL_HI=-5, 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 ickxfihSI9YI for <netmod@ietfa.amsl.com>; Thu, 13 Apr 2023 14:32:47 -0700 (PDT)
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com [IPv6:2a00:1450:4864:20::233]) (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 85D7DC1522D7 for <netmod@ietf.org>; Thu, 13 Apr 2023 14:32:42 -0700 (PDT)
Received: by mail-lj1-x233.google.com with SMTP id h8so987913ljf.3 for <netmod@ietf.org>; Thu, 13 Apr 2023 14:32:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks.com; s=google; t=1681421560; x=1684013560; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=RAohR9pUX1udvyk/k1E/ddYVVSoTFnspQiuESGrTl8Y=; b=SyJCn7Yh3M/fJ9RcgElQPSsejRGP82ngbqNc6Wjf2jWoD4OXyrMuPZLWxqgcnzWxH6 OTvZbn02RIiRVK/BKPUYJzNduunr+rF1ZZzsCs2RkoNoIABDnFHj9B9N6RZK+GwYp45+ ToWIYCfDZ5BUQRI05VTjSnH4qzupehm3x7xdcacRUrxuetI7aYDqgBdiUF1VZZ+xAItk iEvUDls5FJzdVnFdS5UzhOh5nCm+KlFOaRtxMahSsVEC9AQhY1ONCXp9UxYzCA9HTzrw Nre/NTGNS4UfDA0dTTxqthpvwlvoonN7K09xmjliz7BdbZqx9fQI0xql9v7oOp3UX6iC rUNA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681421560; x=1684013560; 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=RAohR9pUX1udvyk/k1E/ddYVVSoTFnspQiuESGrTl8Y=; b=g82NPpxmmVp34Qz5KlggJb0HjcMvn7wEXzwaUBo2WPrty/jyMCksDFEJR7W2iUphzX QDNEle9FcSeRtcWbAAaKCe814AHu+oN71n4PAlvfUq3kHyuSQiZj/jKOJoLwzimDxxYF 9kAs9cJG3KNMCgtiwgBMpNqBkKJzfP/yetA4VW0VCdOWRcGZwV0zqcAPtFRCWsOqVSEY eRX2a1GoQAq6QszDa8DbMz2K8jO7Ii7n/yRDldhjS6wmA9orA42uY7ZdefayNR5uT5Ga 1heB+gOU6MAwKSlSZ7fTmnZKFs4kL6YCxV4cxFy7AHePZ6DULX1BIrnoKYufXhDnOVHs T6AQ==
X-Gm-Message-State: AAQBX9eDWKZpkk5Vwn07sm3I37W4ZvCGKyJi6uALxRHjGaJaUCl4XA3U 9n7TUnRhIzPITi472yEEQwaWuehC5o87zWBTpj4yAiZ4O6j9Oukr
X-Google-Smtp-Source: AKy350ZY3mfbAvkpQ1wN1rNhkcAHT3K+I7JVnxg7Sc3iA2OtNgLWEa2ddvk8rwDWI2Uj03LVrskSSmiiOLKpcZrYUIM=
X-Received: by 2002:a2e:8849:0:b0:2a7:b120:ce2b with SMTP id z9-20020a2e8849000000b002a7b120ce2bmr1038939ljj.8.1681421560005; Thu, 13 Apr 2023 14:32:40 -0700 (PDT)
MIME-Version: 1.0
References: <167510951913.30783.6878062588510633543@ietfa.amsl.com> <70DA36EA-F90A-4800-A4C8-0DDCF6FFD845@pfrc.org> <0F8C57E5-F7F8-4383-A9BE-E98D2C6A6E42@pfrc.org> <DM6PR08MB50841A7B84BA1D84AC0B57809B9B9@DM6PR08MB5084.namprd08.prod.outlook.com> <DM6PR08MB5084E9656CA7C388D2A229779B9B9@DM6PR08MB5084.namprd08.prod.outlook.com> <A3EFA144-664D-4F67-8565-111EF650CE0B@pfrc.org> <DM6PR08MB508452FBF0266BCDEC68464F9B989@DM6PR08MB5084.namprd08.prod.outlook.com> <44DB67B7-D1D9-4A4D-835B-8182491E803E@pfrc.org> <DM6PR08MB50847617C83E424C3E323F919B989@DM6PR08MB5084.namprd08.prod.outlook.com>
In-Reply-To: <DM6PR08MB50847617C83E424C3E323F919B989@DM6PR08MB5084.namprd08.prod.outlook.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 13 Apr 2023 14:32:28 -0700
Message-ID: <CABCOCHQcXFQOfwONYhtGpMSJbB=N+uvFXkx-b9asW0vfhw1jbw@mail.gmail.com>
To: "Jason Sterne (Nokia)" <jason.sterne@nokia.com>
Cc: Jeffrey Haas <jhaas@pfrc.org>, "netmod@ietf.org" <netmod@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000cd580905f93e7660"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/OYUOMpE7bnn80b2ghWhMKHSRQQM>
Subject: Re: [netmod] Unknown bits - backwards compatibility
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.39
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, 13 Apr 2023 21:32:51 -0000

On Thu, Apr 13, 2023 at 2:00 PM Jason Sterne (Nokia) <jason.sterne@nokia.com>
wrote:

> Hi Jeff,
>
>
>
> We avoided getting into subtleties about “severity” of an NBC change (hard
> enough to just get agreement on basic rules). But I do think it is useful
> to come up with changes and approaches that have lower impact on
> users/clients even if they are still marked as NBC.
>
>
>
> For the new versioning marking, it would basically be the following. In
> the “revision” statement of the new module:
>
>    1. Add "rev:non-backwards-compatible" as per draft-ietf-netmod-yang-module-versioning-08
>    - Updated YANG Module Revision Handling
>    <https://datatracker.ietf.org/doc/draft-ietf-netmod-yang-module-versioning/>
>    2. Increment the major version of the YANG Semver (i.e. go from 1.0.0
>    to 2.0.0) as per draft-ietf-netmod-yang-semver-11 - YANG Semantic
>    Versioning
>    <https://datatracker.ietf.org/doc/draft-ietf-netmod-yang-semver/11/>
>
>
>

I do not see any way to interpret RFC 7950 such that a YANG extension can
be added
later to another document that overrides any normative behavior defined in
RFC 7950.

So as long as a vendor wants to claim conformance to YANG 1.1, no MUSTs in
7950 can
be violated. Period.  That may be harsh, but MUST and MUST NOT work that
way.


That may seem harsh, but we leaned towards being strict on flagging any NBC
> change in order to avoid false-negatives (i.e. false-positives aren’t as
> bad). Users can then diff the module versions, see that only the
> unknown-bits stuff has changed, and then decide if they need to update
> their client, etc.
>
>
>
> Jason
>
>
>


Andy


> *From:* Jeffrey Haas <jhaas@pfrc.org>
> *Sent:* Thursday, April 13, 2023 4:44 PM
> *To:* Jason Sterne (Nokia) <jason.sterne@nokia.com>
> *Cc:* netmod@ietf.org
> *Subject:* Re: Unknown bits - backwards compatibility
>
>
>
>
>
> *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.
>
>
>
> Jason,
>
>
>
>
>
> On Apr 13, 2023, at 4:29 PM, Jason Sterne (Nokia) <jason.sterne@nokia.com>
> wrote:
>
> *[>>JTS:] Yeah – I see that perspective. But a client using the old
> API/contract gets new/different behavior for the unknown-flags leaf from a
> new server. Hence NBC – unless we decide in the end to somehow make this
> specific case/typedef an exception but I’m not sure about that yet. The
> typedef and behavior you are describing there may still be useful as-is
> even if we decide to still officially consider the change to unknown-flags
> behavior as NBC (i.e. in new the version of the module that changes a bit
> from unknown to known).*
>
>
>
> Understood.  True to form, I seldom seem to come to netmod with easy
> problems. :-)
>
>
>
> Not having read the current versioning material, this would seem to be a
> case where you could consider this NBC, but likely not-problematic.  I'm
> not sure if you have "severity" as a concept in the discussions thus far.
>
>
>
> If there's current verbiage about documenting NBC considerations, feel
> free to point me to the appropriate documents.  As a general purpose
> mechanism, the draft could simply describe that any time an update to the
> known leaf type is done that the unknown leaf type is flagged for NBC for
> the newly assigned bits.
>
>
>
>
>
> I wish to point you and others concerned on these points to the BGP YANG
> modeling for Extended Communities, which will have these problems in a
> different flavor: Known communities will render via the typedefs, unknown
> will render using the prefix 'raw'.  (See typedef bgp-ext-community-type.)
>  This headache is already a consideration in every BGP implementation that
> deals with extended communities in changing meaning.
>
> *[>>JTS:] Can you point me to a repository or RFC where I can see this?
> I’m not familiar with where this YANG work is being done.*
>
>
>
> Sorry for not including the URL.  This document went to WGLC for IDR a few
> days ago.  We'll be asking (yet yet yet again) for YANG doctor review.
>
> https://www.ietf.org/archive/id/draft-ietf-idr-bgp-model-16.html
>
>
>
> You'll find the typedef issue for extended communities in there, and also
> the field for unknown bits in the operational state that is the genesis for
> this conversation.
>
>
>
> Figure 4 in draft version -02 shows how the type gets modified to add the
> new bit. The model doesn't change between step 1/ step 2 beyond this.  *[>>JTS:]
> Sure – maybe just mention explicitly that the model for unknown-flags stays
> unchanged.*
>
>
>
> If you'd find it helpful, I could add to the text covering Figure 8 "after
> assignment, bit-1 is no longer returned in unknown-flags".  Is that what
> you're looking for?*[>>JTS:] Yes – that would probably help.*
>
>
>
> I'll try to roll in these changes soon. Thanks.
>
>
>
> -- Jeff
>
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>