All Topics  
Simple Mail Transfer Protocol

 

   Email Print
   Bookmark   Link






 

Simple Mail Transfer Protocol



 
 
Simple Mail Transfer Protocol (SMTP) is an Internet standard
Internet standard

In computer network engineering, an Internet Standard is a normative specification of a technology or methodology applicable to the Internet. Internet Standards are created and published by the Internet Engineering Task Force ....
 for electronic mail
E-mail

Electronic mail, often abbreviated as e-mail, email, E-Mail, or eMail, is any method of creating, transmitting, or storing primarily text-based human communications with digital communications systems....
 (e-mail) transmission across Internet Protocol
Internet protocol

Internet protocol may refer to:*The Internet Protocol, a specific protocol implementation in the Internet protocol suite*The Internet protocol suite, a set of communications protocols that are used for the Internet...
 (IP) networks. SMTP was first defined in RFC 821 (STD 10), and last updated by RFC 5321 (2008), which describes the protocol in widespread use today, also known as extended SMTP
Extended SMTP

Extended SMTP , sometimes referred to as Enhanced SMTP, is a definition of protocol extensions to the Simple Mail Transfer Protocol standard....
 (ESMTP).

While electronic mail server
Mail transfer agent

A mail transfer agent The term mail server is also used to mean a computer acting as an MTA that is running the appropriate software. The term mail exchanger , in the context of the Domain Name System formally refers to an IP address assigned to a device hosting a mail server, and by extension also indicates the server itsel...
 software uses SMTP to send and receive mail messages, user-level client mail applications typically only use SMTP for sending messages to a mail server for relaying
Open mail relay

An open mail relay is an SMTP server configured in such a way that it allows anyone on the Internet to send e-mail through it, not just mail destined to or originating from known users....
.






Discussion
Ask a question about 'Simple Mail Transfer Protocol'
Start a new discussion about 'Simple Mail Transfer Protocol'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Simple Mail Transfer Protocol (SMTP) is an Internet standard
Internet standard

In computer network engineering, an Internet Standard is a normative specification of a technology or methodology applicable to the Internet. Internet Standards are created and published by the Internet Engineering Task Force ....
 for electronic mail
E-mail

Electronic mail, often abbreviated as e-mail, email, E-Mail, or eMail, is any method of creating, transmitting, or storing primarily text-based human communications with digital communications systems....
 (e-mail) transmission across Internet Protocol
Internet protocol

Internet protocol may refer to:*The Internet Protocol, a specific protocol implementation in the Internet protocol suite*The Internet protocol suite, a set of communications protocols that are used for the Internet...
 (IP) networks. SMTP was first defined in RFC 821 (STD 10), and last updated by RFC 5321 (2008), which describes the protocol in widespread use today, also known as extended SMTP
Extended SMTP

Extended SMTP , sometimes referred to as Enhanced SMTP, is a definition of protocol extensions to the Simple Mail Transfer Protocol standard....
 (ESMTP).

While electronic mail server
Mail transfer agent

A mail transfer agent The term mail server is also used to mean a computer acting as an MTA that is running the appropriate software. The term mail exchanger , in the context of the Domain Name System formally refers to an IP address assigned to a device hosting a mail server, and by extension also indicates the server itsel...
 software uses SMTP to send and receive mail messages, user-level client mail applications typically only use SMTP for sending messages to a mail server for relaying
Open mail relay

An open mail relay is an SMTP server configured in such a way that it allows anyone on the Internet to send e-mail through it, not just mail destined to or originating from known users....
. For receiving messages, client applications usually use either the Post Office Protocol
Post Office Protocol

In computing, the Post Office Protocol version 3 is an application layer Internet standard protocol used by local e-mail clients to retrieve e-mail from a remote mail server over a Internet protocol suite connection....
 (POP) or the Internet Message Access Protocol
Internet Message Access Protocol

The Internet Message Access Protocol or IMAP is one of the two most prevalent Internet standard protocols for e-mail retrieval, the other being Post Office Protocol....
 (IMAP) to access their mail box accounts on a mail server.

Description

SMTP is a relatively simple, text-based protocol, in which one or more recipients of a message are specified (and in most cases verified to exist) along with the message text and possibly other encoded objects. The message is then transferred to a remote server using a series of queries and responses between the client
Client (computing)

A client is an Application software or system that accesses a remote service on another computer system, known as a Server , by way of a Computer network....
 and server
Server (computing)

