Internet Printing Protocol/1.0: Implementer's Guide
RFC 2639

Document Type RFC - Informational (July 1999; No errata)
Obsoleted by RFC 3196
Last updated 2013-03-02
Stream IETF
Formats plain text pdf htmlized bibtex
Stream WG state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 2639 (Informational)
Consensus Boilerplate Unknown
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                        T. Hastings
Request for Comments: 2639                                     C. Manros
Category: Informational                                Xerox Corporation
                                                               July 1999

          Internet Printing Protocol/1.0: Implementer's Guide

Status of this Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (1999).  All Rights Reserved.

Abstract

   This document is one of a set of documents, which together describe
   all aspects of a new Internet Printing Protocol (IPP).  IPP is an
   application level protocol that can be used for distributed printing
   using Internet tools and technologies.  This document contains
   information that supplements the IPP Model and Semantics [RFC2566]
   and the IPP Transport and Encoding [RFC2565] documents.  It is
   intended to help implementers understand IPP/1.0 and some of the
   considerations that may assist them in the design of their client
   and/or IPP object implementations.  For example, a typical order of
   processing requests is given, including error checking.  Motivation
   for some of the specification decisions is also included.

   The full set of IPP documents includes:

     Design Goals for an Internet Printing Protocol [RFC2567]
     Rationale for the Structure and Model and Protocol for the Internet
        Printing Protocol [RFC2568]
     Internet Printing Protocol/1.0: Model and Semantics [RFC2566]
     Internet Printing Protocol/1.0: Encoding and Transport [RFC2565]
     Mapping between LPD and IPP Protocols [RFC2569]

   The document, "Design Goals for an Internet Printing Protocol", takes
   a broad look at distributed printing functionality, and it enumerates
   real-life scenarios that help to clarify the features that need to be
   included in a printing protocol for the Internet.  It identifies
   requirements for three types of users: end users, operators, and

Hastings & Manros            Informational                      [Page 1]
RFC 2639              IPP/1.0: Implementer's Guide             July 1999

   administrators.  The design goals document calls out a subset of end
   user requirements that are satisfied in IPP/1.0.  Operator and
   administrator requirements are out of scope for version 1.0.

   The document, "Rationale for the Structure and Model and Protocol for
   the Internet Printing Protocol", describes IPP from a high level
   view, defines a roadmap for the various documents that form the suite
   of IPP specifications, and gives background and rationale for the
   IETF working group's major decisions.

   The document, "Internet Printing Protocol/1.0: Model and Semantics",
   describes a simplified model with abstract objects, their attributes,
   and their operations.  The model introduces a Printer and a Job.  The
   Job supports multiple documents per Job.  The model document also
   addresses how security, internationalization, and directory issues
   are addressed.

   The document, "Internet Printing Protocol/1.0: Encoding and
   Transport", is a formal mapping of the abstract operations and
   attributes defined in the model document onto HTTP/1.1.  It also
   defines the encoding rules for a new Internet media type called
   "application/ipp".

   The document, "Mapping between LPD and IPP Protocols", gives some
   advice to implementers of gateways between IPP and LPD (Line Printer
   Daemon) implementations.

Table of Contents

  1  Introduction......................................................4
   1.1 Conformance language............................................4
   1.2 Other terminology...............................................5
  2  Model and Semantics...............................................5
   2.1 Summary of Operation Attributes.................................5
   2.2 Suggested Operation Processing Steps for IPP Objects ..........10
       2.2.1 Suggested Operation Processing Steps for all Operations..11
       2.2.1.1  Validate version number...............................11
       2.2.1.2  Validate operation identifier.........................11
       2.2.1.3  Validate the request identifier.......................11
       2.2.1.4  Validate attribute group and attribute presence and
                order.................................................12
       2.2.1.5  Validate the values of the REQUIRED Operation
                attributes............................................19
       2.2.1.6  Validate the values of the OPTIONAL Operation
                attributes............................................23
     2.2.2 Suggested Additional Processing Steps for Operations that
           Create/Validate Jobs and Add Documents.....................26
       2.2.2.1  Default "ipp-attribute-fidelity" if not supplied......26
Show full document text