- •1. Introduction
- •1.1. Transport of Electronic Mail
- •1.2. History and Context for This Document
- •1.3. Document Conventions
- •2. The smtp Model
- •2.1. Basic Structure
- •2.2. The Extension Model
- •2.2.1. Background
- •2.2.2. Definition and Registration of Extensions
- •2.2.3. Special Issues with Extensions
- •2.3. Smtp Terminology
- •2.3.1. Mail Objects
- •2.3.2. Senders and Receivers
- •2.3.3. Mail Agents and Message Stores
- •2.3.4. Host
- •2.3.5. Domain Names
- •2.3.6. Buffer and State Table
- •2.3.7. Commands and Replies
- •2.3.8. Lines
- •2.3.9. Message Content and Mail Data
- •2.3.10. Originator, Delivery, Relay, and Gateway Systems
- •2.3.11. Mailbox and Address
- •2.4. General Syntax Principles and Transaction Model
2.2.3. Special Issues with Extensions
Extensions that change fairly basic properties of SMTP operation are
permitted. The text in other sections of this document must be
understood in that context. In particular, extensions can change the
minimum limits specified in Section 4.5.3, can change the ASCII
character set requirement as mentioned above, or can introduce some
optional modes of message handling.
In particular, if an extension implies that the delivery path
normally supports special features of that extension, and an
intermediate SMTP system finds a next hop that does not support the
required extension, it MAY choose, based on the specific extension
and circumstances, to requeue the message and try later and/or try an
alternate MX host. If this strategy is employed, the timeout to fall
back to an unextended format (if one is available) SHOULD be less
than the normal timeout for bouncing as undeliverable (e.g., if
normal timeout is three days, the requeue timeout before attempting
to transmit the mail without the extension might be one day).
2.3. Smtp Terminology
2.3.1. Mail Objects
SMTP transports a mail object. A mail object contains an envelope
and content.
The SMTP envelope is sent as a series of SMTP protocol units
(described in Section 3). It consists of an originator address (to
which error reports should be directed), one or more recipient
addresses, and optional protocol extension material. Historically,
variations on the reverse-path (originator) address specification
command (MAIL) could be used to specify alternate delivery modes,
such as immediate display; those variations have now been deprecated
(see Appendix FandAppendix F.6).
The SMTP content is sent in the SMTP DATA protocol unit and has two
parts: the header section and the body. If the content conforms to
other contemporary standards, the header section consists of a
collection of header fields, each consisting of a header name, a
colon, and data, structured as in the message format specification
(RFC 5322[4]); the body, if structured, is defined according to MIME
(RFC 2045[21]). The content is textual in nature, expressed using
the US-ASCII repertoire [6]. Although SMTP extensions (such as
"8BITMIME", RFC 1652[22]) may relax this restriction for the content
body, the content header fields are always encoded using the US-ASCII
repertoire. Two MIME extensions (RFC 2047[23] andRFC 2231[24])
define an algorithm for representing header values outside the US-
ASCII repertoire, while still encoding them using the US-ASCII
repertoire.
2.3.2. Senders and Receivers
In RFC 821, the two hosts participating in an SMTP transaction were
described as the "SMTP-sender" and "SMTP-receiver". This document
has been changed to reflect current industry terminology and hence
refers to them as the "SMTP client" (or sometimes just "the client")
and "SMTP server" (or just "the server"), respectively. Since a
given host may act both as server and client in a relay situation,
"receiver" and "sender" terminology is still used where needed for
clarity.