Skip to main content

Evaluation of a Sample of RFCs Produced in 2018
RFC 8963

Document Type RFC - Informational (January 2021) Errata
Author Christian Huitema
Last updated 2021-01-24
RFC stream Independent Submission
Formats
IESG Responsible AD (None)
Send notices to (None)
RFC 8963


Independent Submission                                        C. Huitema
Request for Comments: 8963                          Private Octopus Inc.
Category: Informational                                     January 2021
ISSN: 2070-1721

            Evaluation of a Sample of RFCs Produced in 2018

Abstract

   This document presents the author's effort to understand the delays
   involved in publishing an idea in the IETF or through the Independent
   Stream, from the first individual draft to the publication of the
   RFC.  We analyze a set of randomly chosen RFCs approved in 2018,
   looking for history and delays.  We also use two randomly chosen sets
   of RFCs published in 2008 and 1998 for comparing delays seen in 2018
   to those observed 10 or 20 years ago.  The average RFC in the 2018
   sample was produced in 3 years and 4 months, of which 2 years and 10
   months were spent in the working group, 3 to 4 months for IETF
   consensus and IESG review, and 3 to 4 months in RFC production.  The
   main variation in RFC production delays comes from the AUTH48 phase.

   We also measure the number of citations of the chosen RFC using
   Semantic Scholar, and compare citation counts with what we know about
   deployment.  We show that citation counts indicate academic interest,
   but correlate only loosely with deployment or usage of the
   specifications.  Counting web references could complement that.

Status of This Memo

   This document is not an Internet Standards Track specification; it is
   published for informational purposes.

   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.  Documents approved for publication by
   the RFC Editor are not candidates for any level of Internet Standard;
   see Section 2 of RFC 7841.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   https://www.rfc-editor.org/info/rfc8963.

