Requirements For Job Redirection (Load Balancing or Find Me Printing)

The ability to redirect print jobs from one print queue to another is limited by several factors. Firstly, the destination printer must be able to handle the rendered print job. This means that the source (or virtual) print queue and the target print queue must at least use drivers that produce the same print language (e.g. PostScript to PostScript or PCL5 to PCL5). However due to the differences in the way each manufacturer uses a print language, and even differences between models from the same manufacturer, compatibility can be limited to printers of the same or similar models. E.g. if a print job has been rendered for a letter page size, it may not print correctly (or at all) when sent to a printer with ledger paper in its tray. The ideal setup for job redirection is when all target printers are of the same model. In reality this is not always possible, so when setting up job redirection to heterogeneous printers be sure to conduct thorough testing beforehand.

When selecting the driver to use for a virtual (source) print queue, pick a simple lowest common denominator driver and test it for compatibility with each one of your printers. On the Mac the "Generic Postscript Driver" is a good choice. On Windows select a Color Postscript driver for a mid range popular model. Always carefully test driver compatibility before implementing Find Me Printing. Take care to address corner cases such advanced graphics options, grayscale mode, paper sizes, duplexing, tray selection, etc. If a common driver can not be found, you may need to implement multiple virtual queues as discussed in Example 2 above. The following sections provide a simple procedure that can be followed to to test printer compatibility.

Compatibility Testing

  1. Select your candidate driver to use for your global virtual queue. Use it to set up a print queue on the server, and share the queue.

  2. Select the new printer in PaperCut NG and change it a virtual queue.

  3. In the list of compatible queues, select the printers for which you'd like to test compatibility.

  4. Enable the Hold/Release option on the queue.

  5. Print a test document (e.g. print an email) to the virtual queue from a workstation. The job should hold in the virtual queue.

  6. On the Jobs Pending Release tab under the Printers section, release the held job. Select a target queue to test when prompted.

  7. Verify that the job printed correctly. Also check the App. Log sections for any error reports.

  8. Repeat the previous 3 steps for all printer types and using different document settings and applications.

Make sure you test a variety of print options targeted at all device types. Problems may manifest in various and maybe subtle ways:

  • Error events logged in PaperCut NG's App Log.

  • Error status on the printer (e.g. a red light and failed print status message).

Or more subtle issues like:

  • Truncated documents because of different device margin sizes (printable area).

  • Errors only when non-default options options are selected (e.g. finishing options).

  • Issues only on very large documents (due to printer memory limitations).

  • Errors/problems when certain paper sizes are selected.

If issues/problems/errors occur:

  1. Try disabling the Enable Advanced Printing Features option in Windows on the virtual queue on the server. This is accessed by right-clicking on the printer, selecting Properties..., then the Advanced tab. This change can improve redirection results with some drivers.

  2. If you continue to experience compatibility issues, you may need to consider setting up multiple virtual queues (for each printer type/class) as discussed in the section called “Example 2: Multiple Virtual Queues (Different Printer Types)”.

Find Me Printing Implementation Checklist

Setting up Find Me Printing involves several configuration steps that must be completed before the setup will work. Following is a checklist that can be used to ensure that the main requirements have been carried out. It can also serve as a troubleshooting guide in case of unexpected results.

  1. A new print queue should be created to function as the virtual queue. This print queue should be created using the standard methods or tools provided by the host operating system.

  2. The driver in use by the virtual queue should be confirmed to be compatible with the target printers. The output produced by this driver is what will be sent to the printer, so it must be compatible.

  3. The following settings should be configured in the PaperCut NG administration interface for the virtual print queue:

    1. Queue type should be set to This is a virtual queue (jobs will be forwarded to a different queue).

    2. Jobs may be forwarded to these queues should be configured to reflect the possible or compatible targets for redirection.

    3. Enable hold/release queue should be enabled.

  4. When using Find Me Printing release stations are recommended because they can automatically choose the best nearby printer (based on a match between the virtual queue's configured compatible queues, the release station's configured "releases on" queues and current printer load). If the web based release interface is used instead the user must choose the desired printer from the list of all compatible queues.

  5. The releases-on option in the release station configuration file should be configured to reflect where jobs released at this station can be sent. PaperCut NG will compare this list with the Jobs may be forwarded to these queues setting of the virtual queue to find possible target queues. Take care to ensure the name is spelt exactly the same as listed in the printer list.

  6. The show-jobs-from-queues option in the release station configuration file may optionally be configured to limit the jobs shown in the release station to one or more queues. This can be useful for situations with multiple virtual queues and release stations running in Release Any mode.

  7. If there are multiple print servers and the ability to redirect jobs across print servers is required, ensure that the requirements in the section called “Cross-Server Job Redirection” are met.