UDPヘッダ 【UDP header】
概要
UDPヘッダ(UDP header)とは、UDPデータグラムの先頭部分にある、制御情報などを一定の形式で記述した領域。この後ろに送りたいデータ本体(ペイロード)を加えて、一つのUDPデータグラムとなる。UDP(User Datagram Protocol)はIP(Internet Protocol)と併用されるトランスポート層のプロトコル(通信手順)の一つで、DNSやDHCPなど上位層のデータを高い効率性と短い遅延時間で相手方に送り届ける役割を担う。
UDPでのデータの伝送単位を「UDPデータグラム」(UDPデータグラム)と呼び、その先頭にある制御情報が記された部分のことをUDPヘッダという。先頭から2バイトずつ順に送信元ポート番号、宛先ポート番号、送信データ長、チェックサムとなっている。
いずれの値も2バイト(16ビット)であるため、0~65,535の範囲で指定することができる。データ長はデータグラム全体の長さを指定するもので、ヘッダが8バイトであるため8を引いた値がペイロード長である。IPv4ではIPヘッダが20バイトあるため、実際は65,515が上限値となる。IPv6では約42億バイトまでの長大なデータグラムを扱う拡張仕様もある。
チェックサムは誤り訂正符号で、伝送途上で生じたデータの誤りを受信側で検知することができる。IPヘッダの先頭からペイロードの末尾(IPデータグラム全体)を2バイトずつに区切り、ビット反転(1の補数)して足し合わせる。結果を更にビット反転したものがチェックサムとなる。計算に用いるIPヘッダとUDPヘッダは本物のデータの一部の値をゼロに置き換えた疑似ヘッダが用いられる。
(2023.3.28更新)