- From: James M Snell <jasnell@gmail.com>
- Date: Fri, 3 May 2013 13:04:12 -0700
- To: "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
As a simplification, I'd like to suggest that we merge the RST_STREAM and GOAWAY frames into a single ERROR frame with the following definition: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Error Code (32) | +---------------------------------------------------------------+ |X| Last-Stream-ID (31) | +-+-------------------------------------------------------------+ (note that this flips the field order from the GOAWAY frame) A frame-specific GOAWAY flag bit (0x2) would be defined for the frame, and the Last-Stream-ID field would only be included in the frame data if this flag was set. This does a couple of things for us: 1. It simplifies the error handling and reduces the number of core frame types. 2. It allows us to terminate a stream and terminate the session in a single frame if necessary 3. It gives us a way of reporting non-terminal session errors (currently RST_STREAM is forbidden to use stream id #0 and GOAWAY is always terminal).
Received on Friday, 3 May 2013 20:05:00 UTC