电子邮件
电子邮件系统
电子邮件系统由 用户代理、邮件服务器 以及 电子邮件协议 这三个核心组成部分协同工作,确保邮件的发送、接收和存储。
用户代理
用户代理(UA, User Agent)是用户与电子邮件系统交互的接口,通常是邮件客户端软件(如 qq 邮箱网页界面、Outlook 等)。
功能:
- 提供用户友好的界面,用于撰写、发送、接收和阅读邮件。
- 管理邮件文件夹(如收件箱、已发送、草稿)。
- 与邮件服务器通信以发送或获取邮件。
邮件服务器
邮件服务器(Mail Server)是电子邮件系统的核心,负责存储、转发和管理邮件。
功能:
- 接收来自用户代理的邮件并存储。
- 根据邮件的目标地址,通过 SMTP 协议将邮件转发到目标邮件服务器。
- 提供邮件存储功能,供用户通过 POP3/IMAP 协议访问。
SMTP
SMTP(Simple Mail Transfer Protocol)是用于邮件发送的标准协议,负责在邮件服务器之间或从用户代理到邮件服务器传输邮件。
功能:
- 定义了邮件如何从发送方传递到接收方的邮件服务器。
- 工作在 TCP/IP 协议之上,通常使用端口 25(或加密端口 587)。
- 仅负责邮件的发送,不涉及邮件的接收或存储。
工作流程:
- 用户代理通过 SMTP 将邮件发送到发送方的邮件服务器。
- 发送方服务器通过 SMTP 与接收方服务器通信,将邮件传递到目标服务器。
POP3
POP3 是用于从邮件服务器检索邮件的协议,允许用户将邮件下载到本地设备。
功能:
- 用户代理通过 POP3 连接到邮件服务器,下载邮件到本地。
- 默认情况下,邮件下载后会从服务器删除(可配置保留)。
- 工作在 TCP/IP 协议之上,通常使用端口 110(或加密端口 995)。
工作流程:
- 用户代理通过 POP3 登录服务器。
- 下载新邮件到本地设备。
- 可选择删除服务器上的邮件副本。
需要注意的是,SMTP 使用的是“推送”(Push)方式进行通信。当用户代理发送邮件,或者邮件在邮件服务器之间传递时,SMTP 客户端会将邮件主动“推送”到 SMTP 服务器。而 POP3 则采用“拉取”(Pull)方式进行通信。当用户需要查看邮件时,用户代理会向邮件服务器发出请求,从服务器中“拉取”用户邮箱里的邮件。
电子邮件格式
一封电子邮件由 信封 和 内容 两部分组成,其中 邮件内容 又可分为 首部 和 主体。
邮件的 首部格式 由 RFC 标准定义,而 主体部分 则由用户自由撰写。
用户在填写完邮件首部后,系统会自动提取信封所需的信息,无需用户手动填写信封内容。
邮件首部由若干 首部行 组成,每行格式为:关键字: 值
。其中:
To
:必填,指定一个或多个收件人的电子邮件地址,格式为用户名@域名
,如abc@csgraduates.com
。用户名在所属域名下必须唯一,从而保证该邮箱地址在整个互联网上唯一。Subject
:可选,表示邮件主题,用于概括邮件内容。From
:必填,表示发件人邮箱地址,通常由邮件系统自动填写。
首部和主体之间用一个空行分隔。以下是一个典型邮件内容示例:
From: sender@example.com
To: abc@cskaoyan.com
Subject: Meeting Schedule
Dear team,
Please find the meeting schedule attached.
MIME
MIME(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展)是为了解决传统电子邮件格式的局限性而提出的一种扩展标准。
早期的电子邮件只能传输 纯文本(ASCII 码),不支持发送图片、音频、视频或非英语字符(如中文)。这严重限制了电子邮件的用途。MIME 的出现,就是为了解决这些问题。
MIME 主要包含以下三点 核心功能:
- 支持非 ASCII 字符
- 允许使用 UTF-8 等编码发送包含中文、法语等字符的邮件内容。
- 支持多媒体内容
- 可以发送图像(如 JPEG、PNG)、音频、视频等多种格式的附件或内嵌内容。
- 支持多部分内容(multipart)
- 一封邮件可以同时包含文本和附件,甚至不同格式的内容(例如纯文本和 HTML 格式的正文)。