Network - Latency Calculation (Transfer time)
Table of Contents
1 - About
Rule of thumb to calculate a transfer time of a 20 Gigabyte file over an IP connection with bandwidth that is less than Gigabit.
Number of raw data in bits: <MATH> 20 000 \text{ Megabytes} * 8 \text{ bits per byte} * 1 000 000 \text{ bits per Megabyte} = 160 000 000 000 \text{ bits} </MATH>
2 - Articles Related
3 - Impact of
3.1 - TCP/IP
When the raw data is packaged into a TCP/IP packet the data set will expand by about 40%.
160 000 000 000 bits plus 40% encoding overhead = 224 000 000 000 bits of network data.
3.2 - Latency
In a real transmission, there is:
- packet loss, and then retransmissions
- latency in the transmission path
The rule of thumb for circuits between 1 to 10 Megabits per second is to reduce the throughput by another:
- 10 to 15% for intra-continental traffic,
- and 20 to 25% for Major economies in the northern hemisphere (UK, Europe, US),
- add more for the old Eastern Bloc and emerging countries (such as Turkey).
- think hard and make your own choices for longer distances such as Australia, Japan, China etc.
3.3 - Encryption
Adding encryption (IPSec or SSL) will further inflate the amount of transferred data. The actual impact will depend a lot on average packet size. IPSec typically add 40 bytes to the header, which has less impact for a large data transfer with an MTU of 1350 bytes that for an interactive session exchanging packets with an MTU of of 400 bytes.
Often forgotten is the encryption and decryption delay that makes the transfer more latent.
Rule of Thumb: add another 10 to 15% if you choose to encrypt the transfer.
4 - Example
If we transfer this data (without encryption) at 10 megabits per second:
224 000 000 000 bits / 10 000 000 bits per second = 22400 seconds = 373 minutes.
And then:
- Add 20% for the UK to US data transfer.
- Add 10% for Encrypting into IPsec tunnel.
We obtain:
373 minutes * 20% * 10% = 492 minutes.