メインコンテンツまでスキップ

3.3. SCTPチャンク定義 (SCTP Chunk Definitions) - 続き

3.3.3. 初期化確認応答 (Initiation Acknowledgement, INIT ACK) (2)

INIT ACKチャンクは、SCTPアソシエーションの開始を確認するために使用されます.

INIT ACKのパラメーター部分は、INITチャンクと同様にフォーマットされます. 2つの追加の可変パラメーターを使用します: 状態CookieとUnrecognized Parameter(認識されないパラメーター).

INIT ACKチャンクのフォーマットを以下に示します:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 2 | Chunk Flags | Chunk Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Initiate Tag |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertised Receiver Window Credit |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Number of Outbound Streams | Number of Inbound Streams |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Initial TSN |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Optional/Variable-Length Parameters /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

開始タグ (Initiate Tag): 32ビット (符号なし整数)

INIT ACKの受信者は、開始タグパラメーターの値を記録します. この値は、INIT ACK受信者がこのアソシエーション内で送信するすべてのSCTPパケットの検証タグフィールドに配置する必要があります (MUST).

開始タグは値0を取ってはなりません (MUST NOT). 開始タグ値の選択の詳細については、セクション5.3.1を参照してください.

受信したINIT ACKチャンクの開始タグの値が0であることが判明した場合、受信者はそのTCBを破棄してアソシエーションを破壊する必要があります (MUST). 受信者はデバッグ目的でABORTを送信できます (MAY).

アドバタイズされた受信ウィンドウクレジット (a_rwnd): 32ビット (符号なし整数)

この値は、INIT ACKの送信者がこのウィンドウに関連して予約した専用バッファースペースをバイト数で表します. アソシエーションの存続期間中、このバッファースペースを減少させてはなりません (SHOULD NOT)(つまり、このアソシエーションから専用バッファーを取り除く).

出力ストリーム数 (OS): 16ビット (符号なし整数)

このINIT ACKチャンクの送信者がこのアソシエーションで作成したい出力ストリームの数を定義します. 値0を使用してはならず (MUST NOT)、値はINITチャンクで送信されたMIS値より大きくてはなりません (MUST NOT).

注: OS値が0に設定されたINIT ACKの受信者は、そのTCBを破棄してアソシエーションを破壊する必要があります (SHOULD).

入力ストリーム数 (MIS): 16ビット (符号なし整数)

このINIT ACKチャンクの送信者がピアエンドがこのアソシエーションで作成できる最大ストリーム数を定義します. 値0を使用してはなりません (MUST NOT).

注: 実際のストリーム数の交渉はなく、代わりに2つのエンドポイントはmin(requested, offered)を使用します. 詳細については、セクション5.1.1を参照してください.

注: MIS値が0に設定されたINIT ACKの受信者は、そのTCBを破棄してアソシエーションを破壊する必要があります (SHOULD).

初期TSN (I-TSN): 32ビット (符号なし整数)

INIT ACK送信者が使用する初期TSNを定義します. 有効範囲は0から4294967295です. このフィールドは、開始タグフィールドの値に設定できます (MAY).

       固定パラメーター                  ステータス
----------------------------------------------
Initiate Tag 必須
Advertised Receiver Window Credit必須
Number of Outbound Streams 必須
Number of Inbound Streams 必須
Initial TSN 必須

可変パラメーター ステータス タイプ値
-------------------------------------------------------------
State Cookie 必須 7
IPv4 Address (注1) オプション 5
IPv6 Address (注1) オプション 6
Unrecognized Parameter オプション 8
Reserved for ECN Capable (注2) オプション 32768 (0x8000)
Host Name Address (注3) オプション 11

注1: INIT ACKチャンクには、IPv4やIPv6の任意の組み合わせで任意の数のIPアドレスパラメーターを含めることができます.

注2: ECN Capableフィールドは、明示的輻輳通知の将来の使用のために予約されています.

