You are on page 1of 7

Basics of Citrix Presentation Server 4.

0
Deepa – Citrix Community member of Orkut.

Basics - I

Citrix Presentation Server is the flagship product of Citrix Systems Inc. Citrix
Presentation Server 4.0 is a part of the Citrix Access Suite 4.0. The other products
of the Citrix Access Suite are:

Citrix Conference Manager


Citrix Password Manager
Citrix Access Gateway

Citrix Conference Manager is bundled free with the Citrix Presentation Server and is
the only product that is dependent on the presence of Citrix Presentation Server. The
other products can be installed, configured and managed independently. Briefly, the
component of the Citrix Access Suite has the following functions:

Citrix Presentation Server – Presentation Server is used to make applications


available to users and can be managed and configured centrally. The other features
include load balancing, resource manager, network manager, installation manager.

Citrix Conference Manager – Citrix Conference Manager is used to facilitate


application conferencing wherein the application file can be shared and used by
multiple users simultaneously.

Citrix Password Manager – Single Sign On solution from Citrix

Citrix Access Gateway – SSL-VPN solution from Citrix which can be completely
integrated with Citrix Presentation Server.

The CCA training session will be focused on only one product of the Access Suite –
Citrix Presentation Server. The Presentation Server comes in three editions. They
are:

1. Standard – Application Management


2. Advanced – Application Management & Load Balancing
3. Enterprise - Application Management, Load Balancing, Installation Manager,
Resource Manager, Network Manager

Briefly, the various functions of the editions can be described as follows:

1. Application Management – Application Management is the core functionality


of the Presentation Server and is available across all its editions. It allows for
deploying, configuring and managing applications and making them available to
multiple users. The feature has been enhanced to also make single-user applications
multi-user friendly.
2. Load Balancing – In Presentation Server, load balancing is the feature by
which the user is directed towards the least loaded server. The server load is
calculated on a set of criteria that are completely configurable by the administrators.

3. Installation Manager – It is the feature which is used to package and deploy


applications to all servers in a server farm

4. Resource Manager – It is the enhanced version of the Windows Server


Performance Monitor. Apart from monitoring the CPU, Memory and Page File usage,
the Presentation Server Resource Manager also tracks things like disk space,
network cards, and connection to the data store etc. All the monitoring data can be
collected for trend analysis in a database.

5. Network Manager – It is just a plug-in to other network manager tools like HP


OpenView.

To provide any or all the above functionality of the Presentation Server, the following
components may or may not be required (the requirement of the component
depends upon the functionality that is to be provided):

1. Presentation Server
2. Presentation Server Clients (Program Neighborhood, Program Neighborhood
Agent, Web Client)
3. Web Interface Server
4. Data Store Server (may be on the same server as the Presentation Server
but not preferred)
5. License Server (may be on the same server as the Presentation Server but
not preferred)

The above components of the Presentation Server can be managed by the following
tools:

1. Citrix Management Console – Used to publish applications, delegate


administrators, define load balancing parameters, deploy packed applications,
configure policies, track the resource usage of the servers in a server farm. All the
configuration made through the Citrix Management console is stored in a data store.
This console can be installed on any workstation and used by the administrator.

2. Access Suite Console – It is a java based console. This console is primarily


used to view alerts generated by applications and server, configure web interface
server, configure program neighborhood Agent and Conference Manager. This is an
integrated console for monitoring all the products of the Citrix Access Suite from a
single console. This console can be installed on any workstation and used by the
administrator.

3. ICA Toolbar – It is a collection of tools which allow the administrator to


configure farm wide settings. Client update database, connection configuration tool,
Shadow Taskbar etc are made available to the administrator through this toolbar.
4. License Management Console - Used to manage licenses being used by
the various products of the Citrix Access Suite Console.

Before we proceed further with the detailed discussion on the features of


Presentation Server it is mandatory to explain certain terms and concepts of Citrix
Technology. Following is a brief description of the same:

IMA (Independent Management Architecture) – it runs as a service. It is a collection


of subsystems (*.dll) that communicate with each other to provide the services/
functions of the Presentation Server. It uses two ports – 2512 and 2513. 2512 is
used as a port for communication between servers and 2513 is used as a port to
communicate with the CMC.

