VMware View 5.0 exposes Teradici’s PCoIP session statistics through the WMI interface. Before View 5.0 the only mechanism to identify bandwidth usage and allocation was trough the log files. The log files are still a good source and there are few good applications that will consolidate log files and demonstrate the broad PCoIP utilization and network conditions in your organization. Please refer to App for PCoIP Real-Time Monitoring across your Organisation.
The PCoIP Session statistics are available virtual desktops running VMware View agent 5.0 and can be retrieved from the host VM utilizing PerfMon.
The PCoIP statistics are grouped within the following name spaces:
- PCoIP Session General Statistics
- PCoIP Session Network Statistics
- PCoIP Session Audio Statistics
- PCoIP Session Imaging Statistics
- PCoIP Session USB Statistics
After a PCoIP session is closed, all the statistics are reset to zero. If the WMI property SessionDurationSeconds is a non-zero value and if it stays the same, it means PCoIP server has been forcefully ended or crashed. If SessionDurationSeconds changes from non-zero to zero value, it means PCoIP session has been closed.
The PCoIP Session Statistics are updated every second.
WMI Namespace: root\CIMV2
I have created a video to demonstrate the utilization of PerfMon to monitor PCoIP.
view5_pcoip_statistics from Andre Leibovici on Vimeo.
For automation of management task such as querying for management data, execution of a method from a WMI class, or receiving event notifications using WMI it possible to create scripts in VBScript, C#, and VB .NET using “WMI Code Creator” from Microsoft.
PCoIP Session General Statistics
WMI Class Name: Win32_PerfRawData_TeradiciPerf_PCoIPSessionGeneralStatistics
|
Statistic Name |
Description |
WMI Property Name |
|
Session Duration Seconds |
An incrementing number that represents the total number of seconds the PCoIP session has been open. |
SessionDurationSeconds |
|
Bytes Received |
Total number of bytes that have been received since the PCoIP session started. |
BytesReceived |
|
Bytes Sent |
Total number of bytes that have been transmitted since the PCoIP session started. |
BytesSent |
|
Packets Received |
Total number of packets that have been received since the PCoIP session started. Note that not all packets are the same size. |
PacketsReceived |
|
Packets Sent |
Total number of packets that have been transmitted since the PCoIP session started. Note that not all packets are the same size. |
PacketsSent |
|
RX Packets Lost |
Total number of receive packets that have been lost since the PCoIP session started. |
RXPacketsLost |
|
TX Packets Lost |
Total number of transmit packets that have been lost since the PCoIP session started. |
TXPacketsLost |
PCoIP Session Network Statistics
WMI Class Name: Win32_PerfRawData_TeradiciPerf_PCoIPSessionNetworkStatistics
|
Statistic Name |
Description |
WMI Property Name |
|
Round Trip Latency ms |
Round trip latency (in milliseconds) between server and client. |
RoundTripLatencyms |
|
RX BW kbit/sec |
Overall bandwidth for incoming PCoIP packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (BytesReceivedsample2 – BytesReceivedsample1) x 8 / 1024 / SamplePeriod |
|
RX BW Peak kbit/sec |
Peak bandwidth for incoming PCoIP packets within a one second sampling period. |
RXBWPeakkbitPersec |
|
RX Packet Loss % |
Percentage of received packets lost during a sampling period. |
To calculate packet loss: ?PacketReceived = PacketsReceivedsample2 – PacketsReceivedsample1 ?RXPacketsLost = RXPacketsLostsample2 – RXPacketsLostsample1) RXPacketLoss % = ?RXPacketsLost / (?RXPacketsLost + ?PacketReceived ) x 100 |
|
TX BW kbit/sec |
Overall bandwidth for outgoing PCoIP packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (BytesSentsample2 – BytesSentsample1) x 8 / 1024 / SamplePeriod |
|
TX BW Active Limit kbit/sec |
The current estimate of the available network bandwidth, updated every second. |
TXBWActiveLimitkbitPersec |
|
TX BW Limit kbit/sec |
Transmit bandwidth limit for outgoing packets as defined by the minimum of: GPO setting on client and server, local network connection, and Zero Client firmware negotiated value based on encryption limits |
TXBWLimitkbitPersec |
|
TX Packet Loss % |
Percentage of transmitted packets lost during a sampling period. |
To calculate packet loss: ?PacketSent = PacketSentsample2 – PacketSentsample1 ?TXPacketsLost = TXPacketsLostsample2 – TXPacketsLostsample1) TXPacketLoss % = ?TXPacketsLost / ?PacketSent x 100 |
PCoIP Session Audio Statistics
WMI Class Name: Win32_PerfRawData_TeradiciPerf_PCoIPSessionAudioStatistics
Note: The following Audio session statistics are not applicable to USB audio.
|
Statistic Name |
Description |
WMI Property Name |
|
Audio Bytes Received |
Total number of audio bytes that have been received since the PCoIP session started. |
AudioBytesReceived |
|
Audio Bytes Sent |
Total number of audio bytes that have been sent since the PCoIP session started. |
AudioBytesSent |
|
Audio RX BW kbit/sec |
Bandwidth for ingoing audio packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (AudioBytesReceivedsample2 – AudioBytesReceivedsample1) x 8 / 1024 / SamplePeriod |
|
Audio TX BW kbit/sec |
Bandwidth for outgoing audio packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (AudioBytesSentsample2 – AudioBytesSentsample1) x 8 / 1024 / SamplePeriod |
|
Audio TX BW Limit kbit/sec |
Transmit bandwidth limit for outgoing audio packets as defined by the GPO setting. |
AudioTXBWLimitkbitPersec |
PCoIP Session Imaging Statistics
WMI Class Name: Win32_PerfRawData_TeradiciPerf_PCoIPSessionImagingStatistics
|
Statistic Name |
Description |
WMI Property Name |
|
Imaging Bytes Received |
Total number of imaging bytes that have been received since the PCoIP session started. |
ImagingBytesReceived |
|
Imaging Bytes Sent |
Total number of imaging bytes that have been sent since the PCoIP session started. |
ImagingBytesSent |
|
Imaging RX BW kbit/sec |
Bandwidth for incoming imaging packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (ImagingBytesReceivedsample2 – ImagingBytesReceivedsample1) x 8 / 1024 / SamplePeriod |
|
Imaging TX BW kbit/sec |
Bandwidth for outgoing imaging packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (ImagingBytesSentsample2 – ImagingBytesSentsample1) x 8 / 1024 / SamplePeriod |
|
Imaging Encoded Frames/sec |
The number of imaging frames which were encoded over a one second sampling period. |
ImagingEncodedFramesPersec |
|
Imaging Active Minimum Quality |
The lowest encoded quality (0 to 100), updated every second. Not to be confused with the GPO setting. |
ImagingActiveMinimumQuality |
|
Imaging Decoder Capability kbit/sec |
The current estimate of the decoder processing capability. |
ImagingDecoderCapabilitykbitPersec |
PCoIP Session USB Statistics
WMI Class Name: Win32_PerfRawData_TeradiciPerf_PCoIPSessionUSBStatistics
Note: The following USB session statistics are only available for the Zero Client to Soft Host configuration. These values will be 0 for the Thin (Soft) Client to Soft Host configuration.
|
Statistic Name |
Description |
WMI Property Name |
|
USB Bytes Received |
Total number of USB bytes that have been received since the PCoIP session started. |
USBBytesReceived |
|
USB Bytes Sent |
Total number of USB bytes that have been sent since the PCoIP session started. |
USBBytesSent |
|
USB RX BW kbit/sec |
Bandwidth for incoming USB packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (USBBytesReceivedsample2 – USBBytesReceivedsample1) x 8 / 1024 / SamplePeriod |
|
USB TX BW kbit/sec |
Bandwidth for outgoing USB packets averaged over the sampling period (in seconds). |
To calculate bandwidth: (USBBytesSentsample2 – USBBytesSentsample1) x 8 / 1024 / SamplePeriod |







