quinn
quinn copied to clipboard
Async-friendly QUIC implementation in Rust
`MAX_DATA`, `MAX_STREAM_DATA`, `MAX_STREAMS`, and `ACK` frames are all sent automatically by endpoints receiving application data, and usually do not need to be sent at the first opportunity. We currently reduce...
As it stands today, a quinn client will consider itself established/connected prior to receving the HandshakeDone frame. If a connection fails because the server rejects the client (such as a...
I was trying to upgrade to quinn 0.11.2 and I have some tests where I implement AsyncUdpSocket with turmoil and my tests panic with ACKs are delivered in order (line...
``` Compiling quinn-udp v0.5.1 (/home/psumbera/quinn/quinn-udp) error[E0425]: cannot find value `IPV6_DONTFRAG` in crate `libc` --> quinn-udp/src/unix.rs:27:42 | 27 | const IPV6_DONTFRAG: libc::c_int = libc::IPV6_DONTFRAG; | ^^^^^^^^^^^^^ not found in `libc` error[E0412]:...
See the red `E`s in the quinn row and column on https://interop.seemann.io/
Pacing is applied in `Connection::poll_transmit`, before assembling a new packet: https://github.com/quinn-rs/quinn/blob/af30cbdc4bc77e8582dae6887d2c099795135282/quinn-proto/src/connection/mod.rs#L645-L659 Here `bytes_to_send` accounts for at most two packets: any previous packet in the current GSO batch, and the potential...
I am wondering if it mighty worth it to have a future to await the draining of the connection (if such possibility does not exist yet). The scenario is the...
For example, when trying to print a `quinn::Endpoint`, when it gets to `recv_buf`, it just prints a list of many many integers with little discernible meaning. Possibly would be worth...
Currently, `quinn` (and `quinn-udp`) is only tested on Linux, Windows and MacOS: https://github.com/quinn-rs/quinn/blob/main/.github/workflows/rust.yml#L36 There have been a number of PRs that fix things on other platforms: - https://github.com/quinn-rs/quinn/pull/1516 - https://github.com/quinn-rs/quinn/pull/1504...