VMware protocols, Blast vs HTML access vs PCoIP, real life scenario
VMware has a number of protocols available with VMware Horizon product. PCoIP and Blast being the ones we use with customers. Blast of course is the protocol they’ve been pushing more and more. For a browser only scenario HTML access is available. Although blast and HTML have similarities there are differences. Blast for instance has the ability to work over UDP offering better performance, HTML access is not capable of using UDP. Today I took a look at a real life scenario where a customer had a question about user experience for their Horizon environment. I took a look at the environment and we discussed the differences as we tested the protocols. The finding I like to report here. We are not finished yet as we seek for the best protocol for this scenario, none of them were perfect, yet.
The environment consists of a VMware Horizon View 7.0.3 environment with Microsoft Windows 10 1511 LTSB. The customer is an Architectural agency who is using AutoCad 2017. The environment runs fine, they have one office where most people are working. They use NVIDIA M60 with Q240 profile. the clients they use are a mix of Windows 10 clients and zero clients HP T310. most users work on the zero clients. We did the tests on a Windows devices for this blog to be able to test other protocols.
Some extra information, PCoIP is tuned a bit but we are looking at more tuning. what we have now is;
- PCoIP, Minimum image quality at 40
- PCoIP, Maximum image quality at 80
- PCoIP, Frame rate at 40, changed it to 60
- Smart policies in UEM at High speed lan
- Disabled PNG for Blast
- Enabled UDB for Blast
- Image quality for Blast at 100.
The issue they experience is that PCoIP is lagging at some moments and seems to hang occasionally. Lagging is seen only in AutoCad, as well as the hanging that occurs rarely. They can reproduce the hanging so I set off to do test and see if we can find a reason behind this.
To verify the customer finding we did a series of tests. We applied several policies to make sure that e.g. Blast would work over UDP and that encoding wasn’t done with PNG. The test consist of a AutoCad desktop with 4vCPU’s and 8GB RAM running Windows 10 1511 LTSB. You can do this same test as well, we used the demo floor plan drawing in AutoCad 2017 and zoomed in on Carl Benard sitting at desk 6023.
Lively colours and shaprness
The first test we did was zoom in on his desk and see how lively the colours are and if the text and lines are clear. Below you see the PCoIP example, clear text and lively colours.
After this test we switched to HTML access and connected to the same desktop with the same drawing over the same network. as you can see the colours are nearly identical it looks fine. There is almost no difference between the looks of PCoIP and HTML access at this level but looking at the whole drawing there is a degradation, not much but you see a difference. PcoIP is far more clear.
Next up was Blast, first with H.264 encoding enabled. As you can see instantly the lines are blurred and the whole picture is not that smooth anymore.
The last test in this scenario was Blast with H.264 disabled. The colours are flying of the screen and it is super sharp. So H.264 has effect on the look and feel of the desktop. also here we noticed that compared to PCoIP the drawing wasn’t that clear.. still nice and all but less clear.
From the test we concluded that Blast without H.264 enabled and HTML access where the best performing protocols, the colours and sharpness of the drawing was perfect. PCoIP comes second, the brightness of the drawing with PcoIP is very good, like the colours give light.
Next we zoomed in on the letter ‘a’ so we could see how sharp the line really is. These guys are using AutoCad and they need sharp lines no matter how far you zoom in. So let’s take a look at the results. With PCoIP the lines are sharp, no questions asked. This is how the drawing should look like.
With HTML Access we see the same result as with PCoIP, the lines are sharp.
With blast and H.264 enabled we see that the colour of the line is darkener and that the line starts to break up. The line seems to be made up out of small blocks or something like it. The further you zoom in the worse the line got.
When we disable H.264 with Blast we noticed a near perfect line again, so H.264 had an effect on the way the lines are constructed.
The last test was about the user experience, of course a screenshot won’t do here so I will explain in writing what we noticed. The reason I was asked on-premises was that they experienced lagging when moving in the drawing or moving the drawing.
When working with PCoIP the lagging is noticed more than with e.g. HTML access or Blast. with PCoIP even when testing over a LAN it was just not smooth enough for them. When you moved the drawing the text in the drawing couldn’t keep up it seemed. From time to time with PcoIP it seemed that something was “hanging”, like someone is using all the resources and you have to wait. Most of the time everything is fine but it happens. This doesn’t happen with Blast, when we use Blast the “hanging” doesn’t occur.
When working with Blast, with or without H.264 performance was good but overal the sharpness was less than with PCoIP. We changed some setting in the policies and that improved it a bit (or was that just perception) but still it was lacking the PCoIP performance.
Last thing we tested was RDP (almost forgot they also can use that protocol) and it looked promising, the lines were ok and from my view performance seemed good. We now how some AutoCad users testing it as they give the final verdict.
So after a couple of hours testing we noted that protocols are different. The choice of protocol will have effect on the working and user experience of programs. It seems that even though PCoIP has the best look and feel it doesn’t have the best user experience for CAD. The best user experience is seen with Blast but with lesser look and feel (a little bit lesser).
We haven’t found a reason why PCoIP is doing what it is doing, I ruled out most of the network infrastructure as Blast never seems to have an issue. If it was something else than protocol it would happen to all of them. We switched Blast to UDP and still it worked fine. We also changed the GPU profile to 2GB to test but also that didn’t help.
What we are still looking for is the tuning options to make PCoIP react more snappier (even though this was a high speed LAN) or improve Blast to give the same look and feel as PCoIP. We haven’t found the magic setting as of yet but I thought the differences in look and feel are interesting enough to show you. Mind you this is a CAD environment, if you have a standard desktop all protocols would do more than fine. I would look at a GPU option and Blast in new environments as it looks that Blast is doing some god thing with offloading CPU load.
Any suggestions in tuning the user experience of PCoIP or the look and feel of Blast are welcome.