8 comments
1 ping
Skip to comment form ↓
puscavnik
11/12/2011 at 11:23 pm (UTC -7) Link to this comment
nice article, but can you tell me how to enable this PCoIP Session Statistics. In video you just have it under Add Counters in Performance Monitor, but i haven’t
I have View 5 on ESXi5.
thanks in advance
Andre Leibovici
11/13/2011 at 5:49 pm (UTC -7) Link to this comment
@puscavnik
You should see all PCoIP Performance Counters without having to do anything else. I have seen this behaviour before. Please uninstall VMware View Agent, Reboot and reinstall the agent in your Parent VM.
That should solve your issue.
Andre
puscavnik
11/14/2011 at 5:50 am (UTC -7) Link to this comment
@Andre
thank you very much, I spent 1 day figuring out where to enable this function, but only your advice helped.
@Andre Leibovici
Andre Leibovici
11/15/2011 at 7:38 am (UTC -7) Link to this comment
@puscavnik
I’m glad I was able to help. Thanks for the feedback.
Andre
Stephane Quevillon
03/13/2012 at 9:53 am (UTC -7) Link to this comment
@Andre
I am using the CIM Studio to search for the counters, they can be found on my 32bit Windows 7 View desktop but not in the 64-bit version of Windows 7. Do you know why that is?
Andre Leibovici
03/14/2012 at 12:07 pm (UTC -7) Link to this comment
@Stephane Quevillon
I am not sure why you see that. However, I can definitely tell you that the statistics are available for both platforms. Would this perhaps be a CIM studio issue with 64-bit Windows? Let me know should you find a solution.
Andre
Stephane Quevillon
03/21/2012 at 4:58 am (UTC -7) Link to this comment
I have found out the following:
When VM View registers on a 32-bit Operating System (Windows 7 or XP), any 32-bit application can query the PC over IP performance and configuration WMI directly. However, when VM View is installed on a 64-bit operating system, the WMI counters fail to properly register for 32-bit access – it only registers for 64-bit access. This is why CIM Studio (32-bit) was having challenges viewing the classes:
· Windows 32-Bit: WMI counters are properly registered and return metrics from direct WMI queries
· Windows 7 64-Bit: 32-bit WMI queries fail because the WMI counters are not properly registered by VM Viewer (bug)
· Perfmon: Counters exist for both 32 and 64-bit installations
Andre Leibovici
03/22/2012 at 8:53 am (UTC -7) Link to this comment
@Stephane Quevillon
I spoke to Teradici about this issue. This is a known issue with their library. Currently, 32 bit applications that access PCoIP WMI counters on a 64 bit system will not work. I would suggest you to try a 32bit of CIM Studio to see of that works.
Andre
Getting PCOIP stats via WMI using PowerShell : ben.neise.co.uk
10/09/2012 at 4:30 am (UTC -7) Link to this comment
[...] of the slides that PCOIP session statistics were available via WMI. After a quick Google, I found MyVirtualCloud’s page, which details the class, and property [...]