What the half close does in http2? What the diff between local and remote in stream state in http2?
I have seen that: reserved(local) --> half closed(remote)
in the lifecycle of a stream.
Why local to remote? why not reserved(local) --> half closed(local)
?
Each stream will have two different view points - the client and the server, the requester and the provider. Call it what you want.
So the "reserved" state is used when a PUSH_PROMISE has been sent. At this point the server has stated it intends to push a resource on another stream, so that stream identifier is reserved and cannot be used for anything but this pushed resource.
At this point the server sees it as follows:
reserved (local)
half closed (remote)
The client will see the exact same flow from the opposite point of view:
reserved (remote)
half-closed (local)
.The key to understanding the HTTP/2 state model is to realise that a request does not flow down one side or the other - but down both sides at the same time! It just depends whether you are looking at it from the sender or receiver point of view.
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments