®
The Printer Working Group / October 30, 2015
Standard 5100.12-2015

IPP Version 2.0, 2.1, and 2.2

Status: Approved

Abstract: This specification defines the IPP 2.0, 2.1, and 2.2 protocol versions. Each version defines a minimum set of supported IPP extensions to simplify development and interoperability of IPP Client and Printer implementations.

This document is a PWG Standard. For a definition of a "PWG Standard", see:

http://ftp.pwg.org/pub/pwg/general/pwg-process30.pdf

This document is available at:

http://ftp.pwg.org/pub/pwg/standards/std-ipp20-20151030-5100.12.docx

http://ftp.pwg.org/pub/pwg/standards/std-ipp20-20151030-5100.12.pdf

Copyright © 2011, 2015 The Printer Working Group. All rights reserved.

PWG 5100.12 - IPP Version 2.0, 2.1, and 2.2 October 30, 2015

Copyright © 2011, 2015 The Printer Working Group. All rights reserved.

This document may be copied and furnished to others, and derivative works that comment on, or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice, this paragraph and the title of the Document as referenced below are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the IEEE-ISTO and the Printer Working Group, a program of the IEEE-ISTO.

Title: IPP Version 2.0, 2.1, and 2.2

The IEEE-ISTO and the Printer Working Group DISCLAIM ANY AND ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED INCLUDING (WITHOUT LIMITATION) ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

The Printer Working Group, a program of the IEEE-ISTO, reserves the right to make changes to the document without further notice. The document may be updated, replaced or made obsolete by other documents at any time.

The IEEE-ISTO takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights.

The IEEE-ISTO invites any interested party to bring to its attention any copyrights, patents, or patent applications, or other proprietary rights which may cover technology that may be required to implement the contents of this document. The IEEE-ISTO and its programs shall not be responsible for identifying patents for which a license may be required by a document and/or IEEE-ISTO Industry Group Standard or for conducting inquiries into the legal validity or scope of those patents that are brought to its attention. Inquiries may be submitted to the IEEE-ISTO by e-mail at: .

The Printer Working Group acknowledges that the IEEE-ISTO (acting itself or through its designees) is, and shall at all times, be the sole entity that may authorize the use of certification marks, trademarks, or other special designations to indicate compliance with these materials.

Use of this document is wholly voluntary. The existence of this document does not imply that there are no other ways to produce, test, measure, purchase, market, or provide other goods and services related to its scope.

About the IEEE-ISTO

