Skip to content
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

HTTP3/QUIC support #1390

Open
TheLastGimbus opened this issue Mar 2, 2021 · 10 comments
Open

HTTP3/QUIC support #1390

TheLastGimbus opened this issue Mar 2, 2021 · 10 comments
Labels
enhancement New feature or request

Comments

@TheLastGimbus
Copy link

I just recently switched from Nginx to Caddy for reverse proxy, and OH MY GOD IT'S SO GOOD

Caddy makes it super easy to add experimental HTTP3 protocol, which uses quic, which makes it much faster 🚀

Is there any chance to add http3 support for Home Assistant app?

@TheLastGimbus TheLastGimbus added the enhancement New feature or request label Mar 2, 2021
@dshokouhi
Copy link
Member

not sure on the specifics but wouldnt HA core and the frontend need to support this first?

@TheLastGimbus
Copy link
Author

TheLastGimbus commented Mar 3, 2021

I'm not sure, honestly...

As far as I understand, if you run behind a reverse-proxy, you can customise any HTTP stuff directly from that proxy - add TLS, add headers, etc

And since connection between proxy and hass is internal (0ms), it doesn't matter that hass itself doesn't have http3

(But I may be wrong...)

There aren't any issues about this in core/frontend repo 🤔 maybe I will create one for reference

@TheLastGimbus
Copy link
Author

Yes, after a lot of messing, I succesfully got some HTTP/3 connections, on login page for many parts:

image
image

For dashboard tho, it seems to catch up less often, altough it works:

image

Just thanks to Caddy, no hass core support required 💯

@TheLastGimbus
Copy link
Author

Update: it doesn't seem to fully work 😅 I don't know if it's fault of Caddy, or Firefox, or my router or what, but lovelace can't load when http3 is enabled in Caddy - disabling it makes it work again

That just gets me on the ground that quic isn't ready yet :( But maybe official support in app would make it better 👍

@TheLastGimbus
Copy link
Author

Okhttp doesn't have the support yet either: square/okhttp#907

@stale
Copy link

stale bot commented Jan 9, 2022

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.
Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍
This issue now has been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Jan 9, 2022
@TheLastGimbus
Copy link
Author

Nope, I still want it

@stale stale bot removed the stale label Jan 10, 2022
@stonith
Copy link

stonith commented Aug 22, 2023

Update: it doesn't seem to fully work 😅 I don't know if it's fault of Caddy, or Firefox, or my router or what, but lovelace can't load when http3 is enabled in Caddy - disabling it makes it work again

Curious what doesn't work properly with http3 enabled on your reverse proxy?

@TheLastGimbus
Copy link
Author

I recently re-installed my Rpi from ubuntu to hass os, set up this caddy plugin: https://github.com/einschmidt/addon-caddy-2

And currently, nothing works:

image

Idk if hass os is blocking udp or something, but right now even http2 doesnt work :D

@stonith
Copy link

stonith commented Aug 27, 2023

I recently setup envoy in front of HA and the iOS app uses http2 mostly and sometimes http3. Safari on osx and iOS don't seem to use http3 consistently though, chrome will use http3 much more consistently. I haven't tried Android but I'd assume it's more consistent with http3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants