UDP の特徴
UDP プロトコルは非常にシンプルで、IP 層にほとんど機能を追加しません。 UDP プロトコルのいくつかの機能を見てみましょう:
UDP はコネクションレスであり、ベスト エフォートを実現します。データを送信する前に事前に通知することはなく、ただ送信するだけで、受信できるかどうかは関係ありません。
UDP はメッセージ指向であり、アプリケーションがどのようなコンテンツを提供しても、コンテンツの前にヘッダーをカプセル化し、その下の IP 層に転送します。内容の大小は関係なく、いただいたものは何でもお送りします。頭を使わずに動作させるには、アプリケーション プロセスは適切なサイズを選択する必要があります。大きすぎるデータパケットがIP層で分割されることを防ぐため、マーケティング効率が向上します。
UDP は 1 対 1、1 対多、多対多の通信をサポートしていますが、TCP がポイントツーポイント通信のみをサポートしていることから判断すると、UDP はかなり良い仕事をしていること。
UDP ヘッダーは単純で、固定の 8 バイトです。
UDP の上記の特性に基づいて、そのアプリケーション シナリオのいくつかを推測できます。
比較的良好なネットワークと良好なネットワークを備えた環境に適しています。パケット損失に対しては敏感ではありません。
DHCP プロトコルなどのブロードキャストが必要なシナリオでは、ブロードキャストが必要なため、UDP プロトコルが使用されます。
ライブ ビデオ ブロードキャストなど、伝送効率が高く、速度が速いシナリオでは、通常、ライブ ビデオ ブロードキャストの数フレームが失われることは重要ではありません。
UDP ヘッダー形式
前述したように、UDP ヘッダーは固定の 8 バイトです。 TCP と比較して、そのヘッダーのオーバーヘッドは非常に小さいです。
送信元ポート番号、2 バイト占有
宛先ポート番号、2 バイト占有
ヘッダーの長さは 2 バイトを占めます
チェックサムは 2 バイトを占めます
宛先ホストが不正なポート番号を持つ UDP パケットはパケットを破棄し、「ポートに到達できません」という ICMP エラー メッセージを送信元ホストに送信します。 traceroute コマンドは、この機能を使用して 2 つのホスト間のパス情報を取得します。
UDP の検証方法は少し特殊で、検証する際にゼロ時点のヘッダに 12 バイトの疑似ヘッダを付加する必要があります。擬似ヘッダは検証のみに使用され、検証が完了すると破棄されます。また、ヘッダーのみをチェックするIPデータグラムとは異なり、ヘッダーとデータ部分をチェックします。
関連する推奨事項: 「Linux ビデオ チュートリアル 」
以上がUDPプロトコルの特徴とヘッダ形式の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。