TCPとUDPはトランスポート層のプロトコルで、ポート番号は「どのアプリケーションと通信を行うか」を示す番号である。
🤔 TCP
イメージは「この部屋にある荷物を全部、A市B番地へ送ってください」と伝えると荷造りをして欠損がないように送ってくれる宅配便。
概要
- 相手とコネクションを確立して、連続するデータストリームの送受信する
- 信頼性の必要なアプリケーションで利用されている
参考元: 初めてUNIXで仕事をする人が読む本
機能
- 接続と切断 : 通信相手を呼び出して相手と1対1で通信できる仮想的な通信路を確保すること
- 通信制御 : 送受信するデータ量や送出スピードをコントロール。紛失したデータの再送を行う
- アプリケーションとの仲介 : ポート番号やソケットを使って適切なアプリケーションに通信する
利用例
WebブラウザやEメールなど、FTPクライアントなどで使う。
🎃 UDP
梱包された荷物を届けるだけの一般的な運送屋さんのイメージ。
概要
- コネクションレスで、単一のデータを送受信するのに利用する
- IP、ポート番号を付加して、特定のアプリケーションに到達するデータの塊を授受する
利用例
- DNS : ドメイン名からIPアドレスを調べるときなどに使う
- DHCP : クライアントにIPアドレスなどを自動的に割り当てる