通信プロトコル (全69問中8問目)
No.8
PCとWebサーバがHTTPで通信している。PCからWebサーバ宛てのパケットでは,送信元ポート番号はPC側で割り当てた50001,宛先ポート番号は80であった。WebサーバからPCへの戻りのパケットでのポート番号の組合せはどれか。
出典:平成31年春期 問34
- [出題歴]
- 基本情報技術者 H28春期 問35
分類
テクノロジ系 » ネットワーク » 通信プロトコル
正解
ア
解説
ポート番号とは、TCP/IP通信において、コンピュータが通信に使用するプログラムを識別するための16ビットの識別子です。16ビットの整数値なので 0~65535番 が存在し、以下のように区分されています。
TCP/IPでは、IPアドレスを指定することで指定した宛先(建物に相当)に情報を届けることができますが、IPアドレスだけでは、その宛先で稼働しているどのプログラム(部屋に相当)がデータを必要としているか、またはどのプログラムからデータが送出されたのかは判別することができません。この通信対象のプログラムを識別するための情報がポート番号です。パケットを受け取った機器は、TCP/UDPヘッダー内のポート番号を確認することで、受信したデータを受け渡すプログラムを決定しています。
設問では、PCからWebサーバ宛てのパケットについて、PCのポート番号が50001番、Webサーバのポート番号が80番としていますが、これはPC上の50001番のプログラムから送信され、Webサーバ上の80番のプログラム(HTTP)が宛先という意味です。WebサーバからPCへの戻りパケットでは、送信元であるPC上の50001番のプログラムに応答を返したいので、宛先ポート番号は50001になります。応答を送信するのはWebサーバ上の80番のプログラム(HTTP)なので、送信元ポート番号は80になります。
したがって「ア」の組合せが正解です。
- 0~1023番 ウェルノウンポート番号
- 利用するプロトコルが決まっている
- 1024~49151番 ユーザーポート番号
- 利用するアプリケーションが決まっている
- 49152~65535番 動的・私用ポート
- 特に割当てがなく、一時的な使用や自動割当てに使われる
TCP/IPでは、IPアドレスを指定することで指定した宛先(建物に相当)に情報を届けることができますが、IPアドレスだけでは、その宛先で稼働しているどのプログラム(部屋に相当)がデータを必要としているか、またはどのプログラムからデータが送出されたのかは判別することができません。この通信対象のプログラムを識別するための情報がポート番号です。パケットを受け取った機器は、TCP/UDPヘッダー内のポート番号を確認することで、受信したデータを受け渡すプログラムを決定しています。
設問では、PCからWebサーバ宛てのパケットについて、PCのポート番号が50001番、Webサーバのポート番号が80番としていますが、これはPC上の50001番のプログラムから送信され、Webサーバ上の80番のプログラム(HTTP)が宛先という意味です。WebサーバからPCへの戻りパケットでは、送信元であるPC上の50001番のプログラムに応答を返したいので、宛先ポート番号は50001になります。応答を送信するのはWebサーバ上の80番のプログラム(HTTP)なので、送信元ポート番号は80になります。
したがって「ア」の組合せが正解です。