Citrix Latency blog originally posted by Citrix CTP, George Spiers.
Citrix latency, the delay before the transfer of data, is one of the critical user experience measurements for many technology solutions, and one of the top, when judging the quality of end user experience on Citrix Virtual Apps and Desktops.
Why is Citrix so slow?
Have you ever received a “Citrix is slow” user complaint? I will expect the answer to be yes. It is very common, even more so for remote workers. The reason Citrix is slow might not be related to high Citrix ICA latency at all, but there is a good chance it is. You see, there are multiple reasons why latency could be high for a user remotely connecting to their Citrix app or desktop using something like Citrix Gateway or full VPN, such as:
- User is connected to WIFI but the signal/coverage is poor.
- User is connected to public WIFI which has a bandwidth cap, or contention from other people sharing the same connection.
- Local device network cards or wireless adapters are running old, outdated drivers, or there could be hardware faults impacting network performance.
- Packet loss experienced due to old or faulty broadband equipment that needs to be refreshed by the broadband provider.
- Local device running low on RAM and available CPU, causing lag to ICA session.
- Local broadband overloaded by other household members streaming videos or playing online games.
- Overall public internet overloaded due to increase in usage caused by COVID stay-at-home requirements.
To help gauge user experience, Citrix latency is defined by two metrics:
- ICA RTT – This is Citrix ICA latency and Thinwire latency, aka the time between the user clicking or typing into something on a virtual app or desktop, and the moment that action is graphically displayed to the end user. For example, clicking on a menu drop-down within an application, or typing into an Outlook mail window. This can be more easily known as screen lag. Application performance could increase ICA RTT.
- Latency – Otherwise known as Citrix ICA latency, this metric captures the bottom-line network latency and ICA stack latency between the client and VDA server. For example, latency between client-side Winstation Driver and VDA Winstation Driver. Think similar to a ping test. System performance could increase ICA RTT and ICA latency.
How does ICA round-trip latency impact the user experience?
When ICA round-trip latency is high, the end user may notice a delay when they click or type within their ICA session. Citrix technologies are quite good at controlling latency and minimizing it where possible with features like Adaptive Display and Adaptive Transport, but there will be times when the latency is too high and the end user experience starts to become impacted. It is at these times when you may get those “Citrix is slow” complaints and have to start some investigations.
Remember that many of your remote workers are accustomed to working from the office, where they receive a low latent connection to their virtual apps and desktops. This results in the end user having a certain expectation for the performance of their session. They know the experience they normally get when working within the office, and they expect the same experience when connected remotely.
Now that we have some metrics from Citrix, we can easily look up the affected user session and immediately understand ICA RTT for that session. However, what do the numbers mean?
Everyone will have their own perception of good and bad latency, and personal opinion mixed with experience will determine what the numbers mean to you. Also, depending on the application and desktop in use, latency may not impact users the same way.
I typically like to categorize the numbers into Great, Good, and Poor. The numbers I use to categorize are estimates, so the categorization is more general. For example, you could adjust the numbers by 30ms either way, but from my own testing and experience I would categorize them as follows:
- Great: Typically, anything between 20-180ms
- Good: Typically, anything between 180-240ms
- Poor: 240ms+
The challenge is finding what causes the latency. Is it the user’s home network, Citrix Gateway, internal network, VDAs, high CPU, etc? If you want to find the root cause, you always need more information rather than only having numbers thrown at you. Unfortunately, most of the time, Citrix’s internal tools, like Citrix Director, will not provide enough information to understand what is causing latency. This is when you need to turn to other products, specifically purpose-built to monitor Citrix. Solutions such as Goliath Performance Monitor can not only show the numbers, but also explain the reasons for them.
Make Citrix Troubleshooting Easy
With Goliath, IT administrators, or even the support desk, can find any existing or historical user session. Now when the admin begins to investigate a ‘Citrix is Slow’ ticket, they can navigate to that user session and quickly identify if that user is experiencing high latency (Image 1).
Image 1: Goliath’s Virtual Apps and Desktops view displays both active and historical user sessions to support Citrix troubleshooting.
Then by clicking into that user session, you as an IT admin can see every IT element that could impact that end user’s session. From the user’s endpoint, to logon details, to connection and user behavior, to all Citrix and supporting infrastructure components. Knowing the user has high latency, you can click into the ICA/HDX tab. Here you can now see additional correlated metrics you don’t get with Citrix alone, that prove root cause of the slowness. In the example in Image 2, this user has both high latency and network latency above 240ms and in that same period slow connection speed well below 10mb/s. As an admin, you can draw the conclusion and prove to the user the slowness is an issue with the connection point before reaching Citrix Gateway. If all else looks good in the data center, root cause is most likely an issue with the user’s home ISP.
Image 2: Goliath correlates latency metrics from all ICA/HDX channels, enabling IT admins to isolate and prove root cause of remote worker issues quickly. In the use case above, the root cause is somewhere in the connection point to the Citrix Gateway. There is a high likelihood then it is an issue with their home WIFI if everything else looks good in the data center.
Goliath offers additional insights into a variety of ICA channels that can help IT Pros identify and prove root cause from audio or graphical files consuming too much bandwidth, a large print job stuck in queue, or even if a large clipboard file exists, all potentially negatively impacting user experience. When it comes to troubleshooting remote worker slowness issues, latency is to confirm the issue is present, but as an admin you need additional correlated, metrics to prove root cause and resolve.