forked from httpwg/http2-spec
-
Notifications
You must be signed in to change notification settings - Fork 273
Advice
William Chan edited this page Oct 17, 2013
·
5 revisions
Things we have learned and common mistakes - todo
-
The spec notes that stream ids must be increasing, but this can be easy to accidentally violate. If after frame generation, you insert the frame into a priority queue, then it's possible for a higher priority frame to move ahead. Therefore, stream ids must be generated/committed later in processing in order to ensure correct stream id ordering.
-
Implementations need to make sure they are always pumping data from the underlying transport to the HTTP/2 layer, otherwise there can be hangs. This is because a sender may be blocked on a zero flow control window. If it doesn't keep reading data from the socket, it may not pick up the WINDOW_UPDATE frame that reopens the flow control window.