Network Working Group M. Cotton
Internet-Draft ICANN
BCP: 26 B. Leiba
Obsoletes: 5226 (if approved) Huawei Technologies
Intended status: Best Current Practice T. Narten
Expires: October 13, 2013 IBM Corporation
April 11, 2013

Guidelines for Writing an IANA Considerations Section in RFCs
draft-leiba-cotton-iana-5226bis-02

Abstract

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).

To manage 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.

This is the third edition, and obsoletes RFC 5226.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on October 13, 2013.

Copyright Notice

Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.


Table of Contents

1. Introduction

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) [RFC2860].

The Protocol field in the IP header [RFC0791] and MIME media types [RFC4288] are two examples of such coordinations.

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.

To manage 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.

Typically, this information is recorded in a dedicated section of the specification with the title "IANA Considerations".

1.1. Terminology Used In This Document

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 [RFC2119]. For this document, "the specification" as used by RFC 2119 refers to the processing of protocol documents within the IETF standards process.

2. Creating and Revising Registries

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.

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.

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.

2.1. Documentation Requirements for Registries

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.

In particular, such instructions MUST include:

The name of the registry (or sub-registry)

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.

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.

Providing a URL to precisely identify the registry helps IANA understand the request. Such URLs are usually removed from the RFC prior to final publication.

For example, a document could contain something like this:

Required information for registrations


This information may include the need to document relevant Security Considerations, if any.
Applicable review process


The review process that will apply to all future requests for registration. See Section 2.2.
Size, format and syntax of registry entries


What fields to record in the registry., and any technical requirements upon registry entries (e.g., valid ranges for integers, length limitations on strings, etc.) as well as the exact format in which registry values should be displayed. For numeric assignments, one should specify whether values are to be recorded in decimal, hexadecimal, or some other format. For strings, the encoding format should be specified (ASCII, UTF8, etc.).
Initial assignments and reservations


Any initial assignments or registrations to be included. In addition, any ranges that are to be reserved for "Private Use", "Reserved", "Unassigned", etc. should be indicated.

For example, a document might specify a new registry by including:

    ---------------------------------------------------------------

    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
    ---------------------------------------------------------------
          

For examples of documents that establish registries, consult [RFC6195], [RFC3575], [RFC3968], and [RFC4520].

2.2. Defining an Appropriate Registry Policy

There are several issues to consider when defining the policy for the management of a registry.

If the registry's namespace is limited, assignments will need to be made carefully to prevent exhaustion.

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:

Perhaps most importantly, unreviewed extensions can impact interoperability and security. See [RFC6709].

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.

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.

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.

In particular, when a registry policy that requires involvement of Working Groups, directorates, or other bodies to be actively involved and to support the effort, requests frequently run into concerns that "it's not worth doing a Standards-Track RFC for something this trivial," when, in fact, that requirement was created by the Working Group in the first place, by placing the bar that high.

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.

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 (Specification Required, in terms of the well-known policies).

2.2.1. Using the Well-Known Registration Policies

This document defines a number of registration policies in Section 4. Because they benefit from both community experience and wide understanding, their use is encouraged when appropriate.

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.

For example, RADIUS [RFC3575] specifies the use of a Designated Expert, but includes specific additional criteria the Designated Expert should follow.

The well-known policies from "First Come First Served" to "Standards Action" specify a range of policies in increasing order of strictness:

4.
First Come First Served
No review, minimal documentation.
5.
Expert Review
Expert review, sufficient documentation for review.
6.
Specification Required
Expert review, significant, stable public documentation.
7.
RFC Required
Any RFC publication, IETF or a non-IETF Stream.
8.
IETF Review
RFC publication, IETF Stream only, but need not be Standards Track.
9.
Standards Action
RFC publication, IETF Stream, Standards Track only.

Examples of situations that might merit RFC Required, IETF Review, or Standards Action include the following:

The description in Section 4.10 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.

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.

