How does Citrix Presentation Server know what licenses you have when the server connection is lost?

One of the features of Citrix Presentation Server licensing that just about everyone knows about is that an individual Presentation Server will continue to function for 30 days after it loses connectivity to a Citrix License Server.

One of the features of Citrix Presentation Server licensing that just about everyone knows about is that an individual Presentation Server will continue to function for 30 days after it loses connectivity to a Citrix License Server. Citrix does this in order to provide quasi-enterprise scalability of the licensing component, in that Presentation Servers in a multi-site farm will work for 30 days if the WAN link to the license server goes down.

But after 30 days, no new connections will be accepted.

This is cool, but it leads to the question, “How does the server know how many licenses I have and what’s allowed if it can’t contact the license server?”

Most people I’ve met over the years have assumed this information was stored in the zone’s data collector (and therefore in the IMA local host cache on each server). However this is NOT correct. In fact in PS3 or newer farms (with no XP servers), the zone data collector / local host cache do not maintain ANY licensing information.

Instead, information about Citrix Presentation Server licenses is “cached” locally on each member server in a file called mps-wsxica_mps-wsxica.ini, stored in the \Program Files\Citrix folder.

The wsxica_mps-wsxica.ini file is a simple text file. It contains a snapshot of the number, types, and expiration dates of the various licenses maintained in the licensing database. Here’s an example (with the CRC values changed, rendering this file not valid for actual use):

[LSD]
Version=3
LicModel=1
LSName=edgelabdc
ProdName=MPS
ProdFeatName=ENT
CRC=3470353123
SubSectionCount=2
[PLD_POOL_NODE_0]
PLD=CITRIX
HasMaxLicenseCount=0
CRC=1453495123
SubSectionCount=1
[PLD_POOL_LIC_NODE_0_0]
NumLic=5000
ConnLimit=0
GracePeriod=96
LicExpTime=3281852161200000000
LeaseExpTime=0
VendorStr=;LT=SYS;GP=96;SA=0;DUP_GROUP=HV
SAExpDate=2002.0101
CRC=2113943123
[PLD_POOL_NODE_1]
PLD=MPS_ENT_CCU
HasMaxLicenseCount=0
CRC=2311356123
SubSectionCount=1
[PLD_POOL_LIC_NODE_1_0]
NumLic=1000
ConnLimit=0
GracePeriod=720
LicExpTime=128615905200000000
LeaseExpTime=0
VendorStr=;LT=Eval;GP=720;CL=ENT,ADV,STD,AST;SA=0;ODP=0;AP=ADMIN/LOGON/-84D:NONADMIN/LOGON/-28D
CompList=ENT,ADV,STD,AST
SAExpDate=2007.0726
CRC=2954033123

Anyone who’s ever looked through a .LIC license file from MyCitrix.com will notice some similarities to this INI file. The wsxica_mps-wsxica.ini file is created automatically on each Presentation Server the first time a server contacts the Citrix License Server, and it’s updated whenever any licenses are changed in the licensing database.

For the most part, knowing about this file and how it works is really anecdotal trivia. But there are a few important takeaways:

  • If you ever have a problem where users are not able to login (with a licensing error) while your Presentation Server is not connected to the licensing server, now you know where to look. (Is this file present? Is it corrupt? Etc.)
  • During a license server connectivity outage, yes, you can reboot your member Presentation Servers, and yes, you can reboot your data collectors. The mps-wsxica_mps-wsxica.ini file will stay put as long as you don’t actively delete it.

Join the conversation

7 comments

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

Very interesting information, thanks a lot
Cancel
What does it mean by "GracePeriod=96" on line 17? How frequently does member server sync license information with license server, 1HR? Thanks a lot for those hard to find information =)
Cancel
That means that's a grace period of 96 hours for that license, which is just the Citrix startup license. The GracePeriod=720 in the lower sections is the grace period for the real licenses you add, which works out to 30 days. As for how often it's updated, I have no idea.
Cancel

just a quick thought, if the file is in cache and you rebooted the server, then you would loose the wsxica_mps-wsxica.ini file and not have the license information. Which would make the presentation sever down as well correct?

 

Cancel
Don't confuse the term "cache" with memory (RAM).  A lot of stuff is cached by storing it in a file.  In this case, the file remains, so a reboot doesn't lose the information.
Cancel
We had some temp licenses before we purchased permanent. When I deleted the temp licenses from the licensing server I still recieve a message that we are using temp licenses. If I delete this file will it be recreated with the new information?
Cancel
Say the License server goes offline, I know users will still be able to connect but are these additional connection sessions stored in this or some other file so that when the License server does comes back online and the citrix servers communicate back to it, will then upload this updated connection information and possibly cause you to be overscribed. For example. 50 User License file in place, 45 connections in use, license server goes down, 10 more sessions connect, License server comes back online. What happens when the servers hosting those sessions connects back to the license server? Will the 51-55 connections get dropped?
Cancel

-ADS BY GOOGLE

SearchVirtualDesktop

SearchEnterpriseDesktop

SearchServerVirtualization

SearchVMware

Close