A server is a computer program that provides services to other computer programs , in the same or other computer. The physical computer that runs a server program is also often referred to as server....
. Either an end-user's e-mail client
E-mail client

An e-mail client is a frontend computer program used to manage e-mail.Sometimes, the term e-mail client is also used to refer to any agent acting as a Client toward an e-mail server, independently of it being a real MUA, a relaying server, or a human typing directly on a telnet terminal....
, a.k.a. MUA (Mail User Agent), or a relaying server's MTA
Mail transfer agent

A mail transfer agent The term mail server is also used to mean a computer acting as an MTA that is running the appropriate software. The term mail exchanger , in the context of the Domain Name System formally refers to an IP address assigned to a device hosting a mail server, and by extension also indicates the server itsel...
 (Mail Transport Agent) can act as an SMTP client.

An e-mail client knows the outgoing mail SMTP server from its configuration. A relaying server typically determines which SMTP server to connect to by looking up the MX
MX record

An MX record or Mail exchanger record is a type of resource record in the Domain Name System specifying how Internet e-mail should be routed using the Simple Mail Transfer Protocol ....
 (Mail eXchange) DNS
Domain name system

The Domain Name System is a hierarchical naming system for computers, services, or any resource participating in the Internet. It associates various information with domain names assigned to such participants....
 record for each recipient's domain name
Domain name

The term domain name has multiple related meanings:* A hostname that identifies a computer or computers on the Internet. These names appear as a component of a Web site's Uniform Resource Locator, e.g....
. Conformant MTAs (not all) fall back to a simple A record in the case of no MX (relaying servers can also be configured to use a smart host
Smart host

A smart host is a type of mail relay server which allows an Simple Mail Transfer Protocol server to route e-mail to an intermediate mail server rather than directly to the recipient?s server....
). The SMTP client initiates a TCP
Transmission Control Protocol

The Transmission Control Protocol is one of the core protocols of the Internet Protocol Suite. TCP is so central that the entire suite is often referred to as "TCP/IP"....
 connection to server's port
TCP and UDP port

In computer networking, a port is an application-specific or process-specific software construct serving as a communications endpoint used by Transport layer protocols of the Internet protocol suite such as Transmission Control Protocol and User Datagram Protocol ....
 25 (unless overridden by configuration). It is quite easy to test an SMTP server using the netcat
Netcat

netcat is a computer networking utility for reading from and writing to network connections on either Transmission Control Protocol or User Datagram Protocol....
 program (see below).

SMTP is a "push" protocol that cannot "pull" messages from a remote server on demand. To retrieve messages only on demand, which is the most common requirement on a single-user computer, a mail client
E-mail client

An e-mail client is a frontend computer program used to manage e-mail.Sometimes, the term e-mail client is also used to refer to any agent acting as a Client toward an e-mail server, independently of it being a real MUA, a relaying server, or a human typing directly on a telnet terminal....
 must use POP3
Post Office Protocol

In computing, the Post Office Protocol version 3 is an application layer Internet standard protocol used by local e-mail clients to retrieve e-mail from a remote mail server over a Internet protocol suite connection....
 or IMAP
Internet Message Access Protocol

The Internet Message Access Protocol or IMAP is one of the two most prevalent Internet standard protocols for e-mail retrieval, the other being Post Office Protocol....
. Another SMTP server can trigger a delivery in SMTP using ETRN
ETRN

ETRN is an extension to the Simple Mail Transfer Protocol e-mail protocol. ETRN is defined in RFC 1985. It enables a mail server to request a second mail server to forward outstanding mail messages to it....
. It is possible to receive mail by running an SMTP server. POP3 became popular when single-user computers connected to the Internet only intermittently; SMTP is more suitable for a machine permanently connected to the Internet.

A simple aid to memory is "Send Mail To People."

History

Various forms of one-to-one electronic messaging
Electronic messaging

Electronic messaging may refer to:One to One communication*Instant message *Personal message *Text message *SMTP *email *Voicemail ...
 were used in the 1960s. People communicated with one another using systems developed for a particular mainframe
Mainframe

Mainframe may refer to one of the following:* Mainframe computer, large data processing systems* Mainframe Entertainment, a Canadian computer animation and design company....
 computer. As more computers began to be interconnected with others, especially in the US Government's ARPANET
ARPANET

The ARPANET developed by Defense Advanced Research Projects Agency of the United States Department of Defense during the Cold War, was the world's first operational packet switching network, and the predecessor of the global Internet....
, standards were developed to allow users using different systems to be able to e-mail
E-mail

