New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
QUIC and HTTP/3 #1544
Comments
HTTP/3 on top of https://github.com/emqx/quic for the first implementation. I am slowly working on it. WebTransport is not likely to be ready / widely available for years. It's on my radar, but no plans for it yet. |
@essen any update on WebTransport? Chrome 97 onwards supports WebTransport (https://chromestatus.com/feature/4854144902889472). |
WebTransport depends on HTTP/3. I have started HTTP/3 work but I have been busy with RabbitMQ work so it didn't get to a testable point yet. Also there's probably something that'll need to be done about QUIC to make it a more permanent thing than a NIF at some point... I will see if I can increase the time I spend on HTTP/3 to speed things up. |
Hi @essen have you ever consider bootstrapping WebSockets over HTTP/2 and HTTP/3? |
Websocket over HTTP/2 is already supported. Websocket over HTTP/3 will be supported soon after I'm done with HTTP/3. It's not super difficult to implement. |
Oh awesome, I didn't know WA over HTTP/2 was done !!! |
The |
The WebSocket over HTTP/3 is also implemented in the Cowboy I am taking a break to produce a new Cowboy release but my intent after that is to integrate into RabbitMQ. WebTransport is still likely a few years away. In any case it's best to focus on HTTP/3 for now. |
Nooo! |
FWIW I made a WebTransport server in Rust / Elixir, if it can be useful to somebody |
For what it's worth it shouldn't be too difficult to do WebTransport after HTTP/3 so depending on time constraints I might give it a go. However the last call for the draft isn't until July 2024 so there's time. The work needed to implement it doesn't seem big but it would have to be a new handler interface (due to having to handle both unidi and bidi streams) so it's not trivial either. I am about to release Cowboy 2.11 and after that my focus will be on merging HTTP/3. |
Would Cowboy be supporting HTTP/3 or QUIC?
Would there be an API to send/receive a raw multiplexed stream, or would WebTransport (modern Websocket) be supported?
Would the implementation be pure Erlang or using one of the below libs?
Interested to know more as looking for a reverse proxy that would support QUIC-stream (public) to Websocket (internal).
The text was updated successfully, but these errors were encountered: