Skip to content

Instantly share code, notes, and snippets.

@ganapativs
Last active June 3, 2025 15:51
Show Gist options
  • Save ganapativs/757c17e42f9d1e974f02c449f23cbc0d to your computer and use it in GitHub Desktop.
Save ganapativs/757c17e42f9d1e974f02c449f23cbc0d to your computer and use it in GitHub Desktop.
Email Delivery Flow

email-delivery-flow Generated using ChatGPT with reference image from https://www.youtube.com/watch?v=cjPVlxmf_Vk


🔠 Abbreviations and Their Full Forms

  • MUA – Mail User Agent (e.g., Outlook, Apple Mail)
  • MSA – Mail Submission Agent
  • MTA – Mail Transfer Agent
  • MDA – Mail Delivery Agent
  • SMTP – Simple Mail Transfer Protocol
  • POP3 – Post Office Protocol version 3
  • IMAP – Internet Message Access Protocol

📥 Flow Summary: Email from Sender to Receiver

1. Sender Side (Client + Mail Server)

  • The user writes and sends an email using the MUA (e.g., Outlook, Apple Mail).
  • MUA sends the email via SMTP to the MSA.
  • MSA validates, formats, and forwards the message to the MTA.
  • MTA handles the actual routing of the email using SMTP to deliver it to the recipient’s mail server.

2. Receiver Side (Mail Server + Client)

  • The receiver's MTA receives the mail and passes it on to the MDA.
  • MDA stores the email into the recipient’s mailbox.
  • The POP3/IMAP server fetches the stored email.
  • The receiver’s MUA (again, e.g., Outlook, Apple Mail) pulls the email via POP3 or IMAP.

✅ Protocol Roles

  • SMTP: Used to send mail between servers and from client to server.
  • POP3/IMAP: Used by the receiving MUA to retrieve the mail from the server.

💡 Conceptual Summary

It's a store-and-forward system:

  • Email is composed and sent via MUA.
  • Routed through a series of agents (MSA → MTA → MDA).
  • Stored in a mailbox on the receiving server.
  • Retrieved later by the recipient’s MUA via POP3/IMAP.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment