If you are looking to verify network infrastructure or application performance over networks prior to actual deployment or migrations into a new environment, then a network emulator is the perfect solution. With the ability to recreate a wide range of network conditions and characteristics such as restricted bandwidth, latency, jitter, packet loss or error, a good network emulator allows you to stress your application or network devices in an accurate, controlled and repeatable test environment.
The good news is that there is plenty of choice when it comes to finding the right network emulator. Depending on your particular testing requirements, you can choose physical desktop or rack-mount models, virtual appliance or Cloud-based options. And, on the face of it, the situation gets even better because, when you search for a network emulator, you’re going to find quite a few free tools and products including tctools and WANEM.
So, happy days then? Well, not quite! It is definitely worth considering free products but do so with your eyes fully open to some of pitfalls of relying on a free solution to validate your network infrastructure or test your applications. Here are some handy tips when considering free tools:
Tip 1: Having the Right Platform
Most if not all network emulators will require dedicated hardware to deliver the stated performance. So what usually happens when using a free tool is that a developer or network engineer will spend a considerable amount of their time on the setup, configuration and maintenance of a server/environment.This cost isn’t usually accounted for but can amount to tens of thousands of dollars/pounds/euros.
In comparison, vendors of commercially supplied network emulators will have spent time sourcing the right components to ensure their offerings achieve optimum accuracy, performance and reliability.
Tip 2: Think about Calibration
As free tools aren’t calibrated there is no guarantee that the impairments are accurate, stable and don’t include inherent impairment – that is impairment and jitter that wasn’t intended. tc-netem, one of the most publicized free impairment tools, comes with a limitations warning “The main known limitation of netem are related to timer granularity…”. The purpose of using a network emulator is to create the most realistic test conditions so the last thing you would want to do is to conduct your tests in an environment that doesn’t accurately reflect the real-world networks where applications or devices are ultimately going to be deployment.
Tip 3: It’s True – Time is Money
- Initial Set-Up
While there is no monetary cost associated selecting a free network emulator, there are hidden costs.Invariably, free tools will require platform/OS knowledge such as Freebsd/Linux to setup and some significant network expertise to configure. A good application developer or tester is a highly valuable resource and their time should be spent doing just that. If they are dedicating hours to trying to set-up the emulator rather than “doing the day job” that free product starts to look expensive. One of the most pertinent factors that separate freeware from commercial network emulation software is usability. Most free software provides only a command line interface and therefore even the simplest tests can be cumbersome and difficult to setup.
- On-Going Use
Free software is typically difficult to change network configurations and impairment parameters, often this is handled with scripts, which again requires some strong network expertise and lots of time. The most significant reason that network pre-deployment testing is abandoned is due to the complexity of use and the fact that new developers/testers struggle to use the tools. A good commercial network emulator will run “out of the box” and not only support auto-configuration for all the major network types and sub-types but also come with a wealth of preconfigured examples and scenarios.
Tip 4: Just the Basics – A Lack of the Right Tools for the Job
Free software lacks both the extensive impairment options and usability features found in commercial network emulation software such as IP filtering, routing, VLAN handling, multi-link, multi-user management, multi-tenancy, Soft Ports, Network Scenario builder etc that are required to achieve genuine real-world testing.
Tip 5: On-Going Security Updates, Support and Training
Free software delivery isn’t policed and is far more vulnerable to security risks. The download sites can introduce trojans, advertising, spyware or something else that can present a significant threat to the test environment. And once installed, you are unlikely to get much in the way of regular updates to keep your network emulator up to date or secure which, with most organizations are adopting a Zero Trust approach, could put you in breach of your employers’ security policies- definitely something to think about. And finally,with free software there is no formal training offered, which means that if the person who sets up or operates the free emulator moves on, there is likely to be a long ramp up time for the next user to become familiar and competent in its use.
If your requirement is to conduct some basic testing of a non-commercial / home grown system then a free network emulator may be the right choice for you. If, on the other hand, it is going to be used in an enterprise, mission-critical or zero trust environment, it makes more sense to use well maintained, fully supported commercial offerings.
If you would like to learn more about choosing the right network emulation solution for your testing requirements, check out our Network Emulator Buyers Guide