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

http2 and http3 support #91

Open
JJ-Author opened this issue Oct 5, 2024 · 0 comments
Open

http2 and http3 support #91

JJ-Author opened this issue Oct 5, 2024 · 0 comments
Labels
enhancement New feature or request
Milestone

Comments

@JJ-Author
Copy link
Contributor

JJ-Author commented Oct 5, 2024

at the moment proxypy seems to not support http2 to upstream (but from the client)
since we are doing most requests Independently with a request library we could use the httpx client to manage to keep a connection pool to hosts open for a while and thus reuse the connections for speedup. the motivation is to get all http2 apps running faster e.g. https://www.httpvshttps.com/.
following has to be considered first.

  • http2 speedup already works for https requests (default for http2) that are not intercepted since the connect creates a tunnel transparent to proxypy itself
  • using httpx client pools would improves upstream connection of intercepted https requests. the client connection will not have any improvement for intercepted requests because we can not control alpn protocol negotiation at the moment to tell the client to use http2 if they support it. since proxypy itself is doing http1 to upstream for that intercepted requests i assume it well never use alpn to negotiate to http2.

at the moment proxypy allows only http2 to the clients so http3 so it might be that speed benefits (quic/udp) wont be achievable in the near future for client connections because connect for http1/2/3 defines by default a tcp tunnel (in http3 other modes can specified via connect-udp and connect-ip as value of protocol pseudo header.

@JJ-Author JJ-Author added the enhancement New feature or request label Oct 5, 2024
@JJ-Author JJ-Author added this to the Future work milestone Oct 5, 2024
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

1 participant