[ih] Design choices in SMTP

John Klensin jklensin at gmail.com
Tue Feb 7 09:26:59 PST 2023


Ralph,

I was not involved with the original SMTP design and don't remember ever
explicitly discussing those choices, but my guess is that the answer would
involve at least some of the following:

* SMTP was designed along the model of FTP, which preceded it as the mail
transport mechanism, and that made the command-response model seem natural

* At the time SMTP was designed, the network backbone and most
communications paths to it were running at 56 Kpbs, agonizingly slow by
today's standards.  Computers were much slower too.  Especially because all
of those round trips were within a single TCP session, that might have
contributed to exactly your suggestion that the intent was to get an SMTP
session that was doomed to fail over as soon as possible, in particular
before the payload was transmitted.

* Possibly more significant in retrospect than at the time, but a
command-response model like  "did I reach the right server?", "are you
willing to accept mail from this address?", "is this destination ok?", "how
about that destination?"  has some privacy advantages over a "here is the
envelope and payload, please do the right thing" model, even if the latter
is supplemented by a footer that has become common in some places. one that
essentially says "if this message was not really intended for you, please
un-read and delete it" .

You didn't ask but I hope your discussion noted that, for situations in
which minimizing round trips is considered important, the "pipelining"
option was introduced in 1995 (RFC 1854, succeeded by RFC 2920).

    john


On Tue, Feb 7, 2023 at 11:00 AM Ralph Holz via Internet-history <
internet-history at elists.isoc.org> wrote:

> Hi everyone,
>
> During a lecture today, the following question came up: SMTP requires quite
> a few round-trips to deliver an email. Why was this design choice made,
> i.e., why does a submitting client not just send everything to the server
> in one RTT?
>
> Apart from the client-server philosophy at play, I am wondering if that was
> because we wanted a receiver to terminate the delivery process as early as
> possible, i.e., before sending the body, if anything was amiss.
>
> Does anyone have insights on that or maybe even know a nice write-up? I
> checked a few sites that discuss the history of SMTP, but so far no luck
> with this aspect.
>
> Many thanks,
> Ralph
> --
> Internet-history mailing list
> Internet-history at elists.isoc.org
> https://elists.isoc.org/mailman/listinfo/internet-history
>



More information about the Internet-history mailing list