Electronic mail, often abbreviated as e-mail, email, E-Mail, or eMail, is any method of creating, transmitting, or storing primarily text-based human communications with digital communications systems....
 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, which may not have been implemented but is discussed in RFC 196 and other RFCs; and the SNDMSG program, which according to RFC 2235, Ray Tomlinson
Ray Tomlinson

Raymond Samuel Tomlinson is a programmer who implemented an email system in 1971 on the ARPANet. Email had been previously sent on other networks such as Automatic_Digital_Network....
 of BBN
BBN Technologies

BBN Technologies is a high-technology company which provides research and development services. BBN is based next to Fresh Pond, Cambridge, Massachusetts in Cambridge, Massachusetts, Massachusetts, United States....
 "invents" for TENEX
TOPS-20

The TOPS-20 operating system by Digital Equipment Corporation was the second proprietary OS for the PDP-10 mainframe computer. TOPS-20 began in 1969 as Bolt, Beranek and Newman's TENEX operating system, using special paging hardware....
 computers to send mail 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. The work continued throughout the 1970s, until the ARPANET converted into the modern Internet
Internet

The Internet is a global network of interconnected computers, enabling users to share information along multiple channels. Typically, a computer that connects to the Internet can access information from a vast array of available server and other computers by moving information from them to the computer's local memory....
 around 1980. Jon Postel
Jon Postel

Jonathan Bruce Postel made many significant contributions to the development of the Internet, particularly in the area of standardization. He is principally known for being the Editor of the Request for Comments document series, and for administering the Internet Assigned Numbers Authority until his death....
 then proposed a Mail Transfer Protocol
Mail Transfer Protocol

The Mail Transfer Protocol is an Obsolete#Technical_or_functional_obsolescence Computer network Protocol used to reliably transfer E-mail. Request for Comments 780, which defined this protocol, allocated Transmission Control Protocol and User Datagram Protocol TCP and UDP port List_of_TCP_and_UDP_port_numbers#Ports_0_to_1023 for MTP....
 in 1980 that began to remove the mail's reliance on FTP. SMTP was published as RFC 821 in August 1982, also by Postel.

The SMTP standard was developed around the same time as Usenet
Usenet

Usenet, a portmanteau of "user" and "network", is a worldwide distributed Internet discussion system. It evolved from the general purpose UUCP architecture of the same name....
, 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 UUCP
UUCP

UUCP is an abbreviation for Unix to Unix Copy Program. The term generally refers to a suite of computer programs and communications protocols allowing remote execution of commands and transfer of Computer files, email and netnews between computers....
 (Unix to Unix CoPy) mail, which was better suited to handle 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
Store and forward

Store and forward is a telecommunications technique in which information is sent to an intermediate station where it is kept and sent at a later time to the final destination or to another intermediate station....
 mechanism and are examples of push technology
Push technology

Push technology, or server push, describes a style of Internet-based communication where the request for a given transaction originates with the publisher or central server ....
. Though Usenet's newsgroups are still propagated with UUCP between servers, UUCP mail
UUCP

UUCP is an abbreviation for Unix to Unix Copy Program. The term generally refers to a suite of computer programs and communications protocols allowing remote execution of commands and transfer of Computer files, email and netnews between computers....
 has virtually disappeared along with the "bang paths" it used as message routing headers.

The article about sender rewriting
Sender Rewriting Scheme

Sender Rewriting Scheme is a technique to re-mailan email message so that eventual Delivery Status Notificationscan reach the original message sender....
 contains technical background info about the early SMTP history and source routing before RFC 1123.

Sendmail
Sendmail

Sendmail is a mail transfer agent that supports many kinds of mail transfer and delivery including the overwhelmingly popular SMTP.A descendant of delivermail program written by Eric Allman, Sendmail is a well-known project of the free and open source software and Unix communities, and is distributed both as free software and propriet...
 was one of the first (if not the first) mail transfer agents to implement SMTP. Some other popular SMTP server programs include Postfix
Postfix (software)

Postfix is a free software and open-source software mail transfer agent , a computer program for the routing and delivery of email. It is intended as a fast, easy-to-administer, and secure alternative to the widely-used Sendmail MTA....
, qmail
Qmail

qmail is a mail transfer agent that runs on Unix. It was written, starting December 1995, by Daniel J. Bernstein as a more computer security replacement for the popular Sendmail program....
, Novell GroupWise
Novell GroupWise

