rfc2566.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,251 行 · 第 1/5 页

TXT
1,251
字号






Network Working Group                                           R. deBry
Request for Comments: 2566                     Utah Valley State College
Category: Experimental                                       T. Hastings
                                                       Xerox Corporation
                                                              R. Herriot
                                                       Xerox Corporation
                                                             S. Isaacson
                                                            Novell, Inc.
                                                               P. Powell
                                                     Astart Technologies
                                                              April 1999


          Internet Printing Protocol/1.0: Model and Semantics

Status of this Memo

   This memo defines an Experimental Protocol for the Internet
   community.  It does not specify an Internet standard of any kind.
   Discussion and suggestions for improvement are requested.
   Distribution of this memo is unlimited.

Copyright Notice

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

IESG Note

   This document defines an Experimental protocol for the Internet
   community.  The IESG expects that a revised version of this protocol
   will be published as Proposed Standard protocol.  The Proposed
   Standard, when published, is expected to change from the protocol
   defined in this memo.  In particular, it is expected that the
   standards-track version of the protocol will incorporate strong
   authentication and privacy features, and that an "ipp:" URL type will
   be defined which supports those security measures.  Other changes to
   the protocol are also possible.  Implementors are warned that future
   versions of this protocol may not interoperate with the version of
   IPP defined in this document, or if they do interoperate, that some
   protocol features may not be available.

   The IESG encourages experimentation with this protocol, especially in
   combination with Transport Layer Security (TLS) [RFC 2246], to help
   determine how TLS may effectively be used as a security layer for
   IPP.






deBry, et al.                 Experimental                      [Page 1]

RFC 2566              IPP/1.0: Model and Semantics            April 1999


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 describes a
   simplified model consisting of abstract objects, their attributes,
   and their operations that is independent of encoding and transport.
   The model consists of a Printer and a Job object.  A Job optionally
   supports multiple documents.  IPP 1.0 semantics allow end-users and
   operators to query printer capabilities, submit print jobs, inquire
   about the status of print jobs and printers, and cancel print jobs.
   This document also addresses security, internationalization, and
   directory issues.

   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 (this document)
     Internet Printing Protocol/1.0: Encoding and Transport [RFC2565]
     Internet Printing Protocol/1.0: Implementer's Guide [ipp-iig]
     Mapping between LPD and IPP Protocols [RFC2569]

   The "Design Goals for an Internet Printing Protocol" document 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
   administrators.  It 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 "Rationale for the Structure and Model and Protocol for the
   Internet Printing Protocol" document 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 "Internet Printing Protocol/1.0: Encoding and Transport" document
   is a formal mapping of the abstract operations and attributes defined
   in the model document onto HTTP/1.1.  It defines the encoding rules
   for a new Internet media type called "application/ipp".

   The "Internet Printing Protocol/1.0: Implementer's Guide" document
   gives insight and advice to implementers of IPP clients and IPP
   objects.  It is intended to help them understand IPP/1.0 and some of



deBry, et al.                 Experimental                      [Page 2]

RFC 2566              IPP/1.0: Model and Semantics            April 1999


   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 "Mapping between LPD and IPP Protocols" document gives some
   advice to implementers of gateways between IPP and LPD (Line Printer
   Daemon) implementations.

Table of Contents

1. Introduction                                                        8
 1.1   Simplified Printing Model                                       9
2. IPP Objects                                                        11
 2.1   Printer Object                                                 12
 2.2   Job Object                                                     14
 2.3   Object Relationships                                           14
 2.4   Object Identity                                                15
3. IPP Operations                                                     18
 3.1   Common Semantics                                               19
  3.1.1   Required Parameters                                         19
  3.1.2   Operation IDs and Request IDs                               20
  3.1.3   Attributes                                                  20
  3.1.4   Character Set and Natural Language Operation Attributes     22
   3.1.4.1  Request Operation Attributes                              22
   3.1.4.2  Response Operation Attributes                             26
  3.1.5   Operation Targets                                           28
  3.1.6   Operation Status Codes and Messages                         29
  3.1.7   Versions                                                    30
  3.1.8   Job Creation Operations                                     32
 3.2   Printer Operations                                             34
  3.2.1   Print-Job Operation                                         34
   3.2.1.1  Print-Job Request                                         34
   3.2.1.2  Print-Job Response                                        38
  3.2.2   Print-URI Operation                                         41
  3.2.3   Validate-Job Operation                                      42
  3.2.4   Create-Job Operation                                        42
  3.2.5   Get-Printer-Attributes Operation                            43
   3.2.5.1  Get-Printer-Attributes Request                            44
   3.2.5.2  Get-Printer-Attributes Response                           46
  3.2.6   Get-Jobs Operation                                          47
   3.2.6.1  Get-Jobs Request                                          47
   3.2.6.2  Get-Jobs Response                                         49
 3.3   Job Operations                                                 50
  3.3.1   Send-Document Operation                                     50
   3.3.1.1  Send-Document Request                                     51
   3.3.1.2  Send-Document Response                                    53
  3.3.2   Send-URI Operation                                          54



deBry, et al.                 Experimental                      [Page 3]

RFC 2566              IPP/1.0: Model and Semantics            April 1999


  3.3.3   Cancel-Job Operation                                        54
   3.3.3.1  Cancel-Job Request                                        54
   3.3.3.2  Cancel-Job Response                                       55
  3.3.4   Get-Job-Attributes Operation                                56
   3.3.4.1  Get-Job-Attributes Request                                57
   3.3.4.2  Get-Job-Attributes Response                               57
4. Object Attributes                                                  58
 4.1   Attribute Syntaxes                                             59
  4.1.1   'text'                                                      60
   4.1.1.1  'textWithoutLanguage'                                     61
   4.1.1.2  'textWithLanguage'                                        61
  4.1.2   'name'                                                      62
   4.1.2.1  'nameWithoutLanguage'                                     62
   4.1.2.2  'nameWithLanguage'                                        63
   4.1.2.3  Matching 'name' attribute values                          63
  4.1.3   'keyword'                                                   64
  4.1.4   'enum'                                                      65
  4.1.5   'uri'                                                       65
  4.1.6   'uriScheme'                                                 65
  4.1.7   'charset'                                                   66
  4.1.8   'naturalLanguage'                                           67
  4.1.9   'mimeMediaType'                                             67
  4.1.10  'octetString'                                               69
  4.1.11  'boolean'                                                   69
  4.1.12  'integer'                                                   69
  4.1.13  'rangeOfInteger'                                            69
  4.1.14  'dateTime'                                                  69
  4.1.15  'resolution'                                                69
  4.1.16  '1setOf  X'                                                 70
 4.2   Job Template Attributes                                        70
  4.2.1   job-priority (integer(1:100))                               74
  4.2.2   job-hold-until (type3 keyword | name (MAX))                 75
  4.2.3   job-sheets (type3 keyword | name(MAX))                      75
  4.2.4   multiple-document-handling (type2 keyword)                  76
  4.2.5   copies (integer(1:MAX))                                     77
  4.2.6   finishings (1setOf type2 enum)                              78
  4.2.7   page-ranges (1setOf rangeOfInteger (1:MAX))                 79
  4.2.8   sides (type2 keyword)                                       80
  4.2.9   number-up (integer(1:MAX))                                  80
  4.2.10  orientation-requested (type2 enum)                          81
  4.2.11  media (type3 keyword | name(MAX))                           82
  4.2.12  printer-resolution (resolution)                             83
  4.2.13  print-quality (type2 enum)                                  83
 4.3   Job Description Attributes                                     84
  4.3.1   job-uri (uri)                                               85
  4.3.2   job-id (integer(1:MAX))                                     85
  4.3.3   job-printer-uri (uri)                                       86
  4.3.4   job-more-info (uri)                                         86



deBry, et al.                 Experimental                      [Page 4]

RFC 2566              IPP/1.0: Model and Semantics            April 1999


  4.3.5   job-name (name(MAX))                                        86
  4.3.6   job-originating-user-name (name(MAX))                       86
  4.3.7   job-state (type1 enum)                                      87
  4.3.8   job-state-reasons (1setOf  type2 keyword)                   90
  4.3.9   job-state-message (text(MAX))                               92
  4.3.10  number-of-documents (integer(0:MAX))                        93
  4.3.11  output-device-assigned (name(127))                          93
  4.3.12  time-at-creation (integer(0:MAX))                           93
  4.3.13  time-at-processing (integer(0:MAX))                         93
  4.3.14  time-at-completed (integer(0:MAX))                          94
  4.3.15  number-of-intervening-jobs (integer(0:MAX))                 94
  4.3.16  job-message-from-operator (text(127))                       94
  4.3.17  job-k-octets (integer(0:MAX))                               94
  4.3.18  job-impressions (integer(0:MAX))                            95
  4.3.19  job-media-sheets (integer(0:MAX))                           95
  4.3.20  job-k-octets-processed (integer(0:MAX))                     96
  4.3.21  job-impressions-completed (integer(0:MAX))                  96
  4.3.22  job-media-sheets-completed (integer(0:MAX))                 96
  4.3.23  attributes-charset (charset)                                97
  4.3.24  attributes-natural-language (naturalLanguage)               97
 4.4   Printer Description Attributes                                 97

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?