Overview of email systems.
6/19/2025
Introduction
Email is one of the oldest Internet services, which has been in existence for many years and is expected to continue for at least another decade. Despite its significant role in daily life, most individuals have limited knowledge of its inner workings, me included.
This is a very broad overview of how an email flows through an email system. My goal is to learn the material in enough detail to be able to explain it as clearly as possible. This article is a work in progress so I would appreciate it if any errors you encounter be sent over to maneesha14w@gmail.com.
The purpose of email
At its core email is incredibly simple. Its purpose was to allow users to communicate in an asynchronous way. This is opposed to synchronous communication where communication happens in real-time with immediate back-and-forth interaction, whereas asynchronous communication involves a delay between sending a message and receiving a response.
Examples of synchronous communication are a human conversation and being in an in-person meeting. Examples of asynchronous communication are letters and chatting on an online forum.
The Client
Lets say you want to send me an email. Heres what you know:
- You know my address is maneesha@hey.com.
- Your address is coolpenguin@gmail.com.
You log into your webmail client, which is the gmail web client. Web clients are the most popular clients these days, but there are desktop clients like the mail app on iOS or cli clients like mutt.
Email is a prime example of the client-server model, where a server listens to requests by clients and responds with resources for the client.
These clients are also known as Mail User Agents (MUA), and they handle the traditional frontend of the application.
They allow users to:
-
Compose and send emails.
-
Receive and view emails.
-
Attach files.
-
Message Formatting.
They also do sanitation checks like make sure you’re not sending an email to no one, having a subject line and they also make sure your email headers are in order, more on that later.
The outgoing server
Next in line is the outgoing server software known as the Mail Transfer Agent (MTA).
This server software primarily handles the sending a