Re: HTTP/2 response completed before its request

On Tue, Jul 1, 2014 at 4:10 PM, Poul-Henning Kamp <phk@phk.freebsd.dk>
wrote:

> In message <CAA4WUYiH+oi0O0KKJA2oN8CEYJBkhw2yP=
> KgEvc29YDkRaL-4g@mail.gmail.com>, =?UTF-8?B?V2lsbGlhbSBDaGF
> uICjpmYjmmbrmmIwp?= writes:
>
> >I'm with Johnny here. A HTTP/2 stream roughly mirrors a TCP connection.
> >
> >I think conflating HTTP message semantics with the transport is a mistake.
> >If the server really wants the other end to go away, why doesn't it just
> >kill the connection with a RST_STREAM?
>
> Because it wants the client to accept the 3xx, 4xx or 5xx response as
> valid rather than discard it ?


Ah. The client received a full and complete response from the server. In
the face of a RST_STREAM / NO_ERROR, there's no reason for it to discard it.


>Moreover, the suggestion that the client should terminate sending the
> >request with an END_STREAM flag sounds wrong. Isn't that actually
> modifying
> >the HTTP request? I would think that you'd want the client to end the
> >request with a RST_STREAM.
>
> Again:  The server send a reply, the client accepted it, RST'ing the
> stream seems wrong to me in that case.
>
> --
> Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
> phk@FreeBSD.ORG         | TCP/IP since RFC 956
> FreeBSD committer       | BSD since 4.3-tahoe
> Never attribute to malice what can adequately be explained by incompetence.
>

Received on Tuesday, 1 July 2014 20:17:22 UTC