Skip to main content

"Too Many Requests" Response Code for the Constrained Application Protocol
draft-ietf-core-too-many-reqs-06

Revision differences

Document history

Date Rev. By Action
2019-01-16
06 (System) RFC Editor state changed to AUTH48-DONE from AUTH48
2019-01-14
06 (System) RFC Editor state changed to AUTH48 from RFC-EDITOR
2018-12-12
06 (System) RFC Editor state changed to RFC-EDITOR from EDIT
2018-11-21
06 (System) IANA Action state changed to RFC-Ed-Ack from Waiting on RFC Editor
2018-11-21
06 (System) IANA Action state changed to Waiting on RFC Editor from In Progress
2018-11-21
06 (System) IANA Action state changed to In Progress from Waiting on Authors
2018-11-20
06 (System) IANA Action state changed to Waiting on Authors from In Progress
2018-11-19
06 (System) IANA Action state changed to In Progress
2018-11-19
06 (System) RFC Editor state changed to EDIT
2018-11-19
06 (System) IESG state changed to RFC Ed Queue from Approved-announcement sent
2018-11-19
06 (System) Announcement was received by RFC Editor
2018-11-19
06 Amy Vezza IESG state changed to Approved-announcement sent from Approved-announcement to be sent
2018-11-19
06 Amy Vezza IESG has approved the document
2018-11-19
06 Amy Vezza Closed "Approve" ballot
2018-11-19
06 Amy Vezza Ballot approval text was generated
2018-11-19
06 Alexey Melnikov IESG state changed to Approved-announcement to be sent from Approved-announcement to be sent::Point Raised - writeup needed
2018-11-06
06 Ari Keränen New version available: draft-ietf-core-too-many-reqs-06.txt
2018-11-06
06 (System) New version approved
2018-11-06
06 (System) Request for posting confirmation emailed to previous authors: Ari Keranen
2018-11-06
06 Ari Keränen Uploaded new revision
2018-10-25
05 Cindy Morgan IESG state changed to Approved-announcement to be sent::Point Raised - writeup needed from IESG Evaluation
2018-10-25
05 Martin Vigoureux [Ballot Position Update] New position, No Objection, has been recorded for Martin Vigoureux
2018-10-24
05 Alvaro Retana [Ballot Position Update] New position, No Objection, has been recorded for Alvaro Retana
2018-10-24
05 Suresh Krishnan
[Ballot comment]
* Section 3

If the server is maintaining state per clients for the Max-Age, does the timer get reset if a repeat request …
[Ballot comment]
* Section 3

If the server is maintaining state per clients for the Max-Age, does the timer get reset if a repeat request comes in before the timer expires?

* Section 4

I think it could be useful to recommend some behavior for the proxies as well, in order to avoid a specific client being starved by other clients on a proxy.
2018-10-24
05 Suresh Krishnan [Ballot Position Update] New position, No Objection, has been recorded for Suresh Krishnan
2018-10-24
05 Spencer Dawkins [Ballot comment]
I echo Mirja's thanks for the both the efforts that went into performing the TSV-ART review and into its resolution.
2018-10-24
05 Spencer Dawkins [Ballot Position Update] New position, No Objection, has been recorded for Spencer Dawkins
2018-10-24
05 Michelle Cotton IANA Review state changed to IANA OK - Actions Needed from Version Changed - Review Needed
2018-10-24
05 Warren Kumari [Ballot Position Update] New position, No Objection, has been recorded for Warren Kumari
2018-10-24
05 Ignas Bagdonas [Ballot Position Update] New position, No Objection, has been recorded for Ignas Bagdonas
2018-10-24
05 Eric Rescorla [Ballot Position Update] New position, No Objection, has been recorded for Eric Rescorla
2018-10-24
05 Mirja Kühlewind
[Ballot comment]
Thanks for addressing the comments from the TSV-ART (and thanks Jana for the review)! I definitely support those comments and respective clarifications/additions in …
[Ballot comment]
Thanks for addressing the comments from the TSV-ART (and thanks Jana for the review)! I definitely support those comments and respective clarifications/additions in the document!
2018-10-24
05 Mirja Kühlewind Ballot comment text updated for Mirja Kühlewind
2018-10-24
05 Deborah Brungard [Ballot Position Update] New position, No Objection, has been recorded for Deborah Brungard
2018-10-24
05 Alissa Cooper [Ballot Position Update] New position, No Objection, has been recorded for Alissa Cooper
2018-10-23
05 Ben Campbell
[Ballot comment]
Hi, thanks for the work on this. I have a few comments, below:

