How do I calculate the time taken for a file (in megabytes) to be transferred over a WAN link (128 Kbps, 256 Kbps or 2 Mbps), and what are the different parameters I should consider to take into account for provisioning a particular WAN bandwidth as per my question above? The time taken for a file to be transferred across the WAN depends on several factors, including the file size and link bandwidth.
The minimum time taken is attained by simply dividing the file size in megabits (convert from megabytes by multiplying by 8) by the link speed in megabits per second.
In reality, the actual transfer time may be higher than the minimum calculation above. This is due to several factors, which include the following:
- There is a small amount of overhead due to packet headers.
- The link may be shared with other traffic.
- The protocol used to transfer the file may have latency limitations. For example, a CIFS (Microsoft file system) transfer over a long distance link with a high latency may take ten or more times longer than expected.
- Packet loss may trigger retransmissions and back-offs that prevent the transfer from using the full link capacity.
WAN optimization appliances can help overcome many of the factors that can delay a file transfer. Look for the following capabilities:
- Compression reduces the amount of data that needs to actually be sent across the WAN.
- Disk-based data reduction
- can deliver duplicate information locally, improving WAN utilization while reducing transfer times.
- Latency can be mitigated using various TCP acceleration techniques, such as selective acknowledgements and adjustable window sizes.
- CIFS optimization can overcome the chattiness of that protocol.
- Forward packet correction can be used to overcome the ill effects of packet loss.