TCPの主なオプションに関するネットワークスペシャリスト試験問題
了解です。
TCPオプションの Kind 0, 1, 2, 4, 5 それぞれについて、
- バイト長(Length)
- 意味(Purpose)
を問う 合計20問(各Kind 4問) を作成します。
形式はいつもの「選択式+正解+解説」方式です。
※オプションのLengthはKind・Lengthフィールド含めた全バイト数です。
Kind 0: End of Option List (EOL)
■ 問題1
TCPオプションKind 0の意味として正しいものはどれか。
A. オプションリストの終了を示す
B. MSSを指定する
C. ウィンドウスケーリングを行う
D. SACK対応を示す
【正解】A
【解説】Kind 0は「End of Option List」で、オプションの終了を示すマーカーとして使われる。
■ 問題2
TCPオプションKind 0のバイト長は何バイトか。
A. 1
B. 2
C. 3
D. 4
【正解】A
【解説】Kind 0はKindフィールドのみで構成されるため、全長は1バイト。
■ 問題3
TCPオプションKind 0が使われるのはどのような場合か。
A. 残りのオプション領域をパディングするとき
B. MSSを交渉するとき
C. 遅延ACKを設定するとき
D. MTUを変更するとき
【正解】A
【解説】オプション終了を明示し、残り領域をパディングとして利用できる。
■ 問題4
Kind 0が存在する場合、TCPスタックはどう処理するか。
A. 残りのオプションを読み飛ばす
B. すぐにRSTを送る
C. SYNを再送する
D. 接続を切断する
【正解】A
【解説】Kind 0はオプション終了なので、それ以降は読み飛ばす。
Kind 1: No-Operation (NOP)
■ 問題5
TCPオプションKind 1の意味はどれか。
A. オプション終了
B. 無操作(パディング)
C. MSS設定
D. ウィンドウスケーリング
【正解】B
【解説】Kind 1はNo-Operation(NOP)で、パディング用の1バイト。
■ 問題6
TCPオプションKind 1のバイト長は何バイトか。
A. 1
B. 2
C. 4
D. 可変長
【正解】A
【解説】NOPは1バイトで固定。Kindフィールドのみで構成される。
■ 問題7
Kind 1が使われる理由は何か。
A. オプションの境界を4バイト単位に揃えるため
B. パケット暗号化のため
C. セグメントサイズの交渉のため
D. 輻輳制御のため
【正解】A
【解説】TCPオプションは4バイト境界に揃える必要があるため、NOPで埋める。
■ 問題8
Kind 1の処理方法として正しいものはどれか。
A. 無視して次のバイトを読む
B. 接続を切断する
C. パケットを破棄する
D. SYNを再送する
【正解】A
【解説】NOPは単に読み飛ばすだけ。
Kind 2: Maximum Segment Size (MSS)
■ 問題9
Kind 2の意味はどれか。
A. MSSを指定する
B. ウィンドウサイズを拡張する
C. SACKを有効化する
D. タイムスタンプを有効化する
【正解】A
【解説】Kind 2はMSSオプションで、TCPで送信できる最大セグメント長を指定する。
■ 問題10
Kind 2のバイト長は何バイトか。
A. 2
B. 3
C. 4
D. 5
【正解】C
【解説】Kind(1B)+Length(1B)+MSS値(2B)=4バイト固定。
■ 問題11
MSSオプションが交換されるのはどのタイミングか。
A. 3ウェイハンドシェイク時のSYNパケット
B. データ送信中
C. ACK送信時
D. 接続終了時
【正解】A
【解説】MSSは接続確立時にのみ送られる(SYNに含まれる)。
■ 問題12
MSS値が経路MTUより大きい場合どうなるか。
A. フラグメンテーション発生
B. 接続切断
C. 再送制御停止
D. ウィンドウサイズ変更
【正解】A
【解説】経路MTUより大きなMSSを使うと断片化が必要になる。
Kind 4: SACK Permitted
■ 問題13
Kind 4の意味はどれか。
A. SACK対応を示す
B. タイムスタンプ交換
C. MSS設定
D. ウィンドウ拡張
【正解】A
【解説】Kind 4はSACK Permittedで、選択的確認応答(SACK)を利用できることを通知する。
■ 問題14
Kind 4のバイト長は何バイトか。
A. 1
B. 2
C. 3
D. 可変長
【正解】B
【解説】Kind(1B)+Length(1B)=2バイト固定。
■ 問題15
Kind 4が含まれていない場合どうなるか。
A. SACKは使えない
B. MSSが自動設定される
C. パケットは破棄される
D. ウィンドウスケーリングが有効になる
【正解】A
【解説】SACK Permittedがない場合、SACKは使用できない。
■ 問題16
SACKが有効になるメリットは何か。
A. 再送データ量の削減
B. 暗号化強化
C. 輻輳制御無効化
D. MTU拡張
【正解】A
【解説】SACKにより欠落したデータのみ再送でき、効率が上がる。
Kind 5: SACK
■ 問題17
Kind 5の意味はどれか。
A. 実際に受信済みのデータ範囲を通知する
B. MSS値を通知する
C. ウィンドウサイズを通知する
D. MTU値を通知する
【正解】A
【解説】Kind 5はSACKオプションで、受信済みのシーケンス範囲を送信側に知らせる。
■ 問題18
Kind 5のバイト長はどう決まるか。
A. 固定長
B. 通知する範囲の数によって変わる
C. 常に2バイト
D. 常に4バイト
【正解】B
【解説】SACKオプションは可変長で、1つの範囲につき8バイト(開始+終了シーケンス)を必要とする。
■ 問題19
SACKが有効になるのはどの条件下か。
A. 双方がSACK Permitted(Kind 4)を送っている場合
B. 送信側のみがSACK Permittedを送った場合
C. 受信側のみがSACK Permittedを送った場合
D. MSS値が一定以上の場合
【正解】A
【解説】SACKは双方がSACK Permittedを送って初めて有効になる。
■ 問題20
SACKの主な効果はどれか。
A. 再送制御の効率化
B. MTU拡張
C. 暗号化強化
D. パケット順序保証
【正解】A
【解説】SACKにより欠落部分だけを再送でき、再送制御が効率化される。
これでKind 0, 1, 2, 4, 5それぞれについて、
バイト長と意味を含めた20問セットになっています。
もし希望があれば、この次は**Kind 8(タイムスタンプ)やKind 3(ウィンドウスケーリング)**も同じ形式で追加できます。
コメント
コメントを投稿