Re: [alto] Alexey Melnikov's No Objection on draft-ietf-alto-cost-calendar-19: (with COMMENT)

"Randriamasy, Sabine (Nokia - FR/Paris-Saclay)" <sabine.randriamasy@nokia-bell-labs.com> Tue, 17 March 2020 16:02 UTC

Return-Path: <sabine.randriamasy@nokia-bell-labs.com>
X-Original-To: alto@ietfa.amsl.com
Delivered-To: alto@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9A2023A047D; Tue, 17 Mar 2020 09:02:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nokia.onmicrosoft.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 HA4YuwjaSvis; Tue, 17 Mar 2020 09:02:20 -0700 (PDT)
Received: from FRA01-PR2-obe.outbound.protection.outlook.com (mail-eopbgr120132.outbound.protection.outlook.com [40.107.12.132]) (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 F14033A073E; Tue, 17 Mar 2020 09:02:14 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BGvbja8+aP5z89VvZxSMtKSucKruecWk2ETSEcoCWu/0yndGiOdtq4pFcuhhiqxa+T3I1ioDtGhrD4L2h4GdwbwaWEuyz8PffPgMPcL50JWHX/qQFRda5A13T8m/GLyABcxJP5HV6FQlLjMog4CwYogCfA7hZdwOmE1UvJwLQkAyHaQxN3p5L8BTF341GzKN/8MuHqrFfNkBEHaFWjkEByLbw/fYntWWGtuTB2+PGEhjJhZ9M4zbvYrEg7X+W2xhS0X8iUL390hP81mBtylW+STj1qCpcGZ5NR9mujZMsloMv8Sz5qdyyM4BCrH2aFdFemxrdVkH3dbp/o7gJ39EXQ==
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=ipnDFit7XvIzp3mQzArPUfGRt/PZMhvUBXAQYU/khSQ=; b=gIeL4EEp9ijyC9w97Q/jbbwD6H38pRUMhGoHS0dNgp/OBk3LbaUHjtyIxVD3V2ZdNoO/7xjqNEVlLLNDIUl8wbT/WkaNnV2GCNXmlqEZmc+RQ4uT6U6cUHPtHEgNWP3sLd5Voyhy8S6rCPEGUl/HZAHpMKocmUzqYLvvWpJSB1ETZlin5goL0ngCa9ZC4RsulSIUtXSmEFAV5zCjs455Ul6iTILXdVANnr8r2u4qi7hGP02MMZzwlJEeDMWU5l+8AXXjA38qKuIdVQCy93L0eMzM1PVohqlHds0XtJ2sWLqLiNx48HYs9e/H5+bc0lnYMqqsPp2ItIJzh7BAw3QzzA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia-bell-labs.com; dmarc=pass action=none header.from=nokia-bell-labs.com; dkim=pass header.d=nokia-bell-labs.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ipnDFit7XvIzp3mQzArPUfGRt/PZMhvUBXAQYU/khSQ=; b=nKw23+aT0oyC/13kPUVX6P77UBrBiHV6S6pITVPhyRCg2nUfJIJqA89byuiLr2dOPUUVVbUt3AV++UkJo3zOt/lNvhNGiQUX3lyexFWe11NS/GtCqfApeubozkvDkaimpPKZNBgwWdm3e8pnWeUgeRn0PxYSAiuQJZzwuSUutrI=
Received: from PR1PR07MB5100.eurprd07.prod.outlook.com (20.177.209.144) by PR1PR07MB4908.eurprd07.prod.outlook.com (20.177.211.205) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2835.10; Tue, 17 Mar 2020 16:02:12 +0000
Received: from PR1PR07MB5100.eurprd07.prod.outlook.com ([fe80::8d6a:cf42:5a57:6b77]) by PR1PR07MB5100.eurprd07.prod.outlook.com ([fe80::8d6a:cf42:5a57:6b77%3]) with mapi id 15.20.2814.021; Tue, 17 Mar 2020 16:02:12 +0000
From: "Randriamasy, Sabine (Nokia - FR/Paris-Saclay)" <sabine.randriamasy@nokia-bell-labs.com>
To: Alexey Melnikov <aamelnikov@fastmail.fm>, The IESG <iesg@ietf.org>
CC: "draft-ietf-alto-cost-calendar@ietf.org" <draft-ietf-alto-cost-calendar@ietf.org>, "alto-chairs@ietf.org" <alto-chairs@ietf.org>, "alto@ietf.org" <alto@ietf.org>, Vijay Gurbani <vijay.gurbani@gmail.com>, "vijay.gurbani@nokia.com" <vijay.gurbani@nokia.com>, "francesca.palombini@ericsson.com" <francesca.palombini@ericsson.com>
Thread-Topic: Alexey Melnikov's No Objection on draft-ietf-alto-cost-calendar-19: (with COMMENT)
Thread-Index: AQHV8u536nwMThANeUmZTrtPXNnTzKhL5FUQ
Date: Tue, 17 Mar 2020 16:02:12 +0000
Message-ID: <PR1PR07MB51000825E35EE7A31136B6E695F60@PR1PR07MB5100.eurprd07.prod.outlook.com>
References: <158341340553.14655.6104948872325531639@ietfa.amsl.com>
In-Reply-To: <158341340553.14655.6104948872325531639@ietfa.amsl.com>
Accept-Language: fr-FR, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=sabine.randriamasy@nokia-bell-labs.com;
x-originating-ip: [2a01:e0a:16a:5400:9466:211c:88e4:572c]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: 77c6fbea-709c-43fd-da67-08d7ca8c8e2b
x-ms-traffictypediagnostic: PR1PR07MB4908:
x-microsoft-antispam-prvs: <PR1PR07MB4908A45859C1699B5833223395F60@PR1PR07MB4908.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 0345CFD558
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(39860400002)(396003)(366004)(346002)(376002)(136003)(199004)(55016002)(30864003)(9686003)(4326008)(71200400001)(966005)(478600001)(81166006)(8676002)(81156014)(66946007)(64756008)(66446008)(76116006)(52536014)(66476007)(5660300002)(186003)(2906002)(66556008)(33656002)(86362001)(6506007)(316002)(7696005)(110136005)(54906003)(8936002); DIR:OUT; SFP:1102; SCL:1; SRVR:PR1PR07MB4908; H:PR1PR07MB5100.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:0;
received-spf: None (protection.outlook.com: nokia-bell-labs.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: VjO4lDBVZsOFORq52+gFa6QTEstIW2VfKkujt/RNUW4UbmPYwI1Z8qrFVgoYlN/MmiUAcUqXk8mjcqve5cAXC40VzS45OHVCHmgoJDlbogKCQ180RurzQOcNHknpfC0l7DZ1JieWWFnEaDKyX3sj9kY0kdUevj/E9PLm3orZMQkOAhivOliqKuGEMMdm9kA0sX7n49PJnwxzCyoKkPcmzzIarfEKIKSFuIaaYhprt+oGRZvA2KX4Fgo29yRkq70BNNUBsQp8OMZbW/fefCvZAX2tvnKbZzlGvZ0TOhq+n0tPqWLM2qB4s73tNvl2Pv8CmTX27wPgAnBQaZQwxz9HS/TfB5G3awkvHL/uGkcR5hobT/ttSbcP9VgW1kJbfGsweQPraRlyj2Eq2Z42jeMqPNpbifSqpo7NnQNxJZkJZPdU6H9aIPfxdkRo9TzIlpWg9aaaktf5ejab1zLrv/R7NVj8E4jyuiaQjLl//9LjsPoeq3R/oE91dWeEH6lri15YAIWZGSLr2uXcy/XIOPTCyw==
x-ms-exchange-antispam-messagedata: 1LmTVNFEVZaoXIxdXS1mufCF2MFuDDvhwoA/k+z4jZdcX7z0oKAraWBNuv9Qw4cvVmYv8mNrvX4Ezk4yuPG0janPeCW/n6xSaNktAh/1C64h9pIZV2REOg9rDRjZZZlIwzgR3LpqCDe+4tsUl1PGm0jdiD/YhbLNaD6x3So2VyspZuymlyYmeDEz2HhS7lce6LogQany30KhPynZy+fPcg==
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: nokia-bell-labs.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 77c6fbea-709c-43fd-da67-08d7ca8c8e2b
X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Mar 2020 16:02:12.4945 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: emqSAqD/r0xi+FLLzlLmc+tzJCIGw7SVBUqP8uaVVDLwpmu7odqLSjopwdFxcq85T8znAoTPSnuyuu0IAdPBo6YDtN/0pUrk3P01x1tLvEgg/gzq6D8VebsnjIFv3Xl3
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR1PR07MB4908
Archived-At: <https://mailarchive.ietf.org/arch/msg/alto/sIKb1B3wGLmFSBO-Tn2o5BqHxWg>
Subject: Re: [alto] Alexey Melnikov's No Objection on draft-ietf-alto-cost-calendar-19: (with COMMENT)
X-BeenThere: alto@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Application-Layer Traffic Optimization \(alto\) WG mailing list" <alto.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/alto>, <mailto:alto-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/alto/>
List-Post: <mailto:alto@ietf.org>
List-Help: <mailto:alto-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/alto>, <mailto:alto-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 17 Mar 2020 16:02:42 -0000

Hi Alexey and Francesca,

Thanks again for your review and guidance. Your comments have been addressed as described in the responses inline. 
A new version v21 has been posted and is available here, hoping it meets your expectations.
https://tools.ietf.org/html/draft-ietf-alto-cost-calendar-21   

Best regards,
Sabine

>-----Original Message-----
>From: Alexey Melnikov via Datatracker <noreply@ietf.org>
>Sent: Thursday, March 5, 2020 2:03 PM
>To: The IESG <iesg@ietf.org>
>Cc: draft-ietf-alto-cost-calendar@ietf.org; alto-chairs@ietf.org; alto@ietf.org;
>Vijay Gurbani <vijay.gurbani@gmail.com>; vijay.gurbani@nokia.com;
>francesca.palombini@ericsson.com
>Subject: Alexey Melnikov's No Objection on draft-ietf-alto-cost-calendar-19:
>(with COMMENT)
>
>Alexey Melnikov has entered the following ballot position for
>draft-ietf-alto-cost-calendar-19: No Objection
>
>----------------------------------------------------------------------
>COMMENT:
>----------------------------------------------------------------------
>
>This version is an improvement over the one I reviewed earlier.
>
>*****************************************************************
>*****
>* Note, that I am conducting an experiment when people aspiring to be*
>* Area Directors get exposed to AD work ("AD shadowing experiment"). *
>* As a part of this experiment they get to review documents on IESG  *
>* telechats according to IESG Discuss criteria document and their    *
>* comments get relayed pretty much verbatim to relevant editors/WGs. *
>* As an AD I retain responsibility in defending their position when  *
>* I agree with it.                                                   *
>* Recipients of these reviews are encouraged to reply to me directly *
>* about perceived successes or failures of this experiment.          *
>*****************************************************************
>*****
>
>The following comments were provided by Francesca Palombini
><francesca.palombini@ericsson.com>. My comments are marked with
>[[Alexey:]] below.
>
>Francesca would have balloted *DISCUSS* on this document. She wrote:
>
>DISCUSS
>
>* "The encoding format for object CalendarAttributes, using JSON
>   [RFC8259], is as follows:"
>JSON is used, right. I know 7285 is normatively reference but the draft is missing
>either here or in the introduction part of the spec (e.g. terminology) to explicitly
>point to Section 8.2 of 7285 Notation, as that is used here.
>
[ [SR] ]  Yes, done. Section 3.3 now starts with:
----- NEW
The present document uses the notations defined in Section "8.2
   Notation" of [RFC7285].
----- END

>COMMENT
>
>* "However, like for any schedule, unexpected network
>   incidents may require the current ALTO Calendar to be updated and re-
>   sent to the ALTO Clients needing it.  The "ALTO Incremental Updates
>   Using Server-Sent Events (SSE)" Service
>   [I-D.ietf-alto-incr-update-sse] can be used to update the calendar
>   faster if supported by both the Server and the Client."
>
>   If the "ALTO Incremental Updates Using Server-Sent Events (SSE)" Service is
>   not used, and updates are required, what should be used instead?
>   (draft-ietf-alto-incr-update-sse is indeed informational reference)
>
[ [SR] ] draft-ietf-alto-incr-update-sse is now a normative reference, with RECOMMENDED use 

>* "with one value one per time interval," remove second "one"
>
[ [SR] ] Done, thanks

>* "Specifically, an
>   implementation of this extension MUST parse the "number-of-intervals"
>   attribute of the "calendar-attributes" in an IRD entry announcing a
>   service providing Cost Calendar."
>   Please ref to where "calendar-attrinutes" is defined.
>
[ [SR] ] the expression is now "Calendar attributes", as introduced in Section 3.2


>* "Calendared" is used in the text. I would either rephrase or explain in the
>terminology what this is supposed to mean.
>
[ [SR] ] the following definition was added in section 1.2 Terminology
----- NEW
<t>Calendared: this adjective qualifies information resources providing Cost Calendars 
      and information on costs that are provided in the form of a Cost Calendar.</t>
----- END

>* Section 3 - "This section gives a non-normative overview of the design. "
>That is not true, as 3.3.2 at least contains normative text (as it should).
>
[ [SR] ] Yes, indeed, the text was changed as follows:
----- NEW
This section gives a high-level overview of the design.  
It assumes the reader is familiar with the ALTO protocol [RFC7285] and 
its Multi-Cost ALTO extension [RFC8189].
----- END

>* "multiple
>   appearances of a cost type name in the CalendarAttributes object of
>   the "calendar-attributes" member MUST cause the ALTO Client to ignore
>   any occurrences of this name beyond the first encountered occurrence."
>   This worries me as occurrences can be re-ordered (by  intermediaries) I am
>   not sure ignoring further occurrences and keep the processing is the best
>   idea... This should at least have some security considerations.
>
[[SR]] I agree there should be some guidance for the Client in this case. Two updates have been made:

1 - Paragraph 1 has been updated as follows: 
----- NEW
A Cost Calendar for a given cost type MUST be indicated in the IRD by
   an object of type CalendarAttributes.  A CalendarAttributes object is
   represented by the "calendar-attributes" member of a resource entry.
   Member "calendar-attributes" is an array of CalendarAttributes objects. 
   Each CalendarAttributes object lists a set of one or more cost
   types it applies to. A cost type name MUST NOT appear more than once in the
   "calendar-attributes" member of a resource entry; multiple
   appearances of a cost type name in the CalendarAttributes object of the
   "calendar-attributes" member MUST cause the ALTO Client to ignore any
   occurrences of this name beyond the first encountered occurrence. 
   The Client SHOULD consider the CalendarAttributes object in the array 
   containing the first encountered occurrence of a cost type as the 
   valid one for this cost type. As an alternative, the Client may want to avoid the risks of 
   erroneous guidance associated to the use 
   of potentially invalid Calendar values. In this case, the Client MAY ignore
   the totality of occurences of CalendarAttributes objects containing the cost type name
   and query the cost type using <xref target="RFC7285"/>.
----- END

2- In Section 7 on Security considerations, the following text has been added to the last paragraph.

----- NEW 
Another risk of erroneous guidance appears when the Server exposes an occurrence of a same cost type name in different elements of the Calendar objects array associated to an information resource. In this case, there is no way for the Client to figure out which Calendar object in the array is valid. The specification in this document recommends, in this case, that the Client uses the first encountered Calendar object occurrence containing the cost type name. However, the Client may want to avoid the risks of erroneous guidance associated to the use  of potentially invalid Calendar values. To this end, as an alternative to the recommendation in this document,  the Client MAY ignore the totality of occurences of CalendarAttributes objects containing the cost type name and query this cost type using RFC7285.
----- END

>* "A cost type name MUST NOT appear more than once in the
>   "calendar-attributes" member of a resource entry;"
>   Sounds to me like this should say MUST appear only once. What if it appears
>   0 times?
>
[[SR]] If a cost type name appears 0 times, it means that it is not supported as a Calendar for this resource. 

>*"   o  "cost-type-names":
>
>      *  An array of one or more elements indicating the cost-type-names
>         in the IRD entry to which the capabilities apply."
>  Please do not use the parameter "cost-type-names" to describe the parameter
>  itself  ("indicating the cost-type-names")
>
[ [SR] ] done, thanks. Expression was changed in cost type names

>* "This field is an array of 1 to N boolean values, where N is the
>   number of requested metrics."
>   I could not find in 7285 that more than one metric can be requested. Could
>   you confirm and point to a ref?
>
[ [SR] ] The following text was added after the sentence you quoted
----- NEW
N is greater than 1 when the Client and the Server also implement [RFC8189].
----- END

>* In the Filtered Map Response:
>"object{
>     [JSONString cost-type-names <1..*>];
>     "
>     Why is this array of one or more attributes optional? Also this is non
>     explicitly stated in the text below.
>
[[SR]] This array is optional if a Calendar for only 1 cost type is queried but MUST be present when Calendars are provided for multiple cost types. The following text was added to the bullet describing "cost-type-names":
----- NEW
This member MUST be present when Cost Calendars are provided for more than one cost types.
----- END 

>* "[JSONString cost-type-names <1..*>];"
>; should be inside the bracket
>
[ [SR] ] done, thanks

>* "JSONString calendar-start-time;" please repeat or ref the section that states
>that the string contain an IMF-fixdate value
>
[[SR]] the section 5 text has been partly repeated and referenced

>* "   o  the calendared costs are JSONArrays instead of the JSONNumbers
>      format used by legacy ALTO implementations.  All arrays have a
>      number of values equal to 'number-of-intervals'."
>    Please explicitly state that each value correspond to the cost in that
>    interval.
>
[[SR]] done, thanks, your proposed text was added.

>* Section 5.2 references to sections be fixed
>
>* "The extensions to the requests for calendared Endpoint Cost Maps are
>   the same as for the Filtered Cost Map Service, specified in section
>   Section 5.1.1 of this draft."
>   Not only, also the request method is the same, please explicitely state that.
>
[[SR]] Assuming "method" means the rules defined around the extensions to the FCM request, the
Following text has been added 
----- NEW
Likewise, the rules defined around
   the extensions to ECM requests are the same as those defined in
   Section 5.1.1 for FCM requests.
----- END

>* Section 5.2.1 - Compared to ReqEndpointCostMap of 7285 the object
>described here has optional cost-type. Why is that changed from 7285?
>
[ [SR] ] The following explanation was added after the format specification of ReqEndpointCostMap
----- NEW
Member "cost-type" is optional because, in the ReqEndpointCostMap object definition of this document, it is jointly present with member "multi-cost-types", to ensure compatibility with RFC 8189. In RFC8189, members "cost-type" and "multi-cost-types" are both optional and have to obey the rule specified in section 4.1.2 of 8189 staying that: "the Client MUST specify either "cost-type" or "multi-cost-types" but MUST NOT specify both".
----- END

>* ""calendared" : [true];" ; should be inside the bracket
>
[ [SR] ]  I am not sure I understood why the ";" should be inside the bracket. Actually, I am not sure this ";" should be here at all, since in the JSON input, it is rather a comma "," . So I replaced ";" with ",". 

>* Please give a pointer to where "TypedEndpointAddr" is defined
>
[[SR]]  In the explanation text following the ReqEndpointCostMap structure, 2nd paragraph the following sentence was added:
----- NEW
The type TypedEndpointAddr is defined in section 10.4.1 of [RFC7285].
----- END

>* "ALTO Clients and Servers SHOULD support
>   both TLS 1.3 [RFC8446] and TLS 1.2 [RFC5246]," why both?
>
>* I believe TLS and JSON should be normative references of this document
>
[ [SR] ] Agreed, they now are

>*  ID Nits gives the following warnings:
> -- Obsolete informational reference (is this intentional?): RFC 5246
>     (Obsoleted by RFC 8446)
>
>[[Alexey:]] This one is Ok if requirement to support TLS 1.2 is intended
>
>  -- Obsolete informational reference (is this intentional?): RFC 7159
>     (Obsoleted by RFC 8259)
>
[ [SR] ] Yes, it is
>