Overview of Novell Distributed Print Services (NDPS)
Articles and Tips: article
01 Dec 1997
NDPS is both an architecture and a product. This article covers the features and benefits of NDPS as well as related third party products. It also discusses product details, such as bidirectional feedback and automatic driver download; architecture, including gateways and agents; and implementation scenarios.
Printing is one of the major reasons companies turn to networking to solve their need to operate more efficiently. Novell has joined with the leader in office network printing hardware, Hewlett Packard, and Xerox, the leader in enterprise printing, to deliver the next-generation printing product--Novell Distributed Print Services (NDPS).
NDPS provides solutions for small workgroups to enterprise-wide systems and eliminates costs associated with managing network printing by:
Reducing the time network administrators spend managing network printing resources
Removing the network printing issues for end users
Significantly increasing network performance
The functionality provided by NDPS is possible because of the power of Novell Directory Services (NDS). Administrators can centrally manage the network printing environment from a single object, an NDPS printer object. This saves administrators time because:
Administrators can centrally manage their networked printers as if they are standing at the printer, which decreases the time they spend traveling to and from the printers or to end-user workstations--an average of over 45 minutes per incident.
Configuration decisions are moved to printer setup time, which allows for most of the network printing issues to be dealt with at the time printers are installed to the network. Setting up printers can be as easy as plugging the printers into the network.
Pro-active information is effectively provided to administrators, thus increasing printer uptime and allowing administrators to resolve issues before users see them.
Administrators go to a single place to centrally manage all of the printing environment, thus removing the need to use separate vendor printer utilities.
NDPS saves users time because:
Administrators are able to completely set up printing for the user. Users simply select an application and print.
Users no longer worry about printer drivers. The drivers are automatically downloaded when the printer is set up.
Pro-active information is provided to the administrator, allowing for more printer uptime. Users can print with confidence, knowing that the printers will be available.
Pro-active information is provided to the user, allowing intelligent printing decisions. Users can resolve issues on their own, or move print jobs to other printers.
NDPS is both an architecture and a product. This Developer Note covers the features and benefits of NDPS as well as related third-party products. It also describes the architectural components of NDPS and the differences between NDPS and legacy, queue-based print services in widespread use today.
A New Way of Thinking
Until now, using print services has often been a complex task. Initial setup required creating print queues, printer objects and print servers, and then linking them properly. To send a print job to a print queue, the user usually redirected the print job from the print port on the client to the network queue using either the CAPTURE or NPRINT utilities.
A print server then processed the job from the queue and sent it to the printer. Administrators were required to remember where they had to go to resolve printing issues, because it usually required them to go to three or more places with each incident.
While this system worked well, it was cumbersome, and troubleshooting was difficult and time-consuming. Customers today need a more advanced solution for their network printing, and NDPS is Novell's response to this need.
NDPS provides the foundation on which business printing solutions can be built. This architecture represents a new way of thinking about print services. Users can now manage printers and printing resources through one object, an NDPS printer object, not through three different objects and not through many different utilities. NDPS takes the simple concept of printing--sending printing instructions from a computer to a printer--and turns it into two-way communication.
Using the NDPS architecture, original equipment manufacturers (OEMs), independent software vendors (ISVs) and value-added resellers (VARs) can now begin to develop the printers and print services their customers need.
NDPS provides business solutions based upon the following features.
Improves Feedback, Status, and Control of Network Printers and Print Jobs
Bidirectional Feedback-- Novell Distributed Print Services allows clients and printers to exchange information about printers and print jobs. This interchange allows users and administrators to get real-time information about a printer, such as its availability, its status, and what its configuration properties and features are. NDPS also lets you view information about job properties and status, including the number of copies being printed, job hold and scheduling information, and notification when the job has actually been completed.
Configurable Event Notification-- NDPS allows administrators to customize event notification, allowing them to specify interested parties who should be notified of an event or problem and how they should be notified. They can also specify the events or problems they want notification messages sent for. For example, notification can be configured so that the owner of a print job will receive a pop-up screen message when the job has actually been printed. An administrator can also ensure that a printer operator is notified when a printer problem occurs, such as a paper jam. Notification methods provided by NDPS include pop-up screen messages, E-mail (GroupWise), and log file records, while third parties can develop other mechanisms such as beeper notification if they wish.
New Printer and Job Configuration Options--The NDPS interface supports many printer options in common use today, while the open architecture of NDPS allows printer manufacturers to add their own custom interfaces for specific printers. This means that as new printer features become available, you can access them through NDPS.
New Job Scheduling Options--NDPS allows administrators to configure and schedule print jobs to be processed according to time of day, job size or media availability.
Automatically Downloads and Sets Up Printer Drivers on the Workstation
Automatic Printer Driver Download and Installation--NDPS provides a printer driver database that includes drivers for most printers in common use today. When users set up printers on their workstations, NDPS will access this database and automatically download the appropriate driver for the printer the user desires. This is available for Windows 3.1x or Windows 95.
Removes the Need to Set Up and Manage Print Queues, Printer Objects, and Print Servers
Printer Agents--A Printer Agent lies at the heart of NDPS, combining the functions previously performed by a printer object, print queue, print server, and spooler into one intelligent and simplified entity. A Printer Agent can be set up through NetWare Administrator (NWAdmin) or automatically set up by the gateway when printers are plugged into the network.
Support for Existing Printers and Other Output Devices--NDPS is fully compatible with all types of printers, whether or not they have been configured to take advantage of the advanced features that NDPS offers. NDPS can be configured to work with NPRINTER and queue-based technology in conjunction with NetWare 4.11 and IntranetWare. The backward compatibility and cross-platform support offered by NDPS ensure that all of your current printers configured with NPRINTER and QMS will work just as they always have even if you do not convert them to NDPS status when you initially install NDPS on your system.
Provides the Ability to Have New Printers Immediately Available
Plug and Print-- Printer vendors can add value to NDPS by creating a gateway on the server which will detect network printers when plugged into the network. Network-able printers have intelligence to communicate location and status to the server through these gateways. Hewlett Packard (HP) has a gateway included within the initial release of NDPS which leverages HP's JetDirect cards to provide plug-and-print capability. Xerox Corporation's gateway should be available at the time NDPS is released.
Intelligence Embedded in the Future--Available in 1998, Novell's NEST Office SDK offers printer vendors and other network output device vendors the ability to embed NDPS-ready code in their printers, copiers, scanners, fax machines, multifunction devices and other devices. This will allow these devices to communicate to the server without a software gateway on the server and to be centrally managed and controlled.
Reduces Time Network Administrators Spend Addressing Printing Problems
Automatic Printer Driver Download and Installation--NDPS provides a printer driver database that includes drivers for most printers in common use today. When NDPS is initially installed, administrators can select default drivers they want to be automatically downloaded and installed on client workstations. This is available for Windows 3.1x or Windows 95. Drivers can be added to this database as they become available.
Streamlined Installation--Novell spent a significant amount of time working with users to reduce the steps required to install and set up NDPS in the network. When connecting printers to the network, only a few steps of preliminary work is required to set up the printer. This will help reduce frustrations and costs currently associated with setting up and configuring network printing.
Enhances Administrators' Ability To Centrally Manage Printing Resources
Enhanced Tools to Centrally Manage the Printing Resources--NDPS takes advantage of the single network view provided by NetWare 4 and IntranetWare, so administrators can save time by managing all of their printing resources from within NetWare Administrator. For example, from your workstation you can create, configure and automatically install printers for all your users.
Improves Network Printing Performance and Reliability
Tight Integration with Novell Directory Services (NDS)--Novell Distributed Print Services is designed to take full advantage of Novell Directory Services. You receive all the benefits of NDS security and the easy management provided by the industry's most advanced and robust directory service. For example, administrators can group and manage all of their printers by department, by workgroup, or by location. Workstation users can search for printers with specific capabilities because those capabilities are properties of the NDPS printer object.
Compatible with Other Clients and Platforms--NDPS is fully backward compatible, which makes NDPS well suited for heterogeneous networks.
Support for Existing Printers and Other Output Devices--NDPS is fully compatible with all types of printers, whether or not they have been configured to take advantage of the advanced features NDPS offers. NDPS can be configured to work with NPRINTER and queue-based technology in conjunction with NetWare 4.11 and IntranetWare. The backward compatibility and cross-platform support offered by NDPS ensure that all of your current printers configured with NPRINTER and QMS will work just as they always have, even if you do not convert them to NDPS status when you initially install NDPS on your system.
Reduced Network Traffic--Currently, when new printers are added to a network, they immediately begin advertising their availability, which results in increased network traffic. This advertising continues as long as the printer is active. Under NDPS, however, when printers are added to the network, they are registered with the NDPS Service Registry, a single registration agent, which takes over responsibility for notifying clients of each printer's availability. Printers will no longer slow down a network because of Server Access Protocol (SAP) traffic.
Provides Consistent Set of Network APIs for Developing Value-Added Applications
Add-On Printer Functionality--The extensible design of NDPS accommodates add-on printer functionality, such as gluing and stapling, that can be provided through third-party drivers and extensions or through direct embedding of NDPS functionality into a variety of print devices and products. Extensions execute processes to perform operations on a document before it is printed.
Bases Development Platform on Printer Standards
Standards-based Configuration Management and Automation--Novell Distributed Print Services supports all objects defined in the Internet Engineering Task Force (IETF) standard Printer Management Information Base (MIB), so any Novell Distributed Print Services printer can be managed through a standard Simple Network Management Protocol (SNMP) console.
The NDPS architectural components are independent of any single operating system. The architecture is designed to be portable to different environments, and is based on the ISO 10175 DPA specification and the IETF Standard Printer MIB.
NDPS consists of the following major components. Please refer to Figures 1-3 to understand how the components work together.
The Printer Agent lies at the heart of NDPS, combining the functions previously performed by a printer, print queue, print server, and spooler into one intelligent and simplified entity. A Printer Agent can be a software entity running on a server representing a local, remote, or network-attached printer, or a Printer Agent can be an entity embedded within a network-attached printer.
Printer Agents can be used immediately as Public Access Printers, or they can be configured as Controlled Access Printers by adding them to the NDS directory tree. A Public Access Printer is available to anyone on the network but is not registered as an NDS object, and thus does not take full advantage of services such as security and event notification. A Controlled Access Printer is an NDS object and can take advantage of these network services.
NDPS gateways allow NDPS clients to send jobs to printers that are not NDPS-aware, and they allow NDPS clients to access printers and print systems that require jobs to be placed in queues. NDPS supports two categories of gateways:
Third-Party Gateways. These gateways are developed by printer manufacturers to support printers directly attached to the network. Printer manufacturers can provide utilities that can be configured to automatically create Printer Agents using their gateway when one of their printers is attached to the network (plug and print).
The Novell Gateway. This gateway supports local and remote printers, including those using NPRINTER or queue-based technologies. The Novell gateway is implemented through a Print Device Subsystem (PDS) and Port Handler.
Print Device Subsystem(PDS)
The Novell PDS retrieves printer-specific information and stores this information in a database. The Novell PDS is used to create Printer Agents for printers that are not attached directly to the network (local printers and remote printers), and for printers directly attached to the network whose manufacturer does not provide a proprietary NDPS gateway or that are running in PSERVER mode.
The Port Handler ensures that the PDS can communicate with the printer regardless of what type of interface is being used, whether through hardware port or legacy method.
The NDPS Manager is used to create and manage Printer Agents.
The Broker provides three network support services not previously available in NetWare or IntranetWare:
Service Registry Service (SRS). The Service Registry allows public access printers to advertise themselves so that administrators and users can find them. Before NDPS, each printer had to periodically advertise its availability through the Novell Service Advertising Protocol (SAP), which, although effective, created a lot of traffic on the wire. The Service Registry Service helps minimize the network traffic problem created by many printers advertising through the SAP. Now, when a public access printer is attached to the network, it registers with the SRS. When an application or user wants to use a printer, it can contact an SRS and retrieve a list of all registered printers on the network.
Event Notification Service. This brokered service allows administrators to configure event notification for interested parties, that is, non-job owners you wish be notified of the existence of a defined printer or server event that occurs during the processing and printing of a job. At the workstation, individual users can only use the Novell Printer Manager to configure event notification pertaining to their own jobs.
Resource Management Service (RMS). This service allows resources to be installed in a central location and then downloaded to clients, printers, or any other entity on the network that needs them. The Resource Management Service allows administrators to add, list and replace printer drivers, banners, printer definition (NPD) files and fonts. Some of the benefits provided by the RMS include:
Improved resource sharing
More manageable resource distribution and updating
Automatic printer driver download from a central repository
Remote workstation printer installation
Plug-and-print printer availability
Availability of network resources to applications through a common interface
An NDPS agent for the printer service requester resides on the workstation as part of the IntranetWare Client. The client sends print jobs from the workstation to a Printer Agent on the network.
The following pages illustrate how the architectural elements described above are linked in a variety of printing configurations.
Figure 1: Three ways NDPS printers can be attached and configured on a typical network.
In Setup 1, the Printer Agent is embedded in the physical print device, which is in turn connected directly to the network backbone. In this setup, full bidirectional feedback, configurable notification and control are maintained between the client and the physical printer. This represents a fully NDPS-ready implementation with full NDPS functionality.
In Setup 2, the physical printer is connected directly to the network backbone, but the Printer Agent is located in the server. Bidirectional feedback and control between the client and the physical printer are facilitated through a third-party gateway. This gateway provides interoperability for printers that currently support bidirectional communications. These could be either proprietary protocols or SNMP for a more general solution.
Setup 3 is similar to Setup 2, except that the printer is connected to the server using an IEEE 1284 or Bitronics parallel port, or standard RS 232 serial port. Bidirectional feedback and control are then facilitated through an NDPS Print Device Subsystem (PDS) interface.
Figure 2 shows the backward compatibility of NDPS to support NPRINTER technology. In the setups in Figure 2, full bidirectional feedback and control are maintained only between the client and the Printer Agent.
Figure 2: The backward compatibility of NDPS to support NPRINT.
In Setup 4, an NPRINTER gateway provides an interface between a Printer Agent located on a server and a workstation running NPRINTER.EXE The gateway provides backward compatibility for an existing NPRINTER configuration. NPRINTER can run as an executable on a workstation or as an embedded component of the printer, printer network adapter, or print server. An intelligent agent in the NPRINTER gateway maintains static information about the printer and answers queries based on that static information.
Setup 5 is similar to Setup 4, except NPRINTER is running within a network-attached printer rather that as an application in a workstation between the printer and server. Similar to Setup 4 is the capability (not shown) of using a queue server gateway to redirect a print job to a queue. Print jobs can also be submitted to a print queue and then serviced by any Printer Agent.
Figure 3: The backward compatibility of NDPS to support PSERVER technology.
In Setup 6, a PSERVER gateway provides an interface between a Printer Agent located on a server and a queue. A queue server embedded within a network-attached printer is servicing that queue. The gateway provides backward compatibility for an existing embedded queue server. An intelligent agent in the PSERVER gateway maintains dynamic information about the printer and answers queries based on that information.
Setup 7 is similar to Setup 6, except PSERVER.NLM is running on a server rather than as an embedded queue server application in a printer Print jobs can also be submitted to a print queue and then serviced by any Printer Agent.
NDPS is the next generation in network printing. Made possible through the development efforts of Novell, Hewlett Packard and Xerox, NDPS will change the way users print, administrators manage, and third parties develop solutions. The results will be easier printing with more control, consolidated and simplified management, and more printing capabilities from third-party developers. NDPS means reduced printing costs and higher productivity in the workplace.
* Originally published in Novell AppNotes
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.