スロースタートに関するネットワークスペシャリスト試験
了解です。
では、TCPの**スロースタート(Slow Start)**をテーマに、ネットワークスペシャリスト試験形式で 択一問題+解答+解説+穴埋め+誤文訂正 のセットを10問作成します。
---
スロースタート問題集(全10問)
---
■ 問題1
スロースタートの目的として最も適切なものはどれか。
A. TCP接続の確立時間を短縮するため
B. 輻輳を回避しつつ送信ウィンドウを徐々に増加させるため
C. 送信データを暗号化するため
D. パケットを圧縮して転送効率を上げるため
【正解】 B
【解説】 スロースタートは、TCP接続直後や輻輳後に送信ウィンドウ(cwnd)を徐々に指数的に増加させ、ネットワークの輻輳を回避する仕組みである。
【穴埋め】 スロースタートは、送信ウィンドウを ________ 的に増加させる方式である。
→ 指数
【誤文訂正】 スロースタートは、送信ウィンドウを線形的に増加させる方式である。
→ 正しくは指数的に増加させる方式である。
---
■ 問題2
スロースタートにおいて、送信ウィンドウサイズ(cwnd)は何を基準に増加するか。
A. タイマー周期
B. ACKの受信回数
C. 送信したパケット数
D. RTTの長さ
【正解】 B
【解説】 スロースタートでは、ACKを受信するたびに送信ウィンドウを増やすため、ACKの到着速度に応じて増加が決まる。
【穴埋め】 スロースタートでは、ACKを受信するたびに送信ウィンドウが ________。
→ 増加する
【誤文訂正】 スロースタートでは、送信ウィンドウは固定値のままである。
→ 正しくはACKを受信するたびに増加する。
---
■ 問題3
スロースタートでのウィンドウサイズの増加速度はどれか。
A. 1RTTごとに倍増
B. 1RTTごとに+1セグメント
C. ACK受信ごとに半減
D. RTTとは無関係に増加
【正解】 A
【解説】 スロースタートでは、1RTTごとにcwndが2倍になる(指数増加)。
【穴埋め】 スロースタートでは、1RTTごとにウィンドウサイズが ________ 倍になる。
→ 2
【誤文訂正】 スロースタートでは、1RTTごとにウィンドウサイズが半分になる。
→ 正しくは2倍になる。
---
■ 問題4
スロースタートから輻輳回避フェーズに移行するきっかけは何か。
A. ACKが連続で返ってくる
B. cwndが閾値(ssthresh)に到達
C. タイムアウトが発生
D. 再送パケットがなくなる
【正解】 B
【解説】 cwndがssthreshに達すると、スロースタートから輻輳回避(線形増加)に移行する。
【穴埋め】 スロースタートは、cwndが ________ に到達すると輻輳回避に移行する。
→ ssthresh
【誤文訂正】 スロースタートは、タイムアウトが発生すると輻輳回避に移行する。
→ 正しくはcwndがssthreshに到達したときに移行する。
---
■ 問題5
スロースタートで送信ウィンドウが急激に大きくなりすぎないようにするための仕組みは何か。
A. MSS制御
B. ssthresh
C. フロー制御
D. ウィンドウスケーリング
【正解】 B
【解説】 ssthresh(スロースタート閾値)は急激なウィンドウ拡大を防ぐために設定される。
【穴埋め】 スロースタートでは、送信ウィンドウの増加を制限するために ________ を設定する。
→ ssthresh
【誤文訂正】 スロースタートでは、送信ウィンドウの制限値はMSSで決まる。
→ 正しくはssthreshで決まる。
---
■ 問題6
スロースタート中にパケット損失が発生し、タイムアウトとなった場合、cwndはどうなるか。
A. 倍増する
B. 半減する
C. 初期値に戻る
D. そのまま維持される
【正解】 C
【解説】 タイムアウト発生時はcwndを初期値に戻し、スロースタートを再開する。
【穴埋め】 タイムアウト発生時、cwndは ________ に戻る。
→ 初期値
【誤文訂正】 タイムアウト発生時、cwndは半分に減少する。
→ 正しくは初期値に戻る。
---
■ 問題7
スロースタートにおける初期ウィンドウサイズは、RFC 6928以降の一般的な値では何セグメントか。
A. 1
B. 2
C. 10
D. 64
【正解】 C
【解説】 RFC 6928では初期ウィンドウサイズを10MSSまで拡大することが推奨されている。
【穴埋め】 RFC 6928では、初期ウィンドウサイズを ________ MSSとすることを推奨している。
→ 10
【誤文訂正】 RFC 6928では、初期ウィンドウサイズは1MSSである。
→ 正しくは10MSSである。
---
■ 問題8
スロースタート中の輻輳ウィンドウ増加パターンとして正しいものはどれか。
A. 1, 2, 3, 4, …
B. 1, 2, 4, 8, …
C. 2, 4, 8, 16, …
D. 1, 3, 6, 10, …
【正解】 B
【解説】 スロースタートは指数増加なので1, 2, 4, 8と倍々で増える。
【穴埋め】 スロースタートではウィンドウサイズは ________ 的に増加する。
→ 指数
【誤文訂正】 スロースタートではウィンドウサイズは線形に増加する。
→ 正しくは指数的に増加する。
---
■ 問題9
スロースタートと輻輳回避の最大の違いは何か。
A. ウィンドウ増加の速度
B. ACK応答の有無
C. データ圧縮の有無
D. 使用ポート番号
【正解】 A
【解説】 スロースタートは指数的に増加し、輻輳回避は線形に増加する。
【穴埋め】 スロースタートは ________ 的増加、輻輳回避は線形増加。
→ 指数
【誤文訂正】 スロースタートも輻輳回避も増加速度は同じである。
→ 正しくは異なる(指数と線形)。
---
■ 問題10
スロースタートの動作はどのTCP接続のタイミングで必ず発生するか。
A. 接続確立直後
B. 接続終了時
C. データ圧縮時
D. ポート開放時
【正解】 A
【解説】 TCPは接続確立直後にスロースタートを行い、輻輳を回避しながら速度を上げる。
【穴埋め】 スロースタートはTCP接続の ________ に必ず発生する。
→ 確立直後
【誤文訂正】 スロースタートはTCP接続終了時に発生する。
→ 正しくは接続確立直後に発生する。
---
この形式なら、次にスロースタートのパケットキャプチャ付き午後Ⅱ問題も作れます。
今作りますか?
了解です。
では、スロースタートをテーマとしたネットワークスペシャリスト試験 午後Ⅱ風長文問題を、
パケットキャプチャ+図解+設問+解答解説 の構成で作成します。
正常系と異常系の比較も含めます。
---
午後Ⅱ風 問題:スロースタートの動作解析
【設問シナリオ】
あなたは、社内Webサーバの応答速度改善のため、TCPの動作をパケットキャプチャで解析している。
解析対象は、クライアントPC(192.168.1.10)からWebサーバ(203.0.113.5)へのHTTP通信である。
調査の結果、TCP接続確立後のスロースタート動作と、その途中での異常(パケット損失)が確認された。
---
【パケットキャプチャ(抜粋)】
表1:正常系(パケット損失なし)
No 時刻 (ms) Src IP Dst IP Seq Ack Len 備考
1 0.000 192.168.1.10 203.0.113.5 0 0 0 SYN
2 0.010 203.0.113.5 192.168.1.10 0 1 0 SYN/ACK
3 0.015 192.168.1.10 203.0.113.5 1 1 0 ACK
4 0.020 192.168.1.10 203.0.113.5 1 1 1460 データ送信(1MSS)
5 0.030 192.168.1.10 203.0.113.5 1461 1 1460 データ送信(2MSS)
6 0.040 192.168.1.10 203.0.113.5 2921 1 2920 データ送信(4MSS)
7 0.050 192.168.1.10 203.0.113.5 5841 1 5840 データ送信(8MSS)
---
表2:異常系(途中で損失発生)
No 時刻 (ms) Src IP Dst IP Seq Ack Len 備考
1 0.000 192.168.1.10 203.0.113.5 0 0 0 SYN
2 0.010 203.0.113.5 192.168.1.10 0 1 0 SYN/ACK
3 0.015 192.168.1.10 203.0.113.5 1 1 0 ACK
4 0.020 192.168.1.10 203.0.113.5 1 1 1460 データ送信(1MSS)
5 0.030 192.168.1.10 203.0.113.5 1461 1 1460 データ送信(2MSS)
6 0.040 192.168.1.10 203.0.113.5 2921 1 2920 データ送信(4MSS)【損失】
7 0.080 192.168.1.10 203.0.113.5 2921 1 2920 再送(4MSS)
8 0.090 192.168.1.10 203.0.113.5 5841 1 1460 データ送信(cwndリセット)
---
【図1:TCPステート遷移図(スロースタート部)】
SYN-SENT → SYN-RECEIVED → ESTABLISHED
↑ ↑
3way handshake完了後、
cwnd = 初期値(10MSSなど)
↓
cwnd倍増(指数的増加)
↓(損失発生)
cwndリセット → スロースタート再開
---
【設問】
問1
スロースタート中にcwndが指数的に増加する理由を説明せよ。(30字以内)
問2
表1(正常系)における1RTTごとのcwndの推移をMSS単位で答えよ。
問3
表2(異常系)で損失が発生した際、cwndがどのように変化したかを説明せよ。
問4
表2のケースで、ssthreshは損失発生後にどのように設定されるか。MSS単位で答えよ。
問5
スロースタートと輻輳回避フェーズのウィンドウ増加速度の違いを説明せよ。(40字以内)
---
【解答例】
問1解答例
ACK応答の到着ごとにcwndを増加させるため、RTTごとに倍増する。
問2解答例
1MSS → 2MSS → 4MSS → 8MSS
問3解答例
損失検知後、cwndが初期値(1MSS)にリセットされ、スロースタートを再開。
問4解答例
ssthresh = 損失発生時のcwndの半分(例:4MSS → 2MSS)
問5解答例
スロースタートは指数増加、輻輳回避は線形増加。
---
【解説】
スロースタートは、ネットワーク輻輳を回避しつつ効率的にスループットを上げるための初期フェーズ。
正常系では、ACKごとにcwndが増え、1RTTごとに倍増。
異常系では、パケット損失が発生すると、TCP Tahoeでは初期値に戻り、ssthreshを半分に設定。
輻輳回避はssthresh以降、線形に増加する。
---
もしよければ、この午後Ⅱ問題+図+キャプチャをそのままPDF化して配布用に整形も可能です。
作りますか?
コメント
コメントを投稿