GroupWise is a cross-platform collaborative software product from Novell, Inc. offering e-mail, Electronic calendar, instant messaging and document management....
, Exim
Exim

Exim is a mail transfer agent used on Unix-like operating systems. It is freely available under the GNU GPL and it aims to be a general and flexible mailer with extensive facilities for checking incoming e-mail....
, Novell NetMail, Microsoft Exchange Server
Microsoft Exchange Server

Microsoft Exchange Server is a messaging and collaborative software product developed by Microsoft. It is part of the Microsoft Servers line of Server products and is widely used by enterprises using Microsoft infrastructure solutions....
, Sun Java System Messaging Server
Sun Java System Messaging Server

The Sun Java Messaging Server is Sun Microsystems, Inc.?s highly scalable and robust messaging server software.Sun?s Messaging Server could potentially be the most widely deployed commercial e-mail server on the planet, with claims of 150 million mailboxes deployed world-wide -- Source David Ferris Newsletter....
 and the Sobig worm. As of 2001 there were at least 50 programs that implemented SMTP either as clients (senders of messages) or as servers (receivers of messages).

Message Submission
Mail submission agent

TAs act as an MSA as well, but there are also programs that are specially designed as MSAs without full MTA functionality. Historically in Internet mail, both MTA and MSA functions were both performed by MTAs using the same protocol ....
 (RFC 2476) and SMTP-AUTH
SMTP-AUTH

SMTP-AUTH is an extension of the Simple Mail Transfer Protocol to include an authentication step through which the client effectively logs in to the mail transfer agent during the process of sending mail....
 (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 agent
Mail transfer agent

A mail transfer agent The term mail server is also used to mean a computer acting as an MTA that is running the appropriate software. The term mail exchanger , in the context of the Domain Name System formally refers to an IP address assigned to a device hosting a mail server, and by extension also indicates the server itsel...
s), in practice, were expanding their roles to become Mail submission agent
Mail submission agent

TAs act as an MSA as well, but there are also programs that are specially designed as MSAs without full MTA functionality. Historically in Internet mail, both MTA and MSA functions were both performed by MTAs using the same protocol ....
s 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
World Wide Web

The World Wide Web is a very large set of interlinked hypertext documents accessed via the Internet. With a Web browser, one can view Web pages that may contain writing, s, videos, and other multimedia and navigate between them using hyperlinks....
, meant that the SMTP protocol had to include specific rules and methods for relaying mail and authenticating users to prevent abuses such as unsolicited e-mail (spam
E-mail spam

E-mail spam, also known as junk e-mail, is a subset of spam that involves nearly identical messages sent to numerous recipients by e-mail....
) relaying.

As this protocol started out purely ASCII
ASCII

American Standard Code for Information Interchange , is a coding standard that can be used for interchanging information, if the information is expressed mainly by the written form of English words....
 text-based, it did not deal well with binary files. Standards such as Multipurpose Internet Mail Extensions (MIME
MIME

Multipurpose Internet Mail Extensions is an Internet standard that extends the format of electronic mail to support:* Text in character sets other than ASCII...
) were developed to encode binary files for transfer through SMTP. MTAs
Mail transfer agent

A mail transfer agent The term mail server is also used to mean a computer acting as an MTA that is running the appropriate software. The term mail exchanger , in the context of the Domain Name System formally refers to an IP address assigned to a device hosting a mail server, and by extension also indicates the server itsel...
 developed after Sendmail
Sendmail

Sendmail is a mail transfer agent that supports many kinds of mail transfer and delivery including the overwhelmingly popular SMTP.A descendant of delivermail program written by Eric Allman, Sendmail is a well-known project of the free and open source software and Unix communities, and is distributed both as free software and propriet...
 also tended to be implemented 8-bit-clean, so that the alternate "just send eight" strategy could be used to transmit arbitrary data via SMTP. Non-8-bit-clean MTAs today tend to support the 8BITMIME
8BITMIME

8BITMIME is an Extended SMTP standardized in 1994 that facilitates the exchange of e-mail messages containing octets outside the seven-bit ASCII range....
 extension, permitting binary files to be transmitted almost as easily as plain text.

Developers


Many people edited or contributed to the core SMTP specifications, among them Jon Postel
Jon Postel

Jonathan Bruce Postel made many significant contributions to the development of the Internet, particularly in the area of standardization. He is principally known for being the Editor of the Request for Comments document series, and for administering the Internet Assigned Numbers Authority until his death....
, Eric Allman
Eric Allman

