2. 一致性要求
本规范中的所有图示, 示例和注记均为非规范性内容, 除非某项内容被明确标记为规范性, 否则其他内容也均为非规范性.
2.1 术语和其他约定
本文档中的关键词 "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" 和 "OPTIONAL" 应按照 RFC 2119 中的描述解释.
RFC 2119 关键词
| 关键词 | 含义 |
|---|---|
| MUST | 绝对要求 |
| MUST NOT | 绝对禁止 |
| REQUIRED | 绝对要求 |
| SHALL | 强制要求 |
| SHALL NOT | 强制禁止 |
| SHOULD | 强烈建议 |
| SHOULD NOT | 强烈不建议 |
| RECOMMENDED | 推荐做法 |
| MAY | 允许/可选 |
| OPTIONAL | 完全可选 |
关键术语定义
WebSocket Connection (WebSocket 连接) 在客户端与服务器之间建立的概念性通道, 用于传输 WebSocket 消息.
WebSocket Endpoint (WebSocket 端点) WebSocket 连接的任一端 (客户端或服务器).
WebSocket Client (WebSocket 客户端) 发起 WebSocket 连接的应用.
WebSocket Server (WebSocket 服务器) 接受 WebSocket 连接的应用.
Message (消息) 由一个或多个 frame 组成的应用层数据单元.
Frame (帧) WebSocket 连接中的最小通信单元.
Control Frame (控制帧) 用于通信状态的 frame, 例如 Close, Ping, Pong.
Data Frame (数据帧) 包含应用数据或扩展数据的 frame.
协议要求概览
符合本规范的实现:
- MUST 实现完整的握手机制
- MUST 正确处理所有已定义的 frame 类型
- 在客户端实现中, MUST mask 发送到服务器的所有 frame
- 在服务器实现中, MUST NOT mask 发送到客户端的 frame
- 接收到不符合规范的 frame 时, MUST 关闭连接
- SHOULD 支持 TLS (wss://)
参考链接
- 上一章: 1. 引言
- 下一章: 3. WebSocket URI