Re: [core] I-D Action: draft-ietf-core-new-block-05.txt
supjps-ietf@jpshallow.com Mon, 18 January 2021 14:16 UTC
Return-Path: <jon.shallow@jpshallow.com>
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 3B0F53A1311 for <core@ietfa.amsl.com>; Mon, 18 Jan 2021 06:16:13 -0800 (PST)
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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable 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 WDz4g7WvspbF for <core@ietfa.amsl.com>; Mon, 18 Jan 2021 06:16:10 -0800 (PST)
Received: from mail.jpshallow.com (mail.jpshallow.com [217.40.240.153]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 008A63A1145 for <core@ietf.org>; Mon, 18 Jan 2021 06:16:09 -0800 (PST)
Received: from mail2.jpshallow.com ([192.168.0.3] helo=N01332) by mail.jpshallow.com with esmtp (Exim 4.92.3) (envelope-from <jon.shallow@jpshallow.com>) id 1l1VKA-0005K0-UZ; Mon, 18 Jan 2021 14:16:07 +0000
From: supjps-ietf@jpshallow.com
To: Marco Tiloca <marco.tiloca@ri.se>, mohamed.boucadair@orange.com, core@ietf.org
Cc: draft-ietf-core-new-block@ietf.org, dots@ietf.org
References: <161056117925.23400.10291073677288718681@ietfa.amsl.com> <24069_1610561621_5FFF3855_24069_12_1_787AE7BB302AE849A7480A190F8B9330315B92B9@OPEXCAUBMA2.corporate.adroot.infra.ftgroup> <15aa1f32-db32-6c9a-70dc-b30ed6f33466@ri.se> <00d701d6eb31$05fe11f0$11fa35d0$@jpshallow.com> <4feb5743-4193-97f1-5231-038b1838b934@ri.se>
In-Reply-To: <4feb5743-4193-97f1-5231-038b1838b934@ri.se>
Date: Mon, 18 Jan 2021 14:16:23 -0000
Message-ID: <033b01d6eda4$8013a980$803afc80$@jpshallow.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQINhJL1nc88GwsEKn+AjV1kVr7Y4AGmsrCNATjbvioB8R1SgQKCeaN3qYWl4aA=
Content-Language: en-gb
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/GCdCD3BPHwB2J5pujybMAnHvchs>
Subject: Re: [core] I-D Action: draft-ietf-core-new-block-05.txt
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.29
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: Mon, 18 Jan 2021 14:16:13 -0000
Hi Marco, We have updated github [1] to take account of your latest comments for your review. Regards Jon [1]https://www.ietf.org/rfcdiff?url1=draft-ietf-core-new-block&url2=https://raw.githubusercontent.com/core-wg/new-block/master/draft-ietf-core-new-block.txt > -----Original Message----- > From: Marco Tiloca [mailto: marco.tiloca@ri.se] > Sent: 15 January 2021 13:58 > To: jon@jpshallow.com; mohamed.boucadair@orange.com; core@ietf.org > Cc: draft-ietf-core-new-block@ietf.org; dots@ietf.org > Subject: Re: [core] I-D Action: draft-ietf-core-new-block-05.txt > > Hi Jon, > > On 2021-01-15 12:24, supjps-ietf@jpshallow.com wrote: > > Hi Marco, > > > > Thanks from this. > > > > So moving forward, requests for missing Q-Block2 blocks will follow > > Section 2.7 RFC7959 being modelled on (assuming the request was using Q- > Block1) " To continue this Block2 transfer, the client > > continues to send requests similar to the requests in the Block1 > > phase, but leaves out the Block1 Options and includes a Block2 > > request option with non-zero NUM." > > > > Otherwise, please see inline which has a couple of questions. > > > > Regards > > > > Jon > >> -----Original Message----- > >> From: Marco Tiloca [mailto: marco.tiloca@ri.se] > >> Sent: 14 January 2021 19:58 > >> To: mohamed.boucadair@orange.com; core@ietf.org > >> Cc: draft-ietf-core-new-block@ietf.org; dots@ietf.org > >> Subject: Re: [core] I-D Action: draft-ietf-core-new-block-05.txt > >> > >> Hi Med, > >> > >> Thanks for the new document version. > >> > >> Please, see below some comments on the latest additions, also related > >> to what Jon raised at [1]. > >> > >> Best, > >> /Marco > >> > >> [1] > >> https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmai > >> larchive.ietf.org%2Farch%2Fmsg%2Fcore%2FOrr8a1WlSu3Dk- > gtPQZloDT9_1E%2 > >> > F&data=04%7C01%7Cmarco.tiloca%40ri.se%7Cf30167412cf14279616708d > 8b > >> > 948202a%7C5a9809cf0bcb413a838a09ecc40cc9e8%7C0%7C0%7C63746306674 > 04024 > >> > 21%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiL > CJBTi > >> > I6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=E4lIccwYQyVGHxxl9v9iBr70 > hU6 > >> BuxRrzAQoZHnZt%2B8%3D&reserved=0 > >> > >> > >> * Section 3.5 - This seems to mix aspects specific to Observe, with > >> more general aspects applicable to requests with a payload, i.e. > >> FETCH (with or without Observe), PUT, POST and PATCH/iPATCH. > > [Jon] Now that we understand what needs to be done with requesting missing > Q-Block2 blocks, working with Observe can be simplified. > > > > [Jon] Requesting Observe is only valid for GET and FETCH. Hence Observe > request/cancellation setting when using Q-Block1 is only appropriate for FETCH. > > > > [Jon] Unfortunately, RFC8132 does not specify in which of the payloads of as > Block1 based FETCH request should contain the Observe option assuming > observe is required (The first, the last or all of the payloads). So, here, I believe > the safest way to go is with all the payloads carry the observe option if observe > is being requested or cancelled. Thus any missing payloads should be resent with > the observe configured to be consistent with all the other payloads. Are you > happy with this? > > ==>MT > It makes sense to me. > <== > > > > >> What is specific of Observe is the first paragraph; and the usage > >> of the Observe option in the second and third paragraph. Anything > >> else seems generic and applicable to requests with payload, so it > >> might be moved up to some earlier section. > >> > > [Jon] Sure - will be updated in the simplification tidy up. > >> * Section 3.5 - In the third paragraph, I'm not sure you necessarily > >> need a payload to be present in the requests asking for missing > >> response payloads. For instance, consider: > > [Jon] Agreed. Now going with Section 2.7 RFC7959 where both Block1 and > payload are not included. > >> - The examples in Figure 10 and Figure 11 of RFC 7959, with the > >> note "(no payload for requests with Block2 with NUM != 0)" , during > >> the phase where the client consecutively asks for the next response payload. > >> > >> - The examples in Figure 2 and Figure 3 of [2], where each request > >> for the next response payload using Block2 has no payload of its own. > >> > >> This would of course affect the example in Figure 15. > > [Jon] Yes, will be updated. > >> [2] > >> https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftoo > >> ls.ietf.org%2Fhtml%2Fdraft-ietf-ace-coap-est- > 18&data=04%7C01%7Cma > >> > rco.tiloca%40ri.se%7Cf30167412cf14279616708d8b948202a%7C5a9809cf0bcb > 4 > >> > 13a838a09ecc40cc9e8%7C0%7C0%7C637463066740402421%7CUnknown%7CT > WFpbGZs > >> > b3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0 > %3 > >> > D%7C1000&sdata=cSOOuCBEP2jCRzECrJeLli6Z%2Bu%2FUlD%2F1HzVWIM7 > O7%2B > >> Q%3D&reserved=0 > >> > >> > >> * Section 3.5 - About the last sentence regarding the Observe option, > >> there seems to be an exception to this rule (at least based on the > >> later examples), where the server actually does include the Observe option in > the response. > > [Jon] If the Observe option is just included with the first payload (NUM = 0) as > RFC7959, there is a recovery special case should the first payload not arrive, but > subsequent ones do. In the general case, blocks that are missing are re- > requested by the client and the server responds with the appropriate block, but > without the Observe option. For the special case when the client requests > missing payload with NUM = 0 the server needs to know that it must include the > Observe in the response so that the client following the body re-assembly knows > that it is a Observe triggered additional response. > > > > [Jon] I had gone with the Observe should be in all the payloads in the response > apart from specifically re-requested blocks (including NUM = 0). The 'Continue' > Q-Block2 was just to indicate a continue so the server can send the remaining > payloads without delay - hence why remaining payloads had Observe set. > > > > [Jon] I am beginning to lean to having it in the first payload and special case > the response to re-request of NUM = 0. What do you think? > > ==>MT > Ok, I didn't think also of the case for NUM = 0, but that makes sense too. > > Then it's certainly something better to clarify in the main text and also to > show/comment in the example of Figure 10. > <== > > > > >> That is, consider the example in Figure 10, where the response > >> with M:0xba is lost. Later on, the client asks for that response > >> payload by sending the request with M:0x87, which correctly does not include > the Observe option. > >> > > [Jon] Yes > >> However, the following response with M:oxc3 and (from the point of > >> view of the server) retransmitting that response payload with block > >> number 10 does include the Observe option. > >> > >> The exception seems due to the fact that the retransmission > >> request from the client is specifically what you call 'Continue' > >> Q-Block-2 in Section 3.4. The Observe option is in fact not included > >> for the previously retransmitted response payloads with M:0xbb ... M:0xc2, > as still part of the current payload set. > > [Jon] Correct, but obviously not obvious from the text. > > ==>MT > Right, I mostly focused on that. > > I think it's worth clarifying in the main text what the normal case is for the server > (client) to include (expect) the Observe option in a response payload; and then > highlight the exceptions for the re-request with NUM=0 (see above) and for the > 'Continue' Q-Block2. > > Best, > /Marco > <== > > >> > >> * Section 3.6 - Part of the first sentence in the second paragraph > >> seems to repeat what already said in the third paragraph of Section 3.5. > >> > > [Jon] Will clean up in the simplification. > > ~Jon > > -- > Marco Tiloca > Ph.D., Senior Researcher > > RISE Research Institutes of Sweden > Division ICT > Isafjordsgatan 22 / Kistagången 16 > SE-164 40 Kista (Sweden) > > Phone: +46 (0)70 60 46 501 > https://www.ri.se >
- [core] I-D Action: draft-ietf-core-new-block-05.t… internet-drafts
- Re: [core] I-D Action: draft-ietf-core-new-block-… mohamed.boucadair
- Re: [core] I-D Action: draft-ietf-core-new-block-… Marco Tiloca
- Re: [core] I-D Action: draft-ietf-core-new-block-… supjps-ietf
- Re: [core] I-D Action: draft-ietf-core-new-block-… Marco Tiloca
- Re: [core] I-D Action: draft-ietf-core-new-block-… supjps-ietf
- Re: [core] I-D Action: draft-ietf-core-new-block-… Marco Tiloca
- Re: [core] I-D Action: draft-ietf-core-new-block-… mohamed.boucadair
- Re: [core] I-D Action: draft-ietf-core-new-block-… Marco Tiloca
- Re: [core] I-D Action: draft-ietf-core-new-block-… mohamed.boucadair