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

tus over QUIC #857

Closed
miraculli opened this issue Nov 26, 2022 · 3 comments
Closed

tus over QUIC #857

miraculli opened this issue Nov 26, 2022 · 3 comments
Labels

Comments

@miraculli
Copy link

miraculli commented Nov 26, 2022

Question

Are there any guides or knowledge regarding support of the new QUIC / HTTP/3-Protocol-Stack?
From what I know about QUIC this should improve transferspeed ?
Is there a way to make use of QUIC with some kind of QUIC-Proxy to tunnel tus/tcp ?

Thanks for your help
--mirac

Setup details
Please provide following details, if applicable to your situation:

  • Operating System: OpenBSD
  • Used tusd version: n/a
  • Used tusd data storage: disk store
  • Used tusd configuration: TLS-cert and key-file
  • Used tus client library: Uppy.js
@miraculli
Copy link
Author

miraculli commented Nov 26, 2022

I just tested Caddy as reverse-proxy in front of tusd. Works great without any tweaking.

Looks like Google Chrome connects over UDP (according to tcpdump output on the server) and Safari doesn't due to lack of QUIC support.
So I tested upload-speed with Safari and Chrome but it was almost the same speed.
Maybe my Wifi or anything below Layer 4 is the bottleneck here...

Ideas ?

@Acconut
Copy link
Member

Acconut commented Dec 19, 2022

tusd does not support QUIC connections natively because the net/http package from Go only supports up to HTTP/2. So running QUIC traffic through a proxy is necessary for now. However, I cannot help you much with missing speed improvements, as I have no practical experience with QUIC.

@miraculli
Copy link
Author

I see some benefits with QUIC/HTTP3 with high latency-connections.
We used Caddy for testing and it works fine.

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

No branches or pull requests

2 participants