Re: [alto] Update review of draft-ietf-alto-cost-calendar-02

"Randriamasy, Sabine (Nokia - FR/Paris-Saclay)" <> Thu, 07 December 2017 16:49 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id AE03212945B; Thu, 7 Dec 2017 08:49:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.919
X-Spam-Status: No, score=-1.919 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id i1oy0fUqXPUo; Thu, 7 Dec 2017 08:49:03 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id F4081127522; Thu, 7 Dec 2017 08:49:02 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=selector2-nokia-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=sgxb9pFW82nCLjW8KREwbaA7LM8lpru7n3oM7cNIR1g=; b=UBVO9Hwf7GEF59OtDp1Ihv7LonRKEeyJzC//Y3XAwMVX+BBBDY6edDTPr+7jjBZEW4nXCVL/yVZ2SGLxSceHMQpwSFQ6wn7us1TRCi2fZlcjkk6P3Xg3UYl4Klb4d9e188a5Rm/hqpprv30Zat0EEPVyFPwc/2A6rHmz2nQ7q+Y=
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.323.4; Thu, 7 Dec 2017 16:49:00 +0000
Received: from ([fe80::5097:2f79:6a5c:dd86]) by ([fe80::5097:2f79:6a5c:dd86%17]) with mapi id 15.20.0323.004; Thu, 7 Dec 2017 16:49:00 +0000
From: "Randriamasy, Sabine (Nokia - FR/Paris-Saclay)" <>
To: Jensen Zhang <>
CC: "" <>, IETF ALTO <>
Thread-Topic: Update review of draft-ietf-alto-cost-calendar-02
Thread-Index: AQHTa0Q/fcEpL+fI/0u3qBwxKoVAUaM2jsJ5gACk3oCAAOcAEA==
Date: Thu, 7 Dec 2017 16:49:00 +0000
Message-ID: <>
References: <> <> <>
In-Reply-To: <>
Accept-Language: fr-FR, en-US
Content-Language: en-US
x-originating-ip: []
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB6PR0701MB2453; 6:qoraykH8LxmS/7PeuV0lnSl0TkBT0x1IN1CrATA/SAyR2wNQQg7iKpNjsXs/D312OejtOwdVaxYUnx67m7oecmlwFDay+vTT6TvG5sGk8rjD9oQ82Rbq3MfC6rbs+y7H+6Q7ctmYZ8np9xSIt0VgQi6SWLGOaZ9mY9uFSed/pgQzlKqP3g8oVaV4boUgr+nJ6OoDJpA483PPYq7ipVMOrulUdlud5cUL/BK1C2N0gZJaIlHHLUIfiZA6ASmpen2CaREAsneOqr9mxPEU0DgG/QX9dzmKJ76iMbM09rSQcSaUvY4Ic4vCCMYYFSUhLGztNtre/E9saH4XvqbZ9KEOeTI+KJyvGOOJFqHLk9lF4dM=; 5:xiybQ5cQrv+viuVWaRMfzyKzFnI5IlCWA6HdAXYxlPozjTvHnc8zNWAvNfF/F+ttub3ngO4Qjp9O4JuA6ROp+GbA9zw8QPqpYrFTS1tesHIW3BTScyGpoNM+uQnoUvzVylRuIjzc1Vm6AoZnsG4le9VNY9hGIRVgENAJNzOjwnI=; 24:AStX5DACCvYxIJNSAE/bELuC4ywxqZA6lYhVVHKVqG7qRt1KYNgxYgMEmFK1SLCKTzqfnI5UJPiDzxuq/HQuC1dmcIh/DSIfqgcagoT7R6c=; 7:zUBMIp93pFdz353aCH8830hscDnYP0hhzVFj6Xxrsse1GnNBV6TYWmOBVlrNGZR9WK8RkkzAEku5f/zScAfGYvUOl61jgD9Xmw12qLsog0QNA6rYwKLliGO0LhXPdwR9J+ERGAl2VD0FawpD1HgM/TvfQX3OHFxrTFxRDR2iDF9PbXhF4cmhLPI4NcXpxO009eTXA8nnS4B7K2T5pH4evMsusxFm+LVf9v/8W1LoIxZchLy98vWLu7NHVSSlZ1p1
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 9841a837-afad-4c1b-91f1-08d53d926aa6
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(5600026)(4604075)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(48565401081)(2017052603286); SRVR:DB6PR0701MB2453;
x-ms-traffictypediagnostic: DB6PR0701MB2453:
authentication-results: spf=none (sender IP is );
x-microsoft-antispam-prvs: <>
x-exchange-antispam-report-test: UriScan:(158342451672863)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(3231022)(10201501046)(6055026)(6041248)(20161123564025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123555025)(20161123558100)(6072148)(201708071742011); SRVR:DB6PR0701MB2453; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:DB6PR0701MB2453;
x-forefront-prvs: 05143A8241
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(366004)(346002)(376002)(189003)(199004)(53434003)(24454002)(66066001)(9686003)(229853002)(14454004)(6306002)(7110500001)(81156014)(54896002)(8936002)(81166006)(55016002)(8676002)(6246003)(105586002)(33656002)(7736002)(25786009)(6506006)(2900100001)(39060400002)(236005)(4326008)(86362001)(3846002)(102836003)(6436002)(6116002)(606006)(53936002)(790700001)(10710500007)(15650500001)(53546010)(2906002)(316002)(99286004)(54906003)(5660300001)(101416001)(97736004)(74316002)(7696005)(106356001)(5250100002)(230783001)(3660700001)(76176011)(6916009)(68736007)(2950100002)(478600001)(3280700002)(2420400007)(90052001)(560514002); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR0701MB2453;; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:0; LANG:en;
received-spf: None ( does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_DB6PR0701MB2454F528D916EAA4D5357BD595330DB6PR0701MB2454_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 9841a837-afad-4c1b-91f1-08d53d926aa6
X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Dec 2017 16:49:00.5363 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0701MB2453
Archived-At: <>
Subject: Re: [alto] Update review of draft-ietf-alto-cost-calendar-02
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Application-Layer Traffic Optimization \(alto\) WG mailing list" <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 07 Dec 2017 16:49:07 -0000

Hi Jensen,

Thanks for your answers, please see mine inline,

From: Jensen Zhang []
Sent: Thursday, December 07, 2017 3:43 AM
To: Randriamasy, Sabine (Nokia - FR/Paris-Saclay) <>
Subject: Re: Update review of draft-ietf-alto-cost-calendar-02

Hi Sabine,

It is good to know the revision is in progress. Please see my comments inline.

On Thu, Dec 7, 2017 at 2:18 AM Randriamasy, Sabine (Nokia - FR/Paris-Saclay) <<>> wrote:

Hi Jensen,

Indeed, the revison of the drafts is in progress and thanks a lot for your comments that will be considered for the next version. Please see my feedback inline.

In the new text proposals, text in ++blabla++ format means "blabla" is added to the initial text.



De : Jensen Zhang <<>>
Envoyé : samedi 2 décembre 2017 09:04
À : Randriamasy, Sabine (Nokia - FR/Paris-Saclay);<>
Objet : Update review of draft-ietf-alto-cost-calendar-02

Hi Sabine and other authors,

How are you? Since the last review from Dawn (, I have not found the draft was updated yet. From the agreement in IETF 99, there are a lot of text harmonization work. I assume the revision is in progress. I just append some technical review for the current version below. Hopefully, it will be helpful.


Section 3.1., paragraph 3:

>    A member "calendar-attributes" MUST appear only once for each
>    applicable cost type name of a resource entry.  If "calendar-
>    attributes" are specified several times for a same "cost-type-name"
>    in the capabilities of a resource entry, the ALTO client SHOULD
>    ignore any calendar capabilities on this "cost-type-name" for this
>    resource entry.

  I think it will be much better to adopt the finest granularity than
  just ignore all, if there are more than one "calendar-attributes"
  object for the same "cost-type-name".

=> OK, the text may be too careful and we may allow a client to consider the first set of attributes and ignore the next ones.
The sentence would then become: "... the ALTO client SHOULD  ++ only consider the first occurrence of "calendar-attributes and++  ignore any  ++additional++  calendar capabilities   ..."

(Jensen) The modification looks fine for me.

Section 3.1., paragraph 9:

>       *  is the duration of an ALTO calendar time interval, expressed as
>          a time unit appended to the number of these units.  The time
>          unit, ranges from "second" to "year".  The number is encoded
>          with an integer.  Example values are: "5 minute" , "2 hour",
>          meaning that each calendar value applies on a time interval
>          that lasts respectively 5 minutes and 2 hours.

  I prefer to use another field (i.e. "time-interval-unit")
  to express the time unit and make "time-interval-size" a simple
  JSONNumber. Because it can simplify the data validation. In this way,
  the server and client only need to check the data type (number and
  enumeration) without validating the data content.

==> the motivation here was mainly to lighten the data volume by using only one fieldand make sure that a change in either units and number of units will not be missed by the client.
Do you mean that the parsing of the value of the current "time-interval-size" is longer and more complex?

(Jensen) I just concern the potential error from the different implemetations, when introducing the extra syntax in the data content.

For example, if we follow the current definition of "time-interval-size", different servers may implement the description "a time unit appended to the number of these units" in different ways:

- One server may specify a regex like /^\d+\w*(second|minute|hour|month|year)$/.
- But another server may enforce the expression as a number with **exact one space** with a unit.
[[SR]] we may specify the format of "time-interval-size" just as constraint format is specified in section of RFC 7285.
Writing for example: a "time-interval-size" value contains 2  entities separated by exactly one whitespace: a JSONNumber and a string taking values in {second, minute, hour, month, year}. Example values are: “1 minute”, “5 month”.
- And some other server may allow "week" as a unit.
[[SR]] Indeed, week can be added as an alternative to “7 day”.
- ...

But these information cannot be provided by the capabilities in the IRD entry. So the client may assume the server implementation in some inconsistent way and conduct some unexpected errors.

I don't know how strong the motivation to lighten the data volume is. Because the IRD resource is always very small and seldom updated. It's not like cost map and other resources which may achieve hundred MB volume.
[[SR]] the calendar attributes are also given in the meta of Server responses.

Section 4.1.1., paragraph 5:

>    This field MUST NOT be specified if member "calendar-attributes" is
>    not present for this information resource.

  From section 8.3.7 of RFC7285, "ALTO implementations MUST ignore
  unknown fields when processing ALTO messages", I think we need
  to change "This field MUST NOT be specified" to "This field MUST
  be ignored". Because if "calendar-attributes" is not present,
  the server should be a legacy ALTO server which doesn't support
  calendar extension. So the "calendared" field is an unknown field
  in the request.

==> Indeed, we should minimize the error messages. So how about writing: "This field SHOULD NOT be specified if ++no++ member "calendar-attributes" is  present for this information resource.  ++ It  will be ignored by a legacy ALTO Server, according to section 8.3.7 of RFC 7285. A Calendar-aware Server will return a response with a single cost value as specified in RFC 7285 ++ ".

(Jensen) Looks fine for me.

Section 4.2.1., paragraph 1:

>    The extensions to the requests for calendared Endpoint Cost Maps are
>    the same as for the Filtered Cost Map Service, specified in section
>    XXXX of this draft.

  Just a reminder. Don't forget to change "section XXXX".

==> good catch, thanks a lot.


Once we have an update, I would like to proofread the revision.