TCPセグメント 【TCP segment】 TCPパケット / TCP packet
概要
TCPセグメント(TCP segment)とは、TCPで送受信されるデータの伝送単位。先頭部分が制御情報を記したTCPヘッダ、残りが伝送データ本体を格納したTCPペイロードで、IPデータグラムのペイロード部に格納されて運ばれる。TCP(Transmission Control Protocol)はIP(Internet Protocol)と併用されるトランスポート層のプロトコル(通信手順)で、HTTPやSMTPなど上位層のデータを高い確実性で相手方に送り届ける役割を担う。
先頭のヘッダ部にはTCPの伝送に必要な制御情報が記される。送信元ポート番号や宛先ポート番号、シーケンス番号、確認応答番号、ウィンドウサイズ、制御フラグ、チェックサムなどが含まれる。フラグの状態によってセグメントが伝達する情報が異なり、ACKパケット、SYNパケット、RSTパケットのように呼び分けることがある。
後続のペイロード部には、HTTPなど上位層のプロトコルから伝送を依頼されたデータを積載する。データが大きい場合、ウィンドウサイズで示される均等な大きさに分割され、順序を示すシーケンス番号を付されて複数のTCPセグメントとして伝送される。
TCPは信頼性の高いプロトコルであり、シーケンス番号と確認応答番号により各セグメントの順序が分かり、チェックサムによりペイロード部のデータの誤りを検出できる。伝送経路の都合で順序が入れ替わってしまった場合でも受信側で本来の順序通りに組み立て直すことができ、伝送途上でセグメントが欠落したりペイロードが誤っている場合は再送要求を送ることができる。
(2021.10.18更新)