I share Adam's concern about overloading Max-Age for this purpose. …
[Ballot comment]
Hi, thanks for the work on this. I have a few comments, below:

I share Adam's concern about overloading Max-Age for this purpose. If anything, the use in this document is specifying a minimum time interval, not a maximum one. That is, this use not only overloads Max-Age, but does it in a counter-intuitive way. Is there a reason not to define a new option?

§4: "A client MUST NOT rely on a server being able to send the 4.29
Response Code in an overload situation because an overloaded server
may not be able to reply at all to some requests."

Can you elaborate on the practical effect of that MUST NOT?
2018-10-23
05 Ben Campbell [Ballot Position Update] New position, No Objection, has been recorded for Ben Campbell
2018-10-23
05 Benjamin Kaduk
[Ballot comment]
Section 3

It may be appropriate to explicitly reiterate that "The 4.29 response code is
only returned to the client(s) sending requests too …
[Ballot comment]
Section 3

It may be appropriate to explicitly reiterate that "The 4.29 response code is
only returned to the client(s) sending requests too frequently; if other
clients are sending requests that cannot be served due to server overload,
the 5.03 response code is more appropriate."

  If a client repeats a request that was answered with 4.29 before Max-
  Age time has passed, it is possible the client did not recognize the
  error code and the server MAY respond with a more generic error code
  (e.g., 5.03).

Isn't it also possible that the additional requests were already in flight
when the 4.29 was generated?  (It's unclear whether that needs to be
specifcially mentioned in the document.)

Section 5

As per the previous comment, a server that erroneously returns 4.29 to too
many (i.e., including well-behaving) clients would unnecessarily DoS the
well-behaved clients.

It may be appropriate to reference the RFC 7252 security considerations as
continuing to apply.
2018-10-23
05 Benjamin Kaduk [Ballot Position Update] New position, No Objection, has been recorded for Benjamin Kaduk
2018-10-23
05 Alexey Melnikov [Ballot comment]
I think the latest version addresses SecDir and TsvDir review comments.
2018-10-23
05 Alexey Melnikov Ballot comment text updated for Alexey Melnikov
2018-10-22
05 Adam Roach
[Ballot comment]
Thanks for the work that everyone did on this document. I have one major
comment, and a couple of small editorial nits.

This …
[Ballot comment]
Thanks for the work that everyone did on this document. I have one major
comment, and a couple of small editorial nits.

This document defines the use of the Max-Age option that is very different from
its originally defined use. It seems to me that the IANA registry entry for
Max-Age needs to be updated to reference this document in addition to RFC 7252.

Additionally, the original definition of Max–Age included a default value of 60
seconds. It is unclear, and somewhat ambiguous, whether that default is intended
to apply to this mechanism as well. Please add text explicitly indicating
whether a default applies. In any case, this document should have an indication
of what the client does if the response contains no max-age option.

---------------------------------------------------------------------------

Title:

This would benefit from having the COAP protocol named in the title.

---------------------------------------------------------------------------

§1:

>  the too frequent requests from the requesting client are the reason

