Simplifying with Third-Party Printing Solutions - Terminal Services for Microsoft Windows Server 2003, Advanced Technical Design Guide - BrianMadden.com
Brian Madden Logo
Your independent source for desktop virtualization, consumerization, and enterprise mobility management.

Simplifying with Third-Party Printing Solutions

Written on Aug 09 2007 7,224 views, 0 comments


by Brian Madden

By this point we've examined all aspects of printing in Terminal Server environments related to out-of-the-box tools and techniques. However, even considering everything we've seen so far, troubling issues can still arise, including:

  • Printer drivers must be installed and managed on every Terminal Server for each client printer in use in your environment.
  • Client printing performance is poor, both in terms of the amount of data that must be sent across the network and the server resources required to render the print jobs.
  • There are no good out-of-the-box solutions for situations in which RDP clients and print servers are on one side of the WAN while the Terminal Servers are on the other (as outlined back in Figure 8.4).

Fortunately, several third-party software printing solutions are available to address these issues. The four most popular vendors now, in alphabetical order are:

  • Emergent Online (EOL): a fairly large consulting and training company that also creates various software packages to help administrators with many thin-client situations. They offer several printing products that can help with many different aspects of printing. Their website is www.go-eol.com.
  • ThinPrint: a German company with a large US presence. As their name implies, they focus entirely on printing in mobile and low bandwidth environments. You can find them at www.thinprint.com.
  • triCerat Software: offers several products that can help you simplify the management of server-based computing environments, including several printing products. More information is available at www.tricerat.com.
  • Qnetix: a company whose Uniprint product family provides printing solutions for server-based computing environments. Visit www.uniprint.net.

Because there are drawbacks to Terminal Server's out-of-the-box printing solutions, and because third-party tools are so popular, it's worth considering them. As for recommendations, we'll study the printing challenges and how third-party tools are used to address them from a technical standpoint. We will not analyze each vendors' products and provide reviews. (Product review information is available online at www.brianmadden.com.)

After reading this section, you'll have a true understanding of why these products are needed and how they can help, enabling you to explore the different printing vendors and accurately assess their offerings. All four vendors named here offer 30-day trial versions of their products. You can find a complete list of links with more information in the Appendix.

The technical design information provided here together with the online information about these four vendors should provide you with enough information to decide how to support the printing challenges that arise in your environment.

Understanding the Third-Party Tools

The printing software tools of the above-named vendors can be divided into two groups:

  • Products that install a "universal" driver on the Terminal Server that works with any printer. EOL, Qnetix, and (for those interested) Citrix's universal print driver fall into this group.
  • Products that enable EMF-based printing, including those from ThinPrint and triCerat.

At first glance, it may seem that the two descriptions are the same. Products from each group differ in how they solve printing challenges.

Universal Print Driver (UDP) Products

The universal print driver products from EOL, Qnetix, and Citrix allow you to install a single "universal" print driver on your Terminal Server that is then used for every printer. (This driver does not, however, work with specialty printers such as vector plotters, label printers, and barcode printers.)

When a user prints, the Terminal Server's print subsystem uses the universal driver to render the print job into either a PDF file or PCL file (depending on the product). Then, the print job is transmitted to the client device where the local printing subsystem forwards it to the appropriate print queue. This entire process is laid out in Figure 8.7.

Figure 8.7: The Third-Party Universal Print Driver Process

  1. The user prints from an application on the Terminal Server.
  2. The GDI generates an EMF file.
  3. The Terminal Server's printer subsystem sends the EMF file to the local print spooler.
  4. The print spooler uses the "universal" driver to render the print job into a universal format. (PDF or PCL, depending on the product.)
  5. The PDF/PCL file is transmitted to the RDP client. Some products send the file through a virtual channel in the RDP protocol, and some send it via TCP/IP.
  6. A third-party software component on the client receives the PDF/PCL file.
  7. The third-party software on the client invokes the local print process. The client device's local GDI generates an EMF file on the client device.
  8. The client device's local printer spooler renders the print job with a locally installed printer driver.
  9. The print job is transmitted to the client's printer, just like any print job in a non-Terminal Server environment.

Advantages of Universal Print Driver Products

  • Universal print driver products allow printing to any printer without having to install different drivers on your Terminal Servers.
  • You don't have to worry about what kind of client printer is used. It can be replaced without having to notify the server administrator.
  • PDF / PCL files are smaller than raw print jobs, thereby increasing the speed of the printout and lowering the impact on the network. (Furthermore, some of the products compress the PDF/PCL print data.)

