技術士 過去問
令和7年度(2025年)
問9 (基礎科目「情報・論理に関するもの」 問3)
問題文
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
技術士試験 令和7年度(2025年) 問9(基礎科目「情報・論理に関するもの」 問3) (訂正依頼・報告はこちら)
- ネットワーク層以下の通信レイヤからはネットワークの混み具合に関する情報は直接得られないため、TCP自体が通信経路上で発生しているふくそうを検知し、転送レートを調整する。
- 送信ホストは通信開始時にふくそうウィンドウの値を最大セグメント長(バイト)に設定し、そのサイズのセグメントを1つ受信ホストに送信する。
- 送信ホストはACKを受信すると、ふくそうウィンドウを最大セグメント長だけ大きくすることをふくそうウィンドウの値がしきい値に達するまで、又はセグメント廃棄によるタイムアウトが発生するまで繰り返す。そのためふくそうウィンドウのサイズは線形的に増加し、この段階をスロースタートフェーズと呼ぶ。
- ふくそうウィンドウがしきい値に達したあとは、ふくそうウィンドウをおよそ1ラウンドトリップタイム当たり1つのセグメント分だけ増加させる。この段階をふくそう回避フェーズと呼ぶ。
- ふくそうウィンドウがしきい値に達する前に送信中のセグメントでタイムアウトが発生した場合、しきい値をそのときのふくそうウィンドウの半分の値に設定し、ふくそうウィンドウの値を最大セグメント長に初期化する。
正解!素晴らしいです
残念...
この過去問の解説 (1件)
01
この問題でいちばん大切なのは、スロースタートとふくそう回避の増え方の違いです。
スロースタートでは、cwndはおおよそ倍々に増えるので、線形増加ではありません。
ふくそう回避では、cwndは1RTT当たり約1セグメント分ずつ増えます。こちらが線形的な増え方です。
TCPの標準的なふくそう制御は、ACKの返り方や損失、タイムアウトなどを見ながら、送信側が自分で転送量を調整します。
RFC 5681も、TCPのふくそう制御としてスロースタート、ふくそう回避、高速再送、高速回復を定めています。
現在のTCP標準では、初期ウィンドウは1 MSS固定ではありません。
RFC 5681では2~4 MSS相当、RFC 6928では最大10セグメント程度まで許されています。
ですので最新仕様にぴったり一致する書き方ではありませんが、この問題の中では、後の選択肢ほど大きな誤りではありません。
これが最も不適切です。
前半の「ACKごとに最大セグメント長だけ大きくする」という説明自体は、RFC 5681の考え方と合っています。
ですが、その結果を線形的に増加すると書いているのが間違いです。
ACKごとに増えるので、1RTTの間に受け取るACKの数も増え、cwndはおおよそ倍々に増えます。
つまり、スロースタートは急に大きくなる段階です。
線形的に増えるのは、ふくそう回避フェーズです。
この記述は適切です。
RFC 5681では、ふくそう回避では1RTT当たりおおよそ1セグメント分だけcwndを増やすとされています。
これは、急に増やしすぎないようにするためです。
ここはスロースタートとの大きな違いです。
RFC 5681では、タイムアウトが起きたとき、ssthreshをおおよそ半分に下げ、cwndを1 SMSS以下に戻すとしています。
厳密には「そのときのcwndの半分」ではなく、FlightSizeの半分を基準にする書き方ですが、基本動作としては「半分に下げて、cwndを小さく戻す」という理解でよいです。
参考になった数0
この解説の修正を提案する
前の問題(問8)へ
令和7年度(2025年) 問題一覧
次の問題(問10)へ