- From: Bryce Nesbitt <bnesbitt@bepress.com>
- Date: Fri, 21 Jan 2011 12:52:31 -0800
- To: HTTP Working Group <ietf-http-wg@w3.org>
- Cc: Mark Nottingham <mnot@mnot.net>, lisa.dusseault@gmail.com
- Message-ID: <AANLkTimi1nGQR3D3Pizb4jE97hwywyqN-6Mqsc7xMbGv@mail.gmail.com>
I would like to propose a change to the HTTP specification, to permit the Retry-After header to be used on a 20x HTTP response. I don't expect browsers to respect this. My target is cooperative automated harvesting agents, such as http://www.openarchives.org/OAI/openarchivesprotocol.htm<http://www.openarchives.org/OAI/openarchivesprotocol.html> The scenario here are robots that harvest huge data sets, but are deliberately rate limited. If I can legally return Retry-After with the 20x result, it will cut the total requests in half. Clients can ask for data, and know immediately how long to wait before they ask again. Only a client that violates the timeout would ever see a 503. The HTTP/1.1 spec is pretty clear (in section 14.37) that Retry-After is for 503 and 3xx return codes only. *Under the proposal* Client request data Server sends 200 response, with Retry-After 5 seconds Client waits 5 seconds and requests data Server sends 200 response, with Retry-After 3 seconds *Steps required under the current specification:* Request data 200 response Request data 503 response, Retry-After 5 seconds (Wait 5 seconds) Request data 200 response Request data 503 response, Retry-After 5 seconds On Wed, Apr 15, 2009 at 12:01 AM, Mark Nottingham <mnot@mnot.net> wrote: > Hi Bryce, > > What's the advantage of using Retry-After over Cache-Control here? > > Cheers, > > > > On 05/01/2009, at 2:46 PM, Bryce Nesbitt wrote: > > Dear http-wg members. >> >> Where would I go to propose a specification change to HTTP such as the one >> below (allowing optional Retry-After headers in a 20X response)? This is a >> backwards compatible change, and need not have any browser support to be >> valuable to cooperating automated harvesting robots (e.g. >> http://www.openarchives.org/OAI/openarchivesprotocol.html ). >> >> On Mon, Dec 22, 2008 at 8:51 PM, Bryce Nesbitt <bnesbitt@bepress.com> >> wrote: >> Dear Working Group Folks, >> >> I am not a member of the working group. But I have recently been tempted >> to "stretch" the HTTP spec, and I'm writing to inquire if what I'm doing is >> reasonable enough to eventually fold into the spec. >> >> Basically I'm sending a Retry-After header on a 20x HTTP response. >> >> I'm working with a "throttled" data service which rate limits connections. >> Clients are harvesting a huge volumes of data over time. Presently >> clients get some data with a 200 result, ask again right away and get a 503 >> response, then wait out the proper Retry-After time. >> >> If I can return Retry-After with the 20x result, it will cut the total >> requests in half. Clients can ask for data, and know immediately how long >> to wait before they ask again. Only a client that violates the timeout >> would ever see a 503. >> >> The HTTP/1.1 spec is pretty clear (in section 14.37) that Retry-After is >> for 503 and 3xx return codes only. Your thoughts? Where would I go to >> suggest an expansion of the Retry-After header, to be inclusive of 20x >> results? Is this a reasonable extension in your view? >> >> > > > > > > Dear Working Group Folks, > > >> I am not a member of the working group. But I have recently been tempted >> to "stretch" the HTTP spec, and I'm writing to inquire if what I'm doing is >> reasonable enough to eventually fold into the spec. > > >> Basically I'm sending a Retry-After header on a 20x HTTP response. > > > I'm working with a "throttled" data service which rate limits > connections. Clients are harvesting a huge volumes of data over time. > Presently clients get some data with a 200 result, ask again right away and > get a 503 response, then wait out the proper Retry-After time. > > > If I can return Retry-After with the 20x result, it will cut the total > requests in half. Clients can ask for data, and know immediately how long > to wait before they ask again. Only a client that violates the timeout > would ever see a 503. > > > The HTTP/1.1 spec is pretty clear (in section 14.37) that Retry-After is > for 503 and 3xx return codes only. Your thoughts? Where would I go to > suggest an expansion of the Retry-After header, to be inclusive of 20x > results? Is this a reasonable extension in your view? > > -- > Mark Nottingham http://www.mnot.net/ > > > -- Bryce Nesbitt The Berkeley Electronic Press bepress: sustainable scholarly publishing
Received on Friday, 21 January 2011 20:53:36 UTC