トランスポート層のプロトコルについて
トランスポート層のプロトコルについて
TCP、UDPの概要(役割)
続いてトランスポート層のプロトコルについて詳しく見ていきましょう。
TCP、UDPがこの層での中心的な役割を担います。
TCP
確実にデータを届ける(信頼性の高い)通信を可能にするためのプロトコルです。一般的なインターネット通信で使用します。
UDP
TCPと比べ、信頼性は高くない反面、高速にデータを届けることを目的としたプロトコルです。主にIP電話や動画ストリーミングなどオンタイムな通信が求められる環境で使用されます。
トランスポート層のPDUについて
では、トランスポート層のプロトコルが機能するために、
この階層におけるデータがどうなっているのか確認していきましょう。
まず、トランスポート層で扱われるデータ(PDU)を「セグメント」と呼び、カプセル化の過程でトランスポート層で新しく付与されるヘッダは「TCPヘッダ(TCPプロトコルの場合)」、または「UDPヘッダ(UDPプロトコルの場合)」になります。
パケット
トランスポート層のPDU
TCP(UDP)ヘッダ
トランスポート層における主なヘッダ。
TCPについて(主な役割)
概要
「TCP(Transmission Control Protocol)」は、IPと共にインターネットの標準的なプロトコルです。
送信元と宛先が相互に確認しながら通信することで、確実にデータの送信(信頼性のある通信)を実現します(コネクション型)。
データのサイズによっては、一度にまとめて送ると通信が混み合うので、
「セグメント」という単位で分割して、複数回に分けて通信が行われます。
制御方式について
信頼性の高い通信を確保するために、TCPでは以下のような制御を取り入れています。
- 順序制御:分割したデータを元のデータに組み立てる制御方式
- 再送制御:データの未達を防ぐための制御方式
- ウィンドウ制御:順序制御や再送制御によりデータの到達が遅くならないよう、TCP通信を効率的にするための制御方式
- フロー制御:ウィンドウ制御に対し負荷の重い受信を防ぐための制御方式
- 輻輳制御:送信サイズを徐々に増やしていくことで輻輳を防ぐための制御方式
これらの制御については次節以降で詳しく解説します。
使用用途
信頼性の高い通信を実現するので、メールやインターネット、ファイル転送などで使用されます。
※詳しくは、前ページの「代表的なウェルノウンポート番号」で確認していただければと思います。
TCPヘッダのフォーマットの中身
では、TCPヘッダの中身について詳しく確認していきましょう。
UDPについて(主な役割)
概要
「UDP(User Datagram Protocol)」は、高速にデータを届けることを目的としたプロトコルです。
高速なデータ通信を実現するため、TCPのような信頼性は重視するための制御はなく、ただ対象のポート番号にデータを送り届けるための(コネクションレス型:事前の接続確認を行わない)プロトコルです。
また、UDPで扱うデータの単位を「データグラム」と呼びます。
使用用途
主にIP電話や動画ストリーミングなどオンタイムな通信が求められる環境で使用されます。
UDPヘッダのフォーマットの中身
ではUDPヘッダの中身について確認していきましょう。