⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2569.txt

📁 著名的RFC文档,其中有一些文档是已经翻译成中文的的.
💻 TXT
📖 第 1 页 / 共 4 页
字号:
Network Working Group                                         R. HerriotRequest For Comments: 2569                             Xerox CorporationCategory: Experimental                                         N. Jacobs                                                  Sun Microsystems, Inc.                                                             T. Hastings                                                       Xerox Corporation                                                               J. Martin                                                        Underscore, Inc.                                                              April 1999                 Mapping between LPD and IPP ProtocolsStatus 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.Herriot, et al.               Experimental                      [Page 1]RFC 2569         Mapping between LPD and IPP Protocols        April 1999Abstract   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 gives some   advice to implementers of gateways between IPP and LPD (Line Printer   Daemon). This document describes the mapping between (1) the commands   and operands of the 'Line Printer Daemon (LPD) Protocol' specified in   RFC 1179 and (2) the operations, operation attributes and job   template attributes of the Internet Printing Protocol/1.0 (IPP).  One   of the purposes of this document is to compare the functionality of   the two protocols.  Another purpose is to facilitate implementation   of gateways between LPD and IPP.   WARNING: RFC 1179 was not on the IETF standards track.  While RFC   1179 was intended to record existing practice, it fell short in some   areas.  However, this specification maps between (1) the actual   current practice of RFC 1179 and (2) IPP.  This document does not   attempt to map the numerous divergent extensions to the LPD protocol   that have been made by many implementers.   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]      Internet Printing Protocol/1.0: Implementors Guide [ipp-iig]      Mapping between LPD and IPP Protocols (this document)   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   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 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.Herriot, et al.               Experimental                      [Page 2]RFC 2569         Mapping between LPD and IPP Protocols        April 1999   The document, "Internet Printing Protocol/1.0: Model and Semantics",   describes a simplified model with abstract objects, their attributes,   and their operations. It introduces a Printer and a Job object. The   Job object supports multiple documents per Job. It also addresses   security, internationalization, and directory issues.   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 defines   the encoding rules for a new Internet media type called '   application/ipp'.   This document "Internet Printing Protocol/1.0: Implementer's Guide",   gives advice to implementers of IPP clients and IPP objects.TABLE OF CONTENTS   1. Introduction.....................................................4   2. Terminology......................................................5   3. Mapping from LPD Commands to IPP Operations......................5   3.1 Print any waiting jobs..........................................6   3.2 Receive a printer job...........................................6   3.2.1 Abort job.....................................................7   3.2.2 Receive control file..........................................7   3.2.3 Receive data file.............................................8   3.3 Send queue state (short)........................................8   3.4 Send queue state (long)........................................10   3.5 Remove jobs....................................................12   4. Mapping of LPD Control File Lines to IPP Operation and Job      Template Attributes.............................................13   4.1 Required Job Functions.........................................13   4.2 Optional Job Functions.........................................14   4.3 Required Document Functions....................................14   4.4 Recommended Document Functions.................................16   5. Mapping from IPP operations to LPD commands.....................16   5.1 Print-Job......................................................16   5.2 Print-URI......................................................18   5.3 Validate-Job...................................................18   5.4 Create-Job.....................................................18   5.5 Send-Document..................................................18   5.6 Send-URI.......................................................18   5.7 Cancel-Job.....................................................18   5.8 Get-Printer-Attributes.........................................19   5.9 Get-Job-Attributes.............................................19   5.10 Get-Jobs......................................................20   6. Mapping of IPP Attributes to LPD Control File Lines.............20   6.1 Required Job Functions.........................................21   6.2 Optional Job Functions.........................................21Herriot, et al.               Experimental                      [Page 3]RFC 2569         Mapping between LPD and IPP Protocols        April 1999   6.3 Required Document Functions....................................22   7. Security Considerations.........................................23   8. References......................................................23   9. Authors' Addresses..............................................24   10.Appendix A: ABNF Syntax for response of Send-queue-state (short)25   11.Appendix B: ABNF Syntax for response of Send-queue-state (long) 26   12.Appendix C: Unsupported LPD functions...........................27   13.Full Copyright Statement........................................281. Introduction   The reader of this specification is expected to be familiar with the   IPP Model and Semantics specification [RFC2566], the IPP Encoding and   Transport [RF2565], and the Line Printer Daemon (LPD) protocol   specification [RFC1179] as described in RFC 1179.   RFC 1179 was written in 1990 in an attempt to document existing LPD   protocol implementations.  Since then, a number of undocumented   extensions have been made by vendors to support functionality   specific to their printing solutions.  All of these extensions   consist of additional control file commands.  This document does not   address any of these vendor extensions.  Rather it addresses existing   practice within the context of the features described by RFC 1179.   Deviations of existing practice from RFC 1179 are so indicated.   Other LPD control file commands in RFC 1179 are obsolete. They are   intended to work on "text" only formats and are inappropriate for   many contemporary document formats that completely specify each page.   This document does not address the support of these obsolete   features.   In the area of document formats, also known as page description   languages (PDL), RFC 1179 defines a fixed set with no capability for   extension.  Consequently, some new PDL's are not supported, and some   of those that are supported are sufficiently unimportant now that   they have not been registered for use with the Printer MIB [RFC1759]   and IPP [RFC2566] [RFC2565], though they could be registered if   desired.  See the Printer MIB specification [RFC1759] and/or the IPP   Model specification [RFC2566] for instructions for registration of   document-formats with IANA.  IANA lists the registered document-   formats as "printer languages".   This document addresses the protocol mapping for both directions:   mapping of the LPD protocol to the IPP protocol and mapping of the   IPP protocol to the LPD protocol. The former is called the "LPD-to-   IPP mapper" and the latter is called the "IPP-to-LPD mapper".Herriot, et al.               Experimental                      [Page 4]RFC 2569         Mapping between LPD and IPP Protocols        April 1999   This document is an informational document that is not on the   standards track.  It is intended to help implementers of gateways   between IPP and LPD.  It also provides an example, which gives   additional insight into IPP.2. Terminology   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this   document are to be interpreted as described in RFC 2119 [RFC2119].   RFC 1179 uses the word "command" in two contexts: for over-the-wire   operations and for command file functions. This document SHALL use   the word "command" for the former and the phrase "functions" for the   latter.  The syntax of the LPD commands is given using ABNF   [RFC2234].   The following tokens are used in order to make the syntax more   readable:      LF stands for %x0A (linefeed)      SP stands for %x20.  (space)      DIGIT stands for %x30-39 ("0" to "9")3. Mapping from LPD Commands to IPP Operations   This section describes the mapping from LPD commands to IPP   operations.  Each of the following sub-sections appear as sub-   sections of section 5 of RFC 1179.   The following table summarizes the IPP operation that the mapper uses   when it receives an LPD command. Each section below gives more   detail:      LPD command                IPP operation      print-any-waiting-jobs     ignore      receive-a-printer-job      Print-Job or Create-Job/Send-Document            send queue state       Get-Printer-Attributes and Get-Jobs              (short or long)            remove-jobs          Cancel-JobHerriot, et al.               Experimental                      [Page 5]RFC 2569         Mapping between LPD and IPP Protocols        April 19993.1 Print any waiting jobs   Command syntax:     print-waiting-jobs = %x01 printer-name LF   This command causes the LPD daemon check its queue and print any   waiting jobs. An IPP printer handles waiting jobs without such a   nudge.   If the  mapper receives this LPD command, it SHALL ignore it and send   no IPP operation.3.2 Receive a printer job   Command syntax:     receive-job = %x02 printer-name LF   The control file and data files mentioned in the following paragraphs   are received via LPD sub-commands that follow this command. Their   mapping to IPP commands and attributes is described later in this   section.   The mapper maps the 'Receive a printer job' command to either:      - the Print-Job operation which includes a single data file or      - the Create-Job operation followed by one Send-Document operation        for each data file.   If the IPP printer supports both Create-Job and Send-Document, and if   a job consists of:      - a single data file, the mapper SHOULD use the Print-Job        operation, but MAY use the Create-Job and Send-Document        operations.      - more than one data file, the mapper SHALL use Create-Job        followed by one Send-Document for each received LPD data file.   If the IPP printer does not support both Create-Job and Send-   Document, and if a job consists of:      - a single data file, the mapper SHALL use the PrintJob        operation.      - more than one data file, the mapper SHALL submit each received        LPD data file as a separate Print-Job operation (thereby        converting a single LPD job into multiple IPP jobs).Herriot, et al.               Experimental                      [Page 6]RFC 2569         Mapping between LPD and IPP Protocols        April 1999   If the mapper uses Create-Job and Send-Document, it MUST send the   Create-Job operation before it sends any Send-Document operations   whether the LPD control file, which supplies attributes for Create-   Job, arrives before or after all LPD data files.   NOTE: This specification does not specify how the mapper maps: the   LPD Printer-name operand to the IPP "printer-uri" operation   attribute.   The following three sub-sections gives further details about the   mapping from LPD receive-a-printer-job sub-commands.  Each of the   following subsections appear as sub-sections of section 6 of RFC   1179.3.2.1 Abort job   Sub-command syntax:      abort-job = %x1 LF   This sub-command of receive-a-printer-job is intended to abort any   job transfer in process.   If the mapper receives this sub-command, it SHALL cancel the job that   it is in the process of transmitting.   If the mapper is in the process of sending a Print-Job or Create-Job   operation, it terminates the job either by closing the connection, or   performing the Cancel-Job operation with the job-uri that it received   from the Print-Job or Create-Job operation.   NOTE: This sub-command is implied if at any time the connection   between the LPD client and server is terminated before an entire   print job has been transferred via an LPD Receive-a-printer-job   request.3.2.2 Receive control file   Sub-command syntax:   receive-control-file = %x2 number-of-bytes SP name-of-control-file LF   number-of-bytes = 1*DIGIT   name-of-control-file = "cfA" job-number client-host-name                          ; e.g. "cfA123woden"   job-number = 3DIGIT   client-host-name = <a host name>

⌨️ 快捷键说明

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