[Search] [txt|pdfized|bibtex] [Tracker] [Email] [Nits]
Versions: 00                                                            
Network Working Group                                           A. Roach
Internet-Draft                                                   Mozilla
Intended status: Best Current Practice                      May 07, 2019
Expires: November 8, 2019

       Process for Handling Non-Major Revisions to Existing RFCs


   This document discusses mechanisms the IETF has historically used for
   updating RFCs subsequent to their publication, and outlines an
   updated procedure for publishing newer versions (colloquially known
   as "bis versions") that is appropriate in certain circumstances.
   This procedure is expected to be easier for both authors and
   consumers of RFCs.

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 November 8, 2019.

Copyright Notice

   Copyright (c) 2019 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

Roach                   Expires November 8, 2019                [Page 1]

Internet-Draft         Minor -bis Document Process              May 2019

   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Processing for Revised Documents  . . . . . . . . . . . . . .   4
     3.1.  Basic Qualifications  . . . . . . . . . . . . . . . . . .   4
     3.2.  Document Evaluation Process . . . . . . . . . . . . . . .   5
     3.3.  Deprecated Technology . . . . . . . . . . . . . . . . . .   5
   4.  Implications for Other Documents  . . . . . . . . . . . . . .   6
   5.  To-Do . . . . . . . . . . . . . . . . . . . . . . . . . . . .   6
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .   7
   8.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .   7
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     9.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   [RFC2026] defines the Internet Standards Process, largely focusing on
   the handling of the RFC publication process.  Part of this process as
   originally envisioned includes republication of documents under a
   number of circumstances, such as when a document is progressed
   towards Internet Standard status.  The circumstances that
   necessitated republication originally also included various fixes to
   the contents of the documents; for example, RFC 2026 specifies:

      [A]n important typographical error, or a technical error that does
      not represent a change in overall function of the specification,
      may need to be corrected immediately.  In such cases, the IESG or
      RFC Editor may be asked to republish the RFC (with a new number)
      with corrections...

   In the intervening years since the publication of RFC 2026, various
   additional mechanisms have emerged to deal with minor updates to
   existing, published RFCs.  The RFC Editor maintains a set of errata
   associated with published documents.  These errata are intended for
   use when the intention of the document can be deduced, but the
   expression of the intention is imperfect (e.g., it contains a
   typographical error or is ambiguous in its phrasing).  Notably,
   errata cannot be used to change the intended meaning of a document
   from that which was originally intended.

Roach                   Expires November 8, 2019                [Page 2]

Internet-Draft         Minor -bis Document Process              May 2019

   Additionally, it is increasingly common to publish new, relatively
   small RFCs whose sole purpose is to update the functioning of an
   existing RFC.  Such documents are frequently formatted in a way that
   specifies an original text block that is to be replaced with a new
   text block.  In some cases, such as [RFC8035], these documents
   contain a single straightforward update.  In others, such as
   [RFC8540], several updates are bundled together in a single document.
   It should be noted that not all such updates are defined in a form
   that specifies old-text/new-text blocks; for example, [RFC7647]
   describes updates to an existing document in simple prose, but it is
   semantically the same as documents that perform text replacement.

   An unfortunate consequence of this approach to updating RFCs is that
   consumers of such documents are left with no authoritative, correct
   version of a document.  Instead, they must read the base document,
   and then mentally apply the updates specified by each successor
   document that has updated it in this fashion.  As a secondary
   concern, the production of such documents is complicated by the need
   for authors, contributors, and reviewers to flip back-and-forth
   between the base document and the updating document; and if multiple
   RFCs update a base document in sequence, this problem is compounded
   even further.

   One major concern that drives these incremental document updates is
   that an attempt to republish an RFC as originally described in RFC
   2026 can result in such an effort being bogged down by issues that
   exist in text unrelated to the desired changes.  Such issues can
   arise from a change in the consensus of the IETF around best current
   practices, such as in the areas of security, privacy, or
   architectural design of an underlying protocol.  This complication
   arises from the fact that processing of an updated full version of an
   RFC is procedurally identical to processing of a green-field
   definition of a new protocol: review by the IETF at large, and review
   by the IESG, are performed on the entire document, leaving legacy
   text open to comments that will delay - and occasionally block -
   publication of such documents.

   In order to address this concern, this document proposes new
   guidelines intended to reduce the barriers to publication of updated
   documents, and to reduce the load on reviewers during IETF and IESG

