What should I consider when using Network Emulation to Simulate a WAN Network?
Network Emulation Simulation Considerations
While network emulation tools can be useful to test PCoIP protocol performance over simulated WAN networks by limiting network bandwidth, injected latency and packet loss etc, we recommend not using the packet loss options if the emulation tool is using a simplistic random loss algorithm. Tools that fall into this category can still be used to inject network latency and jitter to simulate login.
Warning: Using random packet loss will result in unrealistic testing results as PCoIP protocol will treat the loss as ongoing congestion, will try to adapt to it and drop the image quality to come out of this "fake congestion".
Packet Loss Simulation Considerations
-
Many network emulation tools use a simplistic random algorithm for injecting packet loss into the network link. This is not a valid scenario for real networks. The problem is that PCoIP adapts and thinks the ongoing *random* loss indicates that there is still congestion. If the loss entered is large enough, PCoIP continues to drop to the minimum image quality to try to relieve congestion that is not really there
-
Random packet loss is indicative of a poor or defective link. The defective links typically easily identified and repaired by service providers.
-
Real link packet loss is dominated by loss due to network congestion, congestion management or policy management. WAN emulation tools which can emulate WRED ( Weighted Random Early Detection) should be used to test PCoIP behavior.
-
Avoid using Tail Drop to drop the packet as this can cause further session disruptions and session disconnects. When the output queue is full and tail drop is in effect, packets are dropped until the congestion is eliminated and the queue is no longer full. This is detrimental to the working of PCoIP.
-
Ensure that any latency added to the network falls within the session requirements.
Simplistic use of random packet loss in an emulation environment causes PCoIP to continue to lower the network footprint and desktop imaging quality until the quality and/or bandwidth floor is reached. This results in a poor user experience that is not representative of what users would experience on enterprise networks (including enterprise internet access).
Note: HP Anyware does not recommend any specific network emulator, we recommend looking for tools that meet the above needs (WRED etc). HP Anyware has tested a small number of network emulation tools including Shunra (we use this for most testing as it supports WRED), iTrinergy, and Apposite.
Real world testing
There is no substitute for testing on live networks due to the unique nature of networks. At any given time the conditions on a network can be very different. If testing on the corporate network is not an option, consider setting up a virtual machine with HP Anyware on Azure or AWS. Trial licenses can be obtained from HP Anyware Sales and quick deployment scripts for Azure can be found here.
Once an instance is running in Azure or AWS, they can access from anywhere on the internet allowing for latency and packet loss testing. Instances can be accessed from home, coffee shops and airports mimicking the experience an user is likely to have in the same situation.