Re: [core] Status of Blockwise Transfers

Likepeng <likepeng@huawei.com> Mon, 31 October 2011 18:18 UTC

Return-Path: <likepeng@huawei.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 BA7F21F0CAD for <core@ietfa.amsl.com>; Mon, 31 Oct 2011 11:18:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.997
X-Spam-Level:
X-Spam-Status: No, score=-3.997 tagged_above=-999 required=5 tests=[AWL=-1.601, BAYES_00=-2.599, MIME_BASE64_TEXT=1.753, MIME_CHARSET_FARAWAY=2.45, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YWrwsItv5Dv3 for <core@ietfa.amsl.com>; Mon, 31 Oct 2011 11:18:12 -0700 (PDT)
Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [119.145.14.64]) by ietfa.amsl.com (Postfix) with ESMTP id 67AB21F0CA8 for <core@ietf.org>; Mon, 31 Oct 2011 11:18:12 -0700 (PDT)
Received: from huawei.com (szxga05-in [172.24.2.49]) by szxga05-in.huawei.com (iPlanet Messaging Server 5.2 HotFix 2.14 (built Aug 8 2006)) with ESMTP id <0LTY00I2Z065A6@szxga05-in.huawei.com> for core@ietf.org; Tue, 01 Nov 2011 02:18:05 +0800 (CST)
Received: from szxrg02-dlp.huawei.com ([172.24.2.119]) by szxga05-in.huawei.com (iPlanet Messaging Server 5.2 HotFix 2.14 (built Aug 8 2006)) with ESMTP id <0LTY0069H064LB@szxga05-in.huawei.com> for core@ietf.org; Tue, 01 Nov 2011 02:18:05 +0800 (CST)
Received: from szxeml202-edg.china.huawei.com ([172.24.2.119]) by szxrg02-dlp.huawei.com (MOS 4.1.9-GA) with ESMTP id AEQ63490; Tue, 01 Nov 2011 02:18:03 +0800
Received: from SZXEML412-HUB.china.huawei.com (10.82.67.91) by szxeml202-edg.china.huawei.com (172.24.2.42) with Microsoft SMTP Server (TLS) id 14.1.270.1; Tue, 01 Nov 2011 02:18:00 +0800
Received: from SZXEML525-MBS.china.huawei.com ([169.254.8.181]) by szxeml412-hub.china.huawei.com ([10.82.67.91]) with mapi id 14.01.0270.001; Tue, 01 Nov 2011 02:17:55 +0800
Date: Mon, 31 Oct 2011 18:17:54 +0000
From: Likepeng <likepeng@huawei.com>
In-reply-to: <031DD135F9160444ABBE3B0C36CED618D50B@011-DB3MPN1-013.MGDPHG.emi.philips.com>
X-Originating-IP: [172.24.2.40]
To: "Dijk, Esko" <esko.dijk@philips.com>, Kovatsch Matthias <kovatsch@inf.ethz.ch>, "core@ietf.org" <core@ietf.org>
Message-id: <34966E97BE8AD64EAE9D3D6E4DEE36F2CF8815@szxeml525-mbs.china.huawei.com>
MIME-version: 1.0
Content-type: text/plain; charset="gb2312"
Content-language: zh-CN
Content-transfer-encoding: base64
Accept-Language: zh-CN, en-US
Thread-topic: [core] Status of Blockwise Transfers
Thread-index: AcyTA1LLgF2apeWtTByzRREkH8/sygEtchlQAA/NDpQ=
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
X-CFilter-Loop: Reflected
References: <55877B3AFB359744BA0F2140E36F52B51382ED5E@MBX10.d.ethz.ch> <031DD135F9160444ABBE3B0C36CED618D50B@011-DB3MPN1-013.MGDPHG.emi.philips.com>
Subject: Re: [core] Status of Blockwise Transfers
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.12
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: <http://www.ietf.org/mail-archive/web/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, 31 Oct 2011 18:18:13 -0000

> On your first point, concurrent Block1/Block2 usage, that seems only applicable to POST or doesn't it?

From the spec, only concurrent POST is mentioned. In the Size extension draft, I proposed to get the resource size by the Size option, and use concurrent GET for blocks.
http://www.ietf.org/id/draft-li-core-coap-size-option-02.txt

And also I proposed to merge the Size draft and Block draft to allow this, and also other features.

Kind Regards
Kepeng
________________________________________
发件人: core-bounces@ietf.org [core-bounces@ietf.org] 代表 Dijk, Esko [esko.dijk@philips.com]
发送时间: 2011年10月31日 19:07
到: Kovatsch Matthias; core@ietf.org
主题: Re: [core] Status of Blockwise Transfers

Dear Matthias,

I agree with your second point that a server can't in general select a status code to a blockwise POST. It could be either 2.01, 2.02 or 2.04, or one of the error codes, but this depends on the entire payload being POSTed which is only known after the last block (Block1). Perhaps the server could send a "most likely to happen" response code. This is okay since only the final response status code (where M bit 0 in the Block1 option) actually carries the result of the REST operation  - see string "final response" in the text.

The current spec seems to already take this "most likely to happen" meaning for the status code in the examples, e.g. blockwise PUT returns 2.04 each time but if a block is missing the final result could still be 2.04 or 4.00 or 4.08. POST could do the same?

On your first point, concurrent Block1/Block2 usage, that seems only applicable to POST or doesn't it? It seems logical to me that the server can only start sending a blockwise response back (using Block2) when the full payload to POST has been received from the client (who uses Block1 and simultaneously empty Block2 to indicate size) and processed. For this text and/or examples are needed in my view.

regards,
Esko

-----Original Message-----
From: core-bounces@ietf.org [mailto:core-bounces@ietf.org] On Behalf Of Kovatsch Matthias
Sent: Tuesday 25 October 2011 13:00
To: Carsten Bormann; core@ietf.org
Subject: [core] Status of Blockwise Transfers

Dear Carsten

I would like to ask about the current status of blockwise transfers:

- Concurrent usage of Block1 and Block2 in a single operation
  core-block-04 mentions it once, but does not specify how to handle it or give an example (I guess, a POST request keeps the Block1 option with M=0 and no payload until all Block2 blocks were requested?).

- Using Status codes before an atomic Block1 transfer is complete
  A POST could result in different actions, thus the server cannot provide it before the last Block1 request. Shouldn't the status be empty  when M=0 in a Block1 response?

Thanks a lot
Matthias
_______________________________________________
core mailing list
core@ietf.org
https://www.ietf.org/mailman/listinfo/core

________________________________
The information contained in this message may be confidential and legally protected under applicable law. The message is intended solely for the addressee(s). If you are not the intended recipient, you are hereby notified that any use, forwarding, dissemination, or reproduction of this message is strictly prohibited and may be unlawful. If you are not the intended recipient, please contact the sender by return e-mail and destroy all copies of the original message.

_______________________________________________
core mailing list
core@ietf.org
https://www.ietf.org/mailman/listinfo/core