TCPとUDPの違い
ネットワークの説明でよく出てくる言葉に、
「TCP」「UDP」というものがあります。
名前は聞いたことがあっても、
何がどう違うのかが曖昧なまま使われていることも少なくありません。
結論から言うと、
TCPとUDPの違いは「確実さを優先するか、速さを優先するか」です。
TCPとは何か
TCPは、
データを確実に相手へ届けることを重視する通信方式です。
TCPでは、
- データが届いたか確認する
- 順番どおりに並べ直す
- 途中で欠けたら再送する
といった制御が行われます。
そのため、
- Webページ表示
- ファイル転送
- メール送信
など、
正確さが重要な通信で使われます。
UDPとは何か
UDPは、
データを素早く送ることを重視する通信方式です。
UDPでは、
- 届いたかどうかを確認しない
- 順番が前後しても気にしない
- 再送を行わない
といった特徴があります。
そのため、
- 音声通話
- 動画配信
- オンラインゲーム
など、
多少欠けても遅れないことが重要な通信で使われます。
なぜ2種類あるのか
すべての通信で
「確実さ」と「速さ」の両方を最大にすることはできません。
- 確実さを高めると遅くなる
- 速さを優先すると欠ける可能性がある
用途に応じて選べるようにするため、
TCPとUDPの2つが用意されています。
TCPとUDPの役割分担
役割の違いを整理すると、次のようになります。
- TCP
- 正確さを優先
-
データの整合性を重視
-
UDP
- 速さを優先
- リアルタイム性を重視
どちらが良い・悪いではなく、
目的に合ったものを使うことが重要です。
処理側から見た違い
処理側では、
- どの通信で確実さが必要か
- どの通信で速さが必要か
を考えて、
TCPかUDPを選択します。
ネットワークは、
選ばれた方式に従ってデータを運びます。
まとめ
TCPとUDPの違いは、
- TCP:確実さを重視する通信
- UDP:速さを重視する通信
という点にあります。
この考え方を理解しておくと、
次に学ぶ
「内部ネットワークと外部ネットワークの違い」
が、より整理された形で見えてきます。


コメント