Nit: "...too-frequent..."
2018-10-22
05 Adam Roach [Ballot Position Update] New position, No Objection, has been recorded for Adam Roach
2018-10-22
05 (System) IANA Review state changed to Version Changed - Review Needed from IANA OK - Actions Needed
2018-10-22
05 Ari Keränen New version available: draft-ietf-core-too-many-reqs-05.txt
2018-10-22
05 (System) New version approved
2018-10-22
05 (System) Request for posting confirmation emailed to previous authors: Ari Keranen
2018-10-22
05 Ari Keränen Uploaded new revision
2018-10-18
04 Jana Iyengar Request for Last Call review by TSVART Completed: Ready with Nits. Reviewer: Jana Iyengar. Sent review to list.
2018-10-16
04 Mirja Kühlewind [Ballot Position Update] New position, No Objection, has been recorded for Mirja Kühlewind
2018-10-12
04 Alexey Melnikov IESG state changed to IESG Evaluation from Waiting for AD Go-Ahead
2018-10-12
04 (System) IESG state changed to Waiting for AD Go-Ahead from In Last Call
2018-10-11
04 (System) IANA Review state changed to IANA OK - Actions Needed from IANA - Review Needed
2018-10-11
04 Sabrina Tanamal
(Via drafts-lastcall@iana.org): IESG/Authors/WG Chairs:

The IANA Functions Operator has completed its review of draft-ietf-core-too-many-reqs-04. If any part of this review is inaccurate, please let …
(Via drafts-lastcall@iana.org): IESG/Authors/WG Chairs:

The IANA Functions Operator has completed its review of draft-ietf-core-too-many-reqs-04. If any part of this review is inaccurate, please let us know.

The IANA Functions Operator understands that, upon approval of this document, there is a single action which we must complete.

In the CoAP Response Codes subregistry of the CoAP Codes registry on the Constrained RESTful Environments (CoRE) Parameters registry page located at:

https://www.iana.org/assignments/core-parameters/

a single, new registration is to be made as follows:

Code: 4.29
Description: Too Many Requests
Reference: [ RFC-to-be ]

The IANA Functions Operator understands that this is the only action required to be completed upon approval of this document.

Note:  The actions requested in this document will not be completed until the document has been approved for publication as an RFC. This message is meant only to confirm the list of actions that will be performed.

Thank you,

Sabrina Tanamal
Senior IANA Services Specialist
2018-10-08
04 Dan Romascanu Request for Last Call review by GENART Completed: Ready. Reviewer: Dan Romascanu. Sent review to list.
2018-10-07
04 Daniel Migault Request for Last Call review by SECDIR Completed: Has Nits. Reviewer: Daniel Migault. Sent review to list.
2018-10-05
04 Amy Vezza Placed on agenda for telechat - 2018-10-25
2018-10-05
04 Alexey Melnikov Ballot has been issued
2018-10-05
04 Alexey Melnikov [Ballot Position Update] New position, Yes, has been recorded for Alexey Melnikov
2018-10-05
04 Alexey Melnikov Created "Approve" ballot
2018-10-05
04 Alexey Melnikov Ballot writeup was changed
2018-10-04
04 Gunter Van de Velde Request for Last Call review by OPSDIR is assigned to Tim Chown
2018-10-04
04 Gunter Van de Velde Request for Last Call review by OPSDIR is assigned to Tim Chown
2018-10-04
04 Tero Kivinen Request for Last Call review by SECDIR is assigned to Daniel Migault
2018-10-04
04 Tero Kivinen Request for Last Call review by SECDIR is assigned to Daniel Migault
2018-10-03
04 Jean Mahoney Request for Last Call review by GENART is assigned to Dan Romascanu
2018-10-03
04 Jean Mahoney Request for Last Call review by GENART is assigned to Dan Romascanu
2018-10-03
04 Magnus Westerlund Request for Last Call review by TSVART is assigned to Jana Iyengar
2018-10-03
04 Magnus Westerlund Request for Last Call review by TSVART is assigned to Jana Iyengar
2018-09-28
04 Cindy Morgan IANA Review state changed to IANA - Review Needed
2018-09-28
04 Cindy Morgan
The following Last Call announcement was sent out (ends 2018-10-12):

