PDAgent in non-print server environments

  1. Home
  2. Knowledge Base
  3. Technical Resources
  4. Network Impact
  5. PDAgent in non-print server environments

PDAgent in non-print server environments

This document describes the technical requirements and network impact of the PDAgent application in non-print server environments where the PDAgent must be installed on each user’s PC.

PDAgent Description

  • .Net Framework 2.0 windows service.
  • Prevents print jobs from exiting the queues (i.e. no changes to the port configuration or print processor are made).
  • Waits for communication from the PDServer before releasing the jobs (i.e. user logs in and selects the jobs for release).
  • Must be installed where the local print queues are installed (i.e. local PC for direct-to-IP printing, or on the print server).
  • Can operate in Offline mode (i.e. if the SQL Server connection is lost it caches transactions to a local MS Access DB).
  • Displays popup notifications to the user if configured to do so (rule violations).

Technical Requirements

  • Free hard drive space: Once installed, the PDAgent will use approximately 50MB of hard drive space.
  • RAM: A minimum of 2GB RAM is required.
  • CPU: The minimum required CPU speed is 2Ghz single core.
  • Port Usage: The PDAgent listens on port 20111 for communication from the PDServer. This port number can be changed if needed.

Operating systems supported

All Windows operating systems are supported from Windows XP to Windows 10.

Runtime dependency

PDAgent is supported by all versions of the .Net Framework from 2.0 to 4.7.2 (and above). The only OS that might require an installation of .Net is Windows XP. All later versions of Windows have .Net pre-installed so no manual installation is required.

Data usage

A significant percentage of network bandwidth is used by print spool data. For this reason, Print Director is designed to minimise any data overhead to the normal printing environment. It avoids adding any extra hops to the spool data, and it doesn’t inflate the spool data in any significant way.

When the user prints, the spool data waits on their PC (depending on the ‘follow me’ settings). The PDServer is notified of the waiting job so it can be displayed on the printer panel when the user logs in to the printer. When the user selects ‘release’ at the printer, the data is sent directly from the user’s PC to the printer.

SQL Transactions

The PDAgent only connects to the SQL Server for configuration information (e.g. which printers to monitor, ‘follow me’ settings, etc). It is not responsible for recording actual print transactions. Instead, the embedded software on the printers sends the transaction information to the PDServer which then records the prints in the database.

The PDAgent caches all authentication and config data to minimise requests to the database. Caches are cleared on a user specified schedule which can be extended or reduced as desired.

Inter-module communication

The only modules that communicate with each other are the PDServer and PDAgent services. The PDAgent interfaces with the Windows Spooler and notifies the PDServer of jobs arriving. When the user releases their job at the printer, the PDServer sends the release notification back to the PDAgent which then sends the print job to the specified printer.

This communication uses RAW sockets and binary serialisation. This results in a negligible effect on bandwidth.

If the link to the SQL Server is broken, the PDAgent application will continue operating as normal. The PDAgent maintains a local MS Access database that contains only authentication and configuration data required for operation. When the link to the central SQL Server breaks, it moves into Offline operation. Users will be completely unaware of any link problem.

User authentication

The PDAgent leverages Windows authentication to authenticate print jobs. This means no additional login is required. The jobs are simply assigned to the user record based on the Windows account name. By default, there is no interaction with the PDAgent application required on the user PCs.

Under domain environments it is guaranteed that these account names are unique. In local user environments (i.e. no domain) this guarantee is lost. In this case there are the following options:

  1. Ensure that all users have a local user account on their PC that is unique.
  2. Configure the PDAgents to pop up for User Authentication on each print.

PDAgent installation

PDAgent is packaged as an MSI file that is 2.5MB. It can be installed manually by opening and completing the simple wizard. Otherwise it can be rolled out using Group Policy or Microsoft SMS. The database connection settings can be embedded into the MSI file, so no configuration is necessary and fully silent installs are supported.


Document revision date: 2018/10/29
Software version:

Article Attachments

Related Articles