Disadvantages of Universal Print Driver Products

  • Print jobs are rendered on the server, which means that the server must spend resources generating the printout.
  • Since the PDF / PCL documents are fully rendered, any compression that is used affects the quality of the printout.
  • Printer features are limited to the "lowest common denominator" capabilities of the universal driver.
  • These products do not work with all printers.

Metafile-Based (EMF-Based) Printing Products

ThinPrint and triCerat's products fall into the second group of third-party printing products known as "EMF-based" printing products. TriCerat has a product called "ScrewDrivers," and ThinPrint's product is called "ThinPrint."

EMF-based printing products are technically superior to UPD-based printing products, but they are also more expensive.

Both triCerat ScrewDrivers and ThinPrint install a simulated print driver on the server that receives print data from the GDI. This approach is similar to that of UPD-based products. However, unlike those products, these EMF-based products do not render the print job on the server. Instead, they send the device-independent EMF file to the client device. From there, triCerat or ThinPrint client software forwards the EMF print data to the client's print subsystem. The client device renders the print job and sends it to the appropriate printer. Figure 8.8 illustrates this process.

Figure 8.8: The third-party EMF-based printing software process

  1. The user prints from an application on the Terminal Server.
  2. The GDI generates an EMF file.
  3. The third-party software component running on the Terminal Server receives that EMF file.
  4. The third-party software compresses and transmits the EMF file to the RDP client. It is usually transmitted through a virtual channel of the RDP protocol, although ThinPrint has the additional option to transmit it directly to the client via TCP/IP outside of the RDP protocol.
  5. A third-party software component on the client receives the EMF file.
  6. The third party software transfers the EMF file to the local print spooler on the client device.
  7. The client device's local print spooler spools and renders the print job.
  8. The print job is transmitted to the client's printer, just like any print job in a non-Terminal Server environment.

Advantages of EMF-Based Printing Software

  • EMF-based printing software allows printing to any printer without having to install different drivers on your Terminal Servers.
  • EMF print data is smaller than raw print jobs, thereby increasing the speed of the printout and lowering the impact on the network.
  • EMF print data is also smaller than PDF / PCL files (used by the UPD-based products). Also, the compression ratio of EMF files is higher than PDF / PCL files.
  • You don't have to worry about what kind of client printer is used. It can be replaced without having to notify the server administrator.
  • Since the print job isn't rendered until it hits the client, you can automatically use the full capabilities of your printer.
  • Since the print jobs are not rendered on the server, you will not experience as large a performance hit in heavy printing environments as compared to UPD-based products.
  • Documents are printed with 100% of the original quality, since loss-less compression is used.

Disadvantages of EMF-Based Printing Software

  • More expensive than universal print driver software.
  • More complicated than universal driver solutions.

Third-Party Solutions for Low Bandwidth Clients

Often, Terminal Server environments are designed so that the users are at one location and the Terminal Servers are at another location. This design is preferred in many cases because it's desirable to place the Terminal Servers close to the data sources, usually located at corporate offices. One problem with this architecture is printing. Typically, the location that houses the users has its own print server, as is often the case with remote offices or factory floors, shown in Figure 8.9.

Figure 8.9: Terminal Server in a WAN environment

The problem with this design is that the WAN is not used efficiently. If client printers are used (see again Figure 8.5), the Terminal Server will spool the entire print job before it's sent across the WAN. Alternately, the printer could be configured as a server printer (see again Figure 8.3). However, with this configuration, the print job would still be spooled on the Terminal Server. Either way, inefficient print traffic is sent across the WAN.

The third-party tools outlined previously offer some relief in this scenario as well. The UPD-based tools send the PDF or PCL data to the client, and the client then invokes its local print subsystem and prints the document as normal.

The EMF-based solutions send the compressed EMF data to the client, where (again) the client invokes its local print subsystem and prints the document as normal.

On the surface, it doesn't appear that there are any problems with the third-party tools as outlined. But what happens if your client device is connected via a low-bandwidth connection? Or if your client device is running on a platform not supported by the products listed previously?

Fortunately, there is a solution here as well. Some third-party vendors offer products by which the print information is sent directly to the print server, completely bypassing the client device. (In effect, the print server becomes the third-party software client.)

The exact implementation of this process depends on the vendor. UPD-based vendors such as EOL and Qnetix have solutions by which they can send PDF files directly to print servers, and ThinPrint can send EMF print data directly to the print server.

The "standard" advantages and disadvantages of UPD-based and EMF-based solutions apply in this scenario also. The EMF-based solution offers better performance and quality at a higher price than the UPD-based solutions.

 

 
 




Our Books


(Note: You must be logged in to post a comment.)

If you log in and nothing happens, delete your cookies from BrianMadden.com and try again. Sorry about that, but we had to make a one-time change to the cookie path when we migrated web servers.