User Experience by Delivery Groups Test

A Delivery group is a collection of machines selected from one or more machine catalogs. The Delivery group specifies which users can use those machines, and the applications available to those users.

Since the users of a delivery group share the resources of all the machines in that group, excessive resource usage by a few users can impact the experience of other users of that group. If this is to be prevented, then administrators must make sure that the delivery groups are well-tuned and are able to handle the workload imposed by all the users of the group. To achieve this, administrators should be able to:

  • Track the demand for resources on each group - i.e., the workload of each group;
  • Measure the average resource consumption in each group in response to the demand;
  • Detect latencies (if any) in communication with a delivery group;
  • Assess the impact of the resource usage and latencies on the overall experience of the users of the group.

The User Experience by Delivery Groups test helps administrators achieve all of the above! This test auto-discovers the delivery groups configured in a XenDesktop site and for each delivery group, reports the following:

  • What is the workload of each group, in terms of user sessions;
  • On an average, how much CPU, memory, and bandwidth resources are consumed per group?
  • What type of traffic to/from a delivery group is the most bandwidth-intensive?
  • Are users experiencing any latencies when interacting with a delivery group?

Using these pointers, administrators will be able to accurately judge whether/not their delivery groups have adequate resources to handle their workload. Delivery groups that will potentially experience a resource crunch can also be quickly identified in the process. In addition, the test warns administrators of current/probable latencies in communication with a delivery group. This way, the test captures and reports any anomaly that can adversely impact the overall user experience with a delivery group, thus enabling administrators to take the appropriate pre-emptive action.

Agent deploying the test : An internal agent

Outputs of the test : One set of results for each delivery group in the site.

Configurable parameters for the test
Parameter Description

Test Period

How often should the test be executed

Host

The IP address of the host for which the test is being configured.

Port

The port number at which the specified Host listens to. By default, this is 80.

Domain, Username
and Password

To connect to a delivery controller in a site and pull out metrics from it, the eG agent requires Farm Administrator rights. In order to configure the eG agent with Farm Administrator privileges, specify the Domain to which the target controller belongs and enter the credentials of a user who has the Farm Administrator rights in the Username and Password text boxes. This user should also be assigned the Allow log on locally privilege on the Citrix XA/XD Site 7.x host. The steps for assigning the Allow log on locally privilege are explained in the Pre-requisites for monitoring the Citrix Virtual Apps/Desktops Site 7.x topic.

Confirm Password

Confirm the Password by retyping it here.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

Average CPU usage of user's sessions

Indicates the percentage of CPU time that is used on an average by all user sessions on all machines in this delivery group.

Percent

Compare the value of this measure across delivery groups to know which group is running out of CPU resources.

A value close to 100% is a cause for concern, as it indicates that one/more users in a delivery group are consuming the group's CPU resources excessively.

Average handles used by user's sessions

Indicates the total number of handles being currently held by all processes of all the users accessing machinesin this delivery group.

Number

A consistent increase in the handle count over a period of time is indicative of malfunctioning of programs. Compare this value across delivery group to know which group has users using a lot of handles.

Total audio bandwidth input

Indicates the bandwidth used by users while transmitting sound/audio to machines in this delivery group.

Kbps

Comparing these values across users will reveal which delivery group is sending/receiving bandwidth-intensive sound/audio files over the ICA channel. To minimize bandwidth consumption, you may want to consider disabling client audio mapping.

Total audio bandwidth output

Indicates the bandwidth used by users while receiving sound/audio from the machines in this delivery group.

Kbps

Total input bandwidth

Indicates the average bandwidth used for client to server communications for all the user sessions on this delivery group.

Kbps

 

Total output bandwidth

Indicates the average bandwidth used for server to client communications for all the user sessions on this delivery group.

Kbps

 

Total COM bandwidth input

Indicates the bandwidth used when sending data to the COM ports in this delivery group.

Kbps

Comparing these values across users will reveal which delivery group's COM ports are sending/receiving bandwidth-intensive data over the ICA channel.

Total COM bandwidth output

Indicates the bandwidth used when receiving data from the COM ports in this delivery group.

Kbps

Total input compression

Indicates the average compression ratio for client to server traffic for all the sessions on this delivery group.

Number

 

Total output compression

Indicates the average compression ratio for server to client traffic for all the sessions on this delivery group.

Number

 

Total drive bandwidth input

Indicates the bandwidth used when users perform file operations on the mapped drives on the machines in this delivery group.

Kbps

Comparing the values of these measures across delivery groups will reveal which delivery group's users are performing bandwidth-intensive file operations over the ICA channel.

If bandwidth consumption is too high, you may want to consider disabling client drive mapping on the client device. Client drive mapping allows users logged on to a virtual desktop from a client device to access their local drives transparently from the ICA session. Alternatively, you can conserve bandwidth by even refraining from accessing large files with client drive mapping over the ICA connection.

Total drive bandwidth output

Indicates the bandwidth used when machines in this delivery group perform file operations on the client's drive.

Kbps

Total HDX media stream for flash data bandwidth input

Indicates the bandwidth by flash data traffic to this delivery group.

Kbps

