TCPとUDPの違いは何ですか？
TCPとUDPはどちらもインターネット上でデータビットを送信するために使用されるプロトコルですが、設計と目的の点で異なります。
TCPは、速度のコストで信頼性の高い正確なデータ送信を提供しますが、UDPは信頼性のコストでより高速なデータ送信を提供します。
TCPとUDPの重要な違いは次のとおりです。

** tcp **：

* TCP（トランスミッションコントロールプロトコル）は、IPネットワーク上の接続指向のストリームです。
*これは、すべての送信されたパケットが正しい順序で目的地に到達することを保証します。
* TCPは、効率的で信頼性の高いデータ転送用に設計されています。
*ハンドシェイクを通じてセッションを確立して、データを正常に配信します。
*データパケットが正常に転送できない場合、再び送信されます。
* TCPはパケットシーケンスを使用します。これにより、大量のデータが小さなユニットに分割され、情報が正常に送信されるようになり、次のパケットに移動する前に確認を受信します。
* TCPでは、ネットワーク接続を確立するために、送信者とターゲットの間の多くの前後のデータ交換が必要です。
* TCPは、Webページ、データベース情報、電子メールなど、信頼できる正確なデータ送信が必要なアプリケーションに適しています。
* TCPは、エラーチェックと再送信に必要な追加のオーバーヘッドのため、一般にUDPよりも遅いです。

** udp **：

* UDP（ユーザーデータグラムプロトコル）は、接続のないプロトコルです。通信はデータグラム指向です。
*整合性は、単一のデータグラムでのみ保証されています。データグラムは目的地に到達し、故障しないか、まったく到着しない可能性があります。
* UDPは、データの送信中に確認のために停止せず、紛失したパケットを必ずしも再設定しません。
* UDPは、より高速なデータ送信用に設計されており、一般的に、ビデオやVoice over Internet Protocol（VOIP）トラフィックなどの時間に敏感な送信に使用されます。
* UDPは、フロー制御またはエラー修正の形式がないため、TCPよりも高速です。
* UDPは、パケットの遅延がパケットの損失よりも深刻な場合に主に使用されます。
* UDPは、前後の接続ハンドシェイクを必要としないため、「火と忘却」プロトコルとして知られています。
* UDPは、オンラインゲーム、ライブビデオ/オーディオストリーミング、DNSクエリなど、信頼性よりも速度を優先するアプリケーションに使用されます。
* UDPは、分散型サービス拒否（DDOS）攻撃の影響を受けやすい場合があります。