注3: INIT ACKチャンクに複数のホスト名アドレスパラメーターを含めてはなりません (MUST NOT). さらに、INIT ACKの送信者は、INIT ACKでホスト名アドレスと他のアドレスタイプを組み合わせてはなりません (MUST NOT). ホスト名アドレスパラメーターが存在する場合、INIT ACKの受信者は他のアドレスタイプを無視する必要があります (MUST).

3.3.3.1. オプションまたは可変長パラメーター

状態Cookie (State Cookie)

パラメータータイプ値: 7

パラメーター長: Cookieのサイズに応じて可変サイズ.

パラメーター値:

このパラメーター値は、このINIT ACKの送信者がアソシエーションを作成するために必要なすべての必要な状態とパラメーター情報、およびメッセージ認証コード (MAC) を含む必要があります (MUST). 状態Cookieの定義の詳細については、セクション5.1.3を参照してください.

認識されないパラメーター (Unrecognized Parameter):

パラメータータイプ値: 8

パラメーター長: 可変サイズ.

パラメーター値:

このパラメーターは、INITに送信者に報告すべきであることを示す値を持つ認識されないパラメーターが含まれている場合、INITチャンクの発信者に返されます. このパラメーター値フィールドには、パラメータータイプ、長さ、値フィールドを含む完全な、INITチャンクからコピーされた認識されないパラメーターが含まれます.

3.3.4. 選択的確認応答 (Selective Acknowledgement, SACK) (3)

このチャンクは、受信したDATAチャンクを確認し、受信したDATAチャンクのサブシーケンスのギャップをそのTSNで表されるように、ピアエンドポイントに通知するために送信されます.

SACKには、累積TSN確認応答、アドバタイズされた受信ウィンドウクレジット (a_rwnd)、ギャップ確認応答ブロック数、および重複TSN数フィールドが含まれている必要があります (MUST).

定義により、累積TSN確認応答パラメーターの値は、受信したTSNシーケンスの中断の前に受信された最後のTSNです。これに続く次のTSN値は、SACKを送信するエンドポイントでまだ受信されていません. したがって、このパラメーターは、その値以下のすべてのTSNの受信を確認します.

SACKの受信者によるa_rwndの処理については、セクション6.2.1で詳しく説明されています.

SACKには、ゼロ個以上のギャップ確認応答ブロックも含まれます. 各ギャップ確認応答ブロックは、受信したTSNシーケンスの中断後に受信したTSNのサブシーケンスを確認します. 定義により、ギャップ確認応答ブロックで確認されたすべてのTSNは、累積TSN確認応答の値より大きくなります.

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 3 |Chunk Flags | Chunk Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cumulative TSN Ack |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertised Receiver Window Credit (a_rwnd) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Number of Gap Ack Blocks = N | Number of Duplicate TSNs = X |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Gap Ack Block #1 Start | Gap Ack Block #1 End |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ /
\ ... \
/ /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Gap Ack Block #N Start | Gap Ack Block #N End |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Duplicate TSN 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ /
\ ... \
/ /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Duplicate TSN X |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時にすべて'0'に設定され、受信時に無視されます.

累積TSN確認応答: 32ビット (符号なし整数)

このパラメーターには、ギャップの前にシーケンス内で受信された最後のDATAチャンクのTSNが含まれます. DATAチャンクが受信されていない場合、この値はピアの初期TSNマイナス1に設定されます.

アドバタイズされた受信ウィンドウクレジット (a_rwnd): 32ビット (符号なし整数)

このフィールドは、このSACKの送信者の更新された受信バッファースペースをバイト単位で示します。詳細についてはセクション6.2.1を参照してください.

ギャップ確認応答ブロック数: 16ビット (符号なし整数)

このSACKに含まれるギャップ確認応答ブロックの数を示します.

重複TSN数: 16ビット

このフィールドには、エンドポイントが受信した重複TSNの数が含まれます. 各重複TSNは、ギャップ確認応答ブロックリストの後にリストされます.