From: The IESG
To: IETF-Announce
CC: core-chairs@ietf.org, Carsten Bormann , draft-ietf-core-too-many-reqs@ietf.org, core@ietf.org, …
The following Last Call announcement was sent out (ends 2018-10-12):

From: The IESG
To: IETF-Announce
CC: core-chairs@ietf.org, Carsten Bormann , draft-ietf-core-too-many-reqs@ietf.org, core@ietf.org, alexey.melnikov@isode.com, cabo@tzi.org
Reply-To: ietf@ietf.org
Sender:
Subject: Last Call:  (Too Many Requests Response Code for the Constrained Application Protocol) to Proposed Standard


The IESG has received a request from the Constrained RESTful Environments WG
(core) to consider the following document: - 'Too Many Requests Response Code
for the Constrained Application
  Protocol'
  as Proposed Standard

The IESG plans to make a decision in the next few weeks, and solicits final
comments on this action. Please send substantive comments to the
ietf@ietf.org mailing lists by 2018-10-12. Exceptionally, comments may be
sent to iesg@ietf.org instead. In either case, please retain the beginning of
the Subject line to allow automated sorting.

Abstract


  A Constrained Application Protocol (CoAP) server can experience
  temporary overload because one or more clients are sending requests
  to the server at a higher rate than the server is capable or willing
  to handle.  This document defines a new CoAP Response Code for a
  server to indicate that a client should reduce the rate of requests.




The file can be obtained via
https://datatracker.ietf.org/doc/draft-ietf-core-too-many-reqs/

IESG discussion can be tracked via
https://datatracker.ietf.org/doc/draft-ietf-core-too-many-reqs/ballot/


No IPR declarations have been submitted directly on this I-D.




2018-09-28
04 Cindy Morgan IESG state changed to In Last Call from Last Call Requested
2018-09-28
04 Alexey Melnikov Last call was requested
2018-09-28
04 Alexey Melnikov Last call announcement was generated
2018-09-28
04 Alexey Melnikov Ballot approval text was generated
2018-09-28
04 Alexey Melnikov Ballot writeup was generated
2018-09-28
04 Alexey Melnikov I am concerned about differing behaviour between HTTP and COAP, but COAP base spec already broke the parity.
2018-09-28
04 Alexey Melnikov IESG state changed to Last Call Requested from AD Evaluation
2018-09-11
04 Alexey Melnikov IESG state changed to AD Evaluation from AD Evaluation::External Party
2018-08-16
04 Alexey Melnikov AD review sent to the mailing list. Waiting for clarification about reuse of Max-Age option (which is otherwise used for caching)
2018-08-16
04 Alexey Melnikov IESG state changed to AD Evaluation::External Party from AD Evaluation
2018-08-15
04 Alexey Melnikov IESG state changed to AD Evaluation from Publication Requested
2018-08-15
04 Carsten Bormann
        Document Writeup for Working Group Documents

        As required by RFC 4858, this is the current template …
        Document Writeup for Working Group Documents

        As required by RFC 4858, this is the current template for the Document Shepherd Write-Up.

        Changes are expected over time. This version is dated 24 February 2012.

        (1) What type of RFC is being requested (BCP, Proposed Standard, Internet Standard, Informational, Experimental, or Historic)? Why is this the proper type of RFC? Is this type of RFC indicated in the title page header?

Standards Track.  While this is a simple registration of a response
code, proper usage of this response code influences interoperability.

        (2) The IESG approval announcement includes a Document Announcement Write-Up. Please provide such a Document Announcement Write-Up. Recent examples can be found in the "Action" announcements for approved documents. The approval announcement contains the following sections:

        Technical Summary:

  A CoAP server can experience temporary overload because one or more
  clients are sending requests to the server at a higher rate than
  the server is capable or willing to handle.  This document defines
  a new CoAP Response Code for a server to indicate that a client
  should reduce the rate of requests.

        Working Group Summary:

