Is an Email provider missing from the list? Simply send us
an Email.
Simple Mail Transfer Protocol (SMTP) is an
Internet standard for electronic mail (e-mail) transmission.
First defined by RFC 821 in 1982, it was last updated in
2008 with the Extended SMTP additions by RFC 5321 - which is
the protocol in widespread use today.
SMTP by default uses TCP port 25. The protocol for mail
submission is the same, but uses port 587. SMTP connections
secured by SSL, known as SMTPS, default to port 465.
While electronic mail servers and other mail transfer agents
use SMTP to send and receive mail messages, user-level
client mail applications typically use SMTP only for sending
messages to a mail server for relaying. For receiving
messages, client applications usually use either POP3 or
IMAP.
While proprietary systems (such as Microsoft Exchange and
Lotus Notes/Domino) and webmail systems (such as Hotmail,
Gmail and Yahoo! Mail) use their own non-standard protocols
to access mail box accounts on their own mail servers, all
use SMTP when sending or receiving email from outside their
own systems.
Various forms of one-to-one electronic messaging were used
in the 1960s. People communicated with one another using
systems developed for specific mainframe computers. As more
computers were interconnected, especially in the US
Government's ARPANET, standards were developed to allow
users of different systems to e-mail one another. SMTP grew
out of these standards developed during the 1970s.
SMTP can trace its roots to two implementations described in
1971: the Mail Box Protocol, whose implementation has been
disputed, but is discussed in RFC 196 and other RFCs, and
the SNDMSG program, which, according to RFC 2235, Ray
Tomlinson of BBN invented for TENEX computers to send mail
messages across the ARPANET. Fewer than 50 hosts were
connected to the ARPANET at this time.
Further implementations include FTP Mail and Mail Protocol,
both from 1973. Development work continued throughout the
1970s, until the ARPANET converted into the modern Internet
around 1980. Jon Postel then proposed a Mail Transfer
Protocol in 1980 that began to remove the mail's reliance on
FTP. SMTP was published as RFC 788 in November 1981, also by
Postel.
The SMTP standard was developed around the same time as
Usenet, a one-to-many communication network with some
similarities.
SMTP became widely used in the early 1980s. At the time, it
was a complement to Unix to Unix Copy Program (UUCP) mail,
which was better suited for handling e-mail transfers
between machines that were intermittently connected. SMTP,
on the other hand, works best when both the sending and
receiving machines are connected to the network all the
time. Both use a store and forward mechanism and are
examples of push technology. Though Usenet's newsgroups are
still propagated with UUCP between servers, UUCP as a mail
transport has virtually disappeared along with the "bang
paths" it used as message routing headers.
Sendmail, released with 4.1cBSD, right after RFC 788, was
one of the first mail transfer agents to implement SMTP.
Over time, as BSD Unix became the most popular operating
system on the Internet, sendmail became the most common MTA
(mail transfer agent). Some other popular SMTP server
programs include Postfix, qmail, Novell GroupWise, Exim,
Novell NetMail, Microsoft Exchange Server, Sun Java System
Messaging Server.
Message submission (RFC 2476) and SMTP-AUTH (RFC 2554) were
introduced in 1998 and 1999, both describing new trends in
e-mail delivery. Originally, SMTP servers were typically
internal to an organization, receiving mail for the
organization from the outside, and relaying messages from
the organization to the outside. But as time went on, SMTP
servers (mail transfer agents), in practice, were expanding
their roles to become message submission agents for Mail
user agents, some of which were now relaying mail from the
outside of an organization. (e.g. a company executive wishes
to send e-mail while on a trip using the corporate SMTP
server.) This issue, a consequence of the rapid expansion
and popularity of the World Wide Web, meant that SMTP had to
include specific rules and methods for relaying mail and
authenticating users to prevent abuses such as relaying of
unsolicited e-mail (spam). Work on message submission (RFC
2476) was originally started because popular mail servers
would often rewrite mail in an attempt to fix problems in
it, for example, adding a domain name to an unqualified
address. This behavior is helpful when the message being
fixed is an initial submission, but dangerous and harmful
when the message originated elsewhere and is being relayed.
Cleanly separating mail into submission and relay was seen
as a way to permit and encourage rewriting submissions while
prohibiting rewriting relay. As spam became more prevalent,
it was also seen as a way to provide authorization for mail
being sent out from an organization, as well as
traceability. This separation of relay and submission
quickly became a foundation for modern email security
practices.
As this protocol started out purely ASCII text-based, it did
not deal well with binary files, or characters in many
non-English languages. Standards such as Multipurpose
Internet Mail Extensions (MIME) were developed to encode
binary files for transfer through SMTP. Mail transfer agents
(MTAs) developed after Sendmail also tended to be
implemented 8-bit-clean, so that the alternate "just send
eight" strategy could be used to transmit arbitrary text
data (in any 8-bit ASCII-like character encoding) via SMTP.
Mojibake was still a problem due to differing character set
mappings between vendors, although the email addresses
themselves still allowed only ASCII. 8-bit-clean MTAs today
tend to support the 8BITMIME extension, permitting binary
files to be transmitted almost as easily as plain text.
Recently the SMTPUTF8 extension was created to support UTF-8
text, allowing international content and addresses in
non-Latin scripts like Cyrillic or Chinese. |