ギャップ確認応答ブロック:

これらのフィールドには、ギャップ確認応答ブロックが含まれます. ギャップ確認応答ブロック数フィールドで定義されたギャップ確認応答ブロック数まで、各ギャップ確認応答ブロックに対して繰り返されます. (累積TSN確認応答 + ギャップ確認応答ブロック開始) 以上で、(累積TSN確認応答 + ギャップ確認応答ブロック終了) 以下のTSNを持つすべてのDATAチャンクは、正しく受信されたと見なされます.

ギャップ確認応答ブロック開始: 16ビット (符号なし整数)

このギャップ確認応答ブロックの開始オフセットTSNを示します. 実際のTSN番号を計算するには、このオフセット番号に累積TSN確認応答を追加します. この計算されたTSNは、このギャップ確認応答ブロックで受信された最初のTSNを識別します.

ギャップ確認応答ブロック終了: 16ビット (符号なし整数)

このギャップ確認応答ブロックの終了オフセットTSNを示します. 実際のTSN番号を計算するには、このオフセット番号に累積TSN確認応答を追加します. この計算されたTSNは、このギャップ確認応答ブロックで受信された最後のDATAチャンクのTSNを識別します.

重複TSN: 32ビット (符号なし整数)

最後のSACKが送信されてから、TSNが重複して受信された回数を示します. 受信者が重複TSNを受信するたびに(SACKを送信する前)、それを重複リストに追加します. 重複カウントは、各SACKを送信した後、ゼロに再初期化されます.

3.3.5. ハートビートリクエスト (Heartbeat Request, HEARTBEAT) (4)

エンドポイントは、現在のアソシエーションで定義されている特定の宛先トランスポートアドレスの到達可能性を調査するために、このチャンクをピアエンドポイントに送信する必要があります.

パラメーターフィールドには、送信者のみが理解できる可変長の不透明なデータ構造であるハートビート情報が含まれています.

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 4 | Chunk Flags | Heartbeat Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Heartbeat Information TLV (Variable-Length) /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時に0に設定され、受信時に無視されます.

ハートビート長: 16ビット (符号なし整数)

チャンクヘッダーとハートビート情報フィールドを含む、チャンクのサイズをバイト単位で設定します.

ハートビート情報: 可変長

セクション3.2.1で説明されているフォーマットを使用する可変長パラメーターとして定義されます。つまり:

       可変パラメーター                   ステータス    タイプ値
-------------------------------------------------------------
Heartbeat Info 必須 1

送信者固有のハートビート情報フィールドには通常、このHEARTBEATチャンクが送信されたときの送信者の現在時刻に関する情報と、このHEARTBEATが送信される宛先トランスポートアドレスが含まれている必要があります(セクション8.3を参照). この情報は、HEARTBEAT ACKメッセージで受信者によって単に反射されます(セクション3.3.6を参照). また、HEARTBEATメッセージは到達可能性チェックとパス検証の両方に使用されることに注意してください(セクション5.4を参照). HEARTBEATチャンクがパス検証目的で使用される場合、64ビットのランダムnonceを保持する必要があります (MUST).

3.3.6. ハートビート確認応答 (Heartbeat Acknowledgement, HEARTBEAT ACK) (5)

エンドポイントは、HEARTBEATチャンクへの応答として、このチャンクをピアエンドポイントに送信する必要があります(セクション8.3を参照). HEARTBEAT ACKは常に、このackが応答しているHEARTBEATチャンクを含むIPデータグラムの送信元IPアドレスに送信されます.

パラメーターフィールドには、可変長の不透明なデータ構造が含まれています.

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 5 | Chunk Flags | Heartbeat Ack Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ Heartbeat Information TLV (Variable-Length) /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時に0に設定され、受信時に無視されます.

ハートビート確認応答長: 16ビット (符号なし整数)

チャンクヘッダーとハートビート情報フィールドを含む、チャンクのサイズをバイト単位で設定します.

ハートビート情報: 可変長