When specifications are revised, registration policies should be reviewed in light of experience since the policies were set.

Note that the well-known policies are not exclusive; there are situations where a different policy might be more appropriate.

2.2.2. Using Multiple Policies in Combination

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.

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.

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.

This can be documented in the IANA Considerations section when the registry is created:

Such combinations will commonly use one of {Standards Action, IETF Review, RFC Required} in combination with one of {Specification Required, Expert Review}.

2.3. Revising Existing Registries

Updating the registration process for an already existing (previously created) namespace (whether created explicitly or implicitly) follows a process similar to that used when creating a new namespace. That is, a document is produced that makes reference to the existing namespace and then provides detailed guidelines for handling assignments in each individual namespace. Such documents are normally processed as Best Current Practices (BCPs) [RFC2026].

Example documents that updated the guidelines for managing (then) pre-existing registries include: [RFC6195], [RFC3228], and [RFC3575].

3. Registering New Values in an Existing Registry

3.1. Documentation Requirements for Registrations

Often, documents request an assignment from an already existing namespace (one created by a previously published document).

Such documents should clearly identify the namespace in which each value is to be registered. If the registration goes into a sub-registry, the author should clearly describe where the assignment or registration should go. Use the exact namespace name as listed on the IANA web page, and cite the RFC where the namespace is defined.

There is no need to mention what the assignment policy for new assignments is, as that should be clear from the references.

When referring to an existing registry, providing a URL to precisely identify the registry is helpful. Such URLs, however, should usually be removed from the RFC prior to final publication, since IANA URLs are not guaranteed to be stable in the future. In cases where it is important to include a URL in the document, IANA should concur on its inclusion.

For example, a document could contain something like this:

Each value requested should be given a unique reference. When the value is numeric, use the notation: TBD1, TBD2, etc. Throughout the document where an actual IANA-assigned value should be filled in, use the "TBDx" notation. This helps ensure that the final RFC has the correct assigned values inserted in all of the relevant places where the value is expected to appear in the final document. For values that are text strings, a specific name can be suggested. IANA will normally assign the name, unless it conflicts with a name already in use.

Normally, the values to be used are chosen by IANA and documents should specify values of "TBD". However, in some cases, a value may have been used for testing or in early implementations. In such cases, it is acceptable to include text suggesting what specific value should be used (together with the reason for the choice). For example, one might include the text "the value XXX is suggested as it is used in implementations". However, it should be noted that suggested values are just that; IANA will attempt to assign them, but may find that impossible, if the proposed number has already been assigned for some other use.

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 are always 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.

  Value     Description          Reference
  --------  -------------------  ---------
  TBD1      Foobar               [[this RFC]]
        

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:



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.

As an example, the following text could be used to request assignment of a DHCPv6 option number:

3.2. Updating Existing Registrations

Even after a number has been assigned, some types of registrations contain additional information that may need to be updated over time.

For example, MIME media types, character sets, and language tags typically include more information than just the registered value itself, and may need things such as point-of-contact information, security issues, pointers to updates, or literature references updated.

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:

3.3. Overriding Registration Procedures

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.

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.

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.

When the IESG is required to take action as described in this section, it is a strong indicator that the applicable registration procedures should be updated, possibly in parallel with the work that instigated it.

4. Well-Known Registration Policies

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.

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.

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 Section 2.2.2.

4.1. Private Use

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).

4.2. Experimental Use

Similar to private or local use only, with the purpose being to facilitate experimentation. See [RFC3692] for details.

4.3. Hierarchical Allocation

Delegated managers can assign values provided they have been given control over that part of the namespace. IANA controls the higher levels of the namespace according to one of the other policies.

4.4. First Come First Served

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 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.

4.5. Expert Review

(Sometimes also called "Designated Expert" in earlier editions of this document.) Review and approval by a designated expert 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 [RFC3748].

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.

4.6. Specification Required

