要約
- SYNとFINは暗黙に1つの位置を占め、再送されても同じイベントとして確認できます。
- SYNはセグメント内の最初のデータ・オクテットの前、FINは最後のデータ・オクテットの後にあります。
- これは論理的な計算であり、アプリケーションのバイトではありません。ACK、PSH、RSTはそれだけで位置を追加しません。
イベントを番号付けする
RFC 793は、一部の制御情報をシーケンス空間に暗黙に含めました。RFC 9293もこの理由を維持しています。SYNやFINを確認・再送しても、受信側が同じイベントを二重に実行せずに済むためです。位置はヘッダーとデータの間に物理的なバイトとして挿入されるものではありません。
SYNがある場合、SEG.SEQはISNを示し、最初のデータはISN+1から始まります。データがNオクテットなら、論理的な長さはN+1です。FINはそのセグメントのデータの直後に位置します。確認番号は次に期待する番号なので、データがなくてもSYNまたはFINの確認で境界は1つ進みます。
SEG.LENはデータに加えてSYNとFINを数えます。再送では元の位置を再利用します。各方向には独立したシーケンス空間があり、FINは送信側がこれ以上データを送らないことを示すだけです。RSTは空間を占めず、ACKとPSHも加算されません。
出典
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
Strategic Circle 限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加
