Internet DRAFT - draft-cotton-rfc4020bis
draft-cotton-rfc4020bis
Network Working Group M. Cotton
Internet-Draft ICANN
Obsoletes: 4020 (if approved) October 16, 2013
Intended status: BCP
Expires: April 19, 2014
Early IANA Allocation of Standards Track Code Points
draft-cotton-rfc4020bis-02
Abstract
This memo describes the process for early allocation of code points
by IANA from registries for which "Specification Required", "RFC
Required", "IETF Review", or "Standards Action" policies apply. This
process can be used to alleviate the problem where code point
allocation is needed to facilitate desired or required implementation
and deployment experience prior to publication of an RFC that would
normally trigger code point allocation.
This document obsoletes RFC 4020.
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 April 19, 2014.
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
Cotton Expires April 19, 2014 [Page 1]
Internet-Draft Early IANA Allocation October 2013
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 . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Conditions for Early Allocation . . . . . . . . . . . . . . . . 4
3. Process for Early Allocation . . . . . . . . . . . . . . . . . 4
3.1. Request . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2. Follow-Up . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.3. Expiry . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7
5. Security Considerations . . . . . . . . . . . . . . . . . . . . 7
6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8
6.1. Normative References . . . . . . . . . . . . . . . . . . . 8
6.2. Informative References . . . . . . . . . . . . . . . . . . 8
Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8
Cotton Expires April 19, 2014 [Page 2]
Internet-Draft Early IANA Allocation October 2013
1. Introduction
In protocol specifications documented in RFCs, there is often a need
to allocate code points for various objects, messages, or other
protocol entities so that implementations can interoperate. Many of
these code point spaces have registries handled by the Internet
Assigned Number Authority (IANA). Several IANA allocation policies
are described in RFC 5226 [RFC5226]. Some of them, such as "First
Come First Served" or "Expert Review", do not require a formal IETF
action before the IANA performs allocation. However, in situations
where code points are a scarce resource and/or the IETF community has
consensus to retain tight control of the registry content, policies
such as "IETF Review" (formerly "IETF Consensus"), or "Standards
Action" have been used. Such allocation policies represents a
problem in situations where implementation and/or deployment
experience are desired or required before the document becomes an
RFC.
To break the deadlock, document authors often choose some "seemingly
unused" code points, often by selecting the next available value from
the registry; these may turn out to be different from those later
assigned by IANA. To make this problem worse, "pre-RFC"
implementations are often developed and deployed based on these code
point selections. This creates several potential interoperability
problems between early implementations and implementations of the
final standard, as described below:
1. IANA allocates code points different from those that early
implementations assumed would be allocated. Early
implementations won't interoperate with standard ones.
2. IANA allocates code points for one extension while a "pre-RFC"
implementation of a different extension chooses the same code
point. The different extensions will collide on the same code
point in the field.
This gets in the way of the main purpose of standards; namely, to
facilitate interoperable implementations.
It is easy to say that pre-RFC implementations should be kept private
and should not be deployed; however, both the length of the standards
process and the immense value of early implementations and early
deployments suggest finding a better solution. As an example, in the
case of documents produced by Working Groups in the Routing Area, a
pre-RFC implementation is highly desirable and sometimes even
required [RFC4794], and early deployments provide useful feedback on
the technical and operational quality of the specification.
Cotton Expires April 19, 2014 [Page 3]
Internet-Draft Early IANA Allocation October 2013
This memo addresses the early allocation of code points so that
reservations are made in the IANA registries before the publication
of an RFC. The early allocation mechanisms are applied only to
spaces whose allocation policy is "Specification Required" (where an
RFC is used as the stable reference), "RFC Required", "IETF Review",
or "Standards Action". For an explanation of these allocation
policies, see [RFC5226].
A policy for IANA early allocations was previously described in
[RFC4020]. This document obsoletes RFC 4020 and adds other
registration procedures to the types of registries that can qualify
for early allocation.
2. Conditions for Early Allocation
The following conditions must hold before a request for early
allocation of code points will be considered by IANA:
a. The code points must be from a space designated as "RFC
Required", "IETF Review", or "Standards Action". Additionally
code points from a "Specification Required" are allowed if the
specification will be published as an RFC.
b. The format, semantics, processing, and other rules related to
handle the protocol entities defined by the code points
(henceforth called "specifications") must be adequately described
in an Internet-Draft.
c. The specifications of these code points must be stable; i.e., if
there is a change, implementations based on the earlier and later
specifications must be seamlessly interoperable.
d. The working group chairs and ADs judge that there is sufficient
interest in the community for early (pre-RFC) implementation and
deployment, or that failure to make an early allocation might
lead to contention for the code point in the field.
3. Process for Early Allocation
There are three processes associated with early allocation: making
the request for code points; following up on the request; and
revoking an early allocation. It cannot be emphasized enough that
these processes must have a minimal impact on IANA itself, or they
will not be feasible.
The processes described below assume that the document in question is
Cotton Expires April 19, 2014 [Page 4]
Internet-Draft Early IANA Allocation October 2013
the product of an IETF Working Group. If this is not the case,
replace "WG chairs" below with "Shepherding Area Director".
3.1. Request
The process for requesting and obtaining early allocation of code
points is as follows:
1. The authors (editors) of the document submit a request for early
allocation to the Working Group chairs, specifying which code
points require early allocation and which document they should be
assigned to.
2. The WG chairs determine whether the conditions for early
allocations described in section 2 are met; particularly,
conditions (c) and (d).
3. The WG chairs gauge whether there is consensus within the WG that
early allocation is appropriate in the case of the given
document.
4. If steps 2) and 3) are satisfied, the WG chairs request approval
of the Area Director(s). The Area Director(s) may apply
judgement to the request especially if there is a risk of
registry depletion.
5. If the Area Directors approve step 4, the WG chairs request IANA
to make an early allocation.
6. IANA makes an allocation from the appropriate registry, marking
it as "Temporary", valid for a period of one year from the date
of allocation. The date of first allocation and the date of
expiry are also recorded in the registry and made visible to the
public.
Note that Internet-Drafts should not include a specific value of a
code point until IANA has completed the early allocation for this
value.
3.2. Follow-Up
It is the responsibility of the document authors and the Working
Group chairs to review changes in the document, and especially in the
specifications of the code points for which early allocation was
requested, to ensure that the changes are backward compatible. If at
some point changes that are not backward compatible are nonetheless
required, a decision needs to be made as to whether previously
allocated code points must be deprecated (see section 3.3 for more
Cotton Expires April 19, 2014 [Page 5]
Internet-Draft Early IANA Allocation October 2013
information on code point deprecation). The considerations include
aspects such as the possibility of existing deployments of the older
implementations and, hence, the possibility for a collision between
older and newer implementations in the field. If the document
progresses to the point at which IANA normally makes code point
allocations, it is the responsibility of the authors and the WG
chairs to remind IANA that there were early allocations, and of the
code point values so allocated, in the IANA Considerations section of
the RFC-to-be. Allocation is then just a matter of removing the
"Temporary" tag from the allocation description.
3.3. Expiry
As described in Section 3.1, each Temporary assignment is recorded in
the registry with the date of expiry of the assignment. If an early
allocation expires before the document progresses to the point where
IANA normally makes allocations, the authors and WG chairs may repeat
the process in section 3.1 to request renewal of the code points. At
most, one renewal request may be made; thus, authors should choose
carefully when the original request is to be made.
As an exception to the above rule, under rare circumstances, more
than one allocation renewal may be justified. All such further
renewal requests must be reviewed by the IESG. The renewal request
to the IESG must include the reasons why such further renewal is
necessary, and the WG's plans regarding the specification.
If a follow-up request is not made, or the document fails to progress
to an RFC, the assignment will remain visible in the registry but the
temporary assignment will be shown to have expired as indicated by
the expiry date. The WG chairs are responsible for informing IANA
that the expired assignments are not required and that the code
points are to be marked "deprecated".
A deprecated code point is not marked as allocated for use as
described in any document (that is, it is not allocated), and is not
available for allocation in a future document. The WG chairs may
inform IANA that a deprecated code point can be completely de-
allocated (i.e., made available for new allocations) at any time
after it has been deprecated. Factors influencing this decision will
include whether there may be implementations using the previous
temporary allocation, and the availability of other unallocated code
points in the registry.
Implementers and deployers need to be aware that this deprecation and
de-allocation could take place at any time after expiry, and an
expired early allocation is therefore best considered as deprecated.
Cotton Expires April 19, 2014 [Page 6]
Internet-Draft Early IANA Allocation October 2013
It is not IANA's responsibility to track the status of allocations,
their expiration, or when they may be re-allocated.
Note that if a document is submitted for review to the IESG and at
the time of submission some early allocations are valid (not
expired), these allocations must not be considered to have expired
while the document is under IESG consideration or waiting in the RFC
Editor's queue after approval by the IESG.
4. IANA Considerations
This document defines procedures for early allocation of code points
in the registries with the "Specification Required", "RFC Required",
"IETF Review", and "Standards Action" policies and as such directly
affects IANA. This document removes the need for registries to be
marked as specifically allowing early allocation. IANA is requested
to clean up the registries by removing any such markings.
5. Security Considerations
It is important to keep in mind 'denial of service' attacks on IANA
as a result of the processes in this memo. There are two that are
immediately obvious: depletion of code space by early allocations and
process overloading of IANA itself. The processes described here
attempt to alleviate both of these, but they should be subject to
scrutiny by IANA to ensure protection, and IANA may at any time
request the IESG to suspend the procedures described in this
document.
There is a significant concern that the procedures in this document
could be used as an end-run on the IETF process to achieve code point
allocation when an RFC will not be published. For example, a WG or a
WG chair might be put under pressure to obtain an early allocation
for a protocol extension for a particular company or for another SDO
even though it might be predicted that an IETF LC or IESG Evaluation
would reject the approach that is documented. The requirement for AD
consent of early review is an important safe-guard, and ADs with any
concern are strongly recommended to escalate the issue for IESG-wide
discussion.
6. References
Cotton Expires April 19, 2014 [Page 7]
Internet-Draft Early IANA Allocation October 2013
6.1. Normative References
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
May 2008.
6.2. Informative References
[RFC4020] Kompella, K. and A. Zinin, "Early IANA Allocation of
Standards Track Code Points", BCP 100, RFC 4020,
February 2005.
[RFC4794] Fenner, B., "RFC 1264 Is Obsolete", RFC 4794,
December 2006.
Appendix A. Acknowledgments
Many thanks to Bert Wijnen, Adrian Farrel, and Bill Fenner for their
input on RFC 4020. Thank you to Kireeti Kompella and Alex Zinin for
authoring RFC4020. Thank you to Adrian Farrel, Stewart Bryant, Leo
Vegoda, John Klensin, Subramanian Moonesamy, Loa Andersson, Tom
Petch, Robert Sparks and Eric Rosen for their reviews of this
document.
Author's Address
Michelle Cotton
Internet Corporation for Assigned Names and Numbers
12025 Waterfront Drive, Suite 300
Los Angeles, CA 90094-2536
United States of America
Phone: +1-310-823-5800
Email: michelle.cotton@icann.org
URI: http://www.icann.org/
Cotton Expires April 19, 2014 [Page 8]