[core] CoRECONF Topic Interim: CORECONF (Re: CoRE WG Virtual Interim 2023-03-15)

Carsten Bormann <cabo@tzi.org> Wed, 15 March 2023 12:30 UTC

Return-Path: <cabo@tzi.org>
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 2E5A6C15153E for <core@ietfa.amsl.com>; Wed, 15 Mar 2023 05:30:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.895
X-Spam-Level:
X-Spam-Status: No, score=-1.895 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_BLOCKED=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=ham autolearn_force=no
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 03fs7CAu98fY for <core@ietfa.amsl.com>; Wed, 15 Mar 2023 05:30:06 -0700 (PDT)
Received: from smtp.uni-bremen.de (smtp.uni-bremen.de [134.102.50.15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 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 42292C151546 for <core@ietf.org>; Wed, 15 Mar 2023 05:30:04 -0700 (PDT)
Received: from [192.168.217.124] (p548dc9a4.dip0.t-ipconnect.de [84.141.201.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.uni-bremen.de (Postfix) with ESMTPSA id 4Pc8qG3dM4zDCcC; Wed, 15 Mar 2023 13:30:02 +0100 (CET)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.7\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <7dd450d4-593f-41bc-1059-1ba0c3327b29@ri.se>
Date: Wed, 15 Mar 2023 13:30:02 +0100
X-Mao-Original-Outgoing-Id: 700576202.088271-2532b6342f39c66ddf68f3aa00b4d264
Content-Transfer-Encoding: quoted-printable
Message-Id: <3B08EE5C-FAAE-4135-864D-CE2FA5FB5E92@tzi.org>
References: <7dd450d4-593f-41bc-1059-1ba0c3327b29@ri.se>
To: "core@ietf.org WG (core@ietf.org)" <core@ietf.org>
X-Mailer: Apple Mail (2.3608.120.23.2.7)
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/cs1R3zromrFOYdUTqUiJyVHXPRE>
Subject: [core] CoRECONF Topic Interim: CORECONF (Re: CoRE WG Virtual Interim 2023-03-15)
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.39
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: Wed, 15 Mar 2023 12:30:10 -0000

Since we have a number of issues in the area of CORECONF and other YANG-related efforts, we decoded to focus today’s interim on a single wider topic:
bringing the YANG and CoRE ecosystems closer together.

[3] has a some detailed agenda (which I will fill some more in after sending this email).
This is definitely open for BYOI (bring your own issue).

Slightly reordering the list in the agenda, I’d like us to cover the following ground:

> SID allocation:
>   <draft-ietf-core-sid-20.txt>
>   <draft-toutain-lpwan-sid-allocation-02.txt>

CoRE-SID is in IESG processing, with a parallel working group last call verifying the technical changes we made in IESG processing (WGLC closes tomorrow).
Please get your comments in!

One issue is that there doesn’t seem to be a tool we can use for validating our examples and the SID file against the YANG model for SID files.
A number of necessary fixes have been identified and implemented.
One fix is outstanding:

* SID completeness

It does not seem the PYANG tool we are using to generate the SID file generates a complete set of SIDs (thank you for pointing this out, Jernej [4]).
So do we agree what a complete set would be?
How do we get PYANG to emit this complete set, or do we add the missing parts manually?
(Of course, new SIDs can always be added, so missing one is not catastrophic.)

The LPWAN draft cited above proposes the specific allocations for certain LPWAN protocols. How do we check a document like this?  Is it complete?

See also Appendix A of draft-bormann-cbor-cddl-csv-02 [5] for an efficient way to discuss SID allocations.

> Access to YANG information bases via CoAP:
>   <draft-ietf-core-comi-12.txt>

This is the mapping of CORECONF onto CoAP, like RFC 8040 provides the details of using HTTP for RESTCONF.

This already went through a Working Group Last-call, but then underwent some simplifications after discussing -11 at the IETF 115 hackathon.

I am pretty certain that these simplifications are the way to go, but I would like to hear concerns.

* simplify/optimize URI representation of instance identifiers?

Also, there is a proposal for going one step further in aligning e.g. the FETCH payload and the GET URI, and I’d like to have some feedback:

For an instance identifier like [1533, "eth0”] (RFC 9254 notation), COMI-12 uses the URI:

/c/X9?ZGV0aDA

Where X9 is the base64-encoded SID 1533, and ZGV0aDA is base64-encoded ["eth0”] (as a CBOR sequence).

This meshes well with using a GET for /c/X9 for the entirety of SID 1533, but a FETCH for the above would simply have the binary encoding of the CBOR data item [1533, "eth0”] in the payload.  Should we do that (as a base64-encoded CBOR sequence) in the URI as well?

/c/GQX9ZGV0aDA

(In this particular case, the X9 and ZGV0aDA components stand out, but that relationship will only be as obvious for SIDs between 256 and 65535.)

We might also go in the inverse direction, and add a special case for an instance identifier with a single string key, such as

/c/X9?k=eth0

This looks good in hand-crafted examples, but I’m not sure it’s worth the additional code.

> A YANG Library tailored to constrained environments:
>   <draft-ietf-core-yang-library-03.txt>

* yang-library next steps

This draft essentially encodes a simplified form of the regular YANG library, optimized for constrained devices.
Has the YANG environment changed in any way that requires us to make fundamental changes?
Any small updates needed?

> YANG models relevant or close to CoAP/CoRE:
>   <draft-marin-yang-edhoc-oscore-00.txt>
>   <draft-toutain-lpwan-access-control-01.txt>
>   <draft-tiloca-lpwan-8824-update-00.txt> (Well, no YANG model yet, but see [6].)


Of course, here we “eat our own dog food”.
Not all these YANG models are used in constrained environments all the time, but they will need to work well in constrained environments as well.

Anything we can learn from these YANG models that we could make use of for making CORECONF better?

Any best practices we could extract to tell model developers?

> Binary YANG Push
>   <draft-ietf-netconf-udp-notif-09.txt>
>   <draft-ahuang-netconf-notif-yang-01.txt>


I try not to meddle with other WGs’ pet projects, but draft-ietf-netconf-udp-notif looks seriously weird.  (A text-based encapsulation for a sequence of binary payloads?  A free get-out-of-jail card for congestion control?  I could go on and on…)
Any elucidation on how something like this could even happen and then reach a -09 as a Working Group document would be interesting.

The yang model in draft-ahuang-netconf-notif-yang also is interesting.

                .oOo.

* anything else?

As I said, please bring your own issues (bonus if you can announce them here beforehand).
At the end of the meeting, I would like to have more clarity at least on the CoRE-SID completeness/tool issue, and on the remaining open issue on comi (URI encoding of instance identifiers).  Any elucidation on the other issues would be a big bonus!

See you in 2½ hours...

Grüße, Carsten



[1]: https://datatracker.ietf.org/meeting/interim-2023-core-05/session/core

[2]: https://meetings.conf.meetecho.com/interim/?short=2bb7b8fc-7fd0-4371-b700-db7aac9b5ec3

[3]: https://notes.ietf.org/notes-ietf-interim-2023-core-05-core

[4]: https://mailarchive.ietf.org/arch/msg/core/df5WITICBA6tbqS-gNKmc2xwq7A

[5]: https://www.ietf.org/archive/id/draft-bormann-cbor-cddl-csv-02.html#name-example-ietf-systemsid-repr

[6]: https://gitlab.com/crimson84/draft-tiloca-lpwan-8824-update/-/blob/main/ietf-schc-coap@2023-03-07.yang