Review and approval by a Designated Expert is required, (as in Section 4.5) 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.

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.

4.7. RFC Required

RFC publication suffices, as an IETF submission or in any other stream (currently an RFC Editor Independent Submission [RFC5742] or an RFC in the IRTF or IAB Stream). Unless otherwise specified, any type of RFC is sufficient (currently Standards Track, BCP, Informational, Experimental, Historic).

4.8. IETF Review

(Formerly called "IETF Consensus" in the first edition of this document.) 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 [RFC2026] [RFC5378]. The intention is that the document and proposed assignment will be reviewed by the IESG and appropriate IETF working groups (or experts, if suitable working groups no longer exist) to ensure that the proposed assignment will not negatively impact interoperability or otherwise extend IETF protocols in an inappropriate or damaging manner.

To ensure adequate community review, such documents are shepherded through the IESG as AD-sponsored or working group documents with an IETF Last Call.

4.9. Standards Action

Values are assigned only for Standards Track RFCs approved by the IESG.

4.10. IESG Approval

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.

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.

The following guidelines are suggested for any evaluation under IESG Approval:

5. Designated Experts

5.1. The Motivation for Designated Experts

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.

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.

In some cases, however, the burden of publishing an RFC in order to register a protocol element is excessive.

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.

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.

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.

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 Section 2.2.2.

5.2. The Role of the Designated Expert

The designated expert is responsible for initiating and 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 [RFC3748] and [RFC3575] for specific examples.

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 Section 5.3.

Section 3.2 discusses disputes and appeals in more detail.

Designated experts are appointed by the IESG (normally upon recommendation by the relevant Area Director). They are typically named at the time a document creating or updating a namespace is approved by the IESG, but as experts originally appointed may later become unavailable, the IESG will appoint replacements if necessary.

For some registries, it has proven useful to have multiple designated experts. 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 IESG may need to step in to resolve the problem.

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.

Since the designated experts are appointed by the IESG, they may be removed by the IESG.

5.3. Designated Expert Reviews

In the years since RFC 2434 was published and has been put to use, experience has led to the following observations:

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:

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.

If the request should also be reviewed on a specific public mailing list, its address should be specified.

5.4. Expert Reviews and the Document Lifecycle

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.

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.

6. Well-Known Registration Status Terminology

The following labels describe the status of an individual (or range) of assignments:

7. Documentation References in IANA Registries

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:

8. What to Do in "bis" Documents

On occaison, 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.

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.

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.

The current registry might look, in part, like this:

   Name      Description          Reference
   --------  -------------------  ---------
   BANANA    Flag for bananas     [RFC9876], Section 3.2
          

   Name      Description          Reference
   --------  -------------------  ---------
   BANANA    Flag for bananas     [[this RFC]], Section 4.2.1
          

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:

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.

9. Miscellaneous Issues

9.1. When There Are No IANA Actions

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:

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.

If a specification makes use of values from a namespace that is not managed by IANA, it may be useful to note this fact, with wording such as this:

In some cases, the absence of IANA-assigned values may be considered valuable information for future readers; in other cases, it may be considered of no value once the document has been approved, and may be removed before archival publication. This choice should be made clear in the draft, for example, by including a sentence such as

or

9.2. Namespaces Lacking Documented Guidance

For all existing RFCs that either explicitly or implicitly rely on IANA to evaluate assignments without specifying a precise evaluation 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.

All future RFCs that either explicitly or implicitly rely on IANA to register or otherwise manage namespace assignments MUST provide guidelines for managing the namespace.

9.3. After-the-Fact Registrations

Occasionally, IANA becomes aware that an unassigned value from a managed namespace is in use on the Internet or that an assigned value is being used for a different purpose than originally registered. IANA will 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.

9.4. Reclaiming Assigned Values

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:

9.5. Contact Person vs Assignee or Owner

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?

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.

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. Alternatively, organizations can put an organizational role into the "Contact" field in order to make their ownership clear.

