web-dev-qa-db-ja.com

TCPに対するUDPの利点は?

TCPは、パケットの信頼性の高い配信を保証するために、より大きな計算オーバーヘッドを持っています。しかし、最近のネットワークは高速であるため、DPのパフォーマンスがTCPの信頼性を上回る

TCPに対するUDPのその他の特別な利点はありますか?

7
Tanay

UDPがTCPよりも優位に立つ2つのケースを見ることができます。

まず、UDPの魅力的な機能の1つは、失われたパケットを再送信する必要がなく、接続設定も行わないため、データの送信にかかる遅延が少ないことです。この低い遅延により、UDPはオーディオやビデオなどの遅延に敏感なアプリケーションにとって魅力的な選択肢になります。

次に、マルチキャストアプリケーションは、ポイントツーマルチポイントを実行する必要があるため、UDP上に構築されます。マルチキャストアプリケーションにTCPを使用するのは難しいでしょう。これは、送信者が複数の受信者の再送信/送信レートを追跡する必要があるためです。

9
Manoj Pandey

それはあなたの使用法に依存します。アプリケーションがVoiceover IPのように時間に敏感な場合は、パケットの欠落を気にする必要はありません。あなたが気にするのはその場合の遅れです。

この答えを見てください: TCPと実際のUDPの例は何ですか?

ウィキペディア関連のセクションもご覧ください: http://en.wikipedia.org/wiki/User_Datagram_Protocol#Comparison_of_UDP_and_TCP

4
Fabien

Facebookは、TCP/IPではなくUDP接続を使用してMemcachedサーバーに接続します

2
kscius

udpは、送信されるデータに対するアプリケーションレベルの制御を向上させます。データはudpセグメントにパッケージ化され、すぐにネットワーク層に渡されるため、飾り気のないセグメント配信サービスが監視されます。

接続を確立する必要がないため、遅延はありません(実際のデータ転送の前にハンドシェイクが必要なtcpとは異なります)

エンドシステムで接続状態を維持する必要はありません(つまり、送信および受信バッファー、輻輳制御パラメーター、シーケンスおよび確認応答番号パラメーターは必要ありません)。したがって、よりアクティブなクライアントをサポートできます。

Udpの小さなパケットヘッダーオーバーヘッド(8バイトのみ)。tcpには20バイトのヘッダーがあります。

2
N Shylaja

一定のデータフロー、バルクデータを必要とし、信頼性よりも高速性を必要とするアプリケーションは、UDP overTCPを使用します。

2
nikhil kadam