Re: [core] "Too Many Requests Response Code for CoAP" draft (draft-keranen-core-too-many-reqs-00)

Klaus Hartke <hartke@projectcool.de> Sun, 11 March 2018 10:08 UTC

Return-Path: <hartke@projectcool.de>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4578A124D6C for <core@ietfa.amsl.com>; Sun, 11 Mar 2018 03:08:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_FAIL=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3Qs7h70X7y-G for <core@ietfa.amsl.com>; Sun, 11 Mar 2018 03:08:45 -0700 (PDT)
Received: from wp382.webpack.hosteurope.de (wp382.webpack.hosteurope.de [IPv6:2a01:488:42:1000:50ed:8597::]) (using TLSv1 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 162C9124B0A for <core@ietf.org>; Sun, 11 Mar 2018 03:08:44 -0700 (PDT)
Received: from mail-qk0-f171.google.com ([209.85.220.171]); authenticated by wp382.webpack.hosteurope.de running ExIM with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) id 1euxuE-0003sD-HS; Sun, 11 Mar 2018 11:08:42 +0100
Received: by mail-qk0-f171.google.com with SMTP id s188so8438464qkb.2 for <core@ietf.org>; Sun, 11 Mar 2018 03:08:42 -0700 (PDT)
X-Gm-Message-State: AElRT7HLN1WKqzy08s1rtFY9v541EFPmQ4YoCXfSOjFKsw26/TibixnP vEJpsc/HdmGAEOXDBNEFTVbNEGL5ritTCHWHJ6k=
X-Google-Smtp-Source: AG47ELttozE/t89ByCqQwhr0adGgtf3fCeAXGz8YlGBFJBY2btZU7krkgMelh8vX7pxGtbhZ8Q6zb8wKDeTtd1fi7Ho=
X-Received: by 10.55.74.17 with SMTP id x17mr6208796qka.201.1520762921538; Sun, 11 Mar 2018 03:08:41 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.12.134.195 with HTTP; Sun, 11 Mar 2018 03:08:01 -0700 (PDT)
In-Reply-To: <4B71C39D-7D53-4B86-8C96-2D7FE4A5DA00@ericsson.com>
References: <152025806136.14652.11784946748337213501.idtracker@ietfa.amsl.com> <225023B8-B663-482A-93E6-8DD054606A79@ericsson.com> <CAAzbHvYBycMA48UBA=J_ZZBUf9fjsam8uaQPpwpe_02swhQp4Q@mail.gmail.com> <4B71C39D-7D53-4B86-8C96-2D7FE4A5DA00@ericsson.com>
From: Klaus Hartke <hartke@projectcool.de>
Date: Sun, 11 Mar 2018 11:08:01 +0100
X-Gmail-Original-Message-ID: <CAAzbHvYqXyRi7u2UWBv6_4bCCHTbF1xd=dbNtFpjCuGoVcL9KQ@mail.gmail.com>
Message-ID: <CAAzbHvYqXyRi7u2UWBv6_4bCCHTbF1xd=dbNtFpjCuGoVcL9KQ@mail.gmail.com>
To: Ari Keränen <ari.keranen@ericsson.com>
Cc: core <core@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-bounce-key: webpack.hosteurope.de; hartke@projectcool.de; 1520762925; 78e8df47;
X-HE-SMSGID: 1euxuE-0003sD-HS
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/04DxZIZO7we9COHODbgjZpZHWUE>
Subject: Re: [core] "Too Many Requests Response Code for CoAP" draft (draft-keranen-core-too-many-reqs-00)
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 11 Mar 2018 10:08:47 -0000

Ari Keränen wrote:
> I guess it depends on the use case and how much logic we would have in the client. For many cases just backing-off is probably enough. But for example for a case where shooting measurement data at high speed is causing overload but updating RD registration would be fine, making a difference between C and A&B could be useful.

What about using 5.03 for C and 4.29 for A?

It's perfectly fine that a server tells one client it's overloaded
while continuing to serve other clients.

Alternatively: Define a content-format that provides more detailed information.

>> --> "A server MAY return a 4.29 (Too Many Requests) response if a CoAP
>> client request messages more often than the server is capable or
>> willing to handle."
>
> The SHOULD of course only applies to who ever has implemented this spec.

Right. It therefore sounds a bit like: "You MAY implement the spec. If
you decide to implement the spec, you SHOULD implement the spec."
That's weird :-)

>>>  If a client receives the 4.29 Response Code from a CoAP server to a
>>>  request, it SHOULD NOT send the same request to the server before the
>>>  time indicated in the Max-Age option has passed.
>>
>> Not sure if this can be required. It's more like the client is
>> encouraged to not retry before Max-Age expires.
>
> Do you mean it can't be required for implementations that don't understand the code or in general?

In general, judging by the (lack of) use of KEYWORDS in [1] and [2].

Klaus

[1] https://tools.ietf.org/html/rfc7252#section-5.9.3.4
[2] https://tools.ietf.org/html/rfc6585#section-4