On 5/15/2004 3:36 AM, Dave Crocker wrote:
| End-to-end Internet mail exchange is accomplished by using a
| standardized infrastructure comprising:
Two additional core functions are routing and [re-]queuing algorithms,
both of which are central towards determining whether or not the
end-to-end exchange works (that's why they are specified in the core).
They are also frequently replaced with 'optimized' algorithms that are
better suited to specific environments.
| The <mailto:ietf-822(_at_)imc(_dot_)org> list also is pertinent
should be '822'
| 3 Email System Architecture
I disagree with the use of this terminology for the purpose of describing
the global network of mailboxes; the "agent" model stopped being useful
for most environments by 1990, and it is far better to talk about the
various functions which can (and are) used by any node on the network to
affect end-to-end transfer.
The collection of independent, replacable functions are:
addressing -- the public rules only define the public destination
first-hop submission -- transfer protos [smtp, submit], retrieval
protos [pop3 extensions, imap extensions], file-system queues,
APIs [/usr/lib/sendmail], and many other mechanisms. this is the
routing -- public [dns] and private [nis/ldap, static maps, etc]
push-transfer -- smtp, lmtp, gateway [DECmail, AOL],... Dare I say
that UUCP is making a comeback in some circles.
last-hop delivery -- lmtp sometimes, usually its a private
interface to a locally preferred mail-store database format.
this is actually the least-defined of all the functions.
pull-transfer (aka retrieval) -- just because the message is
loitering in somebody's account spopol doesn't mean it has
reached the final destination. pop, imap, atrn, etrn, etc.
usually another delivery function here too.
The principle reason for talking about functions instead of node-types is
that modern agents often incorporate functions that are not reflected by
historical classifications. For example, it's not unheard of for a
first-hop "MUA" to make routing and queuing decisions based on the
destination address, at which point it is no longer a simple MUA, but
instead is an MUA (presentation) with a local MSA (queuing) and MTA
(routing and transfer). The historical terminology just doesn't cut it
anymore I'm afraid.
The remainder followed the agent model and thus I skipped it.
Eric A. Hall http://www.ehsco.com/
Internet Core Protocols http://www.oreilly.com/catalog/coreprot/