UDP

UDPの概要

  • トランスポート層のコネクションレス型プロトコル。
  • 再送制御や順序制御がない。
  • 信頼性は低く、即時性は速い。(TCPと比べて)
  • SNMP、NTP、DNS(問い合わせ)、SNMP、DHCP、TFTP、RTPなど。

 

UDPのパケットフォーマット

0bit 8bit 16bit 24bit
0バイト 送信元ポート番号 宛先ポート番号
4バイト UDPデータグラム長 チェックサム
可変 UDPペイロード

※送信元ポート番号~チェックサムまでがUDPヘッダ。ヘッダ長は8バイト固定。

 

UDPの各フィールド

送信元ポート番号
  • 2バイトの値。
  • OSがランダムに割り当てる。

 

宛先ポート番号
  • 2バイトの値。
  • アプリケーションごとに定義された値をセットする。

 

UDPデータグラム長
  • 2バイトの値。
  • UDPヘッダとUDPペイロードを合わせた全体のサイズ。
  • 最小値は8。
  • 最大値はMTUからIPヘッダ長さ(20バイト)を引いた値。MTUが1500なら1480。

 

チェックサム
  • 2バイトの値。
  • UDPデータグラムが壊れていないかの整合性チェックに使用する。
  • 計算対象のデータはUDP擬似ヘッダ、UDPヘッダ、UDPペイロード。
  • UDP擬似ヘッダとは、チェックサム計算時だけに使われる仮想的なヘッダ。送信元/宛先IPアドレスなどが含まれる。
  • 検証には「1の補数演算(ビット反転)」が使用されている。

午前問題の出題

午後問題の出題