跳到主要内容

14. IANA 考虑

本章描述 SCTP 协议在 IANA (Internet Assigned Numbers Authority) 注册表中的注册要求.

14.1. SCTP Chunk Type 注册

IANA 维护 SCTP Chunk Type 注册表.

14.1.1. Chunk Type 值范围

Chunk Type 字段: 8-bit value (0-255)

分配策略:

  • 0-63: 已定义 chunk 类型 (由本 RFC 定义)
  • 64-126: 保留用于 IETF Review
  • 127: 保留用于 IETF 定义的扩展
  • 128-190: 保留用于 IETF Review
  • 191: 保留用于 IETF 定义的扩展
  • 192-255: 实验和私有使用

14.1.2. 已定义 Chunk Types

本 RFC 定义的 chunk 类型:

TypeNameReference
0DATA3.3.1
1INIT3.3.2
2INIT ACK3.3.3
3SACK3.3.4
4HEARTBEAT3.3.5
5HEARTBEAT ACK3.3.6
6ABORT3.3.7
7SHUTDOWN3.3.8
8SHUTDOWN ACK3.3.9
9ERROR3.3.10
10COOKIE ECHO3.3.11
11COOKIE ACK3.3.12
14SHUTDOWN COMPLETE3.3.13

: Chunk type 12 和 13 在本规范中未使用.

14.2. SCTP Chunk Parameter Type 注册

IANA 维护 SCTP Chunk Parameter Type 注册表.

14.2.1. Parameter Type 值范围

Parameter Type 字段: 16-bit value (0-65535)

分配策略:

  • 0-32767: 已定义 parameter type
  • 32768-49151: 保留用于 IETF Review
  • 49152-65535: 实验和私有使用

14.2.2. 已定义 Parameter Types

本 RFC 定义的 parameter type:

TypeNameReference
5IPv4 Address3.3.2.1
6IPv6 Address3.3.2.1
7State Cookie3.3.3.1
8Unrecognized Parameters3.3.3.2
9Cookie Preservative3.3.2.1
11Host Name Address3.3.2.1
12Supported Address Types3.3.2.1

14.3. SCTP Error Cause Code 注册

IANA 维护 SCTP Error Cause Code 注册表.

14.3.1. Error Cause Code 值范围

Cause Code 字段: 16-bit value (0-65535)

分配策略:

  • 0-32767: 已定义 cause code
  • 32768-49151: 保留用于 IETF Review
  • 49152-65535: 实验和私有使用

14.3.2. 已定义 Error Cause Codes

本 RFC 定义的 error cause code:

CodeNameReference
1Invalid Stream Identifier3.3.10.1
2Missing Mandatory Parameter3.3.10.2
3Stale Cookie Error3.3.10.3
4Out of Resource3.3.10.4
5Unresolvable Address3.3.10.5
6Unrecognized Chunk Type3.3.10.6
7Invalid Mandatory Parameter3.3.10.7
8Unrecognized Parameters3.3.10.8
9No User Data3.3.10.9
10Cookie Received While Shutting Down3.3.10.10
11Restart of an Association with New Addresses3.3.10.11
12User Initiated Abort3.3.10.12
13Protocol Violation3.3.10.13

14.4. SCTP Payload Protocol Identifiers

IANA 维护 SCTP Payload Protocol Identifier 注册表.

14.4.1. Protocol Identifier 值范围

Payload Protocol Identifier 字段: 32-bit value (0-4294967295)

用途: 标识 DATA chunk 中承载的上层协议, 使接收方能够正确处理 payload, 且与端口号正交.

14.4.2. 注册策略

分配:

  • 0: Reserved (SCTP 不使用)
  • 1-65535: 标准化协议 (IETF Review)
  • 65536-: First Come First Served

注册要求: 协议名称, 描述, 参考文档.

14.4.3. 已定义 Protocol Identifiers

预定义 protocol identifier 示例:

IDProtocolReference
0reserved-
1IUARFC 4233
2M2UARFC 3331
3M3UARFC 4666
4SUARFC 3868
5M2PARFC 4165

14.5. 端口号分配

14.5.1. SCTP 端口号注册

SCTP 使用与 TCP 和 UDP 相同的端口号空间, 但独立维护.

IANA 职责: 维护 SCTP 端口号注册表, 接受分配请求, 与 TCP/UDP 使用情况协调.

端口号范围:

  • 0-1023: System Ports (Well Known) - 需要 IETF Review
  • 1024-49151: User Ports (Registered) - 需要 IANA Review
  • 49152-65535: Dynamic/Private Ports - 无需注册

14.5.2. 推荐实践

端口分配建议: 如果协议同时支持 TCP 和 SCTP, 使用相同端口号; 新协议应明确指定传输协议.

14.6. 注册更新过程

14.6.1. 注册新值

流程: 向 IANA 提交请求, 提供文档, 接受审查, IANA 分配值并更新注册表.

14.6.2. 修改现有注册

允许: 更新参考文档, 澄清描述, 纠正错误. 不允许: 更改已分配值, 重新定义现有条目.

14.6.3. 废弃注册

标记为 "deprecated" 而不是删除, 保留历史记录, 注明原因和替代方案.


总结

IANA 在 SCTP 协议管理中的角色: 注册表维护, 值分配, 文档管理, 协调.

最佳实践: 使用新类型前检查 IANA 注册表, 实验使用实验范围, 标准化扩展需要 IETF review, 维护准确的注册信息.