- From: Alex Rousskov <rousskov@measurement-factory.com>
- Date: Tue, 6 Jul 2004 11:25:09 -0600 (MDT)
- To: ietf-http-wg@w3.org
Hi,
Some proxies forward some hop-by-hop headers. While discussing
a related Apache bugzilla entry[1], Nick Kew suggested that forwarding
a hop-by-hop header by a proxy is only a SHOULD-level violation, if it
is a violation at all.
Section 13.5.1 of RFC 2616 says:
For the purpose of defining the behavior of caches and non-caching
proxies, we divide HTTP headers into two categories:
- End-to-end headers, which are transmitted to the ultimate
recipient of a request or response. End-to-end headers in
responses MUST be stored as part of a cache entry and MUST be
transmitted in any response formed from a cache entry.
- Hop-by-hop headers, which are meaningful only for a single
transport-level connection, and are not stored by caches or
forwarded by proxies.
The "Hop-by-hop headers ... are not stored or forwarded" claim is not
an explicit MUST- or SHOULD-level requirement. It looks like an
assertion or definition. Given the negative impact forwarding some
hop-by-hop headers would have, I always assumed that proxies MUST NOT
forward any hop-by-hop headers. Was I wrong?
Is it worth changing the above language to a more consistent and
explicit:
- Hop-by-hop headers, which are meaningful only for a single
transport-level connection. Hop-by-hop headers MUST NOT be
stored by caches or forwarded by proxies.
BTW, the above "End-to-end headers" rules do not say anything about
forwarding End-to-end request headers. Perhaps the wording should be
polished to include request headers as well?
Thanks,
Alex.
[1] http://issues.apache.org/bugzilla/show_bug.cgi?id=15861
P.S. There are other MUSTs specific to some hop-by-hop headers,
including those in Connection header list. Here, we are talking about
the general rule for all hop-by-hop headers.
Received on Tuesday, 6 July 2004 13:27:03 UTC