Citrix XenApp 6.0 is an agent based solution born from Citrix Presentation Server and related server-based computing technologies which also provide application streaming technology.
The application streaming technology used by Citrix in XenApp was originally developed as Project Tarpon and appeared commercially in Citrix Presentation Server 4.5.
XenApp's streaming profiler is used to package applications by installing and configuring applications on a 'clean' system, that is one which is has no additional applications installed. The streaming profiler takes a snapshot of the 'clean' system prior to application installation and then after the application has been installed.
These snapshots are then compared and the differences used to form the application package. This packaged application is streamed from a central source (such as a server) to the users computers.
The packaged application itself executes on the users computer without actually requiring the application package to be installed on the user's device. This allows applications to be deployed to users without requiring administrative rights for application installation.
For the packaged application to work, an agent is required and this is installed on the user's device. The agent called Citrix Offline App Plug-in and processes the application package, creating the Application Isolation Environment (AIE) from where the application will be executed.
The AIE environment isolates the packaged application, allowing multiple applications to run independently of each other or together if required in isolated environments. The application package streamed to the users computer contains files (application files, DLLs and registry settings) which are downloaded into the AIE and executed.
The term 'streaming' is not technically correct term for this technology as all that's happening is files are being downloaded into the AIE, which is really an extension to the AIE technology introduced in Presentation Server 4.5. The main difference being where the AIE Isolation environment is actually launched, as in Presentation Server 4.5 the isolation environment was launched on the server and with the XenApp 5.0 streaming version, the isolation environment is launched on the user's device.
Unlike applications presented using Citrix XenApp's presentation virtualization technology, the streamed applications are available offline subject to them being used at least once prior to going offline. This is possible by the Citrix Offline App Plug-in on the user's device caching the application package after it's been executed once and then executing the application package from the cache the next time it's used. This improves application performance, without requiring the application to be downloaded again.
Any application updates required are as straightforward as simply updating the application package on the central server used to store the packages. When the user's device executes the application from the cache, a check will be made (subject to network availability) to see if there are updates (or whether the application package is corrupt) and if network connectivity is available, an updated application package will be downloaded.
It's important to note that the technology used by Citrix here is not application virtualization technology as used by the likes of Microsoft's App-V and VMware's ThinApp but is instead more of a file and registry redirection service into an isolated environment.
Citrix XenApp Streaming is available in the Enterprise edition (and higher editions) of Citrix XenApp and requires concurrent user (CCU) licenses to be purchased for use.