Product Documentation

Architecture

Mar 16, 2015

Before you can use your Citrix product, you must install Citrix Licensing. Citrix Licensing is a system of components that function together. This system includes:

  • License server - A system that allows licenses to be shared across the network.
  • License files - The files that you need to license your product. These files are stored on the license server.
  • Console - The interface you use to manage your license files and your license server. For Licensing version 11.6.1 and later, this is the License Administration Console. (For previous versions, this is the License Management Console.)
  • Simple License Service - Enables allocation and installation of license files on a license server using a web page interface.
  • Product-side settings in your Citrix products that are associated with the license server.

Overview of Citrix Licensing

Every Citrix product environment must have at least one shared or dedicated license server. License servers are computers that are either partly or completely dedicated to storing and managing licenses. Citrix products request licenses from a license server when users attempt to connect.

Servers running Citrix products contact the license server to obtain licenses.

diagram of servers obtaining licenses

When users connect to a Citrix product, it draws licenses from the license server. That is, the Citrix product requests to check out a license from the license server on behalf of the user or client device. When the license is successfully checked out, the user can run the product.

Depending on the size and configuration of your product deployment, you may deploy licensing on a server shared with other applications, a dedicated license server, or multiple license servers.

License files must be located on the license server that is associated with the product you are licensing and the product must be configured to communicate with that specific license server. The License Administration Console lets you manage and monitor your Citrix licenses by providing a user interface to the license server. You can view a dashboard of licenses and alerts, import license files, and manage license server settings.

Licensing operations overview

Typically, the first time a user connects to a Citrix product, the product requests a license from the license server. When the license server grants a license request, the Citrix product reserves a license for its use. Reserving licenses for this purpose is known as checking out licenses. When the user logs off from the product server, the product returns the license to the license server. This process is known as checking in licenses. With some Citrix products the license is checked out as soon as a user connects to the product, and the license remains checked out for a predetermined amount of time.

Each time a Citrix product starts, it opens a connection to the license server by checking out the startup license. The startup license is a Citrix system file that enables Citrix products to maintain a continuous connection to the license server. The following figure shows that each product forms its own constant connection to the license server.

The Citrix product makes a continuous connection to the license server. The license server can support up to 10,000 continuous connections.

For example, when a server running XenDesktop requests a license, the product retrieves the license server name and port number information from the data store and establishes a connection to acquire the appropriate licenses.

There are three stages of the license checkout process.

Diagram of checkout steps

A Citrix product goes through a three-step process to check out licenses:

  1. At startup, a computer running a Citrix product checks out a startup license.
  2. A client device connects to the product server.
  3. The product requests a license from the license server.

Citrix products, such as XenDesktop, store a replica of the licensing information from the license server, including the number and type of licenses. If a Citrix product server loses its connection to the license server, the product enters a grace period and uses its local record of the licenses to continue licensing the product during the grace period. Citrix products update this record every hour.

Grace periods

If product servers lose communication with the license server, the users and the products are protected by a grace period that allows the product servers to continue operations as if they were still in communication with the license server. After a startup license is checked out by the Citrix product, the product and the license server exchange "heartbeat" messages every five minutes to indicate to each other that they are still up and running. If the product and the license server fail to send or receive heartbeats, the product lapses into the licensing grace period and licenses itself through cached information.

The grace period is set by Citrix. It is typically 30 days but can vary depending upon the product. The Windows Event Log indicates if the product has entered the grace period, the number of hours remaining in the grace period. If the grace period runs out, the product stops accepting connections. After communication is re-established between the product and the license server, the grace period is reset.

The grace period takes place only if the product has successfully communicated with the license server at least once.

Note: For products that operate in disconnected mode, the grace period takes effect after the preconfigured time specified for the license check-out expires.

Disconnected mode

Some Citrix products can operate in a disconnected mode (not connected to the server). These products allow a user to check out a license and operate the product for a preconfigured period of time that is set by the administrator. In this case, heartbeat messages are not exchanged. One example of disconnected mode is when a user checks out a Single Sign-on license for a laptop, and then uses the laptop when it is not connected to the server. For products that operate in disconnected mode, the grace period takes effect after the preconfigured time specified for the license check-out expires.

License server components

The license server comprises several licensing components:

  • Citrix vendor daemon
  • Console
  • License files
  • Options file
  • Startup license
Figure 1. License Server Components. This diagram shows the Citrix product using TCP/IP to connect to license server components.

Licensing components diagram
Citrix vendor daemon
Licenses are granted by the Citrix vendor daemon (CITRIX.exe), a process that runs on the license server. The Citrix vendor daemon tracks the number of licenses that are checked out and which product has them. Citrix products communicate with the Citrix vendor daemon using TCP/IP. By default, the Citrix vendor daemon uses TCP/IP port 7279.
License files
License files are text files created by Citrix that store licensing data. They contain information about the product licenses and the number of licenses, as well as system information such as the name of the license server. The license server uses these files to determine whether to grant a license to a Citrix product.
Startup license
The startup license (citrix_startup.lic) allows Citrix products to communicate with the license server using a continuous open connection. The startup license:
  • Tracks which product servers are connected to the license server
  • Stores licensing system information
  • Does not affect your license count
Caution: Do not edit the startup license file, or any other license files.
Options file
The options file (Citrix.opt) is a license server configuration file that the Citrix vendor daemon reads every time it restarts or receives a command to reread the file. This configuration file defines licensing behavior—the number of licenses a product server can use, the location of the system logs, and other user-defined customizations.

The License request process

When a product requests a license from the license server, the Citrix vendor daemon determines whether a license is available for the request.

The license request process has two phases: the product startup phase and the user connection phase.

Product Start-Up Phase
  • When a Citrix product starts, it retrieves the license server location from its data store
  • The product connects to the Citrix vendor daemon
  • The product checks out a startup license
User connection phase
  • A user connects to a computer running the Citrix product
  • The product requests a license from the license server
  • The Citrix vendor daemon checks to see if any licenses are available and grants or denies the product's request
  • The license module in the product grants or denies the use of the product based on the response from the Citrix vendor daemon