Simple Mail Transfer Protocol
Simple Mail Transfer Protocol (SMTP) is a text-based method commonly used by two mail servers to exchange email. Users can then retrieve email from the servers via mail clients such as Outlook, Eudora, or Pine. Mail clients employ various protocols, such as Post Office Protocol 3 (POP3), to connect to the server.
SMTP uses well-known ports TCP port 25 and UDP port 25. The client and SMTP server send various commands when communicating. Table 3-1 lists some SMTP commands and their purposes.
Table 3-1 SMTP Commands
Command |
Function |
HELLO (HELO) |
Identifies the SMTP client to the SMTP server. |
MAIL (MAIL) |
Initiates a mail transaction in which the mail data is delivered to an SMTP server, that is either transported to mailboxes or passed to another system via SMTP. |
RECIPIENT (RCPT) |
Identifies an individual recipient of the mail data. Various methods of the command are needed for multiple users. |
DATA (DATA) |
Identifies the lines following the command (such as the MAIL command) as the mail data in ASCII character codes. |
SEND (SEND) |
Initiates a mail transaction in which the mail data is delivered to one or more terminals. |
SEND OR MAIL (SOML) |
Initiates a mail transaction in which the mail data is delivered to one or more terminals OR mailboxes. |
SEND AND MAIL (SAML) |
Initiates a mail transaction in which the mail data is delivered to one or more terminals AND mailboxes. |
RESET (RSET) |
Aborts the current mail transaction. Any stored sender, recipients, and mail data must be discarded, and all buffers and state tables must be cleared. The receiver must send an OK reply. |
VERIFY (VRFY) |
Verifies whether a user exists. A fully specified mailbox and name are returned. |
NOOP (NOOP) |
Specifies no action other than that the receiver sent an OK reply. |
QUIT (QUIT) |
Closes the transmission channel. The receiver must send an OK reply. |