W3C home > Mailing lists > Public > ietf-http-wg-old@w3.org > May to August 1997

Re: RE-VERSION

From: Roy T. Fielding <fielding@kiwi.ics.uci.edu>
Date: Sat, 09 Aug 1997 04:21:55 -0700
To: John Franks <john@math.nwu.edu>
Cc: HTTP Working Group <http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com>
Message-Id: <9708090441.aa28613@paris.ics.uci.edu>
>My previous response to this thread may have been a little too
>flip.  There is a serious issue here which has been discussed
>before but maybe not really resolved.  It deserves our attention.

It was resolved, twice.  I consider it closed.

>With the current spec the version header is hop-by-hop so the receiver
>of a transaction can compute EV = min { SV(sender), SV(receiver)}.
>This complicates life for proxies, though.  It means that a 1.m proxy
>must be capable of translating an entity with EV == 1.m to an entity
>with EV == 1.n for all n <= m.  This is because hop-by-hop implies a
>1.m proxy talking to a 1.m server can only ask for a response with 
>EV == 1.m, even though it may acting on behalf of a 1.n client with
>n < m.

Yes, that is the cost of progress.  In order to take advantage of more
advanced protocol features, a proxy must make up for its weaker clients.
There is no way around it.  In fact, that should be considered a valuable
feature by anyone who purchases a proxy.

>This seems to put a heavy burden on proxies.  The current spec precudes
>the possibility of a proxy pushing this burden onto the server where
>it would be easier to deal with (in general it will be easier to
>*generate* an entity with EV == 1.n for all n <= m than it is to
>*translate* an entity from EV == 1.k to EV == 1.j for all j <= k <= m).

That would be stupid.  If a proxy has no use for the advanced features,
then why has it implemented them?  For example, the chunked encoding
allows for more reliable transfer of dynamic content, particularly
when the content is cachable.  You are suggesting that a 1.1 proxy
should disable that capability just because the client of the current
request is 1.0, even though the benefits received from chunked content
apply to all future requests as well.

In general, there is no requirement that a client (including a proxy)
send a 1.1 request instead of 1.0.  There can't be, since then the
client would be using the 1.0 protocol and not HTTP/1.1.  Thus, the
concern you mention is unfounded.

>Of course, at present we only have versions 1.0 and 1.1 so the proxy
>need only be able to translate an entity with EV == 1.1 to one with EV
>== 1.0.  This requires removing any chunking, but Josh Cohen asks if
>it requires anything else.  I don't know.  We need to understand and
>document exactly what is required for this translation.

Done that -- it took me ten minutes (not counting the two years arguing
about RFC 2068).

....Roy
Received on Saturday, 9 August 1997 04:46:13 EDT

This archive was generated by hypermail pre-2.1.9 : Wednesday, 24 September 2003 06:32:51 EDT