What is ipp linux

What is ipp linux

To print to a networked or USB connected legacy printer a discovery protocol is first required to find the printer. Later on, a print protocol and PDL to send the job to the printer has to be chosen. Every printer manufacturer has gone about implementing these procedures in its own way; sometimes by using or adapting standard protocols, sometimes by devising its own protocols, sometimes by using its own proprietary PDL.

The result is many thousands of driver files in use across Linux, Mac OS X and Windows operating systems and a variety of techniques for printer discovery and processing a print job. A user’s experience of setting up a printer and using it can be fraught and having the system in good shape dependent on possibly keeping up-to-date with a vendor’s changes to software. Setting up a printer can be seen (justifiably or not) as convoluted, complex, opaque and difficult to debug. Being offered three or more drivers to choose from for each supported printer may be rather confusing. Contrast the printer situation with the behaviour of other peripherals like keyboards, mice, cameras and USB mass storage, where the adherence to a standard usually ensures a good experience.

Further Analysis of the Problem

If the previous section doesn’t align with your experience think now of a world in which mobile devices (laptops, tablets, phones) abound. Setting up a queue for printing has been described but when a mobile device moves from network to network there could be a need to re-configure the device in order to print. This isn’t what might be called user-friendly and is very likely beyond what most users would want to do or be capable of doing.

Читайте также:  Alt linux драйвер realtek

Even if setting up a queue time and time again was tolerable you have to consider the limitations of the mobile device. Limited storage capacity alone implies that holding the enormous number of PPDs and drivers for every possible printer it is likely to encounter could be a problem. The printing experience would become a nightmare. The elimination of the burden of proprietary (or even free) solutions exclusive to a particular printer benefits all operating systems.

  • PPDs and drivers have been holding us back from offering better user experience (ready media, localization, full range of printer options/values), improved document processing, and improved accounting
  • PPDs and drivers are a security and distribution nightmare

The Solution

For a number of years the Printer Working Group (PWG) has been working with printer vendors and networking experts to implement IPP Everywhere. The standard for printers is now completed and IPP Everywhere devices are beginning to be marketed.

  • PWG Raster Format and JPEG File Information Format (JFIF). These are MIME types image/pwg-raster and image/jpeg respectively.
  • PDF format (application/pdf), depending on the IPP version.

The crucial protocol used for communication between printer and client is IPP. It is the native protocol of CUPS and Debian has the newest version. It has the important ability of being able to query the printer for its capabilities and pass these to the client for display in its applications.

The printing system’s New Architecture is strongly grounded in the principles expressed by the IPP Everywhere standard.

Debian CUPS as an IPP Everywhere Server

Consider a legacy printer shared by a CUPS server. Suppose a PDL suitable for the printer is PostScript or a vendor format. The initial filter must be capable of producing a PDF file to present to the page management filter, pdftopdf. This is done with imagetopdf or rastertopdf and is followed by filters that deliver PostScript or the vendor format to the legacy printer. The CUPS server basically emulates an IPP Everywhere printer and any of the three supported document formats will be processed through the filter chain:

Input file Initial filter Further filters +------------+ +-------------+ +-------------------+ +-------+ | PDF | | n/a | |Convert PDF to | |Legacy | | JPEG |->| imagetopdf |->pdftopdf->|something the |->|printer| | PWG raster | | rastertopdf | |printer understands| | | +------------+ +-------------+ +-------------------+ +-------+

When the legacy printer is replaced by a modern Everywhere printer, PDF, JPEG and PWG raster file are sent directly to the printer without any filtering.

Input file CUPS server +------------+ +-----------+ +------------+ | PDF | | No | | IPP | | JPEG | ---> | Filtering | ---> | Everywhere | | PWG raster | | | | printer | +------------+ +-----------+ +------------+

Debian CUPS as an IPP Everywhere Client

In co-operation with avahi-daemon the CUPS daemon on a Debian 10 (or later) client will discover an IPP Everywhere printer with

Читайте также:  Линукс минт пропала панель

For example, this might be seen with the first command:

ENVY4500 envy_classic RX420

and detailed information for the printers will be obtained from

leads to the formation of a temporary queue that indicates which MIME types are acceptable to the printer. The CUPS client can easily produce PDF and PWG raster to send directly to printer. A JPEG submitted from the client will be sent directly to the printer without any filtering.

CUPS client output +------------+ +------------+ | PDF | | IPP | | JPEG | ---> | Everywhere | | PWG raster | | printer | +------------+ +------------+

Experiencing IPP Everywhere Behaviour

It is convenient to use two machines for this. Otherwise a single machine running a virtual machine is necessary. First download and install the cups-ipp-utils package:

apt-get install cups-ipp-utils

On the same machine stop cups

ippserver -vvv -p 631 -m everywhere test

On the other machine check for a local print queue being set up with

and a PPD existing in /etc/cups/ppd.

and look at the error_log for a record of the filter chain.

See also

Источник

Оцените статью
Adblock
detector