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

📄 rfc772.txt

📁 RFC 相关的技术文档
💻 TXT
📖 第 1 页 / 共 4 页
字号:
Network Working Group                                         S. SluizerRequest for Comments: 772                                      J. Postel                                                                     ISI                                                          September 1980                         MAIL TRANSFER PROTOCOLPREFACE   This is a first draft of this protocol and comments are very   definitely requested.INTRODUCTION   The objective of Mail Transfer Protocol (MTP) is to transfer mail   reliably and efficiently.   This paper assumes knowledge of the following protocols described in   the ARPA Internet Protocol Handbook.  The reader will note strong   similarities to portions of the File Transfer Protocol; in part, this   is due to the original ARPA Network implementation of computer mail   as a feature of FTP.      The ARPANET Host-to-Host Protocol [Network Control Protocol] (NCP)      The Transmission Control Protocol (TCP)      The TELNET Protocol (TELNET)      The File Transfer Protocol (FTP)DISCUSSION   In this section, the terminology and the MTP model are discussed.   The terms defined in this section are only those that have special   significance in MTP.  Some of the terminology is very specific to the   MTP model; some readers may wish to turn to the section on the MTP   model while reviewing the terminology.   TERMINOLOGY      ASCII         The ASCII character set as defined in the ARPA Internet         Protocol Handbook.  In MTP, ASCII characters are defined to be         the lower half of an eight-bit code set (i.e., the most         significant bit is zero) and is called NVT-ASCII.                                   1                                                                        September 1980                                                   RFC 772Mail Transfer Protocol                                                        control connection         The TCP full-duplex communication path or two NCP simplex         communication paths between a sender-MTP and a receiver-MTP for         the exchange of commands, replies, and mail text.  The control         connection operates according to the TELNET Protocol.      data mode         The mail is transmitted over the control connection as a stream         of octets.  (In FTP terminology this is called stream mode.)      data structure         The internal structure of mail is considered to be a continuous         sequence of data octets.  (In FTP terminology this is called         file-structure.)      data representation         The internal representation of all data (i.e., mail) is in         NVT-ASCII.      host         A computer in the internetwork environment on which mailboxes         reside.      MTP commands         A set of commands which comprise the control information         flowing from the sender-MTP to the receiver-MTP.      mail         An ordered set of computer data of arbitrary length, which         conforms to the standard set in RFC 733 (Standard for the         Format of ARPA Network Text Messages).      mailbox         A character string (address) which identifies a user to whom         mail is to be sent.  Mailbox normally consists of the host and         user specifications.  The standard mailbox naming convention is         defined to be "user@host".  Additionally, the "container" in         which mail is stored.                                   2                                                                        RFC 772                                                   September 1980                                                  Mail Transfer Protocol      NVT         The Network Virtual Terminal as defined in the TELNET Protocol.      octet         Bytes in MTP are octets (8 bits).  This is not necessarily the         same byte size in which data is stored in a host.      reply         A reply is an acknowledgment (positive or negative) sent from         receiver to sender via the control connection in response to a         MTP command.  The general form of a reply is a completion code         (including error codes) followed by a text string.  The codes         are for use by programs and the text is usually intended for         human users.      receiver-MTP process         A process which transfers mail in cooperation with a sender-MTP         process.  It "listens" on its port/socket L for a connection         from a sender-MTP and establishes a control connection using         the TELNET Protocol.  It receives MTP commands from the         sender-MTP, sends replies, and governs the transfer of mail.      sender-MTP process         A process which transfers mail in cooperation with a         receiver-MTP process.  A local language may be used in the user         interface command/reply dialogue.  The sender-MTP initiates the         control connection from its port/socket U to the receiver-MTP         process.  It initiates MTP commands, receives replies, and         governs the transfer of mail.      user         A human being (or a process on behalf of a human being) wishing         to obtain mail transfer service.  In addition, a recipient of         computer mail.                                   3                                                                        September 1980                                                   RFC 772Mail Transfer Protocol                                                     THE MTP MODEL      With the above definitions in mind, the following model (shown in      Figure 1) may be diagrammed for an MTP service.                  ------------                ------------                  |          |                |          |    --------                  |          |      MTP       |          |<-->| User |                  | Receiver-|Commands/Replies|  Sender- |    --------      --------    |   MTP    |<-------------->|    MTP   |    --------      | Mail |<-->|          |      Mail      |          |<-->| Mail |      |System|    |          |                |          |    |System|      --------    ------------                ------------    --------                        Receiver-MTP                 Sender-MTP                           Model for MTP Use                                Figure 1      In the model described in Figure 1, the sender-MTP initiates the      TCP/NCP control connection which follows the TELNET Protocol.  At      the initiation of the user, standard MTP commands are generated by      the sender-MTP and transmitted to the receiver-MTP via the control      connection.  Standard replies are sent from the receiver-MTP to      the sender-MTP over the control connection in response to the      commands.  In addition, mail is sent over the control connection.MAIL TRANSFER FUNCTIONS   The control connection is used for the transfer of commands which   describe the functions to be performed, the replies to commands, as   well as the actual transfer of mail.  Mail is transferred only via   the control connection.   The communication channel from the sender-MTP to the receiver-MTP is   established by a TCP/NCP control connection from the sender to a   standard receiver port/socket.  The sender-MTP is responsible for   sending MTP commands, interpreting the replies received, and sending   the mail; the receiver-MTP interprets commands, sends replies, and   receives the mail.                                   4                                                                        RFC 772                                                   September 1980                                                  Mail Transfer Protocol   MAIL REPRESENTATION AND STORAGE      Mail is transferred from a storage device in the sending host to a      storage device in the receiving host.  It may be necessary to      perform certain transformations on the mail because data storage      representations in the two systems are different.  For example,      NVT-ASCII has different data storage representations in different      systems.  PDP-10's generally store NVT-ASCII as five 7-bit ASCII      characters, left-justified in a 36-bit word.  360's store      NVT-ASCII as four 8-bit EBCDIC codes in a 32-bit word.  Multics      stores NVT-ASCII as four 9-bit characters in a 36-bit word.      For the sake of simplicity, all data must be represented in MTP as      NVT-ASCII.  This means that characters must be converted into the      standard NVT-ASCII representation when transmitting text,      regardless of whether the sending and receiving hosts are      dissimilar.  The sender converts the data from its internal      character representation to the standard 8-bit NVT-ASCII      representation (see the TELNET specification).  The receiver      converts the data from the standard form to its own internal form.      In accordance with this standard, the <CRLF> sequence should be      used to denote the end of a line of text.      The mail in MTP has no internal structure and is considered to be      a continuous sequence of data octets.   ERROR RECOVERY AND RESTART      There is no provision for detecting bits lost or scrambled in data      transfer; this level of error control is handled by the TCP/NCP.      In addition, there is no restart procedure provided to protect      senders from gross system failures (including failures of a host,      an MTP-process, or the underlying network).MTP COMMANDS   COMMAND SEMANTICS      The MTP commands define the mail transfer or the mail system      function requested by the user.  The syntax of mailboxes must      conform to receiver site conventions (with standard defaults      applicable).  In response to an MTP transfer command, the mail      shall always be transferred over the control connection.      The Mail Transfer Protocol follows the specifications of the      TELNET Protocol for all communications over the control                                   5                                                                        September 1980                                                   RFC 772Mail Transfer Protocol                                                        connection.  Although the language used for TELNET communication      can be a negotiated option, the "TELNET language" and the      corresponding "TELNET end of line code" are required to be      NVT-ASCII and <CRLF> respectively.  No other specifications of the      TELNET Protocol will be cited.      MTP commands are NVT-ASCII strings terminated by <CRLF>.  The      command codes themselves are alphabetic characters terminated by      the character <SP> (space) if parameters follow and <CRLF>      otherwise.      The MTP commands are discussed below.  In the description of a few      of the commands in this section the possible replies are given      explicitly.  MTP replies are discussed in the next section.         MAIL (MAIL)            This command allows a sender-MTP to send mail over the            control connection.  The argument field contains a sender            and optional path sequence.  If the path sequence is            present, it consists of an optional list of hosts and a            destination mailbox.  When the list of hosts is present, it            is source routing information and indicates that the mail            must be forwarded to the first host on the list.  Following            this command line the receiver treats all subsequent            characters as mail text from the sender.  The mail text is            terminated by the character sequence "CRLF.CRLF".            As mail is forwarded along the path sequence, each            forwarding host must remove itself from the list.  When mail            reaches its ultimate destination (the path sequence has only            a (possibly empty) destination mailbox), the receiver            inserts it into the destination mailbox in accordance with            its host mail conventions.  If the second argument field is            blank (one or more spaces) or empty (<CRLF>), the mail is            destined for a printer or other designated place for site            general delivery mail.  The mail may be marked as sent from            the sender as specified by the first argument field.         MAIL RECIPIENT SCHEME QUESTION (MRSQ)            This MTP command is used to select a scheme for the            transmission of mail to several users at the same host.  The            schemes are to list the recipients first, or to send the            mail first.                                   6                                                                        RFC 772                                                   September 1980                                                  Mail Transfer Protocol         MAIL RECIPIENT (MRCP)            This command is used to identify the individual recipients            of the mail in the transmission of mail for multiple users            at one host.         HELP (HELP)            This command causes the receiver to send helpful information            regarding its implementation status over the control            connection to the receiver.  The command may take an            argument (e.g., any command name) and return more specific            information as a response.  The reply is type 211 or 214.         QUIT (QUIT)            This command specifies that the receiver must close the            control connection.         NOOP (NOOP)            This command does not affect any parameters or previously            entered commands.  It specifies no action other than that            the receiver send an OK reply.   COMMAND SYNTAX      The commands (and their functions and semantics) are TELNET      NVT-ASCII strings transmitted over the control connection.  The      functions and semantics of commands are described in the section      on MTP Commands.  The reply sequences are discussed in the section      on Sequencing of Commands and Replies.  Scenarios illustrating the      use of commands are provided in the section on Typical MTP      Scenarios.  The command syntax is specified in this section.      The commands begin with a command code followed by an argument      field.  The command codes are four alphabetic characters.  Upper      and lower case alphabetic characters are to be treated      identically.  Thus any of the following may represent the mail      command:         MAIL    Mail    mail    MaIl    mAIl      This also applies to any symbols representing parameter values,      such as R or r for RECIPIENT first.  The command codes and the      argument fields are separated by one or more spaces.                                   7                                                                        September 1980                                                   RFC 772Mail Transfer Protocol                                                        The argument field consists of a variable length character string      ending with the character sequence <CRLF>.  It should be noted      that the receiver is to take no action until the end of line code      is received.      The syntax is specified below in NVT-ASCII.  All characters in the      argument field are ASCII characters.  Square brackets denote an      optional argument field.  If the option is not taken, the      appropriate default is implied.      The following are the MTP commands:         MAIL <SP> FROM:<sender> [<SP> TO:<path>] <CRLF>         MRSQ [<SP> <scheme>] <CRLF>         MRCP <SP> TO:<path> <CRLF>         HELP [<SP> <string>] <CRLF>         QUIT <CRLF>         NOOP <CRLF>      The syntax of the above argument fields (using BNF notation where      applicable) is given below.  The "..." notation indicates that a      field may be repeated one or more times.         <sender> ::= "<" <mailbox> ">"         <path> ::= "<" ["@" <host> "," ...] <mailbox> ">"         <scheme> ::= "R" | "T" | "?"         <string> ::= <char> | <char><string>         <mailbox> ::= <user> "@" <host>

⌨️ 快捷键说明

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