<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.30 (Ruby 3.4.1) -->
<?rfc strict="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-core-yang-sid-pen-00" category="info" submissionType="IETF" tocDepth="4" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="SID ranges for PEN holders">YANG-CBOR: Allocating SID ranges for PEN holders</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-core-yang-sid-pen-00"/>
    <author initials="C." surname="Bormann" fullname="Carsten Bormann">
      <organization>Universität Bremen TZI</organization>
      <address>
        <postal>
          <street>Postfach 330440</street>
          <city>D-28359 Bremen</city>
          <country>Germany</country>
        </postal>
        <phone>+49-421-218-63921</phone>
        <email>cabo@tzi.org</email>
      </address>
    </author>
    <date year="2025" month="April" day="24"/>
    <area>Applications and Real-Time Area (art)</area>
    <workgroup>Internet Engineering Task Force</workgroup>
    <keyword>YANG-CBOR</keyword>
    <abstract>
      <?line 43?>

<t>YANG-CBOR, RFC 9254 defines
    YANG Schema Item iDentifiers (YANG SID), globally unique 63-bit
    unsigned integers used to identify YANG items.
    RFC 9595 defines ways to allocate these SIDs on
    the basis of IANA registries.</t>
      <t>The present specification uses these SID allocation
    mechanisms to allocate ranges with 100 000 63-bit SIDs each
    for each of the first 1 000 000 holders of IANA-registered
    Private Enterprise Numbers (PENs), as well as ranges with 10 000 32-bit SIDs each
    for each of the first 100 000 holders.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-core-yang-sid-pen/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        CoRE Working Group mailing list (<eref target="mailto:core@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/core/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/core/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/core-wg/sid-pen"/>.</t>
    </note>
  </front>
  <middle>
    <?line 61?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>YANG-CBOR, <xref target="RFC9254"/> defines
    YANG Schema Item iDentifiers (YANG SID), globally unique 63-bit
    unsigned integers used to identify YANG items.
    RFC 9595 defines ways to allocate these SIDs on
    the basis of IANA registries.</t>
      <t>The present specification uses these SID allocation
    mechanisms to allocate ranges with 100 000 63-bit SIDs each
    for each of the first 1 000 000 holders of IANA-registered
    Private Enterprise Numbers (PENs), as well as ranges with 10 000 32-bit SIDs each
    for each of the first 100 000 holders.</t>
      <t>IANA [is requested to allocate/has allocated] 100 000 mega-ranges, for the SID numbers
300 000 000 000 to 399 999 999 999.</t>
      <t>IANA also [is requested to allocate/has allocated] 1000 mega-ranges, for the SID numbers
3 000 000 000 to 3 999 999 999.</t>
      <t>The holder of a PEN ppp ppp then can use the SID numbers
3pp ppp p00 000 to 3pp ppp p99 999 for allocation in a scheme defined
by the holder.
The holder of a PEN pp ppp then can use the SID numbers
3 ppp pp0 000 to 3 ppp pp9 999 for allocation in a scheme defined
by the holder.</t>
    </section>
    <section anchor="example">
      <name>Example</name>
      <t>The Department for Mathematics and Computer Science of <contact fullname="Universität Bremen"/> holds PEN 30810.</t>
      <t>This confers control over the SID range
303 081 000 000 up to
303 081 099 999,
as well as
3 308 100 000 up to
3 308 109 999 up to
to this PEN holder.</t>
    </section>
    <section anchor="discussion">
      <name>Discussion</name>
      <t>This allocation provides an extremely-low-threshold way for PEN holders
to get number space for the YANG SIDs used in their YANG modules.
It is, however, not always the approach to recommend to a module author:</t>
      <ul spacing="normal">
        <li>
          <t>The large space uses 64-bit numbers.  While this is of relatively little
consequence due to the delta-encoding used for SIDs in YANG-CBOR, a
few further bytes can be saved by allocating the SIDs in one of the
mega-ranges that are specifically allocated by an organization
(which, for the first 2000 or so, will lead to 32-bit outer deltas).</t>
        </li>
        <li>
          <t>For the first 100 000 PEN holders, there also is a smaller space that
uses 32-bit numbers.
This space is likely to run out before or around 2040; the
expectation is that by that time there will be enough opportunities
to request ranges from a megarange operator that this mechanism is
no longer needed.</t>
        </li>
        <li>
          <t>This space has no infrastructure to discover the YANG module behind
a SID.  Of course, each PEN holder can provide such infrastructure,
but even then the problem remains how to find that infrastructure
for a SID.  (Search engines may mitigate this somewhat.)
On the other hand, relative obscurity may be exactly what a PEN
holder wants to achieve by using this mechanism.</t>
        </li>
      </ul>
      <t>Relying on the PEN registry might theoretically trigger a land-grab by
prospective writers of YANG modules.  However, PENs have been around
for decades <xref target="RFC1065"/> and such a land-grab hasn't occurred for the other
allocations implicitly provided by obtaining a PEN.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document allocates 100 000 63-bit and 1000 32-bit SID mega-ranges
as per <xref section="7.4" sectionFormat="of" target="RFC9595"/>.</t>
      <t>The contact for the allocation is: IETF CORE Working Group
      (core@ietf.org) or IETF Applications and Real-Time Area
      (art@ietf.org)</t>
      <t>The allocation policy inside the mega-range is "private".
The URL is that of the present specification.</t>
      <t>The management of the SID blocks of 100 000 SIDs each, 10 such blocks
for each mega-range 3nn nnn 000 000, is delegated to the PEN holder
for nnn nnx, where x is the sequence number of the SID block in the
mega-range (i.e., the PEN holder for nnn nnx controls SID
3nn nnn x00 000 to 3nn nnn x99 999).</t>
      <t>Similarly, the management of the SID blocks of 10 000 SIDs each, 100 such blocks
for each mega-range 3 nnn 000 000, is delegated to the PEN holder
for nn nxx, where x is the sequence number of the SID block in the
mega-range (i.e., the PEN holder for nn nxx controls SID
3 nnn xx0 000 to 3 nnn xx9 999).</t>
      <t>The technical capacity to ensure the sustained operation of the
registry for a period of at least 10 years (as required for registries
of class "private") is derived from the capacity of IANA to maintain
the PEN number registry.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC9254">
          <front>
            <title>Encoding of Data Modeled with YANG in the Concise Binary Object Representation (CBOR)</title>
            <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
            <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
            <author fullname="A. Pelov" initials="A." surname="Pelov"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>YANG (RFC 7950) is a data modeling language used to model configuration data, state data, parameters and results of Remote Procedure Call (RPC) operations or actions, and notifications.</t>
              <t>This document defines encoding rules for YANG in the Concise Binary Object Representation (CBOR) (RFC 8949).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9254"/>
          <seriesInfo name="DOI" value="10.17487/RFC9254"/>
        </reference>
        <reference anchor="RFC9595">
          <front>
            <title>YANG Schema Item iDentifier (YANG SID)</title>
            <author fullname="M. Veillette" initials="M." role="editor" surname="Veillette"/>
            <author fullname="A. Pelov" initials="A." role="editor" surname="Pelov"/>
            <author fullname="I. Petrov" initials="I." role="editor" surname="Petrov"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <date month="July" year="2024"/>
            <abstract>
              <t>YANG Schema Item iDentifiers (YANG SIDs) are globally unique 63-bit unsigned integers used to identify YANG items. SIDs provide a more compact method for identifying those YANG items that can be used efficiently, notably in constrained environments (RFC 7228). This document defines the semantics, registration processes, and assignment processes for YANG SIDs for IETF-managed YANG modules. To enable the implementation of these processes, this document also defines a file format used to persist and publish assigned YANG SIDs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9595"/>
          <seriesInfo name="DOI" value="10.17487/RFC9595"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC1065">
          <front>
            <title>Structure and identification of management information for TCP/IP-based internets</title>
            <author fullname="K. McCloghrie" initials="K." surname="McCloghrie"/>
            <author fullname="M.T. Rose" initials="M.T." surname="Rose"/>
            <date month="August" year="1988"/>
            <abstract>
              <t>This RFC provides the common definitions for the structure and identification of management information for TCP/IP-based internets. In particular, together with its companion memos, which describe the initial management information base along with the initial network management protocol, these documents provide a simple, working architecture and system for managing TCP/IP-based internets and in particular, the Internet. This memo specifies a draft standard for the Internet community. TCP/IP implementation in the Internet which are network manageable are expected to adopt and implement this specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1065"/>
          <seriesInfo name="DOI" value="10.17487/RFC1065"/>
        </reference>
      </references>
    </references>
    <?line 152?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document was inspired by the discussion of the authors of
<xref target="RFC9254"/> and <xref target="RFC9595"/> how to handle <contact fullname="Rob Wilton's"/> feedback.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA7VY3W4buRm951MQ7oXtVqOVLSeNVbRYx3ZSA20SOFkE7XYL
cGYoifAMOUtyLGsNv0su+iTui/V8JOdHTtrNLtBc2BZFfjzf3/kOk2UZu13w
OWOlKbSo5YKXVix9pqRfZoWxMtsKvcqcKrNG6qwSXjrPvPIVtv6Jcf63szev
s/OXb68X/KyqTCG80iv+/uqCWxyUji+N5e8u3/C1qUppHRN5biXu/F9brBQw
1zSVIntGOy50ya+lqLIPqpb8DBv4gbD+kG1WC36lvbRaen6pV0pLaQnCB+Fu
+CtjC8luNosBJ4PJBVd6aZjzsFPj/OWHV+w3vMBFUrvWLbi3rWSNWsBBbFIF
TuxvpdvHZ2+KnQ+lbPwaKyf02W1rK5du2OCM9bsrhakbMTbo2nxY02afidav
jV2wDChx8HzKXxpbC62xOeboXFjnpR6tG4s4fKfVLeKn/L//5flLK2ts+fD3
q+iElLD/zji/FMWaz+ezk5MZwVF+u+AX2fGL+bPTdCigbLW3+Oa1pCu2WGrW
RuPuvd+dnGYnx0fZ8dGL7Pn89PhoD1/KWqhqwQuRm2/9T2oKPIzdSt1KiuHK
mrYBbHN9iU9pK4rrWyqzsBd7lF+3eVzPNqtvUskxpslJD8/I0vWr89PjZycL
HsqyyI1Ni89On6WzOMgovbunjmbPny0Yy7KMixzhQLgZ64tiQls4Webf/xPf
H2U/MNb9hZ6QS9SVg6X4j87x98UaXvMrL2uuLqT2aqkQfX4Qv726OJzwVWVy
UVVb3mr1Yyv583mWK9/babVTKy1LJNrLFR1uHT55w1UZDG7jVQp3uGl/LGCF
wx0uvhFbR6dE7EDJ/Vo6SRgcN7o/h1WeC6ewuORXZ2/OuJUrRQUuYT36e9x7
fkyef8CRxsKY9tw1soCPsSUJqRvu6a5Wo+tqWayFVq7exZaafoN886PZ7PHT
bDZLgYmIJQq0N0LcQAsEmfAvFUqfH4VT8Whijc6nLPokrSx7I++suqWrL4ko
GquA+U1b5yFbIB6HTAkgklVFv3cBxkvmx78M3xNw01h5tSrLSjJwDSjLmrIt
QsDGdXh/n/Wl/fDwtBpDdkLm/vE90mgligq+luMAf7OGD92H8ocBSy1XIovO
TQJuwku50zEWbJ52joILu/PT08dPp+Mf04RBVM78MiBfA+JLED4HQIUZg0uR
F2F+NE3z+Ak/yKYGF4Ui/fyCtAs/xlcMq+mSgG4oa/QornHU9DI1XsnybTAf
gUz/C6ivwdTd3ew4ndZ+NR4U2uWdqBuqOcJ2IRsMzZqamYz9VXiiMK+KOGDP
MYZadAioTUldSHLi/v7+C2PlAaVJl7jg4nz24mgWcoJSwBRdUmPhN0q84gZn
e39D4lFnlOQX4yZuESAz/iIlYcKGxqQo4arHT0dPTvXLKVBxGSH0BGhQFiEg
F8oVrXOh7wLgUUgba27BvBQNLu88uVpts8psMr8GCZIV4trPBAuuWkF+xGyC
JwVi19V2Nw0StyNrWFU2rtfggIrI98pzhYZYm41EvCZcGw9gkddhRDSARiyD
m6yEXEAOYq8lE7wTDey3gbMrYVcyIQlM/fwkEFgquCnnH9eqkjFCcSBYWYWB
iWlVKQ+BF2QAJBFam4qhxPwKMaVyq7zIsGpKklrBMfI3uAkPR3wmYGUpN3zZ
Wpy0PN9CQYY+yIFP3OIkilYM0jGVSrADwZF4lWTDwBxYEYiPlcNMoiHbc00w
qUkUYf781E2lg81aFeuBdSJVH1MhYcWZCSgfhVZJEUKbKN+Ejggeu8Mpwvtq
53hfi6N6mND3ABf4kSqMuxrY+tIg9MAT8pJu6fKC5VCUcSP+qNQNZYTy3moC
g7jBAUmQBWQVyuB4djL7QwqSvENAfCKIFKdACvjtSTpHZMFRJEBq064wu5oG
OhUaxaugckKVBUbvJbo1NRUbchBWcERa4UMoyDRh7uc9biapanhlsNVySPJS
ltNQmr1vNBywBUrNCkgQjMLWhgIr0aA9aYy6BHjXStNQF1QgKOG3S9Kp1slJ
HMFDCkKBpW6GwMZ3u/dMYCVHLNFsOjKzD0LH5BXUnCU1i0cHupEAgVrL6Oau
ERanf4fm4L0UFjfJ8AhBOEAUNSK6ioKMHDe13MDO9BBH38Y7TegKxK2c9B3I
TQ6OslDmwQjl6Q56FWWwCXVPjsJCcnUjtI8Kq1grOET5bl1spXFWwH7XKCX6
wsS7KV5JARLU1ZoSKVFcPjUUlOGKEijAJ7rMVlbksM4QJ+q7AHUDmEl97TAa
53/uuIwUFjwkZBKRjlXLKHSlLATR7f19UugYKzSIQsbGl6JY9D56sUBYbCKb
PnpsYHCwRk2vRkXBSvkPbGByj5SS7yF6YRIEDXOOQ9hk4/E0EvAYbsOU7BjF
UZ/zkVAllEe7wnBMUDS10CBw7L0MGo//fnpCMcq6J8rDQxIxNCeR3N6l8YR3
8W3Kz99eX/KPxt6QA6/pMZX058HOK+qQSCEc+Jm3c3caYmA4HOGMp6GBjS09
QqmLCNvgIZHLXhNl9V4UPt9d/6WnnCSGv/hySH7jVSlWMkQ57aYY5rj9JlRT
T6y95p5gLZZG3MV67T3CNdf68ZOmH522mBAq8LdciSRQu9qPDRTM6HjsDjMg
EORddAXk0Y2/NNyfYk0DnY0gHKipnE6e3MLHt3TiyJEdNkC+GwvSYTVpIUwf
9l7VCrO92kb7Px/EL8TwK4L460KIU3f/9wiGS54EsAvU3Y56TmtD8KjsPOhQ
E71hRGAOEcdiN/23j4017lpHVAE344ijTkgapOfKSPv4WpkyKH1PqiGoAb7F
FMCzUsRHkerYanhpMxwoKuFGDXQY44tPtJtGLSHpAXavdQClwUTwWBebFNQO
Wnpo5qK4IYo7K2602VSyXFGNOHa/SAdk+ce9JfSJ3Ht4ynkbQdrLNQF6elCU
vWju0hf1JhUZe/JkJbrB0kB03RylIYcxjhfFtcn5R1V5o/cdPSWWEAgEecr+
A/F0VCmRFAAA

-->

</rfc>
