<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?xml-stylesheet type='text/xsl' href='http://xml2rfc.ietf.org/authoring/rfc2629.xslt' ?>

<?rfc comments="yes" ?>
<?rfc inline="yes" ?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>

<rfc
  category="bcp"
  seriesNo="26"
  obsoletes="5226"
  submissionType="IETF"
  ipr="trust200902"
  docName="draft-leiba-cotton-iana-5226bis-09">

  <front>
    <title abbrev="IANA Considerations Section in RFCs">
    Guidelines for Writing an IANA Considerations Section in RFCs
    </title>

    <author initials="M." surname="Cotton" fullname="Michelle Cotton">
      <organization abbrev="ICANN">
        Internet Corporation for Assigned Names and Numbers
      </organization>
      <address>
        <postal>
          <street>12025 Waterfront Drive, Suite 300</street>
          <city>Los Angeles</city>
          <region>CA</region>
          <code>90094-2536</code>
          <country>US</country>
        </postal>
        <phone>+1 310 823 9358</phone>
        <email>michelle.cotton@icann.org</email>
        <uri>http://www.icann.org/</uri>
      </address>
    </author>

    <author initials='B.' surname="Leiba" fullname='Barry Leiba'>
      <organization>Huawei Technologies</organization>
      <address>
        <phone>+1 646 827 0648</phone>
        <email>barryleiba@computer.org</email>
        <uri>http://internetmessagingtechnology.org/</uri>
      </address>
    </author>

    <author initials='T.' surname="Narten" fullname='Thomas Narten'>
      <organization>IBM Corporation</organization>
      <address>
        <postal>
          <street>3039 Cornwallis Ave., PO Box 12195 - BRQA/502</street>
          <city>Research Triangle Park</city>
          <region>NC</region>
          <code>27709-2195</code>
          <country>US</country>
        </postal>
        <phone>+1 919 254 7798</phone>
        <email>narten@us.ibm.com</email>
      </address>
    </author>

    <date/>

    <area>General</area>
    <workgroup></workgroup>

    <abstract>

      <t>
      Many protocols make use of points of extensibility that use constants
      to identify various protocol parameters. To ensure that the values used
      in these fields do not have conflicting uses, and to promote
      interoperability, their allocation is often coordinated by a central
      authority. For IETF protocols, that role is filled by the Internet
      Assigned Numbers Authority (IANA).
      </t>

      <t>
      To make assignments in a given namespace prudently, IANA needs guidance
      describing the conditions under which new values should be assigned, as well
      as when and how modifications to existing values can be made. This document
      defines a framework for the documentation of these guidelines by
      specification authors, in order to assure that the guidance given to
      IANA is clear and addresses the various issues that are likely in the
      operation of a registry.
      </t>

      <t>This is the third edition, and obsoletes RFC 5226.</t>

    </abstract>
  </front>

  <middle>
    <section anchor="intro" title="Introduction">
      <t>
        Many protocols make use of points of extensibility that use
        constants to identify various protocol parameters. To ensure that the
        values used in these fields do not have conflicting uses, and to promote
        interoperability, their allocation is often coordinated by a central
        authority. For IETF protocols, that role is filled by the Internet
        Assigned Numbers Authority (IANA) <xref target="RFC2860"/>.
        IANA services are currently provided by the Internet Corporation
        for Assigned Names and Numbers (ICANN).
      </t>
      <t>
        The Protocol field in the IP header <xref target="RFC0791"/> and
        MIME media types <xref target="RFC4288"/> are two examples of such
        coordinations.
      </t>
      <t>
        In this document, we call the range of possible values for such a
        field a "namespace". The binding or association of a specific value with
        a particular purpose within a namespace is called an assignment (or,
        variously: an assigned number, assigned value, code point, protocol
        constant, or protocol parameter). The act of assignment is called a
        registration, and it takes place in the context of a registry.
        The terms "assignment" and "registration" are used interchangably
        throughout this document.
      </t>
      <t>
        To make assignments in a given namespace prudently, IANA needs guidance
        describing the conditions under which new values should be assigned, as
        well as when and how modifications to existing values can be made. This
        document defines a framework for the documentation of these guidelines
        by specification authors, in order to assure that the guidance given to
        IANA is clear and addresses the various issues that are likely in the
        operation of a registry.
      </t>
      <t>
        Typically, this information is recorded in a dedicated section of
        the specification with the title "IANA Considerations".
      </t>

      <section anchor="keep-it-simple" title="Keep IANA Considerations for IANA">
        <t>
          The purpose of having a dedicated IANA Considerations section is to provide
          a single place to collect clear and concise information and instructions for IANA.
          Technical documentation should reside in other parts of the document, and
          should be included by reference only.  Using the IANA Considerations section
          as primary technical documentation both hides it from the target audience of
          the document and interferes with IANA's review of the actions they need to take.
        </t>
        <t>
          If, for example, the registration of an item in a registry includes a
          short description of the item being registered, that should be placed in the
          IANA Considerations directly.
          But if it's necessary to include a longer technical explanation of the purpose
          and use of the item, the IANA Considerations should
          refer to a technical section of the document where that information resides.
          Similarly, if the document is pointing out the use of an existing assignment
          in a registry, but makes no modification to the registration, that should be
          in a technical section of the document, reserving the IANA Considerations
          section for instructions to IANA.
        </t>
        <t>
          An ideal IANA Considerations section clearly enumerates and specifies each
          requested IANA action; includes all information IANA needs, such as the
          full names of all applicable registries; and includes clear references
          to elsewhere in the document for other information.
        </t>
      </section>

      <section anchor="more-info" title="For More Information">
        <t>
          IANA maintains a web page that includes current important information from IANA.
          Document authors should check that page for additional information, beyond what
          is provided here.
              <list style="empty"><t>
              &lt;http://iana.org/help/protocol-registration&gt;.
              </t></list>
        </t>
      </section>

      <section title="Terminology Used In This Document">
        <t>
          The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
          NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
          this document are to be interpreted as described in RFC 2119 <xref target="RFC2119"/>.
          For this document, "the specification" as used by
          RFC 2119 refers to the processing of protocol documents within the
          IETF standards process.
        </t>
      </section>
    </section>

    <section anchor="creating" title="Creating and Revising Registries">
      <t>
        Defining a registry involves describing the namespace(s) to be
        created, listing an initial set of assignments (if appropriate), and
        documenting guidelines on how future assignments are to be made.
      </t>
      <t>
        Before defining a registry, however, consider delegating the
        namespace in some manner. This route should be pursued when appropriate,
        as it lessens the burden on IANA for dealing with assignments.
      </t>
      <t>
        In particular, not all namespaces require a registry; in some cases,
        assignments can be made independently and with no further (central)
        coordination. In the Domain Name System, for example, IANA only deals
        with assignments at the higher levels, while subdomains are administered
        by the organization to which the space has been delegated. When a
        namespace is delegated in this manner, the scope of IANA is limited to
        the parts of the namespace where IANA has authority.
      </t>

      <section anchor="registry-structure" title="Hierarchical Registry Structure">
        <t>
          It's important to start with a word on the IANA registry structure.
          All registries are anchored from the IANA "Protocol Registries" page:
              <list style="empty"><t>
              &lt;http://www.iana.org/protocols&gt;.
              </t></list>
        </t>
        <t><figure>
          <preamble>
            That page lists registries in protocol category groups, like this:
          </preamble>
          <artwork>
  ---------------------------------------------------------------
  Author Domain Signing Practices (ADSP) Parameters

    ADSP Outbound Signing Practices     RFC 5617
                                        IETF Review

    ADSP Specification Tags             RFC 5617
                                        IETF Review

  Automatic Responses to Electronic Mail Parameters

    Auto-Submitted Header Field         RFC 5436
    Keywords                            Specification Required
                                    
    Auto-Submitted header field         RFC 3834
    optional parameters                 IETF Consensus
                                         
  Autonomous System (AS) Numbers

    16-bit Autonomous System Numbers    RFC 1930, RFC 5398, RFC 6996
                                        RIR request to the IANA
                                        or IETF Review

    32-bit Autonomous System Numbers    RFC 1930, RFC 5398, RFC 6793,
                                        RFC 6996
                                        RIR request to the IANA
                                        or IETF Review
  ---------------------------------------------------------------
          </artwork>
        </figure></t>

        <t>
          The grouping allows related registries to be placed together,
          making it easier for users of the registries to find the necessary
          information.  In the example section above, there are two registries
          related to the ADSP protocol, and they are both placed in the
          "ADSP Parameters" group.
        </t>
        <t>
          Within the "ADSP Parameters" group are two registries:
          "ADSP Outbound Signing Practices" and "ADSP Specification Tags".
          Clicking on the title of one of these registries on the IANA
          Protocol Registries page will take the reader to the details page
          for that registry.  Often, multiple registries are shown
          on the same details page.
        </t>
        <t>
          Unfortunately, we have been inconsistent in how we refer to these entities.
          The group names, as they are referred to here, have been variously called
          "protocol category groups",
          "groups", "top-level registries", or just "registries".  The registries
          under them have been called "registries" or "sub-registries".
          And when new registries are created, the documents that define them often
          don't specify the grouping at all, but only name the new registry.
          This results in questions from IANA and delays in processing, or, worse,
          in related registries that should have been grouped together, but that
          are instead scattered about and hard to find and correlate.
        </t>
        <t>
          Regardless of the terminology used, document authors should pay
          attention to the registry groupings, should request that related registries
          be grouped together, and, when creating a new registry, should check
          whether that registry might best be included in an existing group.
          That grouping information should be clearly communicated to IANA in the
          registry creation request.
        </t>
      </section>

      <section anchor="what-to-put" title="Documentation Requirements for Registries">
        <t>
          Documents that create a new namespace (or modify the definition of
          an existing space) and that expect IANA to play a role in maintaining
          that space (serving as a repository for registered values) MUST
          provide clear instructions on details of the namespace, either in the
          IANA Considerations section, or referenced from it.
        </t>
        <t>
          In particular, such instructions MUST include:

          <list style="hanging" hangIndent="3">

            <t hangText="The name of the registry (or sub-registry)">
            <vspace/>
            This name will appear on the IANA web page and
            will be referred to in future documents that need to allocate a
            value from the new space. The full name (and abbreviation, if
            appropriate) should be provided. It is highly desirable that the
            chosen name not be easily confused with the name of another
            registry.
            <vspace blankLines="1"/>
            When creating a sub-registry, the registry that it is a part of
            MUST be identified using its full name, exactly as it appears
            in the IANA registry list.
            <vspace blankLines="1"/>
            Providing a URL to precisely identify the registry helps IANA
            understand the request. Such URLs can be removed from the RFC
            prior to final publication.  If they are to be left in, it is important
            that they be permanent links.
            IANA intends to include the permalink for each registry in the registry header.
            Until that is done, IANA can answer questions about the correct URLs to use.
            <vspace blankLines="1"/>
            For example, a document could contain something like this:
              <list style="empty"><t>
              This registration should be made in the Foobar
              Operational Parameters registry, located at
              &lt;http://www.iana.org/assignments/foobar-registry&gt;.
              </t></list>
            <vspace blankLines="1"/>
            It might be tempting to use the URL that appears in your web browser's address
            bar, which might look something like this for the example above:
              <list style="empty"><t>
              http://www.iana.org/assignments/foobar-registry/foobar-registry.xml
              </t></list>
            ...but that is not the permanent link to the registry.
            </t>

            <t hangText="Required information for registrations">
            <vspace blankLines="1"/>
            This information may include the need to document
            relevant Security Considerations, if any.
            </t>

            <t hangText="Applicable review process">
            <vspace blankLines="1"/>
            The review process that will apply to all future
            requests for registration. See <xref
            target="selecting-policy"/>.
            </t>

            <t hangText="Size, format and syntax of registry entries">
            <vspace blankLines="1"/>
            What fields to record in the registry, any technical requirements on registry entries
            (valid ranges for integers, length limitations on strings, and such),
            and the exact format in which registry values should be displayed.
            For numeric assignments, one should specify whether
            values are to be recorded in decimal, in hexadecimal, or in some other
            format.
            For strings, the encoding format should be specified (ASCII, UTF8, etc.).
            </t>

            <t hangText="Initial assignments and reservations">
            <vspace blankLines="1"/>
            Any initial assignments or registrations to be
            included. In addition, any ranges that are to be reserved for
            "Private Use", "Reserved", "Unassigned", etc. (see <xref target="regstatus"/>)
            should be indicated.
            </t>

          </list>
        </t>

        <t><figure>
          <preamble>For example, a document might specify a new registry by
          including:</preamble>
          <artwork>
    ---------------------------------------------------------------

    X. IANA Considerations

    This document defines a new DHCP option, entitled "FooBar" (see
    Section y), assigned a value of TBD1 from the DHCP Option space
    [to be removed upon publication:
    http://www.iana.org/assignments/bootp-dhcp-parameters]
    [RFC2132] [RFC2939]:
                                   Data
          Tag     Name            Length      Meaning
          ----    ----            ------      -------
          TBD1    FooBar          N           FooBar server

    The FooBar option also defines an 8-bit FooType field, for which
    IANA is to create and maintain a new sub-registry entitled
    "FooType values" under the FooBar option.  Initial values for the
    DHCP FooBar FooType registry are given below; future assignments
    are to be made through Expert Review [BCP26].
    Assignments consist of a DHCP FooBar FooType name and its
    associated value.

          Value    DHCP FooBar FooType Name        Definition
          ----     ------------------------        ----------
          0        Reserved
          1        Frobnitz                        See Section y.1
          2        NitzFrob                        See Section y.2
          3-254    Unassigned
          255      Reserved
    ---------------------------------------------------------------
          </artwork>
        </figure></t>

        <t>
          For examples of documents that establish registries, consult
          <xref target="RFC3575"/>,
          <xref target="RFC3968"/>, and
          <xref target="RFC4520"/>.
        </t>
      </section>

      <section anchor="selecting-policy" title="Defining an Appropriate Registry Policy">
        <t>
          There are several issues to consider when defining the policy for
          the new assignments in a registry.
        </t>
        <t>
          If the registry's namespace is limited, assignments will need to
          be made carefully to prevent exhaustion.
        </t>
        <t>
          Even when the space is essentially unlimited, however, it is
          usually desirable to have at least a minimal review prior to
          assignment in order to:
          <list style="symbols">
            <t>
            prevent the hoarding of or unnecessary wasting of values. For
            example, if the space consists of text strings, it may be
            desirable to prevent entities from obtaining large sets of strings
            that correspond to desirable names (existing company names, for
            example).
            </t>
            <t>
            provide a sanity check that the request actually makes sense
            and is necessary. Experience has shown that some level of minimal
            review from a subject matter expert is useful to prevent
            assignments in cases where the request is malformed or not
            actually needed (for example, an existing assignment for an
            essentially equivalent service already exists).
            </t>
          </list>
        </t>
        <t>
          Perhaps most importantly, unreviewed extensions can impact
          interoperability and security. See <xref target='RFC6709' />.
        </t>
        <t>
          When the namespace is essentially unlimited and there are no
          potential interoperability or security issues, assigned numbers can
          usually be given out to anyone without any subjective review. In such
          cases, IANA can make assignments directly, provided that IANA is given
          detailed instructions on what types of requests it should grant, and
          it is able to do so without exercising subjective judgement.
        </t>
        <t>
          When this is not the case, some level of review is required.
          However, it's important to balance adequate review and ease of
          registration. In many cases, those making registrations will not be
          IETF participants; requests often come from other standards
          organizations, from organizations not directly involved in standards,
          from ad-hoc community work (from an open-source project, for example),
          and so on. Registration must not be unnecessarily difficult,
          unnecessarily costly (in terms of time and other resources), nor
          unnecessarily subject to denial.
        </t>
        <t>
          While it is sometimes necessary to restrict what gets registered
          (e.g., for limited resources such as bits in a byte, or for items for
          which unsupported values can be damaging to protocol operation), in
          many cases having what's in use represented in the registry is more
          important. Overly strict review criteria and excessive cost (in time
          and effort) discourage people from even attempting to make a
          registration. If a registry fails to reflect the protocol elements
          actually in use, it can adversely affect deployment of protocols on
          the Internet, and the registry itself is devalued.
        </t>
        <t>
          In particular, working groups will sometimes write in policies such
          as Standards Action when they develop documents.  Later, someone
          will come to the working group (or to the relevant community, if the
          working group has since closed) with a simple request to register a
          new item, and will be met with a feeling that it's not worth doing a
          Standards-Track RFC for something so trivial.  In such cases, it was
          a mistake for the working group to have set the bar that high.
        </t>
        <t>
          Indeed, publishing any RFC is costly, and a Standards Track RFC is
          especially so, requiring a great deal of community time for review
          and discussion, IETF-wide last call, involvement of the entire IESG
          as well as concentrated time and review from the sponsoring AD, review
          and action by IANA, and RFC-Editor processing.
        </t>
        <t>
          Therefore, working groups and other document developers should use
          care in selecting appropriate registration policies when their
          documents create registries. They should select the least strict
          policy that suits a registry's needs, and look for specific
          justification for policies that require significant community
          involvement (those stricter than Specification Required, in terms
          of the well-known policies).
        </t>

        <section title="Using the Well-Known Registration Policies">
          <t>
            This document defines a number of registration policies in <xref
            target="well-known"/>. Because they benefit from both community
            experience and wide understanding, their use is encouraged when
            appropriate.
          </t>
          <t>
            It is also acceptable to cite one of the well-known policies and
            include additional guidelines for what kind of considerations should
            be taken into account by the review process.
          </t>
          <t>
            For example, RADIUS <xref target="RFC3575"/> specifies the use of
            a Designated Expert, but includes specific additional criteria the
            Designated Expert should follow.
          </t>
          <t>
            The well-known policies from "First Come First Served" to
            "Standards Action" specify a range of policies in increasing order
            of strictness (using the numbering from the full list in
            <xref target="well-known"/>):
          </t>
          <t>
            <list style="hanging" hangIndent="5">
              <t hangText="4. ">First Come First Served<vspace/>
                No review, minimal documentation.</t>
              <t hangText="5. ">Expert Review<vspace/>
                Expert review with sufficient documentation for review.</t>
              <t hangText="6. ">Specification Required<vspace/>
                Expert review with significant, stable public documentation.</t>
              <t hangText="7. ">RFC Required<vspace/>
                Any RFC publication, IETF or a non-IETF Stream.</t>
              <t hangText="8. ">IETF Review<vspace/>
                RFC publication, IETF Stream only, but need not be Standards Track.</t>
              <t hangText="9. ">Standards Action<vspace/>
                RFC publication, IETF Stream, Standards Track only.</t>
            </list>
          </t>
          <t>
            Examples of situations that might merit RFC Required, IETF
            Review, or Standards Action include the following:
            <list style="symbols">
              <t>
                When a resource is limited, such as bits in a byte (or in two
                bytes, or four), or numbers in a limited range. In these cases,
                allowing registrations that haven't been carefully reviewed and
                agreed by community consensus could too quickly deplete the
                allowable values.
              </t>
              <t>
                When thorough community review is necessary to avoid extending
                or modifying the protocol in ways that could be damaging. One
                example is in defining new command codes, as opposed to options
                that use existing command codes: the former might require a strict
                policy, where a more relaxed policy could be adequate for the
                latter. Another example is in defining protocol elements that
                change the semantics of existing operations.
              </t>
            </list>
          </t>
          <t>
            The description in <xref target="policy-iesg"/> of "IESG
            Approval" suggests that the IESG "can (and should) reject a request
            if another path for registration is available that is more
            appropriate and there is no compelling reason not to use that path."
            The IESG should give similar consideration to any registration
            policy more stringent than Specification Required, asking for
            justification and ensuring that more relaxed policies have been
            considered, and the strict policy is the right one.
          </t>
          <t>
            Accordingly, document developers need to anticipate this and
            document their considerations for selecting the specified policy
            (ideally, in the document itself; failing that, in the shepherd
            writeup). Likewise, the document shepherd should ensure that the
            selected policies have been justified before sending the document to
            the IESG.
          </t>
          <t>
            When specifications are revised, registration policies should be
            reviewed in light of experience since the policies were set.
          </t>
          <t>
            Note that the well-known policies are not exclusive; there are
            situations where a different policy might be more appropriate.
          </t>
        </section>

        <section anchor="multiple-policies" title="Using Multiple Policies in Combination">
          <t>
            In some situations, it is necessary to define multiple registration policies.
            For example, registrations through the normal IETF process might
            use one policy, while registrations from outside the process would have a
            different policy applied.
          </t>
          <t>
            Thus, a particular registry might want to use a policy such as
            "RFC Required" or "IETF Review" sometimes, with a designated expert
            checking a "Specification Required" policy at other times.
          </t>
          <t>
            The alternative to using a combination requires either that all
            requests come through RFCs or that requests in RFCs go through
            review by the designated expert, even though they already have
            IETF review and consensus.
          </t>
          <t>
            This can be documented in the IANA Considerations section when
            the registry is created:
            <list style="empty">
              <t>
                IANA is asked to create the registry "Fruit Access Flags" as a
                sub-registry of "Fruit Parameters". New registrations will be
                permitted through either the IETF Review policy or the
                Specification Required policy [BCP26].  The latter should be
                used for registrations requested by SDOs outside the IETF.
              </t>
            </list>
          </t>
          <t>
            Such combinations will commonly use one of {Standards Action,
            IETF Review, RFC Required} in combination with one of
            {Specification Required, Expert Review}.
            Guidance should be provided about when each policy is appropriate,
            as in the example above.
          </t>
        </section>

        <section anchor="change-control" title="Specifying Change Control for a Registry">

          <t>
            Registry definitions and registrations within registries often need to be
            changed after they are created.  The process of making such changes is complicated
            when it is unclear who is authorized to make the changes.  For registries created
            by RFCs in the IETF stream, change control for the registry lies by default with
            the IETF, via the IESG.  The same is true for value registrations made in IETF-stream
            RFCs.
          </t>
          <t>
            Because registries can be created and registrations can be made outside the
            IETF stream,
            it can sometimes be desired to have change control outside the IETF and IESG,
            and clear specification of change control policies is always helpful.
          </t>
          <t>
            It is advised, therefore, that all registries that are created clearly specify a
            change control policy and a change controller.  It is also advised that registries
            that allow registrations from outside the IETF stream include, for each value,
            the designation of a change controller for that value.  If the definition or
            reference for a registered value ever needs to change, or if a registered value
            needs to be deprecated, it is critical that IANA know who is authorized to make
            the change.  See also <xref target="assignee"/>.
          </t>
        </section>
      </section>

      <section anchor="updating-existing" title="Revising Existing Registries">
        <t>
          Updating the registration process or making changes to the format
          of an already existing (previously created) registry (whether created
          explicitly or implicitly) follows a process similar to that used when
          creating a new registry. That is, a document is produced that makes
          reference to the existing namespace and then provides detailed guidance
          for handling assignments in the registry, or detailed instructions
          about the changes required.
        </t>
        <t>
          If a change requires a new column in the registry, the instructions
          need to be clear about how to populate that column for the existing
          entries.  Other changes may require similar clarity.  Remember to check
          this, and give clear instructions to IANA.
        </t>
        <t>
          Such documents are normally processed with the same document status as
          the document that created the registry, or as Best Current Practices
          (BCPs) <xref target="RFC2026"/>.
        </t>
        <t>
          Example documents that updated the guidelines for assignments in                                                                                                                                        
          pre-existing registries include:
          <xref target="RFC6195"/>,
          <xref target="RFC3228"/>, and
          <xref target="RFC3575"/>.
        </t>
      </section>
    </section>


    <section anchor="existing" title="Registering New Values in an Existing Registry">
      <section anchor="put-in-existing" title="Documentation Requirements for Registrations">

        <t>
          Often, documents request an assignment in an existing
          namespace (one created by a previously published document).
        </t>

        <t>
          Such documents should clearly identify the namespace into which each
          value is to be registered. If the registration goes into a
          sub-registry, the author should clearly explain that.
          Use the exact namespace name as listed on
          the IANA web page, and cite the RFC where the namespace is defined.
        </t>

        <t>
          There is no need to mention what the assignment policy is
          when making new assignments in existing registries,
          as that should be clear from the references.
        </t>

        <t>
          When referring to an existing registry, providing a URL to
          precisely identify the registry is helpful. See <xref target="what-to-put"/>
          for details on specifying the correct URL.
        </t>

        <t>For example, a document could contain something like this:
          <list style="empty"><t>
            This registration should be made in the Foobar Operational Parameters
            registry, located at &lt;http://www.iana.org/assignments/foobar-registry&gt;.
          </t></list>
        </t>

        <t>
          Normally, numeric values to be used are chosen by IANA when the document
          is approved, and drafts should not specify final values.
          Instead, placeholders such as "TBD1" and "TBD2" should
          be used consistently throughout the document, giving each item to be registered
          a different placeholder.  The IANA Considerations should ask the RFC Editor to
          replace the placeholder names with the IANA-assigned values.
          When drafts need to specify numeric values for testing or early implementations,
          they will either request early allocation (see <xref target="early-allocations"/>)
          or use values that have already been set aside for testing or experimentation.
          It is important that drafts not choose their own values, lest IANA
          assign one of those values to another document in the meantime.
          A draft can request a specific value in the IANA Considerations section, and IANA
          will accommodate such requests when that's possible, but the proposed number
          might have been assigned to some other use by the time the draft is approved.
        </t>

        <t>
          Normally, text-string values to be used are specified in the document,
          as collisions are less likely with text strings.
          IANA will consult with the authors if there is, in fact, a collision,
          and a different value has to be used.
          When drafts need to specify string values for testing or early implementations,
          they sometimes use the expected final value.  But it is often useful to
          use a draft value instead, possibly including the draft version number.
          This allows the early implementations to be distinguished from those
          implementing the final version.  A document that intends to use "foobar" in
          the final version might use "foobar-testing-draft-05" for the -05 version
          of the draft, for example.
        </t>

        <t>
          For some registries, IANA has a long-standing policy prohibiting
          assignment of names or codes on a vanity or organization-name basis.
          For example, codes might always be assigned sequentially unless there is a
          strong reason for making an exception. Nothing in this document is
          intended to change those policies or prevent their future application.
        </t>

        <t>
          The IANA Considerations section should summarize all of the IANA
          actions, with pointers to the relevant sections elsewhere in the
          document as appropriate. When multiple values are requested, it is
          generally helpful to include a summary table. It is also helpful for
          this table to be in the same format as it appears or will appear on
          the IANA web site. For example:
          <vspace blankLines="1"/>
          <figure><artwork>
  Value     Description          Reference
  --------  -------------------  ---------
  TBD1      Foobar               [[this RFC]]
          </artwork></figure>
          <vspace blankLines="1"/>
          Note: In cases where authors feel that including the full table is
          too verbose or repetitive, authors should still include the table in the draft,
          but may include a note asking that the table be removed prior to
          publication of the final RFC.
        </t>
        
        <t>
          As an example, the following text could be used to request
          assignment of a DHCPv6 option number:
          <list>
            <t>
              IANA has assigned an option code value of TBD1 to the DNS
              Recursive Name Server option and an option code value of TBD2 to
              the Domain Search List option from the DHCP option code space
              defined in Section 24.3 of RFC 3315.
            </t>
          </list>
        </t>
      </section>

      <section anchor="updating-registrations" title="Updating Existing Registrations">
        <t>
          Even after a number has been assigned, some types of registrations contain
          additional information that may need to be updated over time.
        </t>
        <t>
          For example, MIME media types, character sets, and language tags typically
          include more information than just the registered value itself, and may
          need updates to items
          such as point-of-contact information, security issues, pointers
          to updates, and literature references.
        </t>
        <t>
          In such cases, the document defining the namespace must clearly state who
          is responsible for maintaining and updating a registration. Depending on
          the registry, it may be appropriate to specify one or more of:
          <list style="symbols">
            <t>
              Letting registrants and/or nominated change controllers update their
              own registrations, subject to the same constraints and review as with
              new registrations.
            </t>
            <t>
              Allowing attachment of comments to the registration. This can be
              useful in cases where others have significant objections to a
              registration, but the author does not agree to change the
              registration.
            </t>
            <t>
              Designating the IESG, a designated expert, or another entity as having
              the right to change the registrant associated with a registration and
              any requirements or conditions on doing so. This is mainly to get
              around the problem when a registrant cannot be reached in order to
              make necessary updates.
            </t>
          </list>
        </t>
      </section>

      <section anchor="overriding-procedures" title="Overriding Registration Procedures">
        <t>
          Experience has shown that the documented IANA considerations for individual
          protocols do not always adequately cover the reality of registry operation,
          or are not sufficiently clear. In addition, documented IANA considerations
          are sometimes found to be too stringent to allow even working group
          documents (for which there is strong consensus) to perform a registration
          in advance of actual RFC publication.
        </t>
        <t>
          In order to allow assignments in such cases, the IESG is granted authority
          to override registration procedures and approve assignments on a
          case-by-case basis.
        </t>
        <t>
          The intention here is not to overrule properly documented procedures, or to
          obviate the need for protocols to properly document their IANA
          considerations. Rather, it is to permit assignments in specific cases where
          it is obvious that the assignment should just be made, but updating the
          IANA process beforehand is too onerous.
        </t>
        <t>
          When the IESG is required to take action as described above,
          it is a strong indicator that the applicable registration procedures
          should be updated, possibly in parallel with the work that instigated it.
        </t>
        <t>
          IANA always has the discretion to ask the IESG for advice or intervention
          when they feel it is needed, such as
          in cases where policies or procedures are unclear to them,
          where they encounter issues or questions they are unable to resolve,
          or where registration requests or patterns of requests appear to be
          unusual or abusive.
        </t>
      </section>

      <section anchor="early-allocations" title="Early Allocations">
        <t>
          IANA normally takes its actions when a document is approved for publication.
          There are times, though, when early allocation of a value is important for the
          development of a technology: for example, when early implementations are
          created while the document is still under development.
        </t>
        <t>
          IANA has a mechanism for handling such early allocations in some cases.
          See <xref target="RFC7120" /> for details.
        </t>
        <t>
        </t>
      </section>
    </section>

    <section anchor="well-known" title="Well-Known Registration Policies">
      <t>
 The following are some defined policies, most of which are in use
 today.  These cover a range of typical policies that have been used
 to describe the procedure for assigning new values in a namespace.
 It is not strictly required that documents use these terms; the
 actual requirement is that the instructions to IANA be clear and
 unambiguous.  However, use of these terms is strongly RECOMMENDED,
 because their meanings are widely understood.
 The terms are fully explained in the following subsections.
      </t>
      <t>
<?rfc subcompact="yes"?>
   <list style="empty"><t>
        <list style="numbers">
          <t>Private Use</t>
          <t>Experimental Use</t>
          <t>Hierarchical Allocation</t>
          <t>First Come First Served</t>
          <t>Expert Review</t>
          <t>Specification Required</t>
          <t>RFC Required</t>
          <t>IETF Review</t>
          <t>Standards Action</t>
          <t>IESG Approval</t>
        </list>
   </t></list>
<?rfc subcompact="no"?>
      </t>
      <t>
 It should be noted that it often makes sense to partition a namespace
 into multiple categories, with assignments within each category
 handled differently.
 Many protocols now partition
 namespaces into two or more parts, with one range reserved
 for Private or Experimental Use while other ranges are reserved for
 globally unique assignments assigned following some review process.
 Dividing a namespace into ranges makes it possible to have different
 policies in place for different ranges and different use cases.
      </t>
      <t>
        Similarly, it will often be useful to specify multiple policies in parallel,
        with each policy being used under different circumstances.
        For more discussion of that topic, see <xref target="multiple-policies"/>.
      </t>
      <t>
<?rfc subcompact="yes"?>
 Examples of RFCs that specify multiple policies in parallel:
 <list>
   <t>LDAP <xref target="RFC4520"/></t>
   <t>TLS ClientCertificateType Identifiers <xref target="RFC5246"/>
      (as detailed in the subsections below)</t>
   <t>Pseudowire Edge to Edge Emulation (PWE3) <xref target="RFC4446"/></t>
 </list>
<?rfc subcompact="no"?>
      </t>

      <section anchor="policy-private" title="Private Use">
        <t>
          For private or local use only, with the type and
          purpose defined by the local site.  No attempt is made to
          prevent multiple sites from using the same value in
          different (and incompatible) ways.  There is no need for
          IANA to review such assignments (since IANA does not record
          them) and assignments are not generally useful for broad
          interoperability.  It is the responsibility of the sites
          making use of the Private Use range to ensure that no
          conflicts occur (within the intended scope of use).
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>Site-specific options in DHCP <xref target="RFC2939"/></t>
            <t>Fibre Channel Port Type Registry <xref target="RFC4044"/></t>
            <t>TLS ClientCertificateType Identifiers 224-255 <xref target="RFC5246"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-experimental" title="Experimental Use">
        <t>
          Experimental Use is
          similar to Private Use only, but with the
          purpose being to facilitate experimentation.  See
          <xref target="RFC3692"/> for details.
        </t>
        <t>
<?rfc subcompact="yes"?>
          Example:
          <list>
            <t>Experimental Values in IPv4, IPv6, ICMPv4, ICMPv6,
               UDP, and TCP Headers <xref target="RFC4727"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-hierarchical" title="Hierarchical Allocation">
        <t>
          With Hierarchical Allocation,
          delegated administrators are given control over part of the
          namespace, and can assign values in that part of the
          namespace.  IANA makes allocations in the higher levels of the
          namespace according to one of the other policies.
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>DNS names</t>
            <t>Object Identifiers</t>
            <t>IP addresses</t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-fcfs" title="First Come First Served">
        <t>
          For the First Come First Served policy,
          assignments are made to anyone on a
          first come, first served basis.  There is no substantive
          review of the request, other than to ensure that it is
          well-formed and doesn't duplicate an existing assignment.
          However, requests must include a minimal amount of clerical
          information, such as a point of contact (including an email
          address, and sometimes a postal address)
          and a brief description of how the value will be
          used.  Additional information specific to the type of value
          requested may also need to be provided, as defined by the
          namespace.  For numbers, the exact value is generally
          assigned by IANA; with names, specific text strings can
          usually be requested.
        </t>
        <t>
          When creating a new registry with First Come First Served
          as the registration policy, in addition to the contact person field or
          reference, the registry should contain a field for change controller.
          Having a change controller for each entry for these types of registrations makes
          authorization of future modifications more clear.
          See <xref target="change-control"/>.
          It is important that changes to the registration of a First Come First Served
          code point retain compatibility with the current usage of that code point,
          and so changes need to be made with care.
        </t>
        <t>
          It is also important to understand that First Come First Served really has
          no filtering.  Essentially, any request is accepted.  A working group
          or any other entity that is developing protocol based on a First Come First Served
          code point has to be extremely careful that the protocol retains wire compatibility
          with current use of the code point.  Once that is no longer true, the new work
          needs to change to a different code point (and register that use at the
          appropriate time).
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>SASL mechanism names <xref target="RFC4422"/></t>
            <t>LDAP Protocol Mechanisms and LDAP Syntax <xref target="RFC4520"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-expert" title="Expert Review">
        <t>
          (Also called "Designated Expert" in earlier editions of this document.)
          For the Expert Review policy,
          review and approval by a designated expert
          (see <xref target="experts"/>) is required.
          The required documentation and review
          criteria for use by the designated expert should be provided
          when defining the registry.  For example, see Sections 6 and
          7.2 in <xref target="RFC3748"/>.
        </t>
        <t>
          It is particularly important, when using a designated expert, to give
          clear guidance to the expert, laying out criteria for
          performing an evaluation and reasons for rejecting a request.
          When specifying a policy that involves a designated expert, the
          IANA Considerations SHOULD contain such guidance.
          It is also a good idea to include, when possible, a sense of whether
          many registrations are expected over time, or if the registry is
          expected to be updated infrequently or in exceptional circumstances only.
        </t>
        <t>
          When creating a new registry with Expert Review
          as the registration policy, in addition to the contact person field or
          reference, the registry should contain a field for change controller.
          Having a change controller for each entry for these types of registrations makes
          authorization of future modifications more clear.
          See <xref target="change-control"/>
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>EAP Method Types <xref target="RFC3748"/></t>
            <t>HTTP Digest AKA algorithm versions <xref target="RFC4169"/></t>
            <t>URI schemes <xref target="RFC4395"/></t>
            <t>GEOPRIV Location Types <xref target="RFC4589"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-specification" title="Specification Required">
        <t>
          For the Specification Required policy, review and approval
          by a designated expert (see <xref target="experts"/>) is required,
          and the values and their meanings must be
          documented in a permanent and readily available public
          specification, in sufficient detail so that interoperability
          between independent implementations is possible.
          The designated expert will review the public specification and
          evaluate whether it is sufficiently clear to allow
          interoperable implementations.  The intention behind
          "permanent and readily available" is that a document can
          reasonably be expected to be findable and retrievable long
          after IANA assignment of the requested value.  Publication
          of an RFC is an ideal means of achieving this requirement,
          but Specification Required is intended to also cover the
          case of a document published outside of the RFC path.  For
          RFC publication, the normal RFC review process is expected
          to provide the necessary review for interoperability, though
          the designated expert may be a particularly well-qualified
          person to perform such a review.
        </t>
        <t>
          When specifying this policy, just use the term "Specification Required".
          Some specifications have chosen to refer to it as "Expert Review with
          Specification Required", and that only causes confusion.
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>Diffserv-aware TE Bandwidth Constraints Model Identifiers <xref target="RFC4124"/></t>
            <t>TLS ClientCertificateType Identifiers 64-223 <xref target="RFC5246"/></t>
            <t>ROHC Profile Identifiers <xref target="RFC5795"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-rfc" title="RFC Required">
        <t>
          With the RFC Required policy, the registration request, along with
          associated documentation, must be published in an RFC.
          The RFC need not be in the IETF stream, but may be in any RFC stream
          (currently an RFC may be in the IETF, IRTF, or IAB stream, or 
          an RFC Editor Independent Submission <xref target="RFC5742"/>).
          Unless otherwise specified, any type of RFC is sufficient
          (currently Standards Track, BCP, Informational, Experimental,
          or Historic).
        </t>
      </section>

      <section anchor="policy-ietf" title="IETF Review">
        <t>
          (Formerly called "IETF Consensus" in the first edition of this document.)
          With the IETF Review policy,
          new values are assigned only through RFCs in the IETF Stream --
          those that have been shepherded through the IESG as AD-Sponsored or
          IETF working group Documents <xref target="RFC2026"/> <xref target="RFC5378"/>.
        </t>
        <t>
          The intent is that the document and proposed assignment will
          be reviewed by the IETF community (including appropriate IETF
          working groups, directorates, and other experts) and by the IESG,
          to ensure that the proposed assignment will not negatively
          affect interoperability or otherwise extend IETF protocols
          in an inappropriate or damaging manner.
          To ensure adequate community review, such documents will always
          undergo an IETF Last Call.
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>IPSECKEY Algorithm Types <xref target="RFC4025"/></t>
            <t>Accounting-Auth-Method AVP values in DIAMETER <xref target="RFC4005"/></t>
            <t>TLS Extension Types <xref target="RFC5246"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-standards" title="Standards Action">
        <t>
          For the Standards Action policy,
          values are assigned only through Standards Track RFCs approved by
          the IESG.
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>BGP message types <xref target="RFC4271"/></t>
            <t>Mobile Node Identifier option types <xref target="RFC4283"/></t>
            <t>TLS ClientCertificateType Identifiers 0-63 <xref target="RFC5246"/></t>
            <t>DCCP Packet Types <xref target="RFC4340"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>

      <section anchor="policy-iesg" title="IESG Approval">
        <t>
          New assignments may be approved by the IESG.
          Although there is no requirement that the request be
          documented in an RFC, the IESG has discretion to request
          documents or other supporting materials on a case-by-case
          basis.
        </t>
        <t>
          IESG Approval is not intended to be used often or as a
          "common case"; indeed, it has seldom been used in practice
          during the period RFC 2434 was in effect.  Rather, it is
          intended to be available in conjunction with other policies
          as a fall-back mechanism in the case where one of the other
          allowable approval mechanisms cannot be employed in a timely
          fashion or for some other compelling reason.  IESG Approval
          is not intended to circumvent the public review processes
          implied by other policies that could have been employed for
          a particular assignment.  IESG Approval would be
          appropriate, however, in cases where expediency is desired
          and there is strong consensus (such as from a working group)
          for making the assignment.
        </t>
        <t>
          The following guidelines are suggested for any evaluation
          under IESG Approval:
            <list style="symbols">
              <t>
                The IESG can (and should) reject a request if another path
                for registration is available that is more appropriate and
                there is no compelling reason not to use that path.
              </t>
              <t>
                Before approving a request, the community should be
                consulted, via a "call for comments" that provides as much
                information as is reasonably possible about the request.
              </t>
            </list>
        </t>
        <t>
<?rfc subcompact="yes"?>
          Examples:
          <list>
            <t>IPv4 Multicast address assignments <xref target="RFC5771"/></t>
            <t>IPv4 IGMP Type and Code values <xref target="RFC3228"/></t>
            <t>Mobile IPv6 Mobility Header Type and Option values <xref target="RFC6275"/></t>
          </list>
<?rfc subcompact="no"?>
        </t>
      </section>
    </section>

    <section anchor="experts" title="Designated Experts">
      <section anchor="experts-motivation" title="The Motivation for Designated Experts">
        <t>
          IANA does not define registry policy itself; rather, it carries out
          policies that have been defined by others and published in RFCs. As part of
          that process, review of proposed registrations is often appropriate.
        </t>
        <t>
          A common way to ensure such review is for a proposed registration to
          be published as an RFC, as this ensures that the specification is publicly
          and permanently available. It is particularly important if any potential
          interoperability issues might arise. For example, some assignments are not
          just assignments, but also involve an element of protocol specification. A
          new option may define fields that need to be parsed and acted on, which (if
          specified poorly) may not fit cleanly with the architecture of other
          options or the base protocols on which they are built.
        </t>
        <t>
          In some cases, however, the burden of publishing an RFC in order to
          register a protocol element is excessive.
        </t>
        <t>
          However, it is generally still useful (and sometimes necessary) to discuss
          proposed registrations within the community, on a mailing list. Such a
          mailing list provides opportunity for public review prior to assignment,
          and allows for a consultative process when registrants want help in
          understanding what a proper registration should contain.
        </t>
        <t>
          While discussion on a mailing list can provide valuable technical
          feedback, opinions may vary and discussions may continue for some
          time without clear resolution.  In addition, IANA cannot participate
          in all of these mailing lists and cannot determine if or when such
          discussions reach consensus.  Therefore, IANA relies on a "designated
          expert" for advice regarding the specific question of whether an
          assignment should be made.  The designated expert is an individual
          who is responsible for carrying out an appropriate evaluation and
          returning a recommendation to IANA.
        </t>
        <t>
          It should be noted that a key motivation for having designated
          experts is for the IETF to provide IANA with a subject matter expert
          to whom the evaluation process can be delegated.  IANA forwards
          requests for an assignment to the expert for evaluation, and the
          expert (after performing the evaluation) informs IANA as to whether
          or not to make the assignment or registration.
        </t>
        <t>
          It will often be useful to use a designated expert only some of the time,
          as a supplement to other processes.  For more discussion of that topic,
          see <xref target="multiple-policies"/>.
        </t>
      </section>

      <section anchor="experts-role" title="The Role of the Designated Expert">
        <t>
          The designated expert is responsible for coordinating
          the appropriate review of an assignment request.  The review may be
          wide or narrow, depending on the situation and the judgment of the
          designated expert.  This may involve consultation with a set of
          technology experts, discussion on a public mailing list, consultation
          with a working group (or its mailing list if the working group has
          disbanded), etc.  Ideally, the designated expert follows specific
          review criteria as documented with the protocol that creates or uses
          the namespace.  See the IANA Considerations sections of <xref target="RFC3748"/>
          and <xref target="RFC3575"/> for specific examples.
        </t>
        <t>
          Designated experts are expected to be able to defend their decisions
          to the IETF community, and the evaluation process is not intended to
          be secretive or bestow unquestioned power on the expert.  Experts are
          expected to apply applicable documented review or vetting procedures,
          or in the absence of documented criteria, follow generally accepted
          norms such as those in <xref target="expert-reviews"/>.
        </t>
        <t>
          In registries where a pool of experts evaluates requests, the pool
          should have a single chair responsible for defining how requests are
          to be assigned to and reviewed by experts.  In some cases, the expert
          pool may consist of a primary and backups, with the backups involved
          only when the primary expert is unavailable.  In other cases, IANA
          might assign requests to individual members in sequential or
          approximate random order.  In the event that IANA finds itself having
          received conflicting advice from its experts, it is the
          responsibility of the pool's chair to resolve the issue and provide
          IANA with clear instructions.
        </t>
        <t>
          If a designated expert is conflicted for a particular review
          (is, for example, an author or significant proponent of a specification
          related to the registration under review), that expert should recuse himself.
          In the event that all the designated experts are conflicted, they should ask
          that a temporary expert be designated for the conflicted review.
        </t>
        <t>
          It has proven useful to have multiple designated experts for some registries.
          Sometimes those experts work together in evaluating a
          request, while in other cases additional experts serve as backups.
          In cases of disagreement among those experts, it is the
          responsibility of those experts to make a single clear recommendation
          to IANA.  It is not appropriate for IANA to resolve disputes among
          experts.  In extreme situations, such as deadlock, the designating body
          may need to step in to resolve the problem.
        </t>
        <t>
          This document defines the designated expert mechanism with respect
          to documents in the IETF stream only.  Documents in other streams
          may use a registration policy that requires a designated expert only
          if those streams (or those documents) specify how designated experts
          are appointed and managed.  What is described below, with management
          by the IESG, is only appropriate for the IETF stream.
        </t>

        <section anchor="expert-management" title="Managing Designated Experts in the IETF">
          <t>
            Designated experts for registries created by the IETF are appointed by the IESG,
            normally upon recommendation by the relevant Area Director.
            They may be appointed at the time a document creating or updating a namespace
            is approved by the IESG, or subsequently, when the first registration request
            is received.
            Because experts originally appointed may later
            become unavailable, the IESG will appoint replacements as necessary.
            The IESG may remove any designated expert that it appointed, at its discretion.
          </t>
          <t>
            The normal appeals process, as described in <xref target="RFC2026"/>, Section 6.5.1,
            applies to issues that arise with the designated expert team.
            For this purpose, the designated expert team takes the place of the working group
            in that description.
          </t>
        </section>
      </section>

      <section anchor="expert-reviews" title="Designated Expert Reviews">
        <t>
          In the years since RFC 2434 was published and has been put to
          use, experience has led to the following observations:
          <list style="symbols">
            <t>
              A designated expert must respond in a timely fashion, normally
              within a week for simple requests to a few weeks for more
              complex ones.  Unreasonable delays can cause significant
              problems for those needing assignments, such as when products
              need code points to ship.  This is not to say that all reviews
              can be completed under a firm deadline, but they must be
              started, and the requester and IANA should have some
              transparency into the process if an answer cannot be given
              quickly.
            </t>
            <t>
              If a designated expert does not respond to IANA's requests
              within a reasonable period of time, either with a response or
              with a reasonable explanation for the delay (some requests
              may be particularly complex), and if this is a recurring event,
              IANA must raise the issue with the IESG.  Because of the
              problems caused by delayed evaluations and assignments, the IESG
              should take appropriate actions to ensure that the expert
              understands and accepts his or her responsibilities, or appoint
              a new expert.
            </t>
            <t>
              The designated expert is not required to personally bear the
              burden of evaluating and deciding all requests, but acts as a
              shepherd for the request, enlisting the help of others as
              appropriate.  In the case that a request is denied, and
              rejecting the request is likely to be controversial, the expert
              should have the support of other subject matter experts.  That
              is, the expert must be able to defend a decision to the
              community as a whole.
            </t>
          </list>
        </t>
        <t>
          When a designated expert is used, the documentation should give
          clear guidance to the designated expert, laying out criteria for
          performing an evaluation and reasons for rejecting a request.
          In the case where there are no specific documented criteria, the
          presumption should be that a code point should be granted unless
          there is a compelling reason to the contrary.  Possible reasons to
          deny a request include these:
          <list style="symbols">
            <t>
              Scarcity of code points, where the finite remaining code points
              should be prudently managed, or where a request for a large
              number of code points is made and a single code point is the
              norm.
            </t>
            <t>
              Documentation is not of sufficient clarity to evaluate or ensure
              interoperability.
            </t>
            <t>
              The code point is needed for a protocol extension, but the
              extension is not consistent with the documented (or generally
              understood) architecture of the base protocol being extended,
              and would be harmful to the protocol if widely deployed.  It is
              not the intent that "inconsistencies" refer to minor differences
              "of a personal preference nature".  Instead, they refer to
              significant differences such as inconsistencies with the
              underlying security model, implying a change to the semantics of
              an existing message type or operation, requiring unwarranted
              changes in deployed systems (compared with alternate ways of
              achieving a similar result), etc.
            </t>
            <t>
              The extension would cause problems with existing deployed
              systems.
            </t>
            <t>
              The extension would conflict with one under active development
              by the IETF, and having both would harm rather than foster
              interoperability.
            </t>
          </list>
        </t>
        <t>
          When a designated expert is used, documents MUST NOT name the
          designated expert in the document itself; instead, any suggested
          names should be relayed to the appropriate Area Director at the time
          the document is sent to the IESG for approval. This is usually done
          in the document shepherd writeup.
        </t>
        <t>
          If the request should also be reviewed on a specific public mailing
          list, its address should be specified.
        </t>
      </section>

      <section anchor="expert-lifecycle" title="Expert Reviews and the Document Lifecycle">
        <t>
          Review by the designated expert is necessarily done at a particular point in time,
          and represents review of a particular version of the document.
          Deciding when the review should take place is a question of good judgment.
          And while re-reviews might be done when it's acknowledged that the documentation
          of the registered item has changed substantially, making sure that re-review
          happens requires attention and care.
        </t>
        <t>
          It is possible, through carelessness, accident, inattentiveness, or even
          willful disregard, that changes might be made after the designated expert's
          review and approval that would, if the document were re-reviewed, cause the expert
          not to approve the registration.  It is up to the IESG, with the token held by
          the responsible Area Director, to be alert to such situations and to
          recognize that such changes need to be checked.
        </t>
      </section>
    </section>

    <section anchor="regstatus" title="Well-Known Registration Status Terminology">
      <t>
   The following labels describe the status of an assignment or range of
   assignments:

        <list style="empty"><t><list style="hanging" hangIndent="6">
          <t hangText="Private Use:">
            Private use only (not assigned), as described in <xref target="policy-private"/>.
          </t>
          <t hangText="Experimental:">
            Available for general experimental use as described in
            <xref target="RFC3692"/>.  IANA does not record specific
            assignments for any particular use.
          </t>
          <t hangText="Unassigned:">
            Not currently assigned, and available for assignment via documented procedures.
            While it's generally clear that any values that are not registered are unassigned
            and available for assignment, it is sometimes useful to explicitly specify that
            situation.
            Note that this is distinctly different from "Reserved".
          </t>
          <t hangText="Reserved:">
            Not assigned and not available for assignment.
            Reserved values are held for special uses,
            such as to extend the namespace when it becomes exhausted.
            Note that this is distinctly different from "Unassigned".
            <vspace blankLines="1"/>
            Reserved values can be released for assignment by the change controller
            for the registry (this is often the IESG, for registries created by RFCs
            in the IETF stream).
          </t>
        </list></t></list>
      </t>
    </section>

    <section anchor="referring" title="Documentation References in IANA Registries">
      <t>
        Usually, registries and registry entries include references to documentation (RFCs
        or other documents).  The purpose of these references is to provide pointers for
        implementors to find details necessary for implementation, NOT to simply note what
        document created the registry or entry.  Therefore:
        <list style="symbols">
          <t>
            If a document registers an item that is defined and explained elsewhere, the
            registered reference should be to that document, and not to the document that
            is merely performing the registration.
          </t>
          <t>
            If the registered item is defined and explained in the current document,
            it is important to include sufficient information to enable implementors to
            understand the item and to create a proper implementation.
          </t>
          <t>
            If the registered item is explained primarily in a specific section of the
            reference document, it is useful to include a section reference.
            For example, "[RFC9876], Section 3.2", rather than just "[RFC9876]".
          </t>
          <t>
            For documentation of a new registry, the reference should provide information
            about the registry itself, not just a pointer to the creation of it.
            Useful information includes the purpose of the registry, a rationale for its
            creation, documentation of the process and policy for new registrations,
            guidelines for new registrants or designated experts, and other such
            related information.
            But note that, while it's important to include this information in the
            document, it needn't (and shouldn't) all be in the IANA Considerations
            section.  See <xref target="keep-it-simple"/>.
          </t>
        </list>
      </t>
    </section>

    <section anchor="bis-docs" title='What to Do in "bis" Documents'>
      <t>
        On occasion, an RFC is issued that obsoletes a previous edition of the
        same document. We sometimes call these "bis" documents, such as when
        RFC 9876 is updated by draft-ietf-foo-rfc9876bis. When the original
        document created registries and/or registered entries, there is a
        question of how to handle the IANA Considerations section in the "bis"
        document.
      </t>
      <t>
        If the registrations specify the original document as a reference,
        those registrations should be updated to point to the current (not
        obsolete) documentation for those items. Usually, that will mean
        changing the reference to be the "bis" document.
        There will, though, be times when a document updates another, and
        changes the definitive reference for some items, but not for others.
        Be sure that the references are always set to point to the correct,
        current documentation for each item.
      </t>
      <t>
        For example, suppose RFC 9876 registered the "BANANA" flag in the
        "Fruit Access Flags" registry, and the documentation for that flag is
        in Section 3.2.
        
        <figure>
          <preamble>The current registry might look, in part, like this:</preamble>
          <artwork>
   Name      Description          Reference
   --------  -------------------  ---------
   BANANA    Flag for bananas     [RFC9876], Section 3.2
          </artwork>
        </figure>
        If draft-ietf-foo-rfc9876bis obsoletes RFC 9876 and, because of some
        rearrangement, now documents the flag in Section 4.1.2, the IANA
        Considerations of the bis document might contain text such as this:
        <vspace blankLines="1"/>
        <list style="empty"><t>
        IANA is asked to change the registration information for the BANANA flag
        in the "Fruit Access Flags" registry to the following:
        <figure>
          <artwork>
   Name      Description          Reference
   --------  -------------------  ---------
   BANANA    Flag for bananas     [[this RFC]], Section 4.2.1
          </artwork>
        </figure>
        </t></list>
      </t>
      <t>
        In many cases, if there are a number of registered references to the
        original RFC and the document organization has not changed the
        registered section numbering much, it may simply be reasonable to do
        this:
        <list style="empty"><t>
        Because this document obsoletes RFC 9876,
        IANA is asked to change all registration information that references
        [RFC9876] to instead reference [[this RFC]].
        </t></list>
      </t>
      <t>
        If information for registered items has been or is being moved to
        other documents, then, of course, the registration information should
        be changed to point to those other documents. In no case is it
        reasonable to leave documentation pointers to the obsoleted document
        for any registries or registered items that are still in current use.
      </t>
      <t>
        It is extremely important to be clear in your instructions regarding
        updating references, especially in cases where some references need to
        be updated and others do not.
      </t>
    </section>

    <section anchor="misc" title="Miscellaneous Issues">
      <section anchor="misc-no-actions" title="When There Are No IANA Actions">
        <t>
          Before an Internet-Draft can be published as an RFC, IANA needs to
          know what actions (if any) it needs to perform.  Experience has shown
          that it is not always immediately obvious whether a document has no
          IANA actions, without reviewing the document in some detail.  In
          order to make it clear to IANA that it has no actions to perform (and
          that the author has consciously made such a determination), such
          documents should include an IANA Considerations section that states:
          <list>
            <t>
              This document has no IANA actions.
            </t>
          </list>
        </t>
        <t>
          This statement, or an equivalent, must only be inserted after the working group
          or individual submitter has carefully verified it to be true.
          Using such wording as a matter of "boilerplate" or without careful
          consideration can lead to incomplete or incorrect IANA actions being
          performed.
        </t>
        <t>
          If a specification makes use of values from a namespace in which
          assignments are not made by IANA, it may be useful to note this fact, with
          wording such as this:
          <list>
            <t>
              The values of the Foobar parameter are assigned by the Barfoo
              registry on behalf of the Rabfoo Forum.  Therefore, this document
              has no IANA actions.
            </t>
          </list>
        </t>
        <t>
          IANA prefers that these "empty" IANA Considerations sections be left
          in the document for the record.  This is a change from the prior practice
          of requesting that such sections be removed by the RFC Editor, and authors
          are asked to accommodate this change.
        </t>
      </section>

      <section anchor="lacking-guidance" title="Namespaces Lacking Documented Guidance">
        <t>
          For all existing RFCs that either explicitly or implicitly rely on
          IANA to make assignments without specifying a precise assignment
          policy, IANA (in consultation with the IESG) will continue to decide
          what policy is appropriate.  Changes to existing policies can always
          be initiated through the normal IETF consensus process, or through
          the IESG when appropriate.
        </t>
        <t>
          All future RFCs that either explicitly or implicitly rely on IANA to
          register or otherwise administer namespace assignments MUST provide
          guidelines for administration of the namespace.
        </t>
      </section>

      <section anchor="after-fact" title="After-the-Fact Registrations">
        <t>
          Occasionally, the IETF becomes aware that an unassigned value from a
          namespace is in use on the Internet or that an assigned value
          is being used for a different purpose than it was registered for.
          The IETF does not condone such misuse; procedures of the type
          described in this document MUST be applied to such cases.
          In the absence of specifications to the contrary, values may only be
          reassigned for a different purpose with the consent of the original
          assignee (when possible) and with due consideration of the impact of
          such a reassignment.  In cases of likely controversy, consultation
          with the IESG is advised.
        </t>
      </section>

      <section anchor="reclaiming" title="Reclaiming Assigned Values">
        <t>
          Reclaiming previously assigned values for reuse is tricky, because
          doing so can lead to interoperability problems with deployed systems
          still using the assigned values.  Moreover, it can be extremely
          difficult to determine the extent of deployment of systems making use
          of a particular value.  However, in cases where the namespace is
          running out of unassigned values and additional ones are needed, it
          may be desirable to attempt to reclaim unused values.  When
          reclaiming unused values, the following (at a minimum) should be
          considered:
          <list style="symbols">
            <t>
              Attempts should be made to contact the original party to which a
              value is assigned, to determine if the value was ever used, and
              if so, the extent of deployment.  (In some cases, products were
              never shipped or have long ceased being used.  In other cases,
              it may be known that a value was never actually used at all.)
            </t>
            <t>
              Reassignments should not normally be made without the
              concurrence of the original requester.  Reclamation under such
              conditions should only take place where there is strong evidence
              that a value is not widely used, and the need to reclaim the
              value outweighs the cost of a hostile reclamation.  In any case,
              IESG Approval is needed in this case.
            </t>
            <t>
              It may be appropriate to write up the proposed action and
              solicit comments from relevant user communities.  In some cases,
              it may be appropriate to write an RFC that goes through a formal
              IETF process (including IETF Last Call) as was done when DHCP
              reclaimed some of its "Private Use" options <xref target="RFC3942"/>.
            </t>
          </list>
        </t>
      </section>

      <section anchor="assignee" title="Contact Person vs Assignee or Owner">
        <t>
          Many registries include designation of a technical or administrative contact
          associated with each entry.  Often, this is recorded as contact information for
          an individual.  It is unclear, though, what role the individual has with respect
          to the registration: is this item registered on behalf of the individual,
          the company the individual worked for, or perhaps another organization the
          individual was acting for?
        </t>
        <t>
          This matters because some time later, when the individual has changed jobs or roles,
          and perhaps can no longer be contacted, someone might want to update the registration.
          IANA has no way to know what company, organization, or individual should be allowed
          to take the registration over.  For registrations rooted in RFCs, the stream owner
          (such as the IESG or the IAB) can make an overriding decision.  But in other cases,
          there is no recourse.
        </t>
        <t>
          Registries can include, in addition to a "Contact" field, an "Assignee"
          or "Owner" field that can be used to address this situation,
          giving IANA clear guidance as to the actual owner of the registration.
          This is strongly advised especially for registries that do not require
          RFCs to manage their information (registries with policies such as
          First Come First Served <xref target="policy-fcfs"/>,
          Expert Review <xref target="policy-expert"/>, and
          Specification Required <xref target="policy-specification"/>).
          Alternatively, organizations can put an organizational role into the "Contact"
          field in order to make their ownership clear.
        </t>
      </section>

      <section anchor="closing-obsoleting" title="Closing or Obsoleting a Registry">
        <t>
          Sometimes there is a request to "close" a registry to further registrations.
          When a registry is closed, no further registrations will be accepted.
          The information in the registry will still be valid and registrations
          already in the registry can still be updated.
        </t>

        <t>
          A closed registry can also be marked as "obsolete", as an indication that
          the information in the registry is no longer in current use.
        </t>

        <t>
          Specific entries in a registry can be marked as "obsolete" (no longer in
          use) or "deprecated" (use is not recommended).
        </t>

        <t>
          Such changes to registries and registered values are subject to normal
          change controls (see <xref target="change-control"/>).
          Any closure, obsolescence, or deprecation serves to annotate the registry involved;
          the information in the registry remains there for informational and historic purposes.
        </t>
      </section>

    </section>

    <section anchor="appeals" title="Appeals">
      <t>
        Appeals of protocol parameter registration decisions can be made using the
        normal IETF appeals process as described in <xref target="RFC2026"/>, Section 6.5.
        That is, an initial appeal should be directed to the IESG,
        followed (if necessary) by an appeal to the IAB.
      </t>
    </section>

    <section anchor="mailing-lists" title="Mailing Lists">
      <t>
        All IETF mailing lists associated with evaluating or discussing
        assignment requests as described in this document are subject to
        whatever rules of conduct and methods of list management are
        currently defined by Best Current Practices or by IESG decision.
      </t>
    </section>

    <section anchor="security" title="Security Considerations">
      <t>
        Information that creates or updates a registration needs to be
        authenticated and authorized.  IANA updates registries according to
        instructions in published RFCs and from the IESG.  It also may accept
        clarifications from document authors, relevant working group chairs, Designated
        Experts, and mail list participants, too.
      </t>
      <t>
        Information concerning possible security vulnerabilities of a
        protocol may change over time.  Likewise, security vulnerabilities
        related to how an assigned number is used may change as well.
        As new vulnerabilities are discovered,
        information about such vulnerabilities may need to be attached to
        existing registrations, so that users are not misled as to the true
        security issues surrounding the use of a registered number.
      </t>
      <t>
        An analysis of security issues is generally required for all
        protocols that make use of parameters (data types, operation codes,
        keywords, etc.) used in IETF protocols or registered by IANA.  Such
        security considerations are usually included in the protocol document
        <xref target="RFC3552"/>.  It is the responsibility of the IANA considerations
        associated with a particular registry to specify what (if any)
        security considerations must be provided when assigning new values,
        and the process for reviewing such claims.
      </t>
    </section>

    <section title="IANA Considerations">
      <t>
        In accordance with <xref target="misc-no-actions"/>:
      </t>
      <t>
        This document has no IANA actions.
      </t>
    </section>

    <section anchor="changes" title="Changes Relative to Earlier Editions of BCP 26">

      <section title="2014: Changes in This Document Relative to RFC 5226">
        <t>Significant additions:
          <list style="symbols">

            <t>Added <xref target="keep-it-simple"/>, Keep IANA Considerations for IANA</t>

            <t>Added <xref target="more-info"/>, For More Information</t>

            <t>Added <xref target="registry-structure"/>, Hierarchical Registry Structure</t>

            <t>Added <xref target="selecting-policy"/>, Best Practice for Selecting an Appropriate Policy.</t>

            <t>Added <xref target="multiple-policies"/>, Using Multiple Policies in Combination.</t>

            <t>Added <xref target="change-control"/>, Specifying Change Control for a Registry</t>

            <t>Added <xref target="early-allocations"/>, Early Allocations</t>

            <t>Moved well-known policies into a separate section for each, subsections of <xref target="well-known"/>.</t>

            <t>Added <xref target="expert-lifecycle"/>, Expert Reviews and the Document Lifecycle</t>

            <t>Added <xref target="referring"/>, Documentation References in IANA Registries</t>

            <t>Added <xref target="bis-docs"/>, What to Do in "bis" Documents</t>

            <t>Added <xref target="assignee"/>, Contact Person vs Assignee or Owner</t>

            <t>Added <xref target="closing-obsoleting"/>, Closing or Obsoleting a Registry</t>

          </list>
        </t>
        <t>Clarifications and such:
          <list style="symbols">

            <t>Some reorganization -- moved text around for clarity and easier reading.</t>

            <t>Made clarifications about identification of IANA registries and use of URLs for them.</t>

            <t>Clarified the distinction between "Unassigned" and "Reserved".</t>

            <t>Made some clarifications in "Expert Review" about instructions to the designated expert.</t>

            <t>Made some clarifications in "Specification Required" about how to declare this policy.</t>

            <t>Assorted minor clarifications and editorial changes throughout.</t>

          </list>
        </t>
      </section>

      <section title="2008: Changes in RFC 5226 Relative to RFC 2434">
      <t>
   Changes include:
        <list style="symbols">
          <t>
        Major reordering of text to expand descriptions and to better
        group topics such as "updating registries" vs. "creating new
        registries", in order to make it easier for authors to find the
        text most applicable to their needs.
          </t>
          <t>
        Numerous editorial changes to improve readability.
          </t>
          <t>
        Changed the term "IETF Consensus" to "IETF Review" and added
        more clarifications.  History has shown that people see the
        words "IETF Consensus" (without consulting the actual
        definition) and are quick to make incorrect assumptions about
        what the term means in the context of IANA Considerations.
          </t>
          <t>
        Added "RFC Required" to list of defined policies.
          </t>
          <t>
        Much more explicit directions and examples of "what to put in
        RFCs".
          </t>
          <t>
        "Specification Required" now implies use of a Designated Expert
        to evaluate specs for sufficient clarity.
          </t>
          <t>
        Significantly changed the wording in the Designated Experts section.
        Main purpose is to make clear that Expert Reviewers are accountable to the
        community, and to provide some guidance for review criteria in
        the default case.
          </t>
          <t>
        Changed wording to remove any special appeals path.  The normal
        RFC 2026 appeals path is used.
          </t>
          <t>
        Added a section about reclaiming unused values.
          </t>
          <t>
        Added a section on after-the-fact registrations.
          </t>
          <t>
        Added a section indicating that mailing lists used to evaluate
        possible assignments (such as by a Designated Expert) are subject
        to normal IETF rules.
          </t>
        </list>
      </t>
      </section>
    </section>

    <section anchor="acknowledgments" title="Acknowledgments">
      <section title="Acknowledgments for This Document (2014)">
        <t>
          Thomas Narten and Harald Tveit Alvestrand edited the two earlier
          editions of this document (RFCs 2434 and 5226), and Thomas continues
          his role in this third edition.  Much of the text from RFC 5226
          remains in this edition.
        </t>
        <t>
          Thank you to Amanda Baber and Pearl Liang for their multiple reviews and 
          suggestions for making this document as thorough as possible.
        </t>
        <t>
          This document has benefited from thorough review and comments by
          Tony Hansen, John Klensin, and Mark Nottingham.
        </t>
        <t>
          Special thanks to Mark Nottingham for reorganizing some of the text
          for better organization and readability, and to Tony Hansen for acting
          as document shepherd.
        </t>
      </section>

      <section title="Acknowledgments from the second edition (2008)">
        <t>
   The original acknowledgments section in RFC 5226 was:
        </t>
        <t>
   This document has benefited from specific feedback from Jari Arkko,
   Marcelo Bagnulo Braun, Brian Carpenter, Michelle Cotton, Spencer
   Dawkins, Barbara Denny, Miguel Garcia, Paul Hoffman, Russ Housley,
   John Klensin, Allison Mankin, Blake Ramsdell, Mark Townsley, Magnus
   Westerlund, and Bert Wijnen.
        </t>
      </section>

      <section title="Acknowledgments from the first edition (1998)">
        <t>
   The original acknowledgments section in RFC 2434 was:
        </t>
        <t>
   Jon Postel and Joyce Reynolds provided a detailed explanation on what
   IANA needs in order to manage assignments efficiently, and patiently
   provided comments on multiple versions of this document.  Brian
   Carpenter provided helpful comments on earlier versions of the
   document.  One paragraph in the Security Considerations section was
   borrowed from <xref target="RFC4288"/>.
        </t>
      </section>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.2026" ?>
      <?rfc include="reference.RFC.2119" ?>
    </references>

    <references title="Informative References">
      <?rfc include="reference.RFC.0791" ?>
      <?rfc include="reference.RFC.2860" ?>
      <?rfc include="reference.RFC.2939" ?>
      <?rfc include="reference.RFC.3228" ?>
      <?rfc include="reference.RFC.3552" ?>
      <?rfc include="reference.RFC.3575" ?>
      <?rfc include="reference.RFC.3692" ?>
      <?rfc include="reference.RFC.3748" ?>
      <?rfc include="reference.RFC.3942" ?>
      <?rfc include="reference.RFC.3968" ?>
      <?rfc include="reference.RFC.4005" ?>
      <?rfc include="reference.RFC.4025" ?>
      <?rfc include="reference.RFC.4044" ?>
      <?rfc include="reference.RFC.4124" ?>
      <?rfc include="reference.RFC.4169" ?>
      <?rfc include="reference.RFC.4271" ?>
      <?rfc include="reference.RFC.4283" ?>
      <?rfc include="reference.RFC.4288" ?>
      <?rfc include="reference.RFC.4340" ?>
      <?rfc include="reference.RFC.4395" ?>
      <?rfc include="reference.RFC.4422" ?>
      <?rfc include="reference.RFC.4446" ?>
      <?rfc include="reference.RFC.4520" ?>
      <?rfc include="reference.RFC.4589" ?>
      <?rfc include="reference.RFC.4727" ?>
      <?rfc include="reference.RFC.5246" ?>
      <?rfc include="reference.RFC.5378" ?>
      <?rfc include="reference.RFC.5742" ?>
      <?rfc include="reference.RFC.5771" ?>
      <?rfc include="reference.RFC.5795" ?>
      <?rfc include="reference.RFC.6195" ?>
      <?rfc include="reference.RFC.6275" ?>
      <?rfc include="reference.RFC.6709" ?>
      <?rfc include="reference.RFC.7120" ?>
    </references>
  </back>
</rfc>