9.6. Closing or Obsoleting a Registry

9.7. BCP 78/79 Issues in Registries

10. Appeals

Appeals of registration decisions made by IANA can be made using the normal IETF appeals process as described in Section 6.5 of [RFC2026]. Specifically, appeals should be directed to the IESG, followed (if necessary) by an appeal to the IAB, etc.

11. Mailing Lists

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.

12. Security Considerations

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.

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.

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 [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.

13. To-Do List; resolve and remove before requesting publication

Just was speaking with someone at the IANA office hours. I was looking through the 5226bis draft and there is nothing in there about how to deprecate values in registries. Might be something good to add.

14. Changes Relative to Earlier Editions of BCP 26

14.1. 2013: Changes in This Document Relative to RFC 5226

Significant additions:

Clarifications and such:

14.2. 2008: Changes in RFC 5226 Relative to RFC 2434

Changes include:

15. Acknowledgments

15.1. Acknowledgments for This Document (2013)

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.

Special thanks to Mark Nottingham for thoroughly reviewing the document and reorganizing the text for better organization and readability.

15.2. Acknowledgments from the second edition (2008)

The original acknowledgments section in RFC 5226 was:

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.

15.3. Acknowledgments from the first edition (1998)

The original acknowledgments section in RFC 2434 was:

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 [RFC4288].

16. References

16.1. Normative References

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

16.2. Informative References

[RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, September 1981.
[RFC2026] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, October 1996.
[RFC2132] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor Extensions", RFC 2132, March 1997.
[RFC2860] Carpenter, B., Baker, F. and M. Roberts, "Memorandum of Understanding Concerning the Technical Work of the Internet Assigned Numbers Authority", RFC 2860, June 2000.
[RFC2929] Eastlake, D., Brunner-Williams, E. and B. Manning, "Domain Name System (DNS) IANA Considerations", RFC 2929, September 2000.
[RFC2939] Droms, R., "Procedures and IANA Guidelines for Definition of New DHCP Options and Message Types", BCP 43, RFC 2939, September 2000.
[RFC3228] Fenner, B., "IANA Considerations for IPv4 Internet Group Management Protocol (IGMP)", BCP 57, RFC 3228, February 2002.
[RFC3232] Reynolds, J., "Assigned Numbers: RFC 1700 is Replaced by an On-line Database", RFC 3232, January 2002.
[RFC3552] Rescorla, E. and B. Korver, "Guidelines for Writing RFC Text on Security Considerations", BCP 72, RFC 3552, July 2003.
[RFC3575] Aboba, B., "IANA Considerations for RADIUS (Remote Authentication Dial In User Service)", RFC 3575, July 2003.
[RFC3692] Narten, T., "Assigning Experimental and Testing Numbers Considered Useful", BCP 82, RFC 3692, January 2004.
[RFC3748] Aboba, B., Blunk, L., Vollbrecht, J., Carlson, J. and H. Levkowetz, "Extensible Authentication Protocol (EAP)", RFC 3748, June 2004.
[RFC3942] Volz, B., "Reclassifying Dynamic Host Configuration Protocol version 4 (DHCPv4) Options", RFC 3942, November 2004.
[RFC3968] Camarillo, G., "The Internet Assigned Number Authority (IANA) Header Field Parameter Registry for the Session Initiation Protocol (SIP)", BCP 98, RFC 3968, December 2004.
[RFC4005] Calhoun, P., Zorn, G., Spence, D. and D. Mitton, "Diameter Network Access Server Application", RFC 4005, August 2005.
[RFC4025] Richardson, M., "A Method for Storing IPsec Keying Material in DNS", RFC 4025, March 2005.
[RFC4044] McCloghrie, K., "Fibre Channel Management MIB", RFC 4044, May 2005.
[RFC4124] Le Faucheur, F., "Protocol Extensions for Support of Diffserv-aware MPLS Traffic Engineering", RFC 4124, June 2005.
[RFC4169] Torvinen, V., Arkko, J. and M. Naslund, "Hypertext Transfer Protocol (HTTP) Digest Authentication Using Authentication and Key Agreement (AKA) Version-2", RFC 4169, November 2005.
[RFC4271] Rekhter, Y., Li, T. and S. Hares, "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, January 2006.
[RFC4283] Patel, A., Leung, K., Khalil, M., Akhtar, H. and K. Chowdhury, "Mobile Node Identifier Option for Mobile IPv6 (MIPv6)", RFC 4283, November 2005.
[RFC4288] Freed, N. and J. Klensin, "Media Type Specifications and Registration Procedures", RFC 4288, December 2005.
[RFC4301] Kent, S. and K. Seo, "Security Architecture for the Internet Protocol", RFC 4301, December 2005.
[RFC4340] Kohler, E., Handley, M. and S. Floyd, "Datagram Congestion Control Protocol (DCCP)", RFC 4340, March 2006.
[RFC4395] Hansen, T., Hardie, T. and L. Masinter, "Guidelines and Registration Procedures for New URI Schemes", BCP 35, RFC 4395, February 2006.
[RFC4422] Melnikov, A. and K. Zeilenga, "Simple Authentication and Security Layer (SASL)", RFC 4422, June 2006.
[RFC4446] Martini, L., "IANA Allocations for Pseudowire Edge to Edge Emulation (PWE3)", BCP 116, RFC 4446, April 2006.
[RFC4520] Zeilenga, K., "Internet Assigned Numbers Authority (IANA) Considerations for the Lightweight Directory Access Protocol (LDAP)", BCP 64, RFC 4520, June 2006.
[RFC4589] Schulzrinne, H. and H. Tschofenig, "Location Types Registry", RFC 4589, July 2006.
[RFC4727] Fenner, B., "Experimental Values In IPv4, IPv6, ICMPv4, ICMPv6, UDP, and TCP Headers", RFC 4727, November 2006.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security (TLS) Protocol Version 1.2", RFC 5246, August 2008.
[RFC5378] Bradner, S. and J. Contreras, "Rights Contributors Provide to the IETF Trust", BCP 78, RFC 5378, November 2008.
[RFC5742] Alvestrand, H. and R. Housley, "IESG Procedures for Handling of Independent and IRTF Stream Submissions", BCP 92, RFC 5742, December 2009.
[RFC5771] Cotton, M., Vegoda, L. and D. Meyer, "IANA Guidelines for IPv4 Multicast Address Assignments", BCP 51, RFC 5771, March 2010.
[RFC5795] Sandlund, K., Pelletier, G. and L-E. Jonsson, "The RObust Header Compression (ROHC) Framework", RFC 5795, March 2010.
[RFC6195] Eastlake, D., "Domain Name System (DNS) IANA Considerations", BCP 42, RFC 6195, March 2011.
[RFC6275] Perkins, C., Johnson, D. and J. Arkko, "Mobility Support in IPv6", RFC 6275, July 2011.
[RFC6709] Carpenter, B., Aboba, B. and S. Cheshire, "Design Considerations for Protocol Extensions", RFC 6709, September 2012.

Authors' Addresses

Michelle Cotton, Manager, IANA Services Internet Corporation for Assigned Names and Numbers 12025 Waterfront Drive, Suite 300 Los Angeles, CA 90094-2536 US Phone: +1 310 301 5812 EMail: michelle.cotton@icann.org
Barry Leiba Huawei Technologies Phone: +1 646 827 0648 EMail: barryleiba@computer.org URI: http://internetmessagingtechnology.org/
Thomas Narten IBM Corporation 3039 Cornwallis Ave., PO Box 12195 - BRQA/502 Research Triangle Park, NC 27709-2195 US Phone: +1 919 254 7798 EMail: narten@us.ibm.com