NWネットワークスペシャリスト試験 午前Ⅱ

令和6年度春期 ネットワークスペシャリスト 午前Ⅱ 問9

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

ホストAからホストBにTCPを用いてデータを送信するとき,TCPセグメントのシーケンス番号と受信確認番号(肯定応答番号)に関する記述のうち,適切なものはどれか。

選択肢

  1. ア
    AがBからの応答を待たずに,続けて送信する場合のシーケンス番号は,直前に送信したTCPセグメントのシーケンス番号と送信データのオクテット数の和である。
  2. イ
    Aは,送信するTCPセグメントのシーケンス番号と受信確認番号を0から1ずつ増加させ,最大値65、535に達すると0に戻す。
  3. ウ
    Bが受信したTCPセグメントにおいて,受信確認番号がシーケンス番号より小さい場合は,そのTCPセグメントはエラー後に再送信されたものである。
  4. エ
    Bは,受け取ったTCPセグメントのシーケンス番号を受信確認番号として応答する。
解き方のヒントを見る

番号がどちらの向きの基準かを区別する

TCPの二つの番号を検討するときは、それぞれがどちらの端末が送るデータを基準に数えているのかを最初に区別しておくと、送信側と受信側の視点が混ざらず整理しやすくなります。一方の端末から見た値と相手から見た値を取り違えないことが鍵です。

この問題で問われていること

問われているのは二つの番号の役割の整理です。通信のある時点で、各番号がどちら側のデータの流れに属し、何を数える目的で使われているのかを、自分の言葉で説明できるかを意識して検討してください。

視点

TCPでは一つの接続上で双方向にデータが流れ、各端末は自分の送信と相手からの受信を同時に扱います。番号を読むときは、誰が送り、誰が受け取り、どの向きの流れの話なのかを先に明示してから考えると、視点の混同を防げます。

確認ポイント

  • 各番号について、どちらの端末が送ったデータの流れに関する値なのかを最初に書き出したか
  • 考えている途中で、送信側の立場と受信側の立場を無意識に入れ替えていないか
  • 片方向の流れだけでなく、逆向きの流れにも同じ観点を当てはめて整理できたか
正解と解説を見る

正解

ア

解説

TCPでは、シーケンス番号は送信データの位置を示し、送信データの長さに応じて次の番号が決まります。受信確認番号は受信側が次に期待する位置を示すため、両者の役割を区別することが重要です。

理由

TCPのシーケンス番号は、セグメント単位で1ずつ増える番号ではなく、送信データのストリーム上の位置を示す番号です。したがって、次に送るセグメントの番号は、直前の番号と送信データのオクテット数から決まる。

比較

受信確認番号は、受信したセグメントのシーケンス番号をそのまま返すものではなく、受信側が次に受け取りたいデータの位置を示します。番号の大小だけで再送の有無を断定することもできない。

選択肢ア(正解)

これは正解だよ。TCPでは、連続して送るデータの位置をシーケンス番号で管理する。次のセグメントは、直前の番号に、そのセグメントで運んだ送信データのオクテット数を加えた位置から始まるため、応答を待たずに送る場合にもこの記述が適切である。

選択肢イ

これは不正解だよ。シーケンス番号は、送信のたびに0から1ずつ増える番号ではなく、送信データの位置を表す。また、TCPの番号空間を最大値65,535で扱って0に戻すという説明も適切ではない。

選択肢ウ

これは不正解だよ。受信確認番号とシーケンス番号の大小関係だけから、そのセグメントがエラー後に再送されたものだとは判断できない。確認番号は、受信側が次に期待するデータ位置を示す番号である。

選択肢エ

これは不正解だよ。受信確認番号は、受け取ったセグメントのシーケンス番号をそのまま返す番号ではない。受信側が連続して受け取ったデータを踏まえ、次に受信したいデータの位置を示して応答する。

学習のポイント

シーケンス番号と受信確認番号の意味、増加単位、応答値の関係を整理する。

出典:独立行政法人 情報処理推進機構(IPA)令和6年度春期 ネットワークスペシャリスト試験 午前Ⅱ 問9(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針