2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "OPTIONAL" in this document are to be interpreted as described in BCP

Roach                   Expires November 8, 2019                [Page 3]

Internet-Draft         Minor -bis Document Process              May 2019

   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  Processing for Revised Documents

   At a high level, the process described in this document allows bis
   versions of documents to be processed along with a request to review
   teams, directorates, the IETF community, and the IESG that any
   reviews primarily take into consideration the changes to the
   document, rather than the document as a whole.  While these requests
   do not strictly preclude feedback and discussion of the unchanged
   portions of bis documents, reviewers are expected to take them under
   serious consideration.

   Note that the process described in this document exclusively
   considers IETF-stream documents.

3.1.  Basic Qualifications

   In order to be considered for the processing described in this
   document, a bis update needs to satisfy the following criteria:

   1.  The document must formally obsolete (not update) an existing RFC.

   2.  The changes from the document being obsoleted must not constitute
       the majority of the document.  This is a subjective evaluation,
       not a mathematical one.

   3.  Except as detailed in verified errata, the document does not
       contain spurious changes (such as reformatting) in sections other
       than those containing substantive updates.

   4.  The document SHOULD contain an appendix detailing the changes
       from the RFC it is replacing.  Any change for which the rationale
       is not abundantly obvious should be explained in this appendix.

   5.  The publication track of the new document MUST be the same as the
       document that is being replaced (for example, the process cannot
       be used when obsoleting an Experimental document with a Standards
       Track one)

   6.  The AD sponsoring the document must explicitly approve the use of
       the process described in this document.

   Although not a strict qualification, working groups and authors of
   documents using this process should carefully evaluate all verified
   errata on the original RFC and all RFCs that formally update the

Roach                   Expires November 8, 2019                [Page 4]

Internet-Draft         Minor -bis Document Process              May 2019

   original RFC to determine which, if any, the new document should

3.2.  Document Evaluation Process

   When an author or working group wish to request publication of a bis
   document with targeted review of limited changes, the following
   considerations are applied.

   1.  The shepherd's write-up includes a statement indicating that the
       qualifications outlined in Section 3.1 are satisfied, and asking
       for the processing described in this document.

   2.  The "Last-Call notification" that is specified by RFC 2026
       section 6.1.2 will include a prominent notification stating:
       "This document is being published according to the process
       defined in RFC XXXX.  While reading the entire contents of the
       document will provide useful context to reviewers, the IESG is
       primarily soliciting input regarding the changed portions of the
       document at this time".

   3.  The "Last-Call notification" MUST also include a pointer to a
       mechanically-generated diff file that exhaustively indicates the
       changes between the bis document and the document it is

   4.  As part of the IESG's evaluation of the document, its sponsoring
       AD will communicate to the IESG that processing is requested
       according to the procedures in this document.  This communication
       will request that the IESG focus on the changes from the
       obsoleted RFC.  IESG members SHOULD NOT issue DISCUSS or ABSTAIN
       ballot positions based on unchanged text except as described in
       Section 3.3.  In the rare case that such positions are balloted,
       they need to balance the scope of changes between existing RFC
       and bis document against the amount of work required to address
       potential comments.

3.3.  Deprecated Technology

   One major change that results from the application of the procedure
   described in this document is that the IETF may re-publish older text
   that describes approaches to protocol design that are no longer
   considered safe, advisable, or appropriate.  To avoid this re-
   publication implying an endorsement by the IETF of such deprecated
   approaches, they MUST be clearly indicated in the "Introduction"
   section of the document using the following text or text
   substantially similar to it:

