RFC 7841
RFC Streams, Headers, and Boilerplates
RFC 7841: RFC Streams, Headers, and Boilerplates π
Okay bestie, this is RFC 7841 π¦ It's an Informational doc from the Internet Architecture Board (IAB), dated May 2016 (ISSN 2070-1721). The editors are J. Halpern, L. Daigle, and O. Kolkman, all marked "Ed." And it obsoletes RFC 5741 π
Abstract
RFC documents have a bunch of fixed bits, like the title page header, standard boilerplates, and copyright/IPR statements π This doc describes them and introduces some updates so they match how RFCs are used and published today. The big goal is to make it super clear where an RFC came from and how it was reviewed π It obsoletes RFC 5741, moves the detailed content over to an IAB web page, and gets things ready for more flexible output formats β¨
Status of This Memo
This document is not an Internet Standards Track specification; it is published for informational purposes πΈ
This document is a product of the Internet Architecture Board (IAB) and represents information that the IAB has deemed valuable to provide for permanent record. It represents the consensus of the Internet Architecture Board (IAB). Documents approved for publication by the IAB are not a candidate for any level of Internet Standard; see Section 2 of RFC 5741. Not a candidate for any Internet Standard, periodt π
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc7841 π§
Copyright Notice
Copyright (c) 2016 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. Read the fine print, bestie π«Ά
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. RFC Streams and Internet Standards . . . . . . . . . . . . . 3
3. RFC Structural Elements . . . . . . . . . . . . . . . . . . . 3
3.1. The Title Page Header . . . . . . . . . . . . . . . . . . 4
3.2. The Status of This Memo . . . . . . . . . . . . . . . . . 5
3.3. Paragraph 1 . . . . . . . . . . . . . . . . . . . . . . . 5
3.4. Paragraph 2 . . . . . . . . . . . . . . . . . . . . . . . 5
3.5. Paragraph 3 . . . . . . . . . . . . . . . . . . . . . . . 6
3.6. Noteworthy . . . . . . . . . . . . . . . . . . . . . . . 6
4. Additional Notes . . . . . . . . . . . . . . . . . . . . . . 6
5. Other Structural Information in RFCs . . . . . . . . . . . . 6
6. Security Considerations . . . . . . . . . . . . . . . . . . . 7
7. RFC Editor Considerations . . . . . . . . . . . . . . . . . . 7
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . 7
Appendix A. Initial Formatting Details . . . . . . . . . . . . . 10
A.1. RFC Title Page Header . . . . . . . . . . . . . . . . . . 10
A.2. Constructing a "Status of This Memo" Section . . . . . . 10
A.2.1. First Paragraph . . . . . . . . . . . . . . . . . . . 11
A.2.2. Second Paragraph . . . . . . . . . . . . . . . . . . 11
A.2.3. Third Paragraph . . . . . . . . . . . . . . . . . . . 13
IAB Members at Time of Approval . . . . . . . . . . . . . . . . . 13
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 13
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14
1. Introduction β¨
Back in the day, RFCs (for example, [RFC4844]) had a bunch of elements that were there for historical, practical, and legal reasons π They also had boilerplate to make the document's status super clear, and sometimes they included "Notes" explaining how the doc interacts with IETF Standards-Track documents.
As the RFC Series has grown over the years, people have become more and more concerned about labeling. Each RFC's status, and the status of the work it describes, needs to be obvious π The main thing is that RFCs published through the IETF's review process should not be easily confused with RFCs that had a very different review and approval process π« Lots of little adjustments have been made over the years, including changes to the text of the "Notes" in published RFCs.
Now that the different RFC streams exist [RFC4844], it makes sense to formally define the pieces of standard RFC boilerplate and tweak things so the document status is clearer and lines up with the review and approval process for each stream π
This memo identifies and describes the common elements of the RFC boilerplate structure. It describes the content required for each kind of information. The exact text and layout details are left to a web page maintained by the IAB, with due consultation with the community, because that's easier to maintain π οΈ This document obsoletes [RFC5741].
The changes in this memo should be implemented as soon as practically possible after the document has been approved for publication β°
2. RFC Streams and Internet Standards π
Heads up, users of RFCs: all Internet Standards-related documents are published as RFCs, but not all RFCs are Internet Standards-related documents π
The IETF is responsible for maintaining the Internet Standards Process, which covers the requirements for developing, reviewing, and approving Standards Track and BCP RFCs. The IETF also produces non-Standards-Track documents (Informational, Experimental, and Historic). All documents published as part of the IETF Stream are reviewed by the appropriate IETF bodies π
Documents published in streams other than the IETF stream are not generally reviewed by the IETF for things like security, congestion control, or inappropriate interaction with deployed protocols. They also haven't been approved by the Internet Engineering Steering Group (IESG), including an IETF-wide last call. So, for any non-IETF stream document, the IETF disclaims any knowledge of whether that RFC is fit for any purpose. Not its problem, ngl π
For current details on the IETF process and RFC streams, refer to [RFC2026], [RFC5742], [RFC4844], [RFC6410], and [RFC7127] and their successors π
3. RFC Structural Elements ποΈ
This section describes the elements that are commonly found in RFCs published today. This document specifies the information that is required in these publications. The exact textual values required in them are given by an IAB web page (https://www.iab.org/documents/headers-boilerplate) π§
As noted above, the IAB maintains this web page with due consultation with the community. If the IAB decides to change this material after that consultation, the changes will be announced the same way as other IAB statements π£ The initial text for that web page is included in Appendix A.
3.1. The Title Page Header π
The information at the front of the RFC includes the name and affiliation of the authors, plus the RFC publication month and year.
There's also some additional information that's needed at the front of the RFC. Historically, this was presented with the information below in a left-hand column, and the author-related information described above in the right-hand one π
<document source>: This describes the area where the work originates. Historically, all RFCs were labeled "Network Working Group". Network Working Group refers to the original version of today's IETF, when people from the original set of ARPANET sites (and anyone else who was interested, since the meetings were open) got together to discuss, design, and document proposed protocols [RFC3]. Here, we obsolete the term "Network Working Group" in order to indicate the originating stream πͺ¦
The <document source> is the name of the RFC stream, as defined in [RFC4844] and its successors. At the time of this publication, the streams, and therefore the possible entries, are:
- Internet Engineering Task Force
- Internet Architecture Board
- Internet Research Task Force
- Independent Submission
Request for Comments: <RFC number>: This indicates the RFC number, assigned by the RFC Editor upon publication of the document. This element is unchanged π’<subseries ID> <subseries number>: Some document categories are also labeled as a subseries of RFCs. These elements appear as appropriate for such categories, indicating the subseries and the document's number within that series. Currently, there are subseries for BCPs [RFC2026] and STDs [RFC1311]. These subseries numbers may appear in several RFCs. For example, when a new RFC obsoletes or updates an old one, the same subseries number is used. Also, several RFCs may be assigned the same subseries number: a single STD, for example, may be made up of several RFCs, each of which bears the same STD number. This element is unchanged π§©[<RFC relation>:<RFC number[s]>]: Some relations between RFCs in the series are explicitly noted in the RFC header. For example, a new RFC may update one or more earlier RFCs. Currently two relationships are defined: "Updates" and "Obsoletes" [RFC7322]. Variants like "Obsoleted by" are also used (e.g, in [RFC5143]). Other types of relationships may be defined by the RFC Editor and may appear in future RFCs πCategory: <category>: This indicates the initial RFC document category of the publication. These are defined in [RFC2026]. Currently, this is always one of: Standards Track, Best Current Practice, Experimental, Informational, or Historic. This element is unchanged π·οΈ
3.2. The Status of This Memo π
The "Status of This Memo" describes the category of the RFC, including the distribution statement.
The "Status of This Memo" starts with a single sentence describing the status. It also includes a statement describing the stream-specific review of the material (which depends on the stream). This is an important part of the status, because it clarifies the breadth and depth of review and helps the reader understand how to consider the content π§
3.3. Paragraph 1 β¨
The first paragraph of the "Status of This Memo" section contains a single sentence that clearly stands out. The sentence clearly identifies the stream-specific status of the document. The text is defined by the stream, with a review for clarity by the IAB and RFC Series Editor π
3.4. Paragraph 2 π¦
The second paragraph of the "Status of This Memo" includes a paragraph describing the type of review and exposure the document has received. This is defined on a per-stream basis, subject to general review and oversight by the RFC Editor and IAB. The IAB defines a specific structure to ensure there's clarity about review processes and document types πΈ
3.5. Paragraph 3 π
okay so the boilerplate ends by pointing you to where the more relevant info lives π that info may include, at the RFC Editor's discretion, whether the RFC has been updated or obsoleted, where it came from, a list of possible errata, how to send feedback and suggestions, and how to submit errata as described in [ERRATA]. the exact wording and URL can change (again, at the RFC Editor's discretion), but the current text is:
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/<static-path>/rfc<rfc-no>.
3.6. Noteworthy β¨
bestie, pay attention here π paragraphs 1 and 2 of the boilerplate show a document's initial status. after that, documents can change status, for example to Historic π°οΈ the document itself can't reflect that, so it will need be reflected in the information referred to in Section 5. π
4. Additional Notes π
exceptionally, a review and publication process may prescribe additional notes that show up as labeled notes after the "Abstract" π
this isn't a common thing in recent RFCs anymore π the goal of this document is to keep the overall RFC structure clear enough that these notes are unnecessary or (at the very least) truly exceptional πΈ
5. Other Structural Information in RFCs π§
RFCs have other structural info elements too π the RFC Editor is responsible for where these go and how they're laid out. also, new elements may be introduced or obsoleted through a process consistent with [RFC4844], and those additions may or may not need documenting in an RFC.
right now, these are the structural info bits you can find in RFCs:
- Copyright Notice: a copyright notice that references BCP 78 [BCP78], plus an Intellectual Property statement that refers to BCP 78 and BCP 79 [BCP79]. the content of these statements is defined by those BCPs π
- ISSN: the International Standard Serial Number [ISO.3297.2007], shown as
ISSN 2070-1721. the ISSN uniquely identifies the RFC series as a title, no matter the language or country it's published in. it has no significance beyond uniquely identifying a serial publication π’
6. Security Considerations π¨
this document tries to clarify the descriptions of the status of an RFC π₯ misunderstanding the status of a memo could cause interoperability problems, and therefore security and stability problems π this is serious, bestie, don't skip it!
7. RFC Editor Considerations π
the RFC Editor keeps the RFC series consistent π to do that, they maintain an "RFC Style Guide" [RFC7322]. this memo mentions a few explicit structural elements the RFC Editor needs to maintain, and the conventions for the content and use of all current and future elements are written down in the style guide π
putting a reference to the stream in the header of RFCs is only one way to show which stream an RFC came from β¨ the RFC Editor is encouraged to add that indication in other places too, for example in indices and interfaces π¦
8. References π
8.1. Normative References π―
[RFC2026] Bradner, S., "The Internet Standards Process -- Revision
3", BCP 9, RFC 2026, DOI 10.17487/RFC2026, October 1996,
<http://www.rfc-editor.org/info/rfc2026>.
[RFC5742] Alvestrand, H. and R. Housley, "IESG Procedures for
Handling of Independent and IRTF Stream Submissions",
BCP 92, RFC 5742, DOI 10.17487/RFC5742, December 2009,
<http://www.rfc-editor.org/info/rfc5742>.
8.2. Informative References π
[ISO.3297.2007]
Technical Committee ISO/TC 46, Information and
documentation, Subcommittee SC 9, Identification and
description., "Information and documentation -
International standard serial number (ISSN)", ISO Standard
3297, 09 2007.
[RFC3] Crocker, S., "Documentation conventions", RFC 3,
DOI 10.17487/RFC0003, April 1969,
<http://www.rfc-editor.org/info/rfc3>.
[RFC1311] Postel, J., "Introduction to the STD Notes", RFC 1311,
DOI 10.17487/RFC1311, March 1992,
<http://www.rfc-editor.org/info/rfc1311>.
[RFC4844] Daigle, L., Ed. and Internet Architecture Board, "The RFC
Series and RFC Editor", RFC 4844, DOI 10.17487/RFC4844,
July 2007, <http://www.rfc-editor.org/info/rfc4844>.
[RFC5143] Malis, A., Brayley, J., Shirron, J., Martini, L., and S.
Vogelsang, "Synchronous Optical Network/Synchronous
Digital Hierarchy (SONET/SDH) Circuit Emulation Service
over MPLS (CEM) Encapsulation", RFC 5143,
DOI 10.17487/RFC5143, February 2008,
<http://www.rfc-editor.org/info/rfc5143>.
[RFC5741] Daigle, L., Ed., Kolkman, O., Ed., and IAB, "RFC Streams,
Headers, and Boilerplates", RFC 5741,
DOI 10.17487/RFC5741, December 2009,
<http://www.rfc-editor.org/info/rfc5741>.
[RFC6410] Housley, R., Crocker, D., and E. Burger, "Reducing the
Standards Track to Two Maturity Levels", BCP 9, RFC 6410,
DOI 10.17487/RFC6410, October 2011,
<http://www.rfc-editor.org/info/rfc6410>.
[RFC7127] Kolkman, O., Bradner, S., and S. Turner, "Characterization
of Proposed Standards", BCP 9, RFC 7127,
DOI 10.17487/RFC7127, January 2014,
<http://www.rfc-editor.org/info/rfc7127>.
[RFC7322] Flanagan, H. and S. Ginoza, "RFC Style Guide", RFC 7322,
DOI 10.17487/RFC7322, September 2014,
<http://www.rfc-editor.org/info/rfc7322>.
[ERRATA] Hagens, A., Ginoza, S., and R. Braden, "RFC Editor
Proposal for Handling RFC Errata", Work in Progress,
draft-rfc-editor-errata-process-02, May 2008.
[BCP78] Bradner, S., Ed. and J. Contreras, Ed., "Rights
Contributors Provide to the IETF Trust", BCP 78, RFC 5378,
November 2008, <http://www.rfc-editor.org/info/bcp78>.
[BCP79] Bradner, S., Ed., "Intellectual Property Rights in IETF
Technology", BCP 79, RFC 3979, DOI 10.17487/RFC3979, March
2005.
Narten, T., "Clarification of the Third Party Disclosure
Procedure in RFC 3979", BCP 79, RFC 4879,
DOI 10.17487/RFC4879, April 2007.
<http://www.rfc-editor.org/info/bcp79>
Appendix A. Initial Formatting Details π
this section has the text the IAB originally used to fill in the web page they use to keep track of the required verbiage π§
A.1. RFC Title Page Header π
here's how an RFC title page header looks π
------------------------------------------------------------------------
<document source> <author name>
Request for Comments: <RFC number> [<author affiliation>]
[<subseries ID> <subseries number>] [more author info as appropriate]
[<RFC relation>:<RFC number[s]>]
Category: <category>
<month year>
------------------------------------------------------------------------
and here's an example, the header for RFC 6410 π¦
------------------------------------------------------------------------
Internet Engineering Task Force (IETF) R. Housley
Request for Comments: 6410 Vigil Security
BCP: 9 D. Crocker
Updates: 2026 Brandenburg InternetWorking
Category: Best Current Practice E. Burger
ISSN: 2070-1721 Georgetown University
October 2011
------------------------------------------------------------------------
A.2. Constructing a "Status of This Memo" Section π§©
the sections below describe the mandated text for specific parts of the "Status of This Memo" portion of an RFC π
for convenience, the RFC Editor keeps example expansions of every permutation of the paragraphs in this document (as of publication, at http://www.rfc-editor.org/materials/status-memos.txt). if they ever conflict, the sections below are the authority π
A.2.1. First Paragraph β¨
these are the approved texts for the first paragraph of the "Status of This Memo" portion of an RFC. see Section 3.3 of RFC 7841 π
For 'Standards Track' documents: "This is an Internet Standards Track document."
For 'Best Current Practices' documents: "This memo documents an Internet Best Current Practice."
For other categories "This document is not an Internet Standards Track specification; <it is published for other purposes>."
For Informational, Experimental, Historic, and future categories of RFCs, the RFC Editor will maintain appropriate text for <it is published for other purposes>. the initial values are:
Informational: "it is published for informational purposes."
Historic: "it is published for the historical record."
Experimental: "it is published for examination, experimental implementation, and evaluation."
A.2.2. Second Paragraph β¨
See Section 3.4 of RFC 7841.
okay bestie, the second paragraph can carry some text that's specific to the document's category π when a document is Experimental or Historic, it opens with one of these:
- Experimental: "This document defines an Experimental Protocol for the Internet community."
- Historic: "This document defines a Historic Document for the Internet community."
the text that follows is stream dependent π these are just starting values, and they can get updated by stream definition document updates and get recorded by the IAB on the web page. so it's less of a fixed script and more of a living list π
- IETF Stream: "This document is a product of the Internet Engineering Task Force (IETF)."
- if there has been an IETF consensus call per IETF process, add this bit too: "It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG)." if there hasn't been one, it just reads: "It has been approved for publication by the Internet Engineering Steering Group (IESG)."
- IAB Stream: "This document is a product of the Internet Architecture Board (IAB), and represents information that the IAB has deemed valuable to provide for permanent record."
- if the document represents IAB consensus, this extra text should be added: "It represents the consensus of the Internet Architecture Board (IAB)."
- IRTF Stream: "This document is a product of the Internet Research Task Force (IRTF). The IRTF publishes the results of Internet-related research and development activities. These results might not be suitable for deployment."
- a sentence about the consensus base within the IRTF can also be added π§ either "This RFC represents the consensus of the
<insert_name>Research Group of the Internet Research Task Force (IRTF)." or "This RFC represents the individual opinion(s) of one or more members of the<insert_name>Research Group of the Internet Research Task Force (IRTF)"
- a sentence about the consensus base within the IRTF can also be added π§ either "This RFC represents the consensus of the
- Independent Submission Stream: "This is a contribution to the RFC Series, independently of any other RFC stream. The RFC Editor has chosen to publish this document at its discretion and makes no statement about its value for implementation or deployment." π¦
for non-IETF stream documents, there's a reference to Section 2 of this RFC, added with this sentence: "Documents approved for publication by the [stream approver -- currently, one of: "IAB", "IRSG", or "RFC Editor"] are not a candidate for any level of Internet Standard; see Section 2 of RFC 7841."
for IETF stream documents, a similar reference shows up. for BCP and Standard Track documents it's: "Further information on (BCPs or Internet Standards) is available in Section 2 of RFC 7841." and for all other categories it's: "Not all documents approved by the IESG are a candidate for any level of Internet Standards; see Section 2 of RFC 7841." π«Ά
A.2.3. Third Paragraph
See Section 3.5 of RFC 7841.
IAB Members at Time of Approval
the IAB members at the time this memo was approved were (in alphabetical order) π
- Jari Arkko
- Mary Barnes
- Marc Blanchet
- Ralph Droms
- Ted Hardie
- Joe Hildebrand
- Russ Housley
- Erik Nordmark
- Robert Sparks
- Andrew Sullivan
- Dave Thaler
- Brian Trammell
- Suzanne Woolf
Acknowledgements
thanks to Bob Braden, Brian Carpenter, Steve Crocker, Sandy Ginoza, and John Klensin π who provided background information and inspiration.
thanks to the members of the RFC Series Oversight Committee (RSOC) for assistance and review: Alexey Melnikov, Nevil Brownlee, Bob Hinden, Sarah Banks, Robert Sparks, Tony Hansen, and Joe Hildebrand. πΈ
various people made suggestions that improved the document. among them are: Lars Eggert, Alfred Hoenes, and Joe Touch. β¨
Authors' Addresses
Joel M. Halpern (editor)
Email: jmh@joelhalpern.com
Leslie Daigle (editor)
Email: ldaigle@thinkingcat.com
Olaf M. Kolkman (editor)
Email: kolkman@isoc.orgπ¦
π¦ where this page comes from
- ietf: rfc7841 2016-05
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms