rfc2567.txt

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

TXT
1,621
字号






Network Working Group                                       F.D. Wright
Request for Comments: 2567                        Lexmark International
Category: Experimental                                       April 1999


             Design Goals for an Internet Printing Protocol

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.  Implementers 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) [RFC2246], to help
   determine how TLS may effectively be used as a security layer for
   IPP.

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 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



Wright                        Experimental                      [Page 1]

RFC 2567             Internet Printing Design Goals           April 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 full set of IPP documents includes:

   Design Goals for an Internet Printing Protocol (this document)
   Rationale for the Structure and Model and Protocol for the
   Internet Printing Protocol [RFC2568]
   Internet Printing Protocol/1.0: Model and Semantics [RFC2568]
   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 "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: Model and Semantics" 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.  The
   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 "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
   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.





Wright                        Experimental                      [Page 2]

RFC 2567             Internet Printing Design Goals           April 1999


TABLE OF CONTENTS

   1. INTRODUCTION.....................................................4
   2. TERMINOLOGY......................................................4
   3. DESIGN GOALS.....................................................6
   3.1. End-user.......................................................6
   3.1.1. Finding or locating a printer................................6
   3.1.2. Create an instance of the printer............................7
   3.1.3. Viewing the status and capabilities of a printer.............7
   3.1.4. Submitting a print job.......................................8
   3.1.5. Viewing the status of a submitted print job..................9
   3.1.6. Canceling a Print Job........................................9
   3.2. Operator (NOT REQUIRED FOR V1.0)...............................9
   3.2.1. Alerting.....................................................9
   3.2.2. Changing Print and Job Status...............................10
   3.3. Administrator (NOT REQUIRED FOR v1.0).........................10
   4. OBJECTIVES OF THE PROTOCOL......................................10
   4.1. SECURITY CONSIDERATIONS.......................................11
   4.2. Interaction with LPD (RFC1179)................................12
   4.3. Extensibility.................................................12
   4.4. Firewalls.....................................................13
   4.5. Internationalization..........................................13
   5. IPP SCENARIOS...................................................13
   5.1. Printer Discovery.............................................14
   5.2. Driver Installation...........................................15
   5.3. Submitting a Print Job........................................15
   5.4. Getting Status/Capabilities...................................16
   5.5. Asynchronous Notification.....................................17
   5.6. Job Canceling.................................................17
   6. Security Considerations.........................................18
   7. REFERENCES......................................................18
   8. ACKNOWLEDGMENTS.................................................19
   9. AUTHOR'S ADDRESS................................................19
   10. APPENDIX - DETAILED SCENARIOS..................................20
   10.1. Printer discovery within an enterprise.......................20
   10.2. Printer discovery across enterprises.........................21
   10.3. Printer discovery on the Internet -logical operations........21
   10.4. Printer discovery on the Internet - authentication...........22
   10.5. Driver Download..............................................23
   10.6. Submitting a print job as a file.............................24
   10.7. Submitting a print job with two documents....................24
   10.8. Submitting a print job as a file, printing fails.............25
   10.9. Submitting a print job with authentication, PRIVACY and
         payment......................................................26
   10.10. Submitting a print job with decryption error................27
   10.11. Submitting a print job with authentication..................28
   10.12. Submitting a print job generated dynamically................29
   10.13. Submitting a print job with a Printer jam - CANCELED........29



Wright                        Experimental                      [Page 3]

RFC 2567             Internet Printing Design Goals           April 1999


   10.14. Submitting a print job with a Printer jam - recovered.......30
   10.15. Submitting a print job with server pull.....................31
   10.16. Submitting a print job with referenced resources............32
   10.17. Getting Capabilities........................................33
   10.17.1. Submission Attributes.....................................33
   10.17.2. Printer Capabilities......................................33
   10.18. Getting Status..............................................34
   10.18.1. Printer State/Status......................................34
   10.18.2. Job Status................................................34
   10.18.3. Status of All My Jobs.....................................34
   10.19. Asynchronous Notification...................................35
   10.19.1. Job Completion............................................35
   10.19.2. Job Complete with Data....................................35
   10.19.3. Print Job Fails...........................................35
   10.20. Cancel a job................................................36
   10.21. End to end Scenario - within an enterprise..................36
   10.22. End to end Scenario - across enterprises....................37
   10.23. End to End Scenario - on the internet.......................40
   11. Full Copyright Statement.......................................43

1. INTRODUCTION

   The IPP protocol is heavily influenced by the printing model
   introduced in the Document Printing Application (DPA) [ISO10175]
   standard.  Although DPA specifies both end user and administrative
   features, IPP version 1.0 (IPP/1.0) focuses only on end user
   functionality.

