ばかげた質問でごめんなさい。
トランスポート層の機能は、メッセージの信頼性の高い配信です。UDPは本質的に信頼性が低いのですが、なぜトランスポート層で使用するのでしょうか。
ありがとう
編集:明確にするために、私はWikiと他のソースを読みました。私の質問は
UDPは信頼性がありません(理由と利点、使用場所などを知っています)。信頼性を意味するトランスポート層ではなく、他の層でUDP(UDP)を使用してみませんか。
ばかげた質問でごめんなさい。
トランスポート層の機能は、メッセージの信頼性の高い配信です。UDPは本質的に信頼性が低いのですが、なぜトランスポート層で使用するのでしょうか。
ありがとう
編集:明確にするために、私はWikiと他のソースを読みました。私の質問は
UDPは信頼性がありません(理由と利点、使用場所などを知っています)。信頼性を意味するトランスポート層ではなく、他の層でUDP(UDP)を使用してみませんか。
ストリームの信頼性よりも、データを一時停止せずにすばやく送信することが重要な場合があります。DNSサーバーとクライアント間のトランザクションは片道1つのパケットのみで構成されるため、DNSはUDPを使用します。パケットが失われた場合、クライアントの要求に応じて再送信されます。
同様に、ストリーミングビデオでは、パケットがときどき失われることが許容されるため、トランスポートプロトコルとしてUDPを使用することがよくあります。TCP同期の結果としてビデオストリームがジッターまたは一時停止(遅延)するのではなく、パケットの損失の結果として画質が低下することが望ましいです。
ゲームもUDPを使用することが多く、エンジンの精度を犠牲にして速度/ユーザーエクスペリエンスを向上させます。
これらの例やその他の例は、ウィキペディアの 記事の関連部分にあります。
編集
UDPはトランスポート層プロトコルであるため、トランスポート層で使用されます。「アプリケーションにエンドツーエンドの通信サービスを提供する」(RFC1122)。
トランスポート層プロトコルでは、信頼性サービスはオプションです。
...信頼性を意味するトランスポート層ではなく
「信頼性」には複数の側面があります。UDPは、破損を防ぐためのチェックサムを提供するという点で信頼できる ことに注意してください。
TCPのようなストリームプロトコルは、遅延の影響を受けやすいアプリケーションに問題を引き起こします。遅延の影響を受けやすいアプリの場合、UDPの自然な制限(混雑時にトラフィックを遮断すること)は大きな恩恵です。
他のレイヤーで使用してみませんか(UDP)
IPデータグラムは、ネクストホップトランジットを行うのに十分小さいように設計されています。UDPデータグラムはIPデータグラムにまたがることができるため、そこにはいくつかの付加価値があります。ただし、TCPがUDPの上の層である場合、UDPのセマンティクスによって制限されます(TCPポートは接続にバインドされますが、UDPデータグラムはバインドされません)。
トランスポート層でUDPが使用される理由は、これらの層の設定方法にあります。UDPは本質的に、アプリケーションとして、またはハードウェア層でではなく、ポイントAからポイントBにデータを転送するためのプロトコルです。
トランスポート層では、信頼性の前提はありませんが、UDPはデータを転送するためのプロトコルです。7層スタイルのネットワークでは、ネットワーク層とセッション層の間のインターフェイスに分類されます。トランスポート層という名前は、単にそれが何をするかを示しています。OSIモデルの詳細については、ウィキペディアを参照してください。
TLDR UDPがトランスポート層にある理由は、UDPがデータトランスポートのプロトコルであり、したがってトランスポート層にあるためです。データ転送を処理するすべてのプロトコルは、このカテゴリに分類されます
トランスポート層クラス
Class 0 - Simple class
Class 1 - Basic error recovery class
Class 2 - Multiplexing class
Class 3 - Error Recovery and multiplexing class
Class 4 - Error detection and recovery class