Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Inquiry regarding Shadowrocket and Xray xhttp connection via H3

LynLyn Member

Hello everyone, I am currently accessing my server via cloudflared with a tunnel installed on the server. I also have Xray running on the server using the xhttp protocol.

My questions are:

Connecting via H2 works normally. However, using H3 is extremely slow and seems struggling to establish a connection; once connected, it functions normally (e.g., watching TikTok live streams—entering a stream is difficult, but playback is smooth once inside).

Shadowrocket requires setting packet-up under xhttp to function properly.

I would like to ask:

Does H3 offer noticeable performance improvements in this setup?

Does Cloudflare Tunnel not support H3? (Using v2rayN on Windows with H3 seems to work, but I am uncertain whether the server actually receives H3 traffic.)

Comments

  • yoursunnyyoursunny Member, IPv6 Advocate

    @Lyn said:
    I am uncertain whether the server actually receives H3 traffic

    tcpdump and Wireshark can give you a definitive answer.

  • itzsenuitzsenu Member
    edited August 12

    cloudflare docs - https://developers.cloudflare.com/speed/optimization/protocol/http3/
    "HTTP/3 connection to the origin is not yet supported."

    cloudflare tunnel doesnt actually pass your http/3 traffic all the way to your server. if you turn on http/3 in speed settings clients talk to cloudflare's edge over h3 but after that cloudflare switches things up it connects to your origin with either http/2 or its own version of quic on port 7844. so your original http/3 traffic doesn't just flow through untouched. the docs are direct about this no support for http/3 all the way to origin yet.

    thats why h3 seems slow at first. the initial quic handshake only goes as far as cloudflare's edge then cloudflare forwards stuff to your xray server using http/2. any delay youre noticing mostly happens during that handshake stage after its set up the rest of the traffic streams through the tunnel fine. shadowrocket needs the packet up setting under xhttp for this exact reason the usual quic packet structure just doesnt make it through that backend hop in one piece

    either ditch the tunnel and expose origin directly for real quic passthrough or just run h2 way simpler

    Thanked by 1eveliakal
  • LynLyn Member

    @itzsenu said:
    cloudflare docs - https://developers.cloudflare.com/speed/optimization/protocol/http3/
    "HTTP/3 connection to the origin is not yet supported."

    cloudflare tunnel doesnt actually pass your http/3 traffic all the way to your server. if you turn on http/3 in speed settings clients talk to cloudflare's edge over h3 but after that cloudflare switches things up it connects to your origin with either http/2 or its own version of quic on port 7844. so your original http/3 traffic doesn't just flow through untouched. the docs are direct about this no support for http/3 all the way to origin yet.

    thats why h3 seems slow at first. the initial quic handshake only goes as far as cloudflare's edge then cloudflare forwards stuff to your xray server using http/2. any delay youre noticing mostly happens during that handshake stage after its set up the rest of the traffic streams through the tunnel fine. shadowrocket needs the packet up setting under xhttp for this exact reason the usual quic packet structure just doesnt make it through that backend hop in one piece

    either ditch the tunnel and expose origin directly for real quic passthrough or just run h2 way simpler

    Thanks all

Sign In or Register to comment.