Eric Paul Allman is an American computer programmer who developed sendmail and its precursor delivermail in the late 1970s and early 1980s at UC Berkeley....
, Dave Crocker, Ned Freed
Ned Freed

Ned Freed is the author or co-author of severalInternet Engineering Task ForceRequest for comments, most relating to e-mail or security. they include:...
, Randall Gellens, John Klensin
John Klensin

Dr. John C. Klensin is a computer science professional who is active in Internet-related issues.His career includes 30 years as a Principal Research Scientist at MIT, a stint as INFOODS Project Coordinator for the United Nations University, Distinguished Engineering Fellow at MCI WorldCom, and Internet Architecture Vice President at AT&T;...
, and Keith Moore
Keith Moore

Keith Moore is the author and co-author of severalInternet Engineering Task ForceRequest for comments related to the MIMEand SMTP protocols for electronic mail, among others:...
.

Outgoing mail SMTP server

An e-mail client
E-mail client

An e-mail client is a frontend computer program used to manage e-mail.Sometimes, the term e-mail client is also used to refer to any agent acting as a Client toward an e-mail server, independently of it being a real MUA, a relaying server, or a human typing directly on a telnet terminal....
 requires the name or the IP address of an SMTP server as part of its configuration. The server will deliver messages on behalf of the user. This setting allows for various policies and network designs. End users connected to the Internet can use the services of an e-mail provider that is not necessarily the same as their connection provider (ISP). Network topology, or the location of a client within a network or outside of a network, is no longer a limiting factor for e-mail submission or delivery. Modern SMTP servers typically use a client's credentials (authentication
Authentication

Authentication is the act of establishing or confirming something as authentic, that is, that claims made by or about the subject are true....
) rather than a client's location (IP address
IP address

An Internet Protocol address is a numerical identification that is assigned to devices participating in a computer network utilizing the Internet Protocol for communication between its nodes....
), to determine whether it is eligible to relay e-mail.

Server administrators choose whether clients use TCP
Transmission Control Protocol

The Transmission Control Protocol is one of the core protocols of the Internet Protocol Suite. TCP is so central that the entire suite is often referred to as "TCP/IP"....
 port 25 (SMTP) or port 587 (Submission)
, as formalized in RFC 4409, for relaying outbound mail to a mail server. The specifications and many servers support both. Although some servers support port 465 for legacy secure SMTP in violation of the specifications, it is preferable to use standard ports and standard ESMTP commands according to RFC 3207 if a secure session needs to be used between the client and the server. Some servers are set up to reject all relaying on port 25, but valid users authenticating on port 587 are allowed to relay mail to any valid address. A server that relays all e-mail for all destinations for all clients connecting to port 25 is known as an open relay and is now generally considered a bad practice worthy of blacklist
Blacklist (computing)

In computing, a blacklist is a basic access control mechanism that allows every access, except for the members of the black list . The opposite is a whitelist, which means allow nobody, except members of the white list....
ing.

Some Internet service provider
Internet service provider

An Internet service provider is a company that offers its customers access to the Internet. The ISP connects to its customers using a data transmission technology appropriate for delivering Internet Protocol datagrams, such as dial-up, DSL, cable modem or dedicated high-speed interconnects....
s intercept port 25, so that it is not possible for their users to send mail via a relaying SMTP server elsewhere using port 25; they are restricted to using the ISP's SMTP server only. Some independent SMTP servers support an additional port other than 25 to allow users with authenticated access to connect to them even if port 25 is blocked. The practical purpose of this is that a travelling user connecting to different ISPs otherwise has to change SMTP server settings on the mail client for each ISP; using a relaying SMTP server allows the SMTP client settings to be used unchanged worldwide.

Sample communications

After establishing a connection between the sender (the client) and the receiver (the server), the following is a valid SMTP session. In the following conversation, everything sent by the client is prefixed here with "C: " and everything sent by the server with "S: "; this prefix is not part of the conversation. On most computer systems, a connection can be established using the netcat
Netcat

netcat is a computer networking utility for reading from and writing to network connections on either Transmission Control Protocol or User Datagram Protocol....
 command (or telnet
TELNET

Telnet is a network protocol used on the Internet or Local Area Network connections. It was developed in 1969 beginning with RFC 15 and standardized as Internet Engineering Task Force STD 8, one of the first Internet standards....
 if netcat is not available) on the client machine, for example:
telnet smtp.example.com 25


