Re: [core] Robert Wilton's Discuss on draft-ietf-core-sid-16: (with DISCUSS and COMMENT)

Michael Richardson <mcr+ietf@sandelman.ca> Tue, 13 July 2021 19:00 UTC

Return-Path: <mcr+ietf@sandelman.ca>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9E1793A0DFC; Tue, 13 Jul 2021 12:00:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.199
X-Spam-Level:
X-Spam-Status: No, score=-4.199 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=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 kEf9QAnLzxLT; Tue, 13 Jul 2021 12:00:38 -0700 (PDT)
Received: from tuna.sandelman.ca (tuna.sandelman.ca [IPv6:2607:f0b0:f:3:216:3eff:fe7c:d1f3]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BBC993A0E9F; Tue, 13 Jul 2021 12:00:32 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by tuna.sandelman.ca (Postfix) with ESMTP id 03FF138B2F; Tue, 13 Jul 2021 15:03:24 -0400 (EDT)
Received: from tuna.sandelman.ca ([127.0.0.1]) by localhost (localhost [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 70k0OWVYUq70; Tue, 13 Jul 2021 15:03:19 -0400 (EDT)
Received: from sandelman.ca (obiwan.sandelman.ca [IPv6:2607:f0b0:f:2::247]) by tuna.sandelman.ca (Postfix) with ESMTP id 3B38638B2D; Tue, 13 Jul 2021 15:03:19 -0400 (EDT)
Received: from localhost (localhost [IPv6:::1]) by sandelman.ca (Postfix) with ESMTP id 406A949D; Tue, 13 Jul 2021 15:00:24 -0400 (EDT)
From: Michael Richardson <mcr+ietf@sandelman.ca>
To: "Rob Wilton \(rwilton\)" <rwilton@cisco.com>, The IESG <iesg@ietf.org>, "draft-ietf-core-sid\@ietf.org" <draft-ietf-core-sid@ietf.org>, "core-chairs\@ietf.org" <core-chairs@ietf.org>, "core\@ietf.org" <core@ietf.org>
In-Reply-To: <DM4PR11MB54388A5B0C2305C66A39EE2BB5149@DM4PR11MB5438.namprd11.prod.outlook.com>
References: <162619194652.5730.10916340155265302741@ietfa.amsl.com> <26411.1626197913@localhost> <DM4PR11MB54388A5B0C2305C66A39EE2BB5149@DM4PR11MB5438.namprd11.prod.outlook.com>
X-Mailer: MH-E 8.6+git; nmh 1.7+dev; GNU Emacs 26.1
X-Face: $\n1pF)h^`}$H>Hk{L"x@)JS7<%Az}5RyS@k9X%29-lHB$Ti.V>2bi.~ehC0; <'$9xN5Ub# z!G,p`nR&p7Fz@^UXIn156S8.~^@MJ*mMsD7=QFeq%AL4m<nPbLgmtKK-5dC@#:k
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature"
Date: Tue, 13 Jul 2021 15:00:24 -0400
Message-ID: <17256.1626202824@localhost>
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/gIKyn9OQvFGyLPpkA6GmIqNo-uM>
Subject: Re: [core] Robert Wilton's Discuss on draft-ietf-core-sid-16: (with DISCUSS and COMMENT)
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 13 Jul 2021 19:00:52 -0000

Rob Wilton (rwilton) <rwilton@cisco.com> wrote:
    > leaf foo {
    > type string {
    > len "1..20";
    > }
    > }

    > Or the definition of foo could change in a non-backwards-compatible way.  E.g.,

    > leaf foo {
    > type int32;
    > }

    > RFC 7950 basically states that this is not allowed, but these sorts of
    > changes happens anyway (e.g., vendors fixing bugs, or bugs in standard
    > YANG models), and the YANG versioning work will allow these sorts of
    > changes with appropriate mitigations.
    > https://datatracker.ietf.org/doc/html/draft-ietf-netmod-yang-module-versioning-03

    > But in all these cases, no new SID should be allocated, or otherwise
    > you will have two SIDs assigned to the same name/path.

Encoding towards CBOR, the CBOR wouldn't care that much about the change in
type, as the CBOR is self-describing in that way.
So maybe it's okay if a new SID is not allocated.

Where it would be a problem is if the change was from a 1-based count to a
0-based count, both encoded as integers.  In that case, I really hope it
would go from "foo" to "foo-0" or something like that.

    >> > The draft states that if the
    >> > definition is changed in a non-backwards-compatible (NBC) way then a
    >> > new SID
    >> > SHOULD be allocated.
    >>
    >> True, I assume that this leads to a new YANG leaf name.

    > Only if the author gives the definition a new name, and from a SID
    > allocation POV, this is just a new item name in the schema, and hence
    > needs a new SID.  I.e., the allocation of a new SID is related to a new
    > item name, not because of changes in a definition.

I agree that we have a problem enforcing at the pyang sid generation place
that non-backwards compatible changes need new SIDs.  That sounds like a
tooling improvement, rather than a bug in the spec.

    >> > The policy in 7.6 for the "IETF
    >> > YANG SID Registry" requires an RFC.  What is the mechanism if an
    >> > individual or
    >> > open source project wanted to get SIDs assigned for some of their YANG
    >> > modules?
    >>
    >> > I.e., should we be defining a separate mega-range, managed by IANA,
    >> > with just
    >> > Expert Review or Specification Required so that these modules could use
    >> > SIDs
    >> > allocated?  Or do you envisage a separate entity taking up the
    >> > responsibility
    >> > for coordinating this?
    >>
    >> My impression was that there would be a mega-range operated outside of
    >> IANA
    >> for this (open source, non-RFC YANG module) kind of thing, but I think that
    >> the energy for doing that may have waned.

    > Okay.  If there is a lack of energy there, do you think that this is
    > something that we should be asking IANA to manage (i.e., have this
    > draft separate a separate mega-range for these other modules)?

So, we should have a second mega-range allocation, with a FCFS
considerations.  I would be in favour of that.
(It could also happen in a new document or via some other IESG action.)

--
Michael Richardson <mcr+IETF@sandelman.ca>   . o O ( IPv6 IøT consulting )
           Sandelman Software Works Inc, Ottawa and Worldwide