Accelerated File Transfer In Action
Test results of JSCAPE MFT Server and accelerated file transfer using AFTP protocol, a UDP file transfer protocol designed for fast file transfers.
Introduction
If you haven't read our post Introducing Accelerated File Transfer please do so as it will give you a good background for what I'm about to share with you here.
AFTP (Accelerated File Transfer Protocol) is one of the greatly improved features in JSCAPE MFT Server I've just finished playing around with it myself using a WAN emulator and I should say I'm very impressed. AFTP really left FTP in the dust when I started injecting latency and packet loss into the picture.
WAN Emulation Environment
In our lab tests, we employed the Apposite Linktropy WAN emulator, which allowed us to emulate a WAN environment by setting bandwidth as well as introducing latency and packet loss values. Latency and packet loss are quantities used to describe certain real-world network conditions, which are understandably inferior to theoretical or ideal conditions.
Bandwidth
Among the three (bandwidth, latency, and packet loss), bandwidth is perhaps the most familiar to you. When you subscribe to an ISP for your Internet connection at home or have someone connect your company computers (or offices) in a network, you will most likely encounter the units bps, Bps, Mbps, kbps, megabits per second, Gigabits per second, etc.
Although you may not understand exactly what they are, you probably know that the greater the number that precede any of these units, the faster your connection will be. Bandwidth is a measurement describing how fast data is expected to be delivered over a network. In most cases, advertised bandwidth of any network connection is just a theoretical value. It's not what you always get.
That's because, in the real world, a lot of things can affect the performance of your network, and these are manifested through latency and packet loss.
Latency
Latency or delay, which is expressed in ms (milliseconds), describes the time delay experienced by data traveling through a network. This delay is often caused by the distance data has to travel through a network, the medium used, and the number of gateways data has to traverse. Basically, higher values of latency correspond to longer time delays. In other words, high latency isn't something you'd like to have.
Lower latency values, on the other hand, correspond to shorter time delays. That means, you should be happy if you have a low latency network connection because data will be transmitted faster.
Packet Loss
Packet loss describes the condition wherein data packets fail to reach their target destination. It is expressed in percent (%). So, for example: 0% packet loss means all packets were able to reach their destination; 100% packet loss means all packets failed to reach their destination; and 50% packet loss means only half of the sent packets reached their destination.
Again, just like latency, a high amount of packet loss is undesirable.
Now that you have some basic understanding of bandwidth, latency, and packet loss, we can proceed to discuss the salient points of the tests we made on our WAN emulation environment.
File Transfer Acceleration Results
As mentioned earlier, by using the Apposite Linktropy WAN emulator to set bandwidth, latency, and packet loss, we were able to duplicate the conditions of an actual WAN environment in our lab. It was important to duplicate those conditions because the benefits of accelerated file transfer become more evident when those conditions exist.
Test Results
In all our tests, we used the latest version of AnyClient to upload a 100MB file to an instance of JSCAPE MFT Server. I fixed the bandwidth to 45 Mbps (Megabits per second), varied the latency and packet loss settings on the WAN emulator and then uploaded the 100MB file using FTP, followed by AFTP. Here are the results.
*Note, Speed is reported in MB/s (Megabytes per second). Each byte is equivalent to 8 bits.
Latency (ms) |
Packet Loss (%) |
Protocol | Speed (MB/s) |
Time (sec) |
Performance Gain (%) |
0 | 0 | FTP | 5.0 | 20 | |
0 | 0 | AFTP | 5.26 | 19 | 5 |
100 | 0.5 | FTP | 0.12 | 842 | |
100 | 0.5 | AFTP | 3.70 | 27 | 2983 |
250 | 1 | FTP | 0.03 | 3182 | |
250 | 1 | AFTP | 3.44 | 29 | 11366 |
Here's how the Apposite Linktropy WAN emulator settings looked like when I set the Latency (Delay) to 100 ms and the Packet Loss to 0.5%.
Figure 1
Now here's how it looked like when I raised the Delay to 200ms and the Packet Loss to 1%.
Figure 2
The difference in upload speeds is very clear when you look at the two screenshots below. The first one is a screenshot of AnyClient that was taken when we uploaded the file using FTP at the latency of 250 ms and packet loss of 1%, while the second was taken during the AFTP upload of the same file at the same latency and packet loss values.
Figure 3
Figure 4
With no latency, and packet loss, there is a slight performance gain of 5%. But notice how the tide shifts once latency and packet loss are introduced. What's more, the disparity between the two upload speeds really widen as latency and packet loss get bigger. If you had to transfer several GB worth of files, it could take you the entire day to complete the upload using FTP.
Transferring files at very slow speeds have lots of disadvantages. For one, it can delay business transactions especially if the data in those files are needed. Second, the longer it takes for a transmission of sensitive data to complete, the more vulnerable it will be to attacks. So it's really important to achieve relatively fast file transfer speeds even in network conditions that are expected to stifle performance.
The difference between my FTP upload and my AFTP upload was very noticeable. A FTP upload that took over 53 minutes took only 29 seconds using AFTP under the same network conditions. That's a performance gain of ~110 times faster than FTP!
So how about you? Do you notice a significant reduction in network performance compared to what you're expecting? If so, then you've got some serious latency/packet loss issues that need to be resolved. And with the accelerated file transfer protocol, it can be resolved.
Accelerate Your File Transfers
If your file transfers often experience high latency and/or packet loss, then I suggest you give AFTP a test run so you can really see the difference.
For this exercise, you'll need to install JSCAPE MFT Server and AnyClient.
Install JSCAPE MFT Server on one location and AnyClient on the other. So for example, if you normally transfer files from an office in Los Angeles, California, in the US, to your server in Halifax, Nova Scotia, in Canada, you can install AnyClient in LA and MFT Server in Halifax.
*Note, in order to experience the benefits of AFTP you will need a high-speed connection (>5Mbps) with high-latency (>50ms).
After conducting your own tests, let us know what your results are. We'd love to hear your feedback.