By Art Reisman, CTO
Perhaps I am a bit old fashioned, but I tend to cringe when we get asked if we can run the NetEqualizer on a virtual machine.
The NetEqualizer performs a delicate balancing act between bandwidth shaping and price/performance. During this dance, it is of the utmost importance that the NetEqualizer, “do no harm“. That adage relates to making sure that all packets pass through the NetEqualizer such that:
1) The network does not see the NetEqualizer
2) The packets do not experience any latency
3) You do not change or molest the packet in any way
4) You do not crash
Yes, it would certainly be possible to run a NetEqualizer on a virtual machine, and I suspect that 90 percent of the time there would be no issues. However. if there was a problem, a crash, or latency, it would be virtually impossible (pun intended) to support the product – as there would be no way quantify the issue.
When we build and test NetEqualizer, and deliver it on a hardware platform, all performance and stability metrics are based on the assumption that the NetEqualizer is the sole occupant of the platform. This means we have quantifiable resources for CPU, memory and LAN ports. The rules above break down when you run a network device on a virtual machine.
A network device such as the NetEqualizer is carefully tested and quantified with the assumption that it has exclusive access to all the hardware resources on the platform. If it were loaded on a shared hardware platform (VM) , you could no longer guarantee any performance metrics.