rfc524.txt

来自「著名的RFC文档,其中有一些文档是已经翻译成中文的的.」· 文本 代码 · 共 1,976 行 · 第 1/5 页

TXT
1,976
字号
Network Working Group                                           J. WhiteRequest for Comments: 524                                        SRI-ARCNIC: 17140                                                  13 June 1973                         A Proposed Mail ProtocolAUTHOR'S INTENT   This is the document I offered in (15146,) to write.  It's a proposed   specification for handling mail in the Network -- a Mail Protocol.   Main handling is currently implemented as two FTP commands, MAIL and   MLFL, which permit an FTP user process to deliver a file or string of   text to an FTP server process, designating it as mail to be made   available to a user, identified by a local name, in its host.  The   protocol proposed here is much richer than that, both in terms of the   functions it supports, and in terms of the flexibility it provides.   Although one can (I think) and might, implement software on the basis   of this document, this REALLY IS a Request for Comments.  Comments,   questions, position papers are solicited.  There are, I'm sure, bugs   in the protocol specified here, and I hope that readers will point   them out via RFC as they discover them.   Various members of the Network community have, during the last few   months, pointed out to me specific inadequacies in the existing mail   commands and asked me to be conscious of them in designing a new   protocol.  I've tried to do that.  If anyone feels that his concern   wasn't properly dealt with here, or that it slipped through the   cracks entirely (for which I apologize in advance), I would   appreciate it if he would prod me once more.INTRODUCTION   THE MAIL PROTOCOL ENVIRONMENT      The Mail Protocol (MP) is implemented by Mail user and server      processes, in keeping with the model for previous high-level      protocols.  The Mail user and server processes are further      specified to be also FTP user and server processes, respectively.      That is, MP is implemented as a set of commands accessible from      within the FTP command space.      The MP command set is defined to lie conceptually within a      subsystem, invoked from the FTP command space with the command      MAIL <CFLF>.White                                                           [Page 1]RFC 524                 A Proposed Mail Protocol            13 June 1973         NOTE:  Since a command called 'MAIL' already exists within the         FTP command space, the command name 'XMAIL' might substitute         for 'MAIL' while the current mail commands are being phased         out.      The MP command set may or may not (according to the implementation      of a particular server) be implemented by a process distinct from      that which implements FTP proper.      The following are implications of the 'subsystem' concept, of      which the reader (and implementer) must be aware:         (1) Names of MP commands are known only within the MP         subsystem.  MP commands must (and should naturally) be rejected         by the server if the user process presents them outside of the         subsystem.         (2) Exit from the Mail subsystem (to the FTP command space) is         effected with and only with the command EXIT <CRLF>.  FTP         commands must be rejected by the server if the user presents         them while inside the subsystem (i.e., before EXIT is issued).         (3) The same command name may be assigned without ambiguity to         two entirely different commands, provided that one lies within         the FTP command space and the other within MP, the two being         distinguishable by their contexts.  MP and FTP therefore do not         compete for command names, and MP command names may be chosen         without regard for the environment in which the subsystem         resides.         NOTE:  It so happens that there are commands DEFINED within MP         which duplicate the functions of FTP commands and bear the same         names.  The effective result is that some commands are         explicitly allowed within MP.  The reader will understand that         this fact is consistent with the conventions described in 1-3         above, and that no ambiguities result.      The subsystem concept (if not the name 'subsystem') is taken from      Mike Padlipsky's Unified User Level Protocol (UULP), which the      author of the present document strongly supports.  The fact that      MP is accessed from FTP, rather than both FTP and MP being      accessed independently from a more general executive program, is      simply a concession to the fact that FTP is widely implemented and      UULP isn't.  The author hopes that protocol development will, in      the near future, begin to proceed along the lines exemplified by      UULP.White                                                           [Page 2]RFC 524                 A Proposed Mail Protocol            13 June 1973      MP conforms to FTP in general syntax.  In particular, commands and      their responses are strings of NVT characters; command names are      limited to four or fewer, upper- or lower-case, alphameric      characters, and are terminated by the character SP; commands are      generally terminated with the TELNET New Line sequence (CR LF);      command responses contain both numeric (process readable) and text      (human readable) portions.  Both reader and implementer are      referred to the FTP protocol document for a detailed description      of such matters; no attempt has been made to duplicate the      discussion in the present document.      The FTP protocol document assigns those replies whose second digit      is '6' to RJE functions.  In like manner MP appropriates those      reply codes whose second digit is '7' for reporting results      peculiar to its functions.  It is, however, the author's position      that FTP, MP, and the RJE protocol are all best implemented as      subsystems under a common UULP executive, in which case a single      subset of the reply space could be used unambiguously by all three      protocols (and any yet to be defined), since every reply would      implicitly be qualified by the name of the subsystem from which it      emanates.   THE MAIL MODEL      MP defines mail to be text communicated between users (both human      and processes) in less that (but ideally approaching) real time.      The definition excludes so-called console-to-console      communication, where users exchange information at the character      or line level.      Pieces of mail are characterized by such attributes as title,      content, author, and recipient.  A piece of mail may be a one- or      two-line message sent from one individual to another, a draft of a      document sent by one individual to a design group for review, a      polished, formal document sent from one group to another, a      message sent to a human user by a process (e.g., an RJE server      process might notify a user by Network Mail when his job has      completed), etc.  All such forms of communication are mail and are      supported by MP.      Pieces of mail can be forwarded from one location to another      Pieces of mail can be replied to.      The identity of the author of a piece of mail can be verified,      avoiding forgery and misrepresentation.White                                                           [Page 3]RFC 524                 A Proposed Mail Protocol            13 June 1973      Pieces of mail can be permanently recorded, assigned a long-term      identifier by which they can be forever be retrieved for      reference, and entered in catalogs.  And access to such recorded      mail can be restricted to a specified subset of the user      community.      Some hosts accept mail whose recipients reside elsewhere in the      Network, and assume responsibility for delivering the mail to them      (worrying about retrying delivery when hosts are down, etc.), and      acknowledging its delivery to the sender.      The picture being painted for the reader is one in which processes      cooperate in various ways to flexibly move and manage Network      mail.  The author claims (without proof, of course) that the      picture will in the future get yet more complicated, but that the      proposal specified here can be conveniently enlarged to handle      that picture too.ORGANIZATION OF THIS DOCUMENT   The rest of this document consists of the following components:      GLOSSARY         The concepts introduced briefly in the section above are more         formally defined, and their manner of representation in the         protocol specified.      MP FUNCTIONS         The command sequence is defined by which a user process         initiates each of the logical functions (e.g., Distribution,         Recording, Delivery) which can be performed by a Mail server         process.      EXAMPLE         An example of the command-response exchange between a user and         server is given.      COMMAND SUMMARY         A summary of MP commands is given.      COMMAND REPLIES         Reply code assignments are given and briefly explained.White                                                           [Page 4]RFC 524                 A Proposed Mail Protocol            13 June 1973      FORMAL SYNTAX         The formal syntax of the command language is specified.   In all sections but the last (i.e., the formal syntax presentation),   verbose keyword forms are employed, in the interests of clarity.   These verbose forms have no existence anywhere but in this document;   in implementing a Mail user or server process, the terse keyword   forms which appear in the formal syntax presentation are to be   employedGLOSSARY   Terms are listed here in alphabetical order.  Words or phrases which   appear in the definitions with initial letters capitalized are   themselves formally defined elsewhere in the glossary.   ACCESS LIST (for a piece of Recorded Mail)      That set of individuals with access to a piece of Recorded Mail,      and for each such individual, the type(s) of access granted to      him.      An Access List is represented in the Protocol as a series of      command pairs (juxtaposed in the command stream), each pair      consisting of an ACCESS command followed immediately (and      optionally) by an ACCESSTYPES command.  Each pair of commands      corresponds to one individual in the set.         ACCESS <individual> <CA>         ACCESSTYPE <accesstypes> <CA>            Command arguments identify the Individual to whom access is            granted, and specify the kind(s) of access allowed him.            Either Read Access, Controlling Access, or both may be            granted.            If no Individual is specified, All is implied.  In the            absence of an explicit ACCESSTYPES command, one with only            Read Access specified is to be assumed.         In the absence of an explicit Access List, one granting Read         Access to All and Controlling Access to the Author(s) and the         Clerk is to be assumed.White                                                           [Page 5]RFC 524                 A Proposed Mail Protocol            13 June 1973   ACKNOWLEDGMENT (for a piece of Mail)      A form of Unrecorded Mail, generated by a Distribution Agent,      whose Recipient is the Monitor for a previous piece of Mail, which      acknowledges Delivery -- successful or otherwise -- to the      Recipient(s) of that first piece of Mail.      An Acknowledgment bears the Serial Number of the Mail it      acknowledges, as the Reference Serial Number.   ACKNOWLEDGMENT CONDITION (for Acknowledgments)      The attribute of an Acknowledgment which determines the      circumstances under which it will be generated by the Distribution      Agent.      The following Acknowledgment Conditions are defined:         ALWAYS            Acknowledgment is given when all Deliveries are complete,            regardless of whether or not they are all completed            successfully.         FAILURE            Acknowledgment is given when all Deliveries are complete if            and only if Delivery to one or more Recipient(s) fails.         NEVER            An Acknowledgment is never made.      An Acknowledgment Condition is represented in the Protocol by the      command:   ACKCONDITION <ackcondition> <CA>      In the absence of an explicit ACKCONDITION command, one with an      argument of FAILURE is to be assumed.   ACKNOWLEDGMENT TYPE (for Acknowledgments and Progress Reports)      The attribute of an Acknowledgment or Progress Report which      determines the nature of its Content.White                                                           [Page 6]RFC 524                 A Proposed Mail Protocol            13 June 1973      The following Acknowledgment Types are defined:         TERSE            The Content of a TERSE Acknowledgment or Progress Report is            specified by the Protocol to be an unembellished list of the            Mail's Recipient(s), and the current Delivery Status for            each (except that those Recipient(s) whose Delivery Status            is SUCCESSFUL shall not be included in the list).            The Content of a TERSE Acknowledgment is one or more            instances of the following:               <deliverystatus> <individual> <CRLF>            TERSE Acknowledgments and Progress Reports are intended to            be process-readable.         VERBOSE            The Content of a VERBOSE Acknowledgment or Progress Report            is not specified by the Protocol, but might include a list            of those Recipient(s) to whom the Mail could not be            delivered and why, the times at which Delivery was made to            others, etc.            VERBOSE Acknowledgments and Progress Reports are intended to            be human-readable.      An Acknowledgment Type is represented in the Protocol by the      command:         ACKTYPE <acktype> <CA>      In the absence of an explicit ACKTYPE command, one with an      argument of TERSE is to be assumed.   ALL      Every conceivable Individual.   AUTHOR (of a piece of Mail)      An Individual (there may be more than one) given formal      recognition for having authored a piece of Mail.White                                                           [Page 7]RFC 524                 A Proposed Mail Protocol            13 June 1973

⌨️ 快捷键说明

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