ATCP
コネクション型の信頼性重視プロトコル。通信開始時に3ウェイハンドシェイク(SYN→SYN/ACK→ACK)で接続を確立し、シーケンス番号と確認応答(ACK)により到達確認と順序保証を行います。パケットロス時は自動的に再送します。Webブラウジング・メール送信・ファイル転送など、データ欠損が許されない用途で使われます。
3ウェイハンドシェイクで接続確立
再送制御・順序制御で信頼性確保
フロー制御・輻輳制御を備える
HTTP/HTTPS・SMTP・FTPなどで利用
TCP(Transmission Control Protocol)とUDP(User Datagram Protocol)はトランスポート層の代表的プロトコル。TCPはコネクション型で再送制御により信頼性を確保し、UDPはコネクションレス型で低遅延・高速転送を実現します。両者の特性差は応用情報技術者試験で頻出論点です。
| 観点 | TCP | UDP |
|---|---|---|
| 正式名称 | Transmission Control Protocol | User Datagram Protocol |
| コネクション | コネクション型(3ウェイハンドシェイク) | コネクションレス型 |
| 信頼性 | 高い(再送制御・順序制御あり) | 低い(再送なし・ベストエフォート) |
| 通信速度 | 相対的に遅い(オーバーヘッド大) | 速い(ヘッダ小・制御少) |
| ヘッダ長 | 20バイト以上(可変) | 8バイト固定 |
| フロー制御 | あり(ウィンドウ制御) | なし |
| 主な用途 | HTTP/HTTPS、SMTP、FTP、SSH | DNS、DHCP、SNMP、VoIP、ストリーミング |
| ポート番号 | 0〜65535 | 0〜65535(TCPと独立) |
コネクション型の信頼性重視プロトコル。通信開始時に3ウェイハンドシェイク(SYN→SYN/ACK→ACK)で接続を確立し、シーケンス番号と確認応答(ACK)により到達確認と順序保証を行います。パケットロス時は自動的に再送します。Webブラウジング・メール送信・ファイル転送など、データ欠損が許されない用途で使われます。
3ウェイハンドシェイクで接続確立
再送制御・順序制御で信頼性確保
フロー制御・輻輳制御を備える
HTTP/HTTPS・SMTP・FTPなどで利用
コネクションレス型の高速優先プロトコル。事前の接続確立なしにデータグラムを送出し、再送制御も順序保証もしません。ヘッダが8バイトと小さくオーバーヘッドが少ないため低遅延ですが、データの到達は保証されません。DNS問合せ・動画ストリーミング・VoIP・オンラインゲームなど即時性重視の通信に向きます。
コネクションレスで接続確立不要
再送なし・順序保証なしのベストエフォート
ヘッダが8バイト固定で軽量
DNS・VoIP・ストリーミングで利用
「TCP=信頼性・コネクション型・重い、UDP=速度・コネクションレス・軽い」で整理。Web系はTCP、リアルタイム系はUDP。
Q1. TCPに関する記述として、適切なものはどれか。
正解:2. 3ウェイハンドシェイクで接続を確立し、再送制御を行う
TCPはコネクション型で3ウェイハンドシェイクにより接続を確立し、シーケンス番号と確認応答で再送制御・順序制御を行う。DNSやVoIPはUDPが主に使われる。
Q2. UDPが適しているアプリケーションとして、適切なものはどれか。
正解:3. リアルタイム動画ストリーミング
UDPは再送制御がなく低遅延のため、多少のパケット欠損より即時性が重視されるリアルタイム動画ストリーミングやVoIPに適する。銀行取引・メール・Web閲覧はTCPを使う。