HTTP/2 Connection Coalescing support #578
indiedeveloperGPU
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi, first of all great work on this library — it's by far the most complete Python HTTP client for low-level fingerprint emulation.
One behavior that's currently missing for accurate OkHttp (and general mobile client) emulation is HTTP/2 connection coalescing: when multiple hostnames resolve to the same IP and share a TLS certificate (e.g. wildcard or SAN), a real OkHttp client reuses the existing HTTP/2 connection instead of opening a new TCP/TLS handshake for each host.
This is specified in RFC 7540 §9.1.1 and is actively implemented in OkHttp's ConnectionPool. Without it, even a perfectly emulated SETTINGS frame + JA3/JA4 fingerprint can be detected via connection graph anomalies — multiple TLS handshakes where a real client would have one.
Would it be feasible to expose a coalescing-aware connection pool in wreq/rnet? Even a basic implementation (reuse existing H2 connection if IP matches and cert SAN covers the new host) would close a significant gap for mobile client emulation.
Happy to provide pcap examples showing the exact behavior if useful.
Beta Was this translation helpful? Give feedback.
All reactions