Comparing the values of these measures across delivery groups will reveal which delivery group has been transmitting/receiving bandwidth-intensive flash data.

 

Total HDX media stream for flash data bandwidth output

Indicates the bandwidth used by flash data traffic from this delivery group.

Kbps

Total PN bandwidth input

Indicates the bandwidth used when users obtain application set details by the Program Neighbourhood of the machines in this delivery group.

Kbps

Comparing the values of these measures across delivery groups to reveal which delivery group has been transmitting/receiving bandwidth-intensive PN traffic.

Total PN bandwidth output

Indicates the bandwidth used from this delivery group by Program Neighborhood to obtain application set details.

Kbps

Average I/O reads for user's sessions

Indicates the rate of I/O reads done by all processes being run by the users of this delivery group.

Kbps

These metrics measure the collective I/O activity (which includes file, network and device I/O's) generated by all the processes being executed on a delivery group.

Comparison across delivery groups helps identify the group which is running the most I/O-intensive processes.

Average I/O writes for user's sessions

Indicates the rate of I/O writes done by all processes run by the users of this delivery group.

Kbps

Average screen refresh latency

Indicates the average client latency for a user. The value reported is the average of the latencies for all the users of this delivery group.

Secs

 

Average screen refresh latency - deviation

The latency deviation represents the difference between the minimum and maximum measured latency values for a session. The value reported is the average of the latency deviations for all the user sessions currently active on this delivery group.

Secs

Ideally, the deviation in latencies over a session should be minimum so as to provide a consistent experience for the user.

Average screen refresh latency - last

Represents the average client latency for the last request from a user to this delivery group. The latency is measured based on packets sent to and from each client during a session - this includes network delay plus server side processing delays. The value reported is the average of the last latencies for all the user sessions currently active on this delivery group.

Secs

A consistently high latency may be indicative of performance degradations with the machines in a delivery group. Possible reasons for an increase in latency could be increased network delays, network congestion, machine slow-down, too many simultaneous users on the machines etc. Typically, latencies will be below 5 secs.

Average memory usage for user's sessions

This value represents the ratio of the resident set size of the memory utilized by a user to the physical memory of the host system, expressed as a percentage. The value reported is the sum of all memory utilizations across all user sessions on this delivery group.

Percent

This value indicates the percentage of memory resources that are used up by users of a delivery group. By comparing this value across delivery groups, an administrator can identify the delivery groups that are rapidly running out of physical memory resources.

Total user sessions

Indicates the current number of user sessions on this delivery group.

Number

A value of 0 indicates that no users are currently connected to the delivery group.

Total input line speed

Indicates the average line speed from the client for all the user sessions on this delivery group.

Kbps

 

Total output line speed

Indicates the average line speed to the client for all the user sessions on this delivery group.

Kbps

 

Total printer bandwidth input

Indicates the bandwidth used when users of this delivery group print to a desktop printer over the ICA channel.

Kbps

Comparing the values of these measures across delivery groups will reveal which group is issuing bandwidth-intensive print commands over the ICA channel. If bandwidth consumption is too high, you may want to consider disabling printing. Alternatively, you can avoid printing large documents over the ICA connection.

Total printer bandwidth output

Indicates the bandwidth used when the machines in this delivery group respond to print jobs issued by users.

Kbps

Total speed screen data channel bandwidth input

Indicates the bandwidth used by data channel traffic to this delivery group.

Kbps

Comparing the values of these measures across delivery groups will reveal which group has been transmitting/receiving bandwidth-intensive data channel traffic.

Total speed screen data channel bandwidth output

Indicates the bandwidth used by data channel traffic from this delivery group.

Kbps

Total HDX media stream for flash v2 data bandwidth input

Indicates the bandwidth used by flash v2 data traffic to this delivery group.

Kbps

Comparing the values of these measures across delivery groups will reveal which group has been transmitting/receiving bandwidth-intensive flash v2 data.

Total HDX media stream for flash v2 data bandwidth output

Indicates the bandwidth used by flash v2 data traffic from this delivery group.

Kbps

Average page faults for user's sessions

Indicates the rate of page faults seen by all processes being run the user sessions on this delivery group.

Faults/Sec

Page Faults occur in the threads executing in a process. A page fault occurs when a thread refers to a virtual memory page that is not in its working set in main memory. If the page is on the standby list and hence already in main memory, or if the page is in use by another process with whom the page is shared, then the page fault will not cause the page to be fetched from disk. Excessive page faults could result in decreased performance. Compare values across delivery groups to figure out which delivery groups are causing most page faults.

Average virtual memory of user's sessions

Indicates the total virtual memory being used by all processes being run by the users of machines in this delivery group.

MB

Comparison across delivery groups reveals the delivery groups that are running out of virtual memory.

Average CPU time used by user's sessions

Indicates the percentage of time, across all processors, users of this delivery group hogged the CPU.

Percent

The Average CPU usage of user's sessions measure averages out the total CPU usage of a delivery group on the basis of the number of processors. For instance, if the machines in a delivery group are using a total of 8 CPU cores and the total CPU usage across all user sessions on that delivery group amounts to 80%, then the value of the Average CPU usage of user's sessions measure for that delivery group will be 10 % (80/8 processors = 10). This accurately denotes the extent of CPU usage in an environment where load is uniformly balanced across multiple processors. However, in environments where load is not well-balanced, the Average CPU usage of user's sessions measure may not be an accurate indicator of CPU usage per user. For instance, if a single processor is used nearly 80% of the time, and other 7 processors in the 8-core processor environment are idle, the Average CPU usage of user's sessions measure will still report CPU usage as 10%. This may cause administrators to miss out on the fact that a particular processor is being over-utilized! In such environments therefore, its best to use the this measure! By reporting the total CPU usage of a delivery group across all user sessions and across all the processors the machines in that delivery group support, this measure serves as the true indicator of the level of CPU usage by a delivery group in dynamic environments. For instance, in the example above, the Average CPU time used by user's sessions of a delivery groupn will be 80% (and not 10%, as in the case of the CPU usage for user's processes measure). A high value or a consistent increase in the value of this measure is hence serious and demands immediate attention. In such situations, use the detailed diagnosis of the Average CPU usage user's sessions measure to know what CPU-intensive activities are being performed by the user.

