Citrix XenDesktop 7.6 Citrix Policies Advanced Printing

Brian MurphySenior Information Technology Consultant
Holistic technology infrastructure strategy, design, engineering and implementation that is highly scalable, secure, optimized, automated
#Citrix #Citrix Policies #XenDesktop #VDI #POC #Citrix Univeral Printer Driver #Citrix UPD

Citrix XenDesktop 7.6 Citrix Policies Advanced Printing

This scenario is based on internal users connected to the same physical LAN (location) or high-speed WAN, and is a typical configuration for proof-of-concept (POC) but is also applicable to Pilot and Production, optimizing printing for all users.

Appropriately implemented Citrix print policies reduce network printing requirements and login session times, eliminate installing drivers on the Citrix servers, and result in better end-user experiences about printing. Depending on the number of users and printers there are significant cost savings in administration and operations.

This article will show how to implement fewer than five drivers on Citrix XenApp hosting servers, map only the default client printer, and provide access to every client printer mapped at the workstation of origin. Using Citrix Universal Printing drivers (UPD) and the Citrix Universal Printer object reduces network bandwidth and optimizes traffic for printing through a dedicated printing channel in the ICA technology stack.

Citrix policies are configured to meet the business requirements for printing. In this scenario, there are 1000 users, all located in the same building, and a total of 40 HP, Xerox, and Epson network printers. Three users have locally attached printers as their defaults. On average each user has six network printers mapped, hosted on multiple floors in the same building. All the network (LAN) printers are multi-function; they print front and back with collation, stapling, 1200 DPI printing and two are color laser printers.

The recommendation that follows allows all users to print to any printer using the native driver without installation of a single printer driver on the Citrix server. All drivers except the ones below can be removed from the Citrix Server.

Fifty percent of the print jobs go to default client printer and; the remainder require advanced printing options provided by the vendor native drivers installed on the client workstation of origin and correspond to multiple printer servers. The only Citrix software needed to make this work is the Citrix Receiver. The Citrix Receiver version should correspond to the version of XenApp/XenDesktop and Citrix patch levels. The receiver information listed in the "readme" section of each software update.

The end state is that no native drivers are installed on Citrix hosting servers, and every user maps their default client printer automatically, printing to default client printer uses Citrix UPD Drivers sending the output to the client (workstation of origin) with maximum DPI of 600.

I configure the Citrix Policies for Local Area Network (LAN). I want to maximize policies for video, audio, and demonstrate security controls. Moving the user to Citrix along with Business Applications cannot impact the business requirements for printing.

In Citrix, maintaining best practices and manageability requires not having any third-party print drivers installed on the core operating system (Windows 2008 R2 running Remote Desktop Services and Citrix XenApp Session Hosting). Mapping all client printers during login for every user would most certainly impact the SLA for user login times to Citrix.

Configure Citrix Policies using the Citrix Studio stored in the SQL Server site database. There are pros and cons.
  • Citrix policies stored in Active Directory require a Group Policy Object, custom organizational unit (OU) structure, and linking the GPO - but they are portable.
  • Citrix policies in Active Directory utilize GPMC (Group Policy Management Tool)
  • Citrix policies stored in the "SQL Database" apply to each site or zone.  
The "Citrix Policies" that follow were created to maximize LAN-based users during proof-of-concept (POC) phase. I prefer to create and label "Policies" by category. Since this is a proof-of-concept, I can apply the policies to all users.

  1. Best Practice Decisions
  2. Force UPD Drivers only
  3. Map Default Client Printer Only
  4. Enabled Universal Printer Object to use locally installed printers
  5. Enabled EMF, and XPS drivers only
  6. High-Quality Printer (as provided by UPD Driver)
  7. High-Quality Print images (lower compression)
Citrix Studio > Policies > Create new policy named "POLICY-1-PRINTERS-ALL-USERS"

Value: Allowed
This setting enables printing from the Virtual Desktop to the workstation of origin. This makes sense in a scenario where I do not wish to link Group Policy objects having specific printer mappings. Redirection policies use the existing printer mappings of the client at the time of login to the Virtual Desktop.

Value: "Auto-create the client's default printer only". 
This setting is applicable if the "Client Printer Redirection" setting above is set at "Allowed". I configured this policy to map only the workstation of origin default printer [at the time of login] to the Virtual Desktop. This is one of many advanced settings that are proven to optimize printing. This is one aspect of the "Citrix Universal Printing" that I configure and explain below. For now, understand that by selecting this option only one printer is mapped versus all printers. However, all printers will be available for printing despite the bandwidth savings achieved at initial login.

Value: Enabled 
I call this the "Citrix Universal Printer Object" ; it is key to my overall printing design using Citrix policy. I enabled redirected printers and mapped the client default printer only, giving a scenario where at login to the Virtual Desktop the user sees one printer (default). This enables a second printer object that acts as a "printer proxy" for any printer installed on the client workstation of origin. Not only does it send the output to the client workstation, it uses an RAW format so on arrival users get to SELECT a printer of their choosing and that output uses the Windows Native Mode printer drivers. As an example, if I have ten printers installed, and all ten printers use advanced drivers for advanced stapling, print to both sides, collation and so forth I keep all that functionality. If I want to print quickly to a default printer that output goes to the default printer mapping and uses the Universal Print Driver. If I want to print to the default printer or any printer using the NATIVE mode drivers I choose the second printer object named "Generic Universal Printer."

