Re: TE header

On Mon, 5 Aug 2002, Jeffrey Mogul wrote:

> Joe Orton writes:
> 
>     I'm confused by this paragraph in section 14.39 of 2616:
>     
>        The TE header field only applies to the immediate connection.
>        Therefore, the keyword MUST be supplied within a Connection header
>        field (section 14.10) whenever TE is present in an HTTP/1.1 message.
> 
> Alex Rousskov writes:
> 
>     The MUST clause wording is clearly buggy. The clause should
>     either be deleted or reworded to specify a different reason.
>     
> No, the MUST clause is correct.  Consider this scenario:
> 
> HTTP/1.1 client sends this request to RFC2068-compliant proxy:

I have to disagree. Yes, the _result_ of the clause is correct. No,
the explanation offered in the clause seems incorrect. The explanation
says that TE must be supplied because it is a hop-by-hop header.
That's misleading because hop-by-hop headers are already handled
correctly without Connection: stuff. What it should probably say is
that TE must be supplied because 2068 compliant proxies do not know
about TE hop-by-hop header. That is, the reason for this MUST is
compatibility with earlier RFCs.

Do you see what I am getting at? An average implementor will probably
pause for a seconds and say "hmm, compliant proxies already support
hop-by-hop headers so I can ignore this MUST".

With your explanation/example, it is clear that MUST directions 
are valid. It's just that the motivation seems to be missing or is
misleading.

> OK, I guess the proxy implementors of the world have some work
> left to do!  We're not going to rewrite the spec to legalize
> something bogus just because implementors aren't paying attention.

Yes, of course. This is more suitable for "known HTTP
[implementations] problems draft" and does not call for RFC changes.


Thank you,

Alex.
 

Received on Monday, 5 August 2002 15:01:24 UTC