このフィールドには、このハートビート確認応答が応答しているハートビートリクエストのハートビート情報パラメーターが含まれている必要があります (MUST).

       可変パラメーター                   ステータス    タイプ値
-------------------------------------------------------------
Heartbeat Info 必須 1

3.3.7. アソシエーションの中止 (Abort Association, ABORT) (6)

ABORTチャンクは、アソシエーションを閉じるためにアソシエーションのピアに送信されます. ABORTチャンクには、中止の理由を受信者に通知するために原因パラメーターが含まれる場合があります. DATAチャンクはABORTとバンドルしてはなりません (MUST NOT). 制御チャンク(INIT、INIT ACK、SHUTDOWN COMPLETEを除く)はABORTとバンドルできますが (MAY)、SCTPパケット内のABORTの前に配置する必要があります (MUST)。そうしないと、受信者に無視されます.

エンドポイントがフォーマットエラーのあるABORTを受信するか、TCBが見つからない場合、それをサイレントに破棄する必要があります (MUST). さらに、いかなる状況下でも、ABORTを受信するエンドポイントは、独自のABORTを送信してそのABORTに応答してはなりません (MUST NOT).

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 6 |Reserved |T| Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ zero or more Error Causes /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

予約済み: 7ビット

送信時に0に設定され、受信時に無視されます.

Tビット: 1ビット

送信者がピアが期待する検証タグを入力した場合、Tビットは0に設定されます. 検証タグが反射される場合、Tビットは1に設定する必要があります (MUST). 反射とは、送信された検証タグが受信されたものと同じであることを意味します.

注: このチャンクの検証には特別なルールが適用されます。詳細についてはセクション8.5.1を参照してください.

長さ: 16ビット (符号なし整数)

チャンクヘッダーと存在するすべてのエラー原因フィールドを含む、チャンクのサイズをバイト単位で設定します.

エラー原因の定義については、セクション3.3.10を参照してください.

3.3.8. アソシエーションのシャットダウン (Shutdown Association, SHUTDOWN) (7)

アソシエーション内のエンドポイントは、このチャンクを使用して、ピアとのアソシエーションの正常なクローズを開始する必要があります (MUST). このチャンクには次のフォーマットがあります.

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 7 | Chunk Flags | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cumulative TSN Ack |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時に0に設定され、受信時に無視されます.

長さ: 16ビット (符号なし整数)

パラメーターの長さを示します. 8に設定します.

累積TSN確認応答: 32ビット (符号なし整数)

このパラメーターには、任意のギャップの前にシーケンス内で受信された最後のチャンクのTSNが含まれます.

注: SHUTDOWNメッセージにはギャップ確認応答ブロックが含まれていないため、順序外れで受信されたTSNを確認するために使用できません. SACKでは、以前に含まれていたギャップ確認応答ブロックがないことは、データ受信者が関連するDATAチャンクを放棄したことを示します. SHUTDOWNにはギャップ確認応答ブロックが含まれていないため、SHUTDOWNの受信者はギャップ確認応答ブロックがないことを放棄として解釈すべきではありません.(放棄に関する情報については、セクション6.2を参照してください.)

3.3.9. シャットダウン確認応答 (Shutdown Acknowledgement, SHUTDOWN ACK) (8)

このチャンクは、シャットダウンプロセスの完了時にSHUTDOWNチャンクの受信を確認するために使用する必要があります (MUST)。詳細についてはセクション9.2を参照してください.

SHUTDOWN ACKチャンクにはパラメーターがありません.

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 8 |Chunk Flags | Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時に0に設定され、受信時に無視されます.

3.3.10. 操作エラー (Operation Error, ERROR) (9)

エンドポイントは、特定のエラー条件をピアエンドポイントに通知するために、このチャンクを送信します. 1つ以上のエラー原因が含まれます. 操作エラーはそれ自体では致命的とは見なされませんが、ABORTチャンクと共に使用して致命的な条件を報告できます. 次のパラメーターがあります:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 9 | Chunk Flags | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ \
/ one or more Error Causes /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時に0に設定され、受信時に無視されます.

