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: [email protected]