PCoIP Sizing and What’s New from VMworld 2013\2014

By | May 5, 2015

Here are my notes from both of these sessions from VMworld 2013 and 2014.

VMworld 2013 – PCoIP: Sizing for Success

  • PCoIP is a ‘bursty’ real-time protocol
  • Easily affected by poor networking conditions
    • Network congestion
    • High latency
    • Packet loss
    • End to end QoS\CoS
    • Out of order packets (asymmetric routing)
    • Burstable WAN’s – i.e. 10MB burstable to 30MB.  Only guaranteed 10MB
  • Measure, optimise, simulate & calculate.  No way you’ll get this right first time!
  • Tuning the protocol can only do so much.  Need to start at network
  • QoS\CoS -Highly recommended even on LAN.  Mandatory on WAN!
  • Unclassified UDP traffic is the most de-prioritised traffic there is
  • Ensure PCoIP is classified, just below VOIP, but above other TCP traffic
  • Use sub-classifcation where possible
  • Sub channel classification optimisation (Cisco\Riverbird) – Can differentiate between image data and other peripheral traffic
  • Congestion Control
    • Don’t use Tail Drop (congestion avoidance, throws away all packets when queues fill up), typically the default in network gear.
    • WRED (pays attention to priority of traffic in queues and will drop less of these packets)
    • WRED at least gives protocol chance to adapt to packet loss
  • Latency
    • De-buffers are bad for latency, especially for all hops in network topology
    • Too many firewall hops between client and server can impact.
    • IDS\IPS (at different layers) will increase issue further as it creates ‘out of order packets’. Can also be appliances or client\software based on VM
    • PCoIP packet loss = bad user experience
  • Burstable circuits – Pay for what you need (size it correctly) or buy a fixed line for required bandwidth.
  • Use Windows based software client for most advanced features (including Thin clients)
  • P20 Wyse Tera1 – Always performance equivilant of PCoIP 4.6 (none of the new features)
  • P25 Wyse Tera2 – Client side cache but no RTAV and MMR
  • Zero clients don’t have the hardware to perform RTAV or MMR (video redirection) playback directly
  • MMR using Thin Client (soft client) is supported
  • APEX card is not a GPU.  Takes no part in graphics rendering.
    • Accelerates encoding of PCoIP only
    • Supports legacy support
    • Server side optimisation
  • Multimedia requires at least 2 vCPU
  • Objective aspect = admins configuring settings
  • Subjective aspect (key!) = user experience
  • Optimised, is not the lowest or best of anything.
  • Optimised, is generally an acceptable, workable and consistent experience.  At this point, optimising is done
  • It’s an iterative process, not going to get this right first time.
  • Understand use cases first
    • Volume of screen change (how many pixels change)?  Tabbing and switching windows would be high
    • FPS
    • Audio
    • Multimedia
      • Light – More aggressive with tuning to get close to BW number and be acceptable
      • Heavy – Can’t be as aggressive with tuning
      • MMR – Completely eliminate multimedia from tuning concerns.  It’s completely out of band to the protocol
      • 3D – High frame rate, high screen changes
    • Peripherals – Webcam, microphone, printers & USB
  • Max Initial image quality (lots of tuning)
  • Min Initial image quality (not so much)
  • Client side cache has no effect of content in motion.  Only caches static content (task worker)

Simulation

  • Configure the Pilot as close to the Production as possible
  • Different endpoints can show different bandwidth, depending on capabilities and features
  • LAN deployment – 3D could create 160Mbps (software to software).  Hardware (teradici) to hardware, could create 300Mbps (full screen)
  • Know bandwidth available.  Current utilisation versus actual available
  • Network testing – WANEM – Install on physical or VM.
  • User Testing – View Planner or Login VSI. Scalability testing. Real-world users are obviously preferred.

VMworld 2014 – What’s new with View and PCoIP 

  • Deliver RDS desktops and apps from single platform using PCoIP
  • Roaming IP profile, allowing PCoIP sessions to persist when changing networks
  • New PCoIP default settings
    • Changed from View 5.0
    • Providing bandwidth savings and better user experience
    • Up to 30% BBW savings depending on use case
    • OOTB it’s now WAN ready
    • Disable Build to lossless – On
    • Max Image Quality – Reduced from 90 to 80
    • Min Image Quality – Reduced from 50 to 40
    • New deployment will auto get these settings
    • Upgrade from previous without customization – Auto get new settings
    • Upgrade from previous with customised PCoIP.adm template – Settings will be preserved
  • Optimising environment for PCoIP
    • *This is key before tuning PCoIP ADM templates*
    • WAN\LAN – QoS and CoS. Real time protocol (UDP), sensitive to packet loss.  Place PCoIP one priority level below VOIP, if possible
    • Congestion control – Routers typically enabled to use Tail Drop, WRED optimises the packet control better
    • Minimise latency (avoid deep buffers, minimise routing\hops), avoid in-line IDS/IPS. Beware of burstable circuits
    • Use Teradici PCoIP Design checklist and VMware whitepapers
  • Understand Use Cases
    • Volume of screen change, pixel perfect images, video (screen size), audio, VOIP and 3D.  These all impact bandwidth required.
    • Client Endpoint Selection
    • Zero, Thin, Mobile and Thick.  Know what features are supported
  • Teradici Apex Card (not a GPU)
    • Hardware accelerator, reduces CPU overhead by offloading the most active virtual displays
    • large number of users running video which strains PCoIP and impacts the virtual desktop, plus cases host CPU saturation
    • Does not reduce bandwidth
  •  3D Graphics
    • vSGA – Multiple VMs per GPU
    • vDGA – One VM per GPU
    • Requires lots of bandwidth
  • Improving Video Performance in browsers
    • Disable hardware acceleration can easily double performance
  • Optimizing PCoIP for your Environment
    • This is a balancing act.  Options will disable bandwidth consumption.
    • Requires testing first, with small set of users or specific use case.
    • OOTB settings in Horizon 6 is a good starting point.
    • Reducing PCoIP Sessions BW (from 90,000 to 1,024). Dependent on network capacity.
    • Build to Lossless (Disable)
    • Max Initial Image Quality (80 to 60)
    • Reduce Frame Rate (30 to 12). Use Case dependent
    • Reduce Audio Bandwidth (500 to 250).  Or disable completely.
    • Increase Client-Side Cache (250 to 1024). Dependent on endpoint device
  • What’s Next?
    • Simplify, optimise and apply.  Easy application of profiles for best case scenario.
    • Apply profiles based on device type or network or use case or applications
    • VMware working on profiles creation and using a Rules engine to apply
    • Real-time tuner, allowing profile to be tuned and then export to ADM template
    • Tools:
      • Perfmon
      • PCoIP Session Statistics Viewer
      • PCoIP Log Viewer
      • PCoIP Config Tool

One thought on “PCoIP Sizing and What’s New from VMworld 2013\2014

  1. Pingback: Horizon Group Policy and Profiles | Carl Stalhood

Leave a Reply