The protocol screen has two columns: protocol and transport. You can change either independently. Different combinations behave differently on different networks — if one is blocked or slow, try another.
How to switch
- Open the app
- Go to Settings → Protocol
- In the left column, pick a protocol
- In the right column, pick a transport
- Reconnect (the new combination applies to the next connection)
If the chosen combination isn't available on the selected server, the app silently uses the server's default and shows a banner letting you know.
Protocols
- VLESS — light, modern, with Reality obfuscation. The default for most servers and a good first choice in restrictive networks.
- Trojan — TLS-disguised, reliable on networks that allow normal HTTPS.
- Hysteria2 — UDP-based, often faster on lossy networks. Some networks block UDP — if it doesn't connect, switch back.
Transports (for VLESS and Trojan)
- TCP — the simplest, lowest overhead
- gRPC — wraps the connection in HTTP/2; tends to survive in networks where plain TCP is filtered
- xHTTP — newer transport disguised as regular HTTP traffic; not available on iOS
Hysteria2 has its own transport (QUIC over UDP) and doesn't use the transport column.
Which combination to pick
- Restrictive networks — VLESS + gRPC, or VLESS + xHTTP (Android, Windows, macOS)
- Mobile data with weak signal — Hysteria2 (UDP handles loss better)
- Don't know — leave the default; it's tuned per server
What if a transport is blocked
If you're sure a specific transport works on your network but another doesn't (e.g., gRPC connects, TCP doesn't) — that's usually a sign of DPI filtering. Stick with the working combination, or contact support for a server tuned for your region.