Product Review: UniPrint Server 6.0
Product: UniPrint Server 6.0
Product Homepage: www.uniprint.net
Evaluation Version: click here
- Client – Windows XP Pro SP2, Citrix ICA Client 9.230, Microsoft Remote Desktop Client 6.0, UniPrint Client 3.62
- Terminal Server – Windows Server 2003 SP1, Citrix Presentation Server 4.0, UniPrint Server 6.0
- Domain Controller – Windows Server 2003 SP1, Citrix Web Interface 4.5
Anyone who’s ever managed a terminal server or Citrix environment knows that printing is challenging. Users’ requirements are simple, they want to be able to print to any printer, from any application, over any network connection from any type of client. As an administrator of a server based computing environment, we know this is easier said than done.
The following is a list of challenges encountered in an environment without a 3rd party printing solution, such as UniPrint:
- Printer drivers between client and terminal server must match
- Printer drivers not written for use on terminal server cause spooler and server instability
- Print jobs use more WAN bandwidth than is available
- Applications require a static printer name
- Users are confused by printer naming convention
- Printing to PDF requires a 3rd party PDF Writer compatible with terminal server
- Host based printers are not supported, i.e. HP Printers utilizing LIDIL Printing Language
- Economy printers don’t provide an installer that works on terminal server
- Client printer autocreation takes time, server resources and has inconsistent results
What does UniPrint do to address these challenges:
- Installs a single PDF based printer driver
- Allows administrators to remove “all” other printer drivers from terminal servers
- Does not autocreate printers
- Uses a single local printer instance named “UniPrint”
- Allows printing to any client printer
- Seamlessly transfers PDF printing output from the terminal server to the client, instead of PCL or PS data, greatly reducing printing traffic.
UniPrint 6.0 consists of server and client components. The UniPrint Server is installed on each terminal server, whereas the UniPrint client is installed on each client computer.
Before installing the UniPrint Server on your Windows Terminal Server or Citrix Presentation Server it’s recommended (by Ingenica) to do the following:
- Remove all other printer drivers installed on the target terminal server. I accomplished this via the driver’s tab of the terminal server’s printer server. The following picture shows only the UniPrint Printer Driver, as I removed the Citrix Universal Printer Drivers and my PDF Writer before the UniPrint Server Install.
- Disable printer autocreation done by Windows Terminal Server or Citrix. Since one can connect to a Citrix Server via ICA or RDP, I disabled client printers via both the Citrix “ICA-tcp” and Microsoft “RDP-tcp” connections in the Terminal Services Configuration. This could also be accomplished via Group Policy or Citrix Policy.
The server install is MSI based, so it can be installed via your automated deployment mechanism of choice, i.e. Group Policy, or manually. In this review, I installed UniPrint manually.
The first choice I encountered during the install was which group of users to allow to use UniPrint. By default the “Everyone” group is assigned “Print” permission to the UniPrint printer, however this could be altered if, for example, certain groups of users should not be able to print.
The next option allows the Default Paper Size Selection, i.e. Letter, A4, Legal…. and whether UniPrint should be the Default Printer.
The final allows a server to be configured as a Pass-through Client, enabling printing from Citrix or Terminal Server Applications, running inside of another terminal server session, for example connecting to applications via Program Neighborhood Agent from a Citrix Published Desktop. In UniPrint Server 5.x this required a separate installation package to enable this functionality. I left this option disabled, as I was only working with one Citrix Server.
There are several client types, i.e. Full UniPrint Client for Windows, Mac Client, and Web Client. In this review I used the Full UniPrint Client for Windows because it has the most features and does not require Acrobat Reader to be installed on the client machine.
The client installation package is available in EXE and MSI packages, however the MSI is recommended as it can be push-installed via Group Policy or other automated deployment method, and can also be automatically updated by the UniPrint Server.
The only installation choice is which clients to enable for use with UniPrint. In my case I wanted to test with both the Microsoft RDP Client, Citrix Program Neighborhood Client and Citrix Web Client. The installer automatically detected which ones I had installed.
I chose to publish the UniPrint Management Console for easy access.
The UPMC (UniPrint Management Console) allows administrators to centrally manage UniPrint 6.0. Out of the box there is nothing that needs to be configured for UniPrint to function, however there a numerous options worth investigating for one’s specific environment.
The UPMC allows central management of:
Performance and Maintenance
- Page Setup
- Print Resolution
- Font Embedding
- Compression Algorithm
- Spooling Options
- Enabling automatic emailing of all print jobs
- Enabling saving of print jobs to user’s My Documents or a Global File Share
- Whether Policies are processed or configuration is determined solely by the UPMC Settings
- Enabling or Disabling of User or Machine Policies
- Setting the order in which policies are applied
Auto Client Update
- Enabling/Disabling Automatic Client Updates
- Adding/Removing Client Update Packages
- Selecting Client Update Location
- Transfer Protocol – Auto Detect, ICA Virtual Channel, RDP, or Drive Mapping (Drive Mapping only works on Windows Server 2003 or 2000/2003 with Citrix installed)
- Whether or not UniPrint is the Default Printer
- If Pass-through is enabled for ICA or RDP
- Deletion of leftover print jobs when users reconnect to a disconnected session, i.e. print jobs would be transferred to the client and removed from the server-side spool directory
- Membership to the UniPrint Printer, i.e. who can print
Tools and Utilities
- Debugging Options
Group Policy Management
- A Group Policy Administrative Template (UniPrintServer600.adm) is provided with UniPrint Server 6.0, and can be found in “\Program Files\UniPrint\Common Files”. For those that have permission to manage Group Policies in Active Directory, this would be the preferred method to manage UniPrint Server settings. The administrative template allows for configuration of Print Setup, Fonts and Images and Session Options.
From an end user perspective, UniPrint works a bit differently than typical Terminal Server or Citrix printing. When a client with the UniPrint Client installed on their computer logs on to a Windows Terminal Server or Citrix Server, the UniPrint Client will automatically load in the client’s notification area.
When the end user prints from an application they will notice that they have only one printer in their session, called “UniPrint”. When users print to the UniPrint Printer, UniPrint renders and spools a PDF of the print job in the system defined Printer Spooler Directory, i.e. “\WINDOWS\system32\spool\PRINTERS\UniPrint\UserName\SessionID”. This allows for the case where a user were to log on to the same terminal server from more than one client with the same credentials, and ensures that the print job gets to the correct client.
From there the file is sent to the UniPrint Client via Citrix Virtual Channel, RDP or Drive Mapping, based on the settings defined in the UPMC and the type of client connectivity.
When the print job arrives at the client machine, it is displayed in the UniPrint Client (shown below), where the user can print to any printer accessible to them. This allows the user to take advantage of all of the printer's features, as they are now printing using their local printer driver.
In addition to being able to print this PDF file, the end user also has the options to Email or Save the PDF using the UniPrint Client. For those that don’t want to deal with two step printing, the UniPrint Client has a “No Preview” (shown below) setting that sends the print job directly to the Client Default Printer.
The UniPrint Client Advanced Tab offers the ability to enable and disable features such as Bandwidth Throttling, Unicode Printing (i.e. for printing Asian characters), or to turn on Debugging (at the request of an administrator).
Notes of Interest
In addition to the functionality described in this review, UniPrint has three add-on modules for UniPrint Server .
- Gateway Module – Allows for printing to network printers without loading printer drivers on terminal servers or clients. This works by printing to a “UniPrint Spool Server” which forwards print jobs to the appropriate “UniPrint Printer Server”, which prints to the Network Printer. HP and Lexmark Printers that support direct PDF Printing do not require the “UniPrint Printer Server”
- Web Module – Allows for posting print jobs to a Intranet webpage where users can easily share print jobs with groups of users. This uses an On Demand Java Client which is deployed via Citrix Nfuse or Citrix Web Interface and the Citrix Java Client. This option is great for companies trying to work in a paperless office.
- Host Module – Allows for printing from Linux or Unix applications running on Citrix Presentation Server.
- *** Each of these three add-on modules are not yet available for UniPrint Server 6.0. They exist in the UniPrint Server 5.x product line, are currently being developed for version 6, and are expected to be released in Q1 2007.***
Gateway version 6 will be released at the end of Q2 2007 (Beta end of Q1) then the Web and Host in Q4 2007.
But other products (UniPrint for Desktop Edition (Q1), Agent (Q3), …) will be released during the year 2007.
I found UniPrint Server 6.0 to be an excellent solution to ease printing problems in a Windows Terminal Server or Citrix Presentation Server environment. UniPrint Server 6.0 offers the UniPrint Management Console, UniPrint Group Policy Administrative Template and a single PDF Based Printer Driver to simplify the administration of Windows Terminal Server and Citrix Printing and reduce printing bandwidth requirements. The UniPrint Client is feature rich and easy to use, allowing end users to print to any printer defined on their workstation, or to use the built-in PDF Writer functionality to save or email any of the documents in PDF Format. For enterprise customers with complex environments, the Gateway, Web and Host Modules can be added to UniPrint Server allowing for an enterprise wide printing solution based on a single printer driver.
On a scale of 1 to 5 (5 being the best) I’d assign UniPrint Server 6.0 a score of 4.5.