Home/Comparisons/VLESS vs Shadowsocks

VLESS vs Shadowsocks

Technical comparison of VLESS and Shadowsocks protocols for building resilient proxy servers.

Side A
VLESS
VS
Side B
Shadowsocks

What is it

ParameterVLESSShadowsocks
Protocol TypeStateless (Xray)Encrypted SOCKS5 proxy
EncryptionExternal (TLS/Reality)Built-in (AEAD ciphers)
ObfuscationNative (Reality/Vision)Requires plugins
PerformanceHigh (Zero-overhead)Medium (cipher dependent)
Setup ComplexityHighLow

VLESS is a lightweight transmission protocol within the Xray core. It lacks native encryption, relying entirely on the transport layer (TLS), which eliminates double encapsulation and reduces CPU load. Shadowsocks is a classic secure proxy using AEAD ciphers to protect packets, though it remains vulnerable to active probing by modern DPI systems.

Performance

VLESS leads in throughput due to the absence of an internal encryption layer. When using XTLS-Reality, latency is minimized as the protocol mimics a standard TLS handshake with a legitimate website. Shadowsocks (specifically the Rust implementation) performs well on SBCs, but using heavy ciphers like aes-256-gcm adds a 15-20% overhead per packet compared to VLESS.

Configuration & complexity

Shadowsocks configuration is limited to selecting a port, password, and encryption method:

ssserver -c /etc/shadowsocks-rust/config.json

VLESS requires UUID generation, SNI configuration, and certificate management for Reality. An Xray config for VLESS typically spans 50-100 lines of JSON, making manual administration difficult without control panels like 3X-UI.

When to choose what

  • VLESS: Bypassing strict censorship (GFW) where masking traffic as standard HTTPS is mandatory.
  • Shadowsocks: Rapid deployment of a personal proxy for IP rotation in environments with low censorship levels.

Cost / licensing

Both technologies are free and open-source. VLESS (via Xray) uses the MPL 2.0 license. Shadowsocks utilizes various licenses (MIT, GPL) depending on the implementation (Rust, libev, Go).

Ecosystem & integrations

Shadowsocks is supported by almost all OpenWrt routers and has clients for every OS. VLESS requires specialized software: v2rayNG (Android), FoXray/V2Box (iOS), or Nekoray (Desktop). Integration of VLESS into corporate gateways is hindered by protocol complexity.

Verdict

VLESS is the current standard for regions with DPI and active proxy blocking. Shadowsocks remains a convenient tool for basic privacy but is losing relevance as a censorship circumvention tool without additional obfuscation plugins.

Honest comparisons

Honest comparisons →

Netdata vs Prometheus

Netdata vs Prometheus: choosing between real-time per-node monitoring and centralized …

Grafana vs Kibana

Technical comparison of Grafana and Kibana: choosing between metric visualization …

Prometheus vs Zabbix

Technical comparison of Prometheus and Zabbix: choosing between dynamic monitoring …