<?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.17 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-dtn-ipn-update-12" category="std" consensus="true" submissionType="IETF" updates="[9171, 7116, 6260]" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.21.0 -->
  <front>
    <title abbrev="ipn-update">Update to the ipn URI scheme</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-dtn-ipn-update-12"/>
    <author fullname="Rick Taylor">
      <organization>High Frontier Ltd</organization>
      <address>
        <email>rick.taylor@highfrontier.co.uk</email>
      </address>
    </author>
    <author fullname="Ed Birrane">
      <organization>JHU/APL</organization>
      <address>
        <email>Edward.Birrane@jhuapl.edu</email>
      </address>
    </author>
    <date year="2024" month="July" day="02"/>
    <area>Transport</area>
    <workgroup>Delay/Disruption Tolerant Networking</workgroup>
    <keyword>DTN</keyword>
    <keyword>ipn</keyword>
    <keyword>BPv7</keyword>
    <keyword>CBHE</keyword>
    <keyword>Bundle Protocol</keyword>
    <abstract>
      <?line 46?>

<t>This document updates the specification of the ipn URI scheme previously defined in RFC 6260, the IANA registries established in RFC 7116, and the rules for the encoding and decoding of these URIs when used as an Endpoint Identifier (EID) in Bundle Protocol Version 7 (BPv7) as defined in RFC 9171. These updates clarify the structure and behavior of the ipn URI scheme, define new encodings of ipn scheme URIs, and establish the registries necessary to manage this scheme.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ricktaylor.github.io/ipn2/draft-taylor-dtn-ipn-update.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-dtn-ipn-update/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Delay/Disruption Tolerant Networking Working Group mailing list (<eref target="mailto:dtn@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/dtn/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/dtn/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ricktaylor/ipn2"/>.</t>
    </note>
  </front>
  <middle>
    <?line 50?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The ipn URI scheme was originally defined in <xref target="RFC6260"/> and <xref target="RFC7116"/> as a way to identify network nodes and node services using concisely-encoded integers that can be processed faster and with fewer resources than other verbose identifier schemes. The scheme was designed for use with the experimental Bundle Protocol version 6 (BPv6, <xref target="RFC5050"/>) and IPN was defined as an acronym for the term "InterPlanetary Network" in reference to its intended use for deep-space networking. Since then, the efficiency benefit of integer identifiers makes ipn scheme URIs useful for any networks operating with limited power, bandwidth, and/or compute budget. Therefore, the term IPN is now used as a non-acronymous name.</t>
      <t>Similar to the experimental BPv6, the standardized Bundle Protocol version 7 (BPv7, <xref target="RFC9171"/>) codifies support for the use of the ipn URI scheme for the specification of bundle Endpoint Identifiers (EIDs). The publication of BPv7 has resulted in operational deployments of BPv7 nodes for both terrestrial and non-terrestrial use cases. This includes BPv7 networks operating over the terrestrial Internet and BPv7 networks operating in self-contained environments behind a shared administrative domain. The growth in the number and scale of deployments of BPv7 has been accompanied by a growth in the usage of the ipn URI scheme which has highlighted areas to improve the structure, moderation, and management of this scheme.</t>
      <t>By updating <xref target="RFC7116"/> and <xref target="RFC9171"/>, this document updates the specification of the ipn URI scheme, in a backwards-compatible way, to provide needed improvements both in the scheme itself and its usage to specify EIDs with BPv7. Specifically, this document introduces a hierarchical structure for the assignment of ipn scheme URIs, clarifies the behavior and interpretation of ipn scheme URIs, defines efficient encodings of ipn scheme URIs, and updates/defines the registries associated for this scheme.</t>
      <t>Although originally developed by the deep space community for use with Bundle Protocol, the ipn URI scheme is sufficiently generic to be used in other environments where a concise unique representation of a resource on a particular node is required.</t>
      <t>It is important to remember that, like most other URI schemes, the ipn URI scheme defines a unique identifier of a resource, and does not include any topological information describing how to route messages to that resource.</t>
    </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>For the remainder of this document, the term "ipn URI" is used to refer to a URI that uses the ipn scheme.</t>
    </section>
    <section anchor="core-concepts">
      <name>Core Concepts</name>
      <t>Every ipn URI, no matter whether it is expressed with the textual representation or a binary encoding, <bcp14>MUST</bcp14> be considered as a tuple of the following three components:</t>
      <ul spacing="normal">
        <li>
          <t>The Allocator Identifier</t>
        </li>
        <li>
          <t>The Node Number</t>
        </li>
        <li>
          <t>The Service Number</t>
        </li>
      </ul>
      <t>The Allocator Identifier indicates the entity responsible for assigning Node Numbers to individual resource nodes, maintaining uniqueness whilst avoiding the need for a single registry for all assigned Node Numbers. See <xref target="allocator-identifiers">Allocator Identifiers</xref>.</t>
      <t>The Node Number is a shared identifier assigned to all ipn URIs for resources co-located on a single node. See <xref target="node-numbers">Node Numbers</xref>.</t>
      <t>The Service Number is an identifier to distinguish between resources on a given node. See <xref target="service-numbers">Service Numbers</xref>.</t>
      <t>The combination of these three components guarantees that every correctly constructed ipn URI uniquely identifies a single resource.  Additionally, the combination of the Allocator Identifier and the Node Number provides a mechanism to uniquely identify the node on which a particular resource is expected to exist. See <xref target="fqnn">Fully-qualified Node Number</xref>.</t>
      <section anchor="null-uri">
        <name>The Null ipn URI</name>
        <t>It has been found that there is value in defining a unique 'null' ipn URI to indicate "nowhere".  This ipn URI is termed the "Null ipn URI", and has all three components: Allocator Identifier, Node Number, and Service Number, set to the value zero (0).  No resource identified by Null ipn URI exists, and any destination identified by such a resource is therefore by definition unreachable.</t>
      </section>
      <section anchor="allocator-identifiers">
        <name>Allocator Identifiers</name>
        <t>An Allocator is any organization that wishes to assign Node Numbers for use with the ipn URI scheme, and has the facilities and governance to manage a public registry of assigned Node Numbers. The authorization to assign these numbers is provided through the assignment of an Allocator Identifier by IANA.  Regardless of other attributes of an Allocator, such as a name, point of contact, or other identifying information, Allocators are identified by Allocator Identifiers: a unique, unsigned integer, in the range 0 to 2^32-1.</t>
        <t>The Allocator Identifier <bcp14>MUST</bcp14> be the sole mechanism used to identify the Allocator that has assigned the Node Number in an ipn URI. An Allocator may have multiple assigned Allocator Identifiers, but a given Allocator Identifier <bcp14>MUST</bcp14> only be associated with a single Allocator.</t>
        <t>A new IANA "'ipn' Scheme URI Allocator Identifiers" registry is defined for the registration of Allocator Identifiers, see <xref target="iana-allocator-identifiers">'ipn' Scheme URI Allocator Identifiers registry</xref>.  Although the uniqueness of Allocator Identifiers is required to enforce uniqueness of ipn URIs, some identifiers are explicitly reserved for experimentation or future use.</t>
        <t>Each Allocator assigns Node Numbers according to its own policies, without risk of creating an identical ipn URI, as permitted by the rules in the <xref target="node-numbers">Node Numbers</xref> section of this document.  Other than ensuring that any Node Numbers it allocates are unique amongst all Node Numbers it assigns, an Allocator does not need to coordinate its allocations with other Allocators.</t>
        <t>If a system does not require interoperable deployment of ipn scheme URIs, then the <xref target="private-use">Private Use Node Numbers</xref> range, reserved by the <xref target="default-allocator">Default Allocator</xref> for this purpose, are to be used.</t>
        <section anchor="allocator-identifier-ranges">
          <name>Allocator Identifier Ranges</name>
          <t>Some organizations with internal hierarchies may wish to delegate the allocation of Node Numbers to one or more of their sub-organizations.  Rather than assigning unique Allocator Identifiers to each sub-organization on a first-come first-served basis, there are operational benefits in assigning Allocator Identifiers to such an organization in a structured way so that an external observer can detect that a group of Allocator Identifiers are organizationally associated.</t>
          <t>An Allocator Identifier range is a set of consecutive Allocator Identifiers associated with the same Allocator. Each individual Allocator Identifier in a given range <bcp14>SHOULD</bcp14> be assigned to a distinct sub-organization of the Allocator. Assigning identifiers in this way allows external observers both to associate individual Allocator Identifiers with a single organization and to usefully differentiate amongst sub-organizations.</t>
          <t>The practice of associating a consecutive range of numbers with a single organization is inspired by the Classless Inter-domain Routing assignment of Internet Addresses described in <xref target="RFC4632"/>. In that assignment scheme, an organization (such as an Internet Service Provider) is assigned a network prefix such that all addresses sharing that same prefix are considered to be associated with that organization.</t>
          <t>Each Allocator Identifier range is identified by the first Allocator Identifier in the range and the number of consecutive identifiers in the range.</t>
          <t>Allocator Identifier ranges differ from CIDR addresses in two important ways.</t>
          <ol spacing="normal" type="1"><li>
              <t>Allocator Identifiers are used to identify organizations and are not, themselves, addresses.</t>
            </li>
            <li>
              <t>Allocator Identifiers may be less than 32 bits in length.</t>
            </li>
          </ol>
          <t>In order to differentiate between Allocator Identifier ranges using efficient bitwise operations, all ranges <bcp14>MUST</bcp14> be of a size S that is a power of 2, and for a given range of length N bits, with S = 2^N, the least-significant N bits of the first Allocator Identifier <bcp14>MUST</bcp14> be all 0.</t>
          <t>An example of the use of Allocator Identifier ranges for four organizations (A, B, C, and D) is as follows:</t>
          <table align="left" anchor="tab-air-example">
            <name>Allocator Identifier Range Assignment Example</name>
            <thead>
              <tr>
                <th align="left">Organization</th>
                <th align="center">Range (dec)</th>
                <th align="center">Range (hex)</th>
                <th align="center">Range Length (Bits)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Org A</td>
                <td align="center">974848 .. 974975</td>
                <td align="center">0xEE000 .. 0xEE07F</td>
                <td align="center">7 bits</td>
              </tr>
              <tr>
                <td align="left">Org B</td>
                <td align="center">974976 .. 974991</td>
                <td align="center">0xEE080 .. 0xEE08F</td>
                <td align="center">4 bits</td>
              </tr>
              <tr>
                <td align="left">Org C</td>
                <td align="center">974992 .. 974993</td>
                <td align="center">0xEE090 .. 0xEE091</td>
                <td align="center">1 bit</td>
              </tr>
              <tr>
                <td align="left">Org D</td>
                <td align="center">974994</td>
                <td align="center">0xEE092</td>
                <td align="center">0 bits</td>
              </tr>
            </tbody>
          </table>
          <t>With these assignments, any Allocator Identifier whose most-significant 25 bits match 0xEE000 belong to organization A. Similarly, any Allocator Identifier whose most-significant 28 bits match 0xEE080 belong to organization B, and any Allocator Identifier whose most-significant 31 bits are 0xEE090 belong to organization C.  Organization D has a single Allocator Identifier, and hence a range of bit-length 0.</t>
        </section>
        <section anchor="default-allocator">
          <name>The Default Allocator</name>
          <t>As of the publication of <xref target="RFC7116"/>, the only organization permitted to assign Node Numbers was the Internet Assigned Numbers Authority (IANA) which assigned Node Numbers via the IANA "CBHE Node Numbers" registry. This means that all ipn URIs created prior to the addition of Allocator Identifiers are assumed to have Node Number allocations that comply with the IANA "CBHE Node Numbers" registry.</t>
          <t>The presumption that, unless otherwise specified, Node Numbers are allocated by IANA from a specific registry is formalized in this update to the ipn URI scheme by designating IANA as the Default Allocator, and by assigning the Allocator Identifier zero (0) in the <xref target="iana-allocator-identifiers">'ipn' Scheme URI Allocator Identifiers registry</xref> to the Default Allocator.  In any case where an encoded ipn URI does not explicitly include an Allocator Identifier, an implementation <bcp14>MUST</bcp14> assume that the Node Number has been allocated by the Default Allocator.</t>
          <t>A new IANA "'ipn' Scheme URI Default Allocator Node Numbers" registry is defined to control the allocation of Node Numbers values by the Default Allocator.  This new registry inherits behaviors and existing assignments from the IANA "CBHE Node Numbers" registry, and reserves some other values as defined in the <xref target="special-node-numbers">Special Node Numbers</xref> section below.</t>
        </section>
      </section>
      <section anchor="node-numbers">
        <name>Node Numbers</name>
        <t>A Node Number identifies a node that hosts a resource in the context of an Allocator. A Node Number is an unsigned integer. A single Node Number assigned by a single Allocator <bcp14>MUST</bcp14> refer to a single node.</t>
        <t>All Node Number assignments, by all Allocators, <bcp14>MUST</bcp14> be in the range 0 to 2^32-1.</t>
        <t>It is <bcp14>RECOMMENDED</bcp14> that Node Number zero (0) not be assigned by an Allocator to avoid confusion with the <xref target="null-uri">Null ipn URI</xref>.</t>
        <section anchor="fqnn">
          <name>Fully-qualified Node Numbers</name>
          <t>One of the advantages of ipn URIs is the ability to easily split the identity of a particular service from the node upon which the service exists.  For example a message received from one particular ipn URI may require a response to be sent to a different service on the same node that sent the original message.  Historically the identifier of the sending node has been colloquially referred to as the "node number" or "node identifier".</t>
          <t>To avoid future confusion, when referring to the identifier of a particular node the term "Fully-qualified Node Number" (FQNN) <bcp14>MUST</bcp14> be used to refer to the combination of the Node Number component and Allocator Identifier component of an ipn URI that uniquely identifies a particular node.  In other words, an FQNN is the unique identifier of a particular node that supports services identified by ipn URIs.</t>
          <t>In the examples in this document, FQNNs are written as (Allocator Identifier, Node Number), e.g., <tt>(977000,100)</tt> is the FQNN for a node assigned Node Number 100 by an Allocator with Allocator Identifier 977000.</t>
        </section>
      </section>
      <section anchor="special-node-numbers">
        <name>Special Node Numbers</name>
        <t>Some special-case Node Numbers are defined by the Default Allocator, see <xref target="iana-node-numbers">'ipn' Scheme URI Default Allocator Node Numbers registry</xref>.</t>
        <section anchor="the-zero-node-number">
          <name>The Zero Node Number</name>
          <t>The Default Allocator assigns the use of Node Number zero (0) solely for identifying the <xref target="null-uri">Null ipn URI</xref>.</t>
          <t>This means that any ipn URI with a zero (0) Allocator Identifier and a zero (0) Node Number, but a non-zero Service Number component is invalid.  Such ipn URIs <bcp14>MUST NOT</bcp14> be composed, and processors of such ipn URIs <bcp14>MUST</bcp14> consider them as the Null ipn URI.</t>
        </section>
        <section anchor="localnode-uri">
          <name>LocalNode ipn URIs</name>
          <t>The Default Allocator reserves Node Number 2^32-1 (0xFFFFFFFFF) to specify resources on the local node, rather than on any specific individual node.</t>
          <t>This means that any ipn URI with a zero (0) Allocator Identifier and a Node Number of 2^32-1 refers to a service on the local bundle node. This form of ipn URI is termed a "LocalNode ipn URI".</t>
        </section>
        <section anchor="private-use">
          <name>Private Use Node Numbers</name>
          <t>The Default Allocator provides a range of Node Numbers that are reserved for "Private Use", as defined in <xref target="RFC8126"/>.</t>
          <t>Any ipn URI with a zero (0) Allocator Identifier and a Node Number reserved for "Private Use" is not guaranteed to be unique beyond a single administrative domain.  An administrative domain, as used here, is defined as the set of nodes that share a unique allocation of FQNNs from the "Private Use" range.  These FQNNs can be considered to be functionally similar to "Private Address Space" IPv4 addresses, as defined in <xref target="RFC1918"/>.</t>
          <t>Because of this lack of uniqueness, any implementation of a protocol using ipn URIs that resides on the border between administrative domains <bcp14>MUST</bcp14> have suitable mechanisms in place to prevent protocol units using such "Private Use" Node Numbers to cross between different administrative domains.</t>
        </section>
      </section>
      <section anchor="service-numbers">
        <name>Service Numbers</name>
        <t>A Service Number is an unsigned integer that identifies a particular service operating on a node.  A service in this case is some logical function that requires its own resource identifier to distinguish it from other functions operating on the same node.</t>
      </section>
    </section>
    <section anchor="textual-representation-of-ipn-uris">
      <name>Textual Representation of ipn URIs</name>
      <t>All ipn scheme URIs comply with <xref target="RFC3986"/>, and are therefore represented by scheme identifier, and a scheme-specific part.  The scheme identifier is: <tt>ipn</tt>, and the scheme-specific parts are represented as a sequence of numeric components separated with the '<tt>.</tt>' character.  A formal definition is provided below, see <xref target="text-syntax">ipn URI Scheme Text Syntax</xref>, and can be informally considered as:</t>
      <artwork><![CDATA[
ipn:[<allocator-identifier>.]<node-number>.<service-number>
]]></artwork>
      <t>To keep the text representation concise, the following rules apply:</t>
      <ol spacing="normal" type="1"><li>
          <t>All leading <tt>0</tt> characters <bcp14>MUST</bcp14> be omitted. A single '<tt>0</tt>' is valid.</t>
        </li>
        <li>
          <t>If the Allocator Identifier is zero (0), then the <tt>&lt;allocator-identifier&gt;</tt> and '<tt>.</tt>' <bcp14>MAY</bcp14> be omitted.</t>
        </li>
        <li>
          <t>If the Allocator Identifier is zero (0), and the Node Number is 2^32-1, i.e., the URI is a <xref target="localnode-uri">LocalNode ipn URI</xref>, then the character '<tt>!</tt>' <bcp14>SHOULD</bcp14> be used instead of the digits <tt>4294967295</tt>, although both forms are valid encodings.</t>
        </li>
      </ol>
      <t>Examples of the textual representation of ipn URIs can be found in <xref target="text-examples">Appendix A</xref>.</t>
      <section anchor="text-syntax">
        <name>ipn URI Scheme Text Syntax</name>
        <t>The text syntax of an ipn URI <bcp14>MUST</bcp14> comply with the following ABNF <xref target="RFC5234"/> syntax, and reiterates the core ABNF syntax rule for DIGIT defined by that specification:</t>
        <artwork type="abnf" align="left"><![CDATA[
ipn-uri = "ipn:" ipn-hier-part

ipn-hier-part = fqnn "." service-number

fqnn = "!" / allocator-part

allocator-part = [allocator-identifier "."] node-number

allocator-identifier = number

node-number = number

service-number = number

number = "0" / non-zero-number

non-zero-number = (%x31-39 *DIGIT)

DIGIT = %x30-39
]]></artwork>
      </section>
    </section>
    <section anchor="usage-of-ipn-uris-with-bpv7">
      <name>Usage of ipn URIs with BPv7</name>
      <t>From the earliest days of experimentation with the Bundle Protocol there has been a need to identify the source and destination of a bundle.  The IRTF BPv6 experimental specification termed the logical source or destination of a bundle as an "Endpoint" identified by an "Endpoint Identifier" (EID). BPv6 EIDs are formatted as URIs. This definition and representation of EIDs was carried forward from the IRTF BPv6 specification to the IETF BPv7 specification. BPv7 additionally defined an IANA registry called the "Bundle Protocol URI Scheme Types" registry which identifies those URI schemes than might be used to represent EIDs.  The ipn URI scheme is one such URI scheme.</t>
      <t>This section identifies the behavior and interpretation of ipn scheme URIs that <bcp14>MUST</bcp14> be followed when using this URI scheme to represent EIDs in BPv7. An ipn URI used as a BPv7 or BPv6 EID is termed an "ipn EID".</t>
      <section anchor="uniqueness-constraints">
        <name>Uniqueness Constraints</name>
        <t>An ipn EID <bcp14>MUST</bcp14> identify a singleton endpoint. The bundle processing node that is the sole member of that endpoint <bcp14>MUST</bcp14> be the node identified by the <xref target="fqnn">Fully-qualified Node Number</xref> of the node.</t>
        <t>A single bundle processing node <bcp14>MAY</bcp14> have multiple ipn EIDs associated with it. However, all ipn EIDs that share any single FQNN <bcp14>MUST</bcp14> refer to the same bundle processing node.</t>
        <t>For example, <tt>ipn:977000.100.1</tt>, <tt>ipn:977000.100.2</tt>, and <tt>ipn:977000.100.3</tt> <bcp14>MUST</bcp14> all refer to services registered on the bundle processing node identified with FQNN <tt>(977000,100)</tt>. None of these EIDs could be registered on any other bundle processing node.</t>
      </section>
      <section anchor="the-null-endpoint">
        <name>The Null Endpoint</name>
        <t><xref section="3.2" sectionFormat="of" target="RFC9171"/> defines the concept of the 'null' endpoint, which is an endpoint that has no members and which is identified by a special 'null' EID.</t>
        <t>Within the ipn URI scheme, the 'null' EID is represented by the <xref target="null-uri">Null ipn URI</xref>.  This means that the URIs <tt>dtn:none</tt> (<xref section="4.2.5.1.1" sectionFormat="of" target="RFC9171"/>), <tt>ipn:0.0</tt>, and <tt>ipn:0.0.0</tt> all refer to the BPv7 'null' endpoint.</t>
      </section>
      <section anchor="bpv7-node-id">
        <name>BPv7 Node ID</name>
        <t><xref section="4.2.5.2" sectionFormat="of" target="RFC9171"/> introduces the concept of a "Node ID" that has the same format as an EID and that uniquely identifies a bundle processing node.</t>
        <t>Any ipn EID can serve as a "Node ID" for the bundle processing node identified by its <xref target="fqnn">Fully-qualified Node Number</xref>. That is, any ipn EID of the form ipn:A.B.C may be used as the Source Node ID of any bundle created by the bundle processing node identified by the FQNN <tt>(A,B)</tt>.</t>
      </section>
      <section anchor="localnode-ipn-eids">
        <name>LocalNode ipn EIDs</name>
        <t>When a <xref target="localnode-uri">LocalNode ipn URI</xref> is used as a BPv7 or BPv6 EID, it is termed a "LocalNode ipn EID".</t>
        <t>Because a LocalNode ipn EID only has meaning on the local bundle node, any such EID <bcp14>MUST</bcp14> be considered 'non-routable'. This means that any bundle using a LocalNode ipn EID as a bundle source or bundle destination <bcp14>MUST NOT</bcp14> be allowed to leave the local node.  Equally, all externally received bundles featuring LocalNode EIDs as a bundle source or bundle destination <bcp14>MUST</bcp14> be discarded as invalid.</t>
        <t>LocalNode ipn EIDs <bcp14>MUST NOT</bcp14> be present in any other part of a bundle that is transmitted off of the local node. For example, a LocalNode ipn EID <bcp14>MUST NOT</bcp14> be used as a Bundle Protocol Security <xref target="RFC9172"/> security source for a bundle transmitted from the local bundle node, because such a source EID would have no meaning at a downstream bundle node.</t>
        <t>LocalNode ipn EIDs <bcp14>MUST NOT</bcp14> be published in any node identification directory, such as a DNS registration, or presented as part of dynamic peer discovery, as the EID has no valid meaning for other nodes.  For example, a LocalNode ipn EID <bcp14>MUST</bcp14> not be advertised as the peer Node ID during session negotiation in <xref target="RFC9174"/>.</t>
      </section>
      <section anchor="private-use-ipn-eids">
        <name>Private Use ipn EIDs</name>
        <t>Bundles destined for EIDs that use an ipn URI with a <xref target="fqnn">Fully-qualified Node Number</xref> that is within the "Private Use" range of the <xref target="default-allocator">Default Allocator</xref> are not universally unique, and therefore are only valid within the scope of the current administrative domain.  This means that any bundle using a Private Use ipn EID as a bundle source or bundle destination <bcp14>MUST NOT</bcp14> be allowed to cross administrative domains.  All implementations that could be deployed as a gateway between administrative domains <bcp14>MUST</bcp14> be sufficiently configurable to ensure that this is enforced, and operators <bcp14>MUST</bcp14> ensure correct configuration.</t>
        <t>Private Use ipn EIDs <bcp14>MUST NOT</bcp14> be present in any other part of a bundle that is destined for another administrative domain when the lack of uniqueness prevents correct operation. For example, a Private Use ipn EID <bcp14>MUST NOT</bcp14> be used as a Bundle Protocol Security <xref target="RFC9172"/> security source for a bundle, when the bundle is destined for a different administrative domain.</t>
      </section>
      <section anchor="well-known-service-numbers">
        <name>Well-known Service Numbers</name>
        <t>It is convenient for BPv7 services that have a public specification and wide adoption to be identified by a pre-agreed default Service Number, so that unless extra configuration is applied, such services can be sensibly assumed to be operating on the well-known Service Number on a particular node.</t>
        <t>If a different service uses the number, or the service uses a different number, BPv7 will continue to operate, but some configuration may be required to make the individual service operational.</t>
        <t>A new IANA "'ipn' Scheme URI Well-known Service Numbers for BPv7" registry is defined for the registration of well-known BPv7 Service Numbers, see <xref target="iana-service-numbers">'ipn' Scheme URI Well-known Service Numbers for BPv7 registry</xref>.  This registry records the assignments of Service Numbers for well-known services, and also explicitly reserves ranges for both experimentation and private use.</t>
      </section>
      <section anchor="administrative-endpoints">
        <name>Administrative Endpoints</name>
        <t>The service identified by a Service Number of zero (0) <bcp14>MUST</bcp14> be interpreted as the Administrative Endpoint of the node, as defined in <xref section="3.2" sectionFormat="of" target="RFC9171"/>.</t>
        <t>Non-zero Service Numbers <bcp14>MUST NOT</bcp14> be used to identify the Administrative Endpoint of a bundle node in an ipn EID.</t>
      </section>
    </section>
    <section anchor="cbor-representation-of-ipn-uris-with-bpv7">
      <name>CBOR representation of ipn URIs with BPv7</name>
      <t><xref section="4.2.5.1" sectionFormat="of" target="RFC9171"/> requires that any URI scheme used to represent BPv7 EIDs <bcp14>MUST</bcp14> define how the scheme-specific part of the URI scheme is encoded with CBOR <xref target="RFC8949"/>. To meet this requirement, this section describes the CBOR encoding and decoding approach for ipn EIDs. The formal definition of the CBOR representation is specified, see <xref target="cbor-encoding">ipn URI Scheme CBOR syntax</xref>.</t>
      <section anchor="ipn-eid-cbor-encoding">
        <name>ipn EID CBOR Encoding</name>
        <t>Generic URI approaches to encoding ipn EIDs are unlikely to be efficient because they do not consider the underlying structure of the ipn URI scheme. Since the creation of the ipn URI scheme was motivated by the need for concise identification and rapid processing, the encoding of ipn EIDs maintains these properties.</t>
        <t>Fundamentally, <xref target="RFC9171"/> ipn EIDs are represented as a sequence of identifiers. In the text syntax, the numbers are separated with the '<tt>.</tt>' delimiter; in CBOR, this ordered series of numbers can be represented by an array. Therefore, when encoding ipn EIDs for use with BPv7, the scheme-specific part of an ipn URI <bcp14>MUST</bcp14> be represented as a CBOR array of either two (2) or three (3) elements. Each element of the array <bcp14>MUST</bcp14> be encoded as a single CBOR unsigned integer.</t>
        <t>The structure and mechanisms of the two-element and three-element encodings are described below, and examples of the different encodings are provided in <xref target="cbor-examples">Appendix B</xref>.</t>
        <section anchor="two-encode">
          <name>Two-Element Scheme-Specific Encoding</name>
          <t>In the two-element scheme-specific encoding of an ipn EID, the first element of the array is an encoding of the <xref target="fqnn">Fully-qualified Node Number</xref> and the second element of the array is the ipn EID Service Number.</t>
          <t>The FQNN encoding <bcp14>MUST</bcp14> be a 64-bit unsigned integer constructed in the following way:</t>
          <ol spacing="normal" type="1"><li>
              <t>The least significant 32 bits <bcp14>MUST</bcp14> represent the Node Number associated with the ipn EID.</t>
            </li>
            <li>
              <t>The most significant 32 bits <bcp14>MUST</bcp14> represent the Allocator Identifier associated with the ipn EID.</t>
            </li>
          </ol>
          <t>For example the ipn EID of <tt>ipn:977000.100.1</tt> has an FQNN of <tt>(977000,100)</tt> which would be encoded as <tt>0xEE868_00000064</tt>.  The resulting two-element array <tt>[0xEE868_00000064, 0x01]</tt> would be encoded in CBOR as the following 11 octet sequence:</t>
          <artwork><![CDATA[
82                        # 2-Element Endpoint Encoding
   02                     # uri-code: 2 (IPN URI scheme)
   82                     # 2 Element ipn EID scheme-specific encoding
      1B 000EE86800000064 # Fully-qualified Node Number
      01                  # Service Number
]]></artwork>
          <t>The two-element scheme-specific encoding provides for backwards-compatibility with the encoding provided in <xref section="4.2.5.1.2" sectionFormat="of" target="RFC9171"/>. When used in this way, the encoding of the FQNN replaces the use of the "Node Number" that was specified in RFC9171. When the Node Number is allocated by the <xref target="default-allocator">Default Allocator</xref>, the encoding of the FQNN and the RFC9171 encoding of the "Node Number" are identical.</t>
        </section>
        <section anchor="three-encode">
          <name>Three-Element Scheme-Specific Encoding</name>
          <t>In the three-element scheme-specific encoding of an ipn EID, the first element of the array is the Allocator Identifier, the second element of the array is the Node Number, and the third element of the array is the Service Number.</t>
          <t>For example, the ipn EID of <tt>ipn:977000.100.1</tt> would result in the three-element array of <tt>[977000,100,1]</tt> which would be encoded in CBOR as the following 9 octet sequence:</t>
          <artwork><![CDATA[
82                # 2-Element Endpoint Encoding
   02             # uri-code: 2 (IPN URI scheme)
   83             # 3 Element ipn EID scheme-specific encoding
      1A 000EE868 # Allocator Identifier
      64          # Node Number
      01          # Service Number
]]></artwork>
          <t>The three-element scheme-specific encoding allows for a more efficient representation of ipn EIDs using smaller Allocator Identifiers, and implementations are <bcp14>RECOMMENDED</bcp14> to use this encoding scheme, unless explicitly mitigating for interoperability issues, <xref target="compatibility">see Scheme Compatibility</xref>.</t>
          <t>When encoding an ipn EID using the <xref target="default-allocator">Default Allocator</xref> with this encoding scheme, the first element of the array is the value zero (0).  In this case using the equivalent <xref target="two-encode">Two-Element Scheme-Specific Encoding</xref> will result in a more concise CBOR representation, and therefore it is <bcp14>RECOMMENDED</bcp14> that implementations use that encoding instead.</t>
        </section>
      </section>
      <section anchor="ipn-eid-cbor-decoding">
        <name>ipn EID CBOR Decoding</name>
        <t>The presence of different scheme-specific encodings does not introduce any decoding ambiguity.</t>
        <t>An ipn EID CBOR decoder can reconstruct an ipn EID using the following logic. In this description, the term <tt>enc_eid</tt> refers to the CBOR encoded ipn EID, and the term <tt>ipn_eid</tt> refers to the decoded ipn EID.</t>
        <artwork align="left" type="pseudocode"><![CDATA[
if enc_eid.len() == 3
{
  ipn_eid.allocator_identifier := enc_eid[0];
  ipn_eid.node_number := enc_eid[1];
  ipn_eid.service_number := enc_eid[2];
}
else if enc_eid.len() == 2
{
  ipn_eid.allocator_identifier := enc_eid[0] >> 32;
  ipn_eid.node_number := enc_eid[0] & (2^32-1);
  ipn_eid.service_number := enc_eid[1];
}
]]></artwork>
      </section>
      <section anchor="cbor-encoding">
        <name>ipn URI Scheme CBOR syntax</name>
        <t>A BPv7 endpoint identified by an ipn URI, when encoded in Concise Binary Object Representation (CBOR) <xref target="RFC8949"/>, <bcp14>MUST</bcp14> comply with the following Concise Data Definition Language (CDDL) <xref target="RFC8610"/> specification:</t>
        <artwork type="cddl" align="left"><![CDATA[
eid = $eid .within eid-structure

eid-structure = [
  uri-code: uint,
  SSP: any
]

; ... Syntax for other uri-code values defined in RFC9171 ...

$eid /= [
  uri-code: 2,
  SSP: ipn-ssp2 / ipn-ssp3
]
ipn-ssp2 = [
  fqnn: uint,  ; packed value
  service-number: uint
]
ipn-ssp3 = [
  allocator-identifier: uint .lt 4294967296,
  node-number: uint .lt 4294967296,
  service-number: uint
]
]]></artwork>
        <t>Note: The <tt>node-number</tt> component will be the numeric representation of the concatenation of the Allocator Identifier and Node Number when the 2-element encoding scheme has been used.</t>
      </section>
      <section anchor="ipn-eid-matching">
        <name>ipn EID Matching</name>
        <t>Regardless of whether the two-element or three-element scheme-specific encoding is used, ipn EID matching <bcp14>MUST</bcp14> be performed on the decoded EID information itself. Different encodings of the same ipn EID <bcp14>MUST</bcp14> be treated as equivalent when performing EID-specific functions.</t>
        <t>For example, the ipn EID of <tt>ipn:977000.100.1</tt> can be represented as either the two-element encoding of <tt>0x821B000EE8680000006401</tt> or the three-element encoding of <tt>0x831A000EE868186401</tt>. While message integrity and other syntax-based checks may treat these values differently, any EID-based comparisons <bcp14>MUST</bcp14> treat these values the same - as representing the ipn EID <tt>ipn:977000.100.1</tt>.</t>
      </section>
    </section>
    <section anchor="special-considerations">
      <name>Special Considerations</name>
      <t>The ipn URI scheme provides a compact and hierarchical mechanism for identifying services on network nodes. There is a significant amount of utility in the ipn URI scheme approach to identification. However, implementers should take into consideration the following observations on the use of the ipn URI scheme, particularly in regard to interoperability with implementations that pre-date this specification.</t>
      <section anchor="compatibility">
        <name>Scheme Compatibility</name>
        <t>The ipn scheme update that has been presented in this document preserves backwards compatibility with any ipn URI scheme going back to the provisional definition of the ipn scheme in the experimental Compressed Bundle Header Encoding <xref target="RFC6260"/> specification in 2011. This means that any ipn URI that was valid prior to the publication of this update remains a valid ipn URI.</t>
        <t>Similarly, the <xref target="two-encode">two-element scheme-specific encoding</xref> is also backwards-compatible with the encoding of ipn URIs provided in <xref target="RFC9171"/>. Any existing RFC9171-compliant implementation will produce an ipn URI encoding in compliance with this specification.</t>
        <t>The introduction of optional non-default Allocator Identifiers and a three-element scheme-specific encoding does not make this ipn URI scheme update forwards-compatible. Existing implementations for which support of this update is desired <bcp14>MUST</bcp14> be updated to be able to process non-default Allocator Identifiers and three-element scheme-specific encodings. It is <bcp14>RECOMMENDED</bcp14> that BPv7 implementations upgrade to process these new features to benefit from the scalability provided by Allocator Identifiers and the encoding efficiencies provided by the three-element encoding.</t>
      </section>
      <section anchor="cbor-representation-interoperability">
        <name>CBOR Representation Interoperability</name>
        <t>Care must be taken when deploying implementations that default to using the three-element encoding in networks that include implementations that only support the two-element <xref target="RFC9171"/> encoding. Because the existing implementations will reject bundles that use the three-element encoding as malformed, correct forwarding of semantically valid bundles will fail.  The used mitigation for this issue depends on the nature of the interoperability required by the deployment. Techniques can include:</t>
        <ul spacing="normal">
          <li>
            <t>A configuration option indicating when an implementation must use the two-element encoding for all ipn EIDs when processing bundles destined to a given endpoint:  This would be suitable when adding a newer implementation to a network of existing implementations.</t>
          </li>
          <li>
            <t>Selective bundle encapsulation, whereby bundles that are known to originate from implementations that do not support the three-element encoding are tunnelled across regions of the network that require the three-element encoding:  This would utilize specially configured 'gateway nodes' to perform the tunnel encapsulation and decapsulation, and would be suitable when joining an existing network to a larger network.</t>
          </li>
        </ul>
        <t>Techniques that do not mitigate the problem include:</t>
        <ul spacing="normal">
          <li>
            <t>Heuristic determination of the correct encoding to use when responding to a bundle by examining the incoming bundle:  It is not possible to determine whether the two-element encoding is required by the destination when composing a new bundle in response to the receipt of a bundle, such as a status report, because ipn EIDs assigned by the Default Allocator use the two-element encoding, whether the implementation supports the three-element encoding or not.</t>
          </li>
          <li>
            <t>Transcoding bundles at intermediate nodes: <xref target="RFC9171"/> requires the bundle primary block be immutable, and even if ipn EIDs in the primary block do not require rewriting, other blocks including the payload block may include ipn EIDs of which the transcoding node is unaware.  Additionally, bundle blocks may be covered by <xref target="RFC9172"/> bundle security blocks or bundle integrity blocks, making them immutable.</t>
          </li>
        </ul>
      </section>
      <section anchor="text-representation-compatibility">
        <name>Text Representation Compatibility</name>
        <t>The textual representation of ipn URIs is not forwards-compatible with <xref target="RFC9171"/>, therefore care must be taken when deploying implementations or tooling that use the textural representation of ipn URIs and support for non-default Allocator Identifiers is required.  For example <xref section="4.6" sectionFormat="of" target="RFC9174"/> specifies that the Session Initialization message "...<bcp14>SHALL</bcp14> contain the UTF-8 encoded node ID of the entity that sent the SESS_INIT message."  In such cases the considerations that apply to the use of the 3-element CBOR encoding also apply to the text representation when a non-default Allocator Identifier is present.</t>
      </section>
      <section anchor="bundle-protocol-version-6-compatibility">
        <name>Bundle Protocol Version 6 Compatibility</name>
        <t>This document updates the use of ipn EIDs for BPv7, however the ipn URI scheme was originally defined for use with version 6 of the Bundle Protocol (BPv6).  This document does not update any of the behaviors, wire-formats or mechanisms of BPv6.  Therefore, ipn EIDs with non-default Allocator Identifiers <bcp14>MUST NOT</bcp14> be used with BPv6, and the Allocator Identifier prefix <bcp14>MUST</bcp14> be omitted from any textural representation.  It should be noted that BPv6 has no concept of LocalNode EIDs, and will therefore treat such EIDs as routable.</t>
      </section>
      <section anchor="late-binding">
        <name>Late Binding</name>
        <t><xref target="RFC9171"/> mandates the concept of "late binding" of an EID, whereby the address of the destination of a bundle is resolved from its identifier hop-by-hop as it transits a BPv7 network.  This per-hop binding of identifiers to addresses underlines the fact that EIDs are purely names, and should not carry any implicit or explicit information concerning the current location or reachability of an identified node and service.  This removes the need to rename a node as its location changes.</t>
        <t>The concept of "late binding" is preserved in this ipn URI scheme. Elements of an ipn URI <bcp14>MUST NOT</bcp14> be regarded as carrying information relating to location, reachability, or other addressing/routing concern.</t>
        <t>An example of incorrect behavior would be to assume that a given Allocator assigns Node Numbers derived from link-layer addresses and to interpret the Node Number component of an ipn URI directly as a link-layer address. No matter the mechanism an Allocator uses for the assignment of Node Numbers, they remain just numbers, without additional meaning.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This section updates the security considerations from <xref section="4.2.5.1.2" sectionFormat="of" target="RFC9171"/> to account for the inclusion of Allocator Identifiers in the ipn URI scheme when used with BPv7.</t>
      <section anchor="reliability-and-consistency">
        <name>Reliability and consistency</name>
        <t>None of the BPv7 endpoints identified by ipn EIDs are guaranteed to be reachable at any time, and the identity of the processing entities operating on those endpoints is never guaranteed by the Bundle Protocol itself. Verification of the signature provided by the Block Integrity Block targeting the bundle's primary block, as defined by Bundle Protocol Security <xref target="RFC9172"/>, is required for this purpose.</t>
      </section>
      <section anchor="malicious-construction">
        <name>Malicious construction</name>
        <t>Malicious construction of a conformant ipn URI is limited to the malicious selection of Allocator Identifiers, Node Numbers, and Service Numbers. That is, a maliciously constructed ipn EID could be used to direct a bundle to an endpoint that might be damaged by the arrival of that bundle or, alternatively, to declare a false source for a bundle and thereby cause incorrect processing at a node that receives the bundle. In both cases (and indeed in all bundle processing), the node that receives a bundle should verify its authenticity and validity before operating on it in any way, such as the use of BPSec <xref target="RFC9172"/>, and TCPCLv4 with TLS <xref target="RFC9174"/>.</t>
      </section>
      <section anchor="back-end-transcoding">
        <name>Back-end transcoding</name>
        <t>The limited expressiveness of URIs of the ipn scheme effectively eliminates the possibility of threat due to errors in back-end transcoding.</t>
      </section>
      <section anchor="local-and-private-use-ipn-eids">
        <name>Local and Private Use ipn EIDs</name>
        <t>Both <xref target="localnode-uri">LocalNode</xref> and <xref target="private-use">Private Use</xref> ipn URIs present a risk to the stability of deployed BPv7 networks.  If either type of ipn URI are allowed to propagate beyond the domain in which they are valid, then the required uniqueness of ipn URIs no longer holds, and this fact can be abused by a malicious node to prevent the correct functioning of the network as a whole.</t>
        <t>See <xref target="localnode-ipn-eids">LocalNode ipn EIDs</xref> and <xref target="private-use-ipn-eids">Private Use ipn EIDs</xref> for required behaviors to mitigate against this form of abuse.</t>
      </section>
      <section anchor="sensitive-information">
        <name>Sensitive information</name>
        <t>Because ipn URIs are used only to represent the numeric identities of resources, the risk of disclosure of sensitive information due to interception of these URIs is minimal. Examination of ipn URIs could be used to support traffic analysis; where traffic analysis is a plausible danger, bundles should be conveyed by secure convergence-layer protocols that do not expose endpoint IDs, such as TCPCLv4 <xref target="RFC9174"/>.</t>
      </section>
      <section anchor="semantic-attacks">
        <name>Semantic attacks</name>
        <t>The simplicity of ipn URI scheme syntax minimizes the possibility of misinterpretation of a URI by a human user.</t>
      </section>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>The following sections detail requests to IANA for the creation of two new registries, and the renaming of an existing registry.</t>
      <t>IANA is requested to update the reference to the 'ipn' scheme in the "Uniform Resource Identifier (URI) Schemes" registry to this document.</t>
      <t>IANA is requested to add the new registries, and relocate the existing registries under the "Uniform Resource Identifier (URI) Schemes" protocol registry.</t>
      <section anchor="iana-allocator-identifiers">
        <name>'ipn' Scheme URI Allocator Identifiers registry</name>
        <t>IANA is requested to create a new registry entitled "'ipn' Scheme URI Allocator Identifiers".  The registration policy for this registry, using terms defined in <xref target="RFC8126"/>, is:</t>
        <table align="left" anchor="tab-ipn-allocator-identifiers-reg">
          <name>'ipn' Scheme URI Numbering Allocator Identifiers registration policies</name>
          <thead>
            <tr>
              <th align="center">Range</th>
              <th align="left">Registration Policy</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">0..0xFFFF</td>
              <td align="left">Expert Review, Single Allocator Identifiers only</td>
            </tr>
            <tr>
              <td align="center">0x10000..0x3FFFFFFF</td>
              <td align="left">Expert Review</td>
            </tr>
            <tr>
              <td align="center">0x40000000..0x7FFFFFFF</td>
              <td align="left">Experimental Use</td>
            </tr>
            <tr>
              <td align="center">0x80000000..0xFFFFFFFF</td>
              <td align="left">Reserved, Future Expansion</td>
            </tr>
            <tr>
              <td align="center">&gt;= 2^32</td>
              <td align="left">Reserved</td>
            </tr>
          </tbody>
        </table>
        <t>Each entry in this registry associates one or more Allocator Identifiers with a single organization. Within the registry, the organization is identified using the "Name" and "Point of Contact" fields. It is expected that each identified organization publishes some listing of allocated node numbers - the pointer to which is listed in the "Reference" field of the registry.</t>
        <t>Note that the “Single Allocator Identifiers only” language in Registration Policy for this registry indicates that, within the indicated range, the allocation of a sequence of consecutive Allocator identifiers to a single organization is prohibited.  IANA is requested to note this in the registration policy for this registry.</t>
        <t>The initial values for the registry are:</t>
        <table align="left" anchor="tab-ipn-allocator-identifiers-vals">
          <name>'ipn' Scheme URI Allocator Identifiers initial values</name>
          <thead>
            <tr>
              <th align="left">Name</th>
              <th align="center">Range (dec)</th>
              <th align="center">Range (hex)</th>
              <th align="center">Range Length (Bits)</th>
              <th align="center">Reference</th>
              <th align="center">Point of Contact</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <xref target="default-allocator">Default Allocator</xref></td>
              <td align="center">0</td>
              <td align="center">0x0</td>
              <td align="center">0</td>
              <td align="center">This document</td>
              <td align="center">IANA</td>
            </tr>
            <tr>
              <td align="left">Example Range</td>
              <td align="center">974848 .. 978943</td>
              <td align="center">0xEE000 .. 0xEEFFF</td>
              <td align="center">12 bits</td>
              <td align="center">This document</td>
              <td align="center">IANA</td>
            </tr>
          </tbody>
        </table>
        <t>The "Example Range" is assigned for use in examples in documentation and sample code.</t>
        <section anchor="guidance-for-designated-experts">
          <name>Guidance for Designated Experts</name>
          <t>Due to the nature of the CBOR encoding of unsigned integers used for Allocator Identifiers with BPv7, Allocator Identifiers with a low value number are encoded more efficiently than larger numbers.  This makes low value Allocator Identifiers more desirable than larger Allocator Identifiers, and therefore care must be taken when assigning Allocator Identifier ranges to ensure that a single applicant is not granted a large swathe of highly desirable numbers at the expense of other applicants.  To this end, Designated Experts are strongly recommended to familiarize themselves with the CBOR encoding of unsigned integers in <xref target="RFC8949"/>.</t>
        </section>
      </section>
      <section anchor="iana-node-numbers">
        <name>'ipn' Scheme URI Default Allocator Node Numbers registry</name>
        <t>IANA is requested to rename the "CBHE Node Numbers" registry defined in <xref section="3.2.1" sectionFormat="of" target="RFC7116"/> to the "'ipn' Scheme URI Default Allocator Node Numbers" registry.</t>
        <t>The registration policy for this registry, using terms defined in <xref target="RFC8126"/>, is updated to be:</t>
        <table align="left" anchor="tab-ipn-node-numbers-reg">
          <name>'ipn' Scheme URI Default Allocator Node Numbers registration policies</name>
          <thead>
            <tr>
              <th align="center">Range</th>
              <th align="left">Registration Policy</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">0</td>
              <td align="left">Reserved for the <xref target="null-uri">Null ipn URI</xref></td>
            </tr>
            <tr>
              <td align="center">1..0x3FFF</td>
              <td align="left">Private Use</td>
            </tr>
            <tr>
              <td align="center">0x4000..0xFFFFFFFE</td>
              <td align="left">Expert Review</td>
            </tr>
            <tr>
              <td align="center">0xFFFFFFFF</td>
              <td align="left">Reserved for <xref target="localnode-uri">LocalNode ipn URIs</xref></td>
            </tr>
            <tr>
              <td align="center">&gt;= 2^32</td>
              <td align="left">Invalid</td>
            </tr>
          </tbody>
        </table>
        <t>As IANA is requested to only rename the registry, all existing registrations will remain.</t>
      </section>
      <section anchor="iana-service-numbers">
        <name>'ipn' Scheme URI Well-known Service Numbers for BPv7 registry</name>
        <t>IANA is requested to create a new registry entitled "'ipn' Scheme URI Well-known Service Numbers for BPv7" registry.  The registration policy for this registry, using terms defined in <xref target="RFC8126"/>, is:</t>
        <table align="left" anchor="tab-ipn-service-numbers-reg">
          <name>'ipn' Scheme URI Well-known Service Numbers for BPv7 registration policies</name>
          <thead>
            <tr>
              <th align="center">Range</th>
              <th align="left">Registration Policy</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">0</td>
              <td align="left">Reserved for the <xref target="administrative-endpoints">Administrative Endpoint</xref></td>
            </tr>
            <tr>
              <td align="center">1..127</td>
              <td align="left">Private Use</td>
            </tr>
            <tr>
              <td align="center">128..255</td>
              <td align="left">Standards Action</td>
            </tr>
            <tr>
              <td align="center">0x0100..0x7FFF</td>
              <td align="left">Private Use</td>
            </tr>
            <tr>
              <td align="center">0x8000..0xFFFF</td>
              <td align="left">Specification Required</td>
            </tr>
            <tr>
              <td align="center">0x10000..0xFFFFFFFF</td>
              <td align="left">Private Use</td>
            </tr>
            <tr>
              <td align="center">&gt;= 2^32</td>
              <td align="left">Reserved for future expansion</td>
            </tr>
          </tbody>
        </table>
        <t>The initial values for the registry are:</t>
        <table align="left" anchor="tab-ipn-service-numbers-vals">
          <name>'ipn' Scheme URI Well-known Service Numbers for BPv7 initial values</name>
          <thead>
            <tr>
              <th align="center">Value</th>
              <th align="left">Description</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">0</td>
              <td align="left">The <xref target="administrative-endpoints">Administrative Endpoint</xref></td>
              <td align="left">
                <xref target="RFC9171"/>, This document</td>
            </tr>
            <tr>
              <td align="center">0xEEE0 .. 0xEEEF</td>
              <td align="left">Example Range</td>
              <td align="left">This document</td>
            </tr>
          </tbody>
        </table>
        <t>The "Example Range" is assigned for use in examples in documentation and sample code.</t>
        <section anchor="guidance-for-designated-experts-1">
          <name>Guidance for Designated Experts</name>
          <t>This registry is intended to record the default Service Numbers for well-known, interoperable services available and of use to the entire BPv7 community, hence all ranges not marked for Private Use <bcp14>MUST</bcp14> have a corresponding publicly available specification describing how one interfaces with the service.</t>
          <t>Services that are specific to a particular deployment or co-operation may require a registry to reduce administrative burden, but do not require an entry in this registry.</t>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC6260">
          <front>
            <title>Compressed Bundle Header Encoding (CBHE)</title>
            <author fullname="S. Burleigh" initials="S." surname="Burleigh"/>
            <date month="May" year="2011"/>
            <abstract>
              <t>This document describes a convention by which Delay-Tolerant Networking (DTN) Bundle Protocol (BP) "convergence-layer" adapters may represent endpoint identifiers in a compressed form within the primary blocks of bundles, provided those endpoint identifiers conform to the structure prescribed by this convention.</t>
              <t>Compressed Bundle Header Encoding (CBHE) compression is a convergence-layer adaptation. It is opaque to bundle processing. Therefore, it has no impact on the interoperability of different Bundle Protocol implementations, but instead affects only the interoperability of different convergence-layer adaptation implementations.</t>
              <t>This document is a product of the Delay-Tolerant Networking Research Group and has been reviewed by that group. No objections to its publication as an RFC were raised. This document defines an Experimental Protocol for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6260"/>
          <seriesInfo name="DOI" value="10.17487/RFC6260"/>
        </reference>
        <reference anchor="RFC7116">
          <front>
            <title>Licklider Transmission Protocol (LTP), Compressed Bundle Header Encoding (CBHE), and Bundle Protocol IANA Registries</title>
            <author fullname="K. Scott" initials="K." surname="Scott"/>
            <author fullname="M. Blanchet" initials="M." surname="Blanchet"/>
            <date month="February" year="2014"/>
            <abstract>
              <t>The DTNRG Research Group has defined the experimental Licklider Transmission Protocol (LTP) and the Compressed Bundle Header Encoding (CBHE) mechanism for the InterPlanetary Network ('ipn' URI scheme). Moreover, RFC 5050 defines values for the Bundle Protocol administrative record type. All of these fields are subject to a registry. For the purpose of its research work, the group has created ad hoc registries. As the specifications are stable and have multiple interoperable implementations, the group would like to hand off the registries to IANA for official management. This document describes the necessary IANA actions.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7116"/>
          <seriesInfo name="DOI" value="10.17487/RFC7116"/>
        </reference>
        <reference anchor="RFC9171">
          <front>
            <title>Bundle Protocol Version 7</title>
            <author fullname="S. Burleigh" initials="S." surname="Burleigh"/>
            <author fullname="K. Fall" initials="K." surname="Fall"/>
            <author fullname="E. Birrane, III" initials="E." surname="Birrane, III"/>
            <date month="January" year="2022"/>
            <abstract>
              <t>This document presents a specification for the Bundle Protocol, adapted from the experimental Bundle Protocol specification developed by the Delay-Tolerant Networking Research Group of the Internet Research Task Force and documented in RFC 5050.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9171"/>
          <seriesInfo name="DOI" value="10.17487/RFC9171"/>
        </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="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC5234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="P. Overell" initials="P." surname="Overell"/>
            <date month="January" year="2008"/>
            <abstract>
              <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </reference>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="RFC8610">
          <front>
            <title>Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="C. Vigano" initials="C." surname="Vigano"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2019"/>
            <abstract>
              <t>This document proposes a notational convention to express Concise Binary Object Representation (CBOR) data structures (RFC 7049). Its main goal is to provide an easy and unambiguous way to express structures for protocol messages and data formats that use CBOR or JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8610"/>
          <seriesInfo name="DOI" value="10.17487/RFC8610"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC5050">
          <front>
            <title>Bundle Protocol Specification</title>
            <author fullname="K. Scott" initials="K." surname="Scott"/>
            <author fullname="S. Burleigh" initials="S." surname="Burleigh"/>
            <date month="November" year="2007"/>
            <abstract>
              <t>This document describes the end-to-end protocol, block formats, and abstract service description for the exchange of messages (bundles) in Delay Tolerant Networking (DTN).</t>
              <t>This document was produced within the IRTF's Delay Tolerant Networking Research Group (DTNRG) and represents the consensus of all of the active contributors to this group. See http://www.dtnrg.org for more information. This memo defines an Experimental Protocol for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5050"/>
          <seriesInfo name="DOI" value="10.17487/RFC5050"/>
        </reference>
        <reference anchor="RFC4632">
          <front>
            <title>Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan</title>
            <author fullname="V. Fuller" initials="V." surname="Fuller"/>
            <author fullname="T. Li" initials="T." surname="Li"/>
            <date month="August" year="2006"/>
            <abstract>
              <t>This memo discusses the strategy for address assignment of the existing 32-bit IPv4 address space with a view toward conserving the address space and limiting the growth rate of global routing state. This document obsoletes the original Classless Inter-domain Routing (CIDR) spec in RFC 1519, with changes made both to clarify the concepts it introduced and, after more than twelve years, to update the Internet community on the results of deploying the technology described. 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="122"/>
          <seriesInfo name="RFC" value="4632"/>
          <seriesInfo name="DOI" value="10.17487/RFC4632"/>
        </reference>
        <reference anchor="RFC1918">
          <front>
            <title>Address Allocation for Private Internets</title>
            <author fullname="Y. Rekhter" initials="Y." surname="Rekhter"/>
            <author fullname="B. Moskowitz" initials="B." surname="Moskowitz"/>
            <author fullname="D. Karrenberg" initials="D." surname="Karrenberg"/>
            <author fullname="G. J. de Groot" initials="G. J." surname="de Groot"/>
            <author fullname="E. Lear" initials="E." surname="Lear"/>
            <date month="February" year="1996"/>
            <abstract>
              <t>This document describes address allocation for private internets. 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="5"/>
          <seriesInfo name="RFC" value="1918"/>
          <seriesInfo name="DOI" value="10.17487/RFC1918"/>
        </reference>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC9172">
          <front>
            <title>Bundle Protocol Security (BPSec)</title>
            <author fullname="E. Birrane, III" initials="E." surname="Birrane, III"/>
            <author fullname="K. McKeever" initials="K." surname="McKeever"/>
            <date month="January" year="2022"/>
            <abstract>
              <t>This document defines a security protocol providing data integrity and confidentiality services for the Bundle Protocol (BP).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9172"/>
          <seriesInfo name="DOI" value="10.17487/RFC9172"/>
        </reference>
        <reference anchor="RFC9174">
          <front>
            <title>Delay-Tolerant Networking TCP Convergence-Layer Protocol Version 4</title>
            <author fullname="B. Sipos" initials="B." surname="Sipos"/>
            <author fullname="M. Demmer" initials="M." surname="Demmer"/>
            <author fullname="J. Ott" initials="J." surname="Ott"/>
            <author fullname="S. Perreault" initials="S." surname="Perreault"/>
            <date month="January" year="2022"/>
            <abstract>
              <t>This document describes a TCP convergence layer (TCPCL) for Delay-Tolerant Networking (DTN). This version of the TCPCL protocol resolves implementation issues in the earlier TCPCL version 3 as defined in RFC 7242 and provides updates to the Bundle Protocol (BP) contents, encodings, and convergence-layer requirements in BP version 7 (BPv7). Specifically, TCPCLv4 uses BPv7 bundles encoded by the Concise Binary Object Representation (CBOR) as its service data unit being transported and provides a reliable transport of such bundles. This TCPCL version also includes security and extensibility mechanisms.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9174"/>
          <seriesInfo name="DOI" value="10.17487/RFC9174"/>
        </reference>
      </references>
    </references>
    <?line 574?>

<section anchor="text-examples">
      <name>ipn URI Scheme Text Representation Examples</name>
      <t>This section provides some example ipn URIs in their textual representation.</t>
      <section anchor="using-the-default-allocator">
        <name>Using the Default Allocator</name>
        <t>Consider the ipn URI identifying Service Number 2 on Node Number 1 allocated by the <xref target="default-allocator">Default Allocator</xref> (0).</t>
        <t>The recommended seven character representation of this URI would be as follows:</t>
        <artwork><![CDATA[
ipn:1.2
]]></artwork>
        <t>The nine character representation of this URI, with explicit the Allocator Identifier, would be as follows:</t>
        <artwork><![CDATA[
ipn:0.1.2
]]></artwork>
      </section>
      <section anchor="using-a-non-default-allocator">
        <name>Using a non-default Allocator</name>
        <t>Consider the ipn URI identifying Service Number 3 on Node Number 1 allocated by Allocator 977000.</t>
        <t>The 14 character representation of this URI would be as follows:</t>
        <artwork><![CDATA[
ipn:977000.1.3
]]></artwork>
      </section>
      <section anchor="the-null-ipn-uri">
        <name>The Null ipn URI</name>
        <t>The <xref target="null-uri">Null ipn URI</xref> is represented as:</t>
        <artwork><![CDATA[
ipn:0.0
]]></artwork>
      </section>
      <section anchor="a-localnode-ipn-uri">
        <name>A LocalNode ipn URI</name>
        <t>Consider the ipn URI identifying Service Number 7 on the local node.</t>
        <t>The recommended seven character representation of this URI would be as follows:</t>
        <artwork><![CDATA[
ipn:!.7
]]></artwork>
        <t>The numeric 16 character representation of this URI would be as follows:</t>
        <artwork><![CDATA[
ipn:4294967295.7
]]></artwork>
      </section>
    </section>
    <section anchor="cbor-examples">
      <name>ipn URI Scheme CBOR Encoding Examples</name>
      <t>This section provides some example CBOR encodings of ipn EIDs.</t>
      <section anchor="using-the-default-allocator-1">
        <name>Using the Default Allocator</name>
        <t>Consider the ipn EID <tt>ipn:1.1</tt>. This textual representation of an ipn EID identifies Service Number 1 on Node Number 1 allocated by the <xref target="default-allocator">Default Allocator</xref> (0).</t>
        <t>The recommended five octet encoding of this EID using the two-element scheme-specific encoding would be as follows:</t>
        <artwork><![CDATA[
82       # 2-Element Endpoint Encoding
   02    # uri-code: 2 (IPN URI scheme)
   82    # 2 Element ipn EID scheme-specific encoding
      01 # Node Number
      01 # Service Number
]]></artwork>
        <t>The six octet encoding of this EID using the three-element scheme-specific encoding would be as follows:</t>
        <artwork><![CDATA[
82       # 2-Element Endpoint Encoding
   02    # uri-code: 2 (IPN URI scheme)
   83    # 3 Element ipn EID scheme-specific encoding
      00 # Default Allocator
      01 # Node Number
      01 # Service Number
]]></artwork>
      </section>
      <section anchor="using-a-non-default-allocator-1">
        <name>Using a non-default Allocator</name>
        <t>Consider the ipn EID <tt>ipn:977000.1.1</tt>.  This textual representation of an ipn EID identifies Service Number 1 on Node Number 1 allocated by Allocator 977000.</t>
        <t>The recommended 10 octet encoding of this EID using the three-element scheme-specific encoding would be as follows:</t>
        <artwork><![CDATA[
82                # 2-Element Endpoint Encoding
   02             # uri-code: 2 (IPN URI scheme)
   83             # 3 Element ipn EID scheme-specific encoding
      1A 000EE868 # Allocator Identifier
      01          # Node Number
      01          # Service Number
]]></artwork>
        <t>The 13 octet encoding of this EID using the two-element scheme-specific encoding would be as follows:</t>
        <artwork><![CDATA[
82                        # 2-Element Endpoint Encoding
   02                     # uri-code: 2 (IPN URI scheme)
   82                     # 2 Element ipn EID scheme-specific encoding
      1B 000EE86800000001 # Fully-qualified Node Number
      01                  # Service Number
]]></artwork>
      </section>
      <section anchor="the-null-endpoint-1">
        <name>The 'null' Endpoint</name>
        <t>The 'null' EID of <tt>ipn:0.0</tt> can be encoded in the following ways:</t>
        <t>The recommended five octet encoding of the 'null' ipn EID using the two-element scheme-specific encoding would be as follows:</t>
        <artwork><![CDATA[
82       # 2-Element Endpoint Encoding
   02    # uri-code: 2 (IPN URI scheme)
   82    # 2 Element ipn EID scheme-specific encoding
      00 # Node Number
      00 # Service Number
]]></artwork>
        <t>The six octet encoding of the 'null' ipn EID using the three-element scheme-specific encoding would be as follows:</t>
        <artwork><![CDATA[
82       # 2-Element Endpoint Encoding
   02    # uri-code: 2 (IPN URI scheme)
   83    # 3 Element ipn EID scheme-specific encoding
      00 # Default Allocator
      00 # Node Number
      00 # Service Number
]]></artwork>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The following DTNWG participants contributed technical material, use cases, and critical technical review for this URI scheme update: Scott Burleigh of the IPNGROUP, Keith Scott, Brian Sipos of the Johns Hopkins University Applied Physics Laboratory, Jorge Amodio of LJCV Electronics, and Ran Atkinson.</t>
      <t>Additionally, the authors wish to thank members of the CCSDS SIS-DTN working group at large who provided useful review and commentary on this document and its implications for the future of networked space exploration.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
lODhO8AAAA==

-->

</rfc>
