2.

データの単位 PDU(プロトコルデータユニット)

編集

本稿は データの単位 PDU (Protocol Data Unit / プロトコルデータユニット) に関する記事です。OSI 参照モデルや TCP/IP モデルでは、各層で扱うデータに「どこからどこまでが 1 単位か」という固有の名前が付いており、これを総称して PDU と呼びます。

子ページからデータ単位を選択してください。

本ページの子ページ

PDUとは

PDU は Protocol Data Unit の略で、各通信プロトコルが扱うデータのまとまりを指す総称です。ネットワーク通信では、上位層から渡されたデータに対し、層ごとにヘッダ (Header) を付与しながら下位層へ送るのが基本動作です。この「ヘッダ+データ+必要に応じてトレーラ」のセットが、その層での PDU となります。

OSI 参照モデルにおける PDU 名称

OSI 名PDU 名主な対象プロトコル
7アプリケーション層データ (Data) / メッセージHTTP、SMTP、FTP、DNS
6プレゼンテーション層データTLS、文字コード変換
5セッション層データセッション管理
4トランスポート層セグメント (TCP) / データグラム (UDP)TCP、UDP
3ネットワーク層パケット (IPデータグラム)IPv4、IPv6、ICMP
2データリンク層フレームEthernet、Wi-Fi (802.11)、PPP
1物理層ビット (Bit) / シンボル電気信号・光信号

カプセル化 / 非カプセル化のイメージ

送信側は上位層から下位層へ下りながら、各層でヘッダを付加していきます。受信側は逆に下位層から上位層へ上がりながら、ヘッダを外していきます。これをカプセル化 (Encapsulation)非カプセル化 (Decapsulation)と呼びます。

送信側 (上→下)処理内容
アプリケーション層アプリのデータをそのまま渡す
トランスポート層TCP/UDP ヘッダを付加 (送信元/宛先ポート等) → セグメント
ネットワーク層IP ヘッダを付加 (送信元/宛先IP) → パケット
データリンク層MAC ヘッダ+FCS を付加 → フレーム
物理層ビット列としてケーブル/電波へ送出

PDU が分かれている理由

  • 層ごとの責務分離: 信号 / 隣接通信 / 経路 / 端点間の信頼性 / アプリ意味付け、をそれぞれ独立して進化させられる
  • 機器ごとの守備範囲: スイッチはフレーム、ルータはパケット、ファイアウォール / LB はセグメント/アプリデータを見る
  • トラブルシュート: tcpdump / Wireshark で「どの層の何が壊れているか」を切り分けられる

各 PDU が持つ代表的なヘッダ情報

PDU主なヘッダ情報
フレーム (Ethernet)宛先/送信元 MAC、タイプ、FCS
パケット (IPv4)宛先/送信元 IP、TTL、プロトコル番号、フラグメント情報
セグメント (TCP)送信元/宛先ポート、シーケンス番号、ACK、ウィンドウサイズ
データグラム (UDP)送信元/宛先ポート、長さ、チェックサム
アプリデータHTTP メソッド・パス・ヘッダ/本文 等

関連

編集
Post Share
子ページ
  1. セグメント
  2. パケット
  3. フレーム
同階層のページ
  1. 階層(レイヤ)
  2. データの単位 PDU(プロトコルデータユニット)