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

6. ユーザーデータ転送

本章では、ユーザーデータの転送について述べる。

6.1. チャンク DATA の送信​

チャンク DATA はストリームの順序と輻輳制御の制約に従って送信される。フラグ U/B/E は、それぞれ順序なしメッセージ、ユーザーメッセージの先頭、末尾を示す。

6.2. チャンク DATA 受信時の確認応答​

受信時、累積 TSN を確認し、必要に応じ欠落を報告するため SACK が生成される。

6.3. 再送タイマーの管理​

確認されていない各チャンク DATA に対して再送タイマー (RTO) が維持される。満了時はチャンクが再送され、RTO は倍増 (指数的バックオフ) される。

6.4. マルチホーム SCTP 端点​

端点は複数のアドレスを持ち得る。トラフィックはプライマリパスを使用し、障害時に代替パスへ切り替わる。

6.5. ストリーム識別子とストリームシーケンス番号​

各メッセージは Stream Identifier で識別されるストリームに属し、順序付き配送のために Stream Sequence Number を持つ。

6.6. 順序付き配送と非順序配送​

順序付き配送は Stream Sequence Number によりストリームごとに保証される。フラグ U は当該メッセージの順序を無効にする。

6.7. 受信 DATA TSN の欠落報告​

SACK の Gap Ack Blocks は、累積的に確認された TSN を超えて受信された TSN の範囲を記述する。

6.8. CRC32c チェックサムの計算​

パケットのチェックサムは CRC32c を用い、checksum フィールド自身を除くパケット全体で計算される。

6.9. フラグメンテーションと再構築​

パスの MTU を超えるユーザーメッセージは複数のチャンク DATA (B/E) にフラグメント化され、受信側で再構築される。

6.10. バンドル​

複数のチャンクは、MTU および 4 オクテット整列の限界内で単一の SCTP パケットにバンドルでき得る。