WebSocket 运行在 TCP 之上 | AI生成和翻译

Home 2026.03

问题: WebSocket 是基于 UDP 的吗?

答案:

不是,WebSocket 并非基于 UDP

WebSocket 是基于 TCP 的,就像 HTTP 一样。

以下是实际的协议栈:

Application → WebSocket (ws:// or wss://)
              ↓
Transport     → TCP
              ↓
Internet      → IP

典型的完整协议栈比较:

Protocol Transport layer Reliable? Ordered? Common use cases
WebSocket TCP Yes Yes Real-time apps, chat, games, trading
HTTP/1.1 TCP Yes Yes Web pages, APIs
HTTP/2, HTTP/3 TCP (h2) / UDP (h3) Yes Yes Faster web, multiplexing
WebRTC data UDP (SCTP over DTLS over UDP) No* No* Video calls, file transfer in browsers
Raw UDP UDP No No DNS, gaming, VoIP, streaming

*WebRTC data channel 通过 SCTP 提供可选的可靠性和有序性,但它仍然运行在 UDP 之上。

快速总结 – 为什么 WebSocket 使用 TCP(而非 UDP)

基于 UDP 的替代方案(当您明确希望更低延迟并能容忍丢失时使用):

底线(2026):

WebSocket = TCP
WebSocket ≠ UDP

参考资料:


Back Donate