which opens a TCP connection from the sending machine to the MTA listening on port 25 on host smtp.example.com. By convention, SMTP servers greet clients with their fully-qualified domain name. In this example, the client computer (relay.example.org) has already determined that "smtp.example.com" is a mail exchanger for the example.com domain by doing a DNS lookup of example.coms MX records. Note that a carriage return and a line feed character (not shown) are required at the end of each line; in a manual Telnet session they are both normally generated by pressing the Enter or carriage return key once. S: 220 smtp.example.com ESMTP Postfix C: HELO relay.example.org S: 250 Hello relay.example.org, I am glad to meet you C: MAIL FROM: S: 250 Ok C: RCPT TO: S: 250 Ok C: RCPT TO: S: 250 Ok C: DATA S: 354 End data with . C: From: "Bob Example" C: To: Alice Example C: Cc: theboss@example.com C: Date: Tue, 15 Jan 2008 16:02:43 -0500 C: Subject: Test message C: C: Hello Alice. C: This is a test message with 5 headers and 4 lines in the body. C: Your friend, C: Bob C: . S: 250 Ok: queued as 12345 C: QUIT S: 221 Bye In this example, the e-mail is sent to two mailboxes on the same SMTP server: once for each recipient listed in the "To" and "Cc" headers; if there were any in a "Bcc" list, which are not included in any headers, there would have been additional "RCPT TO" commands for those recipients as well. If the second recipient had been located elsewhere, the client would QUIT and connect to the appropriate SMTP server once the first message had been queued. Note that the information the client sends in the HELO and MAIL FROM commands can be retrieved in additional headers that the server adds to the message: Received and Return-Path respectively.

Although optional and not shown above, many clients ask the server which SMTP extensions the server supports, by using the EHLO greeting to invoke Extended SMTP
Extended SMTP

Extended SMTP , sometimes referred to as Enhanced SMTP, is a definition of protocol extensions to the Simple Mail Transfer Protocol standard....
 (ESMTP) specified in RFC 1870. These clients fall back to HELO only if the server does not respond to EHLO.

Modern clients may use the ESMTP extension keyword SIZE to inquire of the server the maximum message size that will be accepted. Older clients and servers may try to transfer huge messages that will be rejected after wasting the network resources, including a lot of connect time to dial-up ISPs that are paid by the minute.

Users can manually determine in advance the maximum size accepted by ESMTP servers. The user telnets as above, but substitutes "EHLO host.example.org" for the HELO command line.

S: 220-smtp2.example.com ESMTP Postfix
C: EHLO bob.example.org S: 250-smtp2.example.com Hello bob.example.org [192.0.2.201] S: 250-SIZE 14680064 S: 250-PIPELINING S: 250 HELP Thus smtp2.example.com declares that it will accept a fixed maximum message size no larger than 14,680,064 octets
Octet (computing)

In computing, an octet is a grouping of eight bits.Octet, with the only exception noted below, always refers to an entity having exactly eight bits....
 (8-bit bytes). Depending on the server's actual resource usage, it may be currently unable to accept a message this large. In the simplest case, an ESMTP server will declare a maximum SIZE with only the EHLO user interaction.

Security and spamming


One of the limitations of the original SMTP is that it has no facility for authentication of senders. Therefore the SMTP-AUTH
SMTP-AUTH

SMTP-AUTH is an extension of the Simple Mail Transfer Protocol to include an authentication step through which the client effectively logs in to the mail transfer agent during the process of sending mail....
 extension was defined. However, the impracticalities of widespread SMTP-AUTH implementation and management means that E-mail spamming is not and cannot be addressed by it.

Modifying SMTP extensively, or replacing it completely, is not believed to be practical, due to the network effect
Network effect

In economics and business, a network effect is the effect that one user of a good or Service has on the value of that product to other people....
s of the huge installed base of SMTP. Internet Mail 2000
Internet Mail 2000

Internet Mail 2000 is a new email architecture proposed by Daniel J. Bernstein , designed with the precept that the initial storage of mail messages be the responsibility of the sender, and not of the recipient as it is with the SMTP-based Internet mail architecture....
 was one such proposal for replacement.

Spam is enabled by several factors, including vendors implementing
broken MTAs
Mail transfer agent

A mail transfer agent The term mail server is also used to mean a computer acting as an MTA that is running the appropriate software. The term mail exchanger , in the context of the Domain Name System formally refers to an IP address assigned to a device hosting a mail server, and by extension also indicates the server itsel...
 (that do not adhere to standards, and therefore make it difficult for other MTAs to enforce standards), security vulnerabilities within the operating system (often exacerbated by
always-on broadband connections) that allow spammers to remotely control end-user PCs and cause them to send spam, and a lack of "intelligence" in many MTAs.

