Citrix Profile Management Architecture - Why it is Not Based on a Mandatory Profile Any More

Ron Kuper asked in a comment why the architecture of Citrix Profile Management was changed from being based on mandatory profiles to capturing the entire profile content by default. This change happened between versions 1 and 2.

A Bit of History

Citrix Profile Management is based on the product sepagoPROFILE, which I architected and co-developed. sepagoPROFILE was a differencing solution based on a mandatory profile, i.e. the product identified which parts of the file system and registry were changed during a user session and stored those deltas in a dedicated directory per user. The reasoning behind this was that file server space would be saved since only partial copies of each profile had to be stored.

This proved to be wrong.

Mandatory profiles are typically very small. The size of a mandatory profile is negligible compared to what gets stored individually, per user, during the lifetime of a profile.

Downsides of Mandatory Profiles

With this reason pro mandatory profiles out of the way, let us have a look at the cons:

  • Merging large amounts of data into the registry at logon can be slow. This prolongs logons.
  • Scanning the registry for changes takes time. This prolongs logoffs.
  • Creating a mandatory profile is not as easy as it sounds. This complicates deployments.
  • There is no easy migration path from existing local and roaming profiles. This also complicates deployments.

Central Management of User Settings

We felt that these downsides outweighed the only really remaining advantage of an architecture based on mandatory profiles: the ability to centrally configure the user environment by changing registry values or placing icons on the desktop.

Additionally, there a much better ways to centrally manage user environments than by tweaking a mandatory profile. Either use Microsoft’s Group Policy Preferences or one of the alternatives from third-party vendors.

Switching Architectures

When sepagoPROFILE was acquired by Citrix in 2008 both teams felt that this was the perfect (and only, really) time to change architectures. While a rebranded sepagoPROFILE was released as a beta version of Citrix User Profile Manager (UPM), we modified the code to work with local profiles. That version was released as Citrix User Profile Manager 2.

Thus UPM version 1 never really existed. The first “official” version was version 2.

Comments

Related Posts

Folder De-Localization with Citrix User Profile Manager (UPM)

Windows user profiles prior to Vista / Server 2008 contain localized folder names. End users expect that, of course, but admins tend to hate it because automated management becomes much more difficult. How can this dilemma be resolved? End users only see the local copy of the profile, while admins mostly have to deal with the central copy on a file server. Wouldn’t it be cool to have a “translator” component that makes sure local folders are localized while central folders are in one language only?
User Profiles

Citrix User Profile Manager: How Registry Exclusion Lists Can Mess Up Group Policy Processing

The documentation of Citrix User Profile Manager (UPM, for short) recommends excluding the following registry keys from processing: HKEY_CURRENT_USER\Software\Policies HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies The net effect of this is that the Citrix profiles managed by UPM do not contain any policy settings. The reasoning behind this being: Policies are reapplied anyway during the next logon, so there is no reason to waste CPU cycles on synchronizing such “redundant” information.
User Profiles