Copyright Notice

   Copyright (c) 2021 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
   (https://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.

Table of Contents

   1.  Introduction
   2.  Methodology
     2.1.  Defining the Important Milestones
     2.2.  Selecting a Random Sample of RFCs
     2.3.  Conventions Used in This Document
   3.  Analysis of 20 Selected RFCs
     3.1.  RFC 8411
     3.2.  RFC 8456
     3.3.  RFC 8446
     3.4.  RFC 8355
     3.5.  RFC 8441
     3.6.  RFC 8324
     3.7.  RFC 8377
     3.8.  RFC 8498
     3.9.  RFC 8479
     3.10. RFC 8453
     3.11. RFC 8429
     3.12. RFC 8312
     3.13. RFC 8492
     3.14. RFC 8378
     3.15. RFC 8361
     3.16. RFC 8472
     3.17. RFC 8471
     3.18. RFC 8466
     3.19. RFC 8362
     3.20. RFC 8468
   4.  Analysis of Process and Delays
     4.1.  Delays from First Draft to RFC
     4.2.  Working Group Processing Time
     4.3.  Preparation and Publication Delays
     4.4.  Copy Editing
     4.5.  Independent Stream
   5.  Citation Counts
     5.1.  Citation Numbers
     5.2.  Comparison to 1998 and 2008
     5.3.  Citations versus Deployments
     5.4.  Citations versus Web References
   6.  Observations and Next Steps
   7.  Security Considerations
   8.  IANA Considerations
   9.  Informative References
   Acknowledgements
   Author's Address

1.  Introduction

   As stated on the organization's web site, "The IETF is a large open
   international community of network designers, operators, vendors, and
   researchers concerned with the evolution of the Internet architecture
   and the smooth operation of the Internet."  The specifications
   produced by the IETF are published in the RFC series, along with
   documents from the IAB, IRTF, and Independent streams (as per RFC
   8729).  In this memo, the author attempts to understand the delays
   involved in publishing an idea in the IETF or through the Independent
   Stream, from the first individual draft to the publication of the
   RFC.  This is an individual effort, and the author's conclusions
   presented here are personal.  There was no attempt to seek IETF
   consensus.

   The IETF keeps records of documents and process actions in the IETF
   Datatracker [TRKR].  The IETF Datatracker provides information about
   RFCs and drafts, from which we can infer statistics about the
   production system.  We can measure how long it takes to drive a
   proposition from initial draft to final publication, and how these
   delays can be split between working group discussions, IETF reviews,
   IESG assessment, RFC Editor delays and final reviews by the authors
   -- or, for Independent Stream RFCs, draft production, reviews by the
   Independent Submissions Editor, conflict reviews, RFC Editor delays
   and final reviews.  Tracker data is available for all RFCs, not just
   IETF Stream RFCs.

   Just measuring production delays may be misleading.  If the IETF or
   the other streams simply rubber-stamped draft proposals and published
   them, the delays would be short but the quality and impact might
   suffer.  We hope that most of the RFCs that are published are useful,
   but we need a way to measure that usefulness.  We try to do that by
   measuring the number of references of the published RFCs in Semantic
   Scholar [SSCH], and also by asking the authors of each RFC in the
   sample whether the protocols and technologies defined in the RFCs
   were implemented and used on the Internet.  The citations measured by
   the Semantic Scholar include citations in other RFCs and in Internet-
   Drafts.  We also measure the number of references on the web, which
   provides some results but would be hard to automate.

   In order to limit the resources required for this study, we selected
   at random 20 RFCs published in 2018, as explained in Section 2.2.
   The statistical sampling picked both IETF Stream and Independent
   Stream documents.  For comparison purposes, we also selected at
   random 20 RFCs published in 1998 and 20 published in 2008.  Limiting
   the sample to 20 out of 209 RFCs published in 2018 allows for in-
   depth analysis of each RFC, but readers should be reminded that the
   this is a small sample.  The sample is too small to apply general
   statistical techniques and quantify specific ratios, and discussions
   of correlation techniques would be inappropriate.  Instead, the
   purpose is to identify trends, spot issues, and document future work.

   The information gathered for every RFC in the sample is presented in
   Section 3.  In Section 4, we analyze the production process and the
   sources of delays, comparing the 2018 sample to the selected samples
   for 1998 and 2018.  In Section 5.1, we present citation counts for
   the RFCs in the samples, and analyze whether citation counts could be
   used to evaluate the quality of RFCs.

   The measurement of delays could be automated by processing dates and
   events recorded in the Datatracker.  The measurement of published
   RFCs could be complemented by statistics on abandoned drafts, which
   would measure the efficiency of the IETF triaging process.  More
   instrumentation would help understanding how large delays happen
   during working group processes.  These potential next steps are
   developed in Section 6.

2.  Methodology

   The study reported here started with a simple idea: take a sample of
   RFCs, and perform an in-depth analysis of the path from the first
   presentation of the idea to its publication, while also trying to
   access the success of the resulting specification.  This requires
   defining the key milestones that we want to track, and drawing a
   random sample using an unbiased process.

2.1.  Defining the Important Milestones

   The IETF Datatracker records a list of events for each document
   processed by IETF working groups.  This has a high granularity, and
   also a high variability.  Most documents start life as an individual
   draft, are adopted by a working group, undergo a Working Group Last
   Call, are submitted to the IESG, undergo an IETF Last Call and an
   IESG review, get eventually approved by the IESG, and are processed
   for publication by the RFC Editor, but there are exceptions.  Some
   documents are first submitted to one working group and then moved to
   another.  Some documents are published through the Independent
   Stream, and are submitted to the Independent Submissions Editor
   instead of the IESG.

   In order to simplify tabulation, we break the period from the
   submission of the first draft to the publication of the RFC into
   three big components:

   *  The working group processing time, from the first draft to the
      start of the IETF last call;

   *  The IETF processing time, which lasts from the beginning of the
      IETF last call to the approval by the IESG, including the reviews
      by various directorates;

   *  The RFC production, from approval by the IESG to publication,
      including the AUTH48 reviews.

   For submissions to the Independent Stream, we don't have a working
   group.  We consider instead the progression of the individual draft
   until the adoption by the Independent Submissions Editor (ISE) as the
   equivalent of the "Working Group" period, and the delay from adoption
   by the ISE until submission to the RFC Editor as the equivalent of
   the IETF processing time.

   We measure the starting point of the process using the date of
   submission of the first draft listed on that RFC page in the IETF
   Datatracker.  In most cases, this first draft is an individual draft
   that then resubmitted as a working group draft, or maybe resubmitted
   with a new name as the draft was searching for a home in an IETF
   working group, or before deciding for submission on the Independent
   Stream.

   The IETF Datatracker entries for RFCs and drafts do not _always_ list
   working group events like Working Group Last Call.  The only
   intermediate event that we list between the first draft and the
   submission to the IESG is the working group adoption, for which we
   use the date of submission of version 00 of the draft eventually
   published as RFC.  We also use that date (of submission of version
   00) for drafts submitted to the Independent Stream.

2.2.  Selecting a Random Sample of RFCs

   Basic production mechanisms could be evaluated by processing data
   from the IETF Datatracker, but subjective data requires manual
   assessment of results, which can be time-consuming.  Since our
   resources are limited, we will only perform this analysis for a small
   sample of RFCs, selected at random from the list of RFCs approved in
   2018.  Specifically, we will pick 20 RFC numbers at random between:

   *  RFC 8307, published in January 2018, and

   *  RFC 8511, published December 2018.

   The list of 20 selected RFCs is: RFC 8411, RFC 8456, RFC 8446, RFC
   8355, RFC 8441, RFC 8324, RFC 8377, RFC 8498, RFC 8479, RFC 8453, RFC
   8429, RFC 8312, RFC 8492 , RFC 8378, RFC 8361, RFC 8472, RFC 8471,
   RFC 8466, RFC 8362, and RFC 8468.

   When evaluating delays and impact, we will compare the year 2018 to
   2008 and 1998, 10 and 20 years ago.  To drive this comparison, we
   pick 20 RFCs at random among those published in 2008, and another 20
   among those published in 1998.

   The list of the 20 randomly selected RFCs from 2008 is: RFC 5227, RFC
   5174, RFC 5172, RFC 5354, RFC 5195, RFC 5236, RFC 5348, RFC 5281, RFC
   5186, RFC 5326, RFC 5277, RFC 5373, RFC 5404, RFC 5329, RFC 5283, RFC
   5358, RFC 5142, RFC 5271, RFC 5349, and RFC 5301.

   The list of the 20 randomly selected RFCs from 1998 is: RFC 2431, RFC
   2381, RFC 2387, RFC 2348, RFC 2391, RFC 2267, RFC 2312, RFC 2448, RFC
   2374, RFC 2398, RFC 2283, RFC 2382, RFC 2289, RFC 2282, RFC 2404, RFC
   2449, RFC 2317, RFC 2394, RFC 2297, and RFC 2323.

2.3.  Conventions Used in This Document

   The following abbreviations are used in the tables:

   BCP   Best Current Practice
   Exp   Experimental
   Info  Informational
   PS    Proposed Standard
   DS    Draft Standard [This maturity level was retired by RFC 6410.]

   In addition, Status is as defined in RFC 2026, and Stream is as
   defined in RFC 8729.

3.  Analysis of 20 Selected RFCs

   We review each of the RFCs listed in Section 2.2 for the year 2018,
   trying both to answer the known questions and to gather insight for
   further analyses.  In many cases, the analysis of the data is
   complemented by direct feedback from the RFC authors.

3.1.  RFC 8411

   "IANA Registration for the Cryptographic Algorithm Object Identifier
   Range" [RFC8411]:

   Status (Length):    Informational (5 pages)
   Overview:           4 individual drafts
   First draft:        2017-05-08
   Last Call start:    2017-10-09
   IESG eval. start:   2017-12-28
   IESG approved:      2018-02-26 (draft 03)
   AUTH48 start:       2018-04-20
   AUTH48 complete:    2018-07-17
   Published:          2018-08-06
   IANA action:        create table

   This RFC was published from the individual draft, which was not
   resubmitted as a working group draft.

   The draft underwent minor copy editing before publication.

   Some but not all of the long delay in AUTH48 is due to clustering
   with [RFC8410].  MISSREF state concluded on 2018-05-09 and the
   document re-entered AUTH48 at once.  AUTH48 lasted over two months
   after that.  (For state definitions, see <https://www.rfc-
   editor.org/about/queue/#state_def>.)

   The time after AUTH48 and before publication (3 weeks) partly
   overlaps with travel for IETF 102 and is partly due to coordinating
   the cluster.

3.2.  RFC 8456

   "Benchmarking Methodology for Software-Defined Networking (SDN)
   Controller Performance" [RFC8456]:

   Status (Length):    Informational (64 pages)
   Overview:           2 individual drafts; 9 WG drafts
   First draft:        2015-03-23
   WG adoption:        2015-10-18
   Last Call start:    2018-01-19
   IESG eval. start:   2018-02-27
   IESG approved:      2018-05-25
   AUTH48 start:       2018-08-31
   AUTH48 complete:    2018-10-16
   Published:          2018-10-30

   The draft underwent extensive copy editing, covering use of articles,
   syntax, and word choice.  The changes are enough to cause pagination
   differences.  The "diff" tool marks pretty much every page as
   changed.  Some diagrams see change in protocol elements like message
   names.

   According to the author, the experience of producing this document
   mirrors a typical one in the Benchmarking Methodologies Working Group
   (BMWG).  There were multiple authors in multiple time zones, which
   slowed down the AUTH48 process somewhat, although the AUTH48 delay of
   46 days is only a bit longer than the average draft.

   The RFC was part of cluster with [RFC8455].

   BMWG publishes Informational RFCs centered around benchmarking, and
   the methodologies in RFC 8456 have been implemented in benchmarking
   products.

3.3.  RFC 8446

   "The Transport Layer Security (TLS) Protocol Version 1.3" [RFC8446],
   as the title indicates, defines the new version of the TLS protocol.
   From the IETF Datatracker, we extract the following:

   Status (Length):    Proposed Standard (160 pages)
   Overview:           29 WG drafts
   First draft:        2014-04-17
   Last Call start:    2018-02-15
   IESG eval. start:   2018-03-02
   IESG approved:      2018-03-21 (draft 28)
   AUTH48 start:       2018-06-14
   AUTH48 complete:    2018-08-10
   Published:          2018-08-10

   This draft started as a WG effort.

   The RFC was a major effort in the IETF.  Working group participants
   developed and tested several implementations.  Researchers analyzed
   the specifications and performed formal verifications.  Deployment
   tests outlined issues that caused extra work when the specification
   was almost ready.  This complexity largely explains the time spent in
   the working group.

   Comparing the final draft to the published version, we find
   relatively light copy editing.  It includes explaining acronyms on
   first use, clarifying some definitions standardizing punctuation and
   capitalization, and spelling out some numbers in text.  This
   generally fall in the category of "style", although some of the
   clarifications go into message definitions.  However, that simple
   analysis does not explain why the AUTH48 phase took almost two
   months.

   This document's AUTH48 process was part of the "GitHub experiment",
   which tried to use GitHub pull requests to track the AUTH48 changes
   and review comments.  The RFC Production Center (RPC) staff had to
   learn using GitHub for that process, and this required more work than
   the usual RFC.  The author and AD thoroughly reviewed each proposed
   edit, accepting some and rejecting some.  The concern there was that
   any change in a complex specification might affect a protocol that
   was extensively reviewed in the working group, but of course these
   reviews added time to the AUTH48 delays.

   There are 21 implementations listed in the Wiki of the TLS 1.3
   project [TLS13IMP].  It has been deployed on major browsers, and is
   already used in a large fraction of TLS connections.

3.4.  RFC 8355

   "Resiliency Use Cases in Source Packet Routing in Networking (SPRING)
   Networks" [RFC8355] is an Informational RFC.  It originated from an
   informational use-case draft; it was mostly used for the BOF creating
   the WG, and then to drive initial work and evolutions from the WG.

   Status (Length):    Informational (13 pages)
   Overview:           2 individual drafts; 13 WG drafts
   First draft:        2014-01-31
   WG adoption:        2014-05-13
   Last Call start:    2017-04-20
   IESG eval. start:   2017-05-04 (draft 09)
   IESG approved:      2017-12-19 (draft 12)
   AUTH48 start:       2018-03-12
   AUTH48 complete:    2018-03-27
   Published:          2018-03-28

   Minor set of copy edits, mostly for style.

   No implementation of the RFC itself, but the technology behind it
   (such as Segment Routing Architecture [RFC8402] and TI-LFA [TI-LFA])
   is widely implemented and deployment is ongoing.

   According to participants in the discussion, the process of adoption
   of the source packet routing standards was very contentious.  The
   establishment of consensus at both the working group level and the
   IETF level was difficult and time-consuming.

3.5.  RFC 8441

   "Bootstrapping WebSockets with HTTP/2" [RFC8441]

   Status (Length):    Proposed Standard (8 pages)
   Overview:           3 individual drafts; 8 WG drafts; Updates RFC
                       6455
   First draft:        2017-10-15
   WG adoption:        2017-12-19
   Last Call start:    2018-05-07 (draft 05)
   IESG eval. start:   2018-05-29 (draft 06)
   IESG approved:      2018-06-18 (draft 07)
   AUTH48 start:       2018-08-13
   AUTH48 complete:    2018-09-15
   Published:          2018-09-18
   IANA action:        table entries

   This RFC defines the support of WebSockets in HTTP/2, which is
   different from the mechanism defined for HTTP/1.1 in [RFC6455].  The
   process was relatively straightforward, involving the usual type of
   discussions, some on details and some on important points.

   Comparing the final draft and published RFC shows a minor set of copy
   edits, mostly for style.  However, the author recalls a painful
   process.  The RFC includes many charts and graphs that were very
   difficult to format correctly in the author's production process that
   involved conversions from markdown to XML, and then from XML to text.
   The author had to get substantial help from the RFC Editor.

   There are several implementations, including Firefox and Chrome,
   making RFC 8441 a very successful specification.

3.6.  RFC 8324

   "DNS Privacy, Authorization, Special Uses, Encoding, Characters,
   Matching, and Root Structure: Time for Another Look?"  [RFC8324].
   This is an opinion piece on DNS development, published on the
   Independent Stream.

   Status (Length):    Informational (29 pages)
   Overview:           5 individual drafts; Independent Stream
   First draft:        2017-06-02
   ISE review start:   2017-07-10 (draft 03)
   IETF conflict review start:  2017-10-29
   Approved:           2017-12-18 (draft 04)
   AUTH48 start:       2018-01-29 (draft 05)
   AUTH48 complete:    2018-02-26
   Published:          2018-02-27

   This RFC took only 9 months from first draft to publication, which is
   the shortest in the 2018 sample set.  In part, this is because the
   text was privately circulated and reviewed by the ISE's selected
   experts before the first draft was published.  The nature of the
   document is another reason for the short delay.  It is an opinion
   piece and does not require the same type of consensus building and
   reviews as a protocol specification.

   Comparing the final draft and the published version shows only minor
   copy edits, mostly for style.  According to the author, this is
   because he knows how to write in RFC style with the result that his
   documents often need a minimum of editing.  He also makes sure that
   the document on which the RFC Production Center starts working
   already has changes discussed and approved during Last Call and IESG
   review incorporated, rather than expecting the Production Center to
   operate off of notes about changes to be made.

3.7.  RFC 8377

   "Transparent Interconnection of Lots of Links (TRILL): Multi-
   Topology" [RFC8377]

   Status (Length):    Proposed Standard (20 pages)
   Overview:           3 individual drafts; 7 WG drafts; Updates RFCs
                       6325 and 7177
   First draft:        2013-09-03
   WG adoption:        2015-09-01
   Last Call start:    2018-02-19 (draft 05)
   IESG eval. start:   2018-03-06 (draft 05)
   IESG approved:      2018-03-12 (draft 06)
   AUTH48 start:       2018-04-20 (draft 06)
   AUTH48 complete:    2018-07-31
   Published:          2018-07-31
   IANA action:        table entries

   Minor set of copy edits, mostly for style, also clarity.

3.8.  RFC 8498

   "A P-Served-User Header Field Parameter for an Originating Call
   Diversion (CDIV) Session Case in the Session Initiation Protocol
   (SIP)" [RFC8498].

   Status (Length):    Informational (15 pages)
   Overview:           5 individual drafts; 9 WG drafts
   First draft:        2016-03-21
   WG adoption:        2017-05-15
   Last Call start:    2018-10-12 (draft 05)
   IESG eval. start:   2018-11-28 (draft 07)
   IESG approved:      2018-12-11 (draft 08)
   AUTH48 start:       2019-01-28
   AUTH48 complete:    2019-02-13
   Published:          2019-02-14
   IANA action:        table rows added.

   Copy edits for style, but also clarification of ambiguous sentences.

3.9.  RFC 8479

   "Storing Validation Parameters in PKCS#8" [RFC8479]

   Status (Length):    Informational (8 pages)
   Overview:           5 individual drafts; Independent Stream
   First draft:        2017-08-08
   ISE review start:   2018-12-10 (draft 00)
   IETF conflict review start:  2018-03-29
   Approved:           2018-08-20 (draft 03)
   AUTH48 start:       2018-09-20 (draft 04)
   AUTH48 complete:    2018-09-25
   Published:          2018-09-26

   The goal of the draft was to document what the gnutls implementation
   was using for storing provably generated RSA keys.  This is a short
   RFC that was published relatively quickly, although discussion
   between the author, the Independent Submissions Editor, and the IESG
   lasted several months.  In the initial conflict review, the IESG
   asked the ISE to not publish this document before IETF working groups
   had an opportunity to pick up the work.  The author met that
   requirement by a presentation to the SECDISPATCH WG during IETF 102.
   Since no WG was interested in picking up the work, the document
   progressed on the Independent Stream.

   Very minor set of copy edits, moving some references from normative
   to informative.

   The author is not aware of other implementations than gnutls relying
   on this RFC.

3.10.  RFC 8453

   "Framework for Abstraction and Control of TE Networks (ACTN)"
   [RFC8453]

   Status (Length):    Informational (42 pages)
   Overview:           3 individual drafts; 16 WG drafts
   First draft:        2015-06-15
   WG adoption:        2016-07-15
   Out of WG:          2018-01-26 (draft 11)
   Expert review requested:  2018-02-13
   Last Call start:    2018-04-16 (draft 13)
   IESG eval. start:   2018-05-16 (draft 14)
   IESG approved:      2018-06-01 (draft 15)
   AUTH48 start:       2018-08-13
   AUTH48 complete:    2018-08-20
   Published:          2018-08-23
   IANA action:        table rows added.

   Minor copy editing.

3.11.  RFC 8429

   "Deprecate Triple-DES (3DES) and RC4 in Kerberos" [RFC8429]

   Status (Length):    BCP (10 pages)
   Overview:           6 WG drafts
   First draft:        2017-05-01
   Last Call start:    2017-07-16 (draft 03)
   IESG eval. start:   2017-08-18 (draft 04)
   IESG approved:      2018-05-25 (draft 05)
   AUTH48 start:       2018-07-24
   AUTH48 complete:    2018-10-31
   Published:          2018-10-31
   IANA action:        table rows added.

   This draft started as a working group effort.

   This RFC recommends deprecating two encryption algorithms that are
   now considered obsolete and possibly broken.  The document was sent
   back to the WG after the first Last Call, edited, and then there was
   a second Last Call.  The delay from first draft to Working Group Last
   Call was relatively short, but the number may be misleading.  The
   initial draft was a replacement of a similar draft in the KITTEN
   Working Group, which stagnated for some time before the CURDLE
   Working Group took up the work.  The deprecation of RC4 was somewhat
   contentious, but the WG had already debated this prior to the
   production of this draft, and the draft was not delayed by this
   debate.

   Most of the 280 days between IETF LC and IESG approval were because
   the IESG had to talk about whether this document should obsolete RFC
   4757 or move it to Historic status, and no one was really actively
   pushing that discussion for a while.

   The 99 days in AUTH48 are mostly because one of the authors was a
   sitting AD, and those duties ended up taking precedence over
   reviewing this document.

   Minor copy editing, for style.

   The implementation of the draft would be the actual removal of
   support for 3DES and RC4 in major implementations.  This is
   happening, but very slowly.

3.12.  RFC 8312

   "CUBIC for Fast Long-Distance Networks" [RFC8312]

   Status (Length):    Informational (18 pages)
   Overview:           2 individual drafts; 8 WG drafts
   First draft:        2014-09-01
   WG adoption:        2015-06-08
   Last Call start:    2017-09-18 (draft 06)
   IESG eval. start:   2017-10-04
   IESG approved:      2017-11-14 (draft 07)
   AUTH48 start:       2018-01-08
   AUTH48 complete:    2018-02-07
   Published:          2018-02-07
   IANA action:        table rows added.

   Minor copy editing, for style.

   The TCP congestion control algorithm Cubic was first defined in 2005,
   was implemented in Linux soon after, and was implemented in major
   OSes after that.  After some debates from 2015 to 2015, the TCPM
   Working Group adopted the draft, with a goal of documenting Cubic in
   the RFC Series.  According to the authors, this was not a high-
   priority effort, as Cubic was already implemented in multiple OSes
   and documented in research papers.  At some point, only one of the
   authors was actively working on the draft.  This may explain why
   another two years was spent progressing the draft after adoption by
   the WG.

   The RFC publication may or may not have triggered further
   implementations.  On the other hand, several OSes picked up bug fixes
   from the draft and the RFC.

3.13.  RFC 8492

   "Secure Password Ciphersuites for Transport Layer Security (TLS)"
   [RFC8492]

   Status (Length):    Informational (40 pages)
   Overview:           10 individual drafts; 8 WG drafts; Independent
                       Stream
   First draft:        2012-09-07
   Targeted to ISE:    2016-08-05
   ISE review start:   2017-05-10 (draft 01)
   IETF conflict review start:  2017-09-04
   Approved:           2017-10-29 (draft 02)
   AUTH48 start:       2018-10-19 (draft 05)
   AUTH48 complete:    2019-02-19
   Published:          2019-02-21
   IANA action:        table rows added.

   This RFC has a complex history.  The first individual draft was
   submitted to the TLS Working Group on September 7, 2012.  It
   progressed there, and was adopted by the WG after 3 revisions.  There
   were then 8 revisions in the TLS WG, until the WG decided to not
   progress it.  The draft was parked in 2013 by the WG chairs after
   failing to get consensus in WG Last Call.  The AD finally pulled the
   plug in 2016, and the draft was then resubmitted to the ISE.

   At that point, the author was busy and was treating this RFC with a
   low priority because, in his words, it would not be a "real RFC".
   There were problems with the draft that only came up late.  In
   particular, it had to wait for a change in registry policy that only
   came about with the publication of TLS 1.3, which caused the draft to
   be published after RFC 8446, and also required adding references to
   TLS 1.3.  The author also got a very late comment while in AUTH48
   that caused some rewriting.  Finally, there was some IANA issue with
   the extension registry where a similar extension was added by someone
   else.  The draft was changed to just use it.

   Changes in AUTH48 include adding a reference to TLS 1.3, copy editing
   for style, some added requirements, added paragraphs, and changes in
   algorithms specification.

3.14.  RFC 8378

   "Signal-Free Locator/ID Separation Protocol (LISP) Multicast"
   [RFC8378] is an Experimental RFC, defining how to implement Multicast
   in the LISP architecture.

   Status (Length):    Experimental (21 pages)
   Overview:           5 individual drafts; 10 WG drafts
   First draft:        2014-02-28
   WG adoption:        2015-12-21
   Last Call start:    2018-02-13 (draft 07)
   IESG eval. start:   2018-02-28 (draft 08)
   IESG approved:      2018-03-12 (draft 09)
   AUTH48 start:       2018-04-23
   AUTH48 complete:    2018-05-02
   Published:          2018-05-02

   Preparing the RFC took more than 4 years.  According to the authors,
   they were not aggressively pushing it and just let the working group
   process decide to pace it.  They also did implementations during that
   time.

   Minor copy editing, for style.

   The RFC was implemented by lispers.net and Cisco, and it was used in
   doing IPv6 multicast over IPv4 unicast/multicast at the Olympics in
   PyeungChang.  The plan is to work on a Proposed Standard once the
   experiment concludes.

3.15.  RFC 8361

   "Transparent Interconnection of Lots of Links (TRILL): Centralized
   Replication for Active-Active Broadcast, Unknown Unicast, and
   Multicast (BUM) Traffic" [RFC8361]

   Status (Length):    Proposed Standard (17 pages)
   Overview:           3 individual drafts; 14 WG drafts
   First draft:        2013-11-12
   WG adoption:        2014-12-16
   Last Call start:    2017-11-28 (draft 10)
   IESG eval. start:   2017-12-18 (draft 11)
   IESG approved:      2018-01-29 (draft 13)
   AUTH48 start:       2018-03-09
   AUTH48 complete:    2018-04-09
   Published:          2018-04-12

   According to the authors, the long delays in producing this RFC were
   due to a slow uptake of the technology in the industry.

   Minor copy editing, for style.

   There was at least one partial implementation.

3.16.  RFC 8472

   "Transport Layer Security (TLS) Extension for Token Binding Protocol
   Negotiation" [RFC8472]

   Status (Length):    Proposed Standard (8 pages)
   Overview:           1 individual draft; 15 WG drafts
   First draft:        2015-05-29
   WG adoption:        2015-09-11
   Last Call start:    2017-11-13 (draft 10)
   IESG eval. start:   2018-03-19
   IESG approved:      2018-07-20 (draft 14)
   AUTH48 start:       2018-09-17
   AUTH48 complete:    2018-09-25
   Published:          2018-10-08

   This is a pretty simple document, but it took over 3 years from
   individual draft to RFC.  According to the authors,the biggest
   setbacks occurred at the start: it took a while to find a home for
   this draft.  It was presented in the TLS WG (because it's a TLS
   extension) and UTA WG (because it has to do with applications using
   TLS).  Then the ADs determined that a new WG was needed, so the
   authors had to work through the WG creation process, including
   running a BOF.

   Minor copy editing, for style, with the addition of a reference to
   TLS 1.3.

   Perhaps partially due to the delays, some of the implementers lost
   interest in supporting this RFC.

3.17.  RFC 8471

   "The Token Binding Protocol Version 1.0" [RFC8471]

   Status (Length):    Proposed Standard (18 pages)
   Overview:           1 individual draft; 19 WG drafts
   First draft:        2014-10-13
   WG adoption:        2015-03-15
   Last Call start:    2017-11-13 (draft 16)
   IESG eval. start:   2018-03-19
   IESG approved:      2018-07-20 (draft 19)
   AUTH48 start:       2018-09-17
   AUTH48 complete:    2018-09-25
   Published:          2018-10-08

   This document presents a Token Binding Protocol for TLS.  We can
   notice a period of 5 months before adoption of the draft by the WG.
   That explains in part the overall time of almost 4 years from first
   draft to publication.

   Minor copy editing, for style.

   The web references indicate adoption in multiple development
   projects.

3.18.  RFC 8466

   "A YANG Data Model for Layer 2 Virtual Private Network (L2VPN)
   Service Delivery" [RFC8466]

   Status (Length):    Proposed Standard (158 pages)
   Overview:           5 individual drafts; 11 WG drafts
   First draft:        2016-09-01
   WG adoption:        2017-02-26
   Last Call start:    2018-02-21 (draft 07)
   IESG eval. start:   2018-03-14 (draft 08)
   IESG approved:      2018-06-25 (draft 10)
   AUTH48 start:       2018-09-17
   AUTH48 complete:    2018-10-09
   Published:          2018-10-12

   Copy editing for style and clarity, with also corrections to the YANG
   model.

3.19.  RFC 8362

   "OSPFv3 Link State Advertisement (LSA) Extensibility" [RFC8362] is a
   major extension to the OSPF protocol.  It makes OSPFv3 fully
   extensible.

   Status (Length):    Proposed Standard (33 pages)
   Overview:           4 individual drafts; 24 WG drafts
   First draft:        2013-02-17
   WG adoption:        2013-10-15
   Last Call start:    2017-12-19 (draft 19)
   IESG eval. start:   2018-01-18 (draft 20)
   IESG approved:      2018-01-29 (draft 23)
   AUTH48 start:       2018-03-19
   AUTH48 complete:    2018-03-30
   Published:          2018-04-03

   The specification was first submitted as an individual draft in the
   IPv6 WG, then moved to the OSPF WG.  The long delay of producing this
   RFC is due to the complexity of the problem, and the need to wait for
   implementations.  It is a very important change to OSPF that makes
   OSPFv3 fully extensible.  Since it was a non-backward compatible
   change, the developers started out with some very complex migration
   scenarios but ended up with either legacy or extended OSPFv3 LSAs
   within an OSPFv3 routing domain.  The initial attempts to have a
   hybrid mode of operation with both legacy and extended LSAs also
   delayed implementation due to the complexity.

   Copy editing for style and clarity.

   This specification either was or will be implemented by all the
   router vendors.

3.20.  RFC 8468

   "IPv4, IPv6, and IPv4-IPv6 Coexistence: Updates for the IP
   Performance Metrics (IPPM) Framework" [RFC8468].

   Status (Length):    Informational (15 pages)
   Overview:           3 individual drafts; 7 WG drafts
   First draft:        2015-08-06
   WG adoption:        2016-07-04
   Last Call start:    2018-04-11 (draft 04)
   IESG eval. start:   2018-05-24 (draft 05)
   IESG approved:      2018-07-10 (draft 06)
   AUTH48 start:       2018-09-13
   AUTH48 complete:    2018-11-05
   Published:          2018-11-14

   RFC 8468 was somehow special in that there was not a technical reason
   or interest that triggered it, but rather a formal requirement.
   While writing RFC 7312, the IP Performance Metrics (IPPM) Working
   Group realized that RFC 2330, the IP Performance Metrics Framework
   supported IPv4 only and explicitly excluded support for IPv6.
   Nevertheless, people used the metrics that were defined on top of RFC
   2330 (and, therefore, IPv4 only) for IPv6, too.  Although the IPPM WG
   agreed that the work was needed, the interest of IPPM attendees in
   progressing (and reading/reviewing) the IPv6 draft was limited.
   Resolving the IPv6 technical part was straightforward, but
   subsequently some people asked for a broader scope (topics like
   header compression, 6LoWPAN, etc.), and it took some time to figure
   out and later on convince people that these topics are out of scope.
   The group also had to resolve contentious topics, for example, how to
   measure the processing of IPv6 extension headers, which is sometimes
   nonstandard.

   The time in AUTH48 state for this document was longer than average.
   According to the authors, the main reasons include:

   *  Workload and travel caused by busy work periods of all coauthors

   *  Time zone difference between coauthors and editor (at least US,
      Europe, and India, not considering travel)

   *  RFC Production Center proposed and committed some unacceptable
      modifications that needed to be reverted

   *  Lengthy discussions on a new document title (required high effort
      and took a long time, in particular reaching consensus between
      coauthors and editor was time-consuming and involved the AD)

   *  RFC Production Center correctly identified some nits (obsoleted
      personal websites of coauthors) and coauthors attempting to fix
      them.

   The differences between the final draft and the published RFC show
   copy editing for style and clarity, but do not account for the back
   and forth between authors and editors mentioned by the authors.

4.  Analysis of Process and Delays

   We examine the 20 RFCs in the sample, measuring various
   characteristics such as delay and citation counts, in an attempt to
   identify patterns in the IETF processes.

4.1.  Delays from First Draft to RFC

   We look at the distribution of delays between the submission of the
   first draft and the publication of the RFC, using the three
   milestones defined in Section 2.1: processing time in the working
   group, IETF processing time, and RFC production time.  The following
   table shows the number of days in each phase for the 20 RFCs in the
   sample:

       +======+============+=======+=========+======+======+======+
       |  RFC | Status     | Pages | Overall |   WG | IETF | Edit |
       +======+============+=======+=========+======+======+======+
       | 8411 | Info       |     5 |     455 |  154 |  140 |  161 |
       +------+------------+-------+---------+------+------+------+
       | 8456 | Info       |    64 |    1317 | 1033 |  126 |  158 |
       +------+------------+-------+---------+------+------+------+
       | 8446 | PS         |   160 |    1576 | 1400 |   34 |  142 |
       +------+------------+-------+---------+------+------+------+
       | 8355 | Info       |    13 |    1517 | 1175 |  243 |   99 |
       +------+------------+-------+---------+------+------+------+
       | 8441 | PS         |     8 |     327 |  204 |   31 |   92 |
       +------+------------+-------+---------+------+------+------+
       | 8324 | Info (ISE) |    29 |     270 |   38 |  161 |   71 |
       +------+------------+-------+---------+------+------+------+
       | 8377 | PS         |     8 |    1792 | 1630 |   21 |  141 |
       +------+------------+-------+---------+------+------+------+
       | 8498 | Info       |    15 |    1059 |  935 |   59 |   65 |
       +------+------------+-------+---------+------+------+------+
       | 8479 | Info (ISE) |     8 |     414 |  233 |  144 |   37 |
       +------+------------+-------+---------+------+------+------+
       | 8453 | Info       |    42 |    1165 | 1036 |   46 |   83 |
       +------+------------+-------+---------+------+------+------+
       | 8429 | BCP        |    10 |     548 |   76 |  313 |  159 |
       +------+------------+-------+---------+------+------+------+
       | 8312 | Info       |    18 |    1214 | 1113 |   16 |   85 |
       +------+------------+-------+---------+------+------+------+
       | 8492 | Info (ISE) |    40 |    2358 | 1706 |  172 |  480 |
       +------+------------+-------+---------+------+------+------+
       | 8378 | Exp        |    21 |    1524 | 1446 |   27 |   51 |
       +------+------------+-------+---------+------+------+------+
       | 8361 | PS         |    17 |    1612 | 1477 |   62 |   73 |
       +------+------------+-------+---------+------+------+------+
       | 8472 | PS         |     8 |    1228 |  899 |  249 |   80 |
       +------+------------+-------+---------+------+------+------+
       | 8471 | PS         |    18 |    1228 |  899 |  249 |   80 |
       +------+------------+-------+---------+------+------+------+
       | 8466 | PS         |   158 |     771 |  538 |  124 |  109 |
       +------+------------+-------+---------+------+------+------+
       | 8362 | PS         |    33 |    1871 | 1766 |   41 |   64 |
       +------+------------+-------+---------+------+------+------+
       | 8468 | Info       |    15 |    1196 |  979 |   90 |  127 |
       +------+------------+-------+---------+------+------+------+
       | average           |    35 |    1172 |  948 |  117 |  118 |
       +-------------------+-------+---------+------+------+------+
       | average (not ISE) |    36 |    1200 |  999 |  110 |  104 |
       +-------------------+-------+---------+------+------+------+

                                 Table 1

   The average delay from first draft to publication is about 3 years
   and 3 months, but this varies widely.  Excluding the RFCs from the
   Independent Stream, the average delay from start to finish is 3 years
   and 4 months, of which on average 2 years and 9 months are spent
   getting consensus in the working group, and 3 to 4 months each for
   IETF consensus and for RFC production.

   The longest delay is found for [RFC8492], 6.5 years from start to
   finish.  This is however a very special case -- a draft that was
   prepared for the TLS Working Group and failed to reach consensus.
   After that, it was resubmitted to the ISE, and incurred atypical
   production delays.

   On average, we see that 80% of the delay is incurred in WG
   processing, 10% in IETF review, and 10% for edition and publication.

   For IETF Stream RFCs, it appears that the delays for Informational
   documents are slightly shorter than those for protocol
   specifications, maybe six months shorter on average.  However, there
   are lots of differences between individual documents.  The delays
   range from less than a year to more than 5 years for protocol
   specifications, and from a year and 3 months to a bit more than 4
   years for Informational documents.

   We can compare the delays in the 2018 samples to those observed 10
   years ago and 20 years before:

                +============+============+=======+=======+
                | RFC (2008) | Status     | Pages | Delay |
                +============+============+=======+=======+
                | 5326       | Exp        |    54 |  1584 |
                +------------+------------+-------+-------+
                | 5348       | PS         |    58 |   823 |
                +------------+------------+-------+-------+
                | 5281       | Info       |    51 |  1308 |
                +------------+------------+-------+-------+
                | 5354       | Exp        |    23 |  2315 |
                +------------+------------+-------+-------+
                | 5227       | PS         |    21 |  2434 |
                +------------+------------+-------+-------+
                | 5329       | PS         |    12 |  1980 |
                +------------+------------+-------+-------+
                | 5277       | PS         |    35 |   912 |
                +------------+------------+-------+-------+
                | 5236       | Info (ISE) |    26 |  1947 |
                +------------+------------+-------+-------+
                | 5358       | BCP        |     7 |   884 |
                +------------+------------+-------+-------+
                | 5271       | Info       |    22 |  1066 |
                +------------+------------+-------+-------+
                | 5195       | PS         |    10 |   974 |
                +------------+------------+-------+-------+
                | 5283       | PS         |    12 |  1096 |
                +------------+------------+-------+-------+
                | 5186       | Info       |     6 |  2253 |
                +------------+------------+-------+-------+
                | 5142       | PS         |    13 |  1005 |
                +------------+------------+-------+-------+
                | 5373       | PS         |    24 |  1249 |
                +------------+------------+-------+-------+
                | 5404       | PS         |    27 |   214 |
                +------------+------------+-------+-------+
                | 5172       | PS         |     7 |   305 |
                +------------+------------+-------+-------+
                | 5349       | Info       |    10 |  1096 |
                +------------+------------+-------+-------+
                | 5301       | PS         |     6 |   396 |
                +------------+------------+-------+-------+
                | 5174       | Info       |     8 |   427 |
                +------------+------------+-------+-------+

                                  Table 2

               +============+============+=======+=========+
               | RFC (1998) | Status     | Pages |   Delay |
               +============+============+=======+=========+
               | 2289       | PS         |    25 |     396 |
               +------------+------------+-------+---------+
               | 2267       | Info       |    10 | unknown |
               +------------+------------+-------+---------+
               | 2317       | BCP        |    10 |     485 |
               +------------+------------+-------+---------+
               | 2404       | PS         |     7 |     488 |
               +------------+------------+-------+---------+
               | 2374       | PS         |    12 |     289 |
               +------------+------------+-------+---------+
               | 2449       | PS         |    19 |     273 |
               +------------+------------+-------+---------+
               | 2283       | PS         |     9 |     153 |
               +------------+------------+-------+---------+
               | 2394       | Info       |     6 |     365 |
               +------------+------------+-------+---------+
               | 2348       | DS         |     5 |     699 |
               +------------+------------+-------+---------+
               | 2382       | Info       |    30 |     396 |
               +------------+------------+-------+---------+
               | 2297       | Info (ISE) |   109 |      28 |
               +------------+------------+-------+---------+
               | 2381       | PS         |    43 |     699 |
               +------------+------------+-------+---------+
               | 2312       | Info       |    20 |     365 |
               +------------+------------+-------+---------+
               | 2387       | PS         |    10 |     122 |
               +------------+------------+-------+---------+
               | 2398       | Info       |    15 |     396 |
               +------------+------------+-------+---------+
               | 2391       | PS         |    10 |     122 |
               +------------+------------+-------+---------+
               | 2431       | PS         |    10 |     457 |
               +------------+------------+-------+---------+
               | 2282       | Info       |    14 |     215 |
               +------------+------------+-------+---------+
               | 2323       | Info (ISE) |     5 | unknown |
               +------------+------------+-------+---------+
               | 2448       | Info (ISE) |     7 |      92 |
               +------------+------------+-------+---------+

                                  Table 3

   We can compare the median delay, and the delays observed by the
   fastest and slowest quartiles in the three years:

               +======+=============+========+=============+
               | Year | Fastest 25% | Median | Slowest 25% |
               +======+=============+========+=============+
               | 2018 |         715 |   1221 |        1537 |
               +------+-------------+--------+-------------+
               | 2008 |         869 |   1081 |        1675 |
               +------+-------------+--------+-------------+
               | 1998 |         169 |    365 |         442 |
               +------+-------------+--------+-------------+

                                  Table 4

   The IETF takes three to four times more to produce an RFC in 2018
   than it did in 1998, but about the same time as it did in 2008.  We
   can get a rough estimate of how this translates in terms of "level of
   attention" per RFC by comparing the number of participants in the
   IETF meetings of 2018, 2008, and 1998 [IETFCOUNT] to the number of
   RFCs published these years [RFCYEAR].

    +======+=========+========+========+======+=========+============+
    | Year | Number  | Spring | Summer | Fall | Average | Attendees/ |
    |      | of RFCs |     P. |     P. |   P. |      P. | RFC        |
    +======+=========+========+========+======+=========+============+
    | 2018 |     208 |   1235 |   1078 |  879 |    1064 | 5.1        |
    +------+---------+--------+--------+------+---------+------------+
    | 2008 |     290 |   1128 |   1181 |  962 |    1090 | 3.8        |
    +------+---------+--------+--------+------+---------+------------+
    | 1998 |     234 |   1775 |   2106 | 1705 |    1862 | 8.0        |
    +------+---------+--------+--------+------+---------+------------+

                                 Table 5

   The last column in the table provides the ratio of average number of
   participants to the number of RFCs published.  If the IETF were a
   centralized organization, and if all participants and documents were
   equivalent, this ratio would be the number of participants dedicated
   to produce an RFC on a given year.  This is of course a completely
   abstract figure because none of the hypotheses above are true, but it
   still gives a vague indication of the "level of attention" applied to
   documents.  We see that this ratio has increased from 2008 to 2018,
   as the number of participants was about the same for these two years
   but the number of published RFCs decreased.  However, this ratio was
   much higher in 1998.  The IETF had many more participants, and there
   were probably many more eyes available to review any given draft.  If
   we applied the ratios of 1998, the IETF would be producing 119
   documents in 2018 instead of 208.

4.2.  Working Group Processing Time

   The largest part of the delays is spent in the working groups, before
   the draft is submitted to the IESG for IETF review.  As mentioned in
   Section 2.1, the only intermediate milestone that we can extract from
   the IETF Datatracker is the date at which the document was adopted by
   the working group, or targeted for independent submission.  The
   breakdown of the delays for the documents in our sample is:

      +======+============+======+================+================+
      | RFC  | Status     |   WG | Until adoption | After adoption |
      +======+============+======+================+================+
      | 8411 | Info       |  154 |              0 |            154 |
      +------+------------+------+----------------+----------------+
      | 8456 | Info       | 1033 |            209 |            824 |
      +------+------------+------+----------------+----------------+
      | 8446 | PS         | 1400 |              0 |           1400 |
      +------+------------+------+----------------+----------------+
      | 8355 | Info       | 1175 |            102 |           1073 |
      +------+------------+------+----------------+----------------+
      | 8441 | PS         |  204 |             65 |            139 |
      +------+------------+------+----------------+----------------+
      | 8324 | Info (ISE) |   38 |              0 |             38 |
      +------+------------+------+----------------+----------------+
      | 8377 | PS         | 1630 |            728 |            902 |
      +------+------------+------+----------------+----------------+
      | 8498 | Info       |  935 |            420 |            515 |
      +------+------------+------+----------------+----------------+
      | 8479 | Info (ISE) |  233 |              0 |            233 |
      +------+------------+------+----------------+----------------+
      | 8453 | Info       | 1036 |            396 |            640 |
      +------+------------+------+----------------+----------------+
      | 8429 | BCP        |   76 |              0 |             76 |
      +------+------------+------+----------------+----------------+
      | 8312 | Info       | 1113 |            280 |            833 |
      +------+------------+------+----------------+----------------+
      | 8492 | Info (ISE) | 1706 |           1428 |            278 |
      +------+------------+------+----------------+----------------+
      | 8378 | Exp        | 1446 |            661 |            785 |
      +------+------------+------+----------------+----------------+
      | 8361 | PS         | 1477 |            399 |           1078 |
      +------+------------+------+----------------+----------------+
      | 8472 | PS         |  899 |            105 |            794 |
      +------+------------+------+----------------+----------------+
      | 8471 | PS         | 1127 |            153 |            794 |
      +------+------------+------+----------------+----------------+
      | 8466 | PS         |  538 |            178 |            360 |
      +------+------------+------+----------------+----------------+
      | 8362 | PS         | 1766 |            240 |           1526 |
      +------+------------+------+----------------+----------------+
      | 8468 | Info       |  979 |            333 |            646 |
      +------+------------+------+----------------+----------------+
      | Average           |  948 |            285 |            663 |
      +-------------------+------+----------------+----------------+

                                 Table 6

   The time before working group adoption averages to a bit more than 9
   months, compared to 1 year and almost 10 months for processing time
   after adoption.  We see that RFC 8492 stands out, with long delays
   spent attempting publication through a working group before
   submission to the Independent Submissions Editor.  If we remove RFC
   8492 from the list, the average time until adoption drops to just
   over 7 months, and becomes just 25% of the total processing time in
   the WG.

   There are a few documents that started immediately as working group
   efforts, or were immediately targeted for publication in the
   Independent Stream.  Those documents tend to see short processing
   times, with the exception of RFC 8446 on which the TLS Working Group
   spent a long time working.

4.3.  Preparation and Publication Delays

   The preparation and publication delays include three components:

   *  the delay from submission to the RFC Editor to beginning of
      AUTH48, during which the document is prepared (referred to as "RFC
      edit" below);

   *  the AUTH48 delay, during which authors review and eventually
      approve the changes proposed by the editors (referred to as
      "AUTH48" below);

   *  the publication delay, from final agreement by authors and editors
      to actual publication (referred to as "RFC Pub" below).

   The breakdown of the publication delays for each RFC is shown in the
   following table.

    +=======+========+=======+==========+========+=========+=========+
    |   RFC | Status | Pages | RFC edit | AUTH48 | RFC Pub |    Edit |
    |       |        |       |          |        |         | (total) |
    +=======+========+=======+==========+========+=========+=========+
    |  8411 | Info   |     5 |       53 |     88 |      20 |     161 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8456 | Info   |    64 |       98 |     46 |      14 |     158 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8446 | PS     |   160 |       85 |     57 |       0 |     142 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8355 | Info   |    13 |       83 |     15 |       1 |      99 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8441 | PS     |     8 |       56 |     33 |       3 |      92 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8324 | Info   |    29 |       42 |     28 |       1 |      71 |
    |       | (ISE)  |       |          |        |         |         |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8377 | PS     |     8 |       39 |    102 |       0 |     141 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8498 | Info   |    15 |       48 |     16 |       1 |      65 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8479 | Info   |     8 |       31 |      5 |       1 |      37 |
    |       | (ISE)  |       |          |        |         |         |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8453 | Info   |    42 |       73 |      7 |       3 |      83 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8429 | BCP    |    10 |       60 |     99 |       0 |     159 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8312 | Info   |    18 |       55 |     28 |       2 |      85 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8492 | Info   |    40 |      355 |    123 |       2 |     480 |
    |       | (ISE)  |       |          |        |         |         |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8378 | Exp    |    21 |       42 |      9 |       0 |      51 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8361 | PS     |    17 |       39 |     31 |       3 |      73 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8472 | PS     |     8 |       59 |      8 |      13 |      80 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8471 | PS     |    18 |       59 |      8 |      13 |      80 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8466 | PS     |   158 |       84 |     22 |       3 |     109 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8362 | PS     |    33 |       49 |     11 |       4 |      64 |
    +-------+--------+-------+----------+--------+---------+---------+
    |  8468 | Info   |    15 |       65 |     53 |       9 |     127 |
    +-------+--------+-------+----------+--------+---------+---------+
    | Average        |       |       74 |     39 |       5 |     118 |
    +----------------+-------+----------+--------+---------+---------+
    | Average        |       |       59 |     35 |       5 |      99 |
    | (without 8492) |       |          |        |         |         |
    +----------------+-------+----------+--------+---------+---------+

                                 Table 7

   On average, the total delay appears to be about four months, but the
   average is skewed by the extreme values encountered for [RFC8492].
   If we exclude that RFC from the computations, the average delay drops
   to a just a bit more than 3 months: about 2 months for the
   preparation, a bit more than one month for the AUTH48 phase, and 5
   days for the publishing.

   Of course, these delays vary from RFC to RFC.  To try explain the
   causes of the delay, we compute the correlation factor between the
   observed delays and several plausible explanation factors:

   *  the number of pages in the document,

   *  the amount of copy editing, as discussed in Section 4.4,

   *  whether or not IANA actions were required,

   *  the number of authors,

   *  the number of draft revisions,

   *  the working group delay.

   We find the following values:

          +===================+==========+========+=============+
          | Correlation       | RFC edit | AUTH48 | Edit(total) |
          +===================+==========+========+=============+
          | Number of pages   |     0.50 |  -0.04 |        0.21 |
          +-------------------+----------+--------+-------------+
          | Copy-Edit         |     0.42 |   0.24 |        0.45 |
          +-------------------+----------+--------+-------------+
          | IANA              |    -0.14 |  -0.21 |        0.12 |
          +-------------------+----------+--------+-------------+
          | Number of authors |     0.39 |  -0.07 |        0.18 |
          +-------------------+----------+--------+-------------+
          | Number of drafts  |     0.18 |  -0.33 |       -0.19 |
          +-------------------+----------+--------+-------------+
          | WG delay          |     0.03 |  -0.16 |       -0.15 |
          +-------------------+----------+--------+-------------+

                                  Table 8

   We see some plausible explanations for the production delay.  It will
   be somewhat longer for longer documents or for documents that require
   a lot of copy editing (see Section 4.4).  Somewhat surprisingly, it
   also tends to increase with the number of authors.  It does not
   appear significantly correlated with the presence or absence of IANA
   action.

   The analysis of RFC 8324 in Section 3.6 explains its short editing
   delays by the experience of the author.  This makes sense: if a
   document needs less editing, the editing delays would be shorter.
   This is partially confirmed by the relation between the amount of
   copy editing and the publication delay.

   We see fewer plausible explanations for the AUTH48 delays.  These
   delays vary much more than the preparation delay, with a standard
   deviation of 20 days for AUTH48 versus 10 days for the preparation
   delay.  In theory, AUTH48 is just a final verification: the authors
   receive the document prepared by the RFC production center, and just
   have to give their approval, or maybe request a last minute
   correction.  The name indicates that this is expected to last just
   two days, but in average it lasts more than a month.

   We often hypothesize that the number of authors influences the AUTH48
   delay, or that authors who have spent a long time working on the
   document in the working group somehow get demotivated and spend even
   longer to answer questions during AUTH48.  This may happen sometimes,
   but our statistics don't show that - if anything, the numerical
   results point in the opposite direction.

   After asking the authors of the RFCs in the sample why the AUTH48
   phase took a long time, we got three explanations:

   1.  Some RFCs have multiple authors in multiple time zones.  This
       slows down the coordination required for approving changes.

   2.  Some authors found some of the proposed changes unnecessary or
       undesirable, and asked that they be reversed.  This required long
       exchanges between authors and editors.

   3.  Some authors were not giving high priority to AUTH48 responses.

   As mentioned above, we were not able to verify these hypotheses by
   looking at the data.  The author's experience with this document
   suggests another potential delay for the Independent Stream RFC:
   processing delay by the Independent Submissions Editor, discussed in
   Section 4.5.

4.4.  Copy Editing

   We can assess the amount of copy editing applied to each published
   RFC by comparing the text of the draft approved for publication and
   the text of the RFC.  We do expect differences in the "boilerplate"
   and in the IANA section, but we will also see differences due to copy
   editing.  Assessing the amount of copy editing is subjective, and we
   do it using a scale of 1 to 4:

   1:  Minor editing

   2:  Editing for style, such as capitalization, hyphens, "that" versus
       "which", and expanding all acronyms at least once.

   3:  Editing for clarity in addition to style, such as rewriting
       ambiguous sentences and clarifying use of internal references.
       For YANG models, that may include model corrections suggested by
       the verifier.

   4:  Extensive editing.

   The following table shows that about half of the RFCs required
   editing for style, and the other half at least some editing for
   clarity.

                     +======+============+===========+
                     |  RFC | Status     | Copy Edit |
                     +======+============+===========+
                     | 8411 | Info       |         2 |
                     +------+------------+-----------+
                     | 8456 | Info       |         4 |
                     +------+------------+-----------+
                     | 8446 | PS         |         3 |
                     +------+------------+-----------+
                     | 8355 | Info       |         2 |
                     +------+------------+-----------+
                     | 8441 | PS         |         2 |
                     +------+------------+-----------+
                     | 8324 | Info (ISE) |         2 |
                     +------+------------+-----------+
                     | 8377 | PS         |         3 |
                     +------+------------+-----------+
                     | 8498 | Info       |         3 |
                     +------+------------+-----------+
                     | 8479 | Info (ISE) |         1 |
                     +------+------------+-----------+
                     | 8453 | Info       |         2 |
                     +------+------------+-----------+
                     | 8429 | BCP        |         2 |
                     +------+------------+-----------+
                     | 8312 | Info       |         2 |
                     +------+------------+-----------+
                     | 8492 | Info (ISE) |         3 |
                     +------+------------+-----------+
                     | 8378 | Exp        |         2 |
                     +------+------------+-----------+
                     | 8361 | PS         |         2 |
                     +------+------------+-----------+
                     | 8472 | PS         |         2 |
                     +------+------------+-----------+
                     | 8471 | PS         |         2 |
                     +------+------------+-----------+
                     | 8466 | PS         |         3 |
                     +------+------------+-----------+
                     | 8362 | PS         |         3 |
                     +------+------------+-----------+
                     | 8468 | Info       |         3 |
                     +------+------------+-----------+

                                  Table 9

   This method of assessment does not take into account the number of
   changes proposed by the editors and eventually rejected by the
   authors, since these changes are not present in either the final
   draft or the published RFC.  It might be possible to get an
   evaluation of these "phantom changes" from the RFC Production Center.

4.5.  Independent Stream

   Out of 20 randomly selected RFCs, 3 were published through the
   Independent Stream.  One is an independent opinion, another a
   description of a non-IETF protocol format, and the third was
   [RFC8492], which is a special case.  Apart from this special case,
   the publication delays were significantly shorter for the Independent
   Stream than for the IETF Stream.

   The authors of these 3 RFCs are regular IETF contributors.  This
   observation motivated a secondary analysis of all the RFCs published
   in the Independent Stream in 2018.  There are 14 such RFCs: 8507,
   8494, 8493, 8492, 8483, 8479, 8433, 8409, 8374, 8369, 8367, 8351,
   8328, and 8324.  (RFCs 8367 and 8369 were published on 1 April 2018.)
   The majority of the documents were published by regular IETF
   participants, but two of them were not.  One describes "The BagIt
   File Packaging Format (V1.0)" [RFC8493], and the other the "Yeti DNS
   Testbed" [RFC8483].  They document a data format and a system
   developed outside the IETF and illustrate the outreach function of
   the Independent Stream.  In both cases, the authors include one
   experienced IETF participant, who presumably helped outsiders
   navigate the publication process.

   The present document experienced some publication delays due to the
   Independent Submissions Editor.  The ISE is a bottleneck and is a
   volunteer resource.  Although the ISE as a lone person operating as a
   volunteer is still roughly adequate resource for the job, the
   delivery will necessarily be best effort with delays caused by spikes
   in ISE load, work commitments, and other life events.  These delays
   may not be fundamentally critical to RFC delivery, but they are
   capable of introducing a significant percentage delay into what might
   otherwise be a smooth process.

5.  Citation Counts

   In this exploration, we want to examine whether citation counts
   provide a meaningful assessment of the popularity of RFCs.  We obtain
   the citation counts through the Semantic Scholar API, using queries
   of the form: <https://api.semanticscholar.org/v1/paper/10.17487/
   rfc8446?include_unknown_references=true>

   In these queries, the RFC is uniquely identified by its DOI
   reference, which is composed of the RFC Series prefix 10.17487 and
   the RFC identifier.  The queries return a series of properties,
   including a list of citations for the RFC.  Based on that list of
   citations, we compute three numbers:

   *  The total number of citations

   *  The number of citations in the year of publication and the year
      after that

   *  For the RFC published in 1998 or 2008 that we use for comparison,
      the number of citations in the years 2018 and 2019.

   All the numbers were retrieved on October 6, 2019.

5.1.  Citation Numbers

   As measured on October 6, 2019, the citation counts for the RFC in
   our sample set were:

              +============+============+=======+===========+
              | RFC (2018) | Status     | Total | 2018-2019 |
              +============+============+=======+===========+
              | 8411       | Info       |     1 |         0 |
              +------------+------------+-------+-----------+
              | 8456       | Info       |     1 |         1 |
              +------------+------------+-------+-----------+
              | 8446       | PS         |   418 |       204 |
              +------------+------------+-------+-----------+
              | 8355       | Info       |     3 |         3 |
              +------------+------------+-------+-----------+
              | 8441       | PS         |     1 |         1 |
              +------------+------------+-------+-----------+
              | 8324       | Info (ISE) |     0 |         0 |
              +------------+------------+-------+-----------+
              | 8377       | PS         |     0 |         0 |
              +------------+------------+-------+-----------+
              | 8498       | Info       |     0 |         0 |
              +------------+------------+-------+-----------+
              | 8479       | Info (ISE) |     0 |         0 |
              +------------+------------+-------+-----------+
              | 8453       | Info       |     3 |         3 |
              +------------+------------+-------+-----------+
              | 8429       | BCP        |     0 |         0 |
              +------------+------------+-------+-----------+
              | 8312       | Info       |    25 |        16 |
              +------------+------------+-------+-----------+
              | 8492       | Info (ISE) |     4 |         4 |
              +------------+------------+-------+-----------+
              | 8378       | Exp        |     1 |         1 |
              +------------+------------+-------+-----------+
              | 8361       | PS         |     0 |         0 |
              +------------+------------+-------+-----------+
              | 8472       | PS         |     1 |         1 |
              +------------+------------+-------+-----------+
              | 8471       | PS         |     1 |         1 |
              +------------+------------+-------+-----------+
              | 8466       | PS         |     0 |         0 |
              +------------+------------+-------+-----------+
              | 8362       | PS         |     1 |         1 |
              +------------+------------+-------+-----------+
              | 8468       | Info       |     1 |         1 |
              +------------+------------+-------+-----------+

                                  Table 10

   The results indicate that [RFC8446] is by far the most cited of the
   20 RFC in our sample.  This is not surprising, since TLS is a key
   Internet Protocol.  The TLS 1.3 protocol was also the subject of
   extensive studies by researchers, and thus was mentioned in a number
   of published papers.  Surprisingly, the Semantic Scholar mentions a
   number of citations that predate the publication date.  These are
   probably citations of the various draft versions of the protocol.

   The next most cited RFC in the sample is [RFC8312] which describes
   the Cubic congestion control algorithm for TCP.  That protocol was
   also the target of a large number of academic publications.  The
   other RFCs in the sample only have a small number of citations.

   There is probably a small bias when measuring citations at a fixed
   date.  An RFC published in January 2018 would have more time to
   accrue citations than one published in December.  That may be true to
   some extent, as the second most cited RFC in the set was published in
   January.  However, the effect has to be limited.  The most cited RFC
   was published in August, and the second most cited was published in
   2019.  (That RFC got an RFC number in 2018, but publication was
   slowed by long AUTH48 delays.)

5.2.  Comparison to 1998 and 2008

   In order to get a baseline, we can look at the number of references
   for the RFCs published in 2008 and 1998.  However, we need to take
   time into account.  Documents published a long time ago are expected
   to have accrued more references.  We try to address this by looking
   at three counts for each document: the overall number of references
   over the document's lifetime, the number of references obtained in
   the year following publication, and the number of references observed
   since 2018:

        +============+============+=======+===========+===========+
        | RFC (2008) | Status     | Total | 2008-2009 | 2018-2019 |
        +============+============+=======+===========+===========+
        | 5326       | Exp        |   138 |        14 |        15 |
        +------------+------------+-------+-----------+-----------+
        | 5348       | PS         |    14 |         3 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5281       | Info       |    69 |        15 |         7 |
        +------------+------------+-------+-----------+-----------+
        | 5354       | Exp        |    17 |        13 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5227       | PS         |    19 |         1 |         2 |
        +------------+------------+-------+-----------+-----------+
        | 5329       | PS         |    24 |         6 |         1 |
        +------------+------------+-------+-----------+-----------+
        | 5277       | PS         |    32 |         3 |         2 |
        +------------+------------+-------+-----------+-----------+
        | 5236       | Info (ISE) |    25 |         5 |         4 |
        +------------+------------+-------+-----------+-----------+
        | 5358       | BCP        |    21 |         2 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5271       | Info       |     7 |         2 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5195       | PS         |     7 |         4 |         2 |
        +------------+------------+-------+-----------+-----------+
        | 5283       | PS         |     8 |         1 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5186       | Info       |    14 |         4 |         2 |
        +------------+------------+-------+-----------+-----------+
        | 5142       | PS         |     8 |         4 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5373       | PS         |     5 |         2 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5404       | PS         |     1 |         1 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5172       | PS         |     2 |         0 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5349       | Info       |     8 |         0 |         2 |
        +------------+------------+-------+-----------+-----------+
        | 5301       | PS         |     5 |         1 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 5174       | Info       |     0 |         0 |         0 |
        +------------+------------+-------+-----------+-----------+

                                  Table 11

        +============+============+=======+===========+===========+
        | RFC (1998) | Status     | Total | 1998-1999 | 2018-2019 |
        +============+============+=======+===========+===========+
        | 2289       | PS         |     2 |         0 |         1 |
        +------------+------------+-------+-----------+-----------+
        | 2267       | Info       |   982 |         5 |        61 |
        +------------+------------+-------+-----------+-----------+
        | 2317       | BCP        |     9 |         1 |         2 |
        +------------+------------+-------+-----------+-----------+
        | 2404       | PS         |   137 |         6 |         1 |
        +------------+------------+-------+-----------+-----------+
        | 2374       | PS         |    42 |         4 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2449       | PS         |     7 |         2 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2283       | PS         |    17 |         3 |         2 |
        +------------+------------+-------+-----------+-----------+
        | 2394       | Info       |    13 |         2 |         1 |
        +------------+------------+-------+-----------+-----------+
        | 2348       | DS         |     5 |         0 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2382       | Info       |    17 |        12 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2297       | Info (ISE) |    36 |        11 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2381       | PS         |    39 |        12 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2312       | Info       |    14 |         3 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2387       | PS         |     4 |         1 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2398       | Info       |    17 |         0 |         1 |
        +------------+------------+-------+-----------+-----------+
        | 2391       | PS         |    31 |         3 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2431       | PS         |     3 |         0 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2282       | Info       |     8 |         0 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2323       | Info (ISE) |     1 |         0 |         0 |
        +------------+------------+-------+-----------+-----------+
        | 2448       | Info (ISE) |     0 |         0 |         0 |
        +------------+------------+-------+-----------+-----------+

                                  Table 12

   We can compare the median number of citations and the numbers of
   citations for the least and most popular quartiles in the three
   years:

     +============================+===========+========+============+
     | References                 | Lower 25% | Median | Higher 25% |
     +============================+===========+========+============+
     | RFC (2018)                 |         0 |      1 |          3 |
     +----------------------------+-----------+--------+------------+
     | RFC (2008)                 |       6.5 |     11 |      21.75 |
     +----------------------------+-----------+--------+------------+
     | RFC (2008), until 2009     |         1 |    2.5 |        4.5 |
     +----------------------------+-----------+--------+------------+
     | RFC (2008), 2018 and after |         0 |      0 |          2 |
     +----------------------------+-----------+--------+------------+
     | RFC (1998)                 |      4.75 |   13.5 |      32.25 |
     +----------------------------+-----------+--------+------------+
     | RFC (1998), until 1999     |         0 |      2 |       4.25 |
     +----------------------------+-----------+--------+------------+
     | RFC (1998), 2018 and after |         0 |      0 |          1 |
     +----------------------------+-----------+--------+------------+

                                 Table 13

   The total numbers show new documents with fewer citations than the
   older ones.  This can be explained to some degree by the passage of
   time.  If we restrict the analysis to the number of citations accrued
   in the year of publishing and the year after that, we still see about
   the same distribution for the three samples.

   We also see that the number of references to RFCs fades over time.
   Only the most popular of the RFC produced in 1998 are still cited in
   2019.

5.3.  Citations versus Deployments

   The following table shows side by side the number of citations as
   measured in Section 5.1 and the estimation of deployment as indicated
   in Section 3.

           +============+============+===========+============+
           | RFC (2018) | Status     | Citations | Deployment |
           +============+============+===========+============+
           | 8411       | Info       |         1 |     medium |
           +------------+------------+-----------+------------+
           | 8456       | Info       |         1 |     medium |
           +------------+------------+-----------+------------+
           | 8446       | PS         |       418 |       high |
           +------------+------------+-----------+------------+
           | 8355       | Info       |         3 |     medium |
           +------------+------------+-----------+------------+
           | 8441       | PS         |         1 |       high |
           +------------+------------+-----------+------------+
           | 8324       | Info (ISE) |         0 |        N/A |
           +------------+------------+-----------+------------+
           | 8377       | PS         |         0 |    unknown |
           +------------+------------+-----------+------------+
           | 8498       | Info       |         0 |    unknown |
           +------------+------------+-----------+------------+
           | 8479       | Info (ISE) |         0 |        one |
           +------------+------------+-----------+------------+
           | 8453       | Info       |         3 |    unknown |
           +------------+------------+-----------+------------+
           | 8429       | BCP        |         0 |       some |
           +------------+------------+-----------+------------+
           | 8312       | Info       |        25 |       high |
           +------------+------------+-----------+------------+
           | 8492       | Info (ISE) |         4 |        one |
           +------------+------------+-----------+------------+
           | 8378       | Exp        |         1 |       some |
           +------------+------------+-----------+------------+
           | 8361       | PS         |         0 |        one |
           +------------+------------+-----------+------------+
           | 8472       | PS         |         1 |     medium |
           +------------+------------+-----------+------------+
           | 8471       | PS         |         1 |     medium |
           +------------+------------+-----------+------------+
           | 8466       | PS         |         0 |    unknown |
           +------------+------------+-----------+------------+
           | 8362       | PS         |         1 |     medium |
           +------------+------------+-----------+------------+
           | 8468       | Info       |         1 |       some |
           +------------+------------+-----------+------------+

                                 Table 14

   From looking at these results, it is fairly obvious that citation
   counts cannot be used as proxies for the "value" of an RFC.  In our
   sample, the two RFCs that have high citation counts were both widely
   deployed, and can certainly be described as successful, but we also
   see many RFCs that saw significant deployment without garnering a
   high level of citations.

   Citation counts are driven by academic interest, but are only loosely
   correlated with actual deployment.  We saw that [RFC8446] was widely
   cited in part because the standardization process involved many
   researchers, and that the high citation count of [RFC8312] is largely
   due to the academic interest in evaluating congestion control
   protocols.  If we look at previous years, the most cited RFC in the
   2008 sample is [RFC5326], an experimental RFC defining security
   extensions to an experimental delay tolerant transport protocol.
   This protocol does not carry a significant proportion of Internet
   traffic, but has been the object of a fair number of academic
   studies.

   The citation process tends to privilege the first expression of a
   concept.  We see that with the most cited RFC in the 1998 set is
   [RFC2267], an informational RFC defining Network Ingress Filtering
   that was obsoleted in May 2000 by [RFC2827].  It is still cited
   frequently in 2018 and 2019, regardless of its formal status in the
   RFC Series.  We see the same effect at work with [RFC8441], which
   garners very few citations although it updates [RFC6455] that has a
   large number of citations.  The same goes for [RFC8468], which is
   sparsely cited while the [RFC2330] is widely cited.  Just counting
   citations will not indicate whether developers still use an old
   specification or have adopted the revised RFC.

5.4.  Citations versus Web References

   Web references might be another indicator of the popularity of an
   RFC.  In order to evaluate these references, we list here the number
   of results returned by searches on Google and Bing, looking for the
   search term "RFCnnnn" (e.g., "RFC8411"), and copying the number of
   results returned by the search engines.  The table below presents the
   results of these searches, performed on April 4, 2020.

         +============+============+===========+========+=======+
         | RFC (2018) | Status     | Citations | Google |  Bing |
         +============+============+===========+========+=======+
         | 8411       | Info       |         1 |    301 |    94 |
         +------------+------------+-----------+--------+-------+
         | 8456       | Info       |         1 |    266 |  8456 |
         +------------+------------+-----------+--------+-------+
         | 8446       | PS         |       418 |  25900 | 47800 |
         +------------+------------+-----------+--------+-------+
         | 8355       | Info       |         3 |    521 |   114 |
         +------------+------------+-----------+--------+-------+
         | 8441       | PS         |         1 |   2430 | 59500 |
         +------------+------------+-----------+--------+-------+
         | 8324       | Info (ISE) |         0 |    393 |   138 |
         +------------+------------+-----------+--------+-------+
         | 8377       | PS         |         0 |    264 | 10900 |
         +------------+------------+-----------+--------+-------+
         | 8498       | Info       |         0 |    335 | 10100 |
         +------------+------------+-----------+--------+-------+
         | 8479       | Info (ISE) |         0 |    564 | 11000 |
         +------------+------------+-----------+--------+-------+
         | 8453       | Info       |         3 |    817 | 11400 |
         +------------+------------+-----------+--------+-------+
         | 8429       | BCP        |         0 |    391 | 41600 |
         +------------+------------+-----------+--------+-------+
         | 8312       | Info       |        25 |   1620 |  2820 |
         +------------+------------+-----------+--------+-------+
         | 8492       | Info (ISE) |         4 |    323 |  9400 |
         +------------+------------+-----------+--------+-------+
         | 8378       | Exp        |         1 |    418 | 11600 |
         +------------+------------+-----------+--------+-------+
         | 8361       | PS         |         0 |    499 |    92 |
         +------------+------------+-----------+--------+-------+
         | 8472       | PS         |         1 |    496 |   169 |
         +------------+------------+-----------+--------+-------+
         | 8471       | PS         |         1 |   1510 | 11600 |
         +------------+------------+-----------+--------+-------+
         | 8466       | PS         |         0 |    766 |   173 |
         +------------+------------+-----------+--------+-------+
         | 8362       | PS         |         1 |     67 |   147 |
         +------------+------------+-----------+--------+-------+
         | 8468       | Info       |         1 |    453 |   127 |
         +------------+------------+-----------+--------+-------+

                                 Table 15

   The result counts from Bing are sometimes surprising.  Why would RFC
   8441 gather 59,500 web references?  Looking at the results in detail,
   we find a mix of data.  Some of them are logs of development projects
   implementing Web Sockets, which is exactly what we are looking for,
   but others appear spurious.  For example, a shop selling rugby
   jerseys is listed because its phone number ends with "8441".  Other
   pages were listed because street numbers or product numbers matched
   the RFC number.  The same type of collision may explain the large
   reference counts on Bing for RFCs 8377, 8498, 8479, 8453, 8429, 8378,
   and 8471.  The result counts on Bing do not appear to provide a good
   metric.

   On Google, all RFCs garner at least a 250 references, largely because
   the whole RFC catalog is replicated on a large number of web servers.
   Deviations from that baseline are largely correlated with the number
   of citations in the Semantic Scholar, with a couple of exception: RFC
   8441 and RFC 8471 garner more references than the low citation counts
   would predict.  Looking at the results, we find many references in
   development databases explaining how these protocols are implemented
   in various code bases and open source projects.  This means that
   counting Google results would give some indication about an RFC's
   popularity, complementing the citation counts.

   There are some practical problems in using the counts of Google
   results.  Google searches are personalized, the results depend on the
   source of the queries, and the counts may vary as well.  The search
   results depend on the search algorithm, and there is no guarantee
   that counts will not change when the algorithm changes.  On the other
   hand, the results do indicate that some of the RFCs in our sample are
   being used by developers or in deployments.

6.  Observations and Next Steps

   The author's goal was to get a personal understanding of the "chain
   of production" of the RFCs, and in particular to look at the various
   causes of delays in the process.  As shown in Section 4, the average
   RFC was produced in 3 years and 4 months, which is similar to what
   was found in the 2008 sample, but more than three times larger than
   the delays for the 1998 sample.

   The working group process appears to be the main source of delays.
   Efforts to diminish delays should probably focus there, instead of on
   the IETF and IESG reviews or the RFC production.  For the RFC
   production phase, most of the variability originates in the AUTH48
   process, which is influenced by a variety of factors such as number
   of authors or level of engagement of these authors.

   Most of the delay is spent in the working group, but the IETF
   Datatracker does not hold much information about what happens inside
   the working groups.  For example, events like Working Group Last
   Calls were not recorded in the history of the selected drafts
   available in the Datatracker.  Such information would have been
   interesting.  Of course, requiring that information would create an
   administrative burden, so there is clearly a trade-off between
   requiring more work from working group chairs and providing better
   data for process analysis.  (It appears that this information can be
   available in the Datatracker for more recent drafts, if the WG chairs
   use the Datatracker properly.)

   The Independent Stream operates as expected.  The majority of the
   authors of the Independent Stream RFCs appear to be in IETF insiders,
   but there is significant amount of engagement by outside parties.

   The analysis of citations in Section 5.1 shows that citation numbers
   are a very poor indication of the "value" of an RFC.  Citation
   numbers measure the engagement of academic researchers with specific
   topics, but have little correlation with the level of adoption and
   deployment of a specific RFC.  The result counts of Google searches
   do capture references outside academia, such as logs of development
   projects.  This might be informative, but it is not clear that the
   counts would not change over time due to algorithm changes or
   personalization.

   This document analyses a small sample of RFCs "in depth".  This
   allowed gathering of detailed feedback on the process and the
   deployments.  On the other hand, much of the data on delays is
   available from the IETF Datatracker.  It may be worth considering
   adding an automated reporting of delay metrics in the IETF
   Datatracker.

   This document only considers the RFCs that were published in a given
   year.  This approach can be criticized as introducing a form of
   "survivor bias".  There are many drafts proposed to the IETF, and
   only a fraction of them end up being published as RFCs.  On one hand,
   this is expected, because part of the process is to triage between
   ideas that can gather consensus and those that don't.  On the other
   hand, we don't know whether that triage is too drastic and has
   discouraged progress on good ideas.

   One way to evaluate the triage process would be to look at
   publication attempts that were abandoned -- for example, drafts that
   expired without progressing or being replaced.  The sampling
   methodology could also be used for that purpose.  Pick maybe 20
   drafts at random, among those abandoned in a target year, and
   investigate why they were abandoned.  Was it because better solutions
   emerged in the working group?  Or maybe because the authors
   discovered a flaw in their proposal?  Or was it because some
   factional struggle blocked a good idea?  Was the idea pursued in a
   different venue?  Hopefully, someone will try this kind of
   investigation.

7.  Security Considerations

   This document does not specify any protocol.

   We might want to analyze whether security issues were discovered
   after publication of specific standards.

8.  IANA Considerations

   This document has no IANA actions.

   Preliminary analysis does not indicate that IANA is causing any
   particular delay in the RFC publication process.

9.  Informative References

   [IETFCOUNT]
              IETF, "Past IETF Meetings",
              <https://www.ietf.org/how/meetings/past/>.

   [RFC2267]  Ferguson, P. and D. Senie, "Network Ingress Filtering:
              Defeating Denial of Service Attacks which employ IP Source
              Address Spoofing", RFC 2267, DOI 10.17487/RFC2267, January
              1998, <https://www.rfc-editor.org/info/rfc2267>.

   [RFC2330]  Paxson, V., Almes, G., Mahdavi, J., and M. Mathis,
              "Framework for IP Performance Metrics", RFC 2330,
              DOI 10.17487/RFC2330, May 1998,
              <https://www.rfc-editor.org/info/rfc2330>.

   [RFC2827]  Ferguson, P. and D. Senie, "Network Ingress Filtering:
              Defeating Denial of Service Attacks which employ IP Source
              Address Spoofing", BCP 38, RFC 2827, DOI 10.17487/RFC2827,
              May 2000, <https://www.rfc-editor.org/info/rfc2827>.

   [RFC5326]  Ramadas, M., Burleigh, S., and S. Farrell, "Licklider
              Transmission Protocol - Specification", RFC 5326,
              DOI 10.17487/RFC5326, September 2008,
              <https://www.rfc-editor.org/info/rfc5326>.

   [RFC6455]  Fette, I. and A. Melnikov, "The WebSocket Protocol",
              RFC 6455, DOI 10.17487/RFC6455, December 2011,
              <https://www.rfc-editor.org/info/rfc6455>.

   [RFC8312]  Rhee, I., Xu, L., Ha, S., Zimmermann, A., Eggert, L., and
              R. Scheffenegger, "CUBIC for Fast Long-Distance Networks",
              RFC 8312, DOI 10.17487/RFC8312, February 2018,
              <https://www.rfc-editor.org/info/rfc8312>.

   [RFC8324]  Klensin, J., "DNS Privacy, Authorization, Special Uses,
              Encoding, Characters, Matching, and Root Structure: Time
              for Another Look?", RFC 8324, DOI 10.17487/RFC8324,
              February 2018, <https://www.rfc-editor.org/info/rfc8324>.

   [RFC8355]  Filsfils, C., Ed., Previdi, S., Ed., Decraene, B., and R.
              Shakir, "Resiliency Use Cases in Source Packet Routing in
              Networking (SPRING) Networks", RFC 8355,
              DOI 10.17487/RFC8355, March 2018,
              <https://www.rfc-editor.org/info/rfc8355>.

   [RFC8361]  Hao, W., Li, Y., Durrani, M., Gupta, S., and A. Qu,
              "Transparent Interconnection of Lots of Links (TRILL):
              Centralized Replication for Active-Active Broadcast,
              Unknown Unicast, and Multicast (BUM) Traffic", RFC 8361,
              DOI 10.17487/RFC8361, April 2018,
              <https://www.rfc-editor.org/info/rfc8361>.

   [RFC8362]  Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and
              F. Baker, "OSPFv3 Link State Advertisement (LSA)
              Extensibility", RFC 8362, DOI 10.17487/RFC8362, April
              2018, <https://www.rfc-editor.org/info/rfc8362>.

   [RFC8377]  Eastlake 3rd, D., Zhang, M., and A. Banerjee, "Transparent
              Interconnection of Lots of Links (TRILL): Multi-Topology",
              RFC 8377, DOI 10.17487/RFC8377, July 2018,
              <https://www.rfc-editor.org/info/rfc8377>.

   [RFC8378]  Moreno, V. and D. Farinacci, "Signal-Free Locator/ID
              Separation Protocol (LISP) Multicast", RFC 8378,
              DOI 10.17487/RFC8378, May 2018,
              <https://www.rfc-editor.org/info/rfc8378>.

   [RFC8402]  Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
              Decraene, B., Litkowski, S., and R. Shakir, "Segment
              Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
              July 2018, <https://www.rfc-editor.org/info/rfc8402>.

   [RFC8410]  Josefsson, S. and J. Schaad, "Algorithm Identifiers for
              Ed25519, Ed448, X25519, and X448 for Use in the Internet
              X.509 Public Key Infrastructure", RFC 8410,
              DOI 10.17487/RFC8410, August 2018,
              <https://www.rfc-editor.org/info/rfc8410>.

   [RFC8411]  Schaad, J. and R. Andrews, "IANA Registration for the
              Cryptographic Algorithm Object Identifier Range",
              RFC 8411, DOI 10.17487/RFC8411, August 2018,
              <https://www.rfc-editor.org/info/rfc8411>.

   [RFC8429]  Kaduk, B. and M. Short, "Deprecate Triple-DES (3DES) and
              RC4 in Kerberos", BCP 218, RFC 8429, DOI 10.17487/RFC8429,
              October 2018, <https://www.rfc-editor.org/info/rfc8429>.

   [RFC8441]  McManus, P., "Bootstrapping WebSockets with HTTP/2",
              RFC 8441, DOI 10.17487/RFC8441, September 2018,
              <https://www.rfc-editor.org/info/rfc8441>.

   [RFC8446]  Rescorla, E., "The Transport Layer Security (TLS) Protocol
              Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
              <https://www.rfc-editor.org/info/rfc8446>.

   [RFC8453]  Ceccarelli, D., Ed. and Y. Lee, Ed., "Framework for
              Abstraction and Control of TE Networks (ACTN)", RFC 8453,
              DOI 10.17487/RFC8453, August 2018,
              <https://www.rfc-editor.org/info/rfc8453>.

   [RFC8455]  Bhuvaneswaran, V., Basil, A., Tassinari, M., Manral, V.,
              and S. Banks, "Terminology for Benchmarking Software-
              Defined Networking (SDN) Controller Performance",
              RFC 8455, DOI 10.17487/RFC8455, October 2018,
              <https://www.rfc-editor.org/info/rfc8455>.

   [RFC8456]  Bhuvaneswaran, V., Basil, A., Tassinari, M., Manral, V.,
              and S. Banks, "Benchmarking Methodology for Software-
              Defined Networking (SDN) Controller Performance",
              RFC 8456, DOI 10.17487/RFC8456, October 2018,
              <https://www.rfc-editor.org/info/rfc8456>.

   [RFC8466]  Wen, B., Fioccola, G., Ed., Xie, C., and L. Jalil, "A YANG
              Data Model for Layer 2 Virtual Private Network (L2VPN)
              Service Delivery", RFC 8466, DOI 10.17487/RFC8466, October
              2018, <https://www.rfc-editor.org/info/rfc8466>.

   [RFC8468]  Morton, A., Fabini, J., Elkins, N., Ackermann, M., and V.
              Hegde, "IPv4, IPv6, and IPv4-IPv6 Coexistence: Updates for
              the IP Performance Metrics (IPPM) Framework", RFC 8468,
              DOI 10.17487/RFC8468, November 2018,
              <https://www.rfc-editor.org/info/rfc8468>.

   [RFC8471]  Popov, A., Ed., Nystroem, M., Balfanz, D., and J. Hodges,
              "The Token Binding Protocol Version 1.0", RFC 8471,
              DOI 10.17487/RFC8471, October 2018,
              <https://www.rfc-editor.org/info/rfc8471>.

   [RFC8472]  Popov, A., Ed., Nystroem, M., and D. Balfanz, "Transport
              Layer Security (TLS) Extension for Token Binding Protocol
              Negotiation", RFC 8472, DOI 10.17487/RFC8472, October
              2018, <https://www.rfc-editor.org/info/rfc8472>.

   [RFC8479]  Mavrogiannopoulos, N., "Storing Validation Parameters in
              PKCS#8", RFC 8479, DOI 10.17487/RFC8479, September 2018,
              <https://www.rfc-editor.org/info/rfc8479>.

   [RFC8483]  Song, L., Ed., Liu, D., Vixie, P., Kato, A., and S. Kerr,
              "Yeti DNS Testbed", RFC 8483, DOI 10.17487/RFC8483,
              October 2018, <https://www.rfc-editor.org/info/rfc8483>.

   [RFC8492]  Harkins, D., Ed., "Secure Password Ciphersuites for
              Transport Layer Security (TLS)", RFC 8492,
              DOI 10.17487/RFC8492, February 2019,
              <https://www.rfc-editor.org/info/rfc8492>.

   [RFC8493]  Kunze, J., Littman, J., Madden, E., Scancella, J., and C.
              Adams, "The BagIt File Packaging Format (V1.0)", RFC 8493,
              DOI 10.17487/RFC8493, October 2018,
              <https://www.rfc-editor.org/info/rfc8493>.

   [RFC8498]  Mohali, M., "A P-Served-User Header Field Parameter for an
              Originating Call Diversion (CDIV) Session Case in the
              Session Initiation Protocol (SIP)", RFC 8498,
              DOI 10.17487/RFC8498, February 2019,
              <https://www.rfc-editor.org/info/rfc8498>.

   [RFCYEAR]  RFC Editor, "Number of RFC Published per YEAR",
              <https://www.rfc-editor.org/rfcs-per-year/>.

   [SSCH]     Allen Institute for AI, "Semantic Scholar | AI-Powered
              Research Tool", <https://www.semanticscholar.org/>.

   [TI-LFA]   Litkowski, S., Bashandy, A., Filsfils, C., Decraene, B.,
              and D. Voyer, "Topology Independent Fast Reroute using
              Segment Routing", Work in Progress, Internet-Draft, draft-
              ietf-rtgwg-segment-routing-ti-lfa-05, 15 November 2020,
              <https://tools.ietf.org/html/draft-ietf-rtgwg-segment-
              routing-ti-lfa-05>.

   [TLS13IMP] TLS WG, "TLS 1.3 Implementations", commit dcb7890, 14
              October 2019, <https://github.com/tlswg/tlswg-
              wiki/blob/master/IMPLEMENTATIONS.md>.

   [TRKR]     IETF, "IETF Datatracker", <https://datatracker.ietf.org/>.

Acknowledgements

   Many thanks to the authors of the selected RFCs who were willing to
   provide feedback on the process: Michael Ackermann, Zafar Ali, Sarah
   Banks, Bruno Decraene, Lars Eggert, Nalini Elkins, Joachim Fabini,
   Dino Farinacci, Clarence Filsfils, Sujay Gupta, Dan Harkins, Vinayak
   Hegde, Benjamin Kaduk, John Klensin, Acee Lindem, Nikos
   Mavrogiannopoulos, Patrick McManus, Victor Moreno, Al Morton, Andrei
   Popov, Eric Rescorla, Michiko Short, Bhuvaneswaran Vengainathan, Lao
   Weiguo, and Li Yizhou.  Many thanks to Adrian Farrel for his useful
   advice, to Stephen Farrell and Colin Perkins for their guidance on
   the use of citations, and to Dave Crocker for a comprehensive review.
   Thanks also to Alice Russo and the RFC Editor team for their work
   improving this document and checking the accuracy of the data.

Author's Address

   Christian Huitema
   Private Octopus Inc.
   427 Golfcourse Rd
   Friday Harbor, WA 98250
   United States of America

   Email: huitema@huitema.net