データ転送時間の計算ツール

データ量と回線速度から、転送にかかる時間を計算します。データ量はバイト(B)、回線速度はビット毎秒(bps)で表すことが多いので、8倍してビットにそろえるのがポイントです。ヘッダや再送などで実際に使える割合(伝送効率)も入れられます。

データ量と回線

kB・MB・GB は1000倍ずつ、KiB・MiB・GiB は1024倍ずつです。回線速度の k・M・G は1000倍ずつです。

結果

転送時間
–
データ量(ビット)
–
実効の速度(回線速度 × 伝送効率)
–
その時間で送るのに必要な回線速度
–

伝搬遅延(信号が届くまでの時間)や、TCP の確認応答の待ち時間は含みません。往復の時間(RTT)が長い回線で小さなデータを何度もやり取りする場合は、遅延の影響が大きくなります。

転送時間の計算の基本

転送時間は「データ量(ビット)÷ 実効の速度(ビット毎秒)」で求めます。ファイルの大きさはバイト、回線速度はビット毎秒(bps)で表すのが普通なので、まずデータ量を8倍してビットに直します。たとえば 100 MB のファイルを 100 Mbps の回線で送ると、100 × 10⁶ × 8 = 8 × 10⁸ ビットを 10⁸ ビット毎秒で送るので8秒かかります。バイトとビットを取り違えると、答えが8倍ずれます。

伝送効率

実際の通信では、データのほかにヘッダや制御用の情報を送ったり、誤りがあったときに送り直したりするので、回線速度のすべてをデータに使えるわけではありません。データに使える割合を伝送効率といい、実効の速度は「回線速度 × 伝送効率」になります。例「1 GB を 100 Mbps・伝送効率80%で」では、8 × 10⁹ ビットを 80 Mbps で送るので100秒です。イーサネットで TCP/IP を使うと、1500 バイトのパケットのうち IP と TCP のヘッダで40バイトを使い、さらにイーサネットのヘッダやフレームの間隔もあるので、効率は約95%になります。

KB と KiB の違い

通信の速度の k・M・G は、いつも1000倍ずつです。一方、データ量の KB・MB・GB は、1000倍ずつの意味と1024倍ずつの意味の両方で使われてきたため、1024倍ずつのときは KiB・MiB・GiB と書いて区別します。10 GiB は約10.7 × 10⁹ バイトなので、10 GB として計算するより約7%長くかかります。試験の問題では、1 M バイト = 10⁶ バイトのように問題文で決められていることが多いので、それに従います。

遅延とスループット

転送時間の計算では、データを送り出し終えるまでの時間だけを考えることが多いですが、実際には信号が届くまでの伝搬遅延や、相手からの応答を待つ時間もかかります。小さなデータを1つずつ送って応答を待つやり方では、回線速度を上げても往復の時間(RTT)が支配的になり、転送時間はあまり縮みません。大きなデータをまとめて送ると、回線速度に近いスループットが得られます。

ネットワークの問題を解く

100 MBのファイルを100 Mbpsの回線で送るのにかかる時間に最も近いものはどれか。ヘッダなどのオーバーヘッドや遅延は無視し、1 MB = 10^6 バイトとする。

  1. A約1 s
  2. B約8 s
  3. C約80 s
答えと解説を見る

正解:B. 約8 s

回線の速さはビット毎秒(bps)、ファイルの大きさはバイト(B)で表すことが多いので、まず単位をそろえます。1バイトは8ビットなので、100 MB = 100 × 8 = 800 Mビットです。これを100 Mbpsで送ると、800 ÷ 100 = 8 秒かかります。実際には、ヘッダなどのオーバーヘッドやTCPの制御による待ちがあるため、これより長くかかります。

1 Gbpsのイーサネットで、IPパケットの大きさがMTUいっぱいの1500バイトになるようにしてTCPのデータを送り続ける。IPv4ヘッダを20バイト、TCPヘッダを20バイト、イーサネットのヘッダとFCSを合わせて18バイト、プリアンブルとフレームの間の空き(フレーム間ギャップ)を合わせて20バイトとすると、アプリケーションのデータのスループットの上限に最も近いものはどれか。

  1. A約949 Mbps
  2. B約973 Mbps
  3. C約1000 Mbps
答えと解説を見る

正解:A. 約949 Mbps

1つのフレームに入るアプリケーションのデータは、1500 − 20 − 20 = 1460 バイトです。一方、回線の上では1フレームあたり 1500 + 18 + 20 = 1538 バイト分の時間を使います。したがって効率は 1460 ÷ 1538 ≈ 0.949 で、スループットの上限は 1000 × 0.949 ≈ 949 Mbps です。TCPのタイムスタンプのオプションを使うとヘッダが12バイト増え、効率はさらに少し下がります。小さなパケットほどヘッダなどの割合が大きくなり、効率は悪くなります。

RTTが50 ms、帯域が100 Mbpsの回線で、10 KBの応答を受け取る要求を、前の応答を受け取り終えてから次を送る形で100回繰り返す。かかる時間に最も近いものはどれか。1回あたりの時間はRTTに応答の転送時間(データ量÷帯域)を足したものとし、1 KB = 1000バイト、サーバの処理時間は無視する。

  1. A約0.08 s
  2. B約2.6 s
  3. C約5.1 s
答えと解説を見る

正解:C. 約5.1 s

1回の要求ごとに、要求を送ってから応答が届き始めるまでの1往復の50 msと、10 KB = 80000ビットを100 Mbpsで受け取る 80000 ÷ (100 × 10^6) = 0.8 ms がかかります。合計は (50 + 0.8) × 100 = 5080 ms ≈ 5.1 s で、ほとんどがRTTの待ちです。帯域を10倍の1 Gbpsにしても、(50 + 0.08) × 100 ≈ 5.0 s にしかなりません。光ファイバの中の光は1 msに約200 km進むので、RTTは距離で決まる下限があります。このような処理を速くするには、要求をまとめる、応答を待たずに複数の要求を並行して送る、サーバを利用者の近くに置く、といった方法が効きます。

よくある質問

1 Gbps の回線で 1 GB のファイルは何秒で送れますか?

伝送効率が100%で 1 GB = 10⁹ バイトなら、8 × 10⁹ ビット ÷ 10⁹ ビット毎秒 = 8秒です。伝送効率が80%なら10秒かかります。

Mbps と MB/s の違いは何ですか?

Mbps はメガビット毎秒、MB/s はメガバイト毎秒で、1 MB/s = 8 Mbps です。ダウンロードの速さは MB/s、回線の契約速度は Mbps で表示されることが多いので注意してください。

伝送効率はどのくらいに見積もればよいですか?

試験では問題文で与えられます。実際には、有線の LAN で TCP を使うと90%を超えることが多く、無線 LAN では電波の状態や混み具合によって大きく下がります。

試験ではどのように問われますか?

基本情報技術者試験などでは、データ量・回線速度・伝送効率から転送時間を求める問題や、決まった時間で送るのに必要な回線速度を求める問題がよく出ます。バイトとビットの換算と、単位の接頭辞(k・M・G)に注意してください。

関連する用語

スループット

関連する計算ツール

半導体・電子回路・情報の計算ツール →