Comments (5)
Acknowledgements are used for multiple purposes, including congestion control as well as loss recovery (e.g. concealment, retransmission, determination of FEC parameters, etc.). However, I don't believe that any of these uses requires surfacing ACK information to the application:
-
As Victor noted, application-layer acknowledgement is required anyway, so even if QUIC has ACK'd, the application may still need to do loss recovery.
-
If bandwidth estimation and congestion control is handled in QUIC rather than in the application, the application doesn't require QUIC ACK info to be surfaced to it for those purposes.
from webtransport.
Related to this issue - What about exposing when a datagram is considered to be lost?
The API could indicate that the packet was never lost, but then it gets dropped on the remote endpoint. I can see how this is useful for retransmitting datagrams, but would a developer have to write an application-level "lost" datagram anyways because of this issue?
from webtransport.
As discussed we will remove exposing lost in the returned promise as well. Can add this as a stat.
from webtransport.
It could be quite useful to have this information if the application is involved in congestion control for datagrams, as discussed in #21.
And real-time applications might find it useful to have a finer-grained understanding of network state, even if congestion control remains in the transport. Application-layer rate control (such as adjusting encoder bitrates) might want to be more sensitive to latency than the underlying congestion controller.
from webtransport.
Since this appears to be gone and also only useful for congestion control, let's close this issue and move discussion to #21
from webtransport.
Related Issues (20)
- estimatedSendRate absent vs null HOT 1
- getStats() being rejected
- Quality of a bandwidth estimate HOT 16
- Allow more aggressive garbage collection HOT 5
- Should the constructor take http3Only or something more transport agnostic? HOT 10
- WebTransportSendStream's abortSignal algorithm doesn't make sense
- No write requests are being rejected on in-flight error HOT 2
- Should all fields in WebTransportConnectionStats be nullable? HOT 2
- Send algos contains normative MAY and SHOULD in non-normative notes
- Clarify what sending "completed" means e.g. wrt. flow control HOT 2
- How should the WebTransport constructor handles timeouts? HOT 5
- serverCertificateHashes really only allow if not pooled? HOT 10
- Remove dependency on "Data Recvd" state HOT 3
- What are "first-strong heuristics"? HOT 2
- WPT tests are needed for serverCertificateHash feature HOT 2
- Working with servers behind a NAT or on a local network (aka "p2p") HOT 2
- Relative URL in WebTransport constructor HOT 1
- Listening to event by event name HOT 6
- Keep connection on tab switch HOT 10
- wt.ready and wt.closed trigger unhandled rejections
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webtransport.