LvG
理工作品论文论文

深入理解 WebSocket 协议

从 TCP 握手到帧协议,全面解析 WebSocket 的工作原理。

WebSocketTCP/IPHTTP
2026/3/176 次浏览

摘要

WebSocket 协议 (RFC 6455) 提供了在单个 TCP 连接上进行全双工通信的能力。本文从协议层面深入分析 WebSocket 的工作原理。

1. 握手过程

WebSocket 连接从一个 HTTP 升级请求开始:

GET /chat HTTP/1.1
Host: server.example.com
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Version: 13

2. 帧协议

每个 WebSocket 帧包含:opcode(操作类型)、mask(掩码)、payload length(负载长度)和 payload data(负载数据)。

3. 心跳机制

Ping/Pong 帧用于保持连接活性和检测断连。