跳到主要内容

19. STUN 扩展 (STUN Extensions)

19.1. 新属性

本规范定义四个新属性: PRIORITY, USE-CANDIDATE, ICE-CONTROLLED 和 ICE-CONTROLLING.

PRIORITY 属性指示一个 peer reflexive candidate 应关联的 priority, 如果该 check 发现了这样的 candidate. 它是 32-bit unsigned integer, 属性值为 0x0024.

USE-CANDIDATE 属性指示由该 check 产生的 candidate pair 应用于媒体传输. 该属性没有内容 (属性的 Length 字段为零); 它用作 flag. 其属性值为 0x0025.

ICE-CONTROLLED 属性出现在 Binding request 中, 指示客户端认为自己当前处于 controlled role. 该属性的内容是网络字节序的 64-bit unsigned integer, 其中包含一个用于解决 role conflicts 的 tie-breaking 随机数.

ICE-CONTROLLING 属性出现在 Binding request 中, 指示客户端认为自己当前处于 controlling role. 该属性的内容是网络字节序的 64-bit unsigned integer, 其中包含一个用于解决 role conflicts 的 tie-breaking 随机数.

19.2. 新错误响应码

本规范定义单个错误响应码:

487 (Role Conflict): Binding request 包含 ICE-CONTROLLING 或 ICE-CONTROLLED 属性, 指示的 role 与 server 冲突. server 根据请求中的 tie-breaker 值运行 tie-breaker, 并确定 client 需要切换 roles.