UDPとは?仕組み・TCPとの違い・用途を初心者向けにわかりやすく解説

スポンサードリンク
専門用語

インターネットについて調べていると、「UDP」という言葉を目にすることがあります。

UDPは、インターネット通信で使われる代表的な通信プロトコル(データをやり取りするためのルール)の一つです。

この記事では、「UDPとは何か」「仕組みや特徴」「TCPとの違い」「メリット・デメリット」「具体的な用途」まで初心者向けにわかりやすく解説します。

スポンサードリンク

UDPとは?

UDPとは?

UDP(User Datagram Protocol/ユーザーデータグラムプロトコル)とは、
インターネットなどのIPネットワーク上で、コンピューターやアプリケーション同士がデータを送受信するために使われる通信プロトコルです。

プロトコルとは?初心者でもわかる意味・種類・具体例をわかりやすく解説
プロトコルとは何かを初心者向けにわかりやすく解説。意味・役割・種類(HTTP、FTP、TCP/IPなど)から具体例まで網羅的に紹介。IT初心者でもすぐ理解できます。

簡単に言うと、TCPの高速版のようなものでしょうか。

TCPとは?仕組みやUDPとの違いを初心者にもわかりやすく解説
TCPとは何かを初心者向けにわかりやすく解説しております。TCPの意味や仕組み、3ウェイ・ハンドシェイク、再送制御、TCP/IPとの違い、UDPとの違い、身近な利用例まで詳しくまとめました。

UDPは、OSI参照モデルでいうトランスポート層(第4層)で動作します。

トランスポート層とは、送信元のアプリケーションから送信先のアプリケーションまで、データを届ける役割を担う階層です。

UDPは、できるだけ余分な処理をせず、シンプルにデータを送信するよう設計されています。

そのため、通信相手との接続を確立する処理や、データが届いたかどうかの確認などを行わずに通信できます。
RFC768(インターネット技術の標準仕様や運用ルールを記した公式な文書)では、UDPについて「最小限のプロトコル機構」でメッセージを送信する仕組みとして定義されています。

UDPを身近な例で考えると?

UDPを宅配便にたとえてみましょう。

TCPは、

「荷物を送りました」

「届きました」

「次の荷物を送ります」

というように、確認しながら荷物を届けるイメージです。
一方、UDPは、

「荷物を送ります」

「次の荷物を送ります」

「さらに次の荷物を送ります」

というように、確認に時間をかけず次々に送るイメージです。

そのため、多少の荷物が届かなくても、「とにかく次の情報を早く届けたい」という場面ではUDPが活躍します。

スポンサードリンク

UDPの仕組み

UDPの通信を簡単に表すと、次のようなイメージです。

送信側 → データを送信 → 受信側

TCPの場合は、通信相手との接続を確認したり、データが正しく届いたかを確認したりします。

一方、UDPは基本的に、

「このデータを送ります」→「送信」

というシンプルな流れで通信します。

UDPでは、送信したデータが必ず届くことや、送信した順番どおりに届くことは保証されません。
RFC 768でも、配送や重複防止は保証されないとされています。

このような特徴があるため、UDPは「確実性」よりも「速さ」や「リアルタイム性」を優先したい通信で利用されます。

ポート番号も利用する

UDPでは、ポート番号を使って通信するアプリケーションを識別します。

ポート番号とは、同じコンピューターの中で「どのアプリケーションにデータを渡すのか」を識別するための番号です。

ポート番号とは?仕組みや役割を初心者向けにわかりやすく解説【代表的な番号一覧付き】
ポート番号とは、コンピュータ内で通信先のサービスを識別するための番号です。本記事ではポート番号の意味や仕組み、IPアドレスとの違い、代表的なポート番号一覧、確認方法、セキュリティ対策まで初心者向けにわかりやすく解説します。

例えば、IPアドレスが「建物の住所」だとすると、ポート番号は「建物の中の部屋番号」のようなものと考えると分かりやすいでしょう。

IPアドレスとは?仕組み・種類・確認方法を初心者向けにわかりやすく解説
IPアドレスとは何かを初心者向けにわかりやすく解説します。住所との違い、IPv4・IPv6、グローバルIPアドレスとプライベートIPアドレスの違い、確認方法や仕組みまで図解イメージで紹介します。

UDPのヘッダーには、送信元ポート、宛先ポート、データ長、チェックサムなどの情報が含まれています。

チェックサムとは?仕組みや計算方法を初心者向けにわかりやすく解説
チェックサムとは何かを初心者向けにわかりやすく解説しております。チェックサムの仕組みや計算方法、具体例、CRC・パリティ・ハッシュ値との違い、メリット・デメリット、利用される場面までまとめました。
スポンサードリンク

UDPのメリット

UDPには、主に次のようなメリットがあります。

通信処理がシンプル

UDPはTCPのような接続確立や再送制御などを基本的に行いません。
そのため、通信に必要な処理を少なくできます。

リアルタイム通信に向いている

UDPは、データを受信したかどうかを毎回確認する必要がないため、リアルタイム性が求められる通信に適しています。

例えば、音声や映像などでは、一部のデータが失われても「通信を止めて再送する」より、最新のデータを送り続けるほうが適している場合があります。

