To measure the Citrix XenApp (Presentation Server/Metaframe) or Terminal Services link consumption for an application the best is: publish to users and watch. Yes! Users are totally unpredictable and is very difficult to know every thing that they can do in some scenarios.
But, you always need know how much bandwidth an applications needs to be workable or how many users you can fit in a specific link. To do this you can simulate a user working in your workstation through XenApp or Terminal Services and watch the link traffic in your network card with any link analysis tool that show results in charts. Doing this, you can get some estimate results that can be useful on starter projects.
If you intend give internet access through XenApp or Terminal Services to your users, forget the analysis because anything that you write you will be designated to the near litter available, when an user open a web site with animations or high definition graphs.
Personally, I like to use CommView or the free Live Bandwidth Monitor of Frameworkx, but you can get the traffic even with Resource Manager counters and Windows Performance Monitor, adding Network traffic related counters.
Live Bandwidth Monitor is a very simple tool that just give to you a graph of the utilization, and you can set the chart scale equal to a common link size value. For example, if you don’t know what link give to your users in a remote office, 256 kb, 512 kb, 1 Mb, 2 mb, etc, you can simulate how much this link will be busy without worries about calcs. Just select the scale and you will see a chart that your director can understand (with a brief explanation).
After ensure that your machine is not doing traffic on your network card, you can start XenApp or Terminal Services applications and see how much of your traffic yours applications do on your imaginary link.
But, don’t forget this things that you need consider in your link analysis to a common XenApp/Terminal Services environment:
- all applications that your users can access on XenApp or Terminal Services;
- % of active work of yours users on each specific season;
- print jobs consumption;
- monitors size or 2 monitors per user, that can cause more link consumption if screens are large;
- other devices consumption like phones, scanners, etc;
- Internet Explorer (or other browser if allowed) to see how internet can cause exorbitant latency on SBC environments;
- videos/animations on external medias (if allowed) or Windows Media Player (if allowed);
- Emails with images/animations/html;
- visualization of images on Windows Explorer;
- any traffic outside ICA or RDP protocol, like AD replication, email replication, support applications like Dameware or LanDesk, etc;
- special days or seasons to your business, like Christmas to large stores and manufacturers, or important days to some departments like financial, account, etc;
- latency, because some applications can require special latency limits;
- SpeedScreen tecnologies that can reduce the traffice utilization but affecting image quality;
To measure how much the print jobs can affect you link utilization, you need consider also:
- How many printer do you have;
- How many jobs are printed by day;
- What’s the average size of jobs printed by day;
During the traffic data collection, you will many see traffic peaks. You need identify the cause of these peaks and anlyze how much they can affect the user perception. For example, if you have a bit of rapid peaks, probably these peaks will not affect, but if you have much large peaks taking some seconds, probably the user will be affected, waiting for a link availability after the link peak.
Get all this data, analyze and compilate everything is not so difficult. Difficult is anwser when someone ask to you (expecting a ready number): How much link I need to 10 users in a remote site using XenApp? And how much to TS?