Simple Mail Transfer Protocol – SMTP is used as an internet standard for the transmission of e-mails in case of an IP (internet protocol network) network. SMTP was first time defined in 1982 by RFC 821 but recently updated in the year 2008 by RFC 5321. Nowadays, its comprehensive form that is referred as extended SMTP is in widespread use. SMTP is with the help of TCP port 25 is particularly use for outgoing mail transportation. The main aim of simple mail transfer protocol is to transmit emails reliably in more efficient way as compare to others in use. But SMTP as a self-determining protocol has no concern with other communication’s subsystems and is worked out as an independent and trustworthy channel for the data stream.
Well! SSL (Secure sockets layer) is used for the protection of SMTP connections. Moreover, today’s e-mail servers are utilizing this protocol for both electronic mail sending and receiving purposes. Anyway, different IETF SMTP specifications are including: RFC 821 (offered in 1982), RFC 1123(offered in 1989), RFC 1425 (offered in 1983), RFC 1651 (offered in 1994 as the replacement of RFC 1425 and RFC 1869 (offered in 1995 as the replacement of RFC 1651).
One important thing to be noted about SMTP is that it is a text based transportation protocol and the process of communication by mail sender with receiver is done by issuing specific command series such as mail, RCPT etc along with some required data over a consistent and structured data stream channel like TCP (transmission control protocol).
As mentioned above, in order to communicate along with a mail sever STMP uses different commands but most commonly used SMTP transactions are consisted on three commands and these can be elaborated as:
- MAIL command which indicates the sender’s address. In other words, it is used to set-up the return address as <[email protected]>
- RCPT command indicates the receiver’s e-mail address. While communicating, this command might be issued more than one time for multiple recipients
- DATA is consisted on message content and these can be separated with the help of empty lines as message header and message body
Some more SMTP commands are such as: BDAT, BURL, DSN, EHLO, AUTH, ONEX, SIZE, SOML, NOOP etc. While reply codes for STMP are as: 211 (system status or help reply), 214 (help messages), 453 (no mail for you) etc.
While processing STMP transactions, a server’s answer back can either be in positive or in negative way besides the transactional reply intended for data. Furthermore, SMTP client can be an email client that is also known as email user agent or a server email transfer agent. To convey messages, the SMTP servers can act as SMTP clients in an undergoing session.
For your convenience, a session establishment etc can be explained with the following SMTP model as on the sender request, a two way communication channel establishes by the sender STMP that further generates commands for the receiver STMP. After the channel organization, “MAIL” command points out the sender mail and on receiver acceptance, OK can be sent back as a reply by the receiver while STMP from sender side using RCPT command can identify the mail. Again, OK reply is sent but now from the receiver STMP side. Recipient can be one or more than one in such negotiation sessions.