PC-over-IP is a purpose-built desktop remoting protocol designed to adapt to network conditions to deliver the best desktop experience possible. PCoIP renders desktop video, pixel by pixel, to the endpoint (thin client, zero client, Windows client, etc.), while receiving keyboard, mouse, and other peripheral device data (audio, USB) on the datacenter-hosted desktop. The UDP-based protocol uses a combination of codecs (graphics, text, icons, photographs, video, PDF), combined with compression and intelligent encoding, to deliver a lossless virtual desktop experience.
Planning for PCoIP traffic on the WAN and LAN are critical steps in developing a design architecture for VMware View deployment. A well designed environment ensures that the PCoIP protocol can deliver the expected experience to your end users. Latency, jitter, and available bandwidth are all important considerations in View PCoIP planning. Mechanisms for guaranteeing network quality, including QoS, WAN optimization, MTU size, and packet loss prevention should also be considered. Let’s break down some of these elements to help you start your PCoIP planning.
Bandwidth requirements for View client-server traffic will vary greatly with the type of user, the applications the user uses, and how the user actually uses the apps. Because PCoIP is only sending screen refreshes to the client endpoint, applications that are visually intensive (3D wireframes) will use more bandwidth than applications that have static screen content (text entry) because more screen changes must be sent to the client. Screen resolution, monitor count, video use, and audio in the environment will also impact bandwidth requirements. The following table displays estimated bandwidth for several desktop categories (based on View 5.0), from very basic task worker to an extreme user with multiple 1080p monitors, 3D graphics, and video usage.
This table does not include audio bandwidth. Audio will add between 50kbps for compressed mono (FM radio quality) and 1,600kbps for uncompressed high quality stereo audio. By default, View limits audio bandwidth to 500kbps (if you want better quality audio you have to manually increase the audio bandwidth limit using PCoIP Group Policy templates). USB device bandwidth is also not included in the above table. USB traffic is sent outside the standard PCoIP protocol and will vary depending on the type of device used (a simple label printer may not use much bandwidth while burning a DVD with a USB DVD burner over PCoIP may consume gigabytes of traffic). Finally, this table does not include normal Windows/application traffic such as Outlook-Exchange as this happens within the datacenter, not over PCoIP.
Once you have an average bandwidth consumption number (we usually discover this during a VMware View proof-of-concept or pilot engagement), you can calculate your bandwidth requirements for a full-blown solution. To get started in sizing, we typically reserve 10% of total bandwidth off the top for non-View high priority traffic like VOIP (and we’ll assume that no pre-existing bandwidth constraints exist for the purposes of this post). Of the remaining bandwidth, we try to guarantee up to 80% for PCoIP.
Here’s an example for calculating bandwidth for PCoIP: If we have 100 concurrent users in the ‘Office Productivity’ classification, we’ll need about 250kbps per session on average per the table above.
250kbps * 100 = 25000 kbps = 25Mbps
25Mbps represents 80% of our total available bandwidth after reserving 10% for VOIP, we have to add 20% to 25Mbps.
25Mbps + 20% = 30Mbps
If 20% (5Mbps more in this case) is not sufficient for your web and other application traffic, add more.
Finally, add our 10% for VOIP and other high priority traffic.
30Mbps + 10% = 33Mbps
We need 33Mbps of bandwidth at a minimum to support these 100 Office Productivity users. Now add in audio at the default 500kbps for 20 users for an extra 10Mpbs (not everybody will be streaming Spotify all at the same time). Then, factor in bursting for PCoIP (500kbps or 1Mbps per session). Let’s assume that not all users will burst at the same time – maybe 20% of our users will concurrently burst by 1Mbps. Total solution bandwidth looks like this:
33Mbps PCoIP, Web, VOIP, and general WAN traffic
+ 10Mbps for PCoIP Audio
+ 20Mbps for PCoIP burst
63 Mbps to support 100 Office Productivity Users
As you can see, a full PCoIP solution can demand a decent amount of bandwidth for basic business users. These requirements will certainly come into play with remote office/branch office planning, and will be much greater as the number of users increases, the use of multimedia increases, or the visual intensiveness of their applications increase.
When you overlay bandwidth requirements and limitations around latency and jitter with the demands of the user/application, you see that the more intensive the application, the more bandwidth that will be required, while less latency and jitter can be tolerated.
With basic connectivity decisions and sizing done, we will briefly look at other architectural design elements important to PCoIP in VMware Horizon View environments. First, consider any technologies in the path of PCoIP traffic between View Clients and View Security/Connection servers. Intrusion Protection Services, WAN Optimization, and VPN devices can all cause packets to be dropped, re-ordered, or delayed. This all translates into PCoIP Packet Loss – a major cause of performance issues, negative user experience/perception, and PCoIP disconnects.
Look at your route-switch environment, ensuring correct MTU sizes end-to-end, sufficient buffers, QoS, and WRED configuration on routers. There are a significant number of considerations in these areas. We recommend reviewing the PCoIP Protocol Virtual Desktop Network Design Checklist from Teradici and the VMware View 5 PCoIP Network Optimization Guide for specific requirements and PCoIP best practices for network design and configuration. If you have specific questions about your environment, feel free to reach out to us via a comment below and our team of VMware and network experts can help.
Optimizing Windows desktops and applications can reduce overall resource consumption – CPU, Memory, Disk, and Network – by a substantial amount. Disabling Windows Aero and Office animations can result in savings of up to 60% average bandwidth utilization. Weigh decisions on optimizations vs. user experience to find the sweet spot between flashy features and infrastructure savings.
Finally, consider the version of VMware View that you are using. Each release contains enhancements to PCoIP that can reduce bandwidth consumption while improving the user experience. VMware Horizon View 5.2, released in March 2013, continues this trend with up to 10% bandwidth reduction from the numbers shown in the chart above in certain situations.
With proper planning and design, you can deliver resource efficient, user friendly virtual desktop infrastructures guaranteed to perform. Clearpath has extensive experience around designing and deploying View environments, robust network infrastructures, and all the optimizations to go with it. Let us know how we can help you achieve great success in your VDI deployment.