通信プロトコル (全69問中5問目)
No.5
クライアントAがポート番号8080のHTTPプロキシサーバBを経由してポート番号80のWebサーバCにアクセスしているとき,宛先ポート番号が常に8080になるTCPパケットはどれか。
出典:令和元年秋期 問34
- AからBへのHTTP要求及びCからBへのHTTP応答
- AからBへのHTTP要求だけ
- BからAへのHTTP応答だけ
- BからCへのHTTP要求及びCからBへのHTTP応答
分類
テクノロジ系 » ネットワーク » 通信プロトコル
正解
イ
解説
ポート番号とは、コンピュータがデータ通信を行う際に通信先のプログラムを特定するための番号のことです。ネットワーク上で相手コンピュータにデータを送信する場合、通信相手のコンピュータはIPアドレスで指定しますが、そのコンピュータで動いているどのプログラムにデータを送るかを指定する情報がポート番号です。IPアドレスを建物の住所に例えるなら、ポート番号は部屋番号に相当します。
クライアントがサーバに対してサービスを要求するパケットを送信する際には、ポート番号にサービスを意味する番号を指定します。例えば、HTTPであれば80/TCP、SMTPであれば25/TCP、DNSクエリであれば53/UDPを使います。HTTPでは通常80番(HTTPSは443番)を通信に使用しますが、8080番ポートは代替HTTPポートとされ、多くのプロキシサーバがこのポートでサービスを受け付けています。
TCPとUDPのヘッダーには「宛先ポート番号」と「送信元ポート番号」というフィールドがあります。クライアントがサーバに対してサービスを要求する際、宛先ポート番号には、サービス提供側であるサーバーのポート番号が設定されます。一方、サーバからクライアントに応答が送られる際には、クライアントのポート番号が宛先ポート番号として使用されます。
設問では、クライアントA-プロキシサーバB(8080)-WebサーバC(80) という経路で通信が行われるので、次のような流れになります。
クライアントがサーバに対してサービスを要求するパケットを送信する際には、ポート番号にサービスを意味する番号を指定します。例えば、HTTPであれば80/TCP、SMTPであれば25/TCP、DNSクエリであれば53/UDPを使います。HTTPでは通常80番(HTTPSは443番)を通信に使用しますが、8080番ポートは代替HTTPポートとされ、多くのプロキシサーバがこのポートでサービスを受け付けています。
TCPとUDPのヘッダーには「宛先ポート番号」と「送信元ポート番号」というフィールドがあります。クライアントがサーバに対してサービスを要求する際、宛先ポート番号には、サービス提供側であるサーバーのポート番号が設定されます。一方、サーバからクライアントに応答が送られる際には、クライアントのポート番号が宛先ポート番号として使用されます。
設問では、クライアントA-プロキシサーバB(8080)-WebサーバC(80) という経路で通信が行われるので、次のような流れになります。
- クライアントは、宛先ポート番号に8080、送信元ポート番号に任意の番号(p1)を設定してプロキシサーバに送信する
- プロキシサーバは、宛先ポート番号に80、送信元ポート番号に任意の番号(p2)を設定してWebサーバに送信する
- Webサーバは、宛先ポート番号にp2、送信元ポート番号に80を設定してプロキシサーバに送信する
- プロキシサーバは、宛先ポート番号にp1、送信元ポート番号に8080を設定してクライアントに送信する