Average output bandwidth usage

Indicates the percentage bandwidth consumption of HDX traffic from this delivery group.

Percent

Compare the value of this measure across delivery groups to know which delivery group is consuming the maximum bandwidth when handling HDX traffic.

Average input bandwidth usage for user's sessions

Indicates the percentage bandwidth consumed by HDX traffic to this delivery group.

Percent

Total thinWire bandwidth input

Indicates the bandwidth used by ThinWire traffic to this delivery group.

Kbps

Typically, ICA traffic is comprised of many small packets, as well as a some large packets. Large packets are commonly generated for initial session screen paints and printing jobs, whereas the ongoing user session is principally comprised of many small packets. For the most part, these small packets are the highest priority ICA data called Thinwire. Thinwire incorporates mouse movements and keystrokes.

Compare the value of these measures across delivery groups to know which delivery group's thinwire traffic is generating bandwidth-intensive traffic.

Total thinWire bandwidth output

Indicates the bandwidth used by ThinWire traffic from this delivery group.

Kbps

Total seamless bandwidth input

Indicates the bandwidth used from client to this delivery group for published applications that are not embedded in a session window.

Kbps

Compare the value of these measures acrossdelivery groups to know which delivery group is accessing bandwidth-intensive applications that are not in a session window.

Total seamless bandwidth output:

Indicates the bandwidth used from this delivery group to client for published applications that are not embedded in a session window.

Kbps

Total speed screen multimedia acceleration bandwidth input

Indicates the bandwidth used by multimedia traffic to this delivery group.

Kbps

Comparing the values of these measures across delivery groups will reveal which delivery group has been transmitting/receiving bandwidth-intensive multimedia traffic.

Total speed screen multimedia acceleration bandwidth output

Indicates the bandwidth used by multimedia traffic from this delivery group.

Kbps

Average frame rate for user's sessions

Indicates the rate at which the frames are transmitted from the machines in this delivery group to the client.

Frames/sec

This measure should be maintained in a permissible range. A sudden rise or fall of this measure could be a cause of concern.

Total resource shares

Indicates the total number of resource shares used by the users of this delivery group.

Number

By comparing the value of this measure across delivery groups, you can identify the delivery group that is hogging the resources.

Average framehawk frame rate for user's sessions

Indicates the rate at which frames are processed by the Framehawk virtual channel, if it is enabled for the user sessions on this delivery group.

Frames/sec

The Framehawk virtual channel optimizes the delivery of virtual desktops and applications to users on broadband wireless connections, when high packet loss or congestion occurs.

Note:

This measure will report the value 0 if Framehawk is not enabled for the user sessions on this delivery group or if the device from which the user is accessing the application does not support Framehawk.

Average framehawk network bandwidth for user's sessions

Indicates the bandwidth consumption of the user sessions on this delivery group when the Framehawk virtual delivery channel is used.

Kbps

This is a good measure of the effectiveness of Framehawk in optimizing the bandwidth usage over the virtual delivery channel. A low value is desired for this measure.

Note:

This measure will report the value 0 if Framehawk is not enabled for any user of the delivery group or if the device from which the user is accessing the delivery group does not support Framehawk.

Average framehawk latency for user's sessions

Indicates the latency experienced by the user sessions on this delivery group when the Framehawk virtual delivery channel is used.

Secs

This measure will report the value 0 if Framehawk is not enabled for any user of the delivery group or if the device from which the user is accessing the delivery group does not support Framehawk.

Average framehawk network loss

Indicates the percentage of packet loss experienced by the user sessions on this delivery group when the Framehawk virtual delivery channel is used.

Percent

This measure will report the value 0 if Framehawk is not enabled for any user of the delivery group or if the device from which the user is accessing the delivery group does not support Framehawk.

Average client network latency for user's sessions

Indicates the latency experienced by the user sessions on this delivery group when transmitting/receiving data over the ICA channel.

Secs

A low value is a sign of the good health of the ICA channel.