長さ: 16ビット (符号なし整数)

チャンクヘッダーと存在するすべてのエラー原因フィールドを含む、チャンクのサイズをバイト単位で設定します.

エラー原因は、セクション3.2.1で説明されているフォーマットを使用する可変長パラメーターとして定義されます。つまり:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cause Code | Cause Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ Cause-Specific Information /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

原因コード: 16ビット (符号なし整数)

報告されるエラー条件のタイプを定義します.

       原因コード値    原因コード
--------- ----------------
1 無効なストリーム識別子
2 必須パラメーターの欠如
3 古いCookieエラー
4 リソース不足
5 解決不可能なアドレス
6 認識されないチャンクタイプ
7 無効な必須パラメーター
8 認識されないパラメーター
9 ユーザーデータなし
10 シャットダウン中にCookieを受信
11 新しいアドレスでのアソシエーションの再起動
12 ユーザー開始の中止
13 プロトコル違反

原因長: 16ビット (符号なし整数)

原因コード、原因長、および原因固有情報フィールドを含む、パラメーターのサイズをバイト単位で設定します.

原因固有情報: 可変長

このフィールドには、エラー条件の詳細が含まれます.

このチャンクは、アソシエーションの初期化中にのみ使用されます. INIT ACK送信者からINIT送信者に送信されます(セクション5.1を参照). このチャンクは、アソシエーション内で送信されるDATAまたはSACKチャンクの前に配置する必要があります (MUST) が、1つ以上のDATAチャンクまたはSACKチャンクと同じSCTPパケット内にバンドルできます (MAY).

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 10 |Chunk Flags | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ Cookie /
\ \
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時に0に設定され、受信時に無視されます.

Cookie: 可変サイズ

このフィールドには、以前のINIT ACKの状態Cookieパラメーターで受信した正確なCookieが含まれている必要があります.

実装は、相互運用性を確保するためにCookieをできるだけ小さくする必要があります (SHOULD).

注: Cookie Echoには状態Cookieパラメーターが含まれていません。代わりに、状態Cookieのパラメーター値内のデータがCookie EchoのChunk Value内のデータになります. これにより、実装は状態Cookieパラメーターの最初の2バイトのみを変更してCOOKIE ECHOチャンクになることができます.

このチャンクは、アソシエーションの初期化中にのみ使用されます. COOKIE ECHOチャンクの受信を確認するために使用されます. このチャンクは、アソシエーション内で送信されるDATAまたはSACKチャンクの前に配置する必要があります (MUST) が、1つ以上のDATAチャンクまたはSACKチャンクと同じSCTPパケット内にバンドルできます (MAY).

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 11 |Chunk Flags | Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

送信時に0に設定され、受信時に無視されます.

3.3.13. シャットダウン完了 (Shutdown Complete, SHUTDOWN COMPLETE) (14)

このチャンクは、シャットダウンプロセスの完了時にSHUTDOWN ACKチャンクの受信を確認するために使用する必要があります (MUST)。詳細についてはセクション9.2を参照してください.

SHUTDOWN COMPLETEチャンクにはパラメーターがありません.

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 14 |Reserved |T| Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

チャンクフラグ: 8ビット

予約済み: 7ビット

送信時に0に設定され、受信時に無視されます.

Tビット: 1ビット

送信者がピアが期待する検証タグを入力した場合、Tビットは0に設定されます. 検証タグが反射される場合、Tビットは1に設定する必要があります (MUST). 反射とは、送信された検証タグが受信されたものと同じであることを意味します.

注: このチャンクの検証には特別なルールが適用されます。詳細についてはセクション8.5.1を参照してください.


: このドキュメントには、セクション3.3.3から3.3.13までが含まれており、SCTPチャンク定義の完全な説明が完了しています. 第4章および後続の内容は、後続のドキュメントで続行されます.