There are a number of proposals for sideband protocols that will assist SMTP operation. The Anti-Spam Research Group (ASRG) of the Internet Research Task Force
Internet Research Task Force

The Internet Research Task Force is a sister group to the Internet Engineering Task Force . Its stated mission is ?To promote research of importance to the evolution of the future Internet by creating focused, long-term and small Research Groups working on topics related to Internet protocols, applications, architecture and technology?....
 (IRTF) is working on a number of E-mail authentication
E-mail authentication

E-mail authentication is the effort to equip messages of the e-mail transport system with enough verifiable information, so that recipients can recognize the nature of each incoming message automatically....
 and other proposals for providing simple source authentication that is flexible, lightweight, and scalable. Recent Internet Engineering Task Force
Internet Engineering Task Force

The Internet Engineering Task Force develops and promotes Internet standards, cooperating closely with the World Wide Web Consortium and International Organization for Standardization/International Electrotechnical Commission standard bodies and dealing in particular with standards of the TCP/IP and Internet protocol suite....
 (IETF) activities include MARID
Marid

In Arabic culture, a Marid , in common mythology, is a Genie associated with open waters of the Seas and Oceans where it finds sanctuary. Marids are mentioned in the Qur'an , as well as pre-Islamic Arabian mythology and throughout Asia....
 (2004) leading to two approved IETF experiments in 2005, and DomainKeys Identified Mail
DomainKeys Identified Mail

DomainKeys Identified Mail is a method for E-mail authentication, allowing a person who receives email to verify that the message actually comes from the domain that it claims to have come from....
 in 2006.

Other protocols for e-mail

E-mail is "handed off" (pushed) from a client (MUA) to a mail server (MSA), usually using Simple Mail Transfer Protocol. From there, the MSA delivers the mail to an MTA, usually running on the same machine. The MTA looks up the destination(s)'s MX record
MX record

An MX record or Mail exchanger record is a type of resource record in the Domain Name System specifying how Internet e-mail should be routed using the Simple Mail Transfer Protocol ....
s with a DNS
Domain name system

The Domain Name System is a hierarchical naming system for computers, services, or any resource participating in the Internet. It associates various information with domain names assigned to such participants....
 lookup, and begins to relay (push) the message to the server on record via TCP
Transmission Control Protocol

The Transmission Control Protocol is one of the core protocols of the Internet Protocol Suite. TCP is so central that the entire suite is often referred to as "TCP/IP"....
 port 25 and SMTP. Once the receiving MTA accepts the incoming message, it is delivered via a mail delivery agent
Mail delivery agent

A Mail Delivery Agent is software that delivers e-mail messages right after they've been accepted on a server, distributing them to recipients' individual Email Mailbox....
 (MDA) to a server which is designated for local mail delivery. The MDA either delivers the mail directly to storage, or forwards it over a network using either SMTP or LMTP
LMTP

The Local Mail Transfer Protocol or LMTP is a derivative of SMTP, the Simple Mail Transfer Protocol. LMTP is designed as an alternative to normal SMTP for situations where the receiving side does not have a mail queue, such as a mail storage server acting as a Mail Delivery Agent....
, a derivative of SMTP designed for this purpose. Once delivered to the local mail server, the mail is stored for batch retrieval by authenticated mail clients (MUAs). Generally speaking, mail retrieval (pull) is performed using either a type of online folders (e.g. IMAP 4, a protocol that both delivers and organizes mail) or the older single repository format (e.g. POP3, the Post Office Protocol). Webmail clients may use either method, but the retrieval protocol is often not a formal standard. Some local mail servers and MUAs are capable of either push or pull mail retrieval.