Data Store – Data Store is a static collection of data. All server farm configurations
are maintained in the data store which is only readable through the CMC. Data Store
can be created on Oracle, IBM DB2, SQL, MSDE and Access. Access is default
(mf20.mdb). Access database or the MSDE database the method of accessing the
database is indirect. For all other databases it is direct. The static information
includes – Server Farm Name, List of published application, policies, servers in the
farm, administrators of the farm and their rights, installable packages, load balancing
rules.

Local Host Cache – Local copy of a subset of info stored in the data store. It is
responsible for providing the services to the users when the connectivity to the data
store has been lost.

Data Collector – Holds dynamic data – No. of active sessions, disconnected


sessions, licenses used, load balancing information. Most Preferred, Preferred,
Default Preference, Not Preferred.

Server Farm – Collection of servers sharing the same data store

Zone – Logical division of the Farm. Each zone has it sown Data Collector. May or
may not follow the subnet boundaries.

ICA (Independent Client Architecture) – Connectivity protocol used by clients to


connect to the server. Uses port 1494. It has 32 virtual channels, which can be
enabled/disabled. There is a virtual channel for printing, audio and video. They can
be turned off to make the channel thinner & facilitate optimum performance over
slow WAN Links.

Application Management - I

Here we will take a look at the core feature of Citrix Presentation Server –
Application Management.

Application Management is completely configurable through the CMC. Popularly


called application publishing it makes an application available to all or some users.
These applications run as sessions on the server. All published applications are
managed centrally. Three types of publishing are:
1. Application Publishing – Publishing an .exe, .com, .bat file and making it
available for all or selected users. Applications need to be installed on the server for
it to be published.

2. Content Publishing – Publishing a particular data file for use. Data file can
be a .pdf, .xls, .doc, .html file. Content publishing is not limited to the file types
mentioned here.

3. Desktop Publishing – Similar to an RDP session on a server. Only


difference is that ICA is used instead of RDP protocol.

All published applications that the user has access to is called an Application Set.
Application Folders can be created to lend organization to the applications that the
user has access to. An application set is made available to the user through the
Presentation Server client. An application set contains only those applications that
belong to a single server farm.

Note: Application Publishing has some advantages over Desktop Publishing.


Application Publishing is leveraged by the administrators to maintain centralized
control over the applications and maximize resource usage and cater to load
balancing rules. Also, there is restricted movement of the user within the system
resources of the server in application publishing thereby lending a sense of security.

Application can be published in the following manner:

1. Start->Programs->Citrix->Management Consoles->CMC
2. Authenticate to the server farm using your credentials.
3. Expand the Server Farm Name to display the list of folders under it
4. Right click on the Applications Folder and choose Publish Application.
5. Follow the prompts to publish the application.

Application Management - II

Publishing applications and content becomes a much broader when the concept of
content redirection is considered. The following excerpt taken from a Citrix
publication explains the concept of content redirection very well:

With the capability to redirect application and content launching from server to client
or client to server, referred to as content redirection, access to information is
expanded even more. You decide whether users’ access information with remote
applications published on servers or with applications running locally on client
devices.

Content redirection provides flexibility when considering application management


and information storage locations and allows you to more effectively manage all of
the resources available in the enterprise. You can also use this capability if your
users connect to resources published on servers through the Web Interface.

Note : For your users to access content published with a specified Universal Naming
Convention (UNC) path and through the Web Interface, you must publish the content
with content redirection and redirect to a correctly published application.

You can use the following methods, or combination of methods, to broaden


information access:

• Use content publishing to provide access to document files, media files, Web
pages, and any other type of file, regardless of storage location. Shortcuts to the
published content are presented to users the same way shortcuts to published
applications are presented. You can decide whether users open published files with
local applications or with remote applications published on servers.

• Use content redirection to redirect application launching from server to client


or client to server. If a user receives an email attachment in a locally running email
program, you can use content redirection to allow the attachment to be opened in a
remote application published on a server. ......

You can determine which applications—remote or local—users launch in which


situations.

Application Management – III

The scope of application management has further been broadened by the


introduction of Application Isolation Environment. Attached is an article written by
Rodney Medina which explains the concept in great detail.

Please visit the link below for the article:

http://www.brianmadden.com/content/article/Understanding-Application-Isolation-
Environments-AIE-in-Citrix-Presentation-Server-4

Performance and Load Balancing

Apart from publishing applications there are a lot of things that one needs to consider
while working on a Presentation Server. One of the most important task is to provide
optimum performance of the application to all the users. Add to that the requirement
of 24 x 7 availability, then post installation server tuning tasks can be a very
impressive.

