ネットワークの説明で、
「TCPは信頼性が高い」「UDPは高速」と言われることがあります。
応用情報技術者試験では、
この違いを単なる特徴としてではなく、
何を守り、何を犠牲にしているのかという視点で理解しているかが問われます。
この回では、
TCPとUDPの違いを、
応用情報視点で整理します。
TCPが守っているもの
TCPは、
通信の正確さと順序を守るプロトコルです。
- データが欠けずに届く
- 送った順番どおりに受け取れる
- 途中で失敗したら再送される
これにより、
アプリケーションは
「通信が正しく行われる」前提で処理できます。
TCPが犠牲にしているもの
その代わりに、TCPは
- 接続確立のためのやり取り
- 再送制御
- フロー制御
といった処理を行います。
結果として、
遅延やオーバーヘッドが発生します。
応用情報では、
このコストを理解しているかが重要になります。
UDPが守っているもの
UDPは、
速さとシンプルさを重視したプロトコルです。
- 接続確立をしない
- 再送や順序保証をしない
そのため、
送ったデータは
「届くかどうかは保証しない」前提になります。
UDPが犠牲にしているもの
UDPは、
- データ欠落の検出
- 順序の保証
を行いません。
その代わりに、
低遅延で大量のデータを送れる
という利点を持ちます。
応用情報では、
この割り切りを理解しているかが問われます。
応用情報での典型的な出題意図
午後問題では、
- 確実性が必要な通信
- 多少の欠落より即時性が重要な通信
が対比され、
どちらのプロトコルを選ぶべきかを
判断させる構造になっています。
単に「TCP=安全」「UDP=速い」
という暗記では、対応できません。
実務とのつながり
実務でも、
- ファイル転送
- 業務データ通信
ではTCPが選ばれ、
- 音声・映像
- リアルタイム通知
ではUDPが使われることがあります。
応用情報は、
その選択理由を
説明できるかを見ています。
まとめ
- TCPは正確さと順序を守る
- UDPは速さと軽さを守る
- 応用情報はそのトレードオフを問う
通信方式を見るときは、
「何を優先し、何を捨てているか」
を意識することが重要です。
次回予告
次回は、
「タイムアウトは誰が決めているのか」
を扱います。
通信制御の話に進みます。


コメント