Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Please, suggest a way to monitor data being passed over a named virtual channel between the Citrix ICA client machines and Citrix Server. Any hints on how it can be done externaly, e.g. with a sniffer?

Some details:

We have an application working on Citrix XenApp server side and clients working over Citrix ICA client API (v 12.1). Server side and client side perform additional communication within an ICA session by exchanging textual commands in simple requests/response fashion. Our logs of the client side code show that sometimes client receives OnChannelData event which ends up in GetChannelData returning empty strings (which is unexpected).

Our protocol doesn't have cases of passing empty string into the channel, so I beleve it might be a virtual channel issue caused by a high load and I'd like to monitor VC data exchange externally, not from our client or server side code.

Update: started corresponding thread on Citrix Developers Community Forum. It gives much more details which weren't seem suitable for a SuperUser question.

share|improve this question

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.