10. IANA 考虑
10.1. DSO OPCODE 注册
IANA 已在 "DNS OpCodes" 注册表中为 DNS Stateful Operations (DSO) 分配值 6.
10.2. DSO RCODE 注册
IANA 已在 "DNS RCODEs" 注册表中为 DSOTYPENI 错误码分配值 11. DSOTYPENI 错误码 ("DSO-TYPE Not Implemented") 表示接收者确实实现了 DNS Stateful Operations, 但未实现 DSO 请求消息中 Primary TLV 的具体 DSO-TYPE.
10.3. DSO Type Code 注册表
IANA 已创建 16 位 "DSO Type Codes" 注册表, 初始 (十六进制) 值如下:
| 类型 | 名称 | Early Data | 状态 | 引用 |
|---|---|---|---|---|
| 0000 | Reserved | NO | Standards Track | RFC 8490 |
| 0001 | KeepAlive | OK | Standards Track | RFC 8490 |
| 0002 | RetryDelay | NO | Standards Track | RFC 8490 |
| 0003 | EncryptionPadding | NA | Standards Track | RFC 8490 |
| 0004-003F | Unassigned, reserved for DSO session-management TLVs | NO | ||
| 0040-F7FF | Unassigned | NO | ||
| F800-FBFF | Experimental/local use | NO | ||
| FC00-FFFF | Reserved for future expansion | NO |
各字段含义如下:
Type: 16 位 DSO type code.
Name: TLV 的人类可读名称.
Early Data: 如果为 OK, 该 TLV 可以在 TLS 零往返初始握手中作为 early data 发送 (TLS 1.3 规范 [RFC8446] 第 2.3 节). 如果为 NA, 该 TLV 可以作为 Additional TLV 出现在作为 early data 发送的 DSO 消息中.
Status: RFC 状态, 例如 "Standards Track", 或者如果未在 RFC 中记录则为 "External".
Reference: 定义该 TLV 的文档的稳定引用.
注意: DSO Type Code 零是保留值, 当前不打算分配.
在 "Reserved for DSO session-management" 范围 0004-003F 和 "Reserved for future expansion" 范围 FC00-FFFF 内注册新的 DSO Type Codes, 需要发布 IETF Standards Action 文档 [RFC8126].
在 "Unassigned" 范围 0040-F7FF 内注册其他新的 DSO Type Codes 的请求, 由 IANA 在 Expert Review [RFC8126] 后记录. 专家审查应验证请求的 type code 是否以符合本规范的方式指定, 并验证该代码的预期用途是否不能通过 experimental/local 分配解决.
"experimental/local" 范围 F800-FBFF 内的 DSO Type Codes 可以作为 Experimental Use 或 Private Use 值 [RFC8126] 使用, 并可自由用于开发目的或单一站点内的其他目的. 本规范不试图阻止多个站点以不同且不兼容的方式使用同一个值. IANA 无需审查这类分配 (因为 IANA 不记录它们), 这类分配通常也不适合广泛互操作. 使用 "experimental/local" 值的站点负责确保在预期使用范围内不发生冲突.
任何定义新 TLV 且在 Early Data 列中列出 "OK" 值的文档, 都必须包含在 TLS 零往返情况下使用该 TLV 的威胁分析. 详见第 11.1 节.