3.トランスポート層のプロトコル・TCPとUDP

第4層のトランスポート層には、TCPとUDPという、2つのプロトコルがある。

TCPの機能

TCP(Transmission Control Protocol)は、パケットの順番やポート番号を管理する機能を持っている。

TCPヘッダが付加されたパケット
送信元ポート番号宛先ポート番号
シーケンス番号
確認応答番号
データオフセット予約コードビットウィンドウ
チェックサム緊急ポインタ
オプションパディング
データ

シーケンス番号と確認応答番号

シーケンス番号(Sequence Number)は相手先との接続が行われた時(コネクションの確立時)に初期化され、 パケットが送信されるたびに1ずつ加算される。 正しく届いたかは、送信先からの確認応答番号(Ackowledgement Number)で判断できる。

確認番号は、送信したシーケンス番号に1加算した値が返ってくる。 次に送るシーケンス番号がすでに戻ってきた確認応答番号と等しければ、 前に送った情報が正しく相手に送信されていると判断できる。

この処理は1つのパケットごとにやり取りされるので、シーケンス番号と確認応答番号の 存在により、パケットのやり取りの信頼性が高まる。

ウィンドウ制御によるパケットの連続送信

ウィンドウサイズでパケットの個数を指定して、パケットをいくつかまとめて送信できる。 連続して送信されてきたパケットが受信可能な許容量を超ええいた場合、 受信可能なデータ量を指定して送信元に通知する。

コードビットの機能

6ビットで構成されており、各ビットに、 URG(URGent flag)、ACK(ACKnowledgement flag)、PSH(PuSH flag)、RST(ReSeT flag)、SYN(SYNchronize flag)、 FIN(FIN flag)という名前が付いている。

UDPとTCPの違い

UDP(User Datagram Proyocol)はシーケンス制御などを行わないので高速で効率のよい通信ができる。


previous return next