TCP
読み:ティースィーピー
外語:TCP: Transmission Control Protocol
OSI参照モデル
の
トランスポート層
にある
通信プロトコル
の一つ。
RFC 793
(
STD 7
)で規定されている。
目次
概要
特徴
目的
再送
分割
技術
主要機能
状態遷移
関連技術
上位プロトコル
概要
IP
を下層に持つことが多く、その場合は
TCP/IP
と呼ばれるが、それに限らない。
IPのプロトコル番号
は6。
特徴
目的
このプロトコルが行なうことは、送信しようとしたデータが、正しく宛先に届いたかどうか、またもし届かなければ再度送信するというような、確実性をもった
全二重
のストリーム通信である。
そのため送信側と受信側が親密に通信を行なうことになり、確実性を得る代わりに速度が多少犠牲になるのが特徴である。
これを実現するために、TCPプロトコルで通信する場合には、まず初めに「○○と通信する」という宣言を行ない、終了する際に「○○との通信は終わった」と宣言を行なう。また、最初に行なわれる通信確立手順は、
3ウェイハンドシェイク
と呼ばれている。
高速性が重要であり、プロトコルに信頼性を求めない場合、TCPの代わりに
UDP
がよく用いられる。
再送
TCPによる通信では、受信側は必ず送信元に対して
ACK
の応答を返す。
ある時間内にACKが届かなければ、何らかの問題が発生したと判断し、送信元はパケットを再送する。
分割
一つのパケットに収まらないような大きなデータは、複数のパケットに分割されて送られる。
これが受信側で正しい順番に再度繋げられ、
アプリケーション層
から見ると常に正しい順番でデータが送受信されているように見える。
つまり、パケットの到着順序が保証される。
技術
主要機能
TCPには、次のような機能が備わっている。
ポイント・ポイント
通信
シーケンス番号による
フロー制御
と再送処理
ウィンドウ
管理
チェックサム
による
誤り訂正
状態遷移
TCPは、待機状態から通信、そしてその終了まで、状態遷移表に基づいて動作するプロトコルである。
TCPには、次の11種類の状態が存在する(RFCに書かれている順序)。
LISTEN
SYN-SENT
SYN-RECEIVED
ESTABLISHED
FIN-WAIT-1
FIN-WAIT-2
CLOSE-WAIT
CLOSING
LAST-ACK
TIME-WAIT
CLOSED
これらの状態を、
ACK
、
SYN
、
FIN
などに応じて順次遷移し、もってプロトコルは動作する。
関連技術
輻輳制御
TCP Tahoe
TCP Reno
New Reno
Vegas
CTCP(複合TCP)
PAWS
上位プロトコル
TCPを使う代表的なプロトコルに
TELNET
、
FTP
、
SMTP
、
HTTP
などがある。
TCPヘッダー
内にある
ポート番号
によって上位プロトコルは決定される。
再検索