< draft-crocker-email-arch-10.txt   draft-crocker-email-arch-11.txt >
SMTP D. Crocker SMTP D. Crocker
Internet-Draft Brandenburg InternetWorking Internet-Draft Brandenburg InternetWorking
Intended status: Standards Track February 24, 2008 Intended status: Standards Track October 31, 2008
Expires: August 27, 2008 Expires: May 4, 2009
Internet Mail Architecture Internet Mail Architecture
draft-crocker-email-arch-10 draft-crocker-email-arch-11
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 34 skipping to change at page 1, line 34
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on August 27, 2008. This Internet-Draft will expire on May 4, 2009.
Abstract Abstract
Over its thirty-five year history Internet Mail has undergone Over its thirty-five year history, Internet Mail has changed
significant changes in scale and complexity, as it has become a significantly in scale and complexity, as it has become a global
global infrastructure service. The first standardized architecture infrastructure service. These changes have been evolutionary, rather
for networked email specified little more than a simple split between than revolutionary, reflecting a strong desire to preserve both its
the user world and the transmission world. Core aspects of the installed base and its usefulness. To collaborate productively on
service, such as the styles of mailbox address and basic message this large and complex system, all participants must work from a
format, have remained remarkably constant. However today's Internet common view of it and use a common language to describe its
Mail is distinguished by many independent operators, many different components and the interactions among them. But the many differences
components for providing service to users and many others for in perspective currently make it difficult to know exactly what
performing message transfer. Public discussion of the service often another participant means. To serve as the necessary common frame of
lacks common terminology and a common frame of reference for these reference, this document describes the enhanced Internet Mail
components and their activities. Having a common reference model and architecture, reflecting the current service.
terminology facilitates discussion about problems with the service,
changes in policy, or enhancement to the service's functionality.
This document offers an enhanced Internet Mail architecture that
targets description of the existing service, in order to facilitate
clearer and more efficient technical, operations and policy
discussions about email.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Background . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. History . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Service Overview . . . . . . . . . . . . . . . . . . . . . 5 1.2. Document Conventions . . . . . . . . . . . . . . . . . . . 6
1.3. Document Conventions . . . . . . . . . . . . . . . . . . . 6 2. Responsible Actor Roles . . . . . . . . . . . . . . . . . . . 7
1.4. Changes to Previous Version . . . . . . . . . . . . . . . 6 2.1. User Actors . . . . . . . . . . . . . . . . . . . . . . . 7
2. Responsible Actor Roles . . . . . . . . . . . . . . . . . . . 8 2.2. Mail Handling Service (MHS) Actors . . . . . . . . . . . . 10
2.1. User Actors . . . . . . . . . . . . . . . . . . . . . . . 9 2.3. Administrative Actors . . . . . . . . . . . . . . . . . . 13
2.2. Mail Handling Service (MHS) Actors . . . . . . . . . . . . 12 3. Identities . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3. Administrative Actors . . . . . . . . . . . . . . . . . . 15 3.1. Mailbox . . . . . . . . . . . . . . . . . . . . . . . . . 16
3. Identities . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.2. Scope of Email Address Use . . . . . . . . . . . . . . . . 17
3.1. Mailbox . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.3. Domain Names . . . . . . . . . . . . . . . . . . . . . . . 17
3.2. Domain Names . . . . . . . . . . . . . . . . . . . . . . . 19 3.4. Message Identifier . . . . . . . . . . . . . . . . . . . . 18
3.3. Message Identifier . . . . . . . . . . . . . . . . . . . . 19 4. Services and Standards . . . . . . . . . . . . . . . . . . . . 19
4. Services and Standards . . . . . . . . . . . . . . . . . . . . 21 4.1. Message Data . . . . . . . . . . . . . . . . . . . . . . . 22
4.1. Message Data . . . . . . . . . . . . . . . . . . . . . . . 25 4.2. User-Level Services . . . . . . . . . . . . . . . . . . . 27
4.2. User-Level Services . . . . . . . . . . . . . . . . . . . 30 4.3. MHS-Level Services . . . . . . . . . . . . . . . . . . . . 29
4.3. MHS-Level Services . . . . . . . . . . . . . . . . . . . . 32 4.4. Transition Modes . . . . . . . . . . . . . . . . . . . . . 33
5. Mediators . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.5. Implementation and Operation . . . . . . . . . . . . . . . 33
5.1. Aliasing . . . . . . . . . . . . . . . . . . . . . . . . . 36 5. Mediators . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.2. Re-Sending . . . . . . . . . . . . . . . . . . . . . . . . 37 5.1. Alias . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.3. Mailing Lists . . . . . . . . . . . . . . . . . . . . . . 39 5.2. ReSender . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.4. Gateways . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.3. Mailing Lists . . . . . . . . . . . . . . . . . . . . . . 37
5.5. Boundary Filter . . . . . . . . . . . . . . . . . . . . . 41 5.4. Gateways . . . . . . . . . . . . . . . . . . . . . . . . . 39
6. Considerations . . . . . . . . . . . . . . . . . . . . . . . . 42 5.5. Boundary Filter . . . . . . . . . . . . . . . . . . . . . 40
6.1. Security Considerations . . . . . . . . . . . . . . . . . 42 6. Considerations . . . . . . . . . . . . . . . . . . . . . . . . 40
6.2. IANA Considerations . . . . . . . . . . . . . . . . . . . 42 6.1. Security Considerations . . . . . . . . . . . . . . . . . 40
6.2. IANA Considerations . . . . . . . . . . . . . . . . . . . 41
6.3. Internationalization . . . . . . . . . . . . . . . . . . . 41
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 42 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7.1. Normative . . . . . . . . . . . . . . . . . . . . . . . . 42 7.1. Normative . . . . . . . . . . . . . . . . . . . . . . . . 42
7.2. Informative . . . . . . . . . . . . . . . . . . . . . . . 44 7.2. Informative . . . . . . . . . . . . . . . . . . . . . . . 44
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 45 Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 45
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 47 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 48
Intellectual Property and Copyright Statements . . . . . . . . . . 48 Intellectual Property and Copyright Statements . . . . . . . . . . 49
1. Introduction 1. Introduction
Over its thirty-five year history Internet Mail has undergone Over its thirty-five year history, Internet Mail has changed
significant changes in scale and complexity, as it has become a significantly in scale and complexity, as it has become a global
global infrastructure service. The changes have been evolutionary, infrastructure service. These changes have been evolutionary, rather
rather than revolutionary, reflecting a strong desire to preserve its than revolutionary, reflecting a strong desire to preserve both its
installed base of users and utility. Today, Internet Mail is installed base and its usefulness. Today, Internet Mail is
distinguished by many independent operators, many different distinguished by many independent operators, many different
components for providing service to users and many other components components for providing service to users, as well as many different
for performing message transfer. components that transfer messages.
Public collaboration on email technical, operations and policy Public collaboration on technical, operations, and policy activities
activities, including those responding to the challenges of email of email, including those that respond to the challenges of email
abuse, has brought in a much wider range of participants than email's abuse, has brought a much wider range of participants into the
technical community originally had. In order to do work on a large, technical community. To collaborate productively on this large and
complex system, they need to share the same view of how it is put complex system, all participants must work from a common view of it
together, as well as what terms to use to refer to the pieces and and use a common language to describe its components and the
their activities. Otherwise, it is difficult to know exactly what interactions among them. But the many differences in perspective
another participant means. It is these differences in each person's currently make it difficult to know exactly what another participant
perspective that motivates this document, to describe the realities means.
of the current system. Internet mail is the subject of ongoing
technical, operations and policy work, and the discussions often are
hindered by different models of email service design and different
meanings for the same terms. This architecture document seeks to
facilitate clearer and more efficient technical, operations and
policy exchanges about email.
This document offers an enhanced Internet Mail architecture to It is the need to resolve these differences that motivates this
reflect the current service. In particular it: document, which describes the realities of the current system.
Internet Mail is the subject of ongoing technical, operations, and
policy work, and the discussions often are hindered by different
models of email service design and different meanings for the same
terms.
* Documents refinements to the email model To serve as the necessary common frame of reference, this document
describes the enhanced Internet Mail architecture, reflecting the
current service. The document focuses on:
* Clarifies functional roles for the architectural components * Capturing refinements to the email model
* Clarifies identity-related issues, across the email service * Clarifying functional roles for the architectural components
* Defines terminology for architectural components and their * Clarifying identity-related issues, across the email service
* Defining terminology for architectural components and their
interactions interactions
1.1. Background 1.1. History
The first standardized architecture for networked email specified a The first standardized architecture for networked email specified a
simple split between the user world, in the form of Mail User Agents simple split between the user world, in the form of Mail User Agents
(MUA), and the transmission world, in the form of the Mail Handling (MUA), and the transfer world, in the form of the Mail Handling
Service (MHS) composed of Mail Transfer Agents (MTA). The MHS is Service (MHS), which is composed of Mail Transfer Agents (MTA). The
responsible for accepting a message from one User and delivering it MHS accepts a message from one User and delivers it to one or more
to one or more others, creating a virtual MUA-to-MUA exchange other users, creating a virtual MUA-to-MUA exchange environment.
environment.
As shown in Figure 1 this defines two logical "layers" of
interoperability. One is directly between Users. The other is
between the neighboring components, along the transfer path. In
addition, there is interoperability between the layers, first when a
message is posted from the User to the MHS and later when it is
delivered from the MHS to the User.
The operational service has evolved sub-divisions for each of these As shown in Figure 1, this defines two logical layers of
layers into more specialized modules. Core aspects of the service, interoperability. One is directly between Users. The other is among
such as mailbox addressing and message format style, have remained the components along the transfer path. In addition, there is
remarkably constant. So the original distinction between user-level interoperability between the layers, first when a message is posted
concerns and transfer-level concerns is retained, but with an from the User to the MHS and later when it is delivered from the MHS
elaboration to each level of the architecture. The term "Internet to the User.
Mail" is used to refer to the entire collection of user and transfer
components and services.
For Internet Mail the term "end-to-end" usually refers to a single The operational service has evolved, although core aspects of the
posting and the set of deliveries directly resulting from its single service, such as mailbox addressing and message format style,
transiting of the MHS. A common exception is with group dialogue remaining remarkably constant. The original distinction between the
that is mediated via a mailing list, so that two postings occur user level and transfer level remains, but with elaborations in each.
before intended recipients receive an Author's message, as discussed The term "Internet Mail" is used to refer to the entire collection of
in Section 2.1.4. In fact some uses of email consider the entire user and transfer components and services.
email service -- including Author and Recipient -- as a subordinate
component. For these services "end-to-end" refers to points outside
of the email service. Examples are voicemail over email [RFC3801],
EDI over email [RFC1767] and facsimile over email [RFC4142].
+--------+ For Internet Mail, the term "end-to-end" usually refers to a single
+---------------->| User | posting and the set of deliveries that result from a single transit
| +--------+ of the MHS. A common exception is group dialogue that is mediated,
| ^ through a Mailing List; in this case, two postings occur before
+--------+ | +--------+ . intended Recipients receive an Author's message, as discussed in
| User +--+--------->| User | . Section 2.1.3. In fact, some uses of email consider the entire email
+--------+ | +--------+ . service, including Author and Recipient, as a subordinate component.
. | ^ . For these services, "end-to-end" refers to points outside the email
. | +--------+ . . service. Examples are voicemail over email "[RFC3801], EDI over
. +-->| User | . . email [RFC1767] and facsimile over email [RFC4142].
. +--------+ . .
. ^ . .
. . . .
V . . .
+---+----------------+------+------+---+
| . . . . |
| +...............>+ . . |
| . . . |
| +......................>+ . |
| . . |
| +.............................>+ |
| |
| Mail Handling Service (MHS) |
+--------------------------------------+
Figure 1: Basic Internet Mail Service Model +--------+
++================>| User |
|| +--------+
|| ^
+--------+ || +--------+ .
| User +==++=========>| User | .
+---+----+ || +--------+ .
. || ^ .
. || +--------+ . .
. ++==>| User | . .
. +--------+ . .
. ^ . .
. . . .
V . . .
+---+-----------------+------+------+---+
| . . . . |
| .................>. . . |
| . . . |
| ........................>. . |
| . . |
| ...............................>. |
| |
| Mail Handling Service (MHS) |
+---------------------------------------+
1.2. Service Overview Figure 1: Basic Internet Mail Service Model
End-to-end Internet Mail exchange is accomplished by using a End-to-end Internet Mail exchange is accomplished by using a
standardized infrastructure comprising: standardized infrastructure with these components and
characteristics:
* An email object * An email object
* Global addressing * Global addressing
* An asynchronous sequence of point-to-point transfer mechanisms * An asynchronous sequence of point-to-point transfer mechanisms
* No prior arrangement between Author and Recipient * No prior arrangement between MTAs or between Authors and
Recipients
* No prior arrangement between point-to-point transfer services, * No prior arrangement between point-to-point transfer services
over the open Internet over the open Internet
* No requirement for Author and Recipient to be online at the * No requirement for Author, Originator, or Recipients to be
same time. online at the same time
The end-to-end portion of the service is the email object, called a The end-to-end portion of the service is the email object, called a
message. Broadly the message, itself, distinguishes between control "message." Broadly, the message itself distinguishes control
information for handling, versus the author's message content. information, for handling, from the Author's content.
A precept to the design of mail over the open Internet is permitting A precept to the design of mail over the open Internet is permitting
user-to-user and MTA-to-MTA interoperability to take place with no user-to-user and MTA-to-MTA interoperability without prior, direct
prior, direct arrangement between the independent administrative arrangement between the independent administrative authorities
authorities responsible for handling a message. That is, all responsible for handling a message. All participants rely on having
participants rely on the core services being universally supported the core services universally supported and accessible, either
and accessible, either directly or through gateways that translate directly or through Gateways that act as translators between Internet
between Internet Mail and email environments that conform to other Mail and email environments conforming to other standards. Given the
standards. Given the importance of spontaneity and serendipity in importance of spontaneity and serendipity in interpersonal
the world of human communications, this lack of prearrangement communications, not requiring such prearrangement between
between participants is a core benefit of Internet Mail and remains a participants is a core benefit of Internet Mail and remains a core
core requirement for it. requirement for it.
Within localized networks at the edge of the public Internet, prior Within localized networks at the edge of the public Internet, prior
administrative arrangement often is required and can include access administrative arrangement often is required and can include access
control, routing constraints and information query service control, routing constraints, and configuration of the information
configuration. In recent years one change to local environments is query service. Although recipient authentication has usually been
an increased requirement for authentication or, at least, required for message access since the beginning of Internet Mail, in
accountability. In these cases a server performs explicit validation recent years it also has been required for message submission. In
of the client's identity. these cases, a server validates the client's identity, whether by
explicit security protocols or by implicit infrastructure queries to
1.3. Document Conventions identify "local" participants.
In this document, references to structured fields of a message use a
two-part dotted notation. The first part cites the document that
contains the specification for the field and the second is the name
of the field. Hence <RFC2822.From> is the From: field in an email
content header and <RFC2821.MailFrom> is the address in the SMTP
"Mail From" command.
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].
Discussion venue: Please direct discussion about this document
to the IETF-SMTP mailing list <http://www.imc.org/ietf-smtp>.
1.4. Changes to Previous Version
INSTRUCTIONS TO THE RFC EDITOR: Remove this sub-section prior to
publication.
Many small editing changes, for wordsmithing improvements to make
details more consistent. This section documents the nature and basis
for changes with significant impact.
Originator->Author: The term "Originator" is used by RFC 2822 more
broadly than just the From: field, which specifically defines who
the author of the content is. I believe this distinguishes two
constructs, one for the content author and one for the first
agency that handles the message, in terms of the transfer service.
So the change from "Originator" to "Author" seems pretty
straightforward. The challenge is in using the term Originator,
as defined in RFC 2822 and applying it to the system's
architecture.
Source->Originator: This change is more of a challenge. We need
the "Originator" term and construct, but the architecture is
already complex enough. Hence, adding a new construct seems like
a very poor resolution. The document has used "Source" as an MHS
term for the MSA set of functions. While one could argue against
re-labeling it as Originator, I believe this is a reasonable
choice and likely to be comfortable for community use, since
"Source" does not have an established history.
Bounce->Return: 'bounce address' is not accurate, because the
address is used for more than that, but it *is* as established
term within portions of the broader email community. I also
believe the extensive discussion on this point, last year,
justifies the change.
The problem with saying "Bounce" is that is not merely
linguistically impure, it is plain wrong and has already caused
serious problems. Witness SPF. Frankly, we need to fix RFC2821,
but that's a separate battle to fight and not one for this forum.
Although not a verbatim use of "Reverse Path", the related term 1.2. Document Conventions
that seems to work publicly is "Return Address". It is already
established in the bricks-and-mortar postal world and seems to
have some acceptance within parts of the email community. (I've
done a draft white paper on authentication for the Messaging Anti-
Abuse Working Group and the membership had some debate about this
vocabulary choice and converged on agreeing to it.)
Is the envelope part of the message? I don't remember whether we References to structured fields of a message use a two-part dotted
resolved this. For a variety of reasons, I believe the message notation. The first part cites the document that contains the
includes its envelope, and am encouraged to find RFC2822upd says: specification for the field and the second is the name of the field.
Hence <RFC2822.From> is the From: header field in an email content
header and <RFC2821.MailFrom> is the address in the SMTP "Mail From"
command.
In the context of electronic mail, messages are viewed as When occurring without the RFC2822 qualifier, header field names are
having an envelope and contents. The envelope contains shown with a colon suffix. For example, From:.
whatever information is needed to accomplish transmission and
delivery. (See [I-D.klensin-rfc2821bis] (Klensin, J., "Simple
Mail Transfer Protocol," November 2007.) for a discussion of
the envelope.) The contents comprise the object to be
delivered to the recipient. This specification applies only to
the format and some of the semantics of message contents.
rfc2821bis says: References to labels for actors, functions or components have the
first letter capitalized.
SMTP transports a mail object. A mail object contains an Also, the key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
envelope and content. NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
this document are to be interpreted as described in RFC 2119
[RFC2119] [RFC2119].
I think these justify having the term 'message' as including the RFC EDITOR: Remove the following paragraph before publication.
object.
Examples of 'new' messages: Section Section 3.3.1contains a list of Discussion venue: Please direct discussion about this document
examples, discussing scenarios that might or might not be viewed to the IETF-SMTP mailing list <http://www.imc.org/ietf-smtp>.
as creating a "new" message, rather than retaining an existing
one. The list has been expanded.
2. Responsible Actor Roles 2. Responsible Actor Roles
Internet Mail is a highly distributed service, with a variety of Internet Mail is a highly distributed service, with a variety of
actors serving different roles. These divide into 3 basic types: actors playing different roles. These actors fall into three basic
types:
* User * User
* Mail Handling Service (MHS) * Mail Handling Service (MHS)
* ADministrative Management Domain (ADMD) * ADministrative Management Domain (ADMD)
Although related to a technical architecture, the focus on Actors Although related to a technical architecture, the focus on actors
concerns participant responsibilities, rather than on functionality concerns participant responsibilities, rather than functionality of
of modules. Hence the labels used are different than for classic modules. For that reason, the labels used are different from those
email architecture diagrams. used in classic email architecture diagrams.
2.1. User Actors 2.1. User Actors
Users are the sources and sinks of messages. They can be humans, Users are the sources and sinks of messages. Users can be people,
organizations or processes. They can have an exchange that iterates organizations, or processes. They can have an exchange that
and they can expand or contract the set of users participating in a iterates, and they can expand or contract the set of users that
set of exchanges. In Internet Mail there are three types of user- participate in a set of exchanges. In Internet Mail, there are four
level Actors: types of Users:
* Authors * Authors
* Recipients * Recipients
* Mediators * Return Handlers
From the User-level perspective all mail transfer activities are * Mediators
performed by a monolithic Mail Handling Service (MHS), even though
the actual service can be provided by many independent organizations.
Users are customers of this unified service.
The following figure depicts the flow of messages among Actors: Figure 2 shows the primary and secondary flows of messages among
them.
+------------+ ++==========++
| |<---------------------------+ || Author ||<..................................<..
| Author |<----------------+ | ++=++=++=++=++ .
| |<----+ | | || || || ++===========++ .
+-+---+----+-+ | | | || || ++====>|| Recipient || .
| | | | | | || || ++=====+=====++ .
| | V | | | || || . .
| | +---------+-+ | | || || ..........................>.+
| | | Recipient | | | || || .
| | +-----------+ | | || || ................... .
| | | | || || . . .
| | +--------+ | | || || V . .
| | | | | | || || +-----------+ ++=====+=====++ .
| V V | | | || ++========>| Mediator +===>|| Recipient || .
| +-----------+ +-+-------+-+ | || +-----+-----+ ++=====+=====++ .
| | Mediator +--->| Recipient | | || . . .
| +-----------+ +-----------+ | || ..................+.......>.+
| | || .
| +-----------------------------+ | || ..............+.................. .
| | +----------+ | | || . . . .
| | | | | | \/ V V ' .
V V V | | | +-----------+ +-----------+ ++=====+=====++ .
+-----------+ +-----------+ +---+-+-+---+ | Mediator +===>| Mediator +===>|| Recipient || .
| Mediator +--->| Mediator +--->| Recipient | +-----+-----+ +-----+-----+ ++=====+=====++ .
+-----------+ +-----------+ +-----------+ . . . .
.................+.................+.......>..
Figure 2: Relationships Among User Actors Figure 2: Relationships Among User Actors
From the user perspective, all mail transfer activities are performed
by a monolithic Mail Handling Service (MHS), even though the actual
service can be provided by many independent organizations. Users are
customers of this unified service.
Whenever any MHS actor sends information to back to an Author or
Originator in the sequence of handling a message, that actor is a
User.
2.1.1. Author 2.1.1. Author
This is the user-level participant responsible for creating the The Author is responsible for creating the message, its contents, and
message, its contents and its list of recipient addresses. The MHS its list of recipient addresses. The MHS transfers the message from
operates to send and deliver mail among Authors and Recipients. As the Author and delivers it to the Recipients. The MHS has an
described below, the MHS has a "Source" role that correlates with the Originator role (Section 2.2.1) that correlates with the Author role.
user-level Author role.
2.1.2. Recipient 2.1.2. Recipient
The Recipient is a consumer of delivered message content. As The Recipient is a consumer of the delivered message. The MHS has a
described below, the MHS has a "Dest[ination]" role that correlates Receiver role (Section 2.2.4)correlates with the Recipient role.
with the user-level Recipient role. This is labeled Recv in Figure 3.
A Recipient can close the user-level communication loop by creating Any Recipient can close the user communication loop by creating and
and submitting a new message that replies to an Author. An example submitting a new message that replies to the Author. An example of
of an automated form of reply is the Message Disposition Notification an automated form of reply is the Message Disposition Notification
(MDN), which informs the Author about the Recipient's handling of the (MDN), which informs the Author about the Recipient's handling of the
message. (See Section 4.1.) message. (See Section 4.1.)
2.1.3. Return Handler The Return Handler, also called "Bounce Handler," receives and
services notifications that the MHS generates, as it transfers or
The Return Handler -- also called "Bounce Handler" -- receives and delivers the message. These notices can be about failures or
services notifications generated by the MHS, as a result of efforts
to transfer or deliver the message. Notices can be about failures or
completions and are sent to an address that is specified by the completions and are sent to an address that is specified by the
Source. This Return handling address (also known as a Return Originator<<initial def>> . This Return handling address (also known
address) might have no visible characteristics in common with the as a Return address) might have no visible characteristics in common
address of the Author or Source. with the address of the Author or Originator.
2.1.4. Mediator 2.1.3. Mediator
A Mediator receives, aggregates, reformulates and redistributes A Mediator receives, aggregates, reformulates, and redistributes
messages as part of a potentially-protracted, higher-level exchange messages among Authors and Recipients who are the principals in
among Users. It is easy to confuse this user-level activity with the protracted exchanges. This activity is easily confused with the
underlying MHS transfer exchanges. However they serve very different underlying MHS transfer exchanges. However, each serves very
purposes and operate in very different ways. Mediators are different purposes and operates in very different ways.
considered extensively in Section 5.
When mail is delivered to a receiving mediator specified in the When mail is delivered to the Mediator specified in the
RFC2821.RcptTo command, the MHS handles it the same way as for any RFC2821.RcptTo command, the MHS handles it the same way as for any
other Recipient. That is, the MHS only sees posting and delivery other Recipient. The MHS sees each posting and delivery activity
sources and sinks and does not see (later) re-posting as a between sources and sinks as independent; it does not see subsequent
continuation of a process. Hence when submitting messages, the re-posting as a continuation of a process. Because the Mediator
Mediator is an Author. originates messages, it can receive replies. Hence, when submitting
messages, the Mediator is an Author. So a Mediator really is a full-
fledged User. Mediators are considered extensively in Section 5.
The distinctive aspects of a Mediator are, therefore, above the MHS. The distinctive aspects of a Mediator are outside the MHS. A
A Mediator preserves the Author information of the message it Mediator preserves the Author information of the message it
reformulates, but may make meaningful changes to the content. Hence reformulates and is permitted to make meaningful changes to the
the MHS sees a new message, but Users receive a message that is message content or envelope. The MHS sees a new message, but users
interpreted as primarily being from -- or, at least, initiated by -- receive a message that they interpret as being from, or at least
the author of the original message. The role of a Mediator permits initiated by, the Author of the original message. The role of a
distinct, active creativity, rather than being limited to the more Mediator is not limited to merely connecting other participants; the
constrained job of merely connecting together other participants. Mediator is responsible for the new message.
Hence it is really the Mediator that is responsible for the new
message.
A Mediator's task can be complex and contingent, such as modifying A Mediator's role is complex and contingent, for example, modifying
and adding content or regulating which users are allowed to and adding content or regulating which users are allowed to
participate and when. The popular example of this role is a group participate and when. The common example of this role is a group
mailing list. A sequence of Mediators may even perform a series of Mailing List. In a more complex use, a sequence of Mediators could
formal steps, such as reviewing, modifying and approving a purchase perform a sequence of formal steps, such as reviewing, modifying, and
request. approving a purchase request.
Because a Mediator originates messages, it can also receive replies.
So a Mediator really is a full-fledged User.
Gateway: A Gateway is a particularly interesting form of Mediator. A Gateway is a particularly interesting form of Mediator. It is a
It is a hybrid of User and Relay that interconnects heterogeneous hybrid of User and Relay that connects heterogeneous mail services.
mail services. Its goal is to emulate a Relay, and a detailed Its purpose is to emulate a Relay. For a detailed discussion, see
discussion is in Section 2.2.3. Section 2.2.3. .
2.2. Mail Handling Service (MHS) Actors 2.2. Mail Handling Service (MHS) Actors
The Mail Handling Service (MHS) has the task of performing a single, The Mail Handling Service (MHS) performs a single end-to-end transfer
end-to-end transfer on behalf of the Author and reaching the on behalf of the Author to reach the Recipient addresses specified in
Recipient address(es) specified in the original RFC2821.RcptTo the original RFC2821.RcptTo commands. Exchanges that are either
commands. Mediated or protracted, iterative exchanges, such as those mediated or iterative and protracted, such as those used for
used for collaboration over time, are part of the User-level service, collaboration over time are handled by the User actors, not by the
and are not part of this transfer-level Handling Service. MHS actors.
The following figure depicts the relationships among transfer Figure 3 shows the relationships among transfer participants in
participants in Internet Mail. It shows the Source as distinct from Internet Mail. Although it shows the Originator (labeled Origin) as
the Author, and Dest[ination] as distinct from Recipient, although it distinct from the Author and Receiver (labeled Recv) as distinct from
is common for each pair to be the same actor. Transfers typically Recipient, each pair of roles usually has the same actor.
entail one or more Relays. However direct delivery from the Source Transfers typically entail one or more Relays. However direct
to Destination is possible. For intra-organization mail services, it delivery from the Originator to Receiver is possible. Intra-
is common to have only one Relay. organization mail services usually have only one Relay.
+------------+ +-----------+ ++==========++ ++===========++
| Author | +--------+ | Recipient | || Author || || Recipient ||
+-----+------+ +....>| Return | +-----------+ ++====++====++ +--------+ ++===========++
| . +--------+ ^ || | Return | /\
| . ^ | || +-+------+ ||
//===================================================\\ \/ . ^ ||
|| | . | Mail Handling | || +---------+ . . +---++---+
|| | . | Service (MHS) | || | | . . | |
V . | | //==+=========+============================+========+===\\
+---------+ . ^ +----+---+ || | | . . MHS | | ||
| | . | | | || | Origin +<...... .................+ Recv | ||
| Origin +....+ +-<------------+ Dest | | | ^ | |
| | | | | +---++----+ . +--------+
+----+----+ | +--------+ || . /\
| | ^ || ..............+.................. ||
| +-------------->-+-<-------------+ | \/ . . . ||
V | | | | +-------+-+ +--+------+ +-+--++---+
+-------+-+ +----+----+ +-+---+---+ | Relay +=======>| Relay +=======>| Relay |
| Relay +-->...-->| Relay +------->| Relay | +---------+ +----++---+ +---------+
+---------+ +----+----+ +---------+ ||
| ||
V \/
+---------+ +---------+
| Gateway +-->... | Gateway +-->...
+---------+ +---------+
Figure 3: Relationships Among MHS Actors Figure 3: Relationships Among MHS Actors
2.2.1. Originator 2.2.1. Originator
The Originator role is responsible for ensuring that a message is The Originator ensures that a message is valid for posting and then
valid for posting and then submitting it to a Relay. Validity submits it to a Relay. A message is valid if it conforms to both
includes conformance with Internet Mail standards, as well as with Internet Mail standards and local operational policies. The
local operational policies. The Originator can simply review the Originator can simply review the message for conformance and reject
message for conformance and reject it if there are errors, or it can it if it finds errors, or it can create some or all of the necessary
create some or all of the necessary information. information. In effect, the Originator is responsible for the
functions of the Mail Submission Agent.
The Originator operates with dual "allegiance". It serves the Author The Originator operates with dual allegiance. It serves the Author
and often it is the same entity. However its role in assuring and can be the same entity. But its role in assuring validity means
validity means that it MUST also represent the local operator of the that it MUST also represent the local operator of the MHS, that is,
MHS, that is, the local ADministrative Management Domain (ADMD). the local ADministrative Management Domain (ADMD).
The Originator also has the responsibility for any post-submission, The Originator also performs any post-submission, Author-related
Author-related administrative tasks associated with message administrative tasks associated with message transfer and delivery.
transmission and delivery. Notably this pertains to error and Notably, these tasks pertain to sending error and delivery notices,
delivery notices. Hence Source is best held accountable for the enforcing local policies, and dealing with messages from the Author
message content, even when they did not create any or most of it. that prove to be problematic for the Internet. The Originator is
accountable for the message content, even when it is not responsible
for it. The Author creates the message, but the Originator handles
any transmission issues with it.
2.2.2. Relay 2.2.2. Relay
A mail Relay performs email transfer-service routing and store-and- The Relay performs MHS-level transfer-service routing and store-and-
forward by (re-)transmitting the message on towards its Recipient(s). forward, by transmitting or retransmitting the message to its
A Relay can add trace information. However it does not modify Recipients. The Relay adds trace information [RFC2505] but does not
existing envelope information or the message content semantics. It modify the envelope information or the message content semantics. It
can modify message content syntax, such as a change from binary to can modify message content representation, such as changing the form
text transfer-encoding form, only as required to meet the of transfer encoding from binary to text, but only as required to
capabilities of the next hop in the MHS. meet the capabilities of the next hop in the MHS.
A set of Relays composes a Mail Handling Service (MHS) network. This A Mail Handling Service (MHS) network consists of a set of Relays.
is above any underlying packet-switching network that they might be This network is above any underlying packet-switching network that
using and below any gateways or other user-level Mediators. might be used and below any Gateways or other Mediators.
In other words, interesting email scenarios can involve three In other words, email scenarios can involve three distinct
distinct architectural layers of store-and-forward service: architectural layers, each providing its own type of data of store-
and-forward service:
* User Mediators * User Mediators
* MHS Relays * MHS Relays
* Packet Switches * Packet Switches
with the bottom-most usually being the Internet's IP service. The The bottom layer is the Internet's IP service. The most basic email
most basic email scenarios involve Relays and Switches. scenarios involve Relays and Switches.
Aborting a message transfer results in having the Relay become an Aborting a message transfer makes the Relay an Author because it must
Author and sending an error message to the Return address. The send an error message to the Return address. The potential for
potential for looping is avoided by having this message, itself, looping is avoided by omitting a Return address from this message.
contain no Return address.
2.2.3. Gateway 2.2.3. Gateway
A Gateway is a hybrid form of User and Relay that interconnects A Gateway is a hybrid of User and Relay that connects heterogeneous
heterogeneous mail services. Its purpose is simply to emulate a mail services. Its purpose is to emulate a Relay and the closer it
Relay and the closer it comes to this, the better. However it comes to this, the better. A Gateway operates as a User when it
operates at the User level, because it MUST be able to modify message needs the ability to modify message content.
content.
Differences between mail services can be as small as minor syntax Differences between mail services can be as small as minor syntax
variations, but usually encompass significant, semantic distinctions. variations, but they usually encompass significant, semantic
One difference could have the concept of an email address being a distinctions. One difference could be email addresses that are
hierarchical, machine-specific address, versus having it be a flat, hierarchical and machine-specific rather than a flat, global
global name space. Another difference could be between text-only namespace. Another difference could be support for text-only content
content, versus multi-media. Hence the Relay function in a Gateway or multi-media. Hence the Relay function in a Gateway presents a
offers significant design challenges, to make the result be as significant design challenge, if the resulting performance is to be
seamless as possible. The most significant challenge is in ensuring seen as nearly seamless. The challenge is to ensure user-to-user
the user-to-user functionality that matches syntax and semantics of functionality between the services, despite differences in their
independent email standards suites. syntax and semantics.
The basic test of a Gateway's adequacy is, of course, whether an The basic test of Gateway design is whether an Author on one side of
Author on one side of a Gateway can send a useful message to a a Gateway can send a useful message to a Recipient on the other side,
Recipient on the other side, without requiring changes to any of the without requiring changes to any components in the Author's or
components in the Author's or Recipient's mail services, other than Recipient's mail services other than adding the Gateway. To each of
adding the Gateway. To each of these otherwise independent services, these otherwise independent services, the Gateway appears to be a
the Gateway will appear to be a "native" participant. However the native participant. But the ultimate test of Gateway design is
ultimate test of a Gateway's adequacy is whether the Author and whether the Author and Recipient can sustain a dialogue. In
Recipient can sustain a dialogue. In particular can a Recipient's particular, can a Recipient's MUA automatically formulate a valid
MUA automatically formulate a valid Reply that will reach the initial Reply that will reach the Author?
Author?
2.2.4. Receiver
The Receiver performs final delivery or sends the message to an
alternate address. It can also perform filtering and other policy
enforcement immediately before or after delivery.
2.3. Administrative Actors 2.3. Administrative Actors
Actors often are associated with different organizations, each with Administrative actors can be associated with different organizations,
its own administrative authority. This operational independence, each with its own administrative authority. This operational
coupled with the need for interaction between groups, provides the independence, coupled with the need for interaction between groups,
motivation for distinguishing among ADministrative Management Domains provides the motivation to distinguish among ADministrative
(ADMD). Each ADMD can have vastly different operating policies and Management Domains (ADMDs ). Each ADMD can have vastly different
trust-based decision-making. An obvious example is the distinction operating policies and trust-based decision-making. One obvious
between mail that is exchanged within a single organization, versus example is the distinction between mail that is exchanged within an
mail that is exchanged between independent organizations. The rules organization and mail that is exchanged between independent
for handling these two types of traffic tend to be quite different. organizations. The rules for handling both types of traffic tend to
That difference requires defining the boundaries of each, and this be quite different. That difference requires defining the boundaries
requires the ADMD construct. of each, and this requires the ADMD construct.
Operation of Internet Mail services is apportioned to different Operation of Internet Mail services is carried out by different
providers (or operators). Each can be an independent ADMD. This providers (or operators). Each can be an independent ADMD. This
independence of administrative decision-making defines boundaries independence of administrative decision-making defines boundaries
that distinguish different portions of the Internet Mail service. that distinguish different portions of the Internet Mail service. A
Examples include an end-user operating their desktop client, a department that operates a local Relay, an IT department that
department operating a local Relay, an IT department operating an operates an enterprise Relay, and an ISP that operates a public
enterprise Relay and an ISP operating a public shared email service. shared email service can be configured into many combinations of
These can be configured into many combinations of administrative and administrative and operational relationships. Each is a distinct
operational relationships, with each ADMD potentially having a ADMD, potentially having a complex arrangement of functional
complex arrangement of functional components. Figure 4 depicts components. Figure 4 depicts relationships among ADMDs. The benefit
relationships among ADMDs. The benefit of having the ADMD construct of the ADMD construct is to facilitate discussion about designs,
is to facilitate discussion about designs and operations that need to policies and operations that need to distinguish between internal
distinguish between "internal" issues and "external" ones. issues and external ones.
The architectural impact of needing to have boundaries between ADMD's The architectural impact of the need for boundaries between ADMDs is
is discussed in [Tussle]. Most significant is that the entities discussed in [Tussle]. Most significant is that the entities
communicating across ADMD boundaries will typically have an added communicating across ADMD boundaries typically have the added burden
burden to enforce organizational policies concerning "external" of enforcing organizational policies concerning external
communications. At a more mundane level, routing mail between ADMDs communications. At a more mundane level, routing mail between ADMDs
can be an issue, such as needing to route mail for partners over can be an issue, such as needing to route mail for partners over
specially-trusted paths. specially trusted paths.
Basic types of ADMDs include -- These are the basic types of ADMDs:
Edge: Independent transfer services, in networks at the edge of Edge: Independent transfer services in networks at the edge of
the open Internet Mail service. the open Internet Mail service.
User: End-user services. This might be subsumed under the Edge Consumer: This might be a type of Edge service, as is common
service, such as is common for web-based email access. for web-based email access.
Transit: These are Mail Service Providers (MSP) offering value-
added capabilities for Edge ADMDs, such as aggregation and
filtering.
Note that Transit services are quite different from packet-level Transit: Mail Service Providers (MSP) that offer value-added
switching operation. Whereas end-to-end packet transfers usually go capabilities for Edge ADMDs, such as aggregation and filtering.
through intermediate routers, email exchange across the open Internet
is often directly between the Boundary MTAs of Edge ADMDs, at the
email level. This further highlights the differences discussed in
Section 2.2.2
+-------+ +-------+ +-------+ The mail-level transit service is different from packet-level
| ADMD1 | | ADMD3 | | ADMD4 | switching. End-to-end packet transfers usually go through
| ----- | | ----- | | ----- | intermediate routers; email exchange across the open Internet can be
| | +---------------------->| | | | directly between the Boundary MTAs of Edge ADMDs. This distinction
| User | | |-Edge--+--->|-User | between direct and indirect interaction highlights the differences
| | | | +---------+ +--->| | | | discussed in Section 2.2.2
| V | | | ADMD2 | | +-------+ +-------+ +--------+ +---------+ +-------+ +-----------+
| Edge--+---+ | ----- | | | ADMD1 |<===>| ADMD2 |<===>| ADMD3 |<===>| ADMD4 |
| | | | | | | ----- | | ----- | | ----- | | ----- |
+-------+ +----|-Transit-+---+ | | | | | | | |
| | | Author | | | | | | |
+---------+ | . | | | | | | |
| V | | | | | | |
| Edge..+....>|.Transit.+....>|-Edge..+....>|.Recipient |
| | | | | | | |
+--------+ +---------+ +-------+ +-----------+
Figure 4: ADMD Example Figure 4: Administrative Domain (ADMD) Example
Edge networks can use proprietary email standards internally. Edge networks can use proprietary email standards internally.
However the distinction between Transit network and Edge network However the distinction between Transit network and Edge network
transfer services is primarily significant because it highlights the transfer services is significant because it highlights the need for
need for concern over interaction and protection between independent concern over interaction and protection between independent
administrations. In particular this distinction calls for additional administrations. In particular, this distinction calls for
care in assessing transitions of responsibility, as well as the additional care in assessing the transitions of responsibility and
accountability and authorization relationships among participants in the accountability and authorization relationships among participants
email transfer. in message transfer.
The interactions between functional components within an ADMD are The interactions of ADMD components are subject to the policies of
subject to the policies of that domain. Policies can cover such that domain, which cover concerns such as these:
things as:
o Reliability * Reliability
o Access control * Access control
o Accountability * Accountability
o Content evaluation and modification * Content evaluation and modification
They can be implemented in different functional components, according These policies can be implemented in different functional components,
to the needs of the ADMD. For example see [RFC5068]. according to the needs of the ADMD. For example, see [RFC5068].
User, Edge and Transit services can be offered by providers that Consumer, Edge, and Transit services can be offered by providers that
operate component services or sets of services. Further it is operate component services or sets of services. Further, it is
possible for one ADMD to host services for other ADMDs. possible for one ADMD to host services for other ADMDs.
Common ADMD examples are -- These are common examples of ADMDs:
Enterprise Service Providers: Enterprise Service Providers:
Operating an organization's internal data and/or mail services. These ADMDs operate the internal data and/or the mail services
within an organization.
Internet Service Providers: Internet Service Providers (ISP):
Operating underlying data communication services that, in turn, These ADMDs operate the underlying data communication services,
are used by one or more Relays and Users. It is not which are used by one or more Relay and User. ISPs are not
necessarily their job to perform email functions, but they can, responsible for performing email functions, but they can
instead, provide an environment in which those functions can be provide an environment in which those functions can be
performed. performed.
Mail Service Providers: Mail Service Providers:
Operating email services, such as for end-users, or mailing These ADMDs operate email services, such as for consumers or
lists. client companies.
Operational pragmatics often dictate that providers be involved in Practical operational concerns demand that providers be involved in
detailed administration and enforcement issues, to help ensure the administration and enforcement issues. This involvement can extend
health of the overall Internet Mail Service. This can include to operators of lower-level packet services.
operators of lower-level packet services.
3. Identities 3. Identities
Internet Mail uses three forms of identity: mailbox, domain name and Internet Mail uses three forms of identity: mailbox, domain name, and
message-id. Each is required to be globally unique. message-ID. Each must be globally unique.
3.1. Mailbox 3.1. Mailbox
"A mailbox sends and receives mail. It is a conceptual entity "A mailbox sends and receives mail. It is a conceptual entity
which does not necessarily pertain to file storage." [RFC2822] which does not necessarily pertain to file storage." [RFC2822]
A mailbox is specified as an Internet Mail address <addr-spec>. It A mailbox is specified as an Internet Mail address <addr-spec>. It
has two distinct parts, divided by an at-sign ("@"). The right-hand has two distinct parts, separated by an at-sign (@). The right side
side is a globally interpreted domain name that is associated with an is a globally interpreted domain name associated with an ADMD.
ADMD. Domain Names are discussed in Section 3.2. Formal Internet Domain names are discussed in Section 3.3. Formal Internet Mail
Mail addressing syntax can support source routes, to indicate the addressing syntax can support source routes, to indicate the path
path through which a message should be sent. Although legal, the use through which a message ought to be sent. The use of source routes
of source routes is not part of the modern Internet Mail service and is not common and has been deprecated in [RFC2821].
it is not discussed further.
The portion to the left of the at-sign contains a string that is The portion to the left of the at-sign contains a string that is
globally opaque and is called the <local-part>. It is to be globally opaque and is called the <local-part>. It is to be
interpreted only by the entity specified by the address's right-hand interpreted only by the entity specified by the address's domain
side domain name. All other entities MUST treat the local-part as a name. Except as noted later in this section all other entities MUST
uninterpreted literal string and MUST preserve all of its original treat the <local-part> as an uninterpreted literal string and MUST
details. As such its public distribution is equivalent to sending a preserve all of its original details. As such its public
Web browser "cookie" that is only interpreted upon being returned to distribution is equivalent to sending a Web browser "cookie" that is
its Author. only interpreted upon being returned to its creator.
3.1.1. Global Standards for Local-Part Some local-part values have been standardized, for contacting
personnel at an organization. These names cover common operations
and business functions. [RFC2142]
It is common for sites to have local structuring conventions for the It is common for sites to have local structuring conventions for the
left-hand side <local-part> of an <addr-spec>. This permits sub- left-hand side <local-part> of an <addr-spec>. This permits sub-
addressing, such as for distinguishing different discussion groups addressing, such as for distinguishing different discussion groups
used by the same participant. However it is worth stressing that used by the same participant. However it is worth stressing that
these conventions are strictly private to the user's organization and these conventions are strictly private to the user's organization and
SHOULD NOT be interpreted by any domain except the one listed in the MUST NOT be interpreted by any domain except the one listed in the
right-hand side of the addr-spec. The exceptions are those right side of the <addr-spec>. The exceptions are those specialized
specialized services conforming to standardized conventions, as noted services that conform to public, standardized conventions, as noted
below. below.
There are a few types of addresses that have an elaboration on basic A few types of addresses elaborate on basic email addressing, with a
email addressing, with a standardized, global schema for the local- standardized, global schema for the <local-part>, Include are
part. These are conventions between authoring systems and Recipient conventions between authoring systems and Gateways. They are
Gateways, and they are invisible to the public email transfer invisible to the public email transfer infrastructure. When an
infrastructure. When an Author is explicitly sending via a Gateway Author is explicitly sending through a Gateway out of the Internet,
out of the Internet, there are coding conventions for the local-part, coding conventions for the <local-part> allow the Author to formulate
so that the Author can formulate instructions for the Gateway. instructions for the Gateway. Standardized examples of such
Standardized examples of this are the telephone numbering formats for conventions are the telephone numbering formats for VPIM [RFC3801],
VPIM [RFC3801], such as "+16137637582@vpim.example.com", and iFax such as:
[RFC3192], such as "FAX=+12027653000/T33S=1387@ifax.example.com".
3.1.2. Scope of Email Address Use +16137637582@vpim.example.com
Email addresses are being used far beyond their original email and iFax [RFC3192], such as:
transfer and delivery role. In practical terms, an email address
FAX=+12027653000/T33S=1387@ifax.example.com
3.2. Scope of Email Address Use
Email addresses are being used far beyond their original role in
email transfer and delivery. In practical terms, an email address
string has become the common identifier for representing online string has become the common identifier for representing online
identity. What is essential, then, is to be clear about the nature identity. Hence, it is essential to be clear about both the nature
and role of an identity string in a particular context and to be and role of an identity string in a particular context and the entity
clear about the entity responsible for setting that string. For responsible for setting that string. For example, see Section 4.1.4,
example, see: Section 4.1.4, Section 4.3.3, Section 5. Section 4.3.3 and Section 5.
3.2. Domain Names 3.3. Domain Names
A domain name is a global reference to an Internet resource, such as A domain name is a global reference to an Internet resource, such as
a host, a service or a network. A domain name usually maps to one or a host, a service, or a network. A domain name usually maps to one
more IP Addresses. Conceptually the name might encompass an entire or more IP Addresses. Conceptually, the name can encompass an
organization, a collection of machines integrated into a homogeneous organization, a collection of machines integrated into a homogeneous
service, or only a single machine. A domain name can be administered service, or a single machine. A domain name can be administered to
to refer to individual users, but this is not common practice. The refer to individual users, but this is not common practice. The name
name is structured as a hierarchical sequence of sub-names, separated is structured as a hierarchical sequence of names, separated by dots
by dots ("."), with the top of the hierarchy being on the right-end (.), with the top of the hierarchy being on the right end of the
of the sequence. Domain names are defined and operated through the sequence. Domain names are defined and operated through the Domain
Domain Name System (DNS) [RFC1034], [RFC1035], [RFC2181]. Name System (DNS) [RFC1034], [RFC1035], [RFC2181].
When not part of a mailbox address, a domain name is used in Internet When not part of a mailbox address, a domain name is used in Internet
Mail to refer to the ADMD or the host that took action upon the Mail to refer to the ADMD or to the host that took action upon the
message, such as providing the administrative scope for a message message, such as providing the administrative scope for a message
identifier, or performing transfer processing. identifier or performing transfer processing.
3.3. Message Identifier 3.4. Message Identifier
There are two standardized tags for identifying messages: Message-ID There are two standardized tags for identifying messages: Message-ID:
and ENVID. and ENVID. A Message-ID: pertains to content, and an ENVID pertains
to transfer.
3.3.1. Message-ID 3.4.1. Message-ID
The Message-ID is a user-level tag, primarily used for threading and Internet Mail standards provide for, at most, a single Message-ID:.
for eliminating duplicates [RFC2822]. Any actor within the The Message-ID: for a single message, which is a user-level tag, has
Originating ADMD can assign the Message-ID. The recipient's ADMD is a variety of uses including threading, aiding identification of
the intended consumer of the Message-ID, although any actor along the duplicates, and DSN tracking. [RFC2822]. The Originator assigns the
transfer path might use it. Internet Mail standards provide for a Message-ID:. The Recipient's ADMD is the intended consumer of the
single Message-ID; however more than one is sometimes assigned. Message-ID:, although any actor along the transfer path can use it.
Like a mailbox address, a Message-ID has two distinct parts, divided Message-ID: MUST be globally unique. Its format is similar to that
by an at-sign ("@"). The right-hand side is globally interpreted and of a mailbox, with two distinct parts, separated by an at-sign (@).
specifies the ADMD or host assigning the identifier. The left-hand Typically, the right side specifies the ADMD or host that assigns the
side contains a string that is globally opaque and serves to uniquely identifier, and the left side contains a string that is globally
identify the message within the domain referenced on the right-hand opaque and serves to uniquely identify the message within the domain
side. The duration of uniqueness for the message identifier is referenced on the right side. The duration of uniqueness for the
undefined. message identifier is undefined.
When a message is revised in any way, the question of whether to When a message is revised in any way, the decision whether to assign
assign a new Message-ID requires a subjective assessment, deciding a new Message-ID: requires a subjective assessment to determine
whether the editorial content has been changed enough to constitute a whether the editorial content has been changed enough to constitute a
new message. [RFC2822] says "a message identifier pertains to new message. [RFC2822] states that "a message identifier pertains to
exactly one instantiation of a particular message; subsequent exactly one instantiation of a particular message; subsequent
revisions to the message each receive new message identifiers." revisions to the message each receive new message identifiers." Yet
However real-world experience dictates some flexibility. An experience suggests that some flexibility is needed. An impossible
impossible test is whether the recipient will consider the new test is whether the recipient will consider the new message to be
message to be equivalent to the old. For most components of Internet equivalent to the old one. For most components of Internet Mail,
Mail, there is no way to predict a specific recipient's preferences there is no way to predict a specific recipient's preferences on this
on this matter. Both creating and failing to create a new Message-ID matter. Both creating and failing to create a new Message-ID: have
have their downsides. their downsides.
The best that can be offered, here, are some guidelines and examples: Here are some guidelines and examples:
* If a message is changed only in terms of form, such as * If a message is changed only in form, such as character-
character-encoding, it clearly is still the same message. encoding, it is still the same message.
* If a message has minor additions to the content, such as a * If a message has minor additions to the content, such as a
mailing list tag at the beginning of the RFC2822.Subject header mailing list tag at the beginning of the RFC2822.Subject header
field, or some mailing list administrative information added to field, or some mailing list administrative information added to
the end of the primary body-part's text, then it probably is the end of the primary body-part text, it is probably the same
still the same message. message.
* If a message has viruses deleted from it, it probably is still * If a message has viruses deleted from it, it is probably the
the same message. same message.
* If a message has offensive words deleted from it, then some * If a message has offensive words deleted from it, some
recipients will consider it the same message, but some will recipients will consider it the same message, but some will
not. not.
* If a message is translated into a different language, then some * If a message is translated into a different language, some
recipients will consider it the same message, but some will recipients will consider it the same message, but some will
not. not.
* If a message is included in a digest of messages, it the digest * If a message is included in a digest of messages, the digest
constitutes a new message. constitutes a new message.
* If a message is forwarded by a recipient, what is forwarded is * If a message is forwarded by a recipient, what is forwarded is
considered to be a new message. a new message.
* If a message is "redirected", such as using RFC2822 * If a message is "redirected", such as using RFC2822 "Resent-*"
"Redirect-*" headers, some recipients will consider it the same header fields, some recipients will consider it the same
message, but some will not. message, but some will not.
The absence of objective, precise criteria for Message-ID re- The absence of both objective, precise criteria for re-generating a
generation, along with the absence of strong protection associated Message-ID: and strong protection associated with the string means
with the string, means that the presence of an ID can permit an that the presence of an ID can permit an assessment that is
assessment that is marginally better than a heuristic, but the ID marginally better than a heuristic, but the ID certainly has no value
certainly has no value on its own for strict formal reference or on its own for strict formal reference or comparison. For that
comparison. Hence Message-ID SHOULD NOT be used for any function reason, the Message-ID: SHOULD NOT be used for any function that has
that has security implications. security implications.
3.3.2. ENVID
The ENVID (envelope identifier) is a tag that is primarily for use 3.4.2. ENVID
within Delivery Status Notifications (DSN), so that the Return
Address (RFC2821.MailFrom) recipient can correlate the DSN with a
particular message [RFC3461]. The ENVID is therefore used from one
message posting, until the directly-resulting message deliveries. It
does not survive re-postings.
The ENVID may also be used for message tracking purposes [RFC3885]. The ENVID (envelope identifier) can be used for message-tracking
purposes [RFC3885] concerning a single posting/delivery transfer.
The ENVID labels a single transit of the MHS by a specific message.
So, the ENVID is used for one message posting, until that message is
delivered. A re-posting of the message, such as by a Mediator, does
not re-use that ENVID, but can use a new one, even though the message
might legitimately retain its original Message-ID:.
The format of an ENVID is free-form. Although its creator might The format of an ENVID is free form. Although its creator might
choose to impose structure on the string, none is imposed by Internet choose to impose structure on the string, none is imposed by Internet
standards. By implication, the scope of the string is defined by the standards. By implication, the scope of the string is defined by the
domain name of the Return Address. domain name of the Return Address.
4. Services and Standards 4. Services and Standards
Internet Mail's architecture distinguishes among six basic types of The Internet Mail architecture comprises six basic types of
functionality, arranged to support a store-and-forward service functionality, which are arranged to support a store-and-forward
architecture. As shown in Figure 5 these types can have multiple service. As shown in Figure 5, each type can have multiple
instances, some of which represent specialized sub-roles. This instances, some of which represent specialized roles. This section
section considers the activities and relationships among these considers the activities and relationships among these components,
components, and the Internet Mail standards that apply to them. and the Internet Mail standards that apply to them.
1. Message
2. Mail User Agent (MUA)
Originating MUA (oMUA)
Receiving MUA (rMUA)
3. Message Submission Agent (MSA)
Author-focussed MSA functions (oMSA)
MHS-focussed MSA functions (hMSA)
4. Message Transfer Agent (MTA)
5. Message Delivery Agent (MDA)
Recipient-focused MDA functions (rMDA) Message
MHS-focussed MDA functions (hMDA) Mail User Agent (MUA)
6. Message Store (MS) Author MUA (aMUA)
1. Author MS (oMS) Recipient MUA (rMUA)
oMS on a remote server (soMS) Message Submission Agent (MSA)
oMS co-located with the oMUA (uoMS) Author-focused MSA functions (aMSA)
2. Recipient MS (rms) MHS-focused MSA functions (hMSA)
rMS on a remote server (srMS) Message Transfer Agent (MTA)
rMS co-located with the rMUA (urMS) Message Delivery Agent (MDA)
This section describes each functional component for Internet Mail, Recipient-focused MDA functions (rMDA)
and the standards-based protocols associated with their operation.
Software implementations of these architectural components often MHS-focused MDA functions (hMDA)
compress them, such as having the same software do MSA, MTA and MDA
functions. However the requirements for each of these components of
the service are becoming more extensive. So their separation is
increasingly common.
NOTE: A discussion about any interesting system architecture is Message Store (MS)
often complicated by confusion between architecture versus
implementation. An architecture defines the conceptual
functions of a service, divided into discrete conceptual
modules. An implementation of that architecture can combine or
separate architectural components, as needed for a particular
operational environment.
A software system that primarily performs message relaying -- Author MS (aMS)
and therefore is an MTA -- might also include MDA
functionality. That same MTA system might be able to interface
with non-Internet email services and therefore qualify as a
Gateway.
It is important not to confuse the engineering decisions made Recipient MS (rMS)
to implement a product, with the architectural abstractions
used to define conceptual functions.
The following figure shows function modules and the standardized This figure shows function modules and the standardized protocols
protocols used between them. Additional protocols and configurations used between them.
are possible. Boxes defined by asterisks (*) represent functions
that often are distributed among two or more systems.
+------+ +-------+ ++========++
............+ oMUA |..............................| Disp | || || +-------+
. +--+-+-+ +-------+ ...........++ aMUA ||<............................+ Disp |
. local,imap}| |{smtp,submission ^ . || || +-------+
. | | +---------+ | . ++=+==+===++ ^
. ******* | | .......................| Returns | | . local,imap}| |{smtp,submission .
. * oMS *<-----+ | . +---------+ | . +-----+ | | +--------+ .
. ******* | . ***************** ^ | . | aMS |<---+ | ........................>| Return | .
. +------V-.---*------------+ * | | . +-----+ | . +--------+ .
. MSA | +-------+ * +------+ | * | | . | . ***************** ^ .
. | | oMSA +--O-->| hMSA | | * | | . +-----V-.----*------------+ * . .
. | +-------+ * +--+---+ | * | | . MSA | +-------+ * +------+ | * . .
. +------------*------+-----+ * | | . | | aMSA +-(S)->| hMSA | | * . .
//==========\\ * V {smtp * | | . | +-------+ * +--+---+ | * . .
|| MESSAGE || * +------+ * //===+===\\ | V +------------*------+-----+ * . .
||----------|| MHS * | MTA | * || dsn || | //==========\\ * V {smtp * . .
|| Envelope || * +--+---+ * \\=======// | || MESSAGE || * +------+ * //===+===\\ .
|| SMTP || * V {smtp * ^ ^ | ||----------|| MHS * | MTA | * || dsn || .
|| Content || * +------+ * | | //==+==\\ || Envelope || * +--+---+ * \\=======// .
|| RFC2822 || * | MTA +----*-----+ | || mdn || || SMTP || * V {smtp * ^ ^ .
|| MIME || * +--+---+ * | \\=====// || Content || * +------+ * . . //==+==\\
\\==========// * smtp}| {local * | | || RFC2822 || * | MTA +....*...... . || mdn ||
. MDA * | {lmtp * | | || MIME || * +--+---+ * . \\=====//
. +------------+------V-----+ * | | \\==========// * smtp}| {local * . ^
. | +------+ * +------+ | * | | . MDA * | {lmtp * . .
. | | | * | | +--*---------+ | . +----------------+------V-----+ * . .
. | | rMDA |<--O---+ hMDA | | * | . | +----------+ * +------+ | * . .
. | | | * | | |<-*-------+ | . | | | * | | +..*.......... .
. | +-+----+ * +------+ | * | | . | | rMDA |<-(D)--+ hMDA | | * .
. +---+--+-----*------------+ * | | . | | | * | | |<.*........ .
. | | ***************** | | . | +-+------+-+ * +------+ | * . .
. pop} +--+ +---+ | | . +------+---------*------------+ * . .
. imap} | | {local | | . | ***************** . .
. ******************V******** | | . V{smtp,imap,pop,local . .
. * | +------+ * rMS //===+===\\ | . +-----+ //===+===\\ .
. * | | srMS | * || sieve || | . | rMS | || sieve || .
. * V +--+-+-+ * \\=======// | . +--+--+ \\=======// .
. * +------+ pop} | | * ^ | . |{imap,pop,local ^ .
. * | urMS |<-------+ | * | | . V . .
. * +--+---+ imap} | * | | . ++==========++ . .
. *************************** | | . || || . .
. local}| +------+ |{pop,imap | | .......>|| rMUA ++........................... .
. +->| |<------+ | | || ++...................................
...........>| rMUA +---------------------------+ | ++==========++
| +-----------------------------------+
+------+
Figure 5: Protocols and Services Figure 5: Protocols and Services
4.1. Message Data 4.1. Message Data
The purpose of the Mail Handling Service (MHS) is to exchange a The purpose of the Mail Handling Service (MHS) is to exchange a
message object among participants [RFC2822], [RFC0822]. Hence all of message object among participants [RFC2822], [RFC0822]. All of its
its underlying mechanisms are merely in the service of getting that underlying mechanisms serve to deliver that message from its Author
message from its Author to its Recipients. A message can be to its Recipients. A message can be explicitly labeled as to its
explicitly labeled as to its nature [RFC3458]. nature [RFC3458].
A message comprises a transit handling envelope and the message A message comprises a transit-handling envelope and the message
content. The envelope contains information used by the MHS. The content. The envelope contains information used by the MHS. The
content is divided into a structured header and the body. The header content is divided into a structured header and the body. The header
comprises transit trace information and end-user structured fields. comprises transit handling trace information and structured fields
The body may be unstructured simple lines of text, or it may be a that are part of the Author's message content. The body can be
MIME tree of multi-media subordinate objects, called body-parts, or unstructured lines of text or a tree of multi-media subordinate
attachments [RFC2045], [RFC2046], [RFC2047], [RFC4288], [RFC4289], objects, called "body-parts" or attachments [RFC2045], [RFC2046],
[RFC2049]. [RFC2047], [RFC4288], [RFC4289], [RFC2049].
In addition, Internet Mail has a few conventions for special control In addition, Internet Mail has a few conventions for special control
data -- data, notably:
Delivery Status Notification (DSN): Delivery Status Notification (DSN):
A Delivery Status Notification (DSN) is a message that can be A Delivery Status Notification (DSN) is a message that can be
generated by the MHS (MSA, MTA or MDA) and sent to the generated by the MHS (MSA, MTA, or MDA) and sent to the
RFC2821.MailFrom address. The mailbox for this is shown as RFC2821.MailFrom address. An MDA and MTA are shown as sources
Returns in Figure 5. DSNs provide information about message of DSNs in Figure 5, and the destination is shown as Returns.
transit, such as transmission errors or successful delivery DSNs provide information about message transit, such as
[RFC3461]. transfer errors or successful delivery. [RFC3461]
Message Disposition Notification (MDN): Message Disposition Notification (MDN):
A Message Disposition Notification (MDN) is a message that A Message Disposition Notification (MDN) is a message that
provides information about user-level, Recipient-side message provides information about post-delivery processing, such as
processing, such as indicating that the message has been indicating that the message has been displayed [RFC3798] or the
displayed [RFC3798] or the form of content that can be form of content that can be supported [RFC3297]. It can be
supported [RFC3297]. It can be generated by an rMUA and is generated by an rMUA and is sent to the Disposition-
sent to the Disposition-Notification-To address(es). The Notification-To addresses. The mailbox for this is shown as
mailbox for this is shown as Disp in Figure 5. Disp in Figure 5.
Message Filtering (SIEVE): Message Filtering (SIEVE):
SIEVE is a scripting language that permits specifying Sieve is a scripting language used to specify conditions for
conditions for differential handling of mail, typically at the differential handling of mail, typically at the time of
time of delivery [RFC3028]. It can be conveyed in a variety of delivery [RFC5228]. Scripts can be conveyed in a variety of
ways, as a MIME part. Figure 5 shows a Sieve specification ways, as a MIME part. Figure 5 shows a Sieve script going
going from the rMUA to the MDA. However filtering can be done from the rMUA to the MDA. However, filtering can be done at
at many different points along the transit path and any one or many different points along the transit path, and any one or
more of them might be subject to Sieve directives, especially more of them might be subject to Sieve directives, especially
within a single ADMD. Hence the Figure shows only one within a single ADMD. the Figure 5 shows only one relationship,
relationship, for (relative) simplicity. for (relative) simplicity.
4.1.1. Envelope 4.1.1. Envelope
Internet Mail has a fragmented framework for transit-related Internet Mail has a fragmented framework for transit-related handling
"handling" information. Information that is directly used by the MHS information. Information that is used directly by the MHS is called
is called the "envelope". It directs handling activities by the the "envelope." It directs handling activities by the transfer
transfer service as is carried in transfer service commands. That service and is carried in transfer service commands. That is, the
is, the envelope exists in the transfer protocol SMTP [RFC2821]. envelope exists in the transfer protocol SMTP. [RFC2821]
Trace information records handling activity and is recorded in the Trace information, such as RFC2822.Received, is recorded in the
message Header. [RFC2822] message header and is not subsequently altered. [RFC2822]
4.1.2. Header Fields 4.1.2. Header Fields
Header fields are attribute name/value pairs covering an extensible Header fields are attribute name/value pairs that cover an extensible
range of email service, user content and user transaction meta- range of email service parameters, structured user content, and user
information. The core set of header fields is defined in [RFC2822], transaction meta-information. The core set of header fields is
[RFC0822]. It is common to extend this set, for different defined in [RFC2822], [RFC0822]. It is common practice to extend
applications. Procedures for registering header fields are defined this set for different applications. Procedures for registering
in [RFC4021]. An extensive set of existing header field header fields are defined in [RFC3864]. An extensive set of existing
registrations is provided in [RFC3864]. header field registrations is provided in [RFC4021].
One danger with placing additional information in header fields is One danger of placing additional information in header fields is that
that Gateways often alter or delete them. Gateways often alter or delete them.
4.1.3. Body 4.1.3. Body
The body of a message might simply be lines of ASCII text or it might The body of a message might be lines of ASCII text or a
be hierarchically structured into a composition of multi-media body- hierarchically structured composition of multi-media body-part
part attachments, using MIME [RFC2045], [RFC2046], [RFC2047], attachments, using MIME. [RFC2045], [RFC2046], [RFC2047], [RFC4288],
[RFC4288], [RFC2049]. MIME structures each body-part into a [RFC2049]
recursive set of MIME header field meta-data and MIME Content
sections.
4.1.4. Identity References in a Message 4.1.4. Identity References in a Message
For a message in transit, the core uses of identifiers combine into: Table 1 lists the core identifiers present in a message during
transit.
+-----------------------+----------------+---------------------+
| Layer | Field | Set By |
+-----------------------+----------------+---------------------+
| Message Body | MIME Header | Author |
| Message header fields | From | Author |
| | Sender | Source |
| | Reply-To | Author |
| | To, CC, BCC | Author |
| | Message-ID | Source |
| | Received | Source, Relay, Dest |
| | Return-Path | MDA, from MailFrom |
| | Resent-* | Mediator |
| | List-Id | Mediator Author |
| | List-* | Mediator Author |
| SMTP | HELO/EHLO | Latest Relay Client |
| | ENVID | Source |
| | MailFrom | Source |
| | RcptTo | Author |
| IP | Source Address | Latest Relay Client |
+-----------------------+----------------+---------------------+
Layered Identities +----------------------+----------------+---------------------------+
| Layer | Field | Set By |
+----------------------+----------------+---------------------------+
| Message Body | MIME Header | Author |
| Message header | From: | Author |
| fields | | |
| | Sender: | Originator |
| | Reply-To: | Author |
| | To:, CC:, BCC: | Author |
| | Message-ID: | Originator |
| | Received: | Originator, Relay, |
| | | Receiver |
| | Return-Path: | MDA, from MailFrom |
| | Resent-*: | Mediator |
| | List-Id: | Mediator |
| | List-*: | Mediator |
| SMTP | HELO/EHLO | Latest Relay Client |
| | ENVID | Originator |
| | MailFrom | Originator |
| | RcptTo | Author |
| | ORCPT | Author |
| IP | Source Address | Latest Relay Client |
+----------------------+----------------+---------------------------+
The most common address-related fields are: Table 1: Layered Identities
RFC2822.From: Set by - Author These are the most common address-related fields:
Names and addresses for author(s) of the message content are RFC2822.From: Set by - Author
listed in the From: field.
RFC2822.Reply-To: Set by - Author Names and addresses for authors of the message content are
listed in the From: field.
If a message Recipient sends a reply message that would otherwise RFC2822.Reply-To: Set by - Author
use the RFC2822.From field address(es) that are contained in the
original message, then they are instead to use the address(es) in
the RFC2822.Reply-To field. In other words this field is a direct
override of the From: field, for responses from Recipients.
RFC2822.Sender: Set by - Source If a Recipient sends a reply message that would otherwise use
the RFC2822.From field addresses in the original message, the
addresses in the RFC2822.Reply-To field are used instead. In
other words, this field overrides the From: field for responses
from Recipients.
This specifies the address responsible for submitting the message RFC2822.Sender: Set by - Originator
into the transfer service. For efficiency this field can be This field specifies the address responsible for submitting the
omitted if it contains the same address as RFC2822.From. However message to the transfer service. This field can be omitted if
this does not mean there is no Sender specified. Rather it means it contains the same address as RFC2822.From. However,
that that header field is virtual and that the address in the omitting this field does not mean that no Sender is specified;
From: field MUST be used. it means that that header field is virtual and that the address
in the From: field MUST be used.
Specification of the notifications Return addresses -- contained Specification of the notifications Return addresses, which are
in RFC2821.MailFrom -- is made by the RFC2822.Sender. Typically contained in RFC2821.MailFrom, is made by the RFC2822.Sender.
the Return address is the same as the Sender address. However Typically the Return address is the same as the Sender address.
some usage scenarios require it to be different. However, some usage scenarios require it to be different.
RFC2822.To/.CC: Set by - Author RFC2822.To/.CC: Set by - Author
These specify MUA Recipient addresses. However some or all of the These fields specify MUA Recipient addresses. However, some or
addresses in these fields might not be present in the all of the addresses in these fields might not be present in
RFC2821.RcptTo commands. the RFC2821.RcptTo commands.
The distinction between To and CC is subjective. Generally a To The distinction between To and CC is subjective. Generally, a
addressee is considered primary and is expected to take action on To addressee is considered primary and is expected to take
the message. A CC addressee typically receives a copy only for action on the message. A CC addressee typically receives a
their information. copy as a courtesy.
RFC2822.BCC: Set by - Author RFC2822.BCC: Set by - Author
A message might be copied to an addressee whose participation is A copy of the message might be sent to an addressee whose
not to be disclosed to the RFC2822.To or RFC2822.CC Recipients participation is not to be disclosed to the RFC2822.To or
and, usually, not to the other BCC Recipients. The BCC header RFC2822.CC Recipients and, usually, not to the other BCC
field indicates a message copy to such a Recipient. Recipients. The BCC: header field indicates a message copy to
such a Recipient. Use of this field is discussed in [RFC2822].
Typically, the field lists no addresses or only lists the single RFC2821.HELO/.EHLO: Set by - Originator, MSA, MTA
address of the Recipient receiving this copy. An MUA will
typically make separate postings for TO and CC Recipients, versus
BCC Recipients. The former will see no indication that any BCCs
were sent, whereas the latter have a BCC field present. It might
be empty, contain a comment, or contain one or more BCC addresses,
depending upon the preferences of the Author.
RFC2821.HELO/.EHLO: Set by - Source Any SMTP client -- including Originator, MSA, or MTA -- can
specify its hosting domain identity for the SMTP HELO or EHLO
command operation.
The MSA can specify its hosting domain identity for the SMTP HELO RFC3461.ENVID: Set by - Originator
or EHLO command operation.
RFC3461.ENVID: Set by - Source The MSA can specify an opaque string, to be included in a DSN,
as a means of assisting the Return address recipient in
identifying the message that produced a DSN or message
tracking.
The MSA can specify an opaque string, to be included in a DSN, as RFC2821.MailFrom: Set by - Originator
a means of assisting the Return address recipient in identifying This field is an end-to-end string that specifies an email
the message that produced a DSN, or message tracking. address for receiving return control information, such as
returned messages. The name of this field is misleading,
because it is not required to specify either the Author or the
actor responsible for submitting the message. Rather, the
actor responsible for submission specifies the RFC2821.MailFrom
address. Ultimately, the simple basis for deciding which
address needs to be in the RFC2821.MailFrom field is to
determine which address must be informed about transfer-level
problems (and possibly successes.)
RFC2821.MailFrom: Set by - Source RFC2821.RcptTo: Set by - Author, Final MTA, MDA.
This is an end-to-end string that specifies an email address for This field specifies the MUA mailbox address of a Recipient.
receiving return control information, such as "bounces". The name The string might not be visible in the message content header.
of this field is misleading, because it is not required to specify For example, the message destination address header fields,
either the author or the Actor responsible for submitting the such as RFC2822.To, might specify a mailing list mailbox, while
message. Rather, the Actor responsible for submission specifies the RFC2821.RcptTo address specifies a member of that list.
the RFC2821.MailFrom address. Ultimately the simple basis for
deciding what address needs to be in the RFC2821.MailFrom is to
determine what address needs to be informed about transmission-
level problems (and, possibly, successes.)
RFC2821.RcptTo: Set by - Author RFC2821.ORCPT: Set by - Author.
This specifies the MUA mailbox address of a recipient. The string This is an optional parameter to the RCPT command, indicating
might not be visible in the message content header. For example, the original address to which the current RCPT TO address
the message destination address header fields, such as RFC2822.To, corresponds, after a mapping was performed during transit. An
might specify a mailing list mailbox, while the RFC2821.RcptTo ORCPT is the only reliable way to correlate a DSN from a multi-
address specifies a member of that list. recipient message transfer with the intended recipient.
RFC2821.Received: Set by - Source, Relay, Mediator, Dest RFC2821.Received: Set by - Originator, Relay, Mediator, Dest
This indicates trace information, including originating host, This field contains trace information, including originating
relays, Mediators, and MSA host domain names and/or IP Addresses. host, Relays, Mediators, and MSA host domain names and/or IP
Addresses.
RFC2821.Return-Path: Set by - Source RFC2821.Return-Path: Set by - Originator
The MDA records the RFC2821.MailFrom address into the The MDA records the RFC2821.MailFrom address into the
RFC2822.Return-Path field. RFC2822.Return-Path field.
RFC2919.List-Id: Set by - Mediator Author RFC2919.List-Id: Set by - Mediator Author
This provides a globally unique mailing list naming framework that This field provides a globally unique mailing list naming
is independent of particular hosts. [RFC2919] framework that is independent of particular hosts. [RFC2919]
The identifier is in the form of a domain name; however the string The identifier is in the form of a domain name; however, the
usually is constructed by combining the two parts of an email string usually is constructed by combining the two parts of an
address and the result rarely is a true domain name, listed in the email address. The result is rarely a true domain name, listed
domain name service -- although it can be. in the domain name service, although it can be.
RFC2369.List-*: Set by - Mediator Author RFC2369.List-*: Set by - Mediator Author
[RFC2369] defines a collection of message header fields for use by [RFC2369] defines a collection of message header fields for use
mailing lists. In effect they supply list-specific parameters for by mailing lists. In effect, they supply list-specific
common mailing list user operations. The identifiers for these parameters for common mailing list user operations. The
operations are for the list, itself, and the user-as-subscriber identifiers for these operations are for the list itself and
[RFC2369]. the user-as-subscriber. [RFC2369]
RFC0791.SourceAddr: Set by - The Client SMTP sending host RFC0791.SourceAddr: Set by - The Client SMTP sending host
immediately preceding the current receiving SMTP server. immediately preceding the current receiving SMTP server.
[RFC0791] defines the basic unit of data transfer for the [RFC0791] defines the basic unit of data transfer for the
Internet, the IP Datagram. It contains a "Source Address" field Internet: the IP Datagram. It contains a Source Address field
that specifies the IP Address for the host (interface) from which that specifies the IP Address for the host (interface) from
the datagram was sent. This information is set and provided by which the datagram was sent. This information is set and
the IP layer, and is therefore independent of mail-level provided by the IP layer, which makes it independent of mail-
mechanisms. As such, it is often taken to be authoritative, level mechanisms. As such, it is often taken to be
although it is possible to provide false addresses. authoritative, although it is possible to provide false
addresses.
4.2. User-Level Services 4.2. User-Level Services
Interactions at the user level entail protocol exchanges, distinct Interactions at the user level entail protocol exchanges, distinct
from those that occur at lower layers of the Internet Mail from those that occur at lower layers of the Internet Mail MHS
architecture, which is above the Internet Transport layer. Because architecture that is, in turn, above the Internet Transport layer.
the motivation for email, and much of its use, is for interaction Because the motivation for email, and much of its use, is for
among humans, the nature and details of these protocol exchanges interaction among people, the nature and details of these protocol
often are determined by the needs of human and group communication. exchanges often are determined by the needs of interpersonal and
In terms of efforts to specify behaviors, one effect of this is to group communication. To accommodate the idiosyncratic behavior
require subjective guidelines, rather than strict rules, for some inherent in such communication, only subjective guidelines, rather
aspects of system behavior. Mailing Lists provide particularly than strict rules, can be offered for some aspects of system
salient examples of this. behavior. Mailing Lists provide particularly salient examples.
4.2.1. Mail User Agent (MUA) 4.2.1. Mail User Agent (MUA)
A Mail User Agent (MUA) works on behalf of end-users and end-user A Mail User Agent (MUA) works on behalf of User actors and User
applications. It is their "representative" within the email service. applications. It is their representative within the email service.
The Origination-side MUA (oMUA) creates a message and performs The Author MUA (aMUA) creates a message and performs initial
initial "submission" into the transfer infrastructure, via a Mail submission into the transfer infrastructure via a Mail Submission
Submission Agent (MSA). It can also perform any creation- and Agent (MSA). It can also perform any creation- and posting-time
posting-time archival in its Message Store (oMS). An MUA's oMS will archival in its Message Store (aMS). An MUA aMS can organize
typically include a folder for messages under development (Drafts), a messages in many different ways. A common model uses aggregations,
folder for messages waiting to be sent (Queued or Unsent) and a called "folders". This model allows a folder for messages under
folder for messages that have been successfully posted for development (Drafts), a folder for messages waiting to be sent
transmission (Sent). (Queued or Unsent), and a folder for messages that have been
successfully posted for transfer (Sent). But none of these folders
is required. For example, IMAP allows drafts to be stored in any
folder; so no Drafts folder is present.
The Recipient-side MUA (rMUA) works on behalf of the end-user The Recipient MUA (rMUA) works on behalf of the Recipient to process
Recipient to process received mail. This includes generating user- received mail. This processing includes generating user-level
level return control messages, displaying and disposing of the disposition control messages, displaying and disposing of the
received message, and closing or expanding the user communication received message, and closing or expanding the user communication
loop, by initiating replies and forwarding new messages. loop by initiating replies and forwarding new messages.
NOTE: Although not shown in Figure 5, an MUA can, itself, have a NOTE: Although not shown in Figure 5, an MUA itself can have a
distributed implementation, such as a "thin" user interface distributed implementation, such as a "thin" user interface
module on a limited end-user device, with the bulk of the MUA module on a constrained device such as a smartphone, with most
functionality operated remotely on a more capable server. An of the MUA functionality running remotely on a more capable
example of such an architecture might use IMAP [RFC3501] for server. An example of such an architecture might use IMAP
most of the interactions between an MUA client and an MUA [RFC3501] for most of the interactions between an MUA client
server. A standardized approach for such scenarios is defined and an MUA server. An approach for such scenarios is defined
by [RFC4550]. by [RFC4550].
A Mediator is special class of MUA. It performs message re-posting, A Mediator is special class of MUA. It performs message re-posting,
as discussed in Section 2.1. as discussed in Section 2.1.
Identity fields relevant to a typical end-user MUA include: An MUA can be automated, on behalf of a user who is not present at
the time the MUA is active. One example is a bulk sending service
that has a timed-initiation feature. These services are not to be
confused with a mailing list Mediator, since there is no incoming
message triggering the activity of the automated service.
RFC2822.From A popular and problematic MUA is an automatic responder, such as one
that sends out-of-office notices. This behavior might be confused
with that of a Mediator, but this MUA is generating a new message.
Automatic responders can annoy users of mailing lists unless they
follow [RFC3834]. ****** The recommendations in RFC 3834 are an
important consequence of the addressing architecture of Internet Mail
so they do help illustrate the architecture. *****
RFC2822.Reply-To These identity fields are relevant to a typical MUA:
RFC2822.Sender RFC2822.From
RFC2822.To, RFC2822.CC RFC2822.Reply-To
RFC2822.BCC RFC2822.Sender
RFC2822.To, RFC2822.CC
RFC2822.BCC
4.2.2. Message Store (MS) 4.2.2. Message Store (MS)
An MUA can employ a long-term Message Store (MS). Figure 5 depicts An MUA can employ a long-term Message Store (MS). Figure 5 depicts
an Origination-side MS (oMS) and a Recipient-side MS (rMS). There is an Author's MS (aMS) and a Recipient's MS (rMS). An MS can be
a rich set of choices for configuring a store, because any MS may located on a remote server or on the same machine as the MUA.
comprise a distributed set of component stores. In Figure 5, the rMS
demonstrates this by showing an rMS that is located on a remote
server (srMS) and an rMS that is on the same machine as the MUA
(urMS). The relationship between two message stores, themselves, can
vary.
As discussed in [RFC1733] the operational relationship among MSs can
be --
Online: Only a remote MS is used, with messages being accessible
only when the MUA is attached to the MS, and the MUA repeatedly
fetches all or part of a message, from one session to the next.
Offline: The MS is local to the user, and messages are
completely moved from any remote store, rather than (also)
being retained there.
Disconnected: An rMS and a uMS are kept synchronized, for all or An MS acquires messages from an MDA either by a local mechanism or by
part of their contents, while there is a connection between using POP or IMAP. The MUA accesses the MS either by a local
them. While they are disconnected, mail can continue to arrive mechanism or by using POP or IMAP. Using POP for message access,
at the rMS and the user may continue to make changes to the rather than bulk transfer, is rare, awkward, and largely non-
uMS. Upon reconnection, the two stores are re-synchronized. standard.
4.3. MHS-Level Services 4.3. MHS-Level Services
4.3.1. Mail Submission Agent (MSA) 4.3.1. Mail Submission Agent (MSA)
A Mail Submission Agent (MSA) accepts the message submission from the A Mail Submission Agent (MSA) accepts the message submitted by the
oMUA and enforces the policies of the hosting ADMD and the aMUA and enforces the policies of the hosting ADMD and the
requirements of Internet standards. An MSA represents an unusual requirements of Internet standards. An MSA represents an unusual
functional dichotomy. A portion of its task is to represent MUA functional dichotomy. It represents the interests of the Author
(uMSA) interests during message posting, to facilitate posting (aMUA) during message posting, to facilitate posting success; it also
success, and another portion is to represent MHS (hMSA) interests. represents the interests of the MHS. In the architecture, these
This is best modeled, as shown in Figure 5, with two sub-components, responsibilities are modeled, as shown in Figure 5, by dividing the
one for the oMUA (oMSA) and one for the MHS (hMSA) MSA into two sub-components, aMSA and hMSA, respectively. Transfer
of responsibility for a single message, from an Author's environment
to the MHS, is called "posting". In Figure 5 it is marked as the (S)
transition, within the MSA.
The hMSA's function is to take transit responsibility for a message The hMSA takes transit responsibility for a message that conforms to
that conforms to the relevant Internet standards and to local site the relevant Internet standards and to local site policies. It
policies. It rejects messages that are not in conformance. The rejects messages that are not in conformance. The MSA performs final
oMSA's is to perform final message preparation for submission and to message preparation for submission and effects the transfer of
effect the transfer of responsibility to the MHS, via the hMSA. The responsibility to the MHS, via the hMSA. The amount of preparation
amount of preparation will depend upon the local implementations. depends upon the local implementations. Examples of oMSA tasks
Examples of oMSA tasks could be to add header fields, such as Date: include adding header fields, such as Date: and Message-ID:, and
and Message-ID, to modify portions of the message from local modifying portions of the message from local notations to Internet
notations to Internet standards, such as expanding an address to its standards, such as expanding an address to its formal RFC2822
formal RFC2822 representation. representation.
Historically, standards-based MUA/MSA interactions have used SMTP Historically, standards-based MUA/MSA message postings have used
[RFC2821]. A recent alternative is SUBMISSION [RFC4409]. Although SMTP. [RFC2821] The standard currently preferred is SUBMISSION.
SUBMISSION derives from SMTP, it uses a separate TCP port and imposes [RFC4409] Although SUBMISSION derives from SMTP, it uses a separate
distinct requirements, such as access authorization. TCP port and imposes distinct requirements, such as access
authorization.
Identities relevant to the MSA include: These identities are relevant to the MSA:
RFC2821.HELO/.EHLO RFC2821.HELO/.EHLO
RFC3461.ENVID
RFC2821.MailFrom RFC3461.ENVID
RFC2821.RcptTo RFC2821.MailFrom
RFC2821.Received RFC2821.RcptTo
RFC2821.Received
RFC0791.SourceAddr
4.3.2. Mail Transfer Agent (MTA) 4.3.2. Mail Transfer Agent (MTA)
A Mail Transfer Agent (MTA) relays mail for one application-level A Mail Transfer Agent (MTA) relays mail for one application-level
"hop". It is like a packet-switch or IP router in that its job is to "hop." It is like a packet-switch or IP router in that its job is to
make routing assessments and to move the message closer to the make routing assessments and to move the message closer to the
Recipient(s). Relaying is performed by a sequence of MTAs, until the Recipients. Of course, email objects are typically much larger than
message reaches a destination MDA. Hence an MTA implements both
client and server MTA functionality. It does not make changes to
addresses in the envelope or reformulate the editorial content.
Hence a change in data form, such as to the MIME Content-Transfer-
Encoding, is within the purview of an MTA, whereas removal or
replacement of body content is not. Also it can add trace
information. Of course email objects are typically much larger than
the payload of a packet or datagram, and the end-to-end latencies are the payload of a packet or datagram, and the end-to-end latencies are
typically much higher. typically much higher. Relaying is performed by a sequence of MTAs,
until the message reaches a destination MDA. Hence, an MTA
implements both client and server MTA functionality; it does not
change addresses in the envelope or reformulate the editorial
content. A change in data form, such as to MIME Content-Transfer-
Encoding, is within the purview of an MTA, but removal or replacement
of body content is not. An MTA also adds trace information.
[RFC2505]
Internet Mail primarily uses SMTP [RFC2821], [RFC0821] to effect NOTE: Within a destination ADMD, email relaying modules can
make a variety of changes to the message, prior to delivery.
In such cases, these modules are acting as Gateways, rather
than MTAs.
Internet Mail uses SMTP [RFC2821], [RFC0821] primarily to effect
point-to-point transfers between peer MTAs. Other transfer point-to-point transfers between peer MTAs. Other transfer
mechanisms include Batch SMTP [RFC2442] and ODMR [RFC2645]. As with mechanisms include Batch SMTP [RFC2442] and ODMR [RFC2645]. As with
most network layer mechanisms, Internet Mail's SMTP supports a basic most network layer mechanisms, the Internet Mail SMTP supports a
level of reliability, by virtue of providing for retransmission after basic level of reliability, by virtue of providing for retransmission
a temporary transfer failure. Contrary to typical packet switches after a temporary transfer failure. Unlike typical packet switches
(and Instant Messaging services) Internet Mail MTAs typically store (and Instant Messaging services), Internet Mail MTAs are expected to
messages in a manner that allows recovery across service store messages in a manner that allows recovery across service
interruptions, such as host system shutdown. However the degree of interruptions, such as host system shutdown. The degree of such
such robustness and persistence by an MTA can be highly variable. robustness and persistence by an MTA can vary. The base SMTP
specification provides a framework for protocol response codes. An
extensible enhancement to this framework is defined in [RFC5248]
The primary "routing" mechanism for Internet Mail is the DNS MX The primary routing mechanism for Internet Mail is the DNS MX record
record [RFC1035], which specifies a host through which the queried [RFC1035], which specifies an MTA through which the queried domain
domain can be reached. This presumes a public -- or at least a can be reached. This mechanism presumes a public, or at least a
common -- backbone that permits any attached host to connect to any common, backbone that permits any attached MTA to connect to any
other. other.
Identities relevant to the MTA include: MTAs can perform any of these well-established roles:
Boundary MTA: An MTA that is part of an ADMD and interacts with
MTAs in other ADMDs. This is also called a Border MTA. There
can be different Boundary MTAs, according to the direction of
mail-flow.
Outbound MTA: An MTA that relays messages to other ADMDs.
Inbound MTA: An MTA that receives inbound SMTP messages from
MTA Relays in other ADMDs, for example, an MTA running on
the host listed as the target of an MX record.
Final MTA: The MTA that transfers a message to the MDA.
These identities are relevant to the MTA:
RFC2821.HELO/.EHLO RFC2821.HELO/.EHLO
RFC3461.ENVID RFC3461.ENVID
RFC2821.MailFrom RFC2821.MailFrom
RFC2821.RcptTo RFC2821.RcptTo
RFC2822.Received Set by - Relay Server RFC2822.Received: Set by - Relay Server
RFC0791.SourceAddr
4.3.3. Mail Delivery Agent (MDA) 4.3.3. Mail Delivery Agent (MDA)
A Mail Delivery Agent (MDA) delivers email to the Recipient's A transfer of responsibility from the MHS to a Recipient's
mailbox. It can provide distinctive, address-based functionality, environment (mailbox) is called "delivery." In the architecture, as
made possible by its detailed knowledge of the properties of the depicted in Figure 5, delivery takes place within a Mail Delivery
destination address. This knowledge might also be present elsewhere Agent (MDA) and is shown as the (D) transition from the MHS-oriented
in the Recipient's ADMD, such as at an organizational border MDA component (hMDA) to the Recipient-oriented MDA component (rMDA).
(Boundary) Relay. However it is required for the MDA, if only
because the MDA must know where to deliver the message.
As with an MSA, an MDA serves two roles, as depicted in Figure 5. An MDA can provide distinctive, address-based functionality, made
Formal transfer of responsibility, called "delivery" is effected possible by its detailed information about the properties of the
between the two components that embody these roles. The MHS portion destination address. This information might also be present
(hMDA) primarily functions as a server SMTP engine. A common elsewhere in the Recipient's ADMD, such as at an organizational
additional role is to re-direct the message to an alternative border (Boundary) Relay. However, it is required for the MDA, if
address, as specified by the recipient addressee's preferences. The only because the MDA is required to know where to deliver the
job of the recipient portion of the MDA (rMDA) is to perform any message.
delivery-actions are desired by the recipient.
Using Internet protocols, delivery can be effected by a variety of Like an MSA, an MDA serves two roles, as depicted in Figure 5.
standard protocols. When coupled with an internal local mechanism, Formal transfer of responsibility, called "delivery", is effected
SMTP [RFC2821] and LMTP [RFC2033] permit "push" delivery to the between the two components that embody these roles as shows as "(D)"
Recipient system, at the initiative of the upstream email service. in Figure 5. The MHS portion (hMDA) primarily functions as a server
POP [RFC1939] and IMAP [RFC3501] are used for "pull" delivery at the SMTP engine. A common additional role is to re-direct the message to
initiative of the Recipient system. POP and IMAP can also be used an alternative address, as specified by the recipient addressee's
for repeated access to messages on a remote MS. preferences. The job of the recipient portion of the MDA (rMDA) is
to perform any delivery actions that the Recipient specifies.
Identities relevant to the MDA include: Transfer into the MDA is accomplished by a normal MTA transfer
mechanism. Transfer from an MDA to an MS uses an access protocol,
such as POP or IMAP.
RFC2821.Return-Path: Set by - Author Source or Mediator Source NOTE: The term "delivery" can refer to the formal, MHS function
specified here or to the first time a message is displayed to a
Recipient. A simple, practical test for whether the MHS-based
definition applies is whether a DSN can be generated.
These identities are relevant to the MDA:
RFC2821.Return-Path: Set by - Author Originator or Mediator
Originator
The MDA records the RFC2821.MailFrom address into the The MDA records the RFC2821.MailFrom address into the
RFC2822.Return-Path field. RFC2822.Return-Path field.
RFC2822.Received: Set by - MDA server RFC2822.Received: Set by - MDA server
An MDA can record a Received header field to indicate trace An MDA can record a Received: header field to indicate trace
information, including source host and receiving host domain information, including source host and receiving host domain
names and/or IP Addresses. names and/or IP Addresses.
4.4. Transition Modes
From the origination site to the point of delivery, Internet Mail
usually follows a "push" model. That is, the actor that holds the
message initiates transfer to the next venue, typically with SMTP
[RFC2821] or LMTP [RFC2033]. With a "pull" model, the actor that
holds the message waits for the actor in the next venue to initiate a
request for transfer. Standardized mechanisms for pull-based MHS
transfer are ETRN [RFC1985] and ODMR [RFC2645].
After delivery, the Recipient's MUA (or MS) can gain access by having
the message pushed to it or by having the receiver of access pull the
message, such as by using POP [RFC1939] and IMAP [RFC3501].
4.5. Implementation and Operation
A discussion of any interesting system architecture often bogs down
when architecture and implementation are confused. An architecture
defines the conceptual functions of a service, divided into discrete
conceptual modules. An implementation of that architecture can
combine or separate architectural components, as needed for a
particular operational environment. For example, a software system
that primarily performs message relaying is an MTA, yet it might
also include MDA functionality. That same MTA system might be able
to interface with non-Internet email services and thus perform both
as an MTA and as a Gateway.
Similarly, implemented modules might be configured to form
elaborations of the architecture. An interesting example is a
distributed MS. One portion might be a remote server and another
might be local to the MUA. As discussed in [RFC1733], there are
three operational relationships among such MSs:
Online: The MS is remote, and messages are accessible only when
the MUA is attached to the MS so that the MUA will re-fetch all
or part of a message, from one session to the next.
Offline: The MS is local to the user, and messages are
completely moved from any remote store, rather than (also)
being retained there.
Disconnected: An rMS and a uMS are kept synchronized, for all or
part of their contents, while they are connected. When they
are disconnected, mail can arrive at the rMS and the user can
make changes to the uMS. The two stores are re-synchronized
when they are reconnected.
5. Mediators 5. Mediators
Basic email transfer from an Author to the specified Recipients is Basic message transfer from Author to Recipients is accomplished by
accomplished by using an asynchronous, store-and-forward using an asynchronous store-and-forward communication infrastructure
communication infrastructure, in a sequence of independent in a sequence of independent transmissions through some number of
transmissions through some number of MTAs. A very different task is MTAs. A very different task is a sequence of postings and deliveries
a User-level sequence of postings and deliveries, through Mediators. through Mediators. A Mediator forwards a message, through a re-
A Mediator forwards a message, through a re-posting process. The posting process. The Mediator shares some functionality with basic
Mediator does share some functionality with basic MTA relaying, but MTA relaying, but has greater flexibility in both addressing and
it enjoys a degree of freedom with both addressing and content that content than is available to MTAs.
is not available to MTAs.
RFC2821.HELO/.EHLO: Set by - Mediator Source This is the core set of message information that is commonly set by
all types of Mediators:
RFC3461.ENVID Set by - Author Source or Mediator Source RFC2821.HELO/.EHLO: Set by - Mediator Originator
RFC2821.MailFrom: Set by - Author Source or Mediator Source RFC3461.ENVID: Set by - Mediator Originator
RFC2821.RcptTo: Set by - Mediator Author RFC2821.RcptTo: Set by - Mediator Author
RFC2821.Received: Set by - Mediator Dest RFC2821.Received: Set by - Mediator Dest
The salient aspect of a Mediator, that distinguishes it from any The Mediator can record received information, to indicate the
other MUA creating an entirely new message, is that a Mediator delivery to the original address and submission to the alias
preserves the integrity and tone of the original message, including address. The trace of Received: header fields can include
the essential aspects of its origination information. The Mediator everything from original posting, through relaying, to final
might also add commentary. delivery.
Examples of MUA message creation NOT performed by Mediators include The aspect of a Mediator that distinguishes it from any other MUA
-- creating a message is that a Mediator preserves the integrity and
tone of the original message, including the essential aspects of its
origination information. The Mediator might also add commentary.
Examples of MUA messages that a Mediator does not create include:
New message that forwards an existing message: New message that forwards an existing message:
This action rather curiously provides a basic template for a Although this action provides a basic template for a class of
class of Mediators. However for its typical occurrence it is Mediators, its typical occurrence is not, itself, an example of
not itself an example of a Mediator. The new message is viewed a Mediator. The new message is viewed as being from the actor
as being from the Actor doing the forwarding, rather than being that is doing the forwarding, rather than from the original
from the original Author. Author.
A new message encapsulates the original message and is seen as A new message encapsulates the original message and is seen as
strictly "from" the Mediator. The Mediator might add from the new Originator. This Mediator Originator might add
commentary and certainly has the opportunity to modify the commentary and can modify the original message content.
original message content. The forwarded message is therefore
independent of the original message exchange and creates a new Because the forwarded message is a component of the message
message dialogue. However the final Recipient sees the sent by the new Originator, the new message creates a new
contained message as from the original Author. dialogue. However the final Recipient still sees the contained
message as from the original Author.
Reply: Reply:
When a Recipient formulates a response back to the original When a Recipient responds to the Author of a message, the new
message's author, the new message is not typically viewed as message is not typically viewed as a forwarding of the
being a "forwarding" of the original. Its focus is the new original. Its focus is the new content, although it might
content, although it might contain all or part of the material contain all or part of the material from the original message.
in the original message. Therefore the earlier material is The earlier material is merely contextual and secondary. This
merely contextual and secondary. includes automated replies, such as vacation out-of-office
notices, as discussed in Section 4.2.1.
Annotation: Annotation:
The integrity of the original message is usually preserved, but The integrity of the original message is usually preserved, but
one or more comments about the message are added in a manner one or more comments about the message are added in a manner
that distinguishes commentary from original text. The tone of that distinguishes commentary from original text. The primary
the new message is that it is primarily commentary from a new purpose of the new message is to provide commentary from a new
Author, similar to a Reply. Author, similar to a Reply.
The remainder of this section describes common examples of Mediators. The remainder of this section describes common examples of
Mediators.
5.1. Aliasing
Aliasing is a simple re-addressing facility that is available in most 5.1. Alias
MDA implementations. It is performed just before placing a message
into the specified Recipient's mailbox. Instead the message is
submitted back to the transfer service, for delivery to one or more
alternate addresses. Although typically implemented as part of an
MDA, this facility is strictly a Recipient user function. It
resubmits the message, replacing the envelope address, on behalf of
the mailbox address that was listed in the envelope.
What is most distinctive about this forwarding mechanism is how One function of an MDA is to determine the internal location of a
closely it compares to normal MTA store-and-forward Relaying. Its mailbox in order to perform delivery. An Alias is a simple re-
only interesting difference is that it changes the RFC2821.RcptTo addressing facility that provides one or more new Internet Mail
value. Having the change be this small makes it easy to view addresses, rather than a single, internal one; the message continues
aliasing as a part of the lower-level mail relaying activity. through the transfer service, for delivery to one or more alternate
However the small change has a large semantic impact: The designated addresses. Although typically implemented as part of an MDA, this
recipient has chosen a new recipient. Hence that original recipient facility is a Recipient function. It resubmits the message, although
SHOULD become responsible for any handling issues. This change would all handling information except the envelope recipient
be reflected by replacing the message's RFC2821.MailFrom address to (rfc2821.RcptTo) address is retained. In particular, the Return
be one within the scope of the ADMD doing the aliasing. address (rfc2821.MailFrom) is unchanged.
An MDA that is re-posting a message to an alias typically changes What is distinctive about this forwarding mechanism is how closely it
only envelope information: resembles normal MTA store-and-forward relaying. Its only
significant difference is that it changes the RFC2821.RcptTo value.
Because this change is so small, aliasing can be viewed as a part of
the lower-level mail relaying activity. However, this small change
has a large semantic impact: The designated recipient has chosen a
new recipient.
RFC2822.To/.CC/.BCC: Set by - Author NOTE: When the replacement list includes more than one address,
the alias is increasingly likely to have delivery problems.
Any problem reports go to the original Author, not the
administrator of the alias entry. This makes it more difficult
to resolve the problem, because the original Author has no
knowledge of the Alias mechanism.
These retain their original addresses. Alias typically changes only envelope information:
RFC2821.RcptTo: Set by - Mediator Author RFC2822.To/.CC/.BCC: Set by - Author
This field contains an alias address. These fields retain their original addresses.
RFC2821.MailFrom: Set by - Author Source or Mediator Source RFC2821.MailFrom: Set by - Author
The Actor responsible for submission to an alias address will
often retain the original address to receive handling Returns.
The benefit of retaining the original MailFrom value is to The benefit of retaining the original MailFrom value is to
ensure that the origination-side Actor knows that there has ensure that an actor related to the originating ADMD knows
been a delivery problem. On the other hand, the responsibility there has been a delivery problem. On the other hand, the
for the problem usually lies with the Recipient, since the responsibility for handling problems, when transiting from the
Alias mechanism is strictly under the Recipient's control. original recipient mailbox to the alias mailbox usually lies
with that original Recipient, because the Alias mechanism is
RFC2821.Received Set by - Mediator Dest strictly under that Recipient's control. Retaining the
original MailFrom address prevents this.
The Actor can record Received information, to indicate the
delivery to the original address and submission to the alias
address. The trace of Received header fields can therefore
include everything from original posting through final delivery
to a final delivery.
5.2. Re-Sending 5.2. ReSender
Also called Re-Directing, Re-Sending differs from Forwarding by Also called the ReDirector, the ReSender's actions differ from
virtue of having the Mediator "splice" a message's addressing forwarding because the Mediator "splices" a message's addressing
information, to connect the Author of the original message and the information to connect the Author of the original message with the
Recipient of the new message. This permits them to have direct Recipient of the new message. This connection permits them to have
exchange, using their normal MUA Reply functions. Hence the new direct exchange, using their normal MUA Reply functions, while also
Recipient sees the message as being From: the original Author, even recording full reference information about the Recipient who served
if the Mediator adds commentary. as a Mediator. Hence, the new Recipient sees the message as being
from the original Author, even if the Mediator adds commentary.
Identities specified in a resent message include These identities are relevant to a resent message:
RFC2822.From: Set by - original Author RFC2822.From: Set by - original Author
Names and addresses for the original Author of the message
Names and email addresses for the original author(s) of the content are retained. The free-form (display-name) portion of
message content are retained. The free-form (display-name) the address might be modified to provide informal reference to
portion of the address might be modified to provide informal the ReSender.
reference to the Actor responsible for the redirection.
RFC2822.Reply-To: Set by - original Author RFC2822.Reply-To: Set by - original Author
If this field is present in the original message, it is If this field is present in the original message, it is
retained in the Resent message. retained in the resent message.
RFC2822.Sender: Set by - Author Source or Mediator Source. RFC2822.Sender: Set by - Author's Originator or Mediator
Originator.
RFC2822.To/.CC/.BCC: Set by - original Author RFC2822.To/.CC/.BCC: Set by - original Author
These specify the original message Recipients. These fields specify the original message Recipients.
RFC2822.Resent-From: Set by - Mediator Author RFC2822.Resent-From: Set by - Mediator Author
The address of the original Recipient who is redirecting the This address is of the original Recipient who is redirecting
message. Otherwise the same rules apply for the Resent-From: the message. Otherwise, the same rules apply to the Resent-
field as for an original RFC2822.From field. From: field as to an original RFC2822.From field.
RFC2822.Resent-Sender: Set by - Mediator Source RFC2822.Resent-Sender: Set by - Mediator Originator
The address of the Actor responsible for re-submitting the The address of the actor responsible for resubmitting the
message. As with RFC2822.Sender, this field is often omitted message. As with RFC2822.Sender, this field can be omitted
when it would merely contain the same address as when it contains the same address as RFC2822.Resent-From.
RFC2822.Resent-From.
RFC2822.Resent-To/-CC/-BCC: Set by: Mediator Author RFC2822.Resent-To/-CC/-BCC: Set by: Mediator Author
The addresses of the new Recipients who will now be able to The addresses of the new Recipients who are now able to reply
reply to the original author. to the original author.
RFC2821.MailFrom: Set by - Mediator Source RFC2821.MailFrom: Set by - Mediator Originator
The Actor responsible for re-submission (RFC2822.Resent-Sender) The actor responsible for resubmission (RFC2822.Resent-Sender)
is also responsible for specifying the new MailFrom address. is also responsible for specifying the new MailFrom address.
RFC2821.RcptTo: Set by - Mediator Author
This will contain the address of a new Recipient.
RFC2822.Received: Set by - Mediator Dest
When resending a message the submission agent can record a
Received header field, to indicate the transition from original
posting to resubmission.
5.3. Mailing Lists 5.3. Mailing Lists
Mailing lists have explicit email addresses and they re-post messages A Mailing List receives messages as an explicit addressee and then
to a list of subscribed members. The Mailing List Actor performs a re-posts them to a list of subscribed members. The Mailing List
task that can be viewed as an elaboration of the Re-Director role. performs a task that can be viewed as an elaboration of the ReSender.
In addition to sending the new message to a potentially large number In addition to sending the new message to a potentially large number
of new Recipients, the Mediator can modify content, such as deleting of new Recipients, the Mailing List can modify content, for example,
attachments, converting the format, and adding list-specific by deleting attachments, converting the format, and adding list-
comments. In addition, archiving list messages is common. Still the specific comments. Mailing Lists also archive messages posted by
message retains characteristics of being "from" the original Author. Authors. Still the message retains characteristics of being from the
original Author.
Identities relevant to a mailing list processor, when submitting a These identities are relevant to a mailing list processor, when
message, include: submitting a message:
RFC2919.List-Id: Set by - Mediator Author RFC2919.List-Id: Set by - Mediator Author
RFC2369.List-*: Set by - Mediator Author RFC2369.List-*: Set by - Mediator Author
RFC2822.From: Set by - original Author RFC2822.From: Set by - original Author
Names and email addresses for the original author(s) of the Names and email addresses for the original Author of the
message content are specified -- or, rather, retained. message content are retained.
RFC2822.Reply-To: Set by - original Author or Mediator Author
RFC2822.Sender: Set by - Author Source or Mediator Source
This will usually specify the address of the Actor responsible
for mailing list operations. However some mailing lists
operate in a manner very similar to a simple MTA Relay, so that
they preserve as much of the original handling information as
possible, including the original RFC2822.Sender field.
RFC2822.To/.CC Set by - original Author RFC2822.Reply-To: Set by - Mediator or original Author
These usually contain the original list of Recipient addresses. Although problematic, it is common for a Mailing List to assign
its own addresses to the Reply-To: header field of messages
that it posts. This assignment is intended to ensure that
replies go to all list members, rather than to only the
original Author. As a User actor, a Mailing List is the Author
of the new message and can legitimately set the Reply-To:
value. As a Mediator attempting to represent the message on
behalf of its original Author, creating or modifying a
Reply-To: field can be viewed as violating that Author's
intent. Modifying the field to include the list address can
send to the entire list replies that are meant only for the
original Author. When the Mailing List does not set the field,
a reply meant for the entire list can instead go only to the
original Author. At best, either choice is a matter of group
culture for the particular list.
RFC2821.MailFrom Set by - Author Source or Mediator Source RFC2822.Sender: Set by - Author Originator or Mediator
Originator
This can contain the original address to be notified of This field usually specifies the address of the actor
transmission issues, or the mailing list Actor can set it to responsible for Mailing List operations. Mailing Lists that
contain a new Notification address. Typically the value is set operate in a manner similar to a simple MTA Relay preserve as
to a new address, so that mailing list members and posters are much of the original handling information as possible,
not burdened with transmission-related Returns. including the original RFC2822.Sender field. (Note that this
mode of operation causes the Mailing List to behave much like
an Alias, with a possible difference in number of new
addressees.)
RFC2821.RcptTo Set by - Mediator Author RFC2822.To/.CC: Set by - original Author
This contains the address of a mailing list member. These fields usually contain the original list of Recipient
addresses.
RFC2821.Received Set by - Mediator Dest RFC2821.MailFrom: Set by - Mediator Originator
A Mailing List Actor can record a Received header field, to Because a Mailing List can modify the content of a message in
indicate the transition from original posting to mailing list any way, it is responsible for that content; that is, it is an
forwarding. The Actor can choose to have the message retain Author. As such, the Return Address is specified by the
the original set of Received header fields or can choose to Mailing List. Although it is plausible for the Mailing List to
remove them. In the latter case it can ensure that the re-use the Return Address employed by the original Originator,
original Received header fields are otherwise available, to notifications sent to that address after a message has been
ensure later accountability and diagnostic access to them. processed by a Mailing List could be problematic.
5.4. Gateways 5.4. Gateways
A Gateway performs the basic routing and transfer work of message A Gateway performs the basic routing and transfer work of message
relaying, but it also may make any content, structure, address, or relaying, but it also is permitted to modify content, structure,
attribute modifications needed to send the message into a messaging address, or attributes as needed to send the message into a messaging
environment that operates according to different standards or environment that operates under different standards or potentially
potentially incompatible policies. When a Gateway connects two incompatible policies. When a Gateway connects two differing
differing messaging services, its role is easy to identify and messaging services, its role is easy to identify and understand.
understand. When it connects environments that have technical When it connects environments that follow similar technical
similarity, but can have significant administrative differences, it standards, but significantly different administrative policies, it is
is easy to think that a Gateway is merely an MTA. easy to view a Gateway as merely an MTA.
The critical distinction between an MTA and a Gateway is that the The critical distinction between an MTA and a Gateway is that a
latter can make substantive changes to a message, in order to map Gateway can make substantive changes to a message to map between the
between the standards of two, different messaging services. In standards. In virtually all cases, this mapping results in some
virtually all cases, this mapping process results in some degree of degree of semantic loss. The challenge of Gateway design is to
semantic loss. The challenge of Gateway design is to minimize this minimize this loss. Standardized gateways to Internet Mail are
loss. facsimile [RFC4143], voicemail [RFC3801], and MMS [RFC4356]
A Gateway can set any identity field available to a regular MUA. A Gateway can set any identity field available to an MUA. These
Identities typically relevant to Gateways include: identities are typically relevant to Gateways:
RFC2822.From: Set by - original Author RFC2822.From: Set by - original Author
Names and email addresses for the original author(s) of the Names and addresses for the original Author of the message
message content are retained. As for all original addressing content are retained. As for all original addressing
information in the message, the Gateway can translate addresses information in the message, the Gateway can translate addresses
in whatever way will allow them continue to be useful in the as required to continue to be useful in the target environment.
target environment.
RFC2822.Reply-To: Set by - original Author RFC2822.Reply-To: Set by - original Author
The Gateway SHOULD retain this information, if it is originally The Gateway SHOULD retain this information, if it is present.
present. The ability to perform a successful reply by a The ability to perform a successful reply by a Recipient is a
Gatewayed Recipient is a typical test of Gateway functionality. typical test of Gateway functionality.
RFC2822.Sender: Set by - Author Source or Mediator Source RFC2822.Sender: Set by - Author Originator or Mediator
Originator
This can retain the original value or can be set to a new This field can retain the original value or can be set to a new
address. address.
RFC2822.To/.CC/.BCC Set by - original Recipient RFC2822.To/.CC/.BCC: Set by - original Recipient
These usually retain their original addresses.
RFC2821.MailFrom Set by - Author Source or Mediator Source
The Actor responsible for gatewaying the message can choose to These fields usually retain their original addresses.
specify a new address to receive handling notices.
RFC2822.Received Set by - Mediator Dest RFC2821.MailFrom: Set by - Author Originator or Mediator
Originator
The Gateway can record a Received header field, to indicate the The actor responsible for handling the message can specify a
transition from the original posting environment to the new new address to receive handling notices.
messaging environment.
5.5. Boundary Filter 5.5. Boundary Filter
Organizations often enforce security boundaries by subjecting To enforce security boundaries, organizations can subject messages to
messages to analysis, for conformance with the organization's safety analysis, for conformance with its safety policies. An example is
policies. An example is detection of content classed as spam or a detection of content classed as spam or a virus. A filter might
virus. A Filter might alter the content, to render it safe, such as alter the content, to render it safe, such as by removing content
by removing content deemed unacceptable. Typically these actions deemed unacceptable. Typically, these actions add content to the
will result in the addition of content that records the actions. message that records the actions.
6. Considerations 6. Considerations
6.1. Security Considerations 6.1. Security Considerations
This document does not specify any new Internet Mail functionality. This document describes the existing Internet Mail architecture. It
Consequently it is not intended to introduce any security introduces no new capabilities. The security considerations of this
considerations. deployed architecture are documented extensively in the technical
specifications referenced by this document. These specifications
cover classic security topics, such as authentication and privacy.
For example, email transfer protocols can use standardized mechanisms
for operation over authenticated and/or encrypted links, and message
content has similar protection standards available. Examples of such
mechanisms include SMTP-TLS [RFC3207], SMTP-Auth [RFC2554], OpenPGP
[RFC4880], and S/MIME [RFC3851].
However its discussion of the roles and responsibilities for The core of the Internet Mail architecture does not impose any
different mail service modules, and the information they create, security requirements or functions on the end-to-end or hop-by-hop
highlights the considerable degree to which security issues are components. For example, it does not require participant
present when implementing any component of the Internet Mail service. authentication and does not attempt to prevent data disclosure.
In addition, email transfer protocols can operate over authenticated
and/or encrypted links, and message content or authorship can be Particular message attributes might expose specific security
authenticated or encrypted. considerations. For example, the blind carbon copy feature of the
architecture invites disclosure concerns, as discussed in section 7.2
of [RFC2821] and section 5 of [RFC2822]. Transport of text or non-
text content in this architecture has security considerations that
are discussed in [RFC2822], [RFC2045], [RFC2046], and [RFC4288] as
well as the security considerations present in the IANA media types
registry for the respective types.
Agents that automatically respond to email raise significant security
considerations, as discussed in [RFC3834]. Gateway behaviors affect
end-to-end security services, as discussed in [RFC2480]. Security
considerations for boundary filters are discussed in [RFC5228].
See section 7.1 of [RFC2821] for a discussion of the topic of
origination validation. As mentioned in Section 4.1.4, it is common
practice for components of this architecture to use the
[RFC0791].SourceAddr to make policy decisions [RFC2505], although the
address can be "spoofed". It is possible to use it without
authorization. SMTP and Submission authentication [RFC2554],
[RFC4409] provide more secure alternatives.
The discussion of trust boundaries, ADMDs, actors, roles, and
responsibilities in this document highlights the relevance and
potential complexity of security factors for operation of an Internet
mail service. The core design of Internet Mail to encourage open and
casual exchange of messages has met with scaling challenges, as the
population of email participants has grown to include those with
problematic practices. For example, spam, as defined in [RFC2505],
is a by-product of this architecture. A number of standards track or
BCP documents on the subject have been issued. [RFC2505], [RFC5068],
[RFC3685]
6.2. IANA Considerations 6.2. IANA Considerations
This document has no actions for IANA. This document has no actions for IANA.
6.3. Internationalization
Because its origins date back to the use of ASCII, Internet Mail has
had an ongoing challenge to support the wide range of necessary
international data representations. For a discussion of this topic,
see [MAIL-I18N].
7. References 7. References
7.1. Normative 7.1. Normative
[RFC0791] Postel, J., "Internet Protocol", 1981 September. [RFC0791] Postel, J., "Internet Protocol", RFC 791, 1981 September.
[RFC1034] Mockapetris, P., "Domain names - concepts and facilities", [RFC1034] Mockapetris, P., "Domain names - concepts and facilities",
STD 13, RFC 1034, November 1987. STD 13, RFC 1034, November 1987.
[RFC1035] Mockapetris, P., "Domain names - implementation and [RFC1035] Mockapetris, P., "Domain names - implementation and
specification", STD 13, RFC 1035, November 1987. specification", STD 13, RFC 1035, November 1987.
[RFC1939] Myers, J. and M. Rose, "Post Office Protocol - Version 3", [RFC1939] Myers, J. and M. Rose, "Post Office Protocol - Version 3",
STD 53, RFC 1939, May 1996. STD 53, RFC 1939, May 1996.
skipping to change at page 43, line 32 skipping to change at page 43, line 10
[RFC2821] Klensin, J., "Simple Mail Transfer Protocol", RFC 2821, [RFC2821] Klensin, J., "Simple Mail Transfer Protocol", RFC 2821,
April 2001. April 2001.
[RFC2822] Resnick, P., "Internet Message Format", RFC 2822, [RFC2822] Resnick, P., "Internet Message Format", RFC 2822,
April 2001. April 2001.
[RFC2919] Chandhok, R. and G. Wenger, "List-Id: A Structured Field [RFC2919] Chandhok, R. and G. Wenger, "List-Id: A Structured Field
and Namespace for the Identification of Mailing Lists", and Namespace for the Identification of Mailing Lists",
RFC 2919, March 2001. RFC 2919, March 2001.
[RFC3028] Showalter, T., "Sieve: A Mail Filtering Language",
RFC 3028, January 2001.
[RFC3192] Allocchio, C., "Minimal FAX address format in Internet [RFC3192] Allocchio, C., "Minimal FAX address format in Internet
Mail", RFC 2304, October 2001. Mail", RFC 2304, October 2001.
[RFC3297] Klyne, G., Iwazaki, R., and D. Crocker, "Content [RFC3297] Klyne, G., Iwazaki, R., and D. Crocker, "Content
Negotiation for Messaging Services based on Email", Negotiation for Messaging Services based on Email",
RFC 3297, July 2002. RFC 3297, July 2002.
[RFC3458] Burger, E., Candell, E., Eliot, C., and G. Klyne, "Message [RFC3458] Burger, E., Candell, E., Eliot, C., and G. Klyne, "Message
Context for Internet Mail", RFC 3458, January 2003. Context for Internet Mail", RFC 3458, January 2003.
[RFC3461] Moore, K., "Simple Mail Transfer Protocol (SMTP) Service [RFC3461] Moore, K., "Simple Mail Transfer Protocol (SMTP) Service
Extension for Delivery Status Notifications (DSNs)", Extension for Delivery Status Notifications (DSNs)",
RFC 3461, January 2003. RFC 3461, January 2003.
[RFC3501] Crispin, M., "Internet Message Access Protocol - Version [RFC3501] Crispin, M., "Internet Message Access Protocol - Version
4rev1", RFC 3501, March 2003. 4rev1", RFC 3501, March 2003.
[RFC3798] Hansen, T. and G. Vaudreuil, "Message Disposition [RFC3798] Hansen, T. and G. Vaudreuil, "Message Disposition
Notification", RFC 3798, May 2004. Notification", RFC 3798, May 2004.
[RFC3834] Moore, K., "Recommendations for Automatic Responses to
Electronic Mail", RFC 3834, August 2004.
[RFC3864] Klyne, G., Nottingham, M., and J. Mogul, "Registration [RFC3864] Klyne, G., Nottingham, M., and J. Mogul, "Registration
Procedures for Message Header Fields", RFC 3864, Procedures for Message Header Fields", RFC 3864,
September 2004. September 2004.
[RFC4021] Klyne, G. and J. Palme, "Registration of Mail and MIME [RFC4021] Klyne, G. and J. Palme, "Registration of Mail and MIME
Header Fields", RFC 4021, March 2005. Header Fields", RFC 4021, March 2005.
[RFC4288] Freed, N., Klensin, J., and J. Postel, "Media Type [RFC4288] Freed, N., Klensin, J., and J. Postel, "Media Type
Specifications and Registration Procedures", BCP 13, Specifications and Registration Procedures", BCP 13,
RFC 4288, December 2005. RFC 4288, December 2005.
skipping to change at page 44, line 28 skipping to change at page 44, line 7
Internet Mail Extensions (MIME) Part Four: Registration Internet Mail Extensions (MIME) Part Four: Registration
Procedures", BCP 13, RFC 4289, December 2005. Procedures", BCP 13, RFC 4289, December 2005.
[RFC4409] Gellens, R. and J. Klensin, "Message Submission for Mail", [RFC4409] Gellens, R. and J. Klensin, "Message Submission for Mail",
RFC 4409, April 2006. RFC 4409, April 2006.
[RFC4550] Maes, S., , S., and Isode Ltd., "Internet Email to Support [RFC4550] Maes, S., , S., and Isode Ltd., "Internet Email to Support
Diverse Service Environments (Lemonade) Profile", Diverse Service Environments (Lemonade) Profile",
June 2006. June 2006.
[RFC5228] Showalter, T., "Sieve: A Mail Filtering Language",
RFC 5228.
[RFC5248] Hansen, T. and J. Klensin, "A Registry for SMTP Enhanced
Mail System Status Codes", RFC 5248, June 2008.
7.2. Informative 7.2. Informative
[MAIL-I18N]
Internet Mail Consortium, "Using International Characters
in Internet Mail", IMC IMCR-010, August 1998.
[RFC0821] Postel, J., "Simple Mail Transfer Protocol", STD 10, [RFC0821] Postel, J., "Simple Mail Transfer Protocol", STD 10,
RFC 821, August 1982. RFC 821, August 1982.
[RFC0822] Crocker, D., "Standard for the format of ARPA Internet [RFC0822] Crocker, D., "Standard for the format of ARPA Internet
text messages", STD 11, RFC 822, August 1982. text messages", STD 11, RFC 822, August 1982.
[RFC1733] Crispin, M., "Distributed Electronic Models in IMAP4", [RFC1733] Crispin, M., "Distributed Electronic Models in IMAP4",
December 1994. December 1994.
[RFC1767] Crocker, D., "MIME Encapsulation of EDI Objects", [RFC1767] Crocker, D., "MIME Encapsulation of EDI Objects",
RFC 1767, March 1995. RFC 1767, March 1995.
[RFC1985] De Winter, J., "SMTP Service Extension for Remote
Message Queue Starting", August 1996.
[RFC2033] Myers, J., "Local Mail Transfer Protocol", RFC 2033, [RFC2033] Myers, J., "Local Mail Transfer Protocol", RFC 2033,
October 1996. October 1996.
[RFC2142] Crocker, D., "Mailbox Names for Common services, Roles and
Functions", RFC 2142, May 1997.
[RFC2442] "The Batch SMTP Media Type", RFC 2442, November 1998. [RFC2442] "The Batch SMTP Media Type", RFC 2442, November 1998.
[RFC3801] Vaudreuil, G. and G. Parsons, "", RFC 3801, June 2004. [RFC2480] Freed, N., "Gateways and MIME Security Multiparts",
RFC 2480, January 1999.
[RFC2505] Lindberg, G., "Anti-Spam Recommendations for SMTP MTAs",
RFC 2505, February 1999.
[RFC2554] Myers, J., "SMTP Service Extension for Authentication",
RFC 2554, March 1999.
[RFC3207] Hoffman, P., "SMTP Service Extension for Secure SMTP over
Transport Layer Security", RFC 3207, February 2002.
[RFC3685] Daboo, C., "SIEVE Email Filtering: Spamtest and VirusTest
Extensions", RFC 3685, February 2004.
[RFC3801] Vaudreuil, G. and G. Parsons, "Voice Profile for Internet
Mail - version 2 (VPIMv2)", RFC 3801, June 2004.
[RFC3851] Ramsdell, B., Ed., "Secure/Multipurpose Internet Mail
Extensions (S/MIME) Version 3.1 Message Specification",
RFC 3851, July 2004.
[RFC3885] Allman, E. and T. Hansen, "SMTP Service Extension for [RFC3885] Allman, E. and T. Hansen, "SMTP Service Extension for
Message Tracking", RFC 3885, September 2004. Message Tracking", RFC 3885, September 2004.
[RFC4142] Crocker, D. and G. Klyne, "Full-mode Fax Profile for [RFC4142] Crocker, D. and G. Klyne, "Full-mode Fax Profile for
Internet Mail: FFPIM", December 2005. Internet Mail: FFPIM", December 2005.
[RFC4143] Toyoda, K. and D. Crocker, "Facsimile Using Internet Mail
(IFAX) Service of ENUM", RFC 4143, November 2005.
[RFC4356] Gellens, R., "Mapping Between the Multimedia Messaging
Service (MMS) and Internet Mail", RFC 4356, January 2006.
[RFC4880] Callas, J., Donnerhacke, L., Finney, H., Shaw, D., and R.
Thayer, "OpenPGP Message Format", RFC 4880, November 2007.
[RFC5068] Hutzler, C., Crocker, D., Resnick, P., Sanderson, R., and [RFC5068] Hutzler, C., Crocker, D., Resnick, P., Sanderson, R., and
E. Allman, "Email Submission Operations: Access and E. Allman, "Email Submission Operations: Access and
Accountability Requirements", RFC 5068, BCP 134, Nov 2007. Accountability Requirements", RFC 5068, BCP 134, Nov 2007.
[Tussle] Clark, D., Wroclawski, J., Sollins, K., and R. Braden, [Tussle] Clark, D., Wroclawski, J., Sollins, K., and R. Braden,
"Tussle in Cyberspace: Defining Tomorrow's Internet", "Tussle in Cyberspace: Defining Tomorrow's Internet",
ACM SIGCOMM, 2002. ACM SIGCOMM, 2002.
Appendix A. Acknowledgements Appendix A. Acknowledgements
This work derives from a section in draft-hutzler-spamops [RFC5068]. This work derives from a section in an early version of [RFC5068].
Discussion of the Source actor role was greatly clarified during Discussion of the Originator actor role was greatly clarified during
discussions in the IETF's Marid working group. discussions in the IETF's Marid working group.
Graham Klyne, Pete Resnick and Steve Atkins provided thoughtful Graham Klyne, Pete Resnick and Steve Atkins provided thoughtful
insight on the framework and details of the original drafts. insight on the framework and details of the original drafts, as did
Chris Newman for the final versions, while also serving as cognizant
Area Director for the document. Tony Hansen served as document
shepherd, through the IETF process.
Later reviews and suggestions were provided by Eric Allman, Nathaniel Later reviews and suggestions were provided by Eric Allman, Nathaniel
Borenstein, Ed Bradford, Cyrus Daboo, Frank Ellermann, Tony Finch, Borenstein, Ed Bradford, Cyrus Daboo, Frank Ellermann, Tony Finch,
Ned Freed, Eric Hall, Tony Hansen, Willemien Hoogendoorn, Brad Ned Freed, Eric Hall, Willemien Hoogendoorn, Brad Knowles, John
Knowles, John Leslie, Bruce Valdis Kletnieks, Mark E. Mallett, David Leslie, Bruce Valdis Kletnieks, Mark E. Mallett, David MacQuigg,
MacQuigg, Alexey Melnikov, der Mouse, S. Moonesamy, Chris Newman, Alexey Melnikov, der Mouse, S. Moonesamy, Daryl Odnert, Rahmat M.
Daryl Odnert, Rahmat M. Samik-Ibrahim, Marshall Rose, Hector Santos, Samik-Ibrahim, Marshall Rose, Hector Santos, Jochen Topf, Greg
Jochen Topf, Greg Vaudreuil. Vaudreuil.
Diligent proof-reading was performed by Bruce Lilly. Diligent early proof-reading was performed by Bruce Lilly. Diligent
technical editing was provided by Susan Hunziker
Index Index
10
A A
accountability 11
accountable 12-13
Actor Actor
Administrative 15 Administrative 13
Author 10 Author 8
Edge 16 Consumer 14
Gateway 14 Edge 14
Mediator 11 Gateway 12
Originator 13 Originator 11
Recipient 10 Recipient 9
Relay 14 Return Handler 9
Return Handler 11 Transit 14
Transit 16
User 16
Actors Actors
MHS 12 MHS 10
Administrative Actors 15 ADMD 11, 13-14, 18, 23, 29, 36
Author 10 Administrative Actors 13
Administrative Management Domain 11
aMSA 29
Author 8, 10
author 33
B
body-parts 22
bounce handler 9
boundary 14
C
Consumer Actor 14
content 10, 12-13, 18, 22, 30
D D
Discussion of document 6 delivery 4, 9-10, 12-13, 17, 22-23, 33, 35-36
Discussion of document 7
E E
Edge Actor 16 Edge Actor 14
end-to-end 4 end-to-end 4
envelope 9, 12, 19, 22-23, 30, 35-36
ETRN 33
G G
Gateway 12, 14 Gateway 10, 12
H
header 22
hMSA 29
I I
Internet Mail 4 Internet Mail 4
L
LMTP 33
local-part 16
M M
Mail 4 Mail 4
Mail exchange 5 Mail User Agent 4
Mail Handling Service 3 Mail From 35
Mail Handling System 12 Mail Handling Service 4, 10
Mail Transfer Agent 3 Mail Submission Agent 11
Mail User Agent 3 Mail Transfer Agent 4
MDN 10 mailbox 35
Mediator 11 MDA 35
Message Disposition Notification 10 MDN 9
MHS 3, 12 message 6, 22
Actors 12 Message Disposition Notification 9
MTA 3 MHS 4, 9-12, 19-20, 22-23
MUA 3 Actors 10
MSA 11, 29
MTA 4, 14
boundary 14
MUA 4, 13, 28-29
O O
Originator 13 ODMR 33
Originator 10-11
P
posting 4, 9, 11, 19, 28-29, 33, 36
pull 33
push 33
R R
Recipient 10 RcptTo 10
Relay 14 Receiver 10
Return Handler 11 Recipient 9-10, 35
recipient 33
relay 10
responsibility 29
responsible 12-13
Return address 35
Return Handler 9
role 9, 17
Author 8
Originator 11
Recipient 9
S
SIEVE 22
SMTP 33
T T
Transit Actor 16 transfer 10, 12-13
Transit Actor 14
transition 29
U U
UA 3 UA 4
User Actor 16 User Agent 4
User Agent 3
Author's Address Author's Address
Dave Crocker Dave Crocker
Brandenburg InternetWorking Brandenburg InternetWorking
675 Spruce Drive 675 Spruce Drive
Sunnyvale, CA 94086 Sunnyvale, CA 94086
USA USA
Phone: +1.408.246.8253 Phone: +1.408.246.8253
 End of changes. 325 change blocks. 
1283 lines changed or deleted 1420 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/