平成31年度・ネットワークスペシャリスト・午前Ⅱ・問1・伝送時間の計算

Tech

本記事はGeminiの出力をプロンプト工学で整理した業務ドラフト(未検証)です。

平成31年度・ネットワークスペシャリスト・午前Ⅱ・問1・伝送時間の計算

100Mビット/秒のLAN環境下で、ヘッダやパケット間隔を含めた実効的なデータ伝送時間を算出する計算手順を解説します。

【問題】

100Mビット/秒のLANを使用し,1件が1,000バイトのデータを1,000件連続して送信するとき,伝送時間は何秒か。ここで,1パケットは1,024バイト,パケットのヘッダは24バイト,パケットの間隔(パケットの送出終了から次のパケットの送出開始まで)は0.01ミリ秒とする。

ア 0.082 イ 0.092 ウ 0.102 エ 0.112

【解説】

この問題の解法は、「パケット自体の送出時間」と「パケット間の待ち時間」を切り分けて計算することにあります。

1. データの構成を確認する 1パケットは1,024バイトで、ヘッダが24バイトです。つまり、1パケットで送れるデータ本体(ペイロード)は以下の通りです。 $$1,024 \text{ [byte]} – 24 \text{ [byte]} = 1,000 \text{ [byte]}$$ 1件のデータが1,000バイトであるため、1件につきちょうど1パケットが必要となります。合計1,000件のデータを送るには、1,000個のパケットを送出します。

2. パケット1個の送出時間を計算する 回線速度は100Mビット/秒です。1,024バイトをビットに換算し、速度で割ります。 $$\frac{1,024 \text{ [byte]} \times 8 \text{ [bit/byte]}}{100 \times 10^6 \text{ [bit/sec]}} = 0.00008192 \text{ [sec]}$$

3. 全パケットの送出合計時間を計算する パケット1,000個分の送出時間は以下の通りです。 $$0.00008192 \text{ [sec]} \times 1,000 = 0.08192 \text{ [sec]}$$

4. パケット間の間隔(待ち時間)を計算する パケットが1,000個あるとき、パケット間の隙間は $1,000 – 1 = 999$ 箇所発生します。 パケット間隔は0.01ミリ秒(0.00001秒)なので、合計の待ち時間は以下の通りです。 $$999 \times 0.00001 \text{ [sec]} = 0.00999 \text{ [sec]}$$

5. 合計時間を算出する $$\text{合計時間} = 0.08192 + 0.00999 = 0.09191 \text{ [sec]}$$ 最も近い値は 0.092 となります。

sequenceDiagram
    participant "LAN as LAN Cable"
    Note over LAN: Packet 1 (0.00008192s)
    Note over LAN: Gap (0.00001s)
    Note over LAN: Packet 2 (0.00008192s)
    Note over LAN: Gap (0.00001s)
    Note over LAN: ...
    Note over LAN: Packet 1000 (0.00008192s)

【選択肢の吟味】

選択肢 判定 解説
誤り パケット送出時間のみ(0.08192)に近い値ですが、パケット間隔が考慮されていません。
正解 パケット送出時間と999箇所のパケット間隔を合計した正しい値です。
誤り パケット間隔を1,000箇所($1,000 \times 0.01\text{ms}$)で計算した場合に近い値です。
誤り 計算ミス、あるいはパケットサイズ等の取り違えによる数値です。

【ポイント】

  • データの分割: 送信データが1パケットのペイロード(全体-ヘッダ)に収まるかを確認する。

  • 植木算の適用: $N$ 個のデータを送る際、データ間の隙間は $N-1$ 箇所になる点に注意する。

  • 単位変換: M(メガ)は $10^6$、ミリ秒は $10^{-3}$ 秒、1バイトは8ビットとして正確に計算する。

ライセンス:本記事のテキスト/コードは特記なき限り CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。

コメント

タイトルとURLをコピーしました