Re: [core] Comments and questions on draft-jarvinen-core-fasor-02

Christer Holmberg <christer.holmberg@ericsson.com> Wed, 20 November 2019 14:15 UTC

Return-Path: <christer.holmberg@ericsson.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 744111200EB for <core@ietfa.amsl.com>; Wed, 20 Nov 2019 06:15:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.002
X-Spam-Level:
X-Spam-Status: No, score=-2.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.com
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 RNqGAKV3nqkJ for <core@ietfa.amsl.com>; Wed, 20 Nov 2019 06:15:53 -0800 (PST)
Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0603.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0e::603]) (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 244D2120896 for <core@ietf.org>; Wed, 20 Nov 2019 06:15:52 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VPhaK8GO1V3vrHX7u3tHF4UM9dE1XDVKdqwkuGXXuk/oqMqaz6F+cLk+FFffWcAn7CiMxvkhUIcxK/arSpP0lZmIoSTvnA0bdx7+qWLcsL+mSD3ZKRSnMQbGJDcW/msWj0egeS6/eZhUyhtMdXsYPsSyxOrGBYgOyM6nG8kfpUH/dpVdwXnqhMOc34zhxyiqts2QGy3X6k7Y65eMn1nOU72Bnmdw6bamfDzpn72TI8C9vmqEKIGO4C7NCuW6on2vuZC26aKMusDCl/hYg75DF2GOB1UOo+7qfb8W2NKPb/CPvK3n/9aJ1czf9OhwY7lrpkMkhtg7XVnNG3uPdkWWKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JbPMmthP66v+ae9wtMfVYUIUQw9r9NE21TKeLA276Sc=; b=QImH65K+MSFU/e3HTMrz94ngd2Nd8Ez/A9aNaeffMerQnxPl/2Z3Dy2vQfgCJDArCeGb7XuPXmWENhmLz1Z1TWh2obSi7HhBXKmd5K6XNjBNViWGAtj9LoygfiEeASncwvodhYi9Q8pOneqMeh7W3FkAossqGage/N5u2+23cUgSj8Qp5pa/eSdgPr5+KS3Z3GwFfGK6LFxsbtCb5WTSssZgcCZnUeNeTJphb5rh/rSysyUT/Ve7xSXRZwlr13DTu0t0+0ZmojAO6+2l4sJ+E93PWKYrHb967Xm5BTbC15IV7QM0WsN4Diwcp8lmIJa3AJLr7OFcv/XWK5R4sg6apQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JbPMmthP66v+ae9wtMfVYUIUQw9r9NE21TKeLA276Sc=; b=IzNe+o8cdwgQ268N9OxcmCxKD7MfjZXrVqt2u2QHny5c2m9HonCytnpKMl4RyWbV5Ihrz14Jb365Q3MpyDDvgjVVxj+cRAgcOXD5wckTTMK3WsXsTaToMABQ5l77vY+EVmmaN1aW+Hcnzxibq1qvAla7CMVLbWf1Zj/JfTyyRnw=
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com (10.170.245.23) by HE1PR07MB3097.eurprd07.prod.outlook.com (10.170.244.159) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2474.9; Wed, 20 Nov 2019 14:15:50 +0000
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::2ca9:414:cc01:9706]) by HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::2ca9:414:cc01:9706%4]) with mapi id 15.20.2474.015; Wed, 20 Nov 2019 14:15:49 +0000
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Markku Kojo <kojo=40cs.helsinki.fi@dmarc.ietf.org>
CC: "core@ietf.org" <core@ietf.org>, Ilpo Järvinen <ilpo.jarvinen@cs.helsinki.fi>
Thread-Topic: [core] Comments and questions on draft-jarvinen-core-fasor-02
Thread-Index: AQHVn2BECFPCnrAr20yH8up3HLf2tKeTp94AgAEryoA=
Date: Wed, 20 Nov 2019 14:15:48 +0000
Message-ID: <C9B9F457-7B43-45B6-A7B1-B0CBA8E4B46A@ericsson.com>
References: <9917155C-DBA2-43F7-B14C-3B778B27E96F@ericsson.com> <alpine.DEB.2.21.1911200744160.9015@hp8x-60.cs.helsinki.fi>
In-Reply-To: <alpine.DEB.2.21.1911200744160.9015@hp8x-60.cs.helsinki.fi>
Accept-Language: en-US
Content-Language: en-GB
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/10.1e.0.191013
authentication-results: spf=none (sender IP is ) smtp.mailfrom=christer.holmberg@ericsson.com;
x-originating-ip: [129.192.75.4]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 94d4641e-d4f8-4821-1635-08d76dc42495
x-ms-traffictypediagnostic: HE1PR07MB3097:
x-microsoft-antispam-prvs: <HE1PR07MB30970A21F96309721088914D934F0@HE1PR07MB3097.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 02272225C5
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(376002)(39860400002)(396003)(366004)(136003)(346002)(199004)(189003)(6486002)(14454004)(6506007)(99286004)(5660300002)(54906003)(478600001)(86362001)(58126008)(66066001)(6246003)(2616005)(476003)(11346002)(33656002)(305945005)(446003)(81156014)(2906002)(81166006)(8936002)(44832011)(76176011)(6512007)(186003)(102836004)(316002)(7736002)(26005)(25786009)(6436002)(229853002)(66476007)(64756008)(66446008)(66556008)(6116002)(3846002)(4326008)(66946007)(76116006)(486006)(256004)(71200400001)(8676002)(14444005)(71190400001)(36756003)(91956017); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR07MB3097; H:HE1PR07MB3161.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: l3NENY/HxpRMZ6WvVrKG+s+0bM8Nvcb4NIHrwRJe0gk6nFKGd2AgTPMrU1I7/EQdfzDr9TF7orN61rPA631BsYghY0HYv+vcSVfLqF9fcAFGjtx0zJDu6MRnDINpeDpthvPq2syYuV6A7HNnXm1qlFsTEcg1nGkHCLL9dejmawb5c3b7C3JJhdCzyigUtLpuexsEIhaXxdEpXPbbNcyHjzr/v4vQorQt5I6TZhgXXpAm1sgYVPp69HGTiJBQhuR20S+2RtosQc8Z299KMQ8WUisKZtXAtiDHe7YLtO/g5tWGGDww8DwagK5u2iJvtItjXCIfe0GZNKSzGdMSNklFNBSPTAPHu1bZk9pLnL9xaHn7qNgPCNGybETeFTaxNGlbg0YoqB5mXgfinH94nlCkdn/nf+ACBWwutTw5i0A8O48VgI4uBUlDnFu7xDNNYsBZ
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <D396CEB571B4554186428955037BF1BD@eurprd07.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 94d4641e-d4f8-4821-1635-08d76dc42495
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Nov 2019 14:15:48.7734 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: XJswZx3zYtFiZjSitweBK0SD2Vy1qSG2XLUfwgs6bDpBvs9tufR0L3oHbAg9Bi8t6U6ogAS7HeyEXIAwGNwtGScetL7+cmnNX/86SMps9To=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR07MB3097
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/K4fG-rJHs6qZoiA0ifWXgBuJdCs>
Subject: Re: [core] Comments and questions on draft-jarvinen-core-fasor-02
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: Wed, 20 Nov 2019 14:15:55 -0000