Value: Disabled
POLICY1-IMAGE4.png Explanation:
This is similar to the Citrix Generic Universal Printer but the output is to a PDF file. This is the replacement for third-party solutions such as Adobe PDF printer, Snag IT, FreePDF, and other such programs that might normally get installed to the Virtual Desktop. This was an issue on XenDesktop for read-only images where the goal is no printer drivers and no third-party software. This solves that dilemma but for my purposes, I set to disabled.

Value: EMF | XPS | PCL4
These three drivers are "universal print drivers". I delete everything but these three and remove any local drivers from the Windows 7 Virtual Desktop image created in prior steps. Keep in mind, this setting has nothing to do with the AUTO-CREATE GENERIC UNIVERSAL PRINTER - this will still use the drivers installed on the client workstation of origin. This narrows the drivers used by the Default Printer Mapping where quick print jobs will use whatever printer is set to default on the client workstation of origin.

Value: Use Universal Printing Only
This setting prevents any third-party drivers being used or installed in the Citrix Virtual Desktop session. No question, I'm locking down printing to a default universal printer driver and mapping the user default printer only. Now I ensure that no other drivers get used in the virtual desktop. Again, this is for the virtual session and the user default printer only. I am only mapping the default printer but also provide a second printer object that allows the user option of sending the print job to any printer on their workstation of origin.

Value: High quality
This is a given since I know that every user in the proof-of-concept (POC) is connected to the local area network (LAN). I need to make sure this matches the "defaults". This setting is specific to images but there are other defaults below.

Values: High quality, Allow caching of embedded images and Allow caching of embedded fonts
The lower the compression, the higher the quality. Users are connected to the local area network and have dedicated computers (workstations with CPUs, memory and drives). I can create another policy for WAN users, as an example, and "Enable heavyweight compression" and also enable Image Font and Caching. The caching is a bandwidth saving. I don't need this for LAN-connected users but any form of compression uses the CPU on the ESX host and VCPU in the Virtual Desktop. I have chosen to minimize the impact of the Virtual Desktop session by allowing caching and "High Quality" images having lower compression.

Value: Use print preview for universal generic printers only
Disabled by default I prefer to enable this as part of the advanced printing strategy. This relates back to the AUTO-CREATE GENERIC UNIVERSAL PRINTER object. It also applies to the default printer but more importantly, when the job is rendered down to the client there is a component of the Citrix Receiver, on the workstation of origin, that shows in the preview window, and user can select the printer.

This has pros and cons. The con is getting the window for every print job whether generic or using the universal printer object. The pro is that when they select the second Universal Printer object they get a preview window and can select any printer. This can become confusing in some scenarios when the user prints to the default client printer that uses the refined UPD driver having a default 300 DPI and no advanced functionality. They could at render time print to any printer, but it uses the scaled down, driver. If they chose the Universal Printer object, it sends to RAW output and uses the local printer subsystem of Windows and native drivers for the printer.

This is an important setting. Of all the settings I leave this one as optional for the reader. If you keep the default, the preview window presented on the client workstation of origin doesn't show. Anything printed to default printer will go directly down the Citrix print channel as EMF/PCL basic output and print to the default printer for that workstation - no preview. If they choose the Universal Printer Object, it will simply ask the user to choose a printer and use the client side drivers - no preview.

Having this enabled requires some explanation to the end users. They need to understand that their default printer option uses a bare minimum driver. A typical scenario is a user connected to an Intranet page using Internet Explorer 11 inside the Virtual Desktop and the web page has a printer icon that always prints to the "Default client printer". A lot of applications do not show a printer pop-up window. It just prints to the "default client printer". This setting below changes that behavior so that when they click on print, it uses the default client printer but in the session of origin a new window appears to preview the print job.

This may be unwanted behavior making this setting a particular point of interest. Most likely you would revert to the default behavior but for demonstration purposes, you might enable.

This also sheds light on the use of separate policies for printing and the ability only Citrix provides to enforce these policies by User, AD Group, IP Addresses, Machine Names - it is amazing. You can have two policies or more with different print settings. If you want a subset of users to get this preview window every time you have two policies and set one policy higher in priority.

Citrix XenDesktop 7.6 Citrix Policies Advanced Printing
Citrix XenDesktop 7.6 Citrix Policies - Lock Down Peripherals 
Citrix XenDesktop 7.6 Citrix Policies - Graphics and Audio

Does this shared knowledge provide value? If this article has value, please click on "Good Article" button to your right.  I appreciate you taking time out to read this contribution.
Brian MurphySenior Information Technology Consultant
Holistic technology infrastructure strategy, design, engineering and implementation that is highly scalable, secure, optimized, automated

Comments (0)

Have a question about something in this article? You can receive help directly from the article author. Sign up for a free trial to get started.