平成30年度 秋期 ネットワークスペシャリスト試験 午前Ⅱ 問2 スライディングウィンドウ
TCPにおけるスライディングウィンドウによる流量制御について、帯域幅と遅延時間から必要なウィンドウサイズを算出する解法を解説します。
10Mビット/秒の回線で接続されたノード間で,スライディングウィンドウ方式によるデータ転送を行う。応答を待たずに転送できるデータの最大値を32kバイトとしたとき,回線利用率の最大値はおよそ幾らか。ここで,ノード間の伝搬遅延(片道)は20ミリ秒とし,ACK(肯定応答)のサイズは無視できるものとする。
ア 0.16 イ 0.32 ウ 0.64 エ 0.80
【解説】
本問題は、スライディングウィンドウ方式におけるスループットの限界を問う計算問題です。回線利用率を求めるためには、「理論上の最大スループット」を算出し、それを「回線速度」で割る必要があります。
1. RTT(往復遅延時間)の算出 スライディングウィンドウでは、データを送信してから最初のACK(肯定応答)が戻ってくるまでの間に、ウィンドウサイズ分のデータを送信できます。この往復時間をRTTといいます。 $$RTT = 伝搬遅延(片道) \times 2 = 20 \text{ms} \times 2 = 40 \text{ms} = 0.04 \text{秒}$$
2. ウィンドウサイズのビット換算 問題文より、ウィンドウサイズ(応答を待たずに送信できる最大値)は32kバイトです。これをビット(bit)に変換します($1\text{k}=1,000$として計算)。 $$32 \text{kバイト} \times 8 \text{ビット/バイト} = 256 \text{kビット} = 256,000 \text{ビット}$$
3. 最大スループットの算出 1周期(RTT)の間に送信できる最大データ量はウィンドウサイズに依存します。 $$スループット = \frac{ウィンドウサイズ}{RTT} = \frac{256,000 \text{ビット}}{0.04 \text{秒}} = 6,400,000 \text{ビット/秒} = 6.4 \text{Mbps}$$
4. 回線利用率の算出 回線速度(理論値)に対する実効スループットの割合を求めます。 $$回線利用率 = \frac{6.4 \text{Mbps}}{10 \text{Mbps}} = 0.64$$
Mermaid図解:RTTとデータ転送の関係
sequenceDiagram
participant Sender
participant Receiver
Note over Sender: Data 0-32KB 送信開始
Sender ->> Receiver: Data
Note over Receiver: 受信
Receiver ->> Sender: ACK
Note over Sender: ACK受信 (ここまでがRTT=40ms)
Note right of Sender: この間に送れる上限がウィンドウサイズ
【選択肢の吟味】
| 選択肢 | 判定 | 解説 |
|---|---|---|
| ア | 誤り | 片道遅延のみで計算した場合や、単位換算ミスで発生する数値です。 |
| イ | 誤り | ウィンドウサイズを16kバイトと誤認、あるいは計算過程で2倍のズレが生じた数値です。 |
| ウ | 正解 | 上記計算の通り、スループット6.4Mbpsを回線速度10Mbpsで割った0.64が正解です。 |
| エ | 誤り | RTTを短く見積もる、またはウィンドウサイズを大きく見積もった場合の数値です。 |
【ポイント】
RTT(Round Trip Time):片道遅延の2倍であることを忘れないこと。
スループットの壁:ウィンドウサイズが小さいと、回線帯域が余っていても速度が頭打ちになる。
単位の統一:Byteをbitに変換し、ms(ミリ秒)をs(秒)に直して計算する。
この記事の更新履歴
この記事は、生成AIを活用した自動レビュー・更新フローにより内容を見直し、必要な修正を反映しています。
2026年9月19日
- 削除記事冒頭の未検証ドラフトを示す不要な注意書きを削除しました。