Roach                   Expires November 8, 2019                [Page 5]

Internet-Draft         Minor -bis Document Process              May 2019

     This document is a revision of a previously published RFC. Some
     portions of the text have not been updated and do not meet current
     best practices for documents published by the IETF.

   The introduction must then detail each specific technique in the
   document that would not generally be acceptable in newly-published

   Notably, this text might be added by the working group during
   development of the revision, as a result of IETF Last-Call or
   directorate reviews, or as part of the IESG evaluation process.  The
   need for such a notice is explicitly considered an acceptable
   rationale for an IESG member to hold a blocking position on a
   document ballot.

4.  Implications for Other Documents

   To avoid those usability issues described in Section 1, IETF-stream
   documents generally SHOULD NOT perform updates to existing RFCs by
   replacing text in such RFCs (either syntactically via "OLD TEXT"/"NEW
   TEXT" sections, or semantically by describing changes to protocol
   processing).  Instead, such updates should be performed by publishing
   new versions of existing RFCs.  Note that such new versions do not
   necessarily need to make use of the process described in this

   There may be exceptional circumstances that warrant simple text
   replacement rather than new document versions.  These cases should be
   rare and carefully considered; and documents that do so should
   contain text explaining why the publication of a new version of the
   updated document is not desirable.

5.  To-Do

   o  The text uses phrasing like "the process described in this
      document" in several places.  This is cumbersome.  Ideally, we
      would come up with a short term of art to describe this process.

6.  IANA Considerations

   This document makes no requests of IANA.  Authors of documents that
   use this process should carefully examine the "IANA Considerations"
   sections of the document they are obsoleting, and ensure that any
   IANA data pointing to the obsoleted document is updated to instead
   indicate the new document.

Roach                   Expires November 8, 2019                [Page 6]

Internet-Draft         Minor -bis Document Process              May 2019

7.  Security Considerations

   As stated in Section 3.3, this process may result in the re-
   publication of techniques, including security techniques, that are no
   longer considered safe.  During development of a bis document,
   authors and working groups are strongly encouraged to update such
   outmoded security approaches in favor of more modern ones.

   It should be noted that, while the process introduced by this
   document does not necessarily improve this situation, it is carefully
   designed to also not exacerbate the status quo.  Absent this process,
   the historical approach of issuing documents that update small
   portions of older RFCs would continue, and such outmoded security
   techniques would remain equally in effect.

8.  Acknowledgments

   Thanks to Ben Campbell and Joe Hildebrand for early conversations
   that helped inform the contents of this document, and to the 2019
   members of the IESG for helping to refine some of the more subtle
   points of handling deprecated approaches.

9.  References

9.1.  Normative References

   [RFC2026]  Bradner, S., "The Internet Standards Process -- Revision
              3", BCP 9, RFC 2026, DOI 10.17487/RFC2026, October 1996,

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/
              RFC2119, March 1997, <https://www.rfc-editor.org/info/

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

9.2.  Informative References

   [RFC7647]  Sparks, R. and A. Roach, "Clarifications for the Use of
              REFER with RFC 6665", RFC 7647, DOI 10.17487/RFC7647,
              September 2015, <https://www.rfc-editor.org/info/rfc7647>.

Roach                   Expires November 8, 2019                [Page 7]

Internet-Draft         Minor -bis Document Process              May 2019

   [RFC8035]  Holmberg, C., "Session Description Protocol (SDP) Offer/
              Answer Clarifications for RTP/RTCP Multiplexing", RFC
              8035, DOI 10.17487/RFC8035, November 2016,

   [RFC8540]  Stewart, R., Tuexen, M., and M. Proshin, "Stream Control
              Transmission Protocol: Errata and Issues in RFC 4960", RFC
              8540, DOI 10.17487/RFC8540, February 2019,

Author's Address

   Adam Roach

   Email: adam@nostrum.com

Roach                   Expires November 8, 2019                [Page 8]