ICDロゴ

UDP (User Datagram Protocol)

【ユー・ディー・ピー】

最終更新日: 1998/09/30

 TCP/IPプロトコルにおいて、データグラム型の通信機能を提供するためのプロトコル。OSI参照モデルでは、トランスポート層の機能に相当する。TCPと違ってプロトコルの処理が軽いため、高速であるという特徴がある。DNSやDHCP、NFS、tftpなどで使われている。

 UDPは、ネットワーク層のプロトコルであるIPプロトコルをほぼそのままアプリケーションから使えるようにしただけプロトコルである。アプリケーションから渡されたデータに対して、ポート番号とチェックサムを付加しただけで、それをそのままIPパケットに載せて、送信しているだけである。TCPのように、パケットを受信してもその受信確認を返さないので、送信した側では、相手にパケットが届いたかどうかは分からない。

 このように、UDPは、一方的に相手にデータを送るだけの機能しか持たないプロトコルなので、受信確認やエラー時の再送処理機能が欲しければ、上位のアプリケーションで独自に行なう必要がある。しかし、その分プロトコルとしての処理は軽く、小さなサイズのパケットをやり取りするだけのようなアプリケーション(DNSなど)にとっては、TCPのコネクションのオープンやクローズ、再送などの処理が行われない分、高速で使いやすい。

 また、IPとUDPだけならその実装もあまり難しくないので、tftpやBOOTP、DHCPのような、システムのブートストラップ用プロトコルとしても使われている。ブートストラップ機能は限られたサイズのROMなどに実装しなければならないことが多く、そこにTCPのような複雑なプロトコルを実現するのは困難だからだ。

 このほか、UDPの重要な用途として、ブロードキャストやマルチキャスト通信がある。パケットの宛先アドレスを、ブロードキャストアドレスやマルチキャストアドレスにして送信すると、複数のノードを対象にして、同時に情報を伝えることができる。RIPのようなルーティング情報の一斉通知や、NetBIOSにおける他のノードの検索、NetShowのようなマルチメディアデータのインターネット/イントラネット向けの放送など、広く使われている。

Copyright (C) 2000-2007 Digital Advantage Corp.

アイティメディアの提供サービス

キャリアアップ