Skip to content

Commit

Permalink
Merge pull request #441 from jan-ivar/defaultsendorder
Browse files Browse the repository at this point in the history
Define default send order.
  • Loading branch information
jan-ivar authored Dec 20, 2022
2 parents f8d6e56 + d40fceb commit b93da1e
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion index.bs
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,14 @@ A [=WebTransport stream=] is one of <dfn for=stream>incoming unidirectional</dfn
<td>No
<td>Yes
</tr>
<tr>
<td><dfn>flow control</dfn>
<td>[[!QUIC]]
[section 4.1](https://datatracker.ietf.org/doc/html/draft-ietf-quic-transport#section-4.1)
<td>No
<td>Yes
<td>Yes
</tr>
</tbody>
</table>

Expand Down Expand Up @@ -1404,7 +1412,15 @@ To <dfn for="WebTransportSendStream">write</dfn> |chunk| to a {{WebTransportSend
This sending MAY be interleaved with sending of previously queued streams and datagrams,
as well as streams and datagrams yet to be queued to be sent over this transport.

Note: Solving prioritization is an outstanding issue.
If |stream|.{{[[SendOrder]]}} is `null` then this sending MUST NOT starve
except for [=flow control=] reasons or [=WritableStream/Error | error=].

If |stream|.{{[[SendOrder]]}} is not `null` then this sending MUST starve
until all bytes queued for sending on {{WebTransportSendStream}}s with a
non-null and higher {{[[SendOrder]]}}, that are neither
[=WritableStream/Error | errored=] nor blocked by [=flow control=], have been
sent.

1. If the previous step failed, abort the remaining steps.

Note: We don't reject |promise| here because we handle network errors elsewhere, and those steps
Expand Down

0 comments on commit b93da1e

Please sign in to comment.