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 + -
显示快捷键?