PCoIP put to the test – via T1 link


I recently had the chance to put Teradici documentation to the test in a T1 link scenario. Teridici has a specific recommended deployment for T1 connections. This document can be found on the Teradici website under "PCoIP_Client_WAN_Network_Guidelines.pdf".  A login is required to access the document.

My test consisted of 5 workstations (4 fat clients and 1 zero client), 3 of which had two serial to USB converters attached. One station was the Dell FX100 zero client.

This test was mainly a POC to see if we could deploy this to hundreds of branches for the company. With limited bandwidth in a T1, careful tuning had to take place in multiple different places. This included GPO's for the VDI sessions and performance tuning on the virtual desktops running Windows 7.

For tuning the Windows 7 environment, you putty much just turn off anything graphic intensive. A good general guide can be found on CreedTek. VMware also has a documented guide. Most of these settings can be controlled via GPO, but it's good to build a template with these settings already in place.

There are also some pretty important VMware View GPO's that are provided. On your View connection broker, these can be found under "C:Program FilesVMwareView ManagerServerExtrasGroupPolicyFiles". New to Group Policy Objects? Check out this KB 816662 article from Microsoft. The most important GPO settings I enabled were – no audio in the session and configuring the maximum allowed PCoIP bandwidth to 1MB (which is the lowest setting possible). You can also set the "PCoIPMaxLinkRate", but pay attention to the Teradici recommendations. There are a ton of other good settings in the GPO's you can play around with, but for this test I did not have any graphic intensive screens that needed to be displayed.

Teradici has a basic formula for T1 connections – Bandwidth required – (250Kbps/0.80) * 5  = 1.5Mbps, which comes out to 3 to 5 users per T1 connection. I'm really pushing the limits with my scenario.

Now lets get to the real numbers here. Here is a days worth of normal traffic is for this branch without PCoIP.

So you can see from the charts that utilization for the link stays around 20%. This is a pretty consistent on the history of this link.

Now let's take a look at the PCoIP traffic for a day…

As you can see, the link traffic is off the charts! At one point on the second day we even had a report of 300% utilization on the T1 link, which caused the router to crash and we had to reset it.

So did the Teradici documentation work? Absolutely! But for my user base, I need to stick with 3 users per T1 line. If I was not sending so much USB traffic over UDP 4172 I could possibly have 5 users per T1 link.

What was the user response? They loved it! The users were oblivious to the fact to they were working on a VDI sessions.

My overall impressions of using VMware View with PCoIP over a T1 link? I think it is fantastic, but carful consideration must be giving to how your branch may expand in the future. Pay careful attention to Teradici documentation and make sure you thoroughly test your scenario in a controlled environment before you plan to deploy this to production! Would WAN accelerators help in the scenario? Possibly, but at what point does that become cost effective for 5 (or possibly 10) users.

5 thoughts on “PCoIP put to the test – via T1 link

  1. Hi Jame,
    My name is Gunnar Berger and I work at Teradici.  I was interested in your math on how we calculate bandwidth for a T1.  How we calculate it and how you calculate it is actually very different.  If we say 250k per user, you should always find the word "average" with it.  PCoIP needs headroom to peek so (80% of pipe minus (250 * X users)) isn't how we calculate it.  A better calculation would be
    Total BW * .8 = Usable BW
    # of users * Average BW of users = Needed Average BW
    Usable BW – Needed Average BW = Available Headroom
    Ideally the Available Headroom should be > 1000, however as you see in your case, which is closer to 500, your experience is acceptable.  But you had to configure the VM to be as ungraphic intensive as possible (which reduces the average BW).  Also, the Available Headroom needs to increase based on how many users you have on the pipe.  That gets into the probability that X users will need to use peek bandwidth at the same time.  We actually have a BW Calculator that incorporates Gaussian statistical analysis to determine these numbers.
    Fun stuff right!  🙂  The reason I wanted to correct you is I've seen companies use this math formula to incorrectly size their networks.  Peek is important, and knowing that 100 or 250k or whateverK is always an Average.  So you can't take Average * Users and size your pipe.
    Thanks for the blog, great stuff!

    • Thanks for the feedback Gunnar. The test was done based upon available documentation at the time. This post was in no means intended to bash the protocol, I believe it worked as designed. The tests did succeed based upon the available documentation. I did tune out anything graphic intensive from the sessions. Users only ran a 16 bit app in the sessions, nothing graphic intensive. But measures were taken to optimize the sessions anyway. It is true that every deployment is different and user needs are not all equal when it comes to bandwidth. An average for one user will not be the same as another.

    • Clearly tuning is important….we couldn’t get anything near tolerable performance running a single zero client over a 12Mbit WAN to a Teradici card on the other side.

Leave a Reply

Your email address will not be published. Required fields are marked *