Skip to content

Commit

Permalink
s/Last/Largest/ and improve conditions on a triggered GOAWAY
Browse files Browse the repository at this point in the history
  • Loading branch information
martinthomson committed Mar 5, 2017
1 parent 5bf0bff commit 62fcb5f
Showing 1 changed file with 13 additions and 9 deletions.
22 changes: 13 additions & 9 deletions draft-ietf-quic-transport.md
Original file line number Diff line number Diff line change
Expand Up @@ -1561,9 +1561,9 @@ those indicated. The GOAWAY frame is as follows:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Error Code (32) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Last Client Stream ID (32) |
| Largest Client Stream ID (32) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Last Server Stream ID (32) |
| Largest Server Stream ID (32) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reason Phrase Length (16) | [Reason Phrase (*)] ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Expand All @@ -1576,14 +1576,14 @@ Error Code:
: A 32-bit field error code which indicates the reason for closing this
connection.

Last Client Stream ID:
Largest Client Stream ID:

: The highest-numbered, client-initiated stream on which the endpoint sending
the GOAWAY frame either sent data, or received and delivered data. All
higher-numbered, client-initiated streams (that is, odd-numbered streams) are
implicitly reset by sending or receiving the GOAWAY frame.

Last Server Stream ID:
Largest Server Stream ID:

: The highest-numbered, server-initiated stream on which the endpoint sending
the GOAWAY frame either sent data, or received and delivered data. All
Expand All @@ -1601,9 +1601,10 @@ Reason Phrase:

A GOAWAY frame indicates that any application layer actions on streams with
higher numbers than those indicated can be safely retried because no data was
exchanged. An endpoint MUST set the value of the Last Client or Server Stream
ID to be at least as high as the highest-numbered stream on which it either sent
data or received and delivered data to the application protocol that uses QUIC.
exchanged. An endpoint MUST set the value of the Largest Client or Server
Stream ID to be at least as high as the highest-numbered stream on which it
either sent data or received and delivered data to the application protocol that
uses QUIC.

An endpoint MAY choose a larger stream identifier if it wishes to allow for a
number of streams to be created. This is especially valuable for peer-initiated
Expand All @@ -1617,8 +1618,11 @@ in the GOAWAY frame can then be retried.

For peer-initiated streams, an endpoint might indicate a lower value for the
highest stream number than the value that might be sent by a peer. After
receiving a GOAWAY frame, an endpoint SHOULD send a GOAWAY frame in response to
indicate its own view of which streams are unused.
receiving a GOAWAY frame, an endpoint SHOULD send a GOAWAY frame in response and
update the value for streams that it initiates, if the value is lower than the
one it receives. If an endpoint does send a GOAWAY in response to another
GOAWAY, it SHOULD NOT update the value for peer-initiated streams, unless it
wishes to cancel those streams.


# Packetization and Reliability {#packetization}
Expand Down

0 comments on commit 62fcb5f

Please sign in to comment.