1 | | according to the spdy protocol In data frame flag = 0 is invalid |
2 | | |
3 | | 2.2.2 Data frames |
4 | | |
5 | | +----------------------------------+ |
6 | | |C| Stream-ID (31bits) | |
7 | | +----------------------------------+ |
8 | | | Flags (8) | Length (24 bits) | |
9 | | +----------------------------------+ |
10 | | | Data | |
11 | | +----------------------------------+ |
12 | | |
13 | | Control bit: For data frames this value is always 0. |
14 | | |
15 | | Stream-ID: A 31-bit value identifying the stream. |
16 | | |
17 | | Flags: Flags related to this frame. Valid flags are: |
18 | | |
19 | | 0x01 = FLAG_FIN - signifies that this frame represents the last frame to be transmitted on this stream. See Stream Close (Section 2.3.7) below. |
20 | | Length: An unsigned 24-bit value representing the number of bytes after the length field. The total size of a data frame is 8 bytes + length. It is valid to have a zero-length data frame. |
21 | | |
22 | | Data: The variable-length data payload; the length was defined in the length field. |
23 | | |
24 | | Data frame processing requirements: |
25 | | |
26 | | If an endpoint receives a data frame for a stream-id which is not open and the endpoint has not sent a GOAWAY (Section 2.6.6) frame, it MUST issue a stream error (Section 2.4.2) with the error code INVALID_STREAM for the stream-id. |
27 | | If the endpoint which created the stream receives a data frame before receiving a SYN_REPLY on that stream, it is a protocol error, and the recipient MUST issue a stream error (Section 2.4.2) with the status code PROTOCOL_ERROR for the stream-id. |
28 | | Implementors note: If an endpoint receives multiple data frames for invalid stream-ids, it MAY close the session. |
| 1 | |