In August 1982, Information Sciences Institutes proposed Simple Mail Transfer Protocol, nowadays commonly referred to as SMTP, as the most standard way to send and receive mail messages. The older methods of mail sending involved some complications and that is why the easiest method of mail sending and receiving did not take much time to be popular. Since the time of its application, SMTP has undergone several changes and regular revisions have made significant extension of the protocol but the fundamental method of mail sending has remained the same.
SMTP is text based and delivery of binary data is not supported by it. But there is an advantage of its being text-based. Both maintenance and implementation are fairly easy. SMTP has emerged as an ideal protocol in the field of mail sending and receiving via net. Every network administrator must have a good hang of how this protocol functions.
Learning this protocol is not at all hard. Direct communication with an SMTP server only requires Telnet or something like that which has the requisite capacity of sending ASCII data over TCP/IP port 25. This protocol transaction can be divided into five segments such as Handshake, Send reply address, Send recipients, Send message data and End transaction. Now let us describe each of these parts in brief.
Handshake: After the connection with an SMTP server is established on port 25, the message sender has to wait a little until the recipient accepts the connection. Once the receiver identifies himself through a suitable format, the sender must introduce himself or herself to the receiver through 'Hello' command. The mail server requires both sender and receiver to identify themselves by using a domain name. This name is of immense importance for the verification of the server's identity. The successful completion of the 'Handshake' process is recognized by the SMTP server by generating the 'OK' message.
Send Reply Address: Immediately after the handshake of two servers, SMTP transaction starts and the server accepts commands from the users. Sending message to a user on the server is easy. One point that we have to take care of is to provide a reply address at first. In the event of any error during transaction, the message will be sent to this address. The acceptance of the address will reflect through 250 OK reply.
Send Recipients: Once a reply address is set up, we are allowed to identify who the recipient of the message is. If the receiver accepts mail, it will send response through a 250 OK reply. In case of failure, suitable error code will let the sender know about it.
Send Message Data: Though sending data through SMTP does not involve any serious complication but sending binary attachment is
not so easy. Text message does not require using the multi-part MIME format. Remember that all the messages end with a line that contains only a period character. Header information such as Date, Subject, To, Cc, From can be sent prior to dispatching the message via net.
Ending Transaction: So far whatever has been accepted by the receiving SMTP server is of disposable nature implying that everything will be deleted in the event of disconnection. So the command 'Quit' must be entered to prevent the deletion of the sent messages.