Computer Networks · TEE · papers

Q6(b) · SMTP

2024-02-06 · 2022-23

Actual paper; 100 marks attempted. Current-syllabus alignment is stated per question.

Q6(b). Illustrate how SMTP is used in sending email. Briefly explain. [5 marks]

Answer

Simple Mail Transfer Protocol (SMTP) transfers email from a sending client/server to a receiving mail server using a reliable transport, normally TCP. It is a push/store-and-forward transfer protocol. User agents compose/read mail; mail-transfer agents relay it, consulting DNS MX records to find recipient-domain mail servers.

Swipe across the diagram to read its labels ↔
SMTP: envelope, message and completion
Diagram: SMTP: envelope, message and completion. Labels: SMTP: envelope, message and completion | SMTP: envelope, message and completion | SMTP sender | Receiving server | 220 greeting | EHLO sender.example | 250 capabilities | MAIL FROM:<sender@example.com> | RCPT TO:<receiver@example.org> | DATA (after successful envelope replies) | 354 start mail input | Headers + blank line + body + dot line | 250 accepted; then QUIT / server 221 | SMTP submits/relays. Inbox reading uses IMAP/POP or webmail. | Envelope MAIL/RCPT differs from visible From/To headers.
Submission/relay use SMTP; reading an inbox uses a separate access protocol.
PhaseTypical exchangePurpose
Connection and greetingServer 220; client EHLO (HELO for basic SMTP); server 250 capabilitiesIdentify peers and learn supported extensions
Envelope transferMAIL FROM:<sender>; RCPT TO:<recipient>; 250 repliesDeclare return path and one or more delivery recipients
Message transferDATA; server 354; headers + blank line + body; single dot line; server 250Transmit the message after server permission; completion reply accepts responsibility
TerminationQUIT; server 221Close the SMTP session cleanly

Message flow and important details

  1. The sender’s user agent submits mail to its configured submission service. Server-to-server SMTP relay commonly uses TCP port 25; message submission commonly uses 587, often with authentication and TLS policy.
  2. The sending server resolves the recipient domain’s MX records, connects to an appropriate mail server and carries out the SMTP exchange.
  3. MAIL FROM and RCPT TO are the envelope; visible From/To headers inside DATA are message content and can differ. Multiple RCPT TO commands can name several recipients.
  4. A line containing only a dot ends DATA. A content line beginning with a dot is dot-stuffed for transparency and unstuffed by the receiver.
  5. A temporary 4xx failure can lead the sending server to queue and retry; a permanent 5xx failure normally rejects that operation. One successful handoff is not proof that a human read the message.
  6. The recipient reads stored mail using an access protocol such as IMAP/POP3 or webmail. SMTP is not the mailbox-retrieval protocol.

Yaad rakho: SMTP send/relay; inbox read IMAP/POP/webmail.

The three phases requested in the paper

PhaseCommands / repliesMeaning
1. Connection establishmentTCP connection; 220 greeting; EHLO/HELO; 250 replyOpen the connection and identify the SMTP peers
2. Mail transferMAIL FROM, RCPT TO, DATA; 354; message; single dot; 250Transfer the envelope and then the message content
3. Connection terminationQUIT; 221; close TCPFinish the SMTP session

Envelope transfer and message-body transfer are substeps of the single mail-transfer phase. Thus the more detailed table above still fits the standard three-phase description.