This is blog is written to understand the working of the SMTP(Simple Mail Transfer Protocol) which is a TCP/IP protocol used in sending and receiving e-mail.
SMTP is an application layer protocol. The client who wants to send the mail opens a TCP connection to the SMTP server and then sends the mail across the connection. The SMTP server is always on listening mode. As soon as it listens for a TCP connection from any client, the SMTP process initiates a connection on that port (25). After successfully establishing the TCP connection the client process sends the mail instantly.
The SMTP model is of two type :
The end to end model is used to communicate between different organizations whereas the store and forward method are used within an organization. An SMTP client who wants to send the mail will contact the destination’s host SMTP directly in order to send the mail to the destination. The SMTP server will keep the mail to itself until it is successfully copied to the receiver’s SMTP.
The client SMTP is the one which initiates the session let us call it as the client- SMTP and the server SMTP is the one which response to the session request and let us call it as receiver-SMTP. The client- SMTP will start the session and the receiver-SMTP will respond to the request.
now. Read More
Model of SMTP system
In the SMTP model user deals with the user agent (UA) for example Microsoft Outlook, Netscape, Mozilla etc. In order to exchange the mail using TCP, MTA is used. The users sending the mail do not have to deal with the MTA it is the responsibility of the system admin to set up the local MTA. The MTA maintains a small queue of emails so that it can schedule repeat delivery of mail in case the receiver is not available. The MTA delivers the mail to the mailboxes and the information can later be downloaded by the user agents.
Both the SMTP-client and SMTP-server should have 2 components:
1.User agent (UA)
Communication between the sender and the receiver :
The senders, user agent prepare the message and send it to the MTA. The MTA functioning is to transfer the mail across the network to the receivers MTA.
Mail is sent by a series of request and response messages between the client and a server. The message which is sent across consists of a header and the body. A null line is used to terminate the mail header. Everything which is after the null line is considered a body of the message which is a sequence of ASCII characters. The message body contains the actual information read by the receipt.
The user agent at the server side checks the mailboxes at a particular time of intervals. If any information is received it informs the user about the mail. When a user tries to read the mail it displays a list of emails with a short description of each mail in the mailbox. By selecting any of the mail user can view its contents on the terminal.
SMTP is one of the most widely used and implemented an application. With the explosively growing reliance on electronic mail for commercial and personal services, there grows the demand for authentication and confidentiality. To complement the weak security feature of SMTP industry use PGP-SMIME-PEM. Still, there is a need of implementing the measures to eliminate spam and other security breaches.