邮箱的收发信协议主要有SMTP、POP3、IMAP三个,此外与邮件传输相关的还有安全协议SSL。

1. POP3 简介

POP3 全称为 Post Office Protocol version3, 即邮局协议第3版。它被用户代理用来邮件服务器取得邮件。POP3 采用的也是 C/S 通信模型

2. POP3 通信过程

  1. 用户运行用户代理(如Foxmail, Outlook Express)
  2. 用户代理(客户端)与邮件服务器的 110 端口建立 TCP 连接
  3. 客户端向服务器端发出各种命令,来请求各种服务(如查询邮箱信息,下载某封邮件等)
  4. 服务端解析用户的命令,做出相应动作并返回给客户端一个响应
  5. (3) 和 (4)交替进行,直到接收完所有邮件转到步骤6),或两者的连接被意外中断而直接退出。
  6. 用户代理解析从服务器端获得的邮件,以适当地形式(如可读)的形式呈现给用户

3. IMAP 简介

IMAP 协议相对于 POP3 协议而言,它定了更为强大的邮件接收功能

  1. IMAP 具有摘要浏览功能,可以让用户在读完所有邮件的主题、发件人、大小等信息后,再由用户做出是否下载或直接在服务器上删除的决定。
  2. IMAP 可以让用户有选择性地下载邮件附件。例如一封邮件包含3个附件,如果用户确定其中只有2个附件对自已有用,就可只下载这2个附件,而不必下载整封邮件,从而节省了下载时间。
  3. IMAP 可以让用户在邮件服务器上创建自己的邮件夹,分类保存各个邮件。

4. MIME

早期人们在使用电子邮件时,都是使用普通文本内容的电子邮件内容进行交流,由于互联网的迅猛发展,人们希望在邮件中嵌入图片、声音、动画和附件等二进制数据。但在以往的邮件只能发送文本信息,无法发送非文本的邮件,针对这个问题,专门为此定义了 MIME (Multipurpose Internet Mail Extension,多用途 Internet 邮件扩展)协议。

一封 MIME 邮件中的 MIME 消息可以有三种组合关系:混合、关联、选择,它们对应 MIME 类型 multipart/mixed, multipart/related, multipart/alternative

0090

邮件中只有普通文本内容与 HTML 文本内容,那么整封邮件的 MIME 类型则应定义为 multipart/alternative 如果整封邮件中包含有 HTML 文本内容和内嵌资源,但不包含附件,那么整封邮件的 MIME 类型则应该定义为 multipart/related

5 总结

POP3 相对于因特网报文存取协议 IMAP(Internet Message Access Protocol) 的最大的不足是只是一个脱机协议,客户与服务器的交互性不是特别好。例如不能直接在邮箱中创建文件夹,不太好选择性地下载邮件的某部分等。然而,它也有自己的优势,那就是协议简单,容易实现,成本低,这是 POP3 用得很广泛而 IMAP 几近淘汰的最重要的原因。