TCP、UDP、QUIC 有什么区别?代理用户需要知道什么

TCP UDP QUIC 区别与代理关系封面
TCP UDP QUIC 区别与代理关系封面

**TCP、UDP、QUIC 都是”传输层协议”,它们决定数据在网络上以什么方式搬运,本身并不是 Shadowsocks、Trojan 这类代理协议。**代理协议只是”住在”传输层之上,选择让自己的流量跑在 TCP 还是 UDP/QUIC 上。

快速结论:TCP 可靠、有序、要握手,适合网页和大多数代理协议;UDP 无连接、更快但不保证送达;QUIC 建立在 UDP 之上、内置 TLS 1.3 加密与多路复用,是 HTTP/3 的基础,也是 Hysteria2、TUIC 这类弱网协议的底座。

先分清”传输层”和”代理协议”

很多人把 TCP、UDP 和 Shadowsocks、Trojan 放在一起比较,这是把层次搞错了。网络是分层的:传输层负责”把一包数据从 A 送到 B”,代理协议则规定”这包数据如何加密和伪装”。代理协议必须借助传输层才能把数据发出去——就像快递内容(代理协议)要装进某种运输方式(TCP/UDP)里才能上路。所以正确的说法是”某协议跑在 TCP 上”或”某协议基于 QUIC”,而不是”TCP 和 Trojan 谁更好”。想先补齐代理协议的基础概念,可以读什么是代理协议

TCP:可靠但有代价

TCP 是互联网最主流的传输方式。它在通信前要”三次握手”建立连接,传输中每个数据包都要确认收到,丢了就重传,并保证接收方按发送顺序拼装。这套机制让 TCP 极其可靠,网页、下载、绝大多数代理协议都用它。代价是延迟:握手要一个来回,重传和”按序等待”在丢包时会让速度明显下滑——前面一个包没到,后面的包就算收到也得排队干等,这叫”队头阻塞”。

UDP:快,但什么都不保证

UDP 走另一个极端:不握手、不确认、不重传、不排序,把数据包发出去就不管了。它因此非常轻快、延迟低,适合实时语音、视频、游戏这种”丢一两帧无所谓、但不能卡”的场景。缺点是可靠性得由上层自己想办法。也正因为”自由”,UDP 常被网络管理者盯上——很多环境会对 UDP 限速或阻断。

QUIC:建立在 UDP 之上的现代方案

QUIC 是把两者优点合并的新一代传输协议。它跑在 UDP 之上,却在应用层自己实现了 TCP 那套可靠传输和拥塞控制,同时做了三件关键升级:内置 TLS 1.3 加密(连接即加密,没有明文阶段)、多路复用(多个数据流互不阻塞,绕开队头阻塞)、以及快速握手与 0-RTT 重连(几乎无需等待)。QUIC 是 HTTP/3 的底层,也是 Hysteria2、TUIC 这些弱网加速协议的基础。记住一句话:说协议”走 QUIC”,底层其实就是走 UDP。

三者对比

维度TCPUDPQUIC
底层独立传输层独立传输层建立在 UDP 之上
连接与握手三次握手无连接内置 TLS 1.3,握手极快
可靠性保证送达、有序不保证自己实现可靠传输
加密需上层另加需上层另加内置 TLS 1.3
队头阻塞无(也不排序)多路复用,基本消除
弱网表现丢包时明显变慢取决于上层优秀

代理协议如何选传输

理解了传输层,就能看懂机场协议的分工:

  • 走 TCP:Shadowsocks、VMess、Trojan,以及配 TLS 的 VLESS,主流”伪装成 HTTPS”的协议大多跑在 TCP 上,兼容性最好、最不容易被针对;
  • 走 UDP/QUICHysteria2TUIC 基于 QUIC,靠自带的拥塞控制在丢包严重的移动网络、跨境高峰期跑出明显优势。两者的差异见 Hysteria2 与 TUIC 对比

握手延迟为什么值得在意

日常上网会不断打开大量短连接:一个网页可能同时请求几十个资源,每建一条新连接,TCP 都要先三次握手,若再叠加一层 TLS 握手,就是好几个来回的等待。距离越远、延迟越高,这些握手累积起来越明显,表现为”点开慢半拍”。QUIC 把传输与 TLS 1.3 握手合并,首次连接只需一个来回,重连时凭借 0-RTT 甚至能边握手边发数据,这在跨境高延迟链路上体感差别不小,也是浏览器和大网站积极转向 HTTP/3(即 QUIC)的原因之一。

常见误解:UDP 就一定比 TCP 快吗

不一定。在网络干净、几乎不丢包时,TCP 与 QUIC 的实际速度往往相差无几,因为决定快慢的是线路带宽和物理延迟,而不是传输协议本身。QUIC 的优势集中在两种场景:一是丢包严重的弱网,二是需要频繁新建连接的场景。网络本身理想时盲目追求”UDP 协议”,并不会让你的下载变快。

为什么这会影响你的体验

传输层的选择直接造成两种常见现象。其一,在丢包 5%~10% 的弱网里,TCP 系协议可能速度腰斩,而 QUIC 系往往还能跑出七八成,这正是 Hysteria2 被称作”弱网之王”的原因。其二,反过来,一旦你所在的网络对 UDP 下手——限速甚至封锁,基于 QUIC 的协议就会突然变慢或连不上,此时切回 TCP 系的 Trojan、SS 才是解药。关于 UDP 被针对的真实案例,可参考 Hysteria2 UDP 被封锁的分析

对普通机场用户来说,你不需要手动配置传输层——机场下发订阅时已经绑定好。真正有用的是这条判断:节点变慢先想是不是线路问题,连不上且怀疑是 UDP 被掐,就换一个 TCP 协议的节点重试一次。

下一步:想进一步理解 QUIC 内置的那层加密,读 TLS 是什么;想在两大 QUIC 协议之间做取舍,读 Hysteria2 与 TUIC 对比