The IEEE-ISTO is a not-for-profit corporation offering industry groups an innovative and flexible operational forum and support services. The IEEE-ISTO provides a forum not only to develop standards, but also to facilitate activities that support the implementation and acceptance of standards in the marketplace. The organization is affiliated with the IEEE (http://www.ieee.org/) and the IEEE Standards Association (http://standards.ieee.org/).

For additional information regarding the IEEE-ISTO and its industry programs visit:

http://www.ieee-isto.org

About the IEEE-ISTO PWG

The Printer Working Group (or PWG) is a Program of the IEEE Industry Standards and Technology Organization (ISTO) with member organizations including printer manufacturers, print server developers, operating system providers, network operating systems providers, network connectivity vendors, and print management application developers. The group is chartered to make printers and the applications and operating systems supporting them work together better. All references to the PWG in this document implicitly mean “The Printer Working Group, a Program of the IEEE ISTO.” In order to meet this objective, the PWG will document the results of their work as open standards that define print related protocols, interfaces, procedures and conventions. Printer manufacturers and vendors of printer related software will benefit from the interoperability provided by voluntary conformance to these standards.

In general, a PWG standard is a specification that is stable, well understood, and is technically competent, has multiple, independent and interoperable implementations with substantial operational experience, and enjoys significant public support.

For additional information regarding the Printer Working Group visit:

http://www.pwg.org

Contact information:

The Printer Working Group

c/o The IEEE Industry Standards and Technology Organization

445 Hoes Lane

Piscataway, NJ 08854

USA

About the Internet Printing Protocol Workgroup

The Internet Printing Protocol (IPP) workgroup has developed a modern, full-featured network printing protocol, which is now the industry standard. IPP allows a print client to query a printer for its supported capabilities, features, and parameters to allow the selection of an appropriate printer for each print job. IPP also provides job information prior to, during, and at the end of job processing.

For additional information regarding IPP visit:

http://www.pwg.org/ipp/

Implementers of this specification are encouraged to join the IPP mailing list in order to participate in any discussions of the specification. Suggested additions, changes, or clarification to this specification, should be sent to the IPP mailing list for consideration.


Table of Contents

1. Introduction 7

1.1 IPP 2.x Versions 7

1.2 Deprecation of IPP Operations 8

2. Terminology 8

2.1 Conformance Terminology 8

2.2 Printing Terminology 8

2.3 Protocol Role Terminology 8

2.4 Acronyms and Organizations 9

3. Requirements 10

3.1 Rationale 10

3.2 Use Cases 11

3.2.1 IPP/2.0 Printer 11

3.2.2 IPP/2.1 Printer 11

3.2.3 IPP/2.2 Printer 11

3.3 Exceptions 11

3.3.1 Out of Paper 11

3.4 Out Of Scope 12

3.5 Design Requirements 12

4. IPP Standards 13

4.1 IPP/2.0 Standards 14

4.2 IPP/2.1 Standards 14

4.3 IPP/2.2 Standards 15

5. IPP Operations 16

5.1 Original IPP/1.1 Operations (Informative) 16

5.2 IPP/2.0 Operations 17

5.3 IPP/2.1 Operations 18

5.4 IPP/2.2 Operations 20

6. IPP Attributes 22

6.1 Original IPP/1.1 Attributes 22

6.2 IPP/2.0 Attributes 24

6.2 IPP/2.1 Attributes 26

6.3 IPP/2.2 Attributes 29

7. Conformance Requirements 32

7.1 IPP Printer Conformance Requirements 32

7.2 IPP Client Conformance Requirements 32

7.3 IPP over HTTP Conformance Requirements 33

7.4 IPP over TLS Conformance Requirements 33

7.5 IPP Unsupported Attributes Conformance Requirements 33

8. IANA and PWG Considerations 35

8.1 Attribute Value Registrations 35

9. Internationalization Considerations 35

10. Security Considerations 37

11. References 37

11.1 Normative References 37

11.2 Informative References 41

12. Editors’ Addresses 42

13. The PWG Internet Printing Protocol (IPP) Workgroup 43

14. Changes from PWG 5100.12-2011 43

List of Tables

Table 1 - Summary of IETF/PWG Specifications and IPP Conformance Levels 13

Table 2 - Original IPP/1.1 Required Operations 16

Table 3 - IPP/2.0 Operations 17

Table 4 - IPP/2.1 Operations 18

Table 5 - IPP/2.2 Operations 20

Table 6 - Required IPP Attributes 22

Table 7 - Additional IPP/2.0 Attributes 25

Table 8 - Additional IPP/2.1 Attributes 27

Table 9 - Additional IPP/2.2 Attributes 30

Copyright © 2011, 2015 The Printer Working Group. All rights reserved. Page 39 of 43

PWG 5100.12 - IPP Version 2.0, 2.1, and 2.2 October 30, 2015

1. Introduction

The IETF IPP/1.1 protocol specifications [RFC2910] [RFC2911] were published in September 2000. Since the publication of IPP/1.1, dozens of IETF and PWG IPP extension specifications have been approved and published and billions of IPP Clients and Printers are in use. Section 13 provides more information about the ongoing development of IPP.

1.1 IPP 2.x Versions

The purpose of this document is to group existing IETF and PWG IPP extension specifications and define a set of IPP versions, i.e., conformance levels, that provide simple, authoritative statements of the capabilities of an IPP Printer.

Below is a brief informal description of the targeted printing environments for each IPP version defined in this document:

IPP/2.0: This IPP conformance level is targeted to an environment where a small number of users are typically physically located close to the device and the device is typically managed by the local users. The device is typically a low speed IPP/2.0 Printer with a limited feature set tailored to the requirements of a small group of users. Routine maintenance, such as loading paper and clearing paper jams, is usually performed by the current user. The configuration of the IPP/2.0 Printer for special jobs, such as the need for a unique paper size or color, is also handled by the user requiring the changed configuration.

IPP/2.1: This IPP conformance level is targeted to an environment with more users and devices with higher speed and duty cycle ratings than IPP/2.0 Printers, but the primary difference is in the supported features, physical location, and maintenance of the device. A IPP/2.1 Printer is typically located in a central location with most users not very close physically. An End User’s access to the IPP/2.1 Printer may be limited and maintenance is typically performed by assigned, trained personnel. Features such as paper size and type are typically fixed by site policies and are not easily modified for special use.IPP/2.1 Printers often have more post-processing features (such as punching, folding, stapling, etc.) than IPP/2.0 Printers.

IPP/2.2: This IPP conformance level is targeted to an environment with high speed and very high duty cycle devices as compared to IPP/2.0 and IPP/2.1 Printers. One example of this environment is a data center where jobs are centrally scheduled rather than sent ad-hoc from a group of End Users. This class of Printer is expected to consume significantly more supplies (such as paper, toner, etc.) and have a larger memory capacity than the other classes.

1.2 Deprecation of IPP Operations

A few IPP operations defined in IETF RFCs have been deprecated by the PWG IPP workgroup. These deprecations are discussed in section 4.

2. Terminology

Copyright © 2011, 2015 The Printer Working Group. All rights reserved. Page 39 of 43

PWG 5100.12 - IPP Version 2.0, 2.1, and 2.2 October 30, 2015

2.1 Conformance Terminology

Capitalized terms, such as MUST, MUST NOT, RECOMMENDED, REQUIRED, SHOULD, SHOULD NOT, MAY, and OPTIONAL, have special meaning relating to conformance as defined in Key words for use in RFCs to Indicate Requirement Levels [RFC2119]. The following additional terms are defined:

CONDITIONALLY REQUIRED: A conformance requirement that applies when a specified condition is true.

DEPRECATED: An operation, attribute, or value that SHOULD NOT be used or supported in new implementations.

2.2 Printing Terminology

Normative definitions and semantics of printing terms are imported from IETF IPP/1.1 [RFC2911], IETF Printer MIB v2 [RFC3805], and IETF Finisher MIB [RFC3806].

2.3 Protocol Role Terminology

This document also defines the following protocol roles in order to specify unambiguous conformance requirements:

Client: Initiator of outgoing IPP session requests and sender of outgoing IPP operation requests (Hypertext Transfer Protocol -- HTTP/1.1 [RFC7230] User Agent).

Printer: Listener for incoming IPP session requests and receiver of incoming IPP operation requests (Hypertext Transfer Protocol -- HTTP/1.1 [RFC7230] Server) that represents one or more Physical Devices or a Logical Device.

2.4 Acronyms and Organizations

AAA: Authentication, Authorization, and Accounting, http://www.ietf.org/rfc/rfc2903.txt, http://www.ietf.org/rfc/rfc2904.txt

IANA: Internet Assigned Numbers Authority, http://www.iana.org/

IETF: Internet Engineering Task Force, http://www.ietf.org/

ISO: International Organization for Standardization, http://www.iso.org/

PWG: Printer Working Group, http://www.pwg.org/

Copyright © 2011, 2015 The Printer Working Group. All rights reserved. Page 39 of 43

PWG 5100.12 - IPP Version 2.0, 2.1, and 2.2 October 30, 2015

3. Requirements

3.1 Rationale

The Printer MIB v2 [RFC3805] and Port Monitor MIB [PWG5107.1] define:

1.  Model of Print Devices;

2.  Operations for Print Devices, e.g., prtGeneralReset and prtConsoleDisable;

3.  Groups of simple attributes for Print Devices, e.g., prtInputTable --> prtInputName and ppmPortTable --> ppmPortServiceNameOrURI; and

4.  Conformance requirements for implementations of Printer MIB v2 and Port Monitor MIB.

IPP/1.1: Model and Semantics [RFC2911] defines:

1.  Model of Print Services, Print Devices, and Print Jobs;

2.  Operations for Print Services and Print Jobs, e.g., Pause-Printer and Create-Job;

3.  Attributes for Print Services and Print Jobs, e.g., "printer-location" and "job-id"; and

4.  Conformance requirements for implementations of IPP/1.1.

IPP/1.1: Encoding and Transport [RFC2910] defines:

1.  Protocol Bindings for IPP/1.1: HTTP with optional upgrade to TLS;

5.  Mappings of operations for Print Services and Print Jobs; and

6.  Conformance requirements for implementations of IPP/1.1.

Later IETF and PWG standards-track specifications defined numerous IPP/1.1 extensions including:

1.  New operations, e.g., Set-Printer-Attributes [RFC3380] and Resume-Job [RFC3998];

2.  New attribute syntaxes, e.g., 'collection' [RFC3382]; and

3.  New objects, e.g., Subscription [RFC3995] and Document [PWG5100.5]

Therefore, this IPP 2.0, 2.1, and 2.2 specification should:

1.  Standardize profiles of the IPP/1.1 extensions for advanced printing functionality and reliable interoperability;

2.  Encourage adoption of modern IPP-based printing infrastructures; and

3.  Discourage the further proliferation of vendor proprietary IPP operations and attributes that damage IPP interoperability by duplicating IETF or PWG IPP standard operations and attributes.

3.2 Use Cases

See the informal descriptions of the IPP/2.0, IPP/2.1, and IPP/2.2 target printing environments in section 1.1.

Copyright © 2011, 2015 The Printer Working Group. All rights reserved. Page 39 of 43

PWG 5100.12 - IPP Version 2.0, 2.1, and 2.2 October 30, 2015

3.2.1 IPP/2.0 Printer

Alice, Bob, and Charlie are graphic artists who share a printer down the hall. They all load paper when needed. Alice and Bob have convinced Charlie that he should load the toner cartridges. But they do use many paper sizes - they need PWG Media Standardized Names 2.0 (MSN2) [PWG5101.1] used in the IPP 'media' attribute.