While this seemed to be a simple housekeeping document (based on other
SDOs' requests) at first, the WG process did unearth a few fine points
that have been taken care of in the current document.  WGLC was passed
July 16, 2018 (right before the CoRE meeting in Montreal), there was
no dissent on advancing this.

        Document Quality:

While no formal review was sent to the list, both Jim Schaad and Klaus
Hartke sent comments based on an in-depth review and later indicated
that their comments had been resolved in -04.  Implementers indicated
intent to implement this.  No formal languages in the document.

        Personnel:

        Who is the Document Shepherd? Who is the Responsible Area Director?

* Shepherd: Carsten Bormann
* Responsible AD: Alexey Melnikov

        (3) Briefly describe the review of this document that was performed by the Document Shepherd. If this version of the document is not ready for publication, please explain why the document is being forwarded to the IESG.

Shepherd did review ahead of WGLC and followed the comments and their resolution.

        (4) Does the document Shepherd have any concerns about the depth or breadth of the reviews that have been performed?

For the simple document this is, review was quite appropriate.

        (5) Do portions of the document need review from a particular or from broader perspective, e.g., security, operational complexity, AAA, DNS, DHCP, XML, or internationalization? If so, describe the review that took place.

N/A

        (6) Describe any specific concerns or issues that the Document Shepherd has with this document that the Responsible Area Director and/or the IESG should be aware of? For example, perhaps he or she is uncomfortable with certain parts of the document, or has concerns whether there really is a need for it. In any event, if the WG has discussed those issues and has indicated that it still wishes to advance the document, detail those concerns here.

Shepherd is comfortable with this going forward.

        (7) Has each author confirmed that any and all appropriate IPR disclosures required for full conformance with the provisions of BCP 78 and BCP 79 have already been filed. If not, explain why?

Author declared "I'm not aware of any IPR related to
draft-ietf-core-too-many-reqs." in E-Mail to WG chairs on July 24.

        (8) Has an IPR disclosure been filed that references this document? If so, summarize any WG discussion and conclusion regarding the IPR disclosures.

No.

        (9) How solid is the WG consensus behind this document? Does it represent the strong concurrence of a few individuals, with others being silent, or does the WG as a whole understand and agree with it?

Of the people who care about the area addressed in this document,
everyone agreed this should go forward.

        (10) Has anyone threatened an appeal or otherwise indicated extreme discontent? If so, please summarise the areas of conflict in separate email messages to the Responsible Area Director. (It should be in a separate email because this questionnaire is publicly available.)

No.

        (11) Identify any ID nits the Document Shepherd has found in this document. (See http://www.ietf.org/tools/idnits/ and the Internet-Drafts Checklist). Boilerplate checks are not enough; this check needs to be thorough.

No ID nits found.

        (12) Describe how the document meets any required formal review criteria, such as the MIB Doctor, media type, and URI type reviews.

While there were no formal review criteria, the response code
registration was discussed with the designated expert for other CoAP
parameters, who assented.

(The policy for this registry is

  The IANA policy for future additions to this sub-registry is "IETF
  Review or IESG Approval" as described in [RFC5226].

as per section 12.1.2 of RFC 7252; we still like to make sure that all
registrations to CoRE are being looked at by a single DE.)

        (13) Have all references within this document been identified as either normative or informative?

Yes, and correctly so.

        (14) Are there normative references to documents that are not ready for advancement or are otherwise in an unclear state? If such normative references exist, what is the plan for their completion?

No.

        (15) Are there downward normative references references (see RFC 3967)? If so, list these downward references to support the Area Director in the Last Call procedure.

No.

        (16) Will publication of this document change the status of any existing RFCs? Are those RFCs listed on the title page header, listed in the abstract, and discussed in the introduction? If the RFCs are not listed in the Abstract and Introduction, explain why, and point to the part of the document where the relationship of this document to the other RFCs is discussed. If this information is not in the document, explain why the WG considers it unnecessary.

No; this is just a registration to an existing registry (from RFC 7252).

        (17) Describe the Document Shepherd's review of the IANA considerations section, especially with regard to its consistency with the body of the document. Confirm that all protocol extensions that the document makes are associated with the appropriate reservations in IANA registries. Confirm that any referenced IANA registries have been clearly identified. Confirm that newly created IANA registries include a detailed specification of the initial contents for the registry, that allocations procedures for future registrations are defined, and a reasonable name for the new registry has been suggested (see RFC 5226).

The main point of this document is the IANA registration of a response
code for CoAP.

        (18) List any new IANA registries that require Expert Review for future allocations. Provide any public guidance that the IESG would find useful in selecting the IANA Experts for these new registries.

No new registries (just a registration to an existing registry).

        (19) Describe reviews and automated checks performed by the Document Shepherd to validate sections of the document written in a formal language, such as XML code, BNF rules, MIB definitions, etc.

No formal languages.

2018-08-15
04 Carsten Bormann Responsible AD changed to Alexey Melnikov
2018-08-15
04 Carsten Bormann IETF WG state changed to Submitted to IESG for Publication from WG Consensus: Waiting for Write-Up
2018-08-15
04 Carsten Bormann IESG state changed to Publication Requested
2018-08-15
04 Carsten Bormann IESG process started in state Publication Requested
2018-08-15
04 Carsten Bormann Changed consensus to Yes from Unknown
2018-08-15
04 Carsten Bormann Intended Status changed to Proposed Standard from None
2018-08-15
04 Carsten Bormann Changed document writeup
2018-08-15
04 Carsten Bormann Notification list changed to Carsten Bormann <cabo@tzi.org>
2018-08-15
04 Carsten Bormann Document shepherd changed to Carsten Bormann
2018-07-24
04 Carsten Bormann IETF WG state changed to WG Consensus: Waiting for Write-Up from In WG Last Call
2018-07-24
04 Ari Keränen New version available: draft-ietf-core-too-many-reqs-04.txt
2018-07-24
04 (System) New version approved
2018-07-24
04 (System) Request for posting confirmation emailed to previous authors: Ari Keranen
2018-07-24
04 Ari Keränen Uploaded new revision
2018-07-22
03 Ari Keränen New version available: draft-ietf-core-too-many-reqs-03.txt
2018-07-22
03 (System) New version approved
2018-07-22
03 (System) Request for posting confirmation emailed to previous authors: Ari Keranen
2018-07-22
03 Ari Keränen Uploaded new revision
2018-07-02
02 Carsten Bormann Ends right before the first CoRE meeting at IETF 102 (Montreal)
2018-07-02
02 Carsten Bormann IETF WG state changed to In WG Last Call from WG Document
2018-07-02
02 Ari Keränen New version available: draft-ietf-core-too-many-reqs-02.txt
2018-07-02
02 (System) New version approved
2018-07-02
02 (System) Request for posting confirmation emailed to previous authors: Ari Keranen
2018-07-02
02 Ari Keränen Uploaded new revision
2018-06-29
01 Ari Keränen New version available: draft-ietf-core-too-many-reqs-01.txt
2018-06-29
01 (System) New version approved
2018-06-29
01 (System) Request for posting confirmation emailed to previous authors: Ari Keranen
2018-06-29
01 Ari Keränen Uploaded new revision
2018-04-06
00 Jaime Jimenez This document now replaces draft-keranen-core-too-many-reqs instead of None
2018-04-06
00 Ari Keränen New version available: draft-ietf-core-too-many-reqs-00.txt
2018-04-06
00 (System) WG -00 approved
2018-04-03
00 Ari Keränen Set submitter to "Ari Keranen ", replaces to draft-keranen-core-too-many-reqs and sent approval email to group chairs: core-chairs@ietf.org
2018-04-03
00 Ari Keränen Uploaded new revision