In v12.04 we were using server ack rtt metrics for XenApp servers as a measure of kernel response time. I believe in either v12.05 or v17 this metric started to be recorded much less frequently against these servers, and CGP RTTs were added.
My question is about why we don't see very many CGP RTT values recorded either (Approx 3k XenApp servers, and maybe 15 CGP RTT values recorded every 5 minutes)? Are these measures only available in the context of an observed session reliability handoff event? There is interest in migrating our reporting over to CGP RTTs, but the volume of data being recorded so low that I'm concerned about the relevance. Any assistance in helping to understand would be appreciated!
Answer by Kris Z. ·
RTT and ACK RTT are measured on TCP session level. They both are available in 12.x and 17.x and newer. However, ACK RTT measurement algorithm changed in 17.0 HS AMD, it's more accurate now independently of traffic levels. Previous releases may have reported highly fluctuating or unnaturally high ACK RTT when traffic levels were low (e.g. at night). Bottom line is that in currently supported versions ACK RTT can be used with confidence.ACK RTT is measured multiple times during the session, actually every time enough data is exchanged to force TCP stack send ACK immediately. There may be hundreds of measurements made every 5-min, then these are statistically trimmed to remove outliers and then median is reported as the ACK RTT for that 5-min period per client-server. Only when there's not enough data exchanged there will be no ACK RTT measurement present.
CGP RTT measurement is present if Citrix client and server performed it and then reported to each other. They can do it at the beginning of CGP session, so this measurement may be rare if sessions lat long. Its measurement frequency may be comparable to regular TCP ACK measurement (though algorithm is totally different - CGP RTT is measured by CGP client and server on the L7 level, while TCP RTT is observed on the L4 TCP stack level).
There is also ICA RTT, it is a purely synthetic measurement performed by the Receiver and reported back, we can intercept it if it has been performed. Its advantage is that it is truly reflecting whole data round trip, including Citrix app stack on VDA. But this metric may be disabled boy Citrix admin and in order to pick it up ICA has to have RC5 encryption disabled.
Hope this helps.