通信用語の基礎知識 戻る
アスカネットワークサービス

擬似ヘッダ

読み:ぎじヘッダ
外語:pseudo header
品詞:名詞
2006/06/06 作成
2006/06/06 更新

TCPUDPで通信するさい、ヘッダ内のチェックサム計算に用いる疑似的なヘッダのこと。

TCPヘッダUDPヘッダ内で、宛先等を示す有意な情報は送信元・宛先ポート番号だけである。

しかし、このままチェックサムを算出すると異なるアドレスへの配信(誤配信)への対策が取れないと考えられた。精度を持たせるためにこの偽りのヘッダを疑似的に作り、チェックサム計算に混ぜることとした。

この擬似ヘッダには送信元・宛先アドレスを含むため、下位のプロトコルに応じて形式が変化する。

IPv4

下位のプロトコルがIPv4の場合、次のとおりとなる。

TCPならRFC 793外部リンクのセクション3.1で、UDPならRFC 768外部リンクで説明されるが、両者は実質的に同一である。

擬似ヘッダの構造
擬似ヘッダの構造

先頭より順番に、次の情報が格納される。

  • source address (送信元IPアドレス) (32ビット)
  • destination address (宛先IPアドレス) (32ビット)
  • zero (8ビット) 常に0
  • protocol (プロトコル) (8ビット) TCP=6、UDP=17
  • length (パケット長) (16ビット) ヘッダ+データの全長

IPv6

下位のプロトコルがIPv6の場合、次のとおりとなる。

この構造は、RFC 1883外部リンク(インターネットプロトコルバージョン6の仕様)のセクション8.1 上位層チェックサムの項で説明され、TCP/UDP共通である旨規定されている。

擬似ヘッダの構造
擬似ヘッダの構造

先頭より順番に、次の情報が格納される。

  • Source Address (送信元IPv6アドレス) (128ビット)
  • Destination Address (宛先IPv6アドレス) (128ビット)
  • Payload Length (パケット長) (32ビット) ヘッダ+データの全長
  • zero (24ビット) 常に0
  • Next Header (次ヘッダ) (8ビット) TCP=6、UDP=17