Skip to main content

3. Terminology (术语)

本文档中的关键词"必须 (MUST)"、"禁止 (MUST NOT)"、"必需 (REQUIRED)"、"应 (SHALL)"、"不应 (SHALL NOT)"、"应该 (SHOULD)"、"不应该 (SHOULD NOT)"、"推荐 (RECOMMENDED)"、"可以 (MAY)"和"可选 (OPTIONAL)"应按照 RFC 2119 [RFC2119] 中的描述进行解释。

读者应熟悉 [RFC5389] 及其中定义的术语。

本文档中使用以下术语:

TURN: TURN 客户端和 TURN 服务器之间使用的协议。它是 STUN 协议 [RFC5389] 的扩展。该协议允许客户端分配和使用中继传输地址。

TURN 客户端 (TURN Client): 实现本规范的 STUN 客户端。

TURN 服务器 (TURN Server): 实现本规范的 STUN 服务器。它在 TURN 客户端及其对等方之间中继数据。

对等方 (Peer): TURN 客户端希望与之通信的主机。TURN 服务器在 TURN 客户端及其对等方之间中继流量。对等方不使用本文档中定义的协议与 TURN 服务器交互,相反,对等方接收 TURN 服务器发送的数据,对等方向 TURN 服务器发送数据。

传输地址 (Transport Address): IP 地址和端口的组合。

主机传输地址 (Host Transport Address): 客户端或对等方上的传输地址。

服务器反射传输地址 (Server-Reflexive Transport Address): NAT 的"公共侧"上的传输地址。此地址由 NAT 分配,以对应于特定的主机传输地址。

中继传输地址 (Relayed Transport Address): TURN 服务器上的传输地址,用于在客户端和对等方之间中继数据包。对等方向 TURN 服务器上的此地址发送数据,然后数据包被中继到客户端。

TURN 服务器传输地址 (TURN Server Transport Address): TURN 服务器上的传输地址,用于向服务器发送 TURN 消息。这是客户端用于与服务器通信的传输地址。

对等方传输地址 (Peer Transport Address): 服务器看到的对等方的传输地址。当对等方位于 NAT 后面时,这是对等方的服务器反射传输地址。

分配 (Allocation): 通过 Allocate 请求授予客户端的中继传输地址,以及相关状态,例如权限和过期定时器。

5 元组 (5-tuple): 用于在客户端和服务器之间通信的组合(客户端 IP 地址和端口、服务器 IP 地址和端口,以及传输协议(当前为 UDP、TCP 或 TLS 之一))。5 元组唯一标识此通信流。5 元组也唯一标识服务器上的分配。

通道 (Channel): 通道号和关联的对等方传输地址。一旦通道号绑定到对等方的传输地址,客户端和服务器就可以使用带宽效率更高的 ChannelData 消息来交换数据。

权限 (Permission): 允许向 TURN 服务器发送流量并将该流量中继到 TURN 客户端的对等方的 IP 地址和传输协议(但不包括端口)。TURN 服务器只会将来自与现有权限匹配的对等方的流量转发到其客户端。

领域 (Realm): 用于描述服务器或服务器内的上下文的字符串。领域告诉客户端应使用哪个用户名和密码组合来验证请求。

随机数 (Nonce): 服务器随机选择并包含在消息摘要中的字符串。为了防止重放攻击 (Reply Attacks),服务器应该 (SHOULD) 定期更改随机数。