Harnessing the Cloud for CAD: The Case for Virtual Workstations, Part 422 Sep, 2017 By: Alex Herrera
Herrera on Hardware: With virtual workstations, the infrastructure between the client and the cloud can make or break the user experience.
Is Latency More Important than Bandwidth?
When it comes to network performance, the first thing we’re all conditioned to think about is bandwidth. And absolutely, securing adequate bandwidth is essential to creating an environment that can deliver a remote computing experience that feels local. All those clients and displays running at some resolution and frame rate will demand a certain level of aggregate bandwidth. Determining that amount depends on the estimated demand per user, times the number of users the network needs to support. Each user’s bandwidth demand will in turn be a function of the number of displays in use, the resolution and frame rate of those displays, and the chosen protocol. Teradici, for example, will provide extensive guidelines on what level of bandwidth is necessary for PCoIP to sustain which types of display environments. Ditto for codecs like H.264, though there may not be as much formal information readily available on the free choice.
Next it’s important to remember that critical difference between average and sustained bandwidth, as well as the gray area between the two that WANs often see. Inevitable peaks and valleys in delivered bandwidth may choke the visual streams the user receives, unless those valleys can be managed to an unobtrusive level or the protocol can manage it for you (as with PCoIP’s adaptive codec).
No doubt, securing adequate bandwidth across that WAN connection to the cloud is critical, but ensuring tolerable latency is arguably the bigger issue. First off, securing high bandwidth isn’t the difficult and/or expensive proposition it once was. Second, while there are workarounds for low and transient dips in bandwidth due to congestion, like PCoIP’s adaptive codec, there just are no workarounds for long latency. The data needs to make the full round trip, period, say from a mouse movement up to the cloud, re-render, and then stream the updated image back to the client. And finally, and most critically, once the latency gets excessively high, beyond some human sensory thresholds, user frustration will climb and productivity will decline.
Those thresholds are somewhat subjective, but for extended graphical work, most user experiences will suffer when latency pushes beyond 150 ms, and many would set 100 ms as a safer limit. In certain, short-term uses — a remote project manager checking in for a few minutes to sign off on a design change, for example — something on the order of 150 to 250 ms might be reasonable. But much beyond that, and the prospect of remote computing, virtual workstation or otherwise, won’t be worth the aggravation.
Latency tolerance is subjective, but these ballpark estimates can help you determine acceptable amounts.
Keep in mind too, that while the network is a major and often dominant contributor to round-trip latency, it’s not the only contributor. Computing, rendering, and stream encoding will incur delays on the host server, and the client needs a bit of time to display as well (simply synchronizing to the display device could incur tens of milliseconds). Finally, remember that network latency isn’t a function of physical distance, but the number of hops necessary to get from client to server and back, so proximity to the cloud provider’s physical infrastructure isn’t necessarily relevant.
What’s a reasonable plan of attack to ensure your network can deliver the goods? Ascertaining what your existing infrastructure can handle is a good starting point. Can it sustain an adequately high and consistent bandwidth load, along with consistently low latency? If it can’t, then see if you can extend or create more dedicated levels of connectivity from your current ¬— or another — NSP. And it’s probably worth finding out if the cloud provider’s offering is cost-effective and otherwise an appropriate fit. Finally, keep an eye out for emerging options, since all of this is playing out in a rapidly evolving space of new vendors and communication options.
Client Requirements and Choices
Though our virtual workstation exists on the cloud in some third-party datacenter, there of course needs to be some type of client device on the other side of that high-bandwidth, low-latency network. The good news — and precisely one of the reasons a datacenter-based approach is often favored — is that the role of the client can be filled by a wide range of devices, even simple ones. All they theoretically need to do is receive the visual representation of the workstation desktop, in the form of pixels streamed across the network, and return any I/O commands back to the cloud-hosted virtual machine.
To do that, the client needs to be compatible with the transfer protocol (for example, Teradici’s PCoIP or some H.264 variant). That leaves a wide range of choices for a client, including both hard and soft options. Let’s start with a hard client: one exclusively configured to deal with that incoming stream with some degree of I/O support. Zero clients, such as Teradici’s PCoIP Zero Client, have no local storage and no traditional client OS to speak of, hence the “hard” descriptor. The advantages of such a device include simplicity, robustness, and most notably, security. Without the storage and conventional OS, hacking is nearly impossible.
The downside is that a zero client does one thing and one thing only, so that it can’t be leveraged with any other tasks. A soft client, on the other hand, uses software to turn a programmable device into a virtual workstation client. In some cases, that’s a separate piece of software like Vmware’s Horizon Cloud, Citrix Receiver, or the aforementioned Teradici Cloud Access Software. Even simpler, solutions from third-party providers like Frame and Cloudalize require only an HTML5-capable browser (though soft clients can open up more functionality). With enabling software, a soft client can theoretically run on virtually any programmable device, and that includes phones and tablets. So even if support for heterogeneous devices is not a conscious goal, a soft client’s natural affinity for BYOD (Bring Your Own Device) is a welcome bonus of a virtual workstation solution.