Skip to content

Commit

Permalink
Merge pull request #595 from nidhijaju/retransmissions-note
Browse files Browse the repository at this point in the history
SHA: 4208ac5
Reason: push, by jan-ivar

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
  • Loading branch information
jan-ivar and github-actions[bot] committed Mar 26, 2024
1 parent 63b7442 commit bc25be7
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<link href="https://www.w3.org/StyleSheets/TR/2021/W3C-ED" rel="stylesheet">
<meta content="Bikeshed version 82ce88815, updated Thu Sep 7 16:33:55 2023 -0700" name="generator">
<link href="https://www.w3.org/TR/webtransport/" rel="canonical">
<meta content="9dd3692200165a5a70d21a5adfa196a8d920d6e3" name="document-revision">
<meta content="4208ac521173a559a3d73ecfc9a68d982330cdc3" name="document-revision">
<style>/* Boilerplate: style-autolinks */
.css.css, .property.property, .descriptor.descriptor {
color: var(--a-normal-text);
Expand Down Expand Up @@ -669,7 +669,7 @@
<div class="head">
<p data-fill-with="logo"><a class="logo" href="https://www.w3.org/"> <img alt="W3C" height="48" src="https://www.w3.org/StyleSheets/TR/2021/logos/W3C" width="72"> </a> </p>
<h1 class="p-name no-ref" id="title">WebTransport</h1>
<p id="w3c-state"><a href="https://www.w3.org/standards/types#ED">Editor’s Draft</a>, <time class="dt-updated" datetime="2024-03-12">12 March 2024</time></p>
<p id="w3c-state"><a href="https://www.w3.org/standards/types#ED">Editor’s Draft</a>, <time class="dt-updated" datetime="2024-03-26">26 March 2024</time></p>
<details open>
<summary>More details about this document</summary>
<div data-fill-with="spec-metadata">
Expand Down Expand Up @@ -2640,10 +2640,13 @@ <h3 class="heading settled" data-level="6.4" id="send-stream-procedures"><span c
sent.</p>
<p>We access <var>stream</var>.<code class="idl"><a data-link-type="idl" href="#dom-webtransportsendstream-sendorder-slot" id="ref-for-dom-webtransportsendstream-sendorder-slot④">[[SendOrder]]</a></code> <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel" id="ref-for-in-parallel①①">in parallel</a> here. User agents SHOULD
respond to live updates of these values during sending, though the details are <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#implementation-defined" id="ref-for-implementation-defined⑨">implementation-defined</a>.</p>
<p class="note" role="note"><span class="marker">Note:</span> Ordering of retransmissions is <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#implementation-defined" id="ref-for-implementation-defined①⓪">implementation-defined</a>,
but user agents are strongly encouraged to prioritize retransmissions of data with
higher <code class="idl"><a data-link-type="idl" href="#dom-webtransportsendstream-sendorder-slot" id="ref-for-dom-webtransportsendstream-sendorder-slot⑤">[[SendOrder]]</a></code> values.</p>
<p>This sending MUST NOT starve otherwise,
except for <a data-link-type="dfn" href="#stream-signal-flow-control" id="ref-for-stream-signal-flow-control②">flow control</a> reasons or <a data-link-type="dfn" href="https://streams.spec.whatwg.org/#writablestream-error" id="ref-for-writablestream-error③"> error</a>.</p>
<p>The user agent SHOULD divide bandwidth fairly between all streams that aren’t starved.</p>
<p class="note" role="note"><span class="marker">Note:</span> The definition of fairness here is <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#implementation-defined" id="ref-for-implementation-defined①">implementation-defined</a>.</p>
<p class="note" role="note"><span class="marker">Note:</span> The definition of fairness here is <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#implementation-defined" id="ref-for-implementation-defined①">implementation-defined</a>.</p>
<li data-md>
<p>If the previous step failed due to a network error, abort the remaining steps.</p>
<p class="note" role="note"><span class="marker">Note:</span> We don’t reject <var>promise</var> here because we handle network errors elsewhere, and those steps
Expand Down Expand Up @@ -2988,7 +2991,7 @@ <h3 class="heading settled" data-level="8.3" id="receive-stream-procedures"><spa
<li data-md>
<p>Set <var>offset</var> to 0.</p>
<li data-md>
<p>Set <var>maxBytes</var> to an <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#implementation-defined" id="ref-for-implementation-defined①">implementation-defined</a> size.</p>
<p>Set <var>maxBytes</var> to an <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#implementation-defined" id="ref-for-implementation-defined①">implementation-defined</a> size.</p>
<li data-md>
<p>Set <var>buffer</var> be a <a data-link-type="dfn" href="https://webidl.spec.whatwg.org/#new" id="ref-for-new①①">new</a> <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-ArrayBuffer" id="ref-for-idl-ArrayBuffer">ArrayBuffer</a></code> with <var>maxBytes</var> size. If allocating the <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-ArrayBuffer" id="ref-for-idl-ArrayBuffer①">ArrayBuffer</a></code> fails, return <a data-link-type="dfn" href="https://webidl.spec.whatwg.org/#a-promise-rejected-with" id="ref-for-a-promise-rejected-with④">a promise rejected with</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#exceptiondef-rangeerror" id="ref-for-exceptiondef-rangeerror⑤">RangeError</a></code>.</p>
</ol>
Expand Down Expand Up @@ -5080,7 +5083,7 @@ <h2 class="no-num no-ref heading settled" id="issues-index"><span class="content
window.dfnpanelData['06a6db54'] = {"dfnID": "06a6db54", "url": "https://infra.spec.whatwg.org/#queue-enqueue", "dfnText": "enqueue", "refSections": [{"refs": [{"id": "ref-for-queue-enqueue"}], "title": "4.3. Procedures"}], "external": true};
window.dfnpanelData['1243a891'] = {"dfnID": "1243a891", "url": "https://infra.spec.whatwg.org/#map-exists", "dfnText": "exist", "refSections": [{"refs": [{"id": "ref-for-map-exists"}], "title": "5.12. WebTransportConnectionStats Dictionary"}], "external": true};
window.dfnpanelData['16d07e10'] = {"dfnID": "16d07e10", "url": "https://infra.spec.whatwg.org/#list-iterate", "dfnText": "for each", "refSections": [{"refs": [{"id": "ref-for-list-iterate"}, {"id": "ref-for-list-iterate\u2460"}], "title": "5.5. Procedures"}, {"refs": [{"id": "ref-for-list-iterate\u2461"}, {"id": "ref-for-list-iterate\u2462"}], "title": "6.4. Procedures"}], "external": true};
window.dfnpanelData['860300d4'] = {"dfnID": "860300d4", "url": "https://infra.spec.whatwg.org/#implementation-defined", "dfnText": "implementation-defined", "refSections": [{"refs": [{"id": "ref-for-implementation-defined"}, {"id": "ref-for-implementation-defined\u2460"}, {"id": "ref-for-implementation-defined\u2461"}], "title": "4.1. Internal slots"}, {"refs": [{"id": "ref-for-implementation-defined\u2462"}, {"id": "ref-for-implementation-defined\u2463"}], "title": "4.3. Procedures"}, {"refs": [{"id": "ref-for-implementation-defined\u2464"}], "title": "5.4. Methods"}, {"refs": [{"id": "ref-for-implementation-defined\u2465"}, {"id": "ref-for-implementation-defined\u2466"}], "title": "5.9. Configuration"}, {"refs": [{"id": "ref-for-implementation-defined\u2467"}], "title": "5.11. WebTransportSendStreamOptions Dictionary"}, {"refs": [{"id": "ref-for-implementation-defined\u2468"}, {"id": "ref-for-implementation-defined\u2460\u24ea"}], "title": "6.4. Procedures"}, {"refs": [{"id": "ref-for-implementation-defined\u2460\u2460"}], "title": "8.3. Procedures"}], "external": true};
window.dfnpanelData['860300d4'] = {"dfnID": "860300d4", "url": "https://infra.spec.whatwg.org/#implementation-defined", "dfnText": "implementation-defined", "refSections": [{"refs": [{"id": "ref-for-implementation-defined"}, {"id": "ref-for-implementation-defined\u2460"}, {"id": "ref-for-implementation-defined\u2461"}], "title": "4.1. Internal slots"}, {"refs": [{"id": "ref-for-implementation-defined\u2462"}, {"id": "ref-for-implementation-defined\u2463"}], "title": "4.3. Procedures"}, {"refs": [{"id": "ref-for-implementation-defined\u2464"}], "title": "5.4. Methods"}, {"refs": [{"id": "ref-for-implementation-defined\u2465"}, {"id": "ref-for-implementation-defined\u2466"}], "title": "5.9. Configuration"}, {"refs": [{"id": "ref-for-implementation-defined\u2467"}], "title": "5.11. WebTransportSendStreamOptions Dictionary"}, {"refs": [{"id": "ref-for-implementation-defined\u2468"}, {"id": "ref-for-implementation-defined\u2460\u24ea"}, {"id": "ref-for-implementation-defined\u2460\u2460"}], "title": "6.4. Procedures"}, {"refs": [{"id": "ref-for-implementation-defined\u2460\u2461"}], "title": "8.3. Procedures"}], "external": true};
window.dfnpanelData['16b1470a'] = {"dfnID": "16b1470a", "url": "https://infra.spec.whatwg.org/#isomorphic-encode", "dfnText": "isomorphic encode", "refSections": [{"refs": [{"id": "ref-for-isomorphic-encode"}], "title": "3.1. WebTransport session"}], "external": true};
window.dfnpanelData['36333997'] = {"dfnID": "36333997", "url": "https://infra.spec.whatwg.org/#byte-sequence-length", "dfnText": "length", "refSections": [{"refs": [{"id": "ref-for-byte-sequence-length"}], "title": "5.4. Methods"}], "external": true};
window.dfnpanelData['692595fe'] = {"dfnID": "692595fe", "url": "https://infra.spec.whatwg.org/#ordered-set", "dfnText": "ordered set", "refSections": [{"refs": [{"id": "ref-for-ordered-set"}, {"id": "ref-for-ordered-set\u2460"}], "title": "5.1. Internal slots"}, {"refs": [{"id": "ref-for-ordered-set\u2461"}, {"id": "ref-for-ordered-set\u2462"}], "title": "5.2. Constructor"}, {"refs": [{"id": "ref-for-ordered-set\u2463"}, {"id": "ref-for-ordered-set\u2464"}], "title": "5.5. Procedures"}, {"refs": [{"id": "ref-for-ordered-set\u2465"}], "title": "6.3. Internal Slots"}, {"refs": [{"id": "ref-for-ordered-set\u2466"}], "title": "6.4. Procedures"}], "external": true};
Expand Down Expand Up @@ -5309,7 +5312,7 @@ <h2 class="no-num no-ref heading settled" id="issues-index"><span class="content
window.dfnpanelData['dom-webtransportsendstream-pendingoperation-slot'] = {"dfnID": "dom-webtransportsendstream-pendingoperation-slot", "url": "#dom-webtransportsendstream-pendingoperation-slot", "dfnText": "[[PendingOperation]]", "refSections": [{"refs": [{"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2460"}], "title": "5.5. Procedures"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2461"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2462"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2463"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2464"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2465"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2466"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2467"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2468"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2460\u24ea"}], "title": "6.4. Procedures"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2460\u2460"}, {"id": "ref-for-dom-webtransportsendstream-pendingoperation-slot\u2460\u2461"}], "title": "6.5. STOP_SENDING signal coming from the server"}], "external": false};
window.dfnpanelData['dom-webtransportsendstream-transport-slot'] = {"dfnID": "dom-webtransportsendstream-transport-slot", "url": "#dom-webtransportsendstream-transport-slot", "dfnText": "[[Transport]]", "refSections": [{"refs": [{"id": "ref-for-dom-webtransportsendstream-transport-slot"}], "title": "6.1. Attributes"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-transport-slot\u2460"}, {"id": "ref-for-dom-webtransportsendstream-transport-slot\u2461"}, {"id": "ref-for-dom-webtransportsendstream-transport-slot\u2462"}, {"id": "ref-for-dom-webtransportsendstream-transport-slot\u2463"}], "title": "6.4. Procedures"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-transport-slot\u2464"}], "title": "6.5. STOP_SENDING signal coming from the server"}], "external": false};
window.dfnpanelData['dom-webtransportsendstream-sendgroup-slot'] = {"dfnID": "dom-webtransportsendstream-sendgroup-slot", "url": "#dom-webtransportsendstream-sendgroup-slot", "dfnText": "[[SendGroup]]", "refSections": [{"refs": [{"id": "ref-for-dom-webtransportsendstream-sendgroup-slot"}, {"id": "ref-for-dom-webtransportsendstream-sendgroup-slot\u2460"}], "title": "6.1. Attributes"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-sendgroup-slot\u2461"}, {"id": "ref-for-dom-webtransportsendstream-sendgroup-slot\u2462"}], "title": "6.4. Procedures"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-sendgroup-slot\u2463"}], "title": "7.1. Methods"}], "external": false};
window.dfnpanelData['dom-webtransportsendstream-sendorder-slot'] = {"dfnID": "dom-webtransportsendstream-sendorder-slot", "url": "#dom-webtransportsendstream-sendorder-slot", "dfnText": "[[SendOrder]]", "refSections": [{"refs": [{"id": "ref-for-dom-webtransportsendstream-sendorder-slot"}, {"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2460"}], "title": "6.1. Attributes"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2461"}, {"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2462"}, {"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2463"}], "title": "6.4. Procedures"}], "external": false};
window.dfnpanelData['dom-webtransportsendstream-sendorder-slot'] = {"dfnID": "dom-webtransportsendstream-sendorder-slot", "url": "#dom-webtransportsendstream-sendorder-slot", "dfnText": "[[SendOrder]]", "refSections": [{"refs": [{"id": "ref-for-dom-webtransportsendstream-sendorder-slot"}, {"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2460"}], "title": "6.1. Attributes"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2461"}, {"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2462"}, {"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2463"}, {"id": "ref-for-dom-webtransportsendstream-sendorder-slot\u2464"}], "title": "6.4. Procedures"}], "external": false};
window.dfnpanelData['dom-webtransportsendstream-atomicwriterequests-slot'] = {"dfnID": "dom-webtransportsendstream-atomicwriterequests-slot", "url": "#dom-webtransportsendstream-atomicwriterequests-slot", "dfnText": "[[AtomicWriteRequests]]", "refSections": [{"refs": [{"id": "ref-for-dom-webtransportsendstream-atomicwriterequests-slot"}, {"id": "ref-for-dom-webtransportsendstream-atomicwriterequests-slot\u2460"}, {"id": "ref-for-dom-webtransportsendstream-atomicwriterequests-slot\u2461"}, {"id": "ref-for-dom-webtransportsendstream-atomicwriterequests-slot\u2462"}, {"id": "ref-for-dom-webtransportsendstream-atomicwriterequests-slot\u2463"}], "title": "6.4. Procedures"}, {"refs": [{"id": "ref-for-dom-webtransportsendstream-atomicwriterequests-slot\u2464"}, {"id": "ref-for-dom-webtransportsendstream-atomicwriterequests-slot\u2465"}], "title": "10.1. Methods"}], "external": false};
window.dfnpanelData['webtransportsendstream-create'] = {"dfnID": "webtransportsendstream-create", "url": "#webtransportsendstream-create", "dfnText": "create", "refSections": [{"refs": [{"id": "ref-for-webtransportsendstream-create"}], "title": "5.4. Methods"}, {"refs": [{"id": "ref-for-webtransportsendstream-create\u2460"}], "title": "6. Interface WebTransportSendStream"}, {"refs": [{"id": "ref-for-webtransportsendstream-create\u2461"}], "title": "9.3. Procedures"}], "external": false};
window.dfnpanelData['webtransportsendstream-write'] = {"dfnID": "webtransportsendstream-write", "url": "#webtransportsendstream-write", "dfnText": "write", "refSections": [{"refs": [{"id": "ref-for-webtransportsendstream-write"}], "title": "6.4. Procedures"}], "external": false};
Expand Down

0 comments on commit bc25be7

Please sign in to comment.