Taking into consideration the fact that the pre-requisite of installing the Presentation
server is the presence of Terminal Services, tweaking the performance of the
Terminal Services itself goes a long way in providing optimum performance of
applications to users.

The following link to a white paper is very complete in every sense w.r.t.
performance tuning:

http://www.brianmadden.com/content/article/Its-Here-My-Comprehensive-White-
Paper-about-Terminal-Server-and-Citrix-Performance-Tuning-is-Ready
There are certain application specific performance tuning parameters as well which
may be tuned to deliver better performance.

A related concept to performance is that of load balancing. As had been said before,
the feature of load balancing is available in the Advance and the Enterprise edition of
Presentation Server. Presentation Server load evaluators can be configured through
the Citrix Management Console. The default and the advanced load evaluator are
bundled with the Presentation Server. The administrator cannot delete the bundled
load evaluators. They cannot be modified. It also gives the option of defining a
customized load evaluators. Each load evaluator is a collection of rules/ criteria
which define how the load on a server is calculated.

The default load evaluator is based on single criteria - Server User Load with a
default value of 100. The advanced load evaluator is based on three criteria -
Memory Utilization, CPU Utilization and Page Swaps. These criteria are defined on
the basis of an upper and a lower threshold value. The server reports full load when
the higher threshold value is crossed.

The server reports no load when the value of criteria is lower than the lowest
threshold value.

Custom load evaluators can be created by making a copy of the bundled ones or
making a fresh one. Any of the following criteria can be used to define the load
evaluator:

1) Server Load Evaluator


2) Application Load Evaluator
3) Context Switches
4) Page Fault
5) Page Swap
6) Disk I/O
7) Disk Operations
8) CPU Utilization
9) Memory Usage
10) IP Range
11) Scheduling

Arriving at the threshold values can be a time consuming task since it would entail
monitoring the server performance under various user loads. Different applications
use different quantities of resources and the type of hardware also determines the
same. So there is no set standard for threshold values.

Once a load evaluator is defined, it can be attached to either the servers in the farm
or the published application. A server or an application can be attached to only one
load evaluator at a time. It is mandatory to have a load evaluator for a server but that
is not so for an application. An application that has a load evaluator attached to it is
hosted on a server which also has a load evaluator attached to it. The load of such a
server will be cumulative for both types of load evaluators. If any one of the criteria in
any one of the load evaluators crosses the higher threshold value, the server reports
a full load. The Load Manage Monitor option of the application and the server gives a
graphical representation of the values being reported by the individual criteria of the
load evaluator.

Note: The load that the server has is reported to the Data Collector. When a user
launches an application it goes to the data collector to get the information on the
least loaded server for that application and gets directed towards it.

Virtual Memory Optimization

Virtual Memory Optimization (VMO) is another way of improving the performance


time of the applications that the user is making use of through Citrix PS. This is a
new feature that has been introduced in PS 4.0.

This feature basically reduces the time taken to launch the applications. Each
application makes use of certain file which gets loaded in particular memory address
which is called base address. The base address of various .dll files can be the same
which leads to collisions and looking for an alternative memory address to place the
file in. This increases the time taken to launch an application.

VMO takes care of this latency that is experienced while launching applications.
What it basically does is that it stores the alternate memory address that the file uses
in a file called repair.sfo. CtxSfoSvc.exe is the file that is responsible writing onto the
repair.sfo. At a pre-configured time, CtxBace.exe reads the repair.sfo and changes
the files listed in the repair.sfo to always be loaded on the alternate memory address.
The results of running the ctxbace.sfo is found in bindxxx.sfo. CtxBace.sfo does not
destroy the original file. It attaches a hidden file with the same name but a different
time stamp and attaches it to the original file. CtxTestDll.exe tests the rebased file for
proper functionality after the file has been rebased. A driver called CtxAltstr.sys
intercepts each request that is made for a file. In case the file is rebased, then the
modified file is loaded into the memory otherwise the original file is loaded.

There are some applications that do not function well when they are rebased. Any
file which has a digital signature, any file which is protected by Windows Rights
Management are resistant to rebasing and should be included in the Exclusion list of
VMO.

VMO can be configured at the farm wide and server level. It is scheduled to run at a
specific time on a farm level.

To know more about the feature visit:

http://www.dabcc.com/forumcontent.aspx?sectionid=20