2. TERMINOLOGY

   Internet Printing for the purposes of this document is the
   application of Internet tools, programs, servers and networks to
   allow end-users to print to a remote printer using, after initial
   setup or configuration, the same methods, operations and paradigms as
   would be used for a locally attached or a local area network attached
   printer.  This could include the use of HTTP servers and browsers and
   other applications for providing static, dynamic and interactive
   printer locating services, user installation, selection,
   configuration, print job submission, printer capability inquiry and
   status inquiry of remote printers and jobs.

   For the purposes of this document, a WEB Browser is software
   available from a number of sources including but not limited to the
   following:  Microsoft Internet Explorer, NCSA Mosaic, Netscape
   Navigator, Sun Hot Java!.  The major task of these products is to use
   the Hypertext Transport Protocol (HTTP) to retrieve, interpret and
   display Hypertext Markup Language (HTML).  These products are often a
   part of a complete Internet Printing system because they are often



Wright                        Experimental                      [Page 4]

RFC 2567             Internet Printing Design Goals           April 1999


   used as a means of obtaining the status of or more information about
   the printing system; however, they may not be present in all
   implementations.

   Throughout this document, 'printer' shall be interpreted to include
   any device which is capable of marking on a piece of media using any
   available technology.  These design goals do not include support for
   multi-tiered printing solutions involving servers (single or
   multiple) logically in front of the actual printing device yet all
   such configurations shall be supported but shall appear to the end-
   user as only a single device.

   Throughout this document 'driver' refers to the code installed in
   some client operating system to generate the print data stream for
   the intended printer. Some computing environments may not include a
   separate printer driver.  Rather, the generation of the proper print
   data stream is accomplished in an application on that computer. How
   such a computer environment or application is updated to support a
   new printer now made available using IPP is outside the scope of IPP.
   The actual details for installing a printer driver are operating
   system dependent and are also outside the scope of IPP. See also
   section 4.1 (SECURITY CONSIDERATIONS) for security implications of
   driver download and installation.

   The IPP protocol will support the following physical configurations:

   - An IPP client talking to an IPP Printer object imbedded in a
     single, physical output device.
   - An IPP Client talking to a server containing one or more IPP
     Printer objects. Each Printer object is associated with exactly one
     physical output device supported by the server. The protocol
     between the server and the output devices is undefined.
   - An IPP Client talking to an IPP Printer object in a server. The
     Printer object is associated with one or more physical output
     devices, but the client only sees the Printer object, which is an
     abstraction and represents all of the associated physical output
     devices. The protocol between the server and the physical output
     devices is undefined.

   Throughout this document, certain design goals will be identified as
   not being a part of version 1.0 (or V1.0) of the protocol or as being
   satisfied by means outside of IPP.  IPP is assumed to be one part, an
   enabler, of a complete Internet Printing solution.  For example
   printer instance creation is not performed by but is enabled by the
   protocol.  Globally, none of the operator or administrators wants and
   needs are included in the design goals for version 1.0.  Some of the
   end-user wants and needs may also be excluded from version 1.0 and
   will be so noted in the description of them.  Subsequent versions of



Wright                        Experimental                      [Page 5]

RFC 2567             Internet Printing Design Goals           April 1999


   the protocol (e.g. V2.0) may include support for these initially
   excluded wants and needs.

3. DESIGN GOALS

   The next three sections identify the design goals for an Internet
   printing protocol from three roles assumed by humans: end-user,
   operator, and administrator.  The goals defined here are only those
   that need to be addressed by an Internet printing protocol.  Other
   wants and needs, such as that the operator needs physical access to
   the printer (e.g. to be able to load paper or clear jams) are not
   covered by this document.  Section 5 contains scenarios which provide
   more detailed examples of the entire process including discovery,
   status, printing and end-of-job reporting.

3.1. END-USER

   An end-user of a printer accepting jobs through the Internet is one
   of the roles in which humans act.  The end-user is the person that
   will submit a job to be printed on the printer.

   The wants and needs of the end-user are broken down into six
   categories: finding/locating a printer, creating a local instance of
   a printer, viewing printer status, viewing printer capabilities,
   submitting a print job, viewing print job status, altering the
   attributes of a print job.

3.1.1. Finding or locating a printer.

   End-users want to be able to find and locate printers to which they
   are authorized to print.  They want to be able to perform this
   function using a standard WEB browser or other application.  Multiple
   criteria can be applied to find the printers needed.  These criteria
   include but are not limited to:

   - by name (Printer 1, Joes-color-printer, etc.)
   - by geographic location (bldg 1, Kentucky, etc.)
   - by capability or attribute (color, duplex, legal paper, etc.)

⌨️ 快捷键说明

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