<?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.19 (Ruby 3.3.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-netmod-immutable-flag-02" category="std" consensus="true" submissionType="IETF" updates="6241, 8040, 8526" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.1 -->
  <front>
    <title abbrev="immutable flag">YANG Metadata Annotation for Immutable Flag</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-immutable-flag-02"/>
    <author fullname="Qiufang Ma" role="editor">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing, Jiangsu</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>maqiufang1@huawei.com</email>
      </address>
    </author>
    <author fullname="Qin Wu">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing, Jiangsu</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>bill.wu@huawei.com</email>
      </address>
    </author>
    <author fullname="Balazs Lengyel" role="editor">
      <organization>Ericsson</organization>
      <address>
        <email>balazs.lengyel@ericsson.com</email>
      </address>
    </author>
    <author fullname="Hongwei Li">
      <organization>HPE</organization>
      <address>
        <email>flycoolman@gmail.com</email>
      </address>
    </author>
    <date year="2024" month="September" day="27"/>
    <area>Operations and Management</area>
    <workgroup>netmod</workgroup>
    <keyword>immutable flag</keyword>
    <keyword>system configuration</keyword>
    <abstract>
      <?line 75?>

<t>This document defines a way to formally document an existing behavior,
   implemented by servers in production, on the immutability of some
   system-provided nodes, using a YANG metadata annotation called
   "immutable" to flag which nodes are immutable.</t>
      <t>Clients may use "immutable" annotations provided by the server, to
   know beforehand why certain otherwise valid configuration requests
   will cause the server to return an error.</t>
      <t>The immutable flag is descriptive, documenting an existing behavior, not
   proscriptive, dictating server behaviors.</t>
      <t>This document updates <xref target="RFC6241"/>, <xref target="RFC8040"/>, and <xref target="RFC8526"/>.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Network Modeling Working Group mailing list (netmod@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/netmod/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/netmod-wg/immutable-flag"/>.</t>
    </note>
  </front>
  <middle>
    <?line 91?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document defines a YANG metadata annotation <xref target="RFC7952"/> to formally document
   an existing model handling behavior that has been used by
   multiple standard organizations and vendors.  It is the aim to create
   one single standard solution for documenting non-modifiable system
   data declared as configuration, instead of the multiple existing
   vendor and organization specific solutions.</t>
      <t>YANG <xref target="RFC7950"/> is a data modeling language used to model both state
   and configuration data, based on the "config" statement.  However,
   there exists some system configuration data that cannot be modified
   by the client (it is immutable), but still needs to be declared as
   "config true" to:</t>
      <ul spacing="normal">
        <li>
          <t>allow configuration of data nodes under immutable lists or containers;</t>
        </li>
        <li>
          <t>place "when", "must" and "leafref" constraints between configuration
   and immutable nodes;</t>
        </li>
        <li>
          <t>ensure the existence of specific list entries that are provided and
   needed by the system, while additional list entries can be created,
   modified or deleted.</t>
        </li>
      </ul>
      <t>If the server always rejects a client's attempt to override some
   system-provided data because it internally thinks immutable, it should document
   it towards the clients in a machine-readable way rather than writing as
   plain text in the "description" statement.</t>
      <t>This document defines a way to formally document the existing behavior,
   implemented by servers in production, on the immutability of some
   system-provided nodes, using a YANG metadata annotation <xref target="RFC7952"/>
   called "immutable" to flag which nodes are immutable.</t>
      <t>This document does not apply to the server not having any immutable
   system configuration.  While in some cases immutability may be
   needed, it also has disadvantages, therefore it <bcp14>SHOULD</bcp14> be avoided
   wherever possible.</t>
      <t>The following is a list of already implemented and potential use
   cases:</t>
      <ul spacing="normal">
        <li>
          <t>UC1  Modeling of server capabilities</t>
        </li>
        <li>
          <t>UC2  Hardware based auto-configuration</t>
        </li>
        <li>
          <t>UC3  Predefined administrator roles</t>
        </li>
        <li>
          <t>UC4  Declaring immutable system configuration from an LNE's perspective</t>
        </li>
      </ul>
      <t><xref target="use-cases"/> describes the use cases in detail.</t>
      <section anchor="updates-to-rfc-6241-and-rfc-8526">
        <name>Updates to RFC 6241 and RFC 8526</name>
        <t>This document updates <xref target="RFC6241"/> and <xref target="RFC8526"/>. The NETCONF &lt;get&gt; and
   &lt;get-config&gt; operations defined in <xref target="RFC6241"/>, and &lt;get-data&gt; operation
   defined in <xref target="RFC8526"/> are augmented with an additional input parameter
   named "with-immutable", as specified in <xref target="NETCONF-ext"/>.</t>
      </section>
      <section anchor="updates-to-rfc-8040">
        <name>Updates to RFC 8040</name>
        <t>This document updates Sections <xref target="RFC8040" section="4.8" sectionFormat="bare"/> and <xref target="RFC8040" section="9.1.1" sectionFormat="bare"/> of <xref target="RFC8040"/> to add an
   additional input parameter named "with-immutable", as specified in <xref target="RESTCONF-ext"/>.</t>
      </section>
      <section anchor="editorial-note-to-be-removed-by-rfc-editor">
        <name>Editorial Note (To be removed by RFC Editor)</name>
        <t>Note to the RFC Editor: This section is to be removed prior to publication.</t>
        <t>This document contains placeholder values that need to be replaced with finalized
  values at the time of publication.  This note summarizes all of the
  substitutions that are needed.  No other RFC Editor instructions are specified
  elsewhere in this document.</t>
        <t>Please apply the following replacements:</t>
        <ul spacing="normal">
          <li>
            <t>XXXX --&gt; the assigned RFC number for this draft</t>
          </li>
          <li>
            <t>2024-06-04 --&gt; the actual date of the publication of this document</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<t>The document uses the following definition in <xref target="RFC6241"/>:</t>
      <ul spacing="normal">
        <li>
          <t>configuration data</t>
        </li>
      </ul>
      <t>The document uses the following definition in <xref target="RFC7950"/>:</t>
      <ul spacing="normal">
        <li>
          <t>data node</t>
        </li>
        <li>
          <t>leaf</t>
        </li>
        <li>
          <t>leaf-list</t>
        </li>
        <li>
          <t>container</t>
        </li>
        <li>
          <t>list</t>
        </li>
        <li>
          <t>anydata</t>
        </li>
        <li>
          <t>anyxml</t>
        </li>
        <li>
          <t>interior node</t>
        </li>
        <li>
          <t>data tree</t>
        </li>
      </ul>
      <t>The document uses the following definition in <xref target="RFC8341"/>:</t>
      <ul spacing="normal">
        <li>
          <t>access operation</t>
        </li>
      </ul>
      <t>This document defines the following term:</t>
      <dl>
        <dt>immutable flag:</dt>
        <dd>
          <t>A read-only state value the server provides to describe
   immutability of the configuration, which is conveyed via a YANG metadata annotation
   called "immutable" with a boolean value.</t>
        </dd>
      </dl>
    </section>
    <section anchor="applicability">
      <name>Applicability</name>
      <t>While immutable flag applies to all configuration nodes, its value "true"
   can only be used for system configuration.</t>
      <t>The immutable flag is also visible in read-only datastores like &lt;system&gt;
   (if implemented, see <xref target="I-D.ietf-netmod-system-config"/>), &lt;intended&gt;
   and &lt;operational&gt; when a "with-immutable" parameter is carried (<xref target="with-immutable"/>),
   however this only serves as descriptive information about the
   instance node itself, but has no effect on the handling of the read-only
   datastore.</t>
      <t>An instance has the same immutability if it appears in different
   writable datastores, the immutability of data object is also protocol and
   user independent. The immutability and configured value of an
   existing node <bcp14>MUST</bcp14> only change via software upgrade, hardware
   resources change, or license change.</t>
    </section>
    <section anchor="immutable-metadata-annotation">
      <name>"Immutable" Metadata Annotation</name>
      <section anchor="definition">
        <name>Definition</name>
        <t>The immutable flag which is defined as the metadata annotation takes a boolean
   value, and it is returned as requested by the client using a "with-immutable"
   parameter (<xref target="with-immutable"/>). If the "immutable" metadata annotation for
   a configuration node is not specified, the default "immutable" value is the
   same as the value of its parent node in the data tree (<xref target="interior"/>).
   The immutable metadata annotation value for a top-level instance
   node is "false" if not specified.</t>
        <t>Note that "immutable" metadata annotations are used to annotate data node
   instances.  A list may have multiple instances in the data tree,
   servers may annotate some of the instances as immutable, while others as
   mutable.</t>
        <t>Servers <bcp14>MUST</bcp14> ignore any immutable annotations sent from the client.</t>
      </section>
      <section anchor="with-immutable">
        <name>"with-immutable" Parameter</name>
        <t>This section specifies the NETCONF <xref target="RFC6241"/> and RESTCONF <xref target="RFC8040"/>
   protocol extensions to support the "with-immutable" parameter.
   The "immutable" metadata annotations are not returned in a response unless
   explicitly requested by the client using this parameter.</t>
        <section anchor="NETCONF-ext">
          <name>NETCONF Extensions to Support "with-immutable"</name>
          <t>This doument updates <xref target="RFC6241"/> to augment the &lt;get-config&gt; and &lt;get&gt;
   operations with an additional parameter named "with-immutable". The
   &lt;get-data&gt; operation defined in <xref target="RFC8526"/> is also updated to support
   this parameter. If present, this parameter requests that the server includes
   the "immutable" metadata annotations in its response.</t>
          <t><xref target="tree"/> provides the tree structure <xref target="RFC8340"/> of augmentations to NETCONF
   operations, as defined in the "ietf-immutable" module (<xref target="module"/>).</t>
          <figure anchor="tree">
            <name>Augmentations to NETCONF Operations</name>
            <artwork><![CDATA[
module: ietf-immutable
  augment /ncds:get-data/ncds:input:
    +---w with-immutable?   empty {immutable}?
  augment /nc:get-config/nc:input:
    +---w with-immutable?   empty {immutable}?
  augment /nc:get/nc:input:
    +---w with-immutable?   empty {immutable}?
]]></artwork>
          </figure>
          <t>Servers' support for accepting "with-immutable" parameter and returning "immutable"
   annotations is identified with the feature "immutable".</t>
        </section>
        <section anchor="RESTCONF-ext">
          <name>RESTCONF Extensions to Support "with-immutable"</name>
          <t>This document extends Sections <xref target="RFC8040" section="4.8" sectionFormat="bare"/> and <xref target="RFC8040" section="9.1.1" sectionFormat="bare"/> of <xref target="RFC8040"/> to add a query
   parameter named "with-immutable" to the GET operation. If present, this parameter
   requests that the server includes the "immutable" metadata annotations in its
   response. This parameter is only allowed with no values carried. If it has
   any unexpected value, then a "404 Bad Request" status-line is returned.</t>
          <t>To enable a RESTCONF client to discover if the "with-immutable" query parameter
   is supported by the server, the following capability URI is defined:</t>
          <artwork><![CDATA[
    urn:ietf:params:restconf:capability:with-immutable:1.0
]]></artwork>
        </section>
      </section>
    </section>
    <section anchor="use-of-immutable-flag-for-different-statements">
      <name>Use of Immutable Flag for Different Statements</name>
      <t>This section defines what the immutable flag means to the client for
   each instance of YANG data node statement.</t>
      <t>Throughout this section, the word "change" refers to create, update, and delete.</t>
      <section anchor="the-leaf-statement">
        <name>The "leaf" Statement</name>
        <t>When a leaf node instance is immutable, its value cannot change.</t>
      </section>
      <section anchor="the-leaf-list-statement">
        <name>The "leaf-list" Statement</name>
        <t>When a leaf-list node instance is immutable, its value cannot change.</t>
        <t>The immutable annotation attached to the individual leaf-list instance
   provides immutability with respect to the instance itself. If a leaf-list
   inherits immutability from an ancestor (e.g., container), it is identical
   to each individual leaf-list entry being annotated without any bearing on the
   entry ordering and addition of new entries.</t>
      </section>
      <section anchor="the-container-statement">
        <name>The "container" Statement</name>
        <t>When a container node instance is immutable, it cannot change, unless
   the immutability of its descendant node is toggled.</t>
        <t>By default, as with all interior nodes, immutability is recursively
   applied to descendants (<xref target="interior"/>).</t>
      </section>
      <section anchor="the-list-statement">
        <name>The "list" Statement</name>
        <t>When a list node instance is immutable, it cannot change, unless the
   immutability of its descendant node is toggled.</t>
        <t>By default, as with all interior nodes, immutability is recursively
   applied to descendants (<xref target="interior"/>).</t>
        <t>The immutable annotation attached to the individual list instance provides
   immutability with respect to the instance itself. If a list inherits immutability
   from an ancestor (e.g., container), it is identical to each individual list
   entry being annotated without any bearing on the entry ordering and addition
   of new entries.</t>
      </section>
      <section anchor="the-anydata-statement">
        <name>The "anydata" Statement</name>
        <t>When an anydata node instance is immutable, it cannot change. Additionally,
   as with all interior nodes, immutability is recursively applied to
   descendants (<xref target="interior"/>).</t>
      </section>
      <section anchor="the-anyxml-statement">
        <name>The "anyxml" Statement</name>
        <t>When an "anyxml" node instance is immutable, it cannot change. Additionally,
   as with all interior nodes, immutability is recursively applied to
   descendants (<xref target="interior"/>).</t>
      </section>
    </section>
    <section anchor="interior">
      <name>Immutability of Interior Nodes</name>
      <t>Immutability is a conceptual operational state value that is
   recursively applied to descendants, which may reset the immutability
   state as needed, thereby affecting their descendants.  There is no limit
   to the number of times the immutability state may change in a data tree.</t>
      <t>If the "immutable" metadata annotation for returned child node is omitted,
   it has the same immutability as its parent node. The immutability of top
   hierarchy of returned nodes is false by default. Servers may suppress the
   annotation if it is inherited from its parent node or uses the default value
   as the top-level node, but are not precluded from returning the annotation
   on every single element.</t>
      <t>For example, the following XML snippets shows application configuration a
   server might return:</t>
      <artwork><![CDATA[
<applications im:immutable="false">
<application im:immutable="true">
  <name>ssh</name>
  <protocol>tcp</protocol>
  <port-number im:immutable="false">22</port-number>
</application>
<application im:immutable="false">
  <name>my-ssh</name>
  <protocol>tcp</protocol>
  <port-number>10022</port-number>
</application>
</applications>
]]></artwork>
      <t>In the example, there are two "application" list entries inside "applications"
   container node. The "immutable" metadata attribute for applications container
   instance is "false", which is also its default value as the top-level element,
   and thus can be omitted. The "application" list entry named "ssh" is immutable
   with the immutability of its child node "port-number" being explicitly toggled.
   The other child nodes inside "ssh" application instance inherit immutability
   from their parent node thus are also immutable. The "immutable" metadata attribute
   for application list entry named "my-ssh" is "false", which is also the same
   value as its parent node, and thus can be omitted.</t>
    </section>
    <section anchor="system-configuration-datastore-interactions">
      <name>System Configuration Datastore Interactions</name>
      <t>Immutable configuration can only be created, updated and deleted by the server,
   and it is present in &lt;system&gt;, if implemented. That said, the existence of
   immutable configuration is independent of whether &lt;system&gt; is implemented or
   not. Not all system configuration data is immutable. Immutable configuration
   does not appear in &lt;running&gt; unless it is explicitly configured.</t>
      <t>A client may create/delete immutable nodes with same values as found
   in &lt;system&gt; (if implemented) in read-write configuration datastore (e.g.,
   &lt;candidate&gt;, &lt;running&gt;), which merely mean making immutable nodes
   visible/invisible in the datastore.</t>
    </section>
    <section anchor="nacm-interactions">
      <name>NACM Interactions</name>
      <t>The server rejects an operation request due to immutability when it
   tries to perform the operation on the request data.  It happens after
   any access control processing, if the Network Configuration Access
   Control Model (NACM) <xref target="RFC8341"/> is implemented on a server.  For
   example, if an operation requests to override an immutable
   configuration data, but the server checks the user is not authorized
   to perform the requested access operation on the request data, the
   request is rejected with an "access-denied" error.</t>
    </section>
    <section anchor="module">
      <name>YANG Module</name>
      <t>This module imports definitions from <xref target="RFC6241"/> and <xref target="RFC8526"/>.</t>
      <sourcecode markers="true" name="ietf-immutable@2024-06-04.yang"><![CDATA[
module ietf-immutable {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-immutable";
  prefix im;

  import ietf-yang-metadata {
    prefix md;
  }
  import ietf-netconf {
    prefix nc;
    reference
      "RFC 6241: Network Configuration Protocol (NETCONF)";
  }
  import ietf-netconf-nmda {
    prefix ncds;
    reference
      "RFC 8526: NETCONF Extensions to Support the Network
       Management Datastore Architecture";
  }
  organization
    "IETF Network Modeling (NETMOD) Working Group";

  contact
    "WG Web: <https://datatracker.ietf.org/wg/netmod/>
     WG List: <mailto:netmod@ietf.org>
     Author: Qiufang Ma
             <mailto:maqiufang1@huawei.com>
     Author: Qin Wu
             <mailto:bill.wu@huawei.com>
     Author: Balazs Lengyel
             <mailto:balazs.lengyel@ericsson.com>
     Author: Hongwei Li
             <mailto:flycoolman@gmail.com>";

  description
    "This module defines a metadata annotation called 'immutable'
     to allow the server to formally document existing behavior on
     the mutability of some system configuration. Clients may use
     'immutable' metadata annotation provided by the server to know
     beforehand why certain otherwise valid configuration requests
     will cause the server to return an error.

     Copyright (c) 2024 IETF Trust and the persons identified
     as authors of the code. All rights reserved.

     Redistribution and use in source and binary forms, with
     or without modification, is permitted pursuant to, and
     subject to the license terms contained in, the Revised
     BSD License set forth in Section 4.c of the IETF Trust's
     Legal Provisions Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC HHHH
     (https://www.rfc-editor.org/info/rfcHHHH); see the RFC
     itself for full legal notices.

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL',
     'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED',
     'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document
     are to be interpreted as described in BCP 14 (RFC 2119)
     (RFC 8174) when, and only when, they appear in all
     capitals, as shown here.";

  revision 2024-06-04 {
    description
      "Initial revision.";
    // RFC Ed.: replace XXXX and remove this comment
    reference
      "RFC XXXX: YANG Metadata Annotation for Immutable Flag";
  }

  md:annotation immutable {
    type boolean;
    description
      "The 'immutable' metadata annotation indicates the
       immutability of an instantiated data node. It takes as a
       value 'true' or 'false'. If the 'immutable' metadata
       annotation is not specified, the default value is the
       same as the value of its parent node in the data tree. The
       default value for a top-level instance node is false if not
       specified.";
  }

  feature immutable {
    description
      "Indicates that the server supports the 'immutable' metadata
       annotation.";
  }
  
  grouping with-immutable-grouping {
    description
      "Grouping for the with-immutable parameter that augments the
       RPC operations.";
    leaf with-immutable {
      type empty;
      description
        "If this parameter is present, the server returns the
         'immutable' annotation for configuration that it
         internally thinks immutable.";
    }
  }
  augment "/ncds:get-data/ncds:input" {
    if-feature "immutable";
    description
      "Allows the server to include 'immutable' metadata
       annotations in its response to get-data operation.";
    uses with-immutable-grouping;
  }
  augment "/nc:get-config/nc:input" {
    if-feature "immutable";
    description
      "Allows the server to include 'immutable' metadata
       annotations in its response to get-config operation.";
    uses with-immutable-grouping;
  }
  augment "/nc:get/nc:input" {
    if-feature "immutable";
    description
      "Allows the server to include 'immutable' metadata
       annotations in its response to get operation.";
    uses with-immutable-grouping;
  }
}
]]></sourcecode>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This section is modeled after the template described in <xref section="3.7" sectionFormat="of" target="I-D.ietf-netmod-rfc8407bis"/>.</t>
      <t>The "ietf-immutable" YANG module defines a data model that is
   designed to be accessed via YANG-based management protocols, such
   as NETCONF <xref target="RFC6241"/> or RESTCONF <xref target="RFC8040"/>. These protocols have to
   use a secure transport layer (e.g., SSH <xref target="RFC4252"/>, TLS <xref target="RFC8446"/>, and
   QUIC <xref target="RFC9000"/>) and have to use mutual authentication.</t>
      <t>The Network Configuration Access Control Model (NACM) <xref target="RFC8341"/>
   provides the means to restrict access for particular NETCONF or
   RESTCONF users to a preconfigured subset of all available NETCONF or
   RESTCONF protocol operations and content.</t>
      <t>The YANG module specified in this document defines a metadata annotation,
   it also extends the RPC operations of the NETCONF protocol in <xref target="RFC6241"/>
   and <xref target="RFC8526"/>.</t>
      <t>The security considerations for the Defining and Using Metadata with
   YANG (see <xref section="9" sectionFormat="of" target="RFC7952"/>) apply to the metadata annotation
   defined in this document.</t>
      <t>The security considerations for the NETCONF protocol operations (see
   <xref section="9" sectionFormat="of" target="RFC6241"/> and <xref section="6" sectionFormat="of" target="RFC8526"/>) still apply to
   the operations extended in this document.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="the-ietf-xml-registry">
        <name>The "IETF XML" Registry</name>
        <t>This document registers one XML namespace URN in the 'IETF XML registry',
   following the format defined in <xref target="RFC3688"/>.</t>
        <artwork><![CDATA[
        URI: urn:ietf:params:xml:ns:yang:ietf-immutable
        Registrant Contact: The IESG.
        XML: N/A, the requested URIs are XML namespaces.
]]></artwork>
      </section>
      <section anchor="the-yang-module-names-registry">
        <name>The "YANG Module Names" Registry</name>
        <t>This document registers one module name in the 'YANG Module Names'
registry, defined in <xref target="RFC6020"/>.</t>
        <artwork><![CDATA[
        name: ietf-immutable
        prefix: im
        namespace: urn:ietf:params:xml:ns:yang:ietf-immutable
        RFC: XXXX
]]></artwork>
      </section>
      <section anchor="restconf-capability-urn-registry">
        <name>RESTCONF Capability URN Registry</name>
        <t>This document defines the following capability identifier URNs in the
"RESTCONF Capability URNs" registry defined in <xref target="RFC8040"/>:</t>
        <artwork><![CDATA[
Index           Capability Identifier
----------------------------------------------------------------------
:with-immutable urn:ietf:params:restconf:capability:with-immutable:1.0
]]></artwork>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC6241">
          <front>
            <title>Network Configuration Protocol (NETCONF)</title>
            <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6241"/>
          <seriesInfo name="DOI" value="10.17487/RFC6241"/>
        </reference>
        <reference anchor="RFC8040">
          <front>
            <title>RESTCONF Protocol</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8040"/>
          <seriesInfo name="DOI" value="10.17487/RFC8040"/>
        </reference>
        <reference anchor="RFC8526">
          <front>
            <title>NETCONF Extensions to Support the Network Management Datastore Architecture</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <author fullname="P. Shafer" initials="P." surname="Shafer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="R. Wilton" initials="R." surname="Wilton"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document extends the Network Configuration Protocol (NETCONF) defined in RFC 6241 in order to support the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
              <t>This document updates RFCs 6241 and 7950. The update to RFC 6241 adds new and operations and augments existing,, and operations. The update to RFC 7950 requires the usage of the YANG library (described in RFC 8525) by NETCONF servers implementing the NMDA.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8526"/>
          <seriesInfo name="DOI" value="10.17487/RFC8526"/>
        </reference>
        <reference anchor="RFC7952">
          <front>
            <title>Defining and Using Metadata with YANG</title>
            <author fullname="L. Lhotka" initials="L." surname="Lhotka"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>This document defines a YANG extension that allows for defining metadata annotations in YANG modules. The document also specifies XML and JSON encoding of annotations and other rules for annotating instances of YANG data nodes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7952"/>
          <seriesInfo name="DOI" value="10.17487/RFC7952"/>
        </reference>
        <reference anchor="RFC7950">
          <front>
            <title>The YANG 1.1 Data Modeling Language</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7950"/>
          <seriesInfo name="DOI" value="10.17487/RFC7950"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8341">
          <front>
            <title>Network Configuration Access Control Model</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) or the RESTCONF protocol requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability. There is a need for standard mechanisms to restrict NETCONF or RESTCONF protocol access for particular users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content. This document defines such an access control model.</t>
              <t>This document obsoletes RFC 6536.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="91"/>
          <seriesInfo name="RFC" value="8341"/>
          <seriesInfo name="DOI" value="10.17487/RFC8341"/>
        </reference>
        <reference anchor="RFC3688">
          <front>
            <title>The IETF XML Registry</title>
            <author fullname="M. Mealling" initials="M." surname="Mealling"/>
            <date month="January" year="2004"/>
            <abstract>
              <t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="81"/>
          <seriesInfo name="RFC" value="3688"/>
          <seriesInfo name="DOI" value="10.17487/RFC3688"/>
        </reference>
        <reference anchor="RFC6020">
          <front>
            <title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="October" year="2010"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6020"/>
          <seriesInfo name="DOI" value="10.17487/RFC6020"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="TR-531" target="https://wiki.opennetworking.org/download/attachments/376340494/Draft_TR-531_UML-YANG_Mapping_Gdls_v1.1.03.docx?version=5&amp;modificationDate=1675432243513&amp;api=v2">
          <front>
            <title>UML to YANG Mapping Guidelines</title>
            <author>
              <organization>ONF</organization>
            </author>
            <date year="2023" month="February"/>
          </front>
        </reference>
        <reference anchor="TS28.623" target="https://www.3gpp.org/ftp/Specs/archive/28_series/28.623/28623-i02.zip">
          <front>
            <title>Telecommunication management; Generic Network Resource Model (NRM) Integration Reference Point (IRP); Solution Set (SS) definitions</title>
            <author>
              <organization>3GPP</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="TS32.156" target="https://www.3gpp.org/ftp/Specs/archive/32_series/32.156/32156-h10.zip">
          <front>
            <title>Telecommunication management; Fixed Mobile Convergence (FMC) Model repertoire</title>
            <author>
              <organization>3GPP</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="I-D.ietf-netmod-system-config">
          <front>
            <title>System-defined Configuration</title>
            <author fullname="Qiufang Ma" initials="Q." surname="Ma">
              <organization>Huawei</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Chong Feng" initials="C." surname="Feng">
         </author>
            <date day="18" month="June" year="2024"/>
            <abstract>
              <t>   This document defines how a management client and management server
   handle YANG-modeled configuration data that is instantiated by the
   server itself.  The system-defined configuration can be referenced
   (e.g., leafref) by configuration explicitly created by a client.

   The Network Management Datastore Architecture (NMDA) defined in RFC
   8342 is updated with a read-only conventional configuration datastore
   called "system" to expose system-defined configuration.

   This document updates RFC 6241, RFC 8040, RFC 8342, and RFC 8526.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-system-config-08"/>
        </reference>
        <reference anchor="RFC8340">
          <front>
            <title>YANG Tree Diagrams</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="215"/>
          <seriesInfo name="RFC" value="8340"/>
          <seriesInfo name="DOI" value="10.17487/RFC8340"/>
        </reference>
        <reference anchor="I-D.ietf-netmod-rfc8407bis">
          <front>
            <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
            <author fullname="Andy Bierman" initials="A." surname="Bierman">
              <organization>YumaWorks</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <date day="20" month="September" year="2024"/>
            <abstract>
              <t>   This memo provides guidelines for authors and reviewers of
   specifications containing YANG modules, including IANA-maintained
   modules.  Recommendations and procedures are defined, which are
   intended to increase interoperability and usability of Network
   Configuration Protocol (NETCONF) and RESTCONF protocol
   implementations that utilize YANG modules.  This document obsoletes
   RFC 8407.

   Also, this document updates RFC 8126 by providing additional
   guidelines for writing the IANA considerations for RFCs that specify
   IANA-maintained modules.  The document also updates RFC 6020 by
   clarifying how modules and their revisions are handled by IANA.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-rfc8407bis-16"/>
        </reference>
        <reference anchor="RFC4252">
          <front>
            <title>The Secure Shell (SSH) Authentication Protocol</title>
            <author fullname="T. Ylonen" initials="T." surname="Ylonen"/>
            <author fullname="C. Lonvick" initials="C." role="editor" surname="Lonvick"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>The Secure Shell Protocol (SSH) is a protocol for secure remote login and other secure network services over an insecure network. This document describes the SSH authentication protocol framework and public key, password, and host-based client authentication methods. Additional authentication methods are described in separate documents. The SSH authentication protocol runs on top of the SSH transport layer protocol and provides a single authenticated tunnel for the SSH connection protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4252"/>
          <seriesInfo name="DOI" value="10.17487/RFC4252"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="RFC8343">
          <front>
            <title>A YANG Data Model for Interface Management</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines a YANG data model for the management of network interfaces. It is expected that interface-type-specific data models augment the generic interfaces data model defined in this document. The data model includes definitions for configuration and system state (status information and counters for the collection of statistics).</t>
              <t>The YANG data model in this document conforms to the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
              <t>This document obsoletes RFC 7223.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8343"/>
          <seriesInfo name="DOI" value="10.17487/RFC8343"/>
        </reference>
        <reference anchor="RFC8530">
          <front>
            <title>YANG Model for Logical Network Elements</title>
            <author fullname="L. Berger" initials="L." surname="Berger"/>
            <author fullname="C. Hopps" initials="C." surname="Hopps"/>
            <author fullname="A. Lindem" initials="A." surname="Lindem"/>
            <author fullname="D. Bogdanovic" initials="D." surname="Bogdanovic"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document defines a logical network element (LNE) YANG module that is compliant with the Network Management Datastore Architecture (NMDA). This module can be used to manage the logical resource partitioning that may be present on a network device. Examples of common industry terms for logical resource partitioning are logical systems or logical routers. The YANG model in this document conforms with NMDA as defined in RFC 8342.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8530"/>
          <seriesInfo name="DOI" value="10.17487/RFC8530"/>
        </reference>
      </references>
    </references>
    <?line 621?>

<section anchor="use-cases">
      <name>Detailed Use Cases</name>
      <section anchor="uc1-modeling-of-server-capabilities">
        <name>UC1 - Modeling of server capabilities</name>
        <t>System capabilities might be represented as immutable configuration.
   Configurable data nodes might need constraints specified as
   "when", "must" or "path" statements to ensure that configuration is set
   according to the system's capabilities. For example,</t>
        <ul spacing="normal">
          <li>
            <t>A timer can support the values 1,5,8 seconds. This is defined in the
   leaf-list 'supported-timer-values'.</t>
          </li>
          <li>
            <t>When the configurable 'interface-timer' leaf is set, it should be ensured
   that one of the supported values is used.  The natural solution would be to
   make the 'interface-timer' a leaf-ref pointing at the 'supported-timer-values'.</t>
          </li>
        </ul>
        <t>However, this is not possible as 'supported-timer-values' must be
   read-only thus config=false while 'interface-timer' must be writable
   thus config=true.  According to the rules of YANG it is not allowed
   to put a constraint between config true and false data nodes.</t>
        <t>The solution is that the supported-timer-values data node in the YANG
   Model shall be defined as "config true" and shall also be marked with
   the "immutable" annotation making it unchangeable. After this the
   'interface-timer' shall be defined as a leaf-ref pointing at the
   'supported-timer-values'.</t>
      </section>
      <section anchor="uc2-hardware-based-auto-configuration-interface-example">
        <name>UC2 - Hardware based auto-configuration - Interface Example</name>
        <t><xref target="RFC8343"/> defines a YANG data model for the management of network
   interfaces.  When a system-controlled interface is physically present,
   the system creates an interface entry with valid name and type
   values in &lt;system&gt; (if exists, see <xref target="I-D.ietf-netmod-system-config"/>).</t>
        <t>The system-generated type value is dependent on and represents the hardware
   present, and as a consequence cannot be changed by the client.  If a
   client tries to set the type of an interface to a value that can
   never be used by the system, the request will be rejected by the
   server.  The data is modeled as "config true" and thus should be annotated
   as immutable.</t>
        <t>Seemingly an alternative would be to model the list and these leaves
   as "config false", but that does not work because:</t>
        <ul spacing="normal">
          <li>
            <t>The list cannot be marked as "config false", because it needs to contain
  configurable child nodes, e.g., ip-address or enabled;</t>
          </li>
          <li>
            <t>The key leaf (name) cannot be marked as "config false" as the list
  itself is config true;</t>
          </li>
          <li>
            <t>The type cannot be marked "config false", because we <bcp14>MAY</bcp14> need to
  reference the type to make different configuration nodes
  conditionally available.</t>
          </li>
        </ul>
      </section>
      <section anchor="uc3-predefined-administrator-roles">
        <name>UC3 - Predefined Administrator Roles</name>
        <t>User and group management is fundamental for setting up access
   control rules (see <xref section="2.5" sectionFormat="of" target="RFC8341"/>).</t>
        <t>A device may provide a predefined user account (e.g., a system
   administrator that is always available and has full privileges) for
   initial system set up and management of other users/groups.  It is
   possible that a new user/group can be defined granted particular privileges,
   but the predefined administrator account and its granted access are immutable.</t>
      </section>
      <section anchor="uc4-declaring-immutable-system-configuration-from-an-lnes-perspective">
        <name>UC4 - Declaring immutable system configuration from an LNE's perspective</name>
        <t>An logical network element (LNE) is an independently managed virtual
   network device made up of resources allocated to it from its host or
   parent network device <xref target="RFC8530"/>.  The host device may allocate some
   resources to an LNE, which from an LNE's perspective is provided by
   the system and may not be modifiable.</t>
        <t>For example, a host may allocate an interface to an LNE with a valid
   MTU value as its management interface, so that the allocated
   interface should then be accessible as the LNE-specific instance of
   the interface model.  The assigned MTU value is system-created and
   immutable from the context of the LNE.</t>
      </section>
    </section>
    <section anchor="implementations">
      <name>Existing Implementations</name>
      <t>Note to the RFC Editor: Please remove this section prior to publication.</t>
      <t>There are already a number of full or partial implementations of
   immutability:</t>
      <ul spacing="normal">
        <li>
          <t>3GPP TS 32.156 <xref target="TS32.156"/> and 28.623 <xref target="TS28.623"/>: Requirements
   and a partial solution</t>
        </li>
        <li>
          <t>ITU-T using ONF TR-531 <xref target="TR-531"/> concept on information model level but
   no YANG representation.</t>
        </li>
        <li>
          <t>Ericsson: requirements and solution</t>
        </li>
        <li>
          <t>YumaPro: requirements and solution</t>
        </li>
        <li>
          <t>Nokia: partial requirements and solution</t>
        </li>
        <li>
          <t>Huawei: partial requirements and solution</t>
        </li>
        <li>
          <t>Cisco using the concept at least in some YANG modules</t>
        </li>
        <li>
          <t>Junos OS provides a hidden and immutable configuration group
   called junos-defaults</t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Kent Watsen, Jan Lindblad, Jason Sterne, Robert Wilton, Andy Bierman,
   Juergen Schoenwaelder, Reshad Rahman, Anthony Somerset, Lou Berger, Joe Clarke,
   and Scott Mansfield for reviewing, and providing important inputs to this document.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