通信の遅延を抑えやすい

遅延(レイテンシ)とは、データを送信してから相手に届くまでの時間のことです。
UDPは確認処理などが少ないため、用途によっては低遅延な通信を実現しやすくなります。

スポンサードリンク

UDPのデメリット

便利なUDPですが、注意点もあります。

データが届く保証がない

UDPは、送信したデータが相手に必ず届くことを保証しません。
途中でデータが失われても、UDP自体がTCPのように自動で再送してくれるわけではありません。

データの順番が保証されない

複数のデータを送った場合、送信した順番とは異なる順番で届く可能性があります。

そのため、順番どおりのデータが必要なアプリケーションでは、必要に応じてアプリケーション側で制御する必要があります。

信頼性が必要な通信には向かない場合がある

ファイル転送など、「データが1つでも欠けると困る」通信では、UDPよりもTCPなどの仕組みが適している場合があります。

スポンサードリンク

TCPとUDPの違い

UDPを理解するには、TCPとの違いを知っておくことが重要です。

比較項目TCPUDP
信頼性高い低め
データの再送あり基本的になし
データの順序保証される保証されない
通信処理多い少ない
リアルタイム性UDPより不利な場合がある高い
主な用途Web、メール、ファイル転送などDNS、音声・動画、オンラインゲームなど

簡単に覚えるなら、

TCP=確実性を重視
UDP=速さ・リアルタイム性を重視

と考えると分かりやすいでしょう。

ただし、「UDPは必ずTCPより速い」という単純な意味ではありません。

UDPは接続確立や再送などの仕組みを持たないため、余分な処理を少なくできることが大きな特徴です。
RFC 8085でも、UDPはエンドツーエンドの接続を確立せず、接続確立・終了に伴うオーバーヘッドがないことが特徴として説明されています。

TCPとUDPの違い
スポンサードリンク

UDPはどんなところで使われる?

UDPは、さまざまな通信で利用されています。

DNS

DNS(Domain Name System)は、ドメイン名をIPアドレスに変換する仕組みです。

DNSとは?仕組みやドメインとの関係を初心者向けにわかりやすく解説【DNSサーバーとの違いも紹介】
DNSとは何かを初心者向けにわかりやすく解説しております。DNSの役割や仕組み、DNSサーバーとの違い、ドメインとの関係、DNS設定やよくあるトラブルまで図解イメージでわかりやすく理解できます。

例えば、「example.com」のようなドメイン名から、通信先のIPアドレスを調べるときに利用されます。

ドメインとは?仕組み・取得方法・URLとの違いを初心者向けにわかりやすく解説
ドメインとは何かを初心者向けにわかりやすく解説しております。URLとの違い、サーバーとの関係、独自ドメインのメリット・デメリット、取得方法まで図解イメージで理解できる内容です。
IPアドレスとは?仕組み・種類・確認方法を初心者向けにわかりやすく解説
IPアドレスとは何かを初心者向けにわかりやすく解説します。住所との違い、IPv4・IPv6、グローバルIPアドレスとプライベートIPアドレスの違い、確認方法や仕組みまで図解イメージで紹介します。

DNSでは、短い問い合わせと応答を素早くやり取りする必要があるため、UDPが利用される代表的な例です。

音声・動画通信

音声通話や動画など、リアルタイム性が重要な通信でもUDPが利用されます。

例えば、一瞬の映像が欠けることよりも、通信が止まらずリアルタイムで映像が流れることを優先したいケースがあります。

オンラインゲーム

オンラインゲームでは、プレイヤーの操作やゲーム内の状態などをリアルタイムにやり取りする必要があります。

そのため、状況によってはUDPのような低遅延を重視できる通信方式が適しています。

スポンサードリンク

UDPは「信頼性がない」のではなく、用途に合わせて使う

「UDPはデータが届かないから悪いプロトコル」と考えるのは正しくありません。

UDPは、そもそもTCPのような信頼性確保の機能を最小限にして、効率的なデータ送信を行うことを目的としています。
必要な信頼性をアプリケーション側で実装することも可能です。

つまり、重要なのは、

「確実に届ける必要があるのか」
「多少の欠落よりリアルタイム性を優先するのか」

という目的に応じてTCPとUDPを使い分けることです。

スポンサードリンク

まとめ:UDPとは速さやリアルタイム性を重視した通信プロトコル

UDPとは、User Datagram Protocolの略で、インターネット通信などで利用されるシンプルな通信プロトコルです。

UDPのポイントをまとめると、次のとおりです。

  • UDPはトランスポート層で動作する
  • TCPよりもシンプルな仕組みで通信する
  • 通信相手との接続確立を基本的に行わない
  • データの到達や順序を保証しない
  • 再送制御を基本的に行わない
  • リアルタイム性が重要な通信に向いている
  • DNS、音声・動画通信、オンラインゲームなどで利用される

UDPは「確実に届ける」ことよりも、余分な処理を減らして効率よくデータを送ることを重視したプロトコルです。

ネットワークを理解するうえでは、UDP単体だけでなく、対になる存在であるTCPとの違いも覚えておくと理解が深まります。

タイトルとURLをコピーしました