14. IANAに関する考慮事項
本章では、IANA(Internet Assigned Numbers Authority)レジストリにおけるSCTPプロトコルの登録要件を説明します。
14.1. SCTPチャンクタイプ登録
IANAはSCTPチャンクタイプレジストリを管理します。
チャンクタイプ値範囲(8ビット、0-255):
- 0-63: 定義済みチャンクタイプ
- 64-126、128-190: IETFレビュー用に予約
- 127、191: IETF定義の拡張用に予約
- 192-255: 実験およびプライベート使用
定義済みチャンクタイプ:
| タイプ | 名前 | 参照 |
|---|---|---|
| 0 | DATA | 3.3.1 |
| 1 | INIT | 3.3.2 |
| 2 | INIT ACK | 3.3.3 |
| 3 | SACK | 3.3.4 |
| 4 | HEARTBEAT | 3.3.5 |
| 5 | HEARTBEAT ACK | 3.3.6 |
| 6 | ABORT | 3.3.7 |
| 7 | SHUTDOWN | 3.3.8 |
| 8 | SHUTDOWN ACK | 3.3.9 |
| 9 | ERROR | 3.3.10 |
| 10 | COOKIE ECHO | 3.3.11 |
| 11 | COOKIE ACK | 3.3.12 |
| 14 | SHUTDOWN COMPLETE | 3.3.13 |
14.2. SCTPチャンクパラメータタイプ登録
パラメータタイプ値範囲(16ビット、0-65535):
- 0-32767: 定義済みパラメータタイプ
- 32768-49151: IETFレビュー用に予約
- 49152-65535: 実験およびプライベート使用
定義済みパラメータタイプ:
| タイプ | 名前 | 参照 |
|---|---|---|
| 5 | IPv4 Address | 3.3.2.1 |
| 6 | IPv6 Address | 3.3.2.1 |
| 7 | State Cookie | 3.3.3.1 |
| 8 | Unrecognized Parameters | 3.3.3.2 |
| 9 | Cookie Preservative | 3.3.2.1 |
| 11 | Host Name Address | 3.3.2.1 |
| 12 | Supported Address Types | 3.3.2.1 |
14.3. SCTPエラー原因コード登録
原因コード値範囲(16ビット、0-65535):
- 0-32767: 定義済み原因コード
- 32768-49151: IETFレビュー用に予約
- 49152-65535: 実験およびプライベート使用
定義済みエラー原因コード:
| コード | 名前 | 参照 |
|---|---|---|
| 1 | Invalid Stream Identifier | 3.3.10.1 |
| 2 | Missing Mandatory Parameter | 3.3.10.2 |
| 3 | Stale Cookie Error | 3.3.10.3 |
| 4 | Out of Resource | 3.3.10.4 |
| 5 | Unresolvable Address | 3.3.10.5 |
| 6 | Unrecognized Chunk Type | 3.3.10.6 |
| 7 | Invalid Mandatory Parameter | 3.3.10.7 |
| 8 | Unrecognized Parameters | 3.3.10.8 |
| 9 | No User Data | 3.3.10.9 |
| 10 | Cookie Received While Shutting Down | 3.3.10.10 |
| 11 | Restart with New Addresses | 3.3.10.11 |
| 12 | User Initiated Abort | 3.3.10.12 |
| 13 | Protocol Violation | 3.3.10.13 |
14.4. SCTPペイロードプロトコル識別子
プロトコル識別子値範囲(32ビット):
- 0: 予約(SCTPでは使用しない)
- 1-65535: 標準化プロトコル(IETFレビュー)
- 65536-: 先着順(First Come First Served)
目的: DATAチャンク内の上位層プロトコルを識別、ポート番号と直交する追加多重化を提供
定義済みプロトコル識別子例:
| ID | プロトコル | 参照 |
|---|---|---|
| 0 | reserved | - |
| 1 | IUA | RFC 4233 |
| 2 | M2UA | RFC 3331 |
| 3 | M3UA | RFC 4666 |
| 4 | SUA | RFC 3868 |
| 5 | M2PA | RFC 4165 |
14.5. ポート番号割り当て
SCTPポート番号登録: SCTPはTCPおよびUDPと同じポート番号空間を使用するが、独立して管理
ポート番号範囲:
- 0-1023: システムポート(Well Known)- IETFレビュー必要
- 1024-49151: ユーザーポート(Registered)- IANAレビュー必要
- 49152-65535: 動的/プライベートポート - 登録不要
推奨プラクティス: プロトコルがTCPとSCTPの両方をサポートする場合は同じポート番号を使用
14.6. 登録更新プロセス
新しい値の登録: IANAに要求提出、文書提供、レビュー、IANAが値を割り当てレジストリ更新
既存登録の変更: 参照更新、説明明確化、エラー修正は許可。割り当て値の変更、既存エントリの再定義は不可。
登録の廃止: 削除ではなく「廃止」としてマーク、履歴記録保持、理由と代替案を記載
まとめ
IANAの役割: レジストリ管理、値割り当て、文書管理、調整
ベストプラクティス: 新しいタイプ使用前にIANAレジストリを確認、実験には実験範囲を使用、標準化拡張はIETFレビュー必要、正確な登録情報の維持