<p><style_prompt>IPA_Expert_Morning2_Format</style_prompt>
本記事は<strong>Geminiの出力をプロンプト工学で整理した業務ドラフト(未検証)</strong>です。</p>
<h1 class="wp-block-heading">令和5年度 ネットワークスペシャリスト 午前Ⅱ 問10 TCPのウィンドウ制御</h1>
<p>本問はTCPのウィンドウ制御とスループットの関係を問う計算問題です。送信データ量と往復時間(RTT)から転送速度を導き出す計算力が求められます。</p>
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>【問題】
TCPのウィンドウ制御において、送信側が送信ウィンドウの空きを待つことなく送信できるデータの最大量を64kバイト、1回の往復時間(RTT)を10ミリ秒とするとき、このネットワークで期待できる最大転送速度は何Mビット/秒か。ここで、1kバイトは1,000バイトとする。</p>
<p>ア 6.4
イ 12.8
ウ 51.2
エ 102.4</p>
</blockquote>
<p>【解説】
TCPのウィンドウ制御では、ACK(確認応答)を待たずに一度に送信できるデータ量(ウィンドウサイズ)によってスループットが決定されます。</p>
<ol class="wp-block-list">
<li><p><strong>データ量の単位変換</strong>
まず、バイト単位をビット単位に変換します。
$$64 \text{ kByte} \times 8 \text{ bits/Byte} = 512 \text{ kbits}$$
問題文の指定に基づき、$1\text{k} = 1,000$として計算します。
$$512 \times 1,000 = 512,000 \text{ bits}$$</p></li>
<li><p><strong>時間の単位変換</strong>
ミリ秒を秒に変換します。
$$10 \text{ ms} = 0.01 \text{ s}$$</p></li>
<li><p><strong>転送速度(スループット)の算出</strong>
「1回のRTTの間に送信できる最大データ量」が期待される最大転送速度となります。
$$\text{転送速度} = \frac{\text{送信データ量}}{\text{往復時間(RTT)}}$$
$$\text{転送速度} = \frac{512,000 \text{ bits}}{0.01 \text{ s}} = 51,200,000 \text{ bps}$$</p></li>
<li><p><strong>単位をM(メガ)に調整</strong>
$51,200,000 \text{ bps} = 51.2 \text{ Mbps}$</p></li>
</ol>
<div class="wp-block-merpress-mermaidjs diagram-source-mermaid"><pre class="mermaid">
sequenceDiagram
participant S as Sender
participant R as Receiver
S ->> R: Data transmission (Window size: 64kB)
Note over S,R: Round Trip Time (10ms)
R -->> S: ACK
Note over S: Continuous data flow within window size
</pre></div>
<p>【選択肢の吟味】</p>
<figure class="wp-block-table"><table>
<thead>
<tr>
<th>選択肢</th>
<th>判定</th>
<th>解説</th>
</tr>
</thead>
<tbody>
<tr>
<td>ア</td>
<td>誤り</td>
<td>64kビットを10msで割った値(6.4Mbps)であり、バイトからビットへの変換を失念しています。</td>
</tr>
<tr>
<td>イ</td>
<td>誤り</td>
<td>12.8Mbps。計算過程に誤りがあります。</td>
</tr>
<tr>
<td>ウ</td>
<td><strong>正解</strong></td>
<td>上記計算の通り、51.2Mbpsが導出されます。</td>
</tr>
<tr>
<td>エ</td>
<td>誤り</td>
<td>51.2Mbpsを2倍した値ですが、RTTの解釈に誤りがあります。</td>
</tr>
</tbody>
</table></figure>
<p>【ポイント】</p>
<ul class="wp-block-list">
<li><p><strong>スループット計算式</strong>: $L \text{ (ビット)} / RTT \text{ (秒)}$ で導出する。</p></li>
<li><p><strong>単位換算の注意</strong>: $1\text{kByte} = 1,000\text{Byte}$ か $1,024\text{Byte}$ かは問題文の指示に従う。</p></li>
<li><p><strong>ビット転送</strong>: ネットワーク速度は通常 bps(bits per second)で答えるため、必ず 8倍 する。</p></li>
</ul>
IPA_Expert_Morning2_Format
本記事はGeminiの出力をプロンプト工学で整理した業務ドラフト(未検証) です。
令和5年度 ネットワークスペシャリスト 午前Ⅱ 問10 TCPのウィンドウ制御
本問はTCPのウィンドウ制御とスループットの関係を問う計算問題です。送信データ量と往復時間(RTT)から転送速度を導き出す計算力が求められます。
【問題】
TCPのウィンドウ制御において、送信側が送信ウィンドウの空きを待つことなく送信できるデータの最大量を64kバイト、1回の往復時間(RTT)を10ミリ秒とするとき、このネットワークで期待できる最大転送速度は何Mビット/秒か。ここで、1kバイトは1,000バイトとする。
ア 6.4
イ 12.8
ウ 51.2
エ 102.4
【解説】
TCPのウィンドウ制御では、ACK(確認応答)を待たずに一度に送信できるデータ量(ウィンドウサイズ)によってスループットが決定されます。
データ量の単位変換
まず、バイト単位をビット単位に変換します。
$$64 \text{ kByte} \times 8 \text{ bits/Byte} = 512 \text{ kbits}$$
問題文の指定に基づき、$1\text{k} = 1,000$として計算します。
$$512 \times 1,000 = 512,000 \text{ bits}$$
時間の単位変換
ミリ秒を秒に変換します。
$$10 \text{ ms} = 0.01 \text{ s}$$
転送速度(スループット)の算出
「1回のRTTの間に送信できる最大データ量」が期待される最大転送速度となります。
$$\text{転送速度} = \frac{\text{送信データ量}}{\text{往復時間(RTT)}}$$
$$\text{転送速度} = \frac{512,000 \text{ bits}}{0.01 \text{ s}} = 51,200,000 \text{ bps}$$
単位をM(メガ)に調整
$51,200,000 \text{ bps} = 51.2 \text{ Mbps}$
sequenceDiagram
participant S as Sender
participant R as Receiver
S ->> R: Data transmission (Window size: 64kB)
Note over S,R: Round Trip Time (10ms)
R -->> S: ACK
Note over S: Continuous data flow within window size
【選択肢の吟味】
選択肢
判定
解説
ア
誤り
64kビットを10msで割った値(6.4Mbps)であり、バイトからビットへの変換を失念しています。
イ
誤り
12.8Mbps。計算過程に誤りがあります。
ウ
正解
上記計算の通り、51.2Mbpsが導出されます。
エ
誤り
51.2Mbpsを2倍した値ですが、RTTの解釈に誤りがあります。
【ポイント】
スループット計算式 : $L \text{ (ビット)} / RTT \text{ (秒)}$ で導出する。
単位換算の注意 : $1\text{kByte} = 1,000\text{Byte}$ か $1,024\text{Byte}$ かは問題文の指示に従う。
ビット転送 : ネットワーク速度は通常 bps(bits per second)で答えるため、必ず 8倍 する。
ライセンス :本記事のテキスト/コードは特記なき限り
CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。
コメント