Testing Application PerformanceConfiguring a test can be as simple as attaching a client device to one port of a WAN emulator and the server to a second port. Of course, instead of a single client and server, entire networks can be connected on either side. Once the link conditions are specified, it’s as if the two devices are connected over a satellite. Simply run the application and observe or measure the results. Figure 1 shows the user interface of a Netropy WAN emulator from Apposite Technologies. The throughput graph on the bottom half displays the results of a series of tests.
This test displays the effects of latency on application throughput. A 100MB file was transferred between the two Linux machines over different types of links with varying latencies from LAN to satellite. The bandwidth in these tests was set at 100Mbps. The table below summarizes the results.
As expected, the transfer completed quickly over low latency links and took almost ten times longer over satellite link. If you’ve been involved with satellite communications, you’ve certainly seen a graph like this before.
What has changed is that you can now run your own tests within minutes and specify the conditions and impairments under which you’d like to observe your applications perform. While general graphs published by vendors and academics are instructive, they don’t tell you how your applications will perform over your network. Now it’s easy to find out.
For example, if you want to examine the effect of the bit error rate on performance, simply enter the values of interest to you and run the test again. The figure below shows a series of tests with bit error rates of 1×10-9, 1×10-8, 1×10-7, and 1×10-6. The results are summarized in the table and show that the same file transfer takes 25x longer to transfer over a link with an error rate of 1×10-6 compared to a nearly error-free link.
Of course, this tested only application, FTP, running between two Linux machines. Run the same test yourself between two different devices, or transfer the file using a different application such as Windows file sharing or HTTP, and you’ll likely get very different results.
That is why it’s critical to test applications yourself. A report, or an article like this, can only show a few applications and the results are specific to particular devices and network conditions. While that can provide instructive background information, you need to know how your applications – everything from Windows file sharing to databases to VoIP and video – will work for your users over your network. And the best way to find out is to run your actual devices and applications over an emulated network configured to match your exact conditions.
Best of all, once you’re able to measure the performance of your applications, you can understand where the issues lie and examine solutions to optimize and improve specific problem areas.
Since the performance issues are caused by the application design and protocol choice, rather than the bandwidth, latency and loss conditions themselves, well-designed applications may work surprisingly well over satellite while others may be nearly useless. Even similar applications, such as video conferencing from different vendors with realistic network conditions needs to be an integral part of any product evaluation and procurement process.
Imagine an oil company with users in remote locations like Angola and Kazakhstan or stationed on offshore oil rigs. The telecoms team is responsible for installing a satellite network to connect these locations back to headquarters, but the IT team must make the applications work. To set up their office applications, they have a variety of architectures they can choose: client-side native applications with or without an accelerator or VDI connected to application infrastructure hosted at a datacenter. Which architecture will work best?
The answer depends on the application in question, the specific acceleration system, and the individual VDI software, as well as the satellite network itself and the amount of bandwidth available per user. One option would be to send all of the different systems out to multiple remote facilities and see what user’s prefer, but that’s expensive, time consuming, and subjective. A WAN emulator makes it somple to compare the alternatives side-by-side, test optimize each one, then make an informed decision.
Fortunately, today’s WAN emulators make that both easy and affordable, and every satellite user should have an emulator at hand as a part of their tool chest.