Citrix XenApp or XenDesktop are a perfect fit for lowering the costs of desktop management and simplifying access to the hosted applications from any device. Last week we discussed some challenges to application performance monitoring (APM) introduced by Citrix. Apart from getting yet another component in the data center to take care of, the virtualized application delivery becomes “black boxed” from the APM perspective. It gets harder to isolate the fault domain to the network, the infrastructure, or the applications themselves.

x default

In the previous post we presented case of The National Bank of San Borodin (NBSB – name changed for commercial reasons). The bank decided to expand its reach beyond the small island of San Borodin and render the access to its banking applications by its agents through Citrix XenApp. Ensuring good quality of service imposed additional challenges on the Operations Team. We analyzed how to discover and handle performance issues which can happen in the Citrix enabled environment in the last post. Today, we will look into monitoring end-user experience of applications delivered through Citrix.

End-User Experience

Whatever the cause of the application performance problems is, regardless if the application delivery is virtualized by Citrix XenApp/XenDesktop or not, in the end, it’s all about the end-user experience. In order to efficiently manage user experience we should be able to identify user and analyze each person’s experience.

Therefore it is indispensable to use an application-aware network performance monitoring (aaNPM) tool which can correlate end users to their interaction with applications virtualized with Citrix (see Figure 1).

apm citrix architecture[4]

Figure 1. Citrix-enabled architecture with an application-aware network performance monitoring (aaNPM) tool that is capable of analyzing the ICA protocol, understanding user sessions, seeing inside Citrix farm with Thin Client Analysis Module (TCAM) and monitoring the actual backend applications

The Operations team at NBSB used an aaNM tool to monitor the experience of the most active Citrix users (see Figure 2) and list each operation executed by the user (see Figure 3).

citrix users per channel 2[4]

Figure 2. Checking user experience of the most active users

citrix user activity[4]

Figure 3. Monitoring application performance through actions of a single user

Monitoring Citrix Channel Consumption

As we mentioned before, a reliable network is very important to ensure the high performance of applications delivered by Citrix. Even though Citrix is designed to require less bandwidth than other remote desktop solutions, this cannot be attributed to all virtualized applications. Multimedia, printing or accessing local USB drives require much higher bandwidth and can lead to performance problems of the main applications.

citrix channels[4]

Figure 4. Performance per Citrix channel shows that even with 25 users the Thinwire channel has much higher server realized bandwidth than other channels, e.g., Graphics that cannot deliver the same user experience even for only 2 users

The Operations team used the aaNM reports to track bandwidth consumption and user experience across different Citrix channels (see Figure 4) and listed users using a selected channel (see Figure 5).

citrix users per channel[4]

Figure 5. Listing users accessing one of Citrix channels

Applications Not Designed for Citrix

Performance problems may also occur when a secondary application, i.e., used by a minority of users, competes for the resources with the primary application. This happened at NBSB when one such application worsened the performance of the primary one on one of the Citrix servers (see Figure 6). As in our previous post, the Operations team was able to isolate the fault domain by looking at the Server realized bandwidth even though, the overall Network performance did not indicate any problems.

users rbw load balancing apps[4]

Figure 6. Exotic application (WebClient), not designed for Citrix, can consume resources which should be otherwise used by the main application (NBSB Access Exp)

The Operations team wanted to determine why the WebClient application affected other applications so much. They consulted the Operations report (see Figure 7) and saw that some users visited an online casino site frequently; that site happens to be a heavily interactive Web 2.0 service. The site transferred a lot of small files which affected the performance of other applications because Citrix could not leverage its delivery virtualization capabilities and had to transfer a lot of raw data across the network.

citrix web app usage[4]

Figure 7. Accessing web applications via Citrix is not a good idea. Here some users were cannibalizing performance of key applications by playing online games

Performance Problems at the Client Side

End-user performance problems can be also caused by the problems at the Citrix thin client side. The Operations team received an alert on a growing number of TCP zero window events indicating Citrix client problems (see Figure 8) that might happen on machines that are busy performing other tasks. They discovered when these problems occurred, the banking agent, who was at the customers office, was printing a loan contract for his client using a local printer. The printing process consumed most of the resources of the netbook he used and slowed down the Citrix thin client to a level at which the process could not respond on time to traffic incoming from the Citrix server.

thin client zero windowing[4]

Figure 8. TCP Zero Window problems reported by the aaNM tool


When many employees need to access the same desktop application it might be more convenient to use delivery virtualization technology such as Citrix XenApp/XenDesktop to provide the same user experience to all of them; regardless of what device they use, from a desktop computer to a tablet, all employees can use the same application without IT team setting them up. However, there is catch: Citrix needs reliable network to ensure unaffected end-user experience. Hence the Operations Team gets a new challenge in application and network monitoring.

Last week we showed how to monitor network performance to ensure proper distribution of load over both Citrix servers and the backend servers.

In this post we illustrated that certain issues may only affect (or be caused by) some users at certain locations. The Operations team at the National Bank of San Borodin required a holistic and in-depth end-to-end view of the whole application delivery to find the root cause of the problems. They achieved that by using Dynatrace Application-Aware Network Monitoring, a tool that enabled them to monitor not only the network, the infrastructure and the applications, but also analyze the end-user experience for degradation of the quality of service of applications and desktops delivered with Citrix XenApp/XenDesktop.

(This series is based on materials contributed by Pieter Van Heck, Krzysztof Ziemianowicz, Roger Boyd, Suneel Dhingra and Patrik Bohland, based on original customer data. Some screens presented are customized while delivering the same value as out of the box reports.)