応用情報技術者試験 令和4年秋期 問34
IPの上位階層のプロトコルとして,コネクションレスのデータグラム通信を実現し,信頼性のための確認応答や順序制御などの機能をもたないプロトコルはどれか。
ア:ICMP イ:PPP ウ:TCP エ:UDP
出典 IPA公開[過去問題]:https://www.ipa.go.jp/shiken/mondai-kaiotu/gmcbt80000008smf-att/2022r04a_ap_am_qs.pdf
TCP/IP階層モデルとは
TCP / IPプロトコル群の役割を4つの階層構造で整理したモデルです。
※TCP / IP階層モデルについての出題頻度はそれほど高くありませんが、コンピュータや通信機器、ソフトウェアなどが持つべき機能や仕様を7つの階層に整理した「OSI参照モデル」について出題されることがあります。そちらについては各層(特に第2層~第4層)の順番とそれぞれの層で使うプロトコルを覚えておいた方がいいでしょう。
TCP(Transmission Control Protocol)とは
トランスポート層のプロトコルの1つです。
通信相手(サーバや他のコンピュータなど)と通信を開始する際に「3wayハンドシェイク」という3段階のやり取りを行います。この「3wayハンドシェイク」は通信相手からの反応を確認してから通信を始めるので「コネクション型」と呼ばれ、相手にデータが届かなかった場合は届かなかったデータを再送するので高い信頼性があります。その一方で通信相手の確認など煩雑な作業があるため、処理が重く、リアルタイム性が必要な通信には不向きです。
UDP(User Datagram Protocol)とは
トランスポート層のプロトコルの1つです。
通信相手(サーバや他のコンピュータなど)と通信を開始する際に、TCPと違い、「3wayハンドシェイク」を行いません。通信相手の反応を確認せずに通信を始めるので「コネクションレス型」と呼ばれています。TCPが行う「3wayハンドシェイク」を行わないため、処理が軽いのでリアルタイム性が必要な通信に向いています。その一方でデータが相手に届かなかった場合でも再送をしないため、TCPに比べて信頼性が低いです。
問題文にある「IPの上位階層」とはトランスポート層のことなのでここでは選択肢が「TCP」「UDPの2つに絞られます。
正解は、「エ:UDP」です。
※選択肢にある「ICMP」ですが、主に対象となるコンピュータまでの通信経路に障害がないかを確認するために使用するプロトコルです。コマンドプロンプトで「ping 通信相手のIPアドレス」を使うと「ICMPエコー要求」という信号を送って通信経路に障害がないかを確認します。