Related Requests For Comments (RFCs)

  • RFC 1123 – Requirements for Internet Hosts -- Application and Support (STD 3)
  • RFC 1870 – SMTP Service Extension for Message Size Declaration (?bsoletes: RFC 1653)
  • RFC 2476 – Message Submission
  • RFC 2505 – Anti-Spam Recommendations for SMTP MTAs (BCP 30)
  • RFC 2920 – SMTP Service Extension for Command Pipelining (STD 60)
  • RFC 3030 – SMTP Service Extensions for Transmission of Large and Binary MIME Messages
  • RFC 3207 – SMTP Service Extension for Secure SMTP over Transport Layer Security (obsoletes RFC 2487)
  • RFC 3461 – SMTP Service Extension for Delivery Status Notifications (obsoletes RFC 1891)
  • RFC 3462 – The Multipart/Report Content Type for the Reporting of Mail System Administrative Messages (obsoletes RFC 1892)
  • RFC 3463 – Enhanced Status Codes for SMTP (obsoletes RFC 1893 )
  • RFC 3464 – An Extensible Message Format for Delivery Status Notifications (obsoletes RFC 1894)
  • RFC 3834 – Recommendations for Automatic Responses to Electronic Mail
  • RFC 4409 – Message Submission for Mail (obsoletes RFC 2476)
  • RFC 4952 – Overview and Framework for Internationalized E-mail
  • RFC 4954 – SMTP Service Extension for Authentication (obsoletes RFC 2554)
  • RFC 5068 – E-mail Submission Operations: Access and Accountability Requirements (BCP 134)
  • RFC 5321 – The Simple Mail Transfer Protocol (obsoletes RFC 821 aka STD 10, RFC 974, RFC 1869, RFC 2821)
  • RFC 5322 – Internet Message Format (obsoletes RFC 822 aka STD 11, and RFC 2822)


See also

  • Bounce message
    Bounce message

    In the internet's standard e-mail protocol SMTP, a bounce message, or Delivery Status Notification message, aka Non-Delivery Report/Receipt , Non-Delivery Notification , or simply a bounce is an automated electronic mail message from a mail system informing the sender of another message about a delivery problem....
    s (SMTP non-delivery reports), bounce address
    Bounce address

    A bounce address is an e-mail address where bounce messages are delivered to. There are many variations on this name and none of them are universally used....
  • Extended SMTP
    Extended SMTP

    Extended SMTP , sometimes referred to as Enhanced SMTP, is a definition of protocol extensions to the Simple Mail Transfer Protocol standard....
     (ESMTP)
  • Comparison of mail servers
    Comparison of mail servers

    This is a comparison of mail servers: mail transfer agents, mail delivery agents, and other computer software which provide e-mail services....
  • E-mail authentication
    E-mail authentication

    E-mail authentication is the effort to equip messages of the e-mail transport system with enough verifiable information, so that recipients can recognize the nature of each incoming message automatically....
  • E-mail client
    E-mail client

    An e-mail client is a frontend computer program used to manage e-mail.Sometimes, the term e-mail client is also used to refer to any agent acting as a Client toward an e-mail server, independently of it being a real MUA, a relaying server, or a human typing directly on a telnet terminal....
  • Internet Message Access Protocol
    Internet Message Access Protocol

    The Internet Message Access Protocol or IMAP is one of the two most prevalent Internet standard protocols for e-mail retrieval, the other being Post Office Protocol....
     (IMAP)
  • Post Office Protocol
    Post Office Protocol

    In computing, the Post Office Protocol version 3 is an application layer Internet standard protocol used by local e-mail clients to retrieve e-mail from a remote mail server over a Internet protocol suite connection....
     (POP3)
  • SMTP-AUTH
    SMTP-AUTH

    SMTP-AUTH is an extension of the Simple Mail Transfer Protocol to include an authentication step through which the client effectively logs in to the mail transfer agent during the process of sending mail....
     (ESMTPA)
  • Ident
    Ident

    The Ident Protocol, specified in RFC 1413, is an Internet protocol that helps identify the user of a particular Transmission Control Protocol Telecommunication circuit....
  • Sender Policy Framework
    Sender Policy Framework

    In computing, Sender Policy Framework allows software to identify messages that are or are not authorized to use the domain name in the SMTP HELO and MAIL FROM commands, based on information published in a sender policy of the domain owner....
     (SPF)
  • E-mail encryption
    E-mail encryption

    E-mail encryption refers to encryption, and often authentication, of e-mail messages. E-mail encryption can rely on public-key cryptography....
  • Variable envelope return path
    Variable envelope return path

    Variable envelope return path is a technique used by some electronic mailing list software to enable automatic detection and removal of undeliverable e-mail addresses....
  • POP before SMTP
    POP before SMTP

    POP before SMTP or SMTP after POP is a method of authorization used by mail server software which helps allow users the option to send e-mail from any location, as long as they can demonstrably also fetch their mail from the same place....
     / SMTP after POP


External links

  • (PDF)
  • (PDF, )
  • Includes information on getting around port 25 blocking.
  • - Security and Insecurity in SMTP, POP and IMAP.