Re: [apps-discuss] Review of draft-ietf-alto-protocol-11.txt

Ben Niven-Jenkins <ben@niven-jenkins.co.uk> Wed, 02 May 2012 19:24 UTC

Return-Path: <ben@niven-jenkins.co.uk>
X-Original-To: apps-discuss@ietfa.amsl.com
Delivered-To: apps-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 48D1221E80A8 for <apps-discuss@ietfa.amsl.com>; Wed, 2 May 2012 12:24:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.266
X-Spam-Level:
X-Spam-Status: No, score=-105.266 tagged_above=-999 required=5 tests=[AWL=-2.667, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
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 6FNXty0LBz71 for <apps-discuss@ietfa.amsl.com>; Wed, 2 May 2012 12:24:50 -0700 (PDT)
Received: from mailex.mailcore.me (mailex.mailcore.me [94.136.40.61]) by ietfa.amsl.com (Postfix) with ESMTP id A3F6711E809D for <apps-discuss@ietf.org>; Wed, 2 May 2012 12:24:42 -0700 (PDT)
Received: from cpc4-cmbg17-2-0-cust814.5-4.cable.virginmedia.com ([86.14.227.47] helo=[192.168.0.3]) by mail11.atlas.pipex.net with esmtpa (Exim 4.71) (envelope-from <ben@niven-jenkins.co.uk>) id 1SPfAH-0000Sa-5L; Wed, 02 May 2012 20:24:41 +0100
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Ben Niven-Jenkins <ben@niven-jenkins.co.uk>
In-Reply-To: <CADOmCZXkF=Qc46x7+00KmB+y2q4Rm6xku2Q40YBQtsp4QeuqQQ@mail.gmail.com>
Date: Wed, 02 May 2012 20:24:39 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <30166A91-3C02-48F7-8C3B-179DA770138C@niven-jenkins.co.uk>
References: <CA+9kkMB4nUayYO3q8ydj477jh9NM8oZyXAQ5k-NsRN=KHjb3cA@mail.gmail.com> <2DE7DDDA-6621-4E56-BD3D-1173833E672B@niven-jenkins.co.uk> <CA+9kkMApj1dPNn+0Uiz9iRPBhk3Px9kj-nP+Z+UGsjxoqY82eg@mail.gmail.com> <98BA299A-18E0-412C-A005-754F336E1620@niven-jenkins.co.uk> <CADOmCZXkF=Qc46x7+00KmB+y2q4Rm6xku2Q40YBQtsp4QeuqQQ@mail.gmail.com>
To: Richard Alimi <ralimi@google.com>
X-Mailer: Apple Mail (2.1084)
X-Mailcore-Auth: 9600544
X-Mailcore-Domain: 172912
Cc: draft-ietf-alto-protocol.all@tools.ietf.org, apps-discuss@ietf.org
Subject: Re: [apps-discuss] Review of draft-ietf-alto-protocol-11.txt
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 02 May 2012 19:24:51 -0000

Rich, Ted,

On 2 May 2012, at 18:49, Richard Alimi wrote:

> On Wed, May 2, 2012 at 10:39 AM, Ben Niven-Jenkins
> <ben@niven-jenkins.co.uk> wrote:
>> 
>> On 2 May 2012, at 17:28, Ted Hardie wrote:
>>> 
>>> It is not the cacheability of the results of post request that I was
>>> referring to, but
>>> the cacheability of the results of a 303.
>> 
>> Ah, I see. Yes I see your issue with the text now.
>> 
>> I believe there is an implicit assumption on the part of the authors that in this model (receive a POST and return a 303) that the ALTO server could be doing some level of "ALTO-application level caching" to avoid repeating expensive queries by determining that a given POST would execute the same query as a previous POST and therefore rather than run the query again, just return a 303 to a resource on the ALTO server that contains the results of the previous (identical) query.
>> 
> 
> The word 'caching' was meant to apply to the response the ALTO Client
> that actually contained the data it was looking for (that is, the
> following GET).  An ALTO Server could also internally cache the
> results to avoid repeated computation, but that was meant to be
> implicit since this text was referring to the protocol messaging.
> 
> I understand Ted's point about the ambiguity in the text 'employ
> caching for the response to a POST request'.  We can clean that up to
> indicate that the caching is for the ALTO-level response (as returned
> by the following GET) and not the response to the POST itself.
> 
>> But as I'm not an author I'll crawl back under my rock now.
> 
> No - come back! :)

As you asked so nicely, I wonder if the following (slightly wordy) change would address Ted's comment:

OLD:
   Note that it is possible for an ALTO Server to employ caching for the
   response to a POST request.  This can be accomplished by returning an
   HTTP 303 status code ("See Other") indicating to the ALTO Client that
   the resulting Cost Map is available via a GET request to an alternate
   URL (which may be cached).
NEW:
Note that it is possible for an ALTO Server to leverage caching HTTP intermediaries for responses to both GET and POST requests by including explicit freshness information (see Section 2.3.1 of [HTTPBIS Part6]).

Caching of POST requests is not widely implemented by HTTP intermediaries, however an alternative approach is for an ALTO Server, in response to POST requests, to return an HTTP 303 status code ("See Other") indicating to the ALTO Client that the resulting Cost Map is available via a GET request to an alternate URL. HTTP intermediaries that do not support caching of POST requests could then cache the response to the GET request from the ALTO Client following the alternate URL in the 303 response (if the response to the subsequent GET request contains explicit freshness information).
END

Ted went on to say:
> Since cachability
> is a major reason cited for the re-use of HTTP, some additional text
> on the use cache control directives ("public" and "Max-age" seem
> particularly important in this context) might also be useful.

I wonder whether a reference to Section 3.2 of HTTPBIS Part6 would suffice?

Ben