7. エラーコード (Error Codes)
エラーコード (Error Codes) は、ストリームまたは接続終了の理由を伝えるために、RST_STREAMおよびGOAWAYフレームで使用される32ビットフィールドです。
エラーコードレジストリ
| 名前 | コード | 説明 |
|---|---|---|
| NO_ERROR | 0x0 | 正常なシャットダウン |
| PROTOCOL_ERROR | 0x1 | プロトコルエラーが検出された |
| INTERNAL_ERROR | 0x2 | 内部エラー |
| FLOW_CONTROL_ERROR | 0x3 | フロー制御制限を超えた |
| SETTINGS_TIMEOUT | 0x4 | 設定が確認されなかった |
| STREAM_CLOSED | 0x5 | ストリーム閉鎖後にフレームを受信 |
| FRAME_SIZE_ERROR | 0x6 | フレームサイズが正しくない |
| REFUSED_STREAM | 0x7 | ストリームが処理されなかった |
| CANCEL | 0x8 | ストリームがキャンセルされた |
| COMPRESSION_ERROR | 0x9 | 圧縮状態が無効 |
| CONNECT_ERROR | 0xa | TCP接続エラー |
| ENHANCE_YOUR_CALM | 0xb | 処理能力を超えた |
| INADEQUATE_SECURITY | 0xc | セキュリティ要件が満たされていない |
| HTTP_1_1_REQUIRED | 0xd | 代わりにHTTP/1.1を使用 |
使用法
エラーコードは以下で使用されます:
- RST_STREAMフレーム: 個別のストリームを終了するため
- GOAWAYフレーム: 接続を終了するため
未知のエラーコードは、INTERNAL_ERRORとして扱わなければなりません (MUST)。