Hi Markku,

    >> Q1:
    >>
    >> Section 4.4. says:
    >>
    >>   "The Retransmission Count Option is used to distinguish whether an
    >>   Acknowledgement message arrives for the original transmission or one
    >>   of the retransmissions of a Confirmable message."
    >>
    >> - I assume this is achieved by, once it has been confirmed that the
    >> receiver supports the option, incrementing the counter value in each 
    >> retransmitted message. However, I cannot find that described anywhere. 
    >> The text only says that the value of the original transmission is zero.
    > 
    > Right, but the text says it just with a bit different phrasing. In the 
    > second but last para of Sec 4.4:
    >
    >  "Retransmissions, if any, carry the ordinal number of the
    >   retransmission."

I think you should be more specific, and say something like: "the client MUST increment the number by one in each retransmission", or something like that...

    >> Q2:
    >>
    >> Section 4.4. says:
    >>
    >>   "However, the Retransmission Count Option cannot be used with an Empty
    >>   Acknowledgement (or Reset) message because the CoAP protocol
    >>   specification [RFC7252] does not allow adding options to an Empty
    >>   message.  Therefore, Retransmission Count Option is useful only for
    >>   the common case of Piggybacked Response."
    >>
    >> - This means that the count option cannot be used when the receiver is
    >> a proxy, since a proxy will typically send an empty acknowledgement when
    >> it receives a message.
    >
    > Yes, that's what it means and that's why it's an optional enhancement. 
    > Unfortunately, CoAP didn't include such a feature in its base spec. 
    > And I believe the reason for this was that the base spec. didn't include 
    > any kind of RTT measurements for the RTO timer, so it would have been 
    > unnecessary. This could have been achieved by stealing 2-3 bits from the 
    > Message ID, for example. Alternatively, it could still be possible to 
    > introduce a new type of message, an Empty Message with options, I 
    > believe. This would allow support for delivering options in an empty ack. 
    > Such an empty ack message would be needed also for other purpuses, for 
    > example, if at some point support for ECN is seen useful for CoAP (over 
    > UDP). Otherwise, there seems not to be any other way to provide the 
    > necessary feedback.

I don't argue against the reasons you give, but I think it would be good to explicitly point out the limitations when the receiver is a proxy.


    >> Q3:
    >>
    >> Section 4.4 says:
    >>
    >>   "The original transmission of a request is indicated with the number
    >>   0, except when sending the first request to a new destination
    >>   endpoint.  The first original transmission of the request to a new
    >>   endpoint carries the number 255 (0xFF) and is interpreted the same as
    >>   an original transmission carrying the number 0."
    >>
    >> - What is meant by "new" endpoint? Does the sender have to remember the 
    >> endpoints it has previously communicated with? If so, for how long?
    >
    > Endpoint means how it is defined in the base spec (RFC 7252):

Just to clarify, I am not asking for the definition of "endpoint", but the definition of "new".
    
    > Just like a CoCoA sender, a FASOR sender needs to maintain an RTO timer 
    > per endpoint, i.e., it needs to remember the endpoints. For how long, is 
    > not specified.

Since you say "new", you need to give guidance on what it means.

    >However, from the option usage point of view it would be 
    >just ok to forget about an endpoint at any point and consider it as a new 
    > endpoint next time the sender communicates with it. This would just mean 
    >that when sending to the same endpoint next time we cannot leverage the 
    >empty option value optimization of CoAP (i.e., need to include the 
    >special value 255 (0xFF) in the option and confirm again that the 
    >receiver supports the option). Forgeting about the RTO timer (and 
    >corresponding RTT estimate would be possible too (just like in RFC 
    >6298), but is not advisable as it would affect the accuracy of the RTT 
    >estimation.

In that case, I think you should describe it that way. Instead of talking about a "new" endpoint, you should talk about an endpoint that does not exist in the sender's memory of known remote endpoints, or something like that... 


    >> Q4: 
    >> Section 4.5 describes how, as an alternative solution, the Token can be 
    >> used to exchange count information.
    >>
    >> - How would that work? Would you use different Token values in each 
    >> retransmission? Again, I am not sure whether CoAP explicitly forbids 
    >> that, but I assume that is not the intention.
    >
    >Yes, it should work just fine. It is all up to the client to decide how it 
    >generates the token values. Servers just echo it back without 
    >modification.

My issue is not about how the sender generates the token value, but that the sender would use a different token value in each retransmission. I would really like to hear from the CoAP experts whether that is allowed or not...

Regards,

Christer