PROTOCOL AND KERNEL
Protocols and Cores
Protocols define how clients and servers establish connections and transfer data; the core parses configuration, implements protocols, and dispatches traffic. The graphical client and the core are separate layers.
KERNEL · M
mihomo
A proxy core evolved from Clash Meta, extending protocol, rule, DNS, and TUN support. Many newer clients use it as their backend, even when mihomo is not part of the client name. It reads many traditional Clash configurations, though some extended fields still depend on the core version.
KERNEL · C
Clash Core
The core program from the original Clash project. It reads configuration, establishes proxy connections, and applies rules. It is not the same thing as the graphical client seen on Windows, Android, or macOS. Since the original project stopped receiving updates, newer protocol support is generally concentrated in later cores such as mihomo.
PROTOCOL · SS
Shadowsocks(SS)
A relatively lightweight encrypted proxy protocol that typically has low connection and computational overhead. Configuration requires a server address, port, password, and cipher; any mismatch can prevent connection. Actual speed mainly depends on the server route, congestion, and encryption implementation.
PROTOCOL · VMESS
VMess
A proxy protocol used in the V2Ray ecosystem that supports user identifiers and transports such as TCP and WebSocket. When importing a configuration, verify the address, port, UUID, transport layer, and TLS settings. Matching protocol names do not guarantee compatible parameters.
PROTOCOL · TROJAN
Trojan
A proxy protocol that establishes connections over TLS, with authentication commonly configured as a password. The server name, certificate verification, and transport method are all part of the connection and cannot be checked by address and port alone. Clock skew can also affect TLS certificate validation.
PROTOCOL · VLESS
VLESS
A proxy protocol focused on a streamlined authentication layer, often combined with TLS, Reality, or different transports. The client must support the specific combination used by the subscription, not merely recognize the name VLESS. UUID, flow control, server name, and public-key fields should match the server settings.
PROTOCOL · HY2
Hysteria2
A QUIC-based proxy protocol designed for efficient transport on high-latency or lossy links. Configuration commonly includes authentication, a TLS server name, and bandwidth parameters. Mobile networks may provide more consistent recovery, but results still depend on link quality and congestion-control settings.
PROTOCOL · TUIC
TUIC
A QUIC-based proxy protocol supporting multiplexing and connection migration. It relies on UDP, so networks that restrict UDP may cause connection timeouts. Client and server